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.