All materials to build an autonomous car have been provided. Now you can own an autonomous car based on your requirements. You can make an autonomous ,mobile machine tailored to a specific task, for instance, a vacuum cleaner robot. You can use an Ultrasonic module to detect obstacles.
In my opinion, the big issue in making a vacuum cleaner robot is the cleaning path algorithm—how the robot visits all areas. It happens because the robot doesn't have a map. You could use a microSD card module to store every visited area. With a semi-autonomous robot, we can use middleware to guide the robot about a cleaning path.
Consider the example of Roomba from iRobot http://www.irobot.com/For-the-Home/Vacuuming/Roomba.aspx. I found out that the Roomba robot uses the cleaning path algorithm shown in the following figure:
Read these papers (4,5,6) to get an idea of how to build a vacuum cleaner robot.
By integrating sensor and actuator devices...