ICRA 2015 days 2-5

I’ve been at the conference on robotics and automation for five days now and all I can say is: “Did you know robots can play football?!”

https://www.youtube.com/watch?v=XLKKbz2mNyo

I stopped by the Robotis booth at the exhibition during lunch one day and they showed me the above video. Robotis makes the Darwin OP robots that make up the American team in the above video. Not only are they adorable, they’re also frighteningly smart. Their goal-blocking behaviors are pretty funny too.

On Wednesday I got to hear a talk from Peter Hart on making Shakey, one of the first autonomous mobile robots. Colin shares Shakey’s basic physical design and I think I can learn a lot from how Shakey’s software was organized. Shakey used a hierarchical system where one program controls low level functions like moving and sensing and separate programs handle motion planning, map building and localization. It seems like a good way to organize Colin’s functions. That’s a long way off though. I’m still busy writing Colin’s motor control library.

On Friday there were two sessions on Simultaneous Localization and Mapping (SLaM). I made sure to attend both of them since my ultimate goal for Colin is to program him for SLaM.

It seems a lot of implementations of SLaM rely on vision via Microsoft Kinect sensors. Those are out of my league for the moment; I have no idea how to program for them and Colin does not have the power to run any such program anyway. Laser rangefinders and LiDAR are also popular and, while I could potentially add one to Colin, they are expensive as hell. I’m still getting some good ideas though. Hopefully I can implement them on a robot that uses cheap ultrasonic and touch sensors instead of fancy RGB+D cameras.

Saturday was my favorite day at the conference by far. I attended an all-day workshop on building a career in robotics research called “Becoming a Robot Guru.” The speakers and panelists got me very excited about working toward a career in robotics. I was encouraged to learn that one doesn’t have to follow the traditional academic career path to be a robotics researcher. I have been worried lately that it may be too late for me to start a PhD in computer science or robotics, but many of the speakers on Saturday took more than a decade to start their PhD after they completed their bachelor’s degree. That gives me hope that a career in research is still an option for me. I’m starting my master’s degree this fall. All I really have to do is keep working at it and I’ll get there eventually.

ICRA 2015 Day One

I got extremely lucky this week. First of all, the IEEE Conference on Robotics and Automation is in Seattle this year. Second, I managed to convince my manager at Boeing to let me attend! So, for the whole week I’m going to be attending lectures and workshops on advanced topics in robotics rather than going to my regular job. I seriously cannot articulate how thrilled I am about that. Also, just as a little bit of icing on the cake, the conference venue is a fifteen minute bike ride from my apartment. A whole week with no commutes and a lot learning and talking about robotics? Only one word applies: jackpot.


Dynamic Locomotion and Balancing of Humanoids:

I’ve only been through one day and it’s already pretty clear that most of this stuff is over my head right now. I spent the morning in a workshop titled “Dynamic Locomotion and Balancing of Humanoids.” I was able to follow along with the high-level concepts like the discussion of the differences in stability and efficiency of different movement strategies but whenever a presenter tried to explain the particulars of the extended Kalman filter they used for torque control of their ankle-joint motors my eyes glazed over.

I found the discussion of the inverted pendulum and linear inverted pendulum models for walking to be pretty interesting. Both models represent the robot as an inverted pendulum that repeatedly falls forward, switches its foot position to catch itself and then falling forward again. The main difference is, in the inverted pendulum model (IPM) the robot’s center of mass moves up and down. In the linear inverted pendulum model (LIPM) the robot’s center of mass is nearly stationary in the vertical direction. LIPM is stable but it’s not as energy efficient as IPM. ASIMO’s gait is a good example of LIPM. The video below shows it around the 0:30 mark.


Mobile Manipulators for Manufacturing:

One of my afternoon workshops, “Mobile Manipulators for Manufacturing,” gave me a much greater appreciation for the non-technical roadblocks to wide deployment of robotics. For robots to work effectively with humans, they need to be able to map and navigate their environment, recognize and manipulate objects, and interact with humans in a safe and predictable way.

Although none of these technical problems have really been solved to the extent required for large-scale use of autonomous robots in the workplace, there are other problems that present bigger difficulties. For instance, there are no unified standards for robot programming, communication, or interaction with humans. This makes plug-and-play robotics solutions impossible. Every time a workplace, be it an automobile factory or a hospital, wants to integrate robots into their workflow they need to get a custom designed system. This is not only expensive in terms of setup cost but it makes maintaining, reconfiguring, and adapting the system to new conditions needlessly difficult. You can’t just call up customer support when you have a problem, you need someone who is intimately familiar with your system.

There are other safety and regulatory hurdles for mobile industrial robots to clear before they are widely implemented but, to make a long story short, the non-technical problems make the technical ones look simple. Technical problems have definite solutions. Regulatory and business problems don’t.


On my first day at the ICRA I learned more about the existence of a whole range of topics I wasn’t previously aware of than I learned about the particulars of any one topic. I’m expanding my realm of “things I know I don’t know” more than I am expanding the things I know.

There’s so much that goes into a seemingly simple task like making a robot walk like a human or recognize and pick up an everyday object. This is what I love about computer programming in general though: to teach a robot or computer even the most simple task requires an incredible understanding of the task itself.