Das stimmt diese Putz- bzw Rasenmähroboter und ähnliches fahren wirklich immer recht dämlich und uneffektiv im Raum herum.
Wenn du den Roboter immer im gleichen Raum / in den gleichen Räumen fahren lassen möchtest, dann könntest du dem Roboter eine Karte einspeichern mit der er sich dann orientieren kann. Du bräuchtest dann natürlich noch irgendein Positionssystem. Das Einfachste wären Odometriesensoren, die die Drehzahl der Räder messen, wodurch dann die Position im Raum errechnen kannst. Nur treten bei diesen Sensoren in der Praxis meist nach einiger Zeit ziemlich große Ungenauigkeiten auf und der Roboter findet sich wieder nicht zurecht.
Deshalb sollte das Ganze noch durch ein weiters Positionssystem erweitert/ersetzt werden, indem du dir im Raum drei oder mehr Bezugspunkte bereitstellst zu denen du die Entfernung bzw. den Winkel über Infrarot, Ultraschall oder ähnliches messen kannst.
Aber ich würde mich da zuerst um die mechanische Realisierung des Roboters kümmern und wenn er dann dumm durch die Wohnung fahren und putzen kann, kann man ein Positionssystem ja immer noch später als Ergänzung bauen.

mfg masasibe