Daniel Lee - Professor, Electrical and Systems Engineering; University of Pennsylvania
Actually, I was a physics major for both my undergraduate and PhD degrees; however, I took several electrical engineering courses out of interest during my time as a student. Those courses served me well for my robotics-related research, and I now teach a number of EE courses to a new generation of students looking to get started in electronics and electrical engineering. As they say, teaching a subject is the best way of learning it.
Designing and constructing robotic systems requires a variety of hardware tools—everything from machining chassis to constructing microcontroller boards. I don’t have as much time to spend in the lab these days, so that odd smell of melting solder mixed with machine oil is nostalgic for me.
We program our robots using a variety of software tools: MATLAB prototyping, C/C++ modules, SVN repositories and high-level scripting languages such as LUA and PYTHON. No one tool is adequate for everything, so one needs to get experience with a variety of techniques.
Robots can do very stupid things, and the underlying bug can be very difficult to track down, such as a misbehaving hardware sensor or a misconfigured software parameter setting. Obviously, clear thinking and patience are the most valuable skills in approaching these kinds of problems.
Mostly graduate texts in machine learning, robotics, and computational neuroscience. However, I have been trying to keep up with my kids (I have a 10 year-old son and a 7 year-old daughter), so I’ve tried to find some time to read Artemis Fowl, Ordinary Boy, and some of the other series that they’ve been reading.
Nothing special, other than recruiting students who are smart and have the desire to continually learn new concepts and skills. Good students are the ones who drive our best projects, and continually amaze me with their energy and abilities.
We’ve had a number of interesting projects over the past few years: including a self-driving car for the DARPA Urban Challenge, and soccer playing robots for the International Robocup competition.
The 2007 Urban Challenge was to design and develop a robot car that could autonomously pass a driver’s license test in traffic. I led a team of approximately ten students and engineers from Penn, Lehigh, and Lockheed that converted a Toyota Prius into a self-driving car using laser and visual sensors to intelligently map and navigate in urban environments.
My students also recently completed a team of unmanned ground robots for search and exploration in the MAGIC 2010 competition in Australia, where we took 2nd place.
The MAGIC (Multi Autonomous Ground-robotic International Challenge) competition was jointly sponsored by the Australian and US Army to demonstrate robot teams that could execute an intelligence, surveillance and reconnaissance mission in a dynamic urban environment. I led a team of four Penn students in designing, constructing, and programming a team of nine ground robots that could autonomously explore and respond to unforeseen events seamlessly in indoor and outdoor environments. The final competition was held at the fairgrounds in Adelaide, Australia, in November 2010.
I think you always learn best from failures, whether that is touching the wrong high voltage wire, or underestimating the time and effort needed to complete something. If it doesn’t kill you, you hopefully won’t make the same mistake twice.
I’ve been toying with the idea of writing a textbook, but haven’t really started yet.
I have high hopes for integrating intelligence into robotic systems for the future. The newly developed science and technology behind such systems could really make a societal impact.
The opportunities for smart and engaged scientists and engineers in this field are limitless. Obviously, we need to do a better job at cultivating their talents starting from an early age.