- Dina Benedetto
- Xuan Huang
- Jingling Li
- Tu Luan
- Prakhya Malyala
- Ilisha Ramachandra
- Alex Snow
- Ziyan Yang
Janx: The Educational Robot
The educational system has a lack of providing a hands-on projects that cooperate the basics of computer science and its relation to the real world. By documenting the steps of this research project and procuring a tutorial of how to construct, build, and write simple code, students will have the opportunity to explore the different fields of Computer Science.
Issues being solved: People are oblivious to the different features that robots can provide, such as responding to various situations. Therefore, this research will focus on providing users with ways to understand the logic behind feedback, utilizing the surrounding environment.
The design will focus on having a minimalistic figure with maximum performance. The robot, named Janx, will be a picture capturing moving robot. As a robot, Janx will include a variety of features, such as the ability to measure the surrounding temperature, and providing computer feedback to the user. Janx will consist of three 3D printed wheels and base, will have 2 motors, a camera, a temperature sensor, and a controlling unit. For the purpose of this research project, the controlling unit will be an Arduino board.
The hardware construction: Janx will have a triangular chassis. Two of three 3D printed wheels will be mounted on motor shafts at the back two edges of the triangle. Wires will be connecting the two motors to the board. The third 3D printed wheel will be a free floating wheel (like a shopping cart wheel), pinned to the front of the triangle. The camera will be mounted to the front of the triangle, adjacent to the temperature sensor.
The software construction:The base code will be written in Java Programming Language with a help of Arduino Software (IDE). The code will include functions that move, steer, capture video, capture pictures, and sense surrounding temperature, as well as the code necessary to provide the various feedback to the user.
Why is this useful? The final outcome of the research can be used in different schools to spike and introduce students to a new component of Computer Science. Not only will students learn how to build a robot, write code, but will also be able to implement their own ideas into the real world.
Provably good quadrilateral mesh generation
Polygon meshes define the shape of digital objects like three-dimensional models. They are needed in all types of digital modeling and simulations. This projects focuses on the generation of quadrilateral meshes, which guarantees the quality of the meshes in terms of max/min angles and aspect ratios.
My research mainly focuses on the indirect conversion algorithm, which will convert a triangular mesh generated by a polygonal region to a quadrilateral mesh with bounded angles as well as aspect ratios.
If successful, this will be the first known algorithm that provides a provable bound on both angle and aspect ratio for a quadrilateral mesh.
TypeScript : Enhancing the Web’s Popular Language
"API - Application Program Interface." What Is API. N.p., n.d. Web. 10 June 2016.
Sustainable living through technology
Development environments for Maker related boards such as the Raspberry Pi and Intel Edison can be fairly challenging to setup and use. This setup becomes even more challenging in an educational context. The aim of this project is to make these development environments more accessible and more effective for students and teachers by using a readily available, open source board such as the Intel Edison and explore building "real world" projects. I have chosen an Environmental Sensing project which includes tracking water usage and correlating that with temperature, humidity, and various other sensors. This is in an attempt to increase awareness about living a more sustainable lifestyle. The end goal of this project is not specifically to demonstrate the end use case, but to explore using different development tools, languages and online services. The actual end goal of the project will be to make concrete recommendations on “preferred” tool chains and platforms to enable students and teacher to rapidly develop projects and lesson plans. We will also provide a library for students to access and program different sensors through a web-based system.
Explorations of Deep Learning in Robotics
A method of enabling machines to problem solve by exposing them to a collection of data and having them solve based on the data they learned, called deep learning, has become a popular research topic in recent years. For example, through deep learning, a computer can locate a certain object in a picture when commanded to if that computer was shown or trained with various images of the specific object. We will explore this by teaching an autonomous humanoid robot to reach out and look towards a fluorescent colored ball wherever the ball is within sight by training the robot with different images of the ball. To accomplish this task, we will write a series of code connecting the robot to an online deep learning system through a computer. From there, we will take images of the ball with varying surroundings, input them into the system, and hold the same ball in front of the robot. This will be a demonstration of deep learning in the field of robotics.
Provably good quadrilateral mesh generation
Polygon meshes define the shape of digital objects and are needed in digital modeling and simulations of all types. In my summer research project, my mentor and I focus on quadrilateral mesh construction of 2D polygons. We have existing quadtree-based quadrilateral mesh construction algorithms to create a quadrilateral mesh of simple polygons that can have holes. Our existing algorithms guarantee the minimum/maximum angles and aspect ratios of elements of mesh but do not mesh a polygon completely: there still exist gaps between edges of original polygons and our constructed mesh boundaries. Our next step is to smooth the boundaries of mesh to make them as parallel as possible to the polygon edges. First, we need to classify all the possible mesh boundaries and figure out different ways to optimize them. Then, I will modify the codes to test our assumptions and the solutions for smoothing. Finally, after optimizing the mesh boundaries, we can start think of how to make up the space between mesh boundaries and polygon edges. It may be useful to add buffer zones and re-mesh the space to guarantee our original minimum/maximum angles and aspect ratios because these criterion are significant in determining the quality of the mesh.