Originally posted by: mundane
iRobot also does some development for the
gvt.
Also engineering is just plain difficult. Tying together hardware and software to deal with the real world in an effective manner is a very hard thing to do. I wrote an in-depth review on my Roomba robot vacuum over at RoombaReview.com and listed a variety of pros and cons. One of the major issues right now is battery life...the Roombas get an hour of juice on a good day, which is enough to clean one decently-sized room well. Then it's back on the charger for 3 hours before it can be deployed again. Since they are limited on power, they are limited on what hardware they can use in it. Some of the problems that the Roombas have include getting stuck on things (tight spaces, items raised off the floor like thick rugs, etc.) and falling down stairs have rounded edges instead of straight ones, like with carpeted stairs. There's no mapping system because it would be too expensive and eat up too much processing power, which means less battery juice, which means less run time.
I think that robotics will really take a jump forward if they can find some way to make awesome small batteries. Maybe fuel cells will be the key that unlocks that door. Higher-capacity batteries means longer run times, more processing, and more power options. I think the next limiting factor is the complexity of the world we live in. There are just so many obstacles to overcome and situations to deal with. Even the simplest 2-year-old can deal with things lightyears beyond what any robot can do, no matter how complex it is. I'm sure that someday robots will be developed to a point where they can think more intelligently, but that's a long way off. The Roomba robot vacuum is an incredibly complex device and all it does is suck up crud off your floor. It has a single job in life and yet you could spend months or even years studying all of it's inner workings. Hmm, I wonder if there's any kind of open-source artificial intelligence programs going on that a large community of people could create kind of a code-wiki for in order to develop this kind of programming.