In Silicon Valley, any conference calling itself the "Best of the Best" promises more fluff than stuff. But a recent Churchill Club event which promised the cream of the robotics industry confirmed the sceptics' worst fears. Consumer robotics is a business built mostly on play, hope and tinkering - rather than profit or …
One of the most interesting recent 'humanoid' toy robots produced for consumers is the Robosapien 2...kidding! it's the Hitec Robonova-1 of which the arms, legs, 'hands' & feet are servos made especially for the robot.
It has a rather novel way of programming new movements/sequences into it, all you have to do is physically move the arms/legs into the position you want and the PC will record that position, just like making stop motion animation.
There are a bunch of video clips of the robot on Google Video & YouTube showing how well this thing can perform. I'd love to get one but with a price tag of £500+ it's far out of the price range of the average kid (big or otherwise) for just a toy robot.
I think iRobot's Create is actually based on the Scooba platform. Which, for the most part, is based on Roomba.
I'm on my third Scooba. The first one did well for a while, then something died. The in-warranty replacement was DoA. The third, "downgraded" from the original (5900->5800) seems to be working well. Interesting to note that part of the downgrade is more use of high-impact plastic instead of aluminum.
I am a little surprised that iRobot doesn't offer a Phone Home(sm) package. For a nominal fee (or, if they were really progressive, for free) you could plug your *oo*ba into a spare USB port (unfortunately the actual I/O port is still the olde-style serial) and have it upload how it's doing and perhaps download new firmware. I know my Scooba has an interesting set of courses to run, since I have acres of tile floor.
I like Scooba, in spite of the return hassles. iRobot Customer Service has been quick on the replacements, whether it was batteries (ah, I forgot to mention those) or the actual 'bots. More than a toy, slightly less than a really robust tool. I still would recommend it to any techy friend.
Oh, and yes, my kids have a Mindstorms set and I used to coach FIRST Robotics teams. That's a whole different story...
The Roomba is not a vacuum cleaner!
There's a bit of misinformation that is propagated in many articles about the Roomba, and it's repeated in this Reg article, so let's correct it: The Roomba is not a vacuum cleaner - it's a floor sweeper. It does not suck like a vacuum cleaner - it merely uses a rotating brush to shovel debris into a storage unit. If you check the Roomba web site carefully you'll notice that they artfully dance around this, making comparisons to vacuum cleaners but never saying that the Roomba is a vacuum cleaner, so as to let the reader come to that erroneous conclusion themselves.
The Roomba ironically resembles the kind of mechanical floor sweeper that was common in my Grandma's generation - like a broom but with a plastic head on the end that contains a rotating brush. I'm sure many readers will remember seeing one of those if they cast their mind back to their youths (if you're old enough, anyway!)
We considered buying a Roomba, but once I figured out what it really was changed our minds. It would be useless on carpet, and would pick up only the largest items.
RE: The Roomba is not a vacuum cleaner!
Actually, the roomba is part vacuum cleaner, complete with suction and filter, although it's pretty limited. It works basically this way;
as it travels forward, the first thing that contacts the floor is a big rotating agitator brush. It kicks the larger stuff, hair, etc. up towards the back of the roomba, where a second smaller rotating rubber brush flips it backwards into the waste container. Directly behind the brushes are 2 closely spaced stationary rubber wipers that just touch the floor. above the narrow space between the wipers is a waste area and filter and above that is a suction fan, which blows out a vent in the back. As the wipers drag across the floor the smaller stuff, dust, and small hair is sucked up between the wipers and caught by the filter. To empty it you pull off the whole back of the roomba, dump out the big stuff, and slide out the filter assembly, which dumps out all the dust and small stuff.
It is a lot like the manual sweeper thingy that the above poster described, but with the addition of a slightly-less-powerful-than-a-Dust-buster vacuum.
It's great for hard floors, and can handle real low carpets and rugs. real low. It gets over threshholds and minor obstacles no problem. It gets a hardwood floor as clean as you can get it with a broom, maybe better, but it can't get into deep corners or under shallow furniture and it won't pick up the dog toys for you before it vacuums. It does ok on low carpet and rugs, better than you would sweeping them with a broom, but not like a real vacuum. Loose things like string and pieces of clothing, and those little subscription cards that come cascading out of any new magazine, will all get jammed up in the brush and cause roomba to give up and pout.
It's a weird combination of really cool, and completely dorky. It will actually vacuum, your whole house and then drive back to its charging station and park, which is cool. But it gets around basically by driving until it runs head first into something and then it backs up turns and tries again - dorky. It has some cool behaviors where it will work its way around obstacles by turning in a circle around the obstacle till it hits it then slightly adjusting the curve of the circle wider and trying again. That way it can clean around table legs and work the edges of the floor, following the contour of the wall. Then it has this thing where if it gets onto a carpet or some other surface that it can't move forward against and it gets kind of stuck, it will do this crazy reverse bootie dance thing where it backs up just a little bit real fast, which causes its butt to stick up in the air, stops quick, then does it again. It's freaking hilarious. It looks like an epileptic cat in heat. Usually this just ends with it stuck, ass in the air, up against a wall or something. It does have these IR 'virtual wall' things that you can use to fence off areas that you don't want it going into.
Roomba is pretty loud, it sounds like a chainsaw made of plastic, so you want to start it right before you leave for work or the store. And don't make the mistake of watching it or you will just end up following it around, muttering at it about how it already cleaned that part, and picking it up to 'help' it. They clean the floor almost randomly so they aren't efficient in the sense that they do clean the whole floor but in the process the go over some spots many times.
I've had one for about a year and a half, and for my situation it's the shiznit! I live in a 600 sq' hw floor house with 2 dogs and a girlfriend with allergies. Before roomba i vacuumed the floor every day or 2 at the most. Now i vacuum the area rugs and the corners and edges once a week. And roomba gets under the bed and under the computer desk and a few other spots like that that i usually neglected. I dump out better than a double handful of hair, dust, crumbs and worse every day. It really is amazing how much crap it picks up. You do have to walk around and pick up toys, shoes, magazines etc. or it will just vacuum around your shoe, tear up the magazine, and half-eat one of the toys and get all jammed up. I just walk around the house once to pick up and then hit go before I walk out the door to work.
It's not going to work for everyone, if you have mostly carpet or lots of delicate furniture that you don't want it ramming into everyday, it's not for you. But it does do a great job of keeping hard floors clean with a ton less work than sweeping every day. It guess it saves me around 40 minutes a week, and keeps the floor cleaner than i would. On the other hand it takes about 40 min a day to do its thing so it's really taking 5-7 times as long to clean the floors, but it gets them a little cleaner than the alternative (me), and it saves a little of my time. The major pay off for us is the reduction in allergens from getting all that dust and crap out of the house daily, instead of letting it build up for a week. It makes a very significant difference.
As you may be able to tell, i really like my roomba, my girlfriend thinks maybe a little too much. :-)
The Roomba Actually Works
I'm an early adopter, I got one when they first came out. It does actually work, and work well, its like have someone with a serious problem with obsessions going over your carpet with a toothbrush. Its not a money or time saver compared to a regular vacuum cleaner, especially as the one room we've got left where we can use it has furniture that can trap it. But its fun.
I spent a lot of time last week at a place where one of the participants had a Segway. A really neat bit of engineering. Utterly pointless. It does the same job as a pair of legs but not as well and having to stand motionless on the thing all the time means that your legs don't get the assistance to their circulation that walking gives them (a good way to get cramps or worse). But still, a really neat bit of engineering (but for day to day use I'll use locomotion units that came free with my body).
Could you elaborate on this? There are alot more ways of inferring than just using statistical data as far as I know.
Automatic vacuum cleaner need not be 'intelligent'
I don't see why building grandios AI systems for these seems necessary. The solution is simple:
Place the vacuum cleaner in a dedicated start location in a room, move it along the area of the room to be vacuumed manually allowing it to remember the path by sensing the wheels.
The vacuum then simply follows the same path, you only retrain it if you move the furnature of something.
Problem solved : )
The winning car actually used optical flow for based depth maps for object avoidance. The lasers assisted in calibrating this field and as a safety switch in case the software misses something small. The gps unit helped the car to stay on the road by providing the map and the preset path.
Optical flow and the resulting depth and movement map is generated at the crossing of the vision nerves in the human vision system, before the nerves hit the visual part of the brain. It's essentially a texture displacement map, that mpeg uses for motion compensation. The distance of a voxel from the sensors on stereo image pair can be computed from the distance it 'moves' on the two images relative to each other. The point the cameras are focusing will have a displacement of zero. This can be and usually are calibrated. The other voxels can be nearer or farther depending on the sign and magnitude of the displacement. To find this dispacment, one compares multiple (or all) possible displacements around a given pixel within a window. The match with the smallest sum of the squares of the differences will give you the displacement, that can be translated into a distance. The result can be a grayscale image of the scene with white as the nearest distance and black as the farthest. This can be used to make a 3d model of the scene.
Around the sides where the image pairs doesn't overlap, the human vision system calculates temporal displacement, which means it calculates the movement direction and speed of objects from two frames of the same eye. This can be used to detect moving objects and their direction of heading relative to the sensors. Combining the two informations, we can get map of the environment with the distance of things and moving objects marked with their relative direction. If we add the calibration data from the camerea focus servos and the movement speed of from the gps unit, we can make a real time 3d map of the environment with all static and moving objects marked as voxel blocks. This is enough to avoid (darpa desert race) or facilitate (us antiballistic system) collisions with objects in the environment.
This algorithm doesn't recognise objects, just sees them as big blobs, but it's enough for movement. The human vision system adds texture recognition with the same statistical filter but applied to a texture database and computed in fourier (or more likely wavelet) space. The three algoritms tell us where is everything, where it is moving and what it resembles. The high level logic functions are beyond these and we don't know much about them right now.
ps: I'm just a thinkerer...
The first copulating dinosaurs?
I know for a fact that on certain obstacles the Roboraptor did a good impression. Not that anyone I know got drunk and spent hours testing that kind of thing.
re: Automatic vacuum cleaner need not be 'intelligent'
re: training the vacuum cleaner to retrace paths: the problem is that wheel odometry by itself is usually so unreliable (and definitely so on the roomba) that the robot will just drift out of position in no time. Now if the robot is somehow capable of accurate simultaneous localisation and map building using a bunch of sensors (or can accurately navigate itself in a supplied map - again most likely using some form of statistical filtering), then this would work. Then again, it could then just use already-existing coverage algorithms that do a good job in known environments.
The stock-standard roomba doesn't appear to have enough sensing ability anyway, so that's where you see people tacking on lasers, cameras and whatnot.
re: Statistical inference
Viktor thanks for that (Im assuming that was a reply to me), I find it fascinating how speed and distance is found. 'Statistical inference' suggested to me something to do with how an agent infers things (draws conclusions) from its percepts which as Im sure you know can be done statistically but also in other ways (eg rule based producion systems).
Im no expert here though *bows to your great knowledge* : )
re: The first copulating dinosaurs?
Actually now you mention it, my son's Robosapien 1 has a pelvic thrust move. I always wondered what for, but I guess that since it's never met Mrs RS, it hasn't had chance to demonstrate. I just thought it was so it could do the Timewarp properly...
Why robots are difficult
There's fascinating lecture on the Royal Society's website, relevant to why autonomous robots are so difficult:
The title is "How the brain controls the body," and the lecturer started with the question of why it is that we can build a chess computer that beats grandmasters some of the time, but not a robot that moves a chess piece with the dexterity of any three-year-old.
Come on guys, humanoid robots? Get serious.
What's the point? No one wants a copy of GORT...
...running around their home serving drinks. Now, if you could get a version of KOS-MOS from the Xenosaga series, then I could see that selling. Of course, I doubt that many wives would be too keen on the idea, although you never know.
(Sorry for all the wiki links. Wiki may not be 100% accurate, but it's a decent jump off point if you are looking for information, especially on pop culture.)
Paradise Towers pool cleaning contract.
"Based on this success, after almost two decades of trying, iRobot is branching out into automatic floor-scrubbers, pool-cleaners, and bomb-defusers - that last one not yet available for the consumer market, unfortunately."
Now we know who the Great Architect hired for the Paradise Towers job.
Re: Humanoid robot
"It has a rather novel way of programming new movements/sequences into it, all you have to do is physically move the arms/legs into the position you want and the PC will record that position"...
Err, I don't think that's particularly novel - it's known as 'walkthrough programming' and has been used for teaching industrial robots for a long time...
Come On Bill!
Whatever happened to serious journalism? You don't add anything new to people's understanding of the Pleo, you simply mock it and polish your ego at the same time.
Could you please review the Pleo properly?