Saturday, October 26, 2013

The Role of Robots in Engineering Education

Currently, the robotics industry does not have enough jobs to employ all the engineering graduates who would like to pursue a career in robotics. Sometimes this leads to disappointment among engineering graduates who have passionately pursued robotics in school and find it frustrating that they cannot find a job in the robotics industry.  Hopefully, the robotics industry will continue to grow and the job situation will be significantly better a few years down the road. But what should graduating students interested in robotics do in the meantime?

This blog post attempts to argue that students should use robots as learning tools to acquire a much broader engineering knowledge base to impress employers in a wide variety of engineering industries. 

Human beings are fascinated by robots. I don’t fully understand the reason for this fascination, but robots seem to get people excited and enthralled.  In addition to being popular inhabitants of our factories, hospitals, and farms, robots are also emerging as popular cultural icons with an ever-increasing presence in music, movies, and books. Clearly the idea of humans ultimately creating superhuman robots is quite thrilling and intriguing. Let us also keep in mind that robots can be quite entertaining. 

Robots have become ambassadors of STEM education in the US. Many K-12 students get their first glimpses of the engineering world by participating in FIRST robotics.  Children as young as five years old are getting started in Junior FIRST LEGO Leagues, and they can continue advancing through various FIRST programs as they gain experience and grow older. The FIRST robotics experience finally culminates into the FIRST Robotics Competition.  In this program, teams of high school students compete with each other in a high profile national competition by building incredibly impressive robots. More than 350,000 students are expected to participate in the FIRST programs in 2013 and 2014 season.

Many undergraduate students who enter college with FIRST experience in high school take robotics courses in the college, continue their participation in challenging robotics competitions, and go on to build even more impressive robots. Some of the students interested in robotics go on to graduate school and continue their journey in the field of robotics. National Robotics Initiative and DARPA Robotics Challenge are providing many new exciting opportunities for students in the US.  

Along the way some students start to focus too much on “learning robotics.” It will be better from the employment perspective, if students viewed robots as a vehicle to learn engineering. The FIRST programs do a great job of emphasizing this point, but somehow along the way this message gets garbled for at least some students and the focus shifts to learning specialized tools for building robots.

Robots are very good examples of modern cyber physical systems. They contain mechanical, electrical, electronic, and software components that interact in complex ways to produce the desired behavior and performance. In terms of building blocks, they are no different than modern dish washers, automobiles, magnetic resonance imaging machines, and cranes. However, robots are a lot more fun to create than a dish washer and hence much more effective for teaching engineering principles.  

We should view robots as tools for learning modern engineering principles and have fun while doing it! Once you have learned how to design, build, and program a robot, you can create lots of other engineered artifacts that people are willing to buy today. Your experience with robots makes you an excellent catch in the job market. You should just learn to interpret the word robotics in the broadest possible sense.

Thursday, October 10, 2013

Can crowdsourcing be exploited to reduce the cost of autonomous robots?

Several recently developed prototypes show that it is possible to develop autonomous robots with remarkable capabilities. However, currently developing autonomous robots costs a fortune and takes forever!  In this post, I treat autonomous cars and unmanned air vehicles as robots.

Sophisticated autonomous robots require hundreds of thousands of lines of code. Manually writing this code for a new robot is very expensive and time consuming. Moreover, as the hardware changes, this code also requires significant upgrades. Often by the time code is written and debugged, the hardware is already obsolete. Therefore, developing autonomous robots is currently technically feasible but not affordable in many applications.

Human operators are very good in teleoperating robots in cluttered, unstructured, and dynamic environments with limited sensor data. Forget about the expert operators teleoperating unmanned vehicles! Even five year olds can learn to teleoperate their first remote control cars within couple of hours and are able to successfully annoy their parents, siblings, and dogs by zipping around tiny cars inside their homes. I have also seen teenagers performing amazing feats with their remotely controlled helicopters. So obviously, we should be interested in characterizing and understanding the strategies employed by human operators during these operations and automatically extracting building blocks of the autonomy code based on this understanding. Many robotics researchers are pursuing this path and this area of robotics is called learning from demonstrations.

Many impressive results ranging from training of surgical robots to teaching collision avoidance to unmanned vehicles have been reported by the learning from demonstrations community. Most such case studies have utilized small number of humans to perform these demonstrations. Because of the limited number of demonstrations, people often wonder how well the learned components of autonomy will perform in situations not encountered during demonstrations. Unfortunately, conducting extensive experiments in physical worlds is highly time consuming and expensive. It also limits the kind of scenarios that can be considered during demonstrations. Clearly a demonstration that might pose threat to the human or the robot has to be avoided. Conducting demonstrations in the virtual world is emerging as an attractive alternative.

Over the last few years, tremendous progress has been made in the area of physics-based robot simulators. For example, the on-going DARPA Robotics Challenge is making an extensive use of simulation technology to test autonomy components. Simulations are being routinely used to teach humans cognitive as well as motor skills. For example, flight simulators are routinely used for pilot training.

By combining advances in multi-player games that can be played over the network and accurate robot simulations, new games can be developed in which humans can compete and collaborate with each other by teleoperating virtual robots. This advancement means that demonstrations need not be confined to few experts. Instead, anyone with an Internet connection can participate in the training of a new robot. For example, DARPA used publicly distributed Anti-Submarine Warfare game to learn how to track quiet submarines. We are ready to leverage crowds to impart autonomy to robots. 

The use of crowd sourcing in robot training has many benefits. It provides a rich diversity in demonstrations and hence enhances the probability of generalization. Some of the participants are likely to exhibit out-of-the-box thinking and demonstrate a highly creative or innovative way of doing a task. This is great news for optimizing robot performance. For some people, this way of training robots might serve as a means to earn money by performing demonstrations (basically acting as robot tutors). Playing games that involve robots is likely to be entertaining for at least a segment of the population. This paradigm can also be used in situations where a robot is stuck during a difficult task and needs a creative solution to get out of the bind.               

Automatically learning autonomy components such as reasoning rules, controllers, planners etc. from the vast amount of demonstration data is an interesting challenge and will keep the research community busy for many years to come. But this seems to be the much needed crucial advancement to reduce the cost of autonomous robots.

Don’t worry robots! The crowd will rescue you from the dungeons of high cost and long development times!