Featured Engineer

Interview with Dr. David S. Touretzky

Dr. David S. Touretzky

Dr. David S. Touretzky - Research Professor of Computer Science at Carnegie Mellon University

  • Additional Title: I also hold appointments in the Robotics Institute and The Center for the Neural Basis of Cognition
How did you get into electronics/ engineering and when did you start?

I got into ham radio and electronics at age 10, and discovered computers at age 12. I taught myself BASIC programming from a textbook. Then I taught myself assembly language programming. In high school I worked part time for a computer company. The pay was minimum wage but they offered all the free computer time I wanted, which was worth a lot more!

When did you start to get into robotics?

It has been at least 10 years, maybe 15. I came to Carnegie Mellon in 1978 as a graduate student. The robotics institute started in 1979. I was here from the beginning, but I did not do robotics then. I was a Computer Science PhD student. I took some robotics course work, but did not seriously get into robotics until after I became a faculty member. The CMU Robotics Institute is the largest academic robotics group in the world. We have our own PhD program, three masters programs and a large faculty with a very big facility.

What are your favorite hardware tools that you use?

I build robots, so I use a laser cutter, a milling machine, and lots of servos.

What are your favorite software tools that you use?

SolidWorks for CAD work. C++ and MATLAB for software development.

What is on your bookshelf?

I am slowly trying to learn quantum mechanics. Right now I’m reading Noson Yanofsky and Mirco Mannucci’s Quantum Computing for Computer Scientists, and Manjit Kumar’s Quantum: Einstein, Bohr, and the Great Debate about the Nature of Reality. Both are excellent books.

Do you have any tricks up your sleeve?

I take a constructivist approach to understanding. When I study something, I ask “How could I build this, or how can I build things with this?” This is opposed to, for example, “Where might I observe this in nature?” I also tend to ask right away, “What are the limits of this? Where does it break?”

Do you have any note-worthy engineering experiences?

I’m actually a computer scientist who dabbles in engineering. One interesting experience I had as a computer scientist occurred when the Motion Picture Association filed a lawsuit to suppress publication of computer code for decrypting DVD movies. The judge granted a preliminary injunction barring the defendants from distributing the code, but not from discussing the algorithm, which he thought was protected speech. I created a now famous web site, the Gallery of CSS Descramblers, demonstrating that this distinction made no sense; computer code is speech. This led to my testifying as an expert defense witness in federal court. The judge appreciated my testimony and concluded that code really is speech. But the defendants still lost.

What has been your favorite project?

I designed a hexapod robot called the Chiara (see photo), which some students of mine have used to do really cool things. One programmed two Chiaras to play chess on a real chessboard. Another got a Chiara to walk up to an electronic keyboard and play Ode to Joy.

Can you tell us more about Chiara?

It bears some resemblance to a spider or crab, but the “head” makes it closer to a praying mantis. The robot in the photo is still an early design; it needs more refinement before we can actually sell it. We are working now on the next generation, which will be closer to a mantis.

The body of the Chiara is laser cut acrylic. That is actually one of the problems with it, acrylic is pretty fragile. We cannot ship the Chiara; we have to deliver them by hand. For the new robot, we are hoping to go with a new structure and enclosure out of a different material. We are looking at laser cut ABS plastic or some kind of vacuum forming process. Injection molding would be great but we don’t have that kind of budget.

What are the communications methods with Chiara?

It has both Wi-Fi and Ethernet. There is an antenna for Wi-Fi and an Ethernet jack if you need to run it wired. The Chiara is designed for robotics education. We have a serious problem in terms of robotics education for undergraduates. Many schools are still using LEGO MindStorms because they cannot buy anything better. LEGO MindStorms is great if you’re a ten year old tinkering with robotics, but when you’re twenty and have spent the last 2 or 3 years studying serious computer science, it’s completely inadequate.

The Sony AIBO robot dog was a great robotics education platform. In 2003 I started developing a software framework called Tekkotsu (Japanese for “framework”) for teaching robotics to students using the AIBO. When Sony left the robotics business in 2006, no one stepped in to fill that market niche. I was forced to start developing my own platforms so we would have something to use, because you could not buy anything at a reasonable price. This is how I ended up in the robot business. I am having a lot of fun, but am eagerly looking forward to the day when I am run out of the business by big companies with serious financial resources. My aspiration is that manufacturers see my robots and decide they can design something better; I will happily pay retail if they offer attractive products. Then I can go back to being a software guy.

What types of sensors are mounted on the robot?

There is an webcam mounted on the head. There is also a 3-direction IR range finder mounted just below the webcam. There are some pushbuttons on the back as well. There are about 27 servos used in the Chiara, depending on the configuration.

Most of the Chiaras that we built do not have a closable gripper, they just have a C bracket so they can push things, but cannot grasp them. We also built some that could play chess last year. We built a specialized gripper to pick up chess pieces.

All of the control is done on board. The computer onboard is comparable to a laptop. The robot is basically a “laptop with legs”: it runs Linux and has its own IP address. In collaboration with a local company called RoPro Design, we have delivered a total of 21 robots besides the ones in my lab. Carnegie Mellon owns six. Cornell has the only green one.

What are you currently working on?

The robot I am working on now, a short term successor to the Chiara, is called Calliope. It’s built on top of the iRobot Create. Calliope has a camera on a pan/tilt like Chiara had, and it has a larger, more complex arm. It uses an ASUS netbook for onboard control. Long term, we are promoting the hexapod. Legs are better than wheels. But servo prices have to come down first. A big problem with robotics today is that the components are produced in small quantities; there’s no economy of scale. We are in our early days.

You can learn more about Chiara and other projects we are working on at my web site.

I’m also doing a lot of work on robotics curriculum development using the Tekkotsu framework. It’s open source and available here.

In what direction do you see your business heading in the next few years?

We’re still in the early days of the robotics business, with products that are primitive and yet expensive. But the pace of development has quickened and I think we’re going to see a lot of exciting new platforms in the next few years. The Microsoft Kinect is a good example of how important bits of technology can suddenly become an order of magnitude cheaper and more sophisticated. Expect more of these surprises.

What challenges do you foresee in the industry? Where is the next generation of robot programmers going to come from?

People are rightly concerned about keeping the STEM (Science, Technology, Engineering, and Mathematics) education pipeline filled so that we can take full advantage of our native talent pool. NSF has a bunch of programs that are trying to address this need. I am one of the founders of the ARTSI Alliance, an NSF-funded consortium of 17 Historically Black Colleges and Universities and 8 major research universities that is working to recruit more African Americans to pursue advanced training in computer science and robotics. I’m also working with a similar organization in Puerto Rico. Robotics is increasingly dependent on good software engineering, so it’s vital that we attract more students to computer science so that the engineers have colleagues who can program the robots they build.

Previous Spotlights

Click Here