> Here's another way of thinking about the problem: Consider the task of building a robot vacuum cleaner. The robot should be able to vacuum a room of any size or shape, containing furniture or other obstacles. It should make sure to clean every spot on the floor, without getting stuck by hitting the walls or furniture. It must also avoid getting into an infinite loop cleaning the same spot over and over again, and must be able to tell when it is finished. Since computer vision systems are expensive and difficult to build, and the robot should be simple and cheap, a further restriction will be imposed that the robot will be blind - it won't have a TV camera to watch for obstacles. Instead, Jt will be equipped with touch sensors, so it will be able to detect when it hits something or brushes up against it. It can only tell whether there's an obstacle adjacent to it in front or on the side.
Demo website [no affiliation]:
This area (in robotics) is called "complete coverage path planning" and has quite a bit of research in it. Getting an efficient path is challenging when you can only see a limited area.
There are neural net approaches that split an area into cells and assign weights to adjacent cells to direct the motion. Generally, the name of the game is to make an optimization among path length, energy, time, etc.
Was not disappointed.
Remember when there would be a line break in the shape you were filling, and color would "escape" and fill your entire drawing?
That still happens to me regularly nowadays!