Tuesday, January 11, 2011

Living with a Robot

So we've used floor washing Scooba robot a few nights in a row now. In fact we've used up all the free cleaner that came with the robot and are now planning to switch to the alternative "60ml of vinegar". Some issues have come up in that it often gets stuck on an uneven portion of our kitchen floor. When this happens it makes a childish "uh-oh" sound, and you have to go free it. Not such a big deal although when it does that three times in a row it's a bit of a pain.

Part of the issue for me is that I run it at the end of day, so I want to go off and watch some comedy on telly and fold the laundry and try to relax, and it's irritating to have to go help the robot, and even more irritating if I don't hear it getting stuck and then come to find it hasn't finished cleaning and I have to reset it and can't go to bed at the time I want because I have to wait for it to finish so that I can drain the tanks and leave all the different parts out to try. I imagine this is a particular issue for the Scooba that the Roomba vacuum cleaning robot owners don't encounter; will have to get a Roomba and report back!

Also I am having trouble working out a good charging cycle for the battery. The first overnight charge gave fine performance for the first clean, but the second clean the following day failed half way through due to lack of battery power. The manual says don't leave it charging over night except the first time, which is fair enough, but then when should I charge it and for how long? The most convenient for me would be to leave it charging when the tanks are drying, which based on how long I sleep is about 7 hours. Too long? I tried an hour charge previously and that wasn't enough. My options appear to be either to remember to start a charge before supper each day, or just give it an overnight 7 hour charge each day. Having the Scooba run out of power is just as irritating as it getting stuck un-noticed; means I have to stay up, or throw away half a tank of cleaning solution.

I have resolved the getting stuck on raised tiling problem by leaving a heavy box (of beer) on the place where the Scooba often runs aground. Interesting that before coming up with that solution that I might have argued that the Robot should learn a map of the kitchen and work out to avoid the sticking point, but now I could almost argue that would be wasted effort on the part of the engineers. To the extent that I have a good model of what the robot is doing (spinning, wall following and room crossing), I can adjust its behaviour effectively by small changes to the environment. The Scooba/Roomba really is an a very interesting intersection point between the two of the courses I am teaching this semester. Mobile Design at least partially inspired by Don Norman's "Design of Everyday Things" for which understanding users conceptual models is very important, and Artificial Intelligence, which covers the ongoing fight between high level mental models and low-level behaviour based robots and AI systems.