<<

1

Jeffrey Gu, Nicolas Wilmer Professor Evan Donahue ISS390S 12/7/18

The Evolution of the Roomba and the AI Field

Recently, the consumer marketplace has been flooded with a number of intelligent technologies, including many that integrate virtual assistants such as Amazon’s Alexa and

Apple’s Siri. Even household appliances like Samsung’s newest refrigerators integrate “smart” technologies. For many in the tech world, (AI) has long represented the future of and technology. For many years, however, AI technologies were not marketed to the average consumer. Rather, most AI companies were focused on corporate, military and governmental applications. Thus, there seemed to be a marked difference in expectations for AI between ordinary people and those involved in the AI field. When asked about the potential of AI, many people would passionately discuss its future applications in education and healthcare.1 However, Mitch Waldrop during a panel discussion featuring several prominent figures in the AI field noted that these applications “seem to be in roughly the inverse priority to what AI people give these subjects.”2 This disconnect began to disappear in 2002, when iRobot, a company founded in 1990 by three former MIT AI Lab scientists, released the

Roomba, a that autonomously roams and cleans the floors of your house. The commercial success of the Roomba and its business model brought the AI conversation to households around the world.

1 McDermott, Drew, M. Mitchell Waldrop, B. Chandrasekaran, John McDermott, and Roger Schank. 1985. “The Dark Ages of AI: A Panel Discussion at AAAI-84.” AI Magazine 6 (3): 122–122. https://doi.org/10.1609/aimag.v6i3.494. 2 Ibid.

2

Like many AI companies, iRobot started out as military technology-based company. iRobot’s first project was Genghis, a six-legged robot designed for space exploration.3 Later developments included Ariel and PackBot, designed to detect and disarm mines and bombs in surf and military zones, respectively. iRobot’s business trajectory drastically changed in 1989 during the AI Olympics, where current iRobot roboticist J.L. Jones built “Rug Warrior,” a simple floor-sweeping robot.4 Although Rug Warrior lacked the reliability and robustness necessary for a consumer product, it was a promising example of how a small, simple machine could provide a useful consumer service.5 Despite the enormous potential, funding was not available to develop such a product, and remained unavailable for the next ten years.6 Jones and colleague Paul Sandin went on to propose that iRobot develop a small floor-cleaning robot targeted at consumers because they believed a market for such a product existed.7

Coincidentally, when iRobot co-founder Colin Angle introduced himself to others as a roboticist, he was often immediately asked, “When are you going to develop a robot to clean my floor?”8

The company ultimately accepted Jones and Sandin’s proposal, and thus they began to develop the robot.

The Roomba’s lineage can be traced back much further than the late 20th and early 21st centuries. It was clearly inspired at least in part by William Grey Walter’s Tortoise, which was developed during the late 1940s and early 1950s. Back then, the term artificial intelligence had not even been coined yet, and most of the focus was on AI’s predecessor field, cybernetics, which studied how systems communicate with and respond to their environments. Walter used

3 Ibid. 4 Jones, J. L. 2006. “Robots at the Tipping Point: The Road to IRobot Roomba.” IEEE Automation Magazine 13 (1): 76–78. https://doi.org/10.1109/MRA.2006.1598056 . 5 Ibid. 6 Ibid. 7 Ibid. 8 Barker, Colin. n.d. “Automation: How IRobot’s Roomba Vacuum Cleaner Became Part of the Family.”

3

his experience in cybernetics, neurophysiology, and robotics to build the Tortoise in an effort to understand how the works.9 Walter hypothesized that “rich connections between a small number of brain cells could give rise to complex behavior,” and he was “fascinated by the notion that a machine might define a goal and then seek to complete it by learning from the consequences of its own actions.”10 The Tortoise was meant to demonstrate this hypothesis in practice. Walter gave the Tortoise the official name “Machina Speculatrix” because it “explores its environment actively, persistently, systematically as most animals do”.11

The Tortoise was based on vacuum tube technology, which was the most advanced computing technology widely available at the time. Specifically, each robot had two vacuum tubes to “simulate two interconnected neurons.”12 The Tortoise incorporated two sensors, which were connected to two motors.13 The first sensor, a “photocell” communicated with the drive and steering motors to allow the Tortoise to follow light.14 The second sensor was a “contact switch” which indicated when the robot had bumped into something, and would cause “the vacuum-tube amplifiers [to go] into oscillation and changed the robot’s direction.”15 The Tortoise was clearly a cybernetic creation — Walter intended for it to demonstrate how interaction between two sensory systems—“light-sensitive and touch-sensitive control mechanisms”—and a motor was enough to accomplish the “behaviors” of following light and avoiding obstacles.16 From a

9 O'Connell, Sanjida. 2000. “What the tortoise taught us.” The Guardian. https://www.theguardian.com/science/2000/dec/07/robots. 10 Dormehl, Luke. Thinking Machines: The Quest for Artificial Intelligence--and Where It's Taking Us Next. New York: TarcherPerigee, 2017, pg. 66. 11 LeBouthillier, Arthur Ed. 2010. “W. Grey Walter and his Turtle Robots.” California State University, Long Beach -- Robotics Society of Southern California. http://web.csulb.edu/~wmartinz/rssc/content/w-grey-walter-and-his- turtle-robots.html. 12 Ibid. 13 Ibid. 14 Ibid. 15 Ibid. 16 “Grey Walter and his tortoises.” 2008. University of Robotics Laboratory. http://www.bristol.ac.uk/news/2008/212017945378.html.

4

neurophysiological perspective, the control mechanisms were analogous to “two nerve cells with visual and tactile inputs.”17

Given the Tortoise’s technical and cybernetic background, it is “impossible not to look at a device like the Roomba…and see the legacy of William Grey Walter’s Tortoises.”18 On the shallowest level, the connection between these two robots is obvious just based on appearance.

However, these machines have much more in common than just looks. The Roomba uses infrared (light-based) sensors to help it detect walls and stairs.19 Roomba also has a “touch- sensitive bumper” which, when triggered, causes the robot to turn and move in another direction.20 These sensors and behaviors are also reminiscent of the Tortoise, especially if the general advance in technology is taken into account. Of course, the Roomba is more than just a smaller, puck-shaped version of the Tortoise with a computerized vacuum cleaner built into it. It incorporates a sophisticated algorithm which allows it to detect particularly dirty areas (and repeatedly pass over them with the vacuum), and to measure the size and dimensions of the room it is cleaning so that it knows when the job is done. Still, the essence of the Roomba and the

Tortoise are united by their common cybernetic heritage — they respond to “stimuli through feedback-based ‘intelligence.’”21 However, the Roomba goes beyond cybernetics by incorporating algorithmic behaviors developed as a result of the rise of artificial intelligence

(AI).

17 Ibid. 18 Dormehl, Luke. Thinking Machines: The Quest for Artificial Intelligence--and Where It's Taking Us Next. New York: TarcherPerigee, 2017, pg. 67. 19 Ibid. 20 Ibid. 21 Ibid.

5

Roomba Simulation Program https://github.com/jeffreygu98/Roomba

For the technical portion of our project, we chose to write a program that simulates the basic behavior of the Roomba. Python was our language of choice because of the its simplicity and wide range of 3rd party libraries available for use. These features were especially useful when we realized that a few well-known libraries in Python, including Turtle, Numpy, and

EasyGUI, were applicable to our project. Python Turtle graphics were actually invented by

Minsky and Papert based on the designs of Tortoise-inspired electric turtles, and so provided a perfect historical connection to the Roomba. We used Turtle to display the motion of the

Roomba as it “cleans the floor” of the space. At the same time, EasyGUI allowed us to generate prompts as pop-up windows, where the user could configure certain aspects of the simulation.

Numpy gave us access to efficient arrays to house the coordinates of the Roomba.

After running the program several times with different parameters, we were able to roughly estimate what we believed to be the optimal angles at which the Roomba should move when it encounters a wall (or any other obstacle). It seems to be that larger “bump” angles generally allow for more efficient “cleaning” than shallower angles. A random “bump” angle is actually less efficient than most “fixed” angles.

While Turtle and EasyGUI seemed at first to be perfectly suited to our task, we encountered a series of technical challenges that limited the ambitions of our program. Most of these are small bugs e.g. the image of the Roomba does not rotate when it encounters the wall, even though the direction of motion does change. However, the Turtle library also limited us in more fundamental ways. For example, we initially wanted our algorithm to terminate when the

Roomba had completed the “job” automatically. In order to accomplish this, we decided to track the Roomba’s position and update which coordinates had been “cleaned” in our numpy array.

6

However, due to foundational limitations with the Turtle library, we were unable to get the program to terminate within a reasonable time. For this reason, we allow the user to specify the amount of time the Roomba should “clean” for. When the program terminates, it tells the user how much of the room was cleaned in the specified amount of time.

Overall, we are very satisfied with the resulting program that we created. Afterall, the goal of this portion of our project was never to simulate the full, complete algorithm that powers the Roomba—an algorithm that likely took years and millions of dollars to perfect.

Below are a series of screenshots which detail the configurability that we have built into the simulation, as well as some sample snapshots of the program in action:

7

8

9

10

Bibliography

1. Barker, Colin. n.d. “Automation: How IRobot’s Roomba Vacuum Cleaner Became Part

of the Family.” ZDNet. Accessed November 13, 2018.

https://www.zdnet.com/article/automation-how-irobots-roomba-vacuum-cleaner-became-

part-of-the-family/.

2. Dormehl, Luke. Thinking Machines: The Quest for Artificial Intelligence--and Where It's

Taking Us Next. New York: TarcherPerigee, 2017.

https://books.google.com/books?id=YAUdDgAAQBAJ&pg=PA67&lpg=PA67&dq=roo

mba+relationship+to+william+walter+tortoise&source=bl&ots=vjcgFSKpTF&sig=CvH1

Wb1ILd6KZJte15nrfzqo2Fs&hl=en&sa=X&ved=2ahUKEwiShJSuotDeAhVNm-

AKHWzlB8QQ6AEwC3oECAQQAQ#v=onepage&q&f=false.

3. “Grey Walter and his tortoises.” 2008. University of Bristol Robotics Laboratory.

http://www.bristol.ac.uk/news/2008/212017945378.html.

4. “History | IRobot.” n.d. Accessed November 13, 2018. https://www.irobot.com/about-

irobot/company-information/history.aspx.

5. Jewell, Mark. 2005. “Roomba Vacuum Inventor Turns Robots into Reality.” The Seattle

Times. May 30, 2005. https://www.seattletimes.com/business/roomba-vacuum-inventor-

turns-robots-into-reality/.

6. Jones, J. L. 2006. “Robots at the Tipping Point: The Road to IRobot Roomba.” IEEE

Robotics Automation Magazine 13 (1): 76–78.

https://doi.org/10.1109/MRA.2006.1598056.

11

7. LeBouthillier, Arthur Ed. 2010. “W. Grey Walter and his Turtle Robots.” California State

University, Long Beach -- Robotics Society of Southern California.

http://web.csulb.edu/~wmartinz/rssc/content/w-grey-walter-and-his-turtle-robots.html.

8. McDermott, Drew, M. Mitchell Waldrop, B. Chandrasekaran, John McDermott, and

Roger Schank. 1985. “The Dark Ages of AI: A Panel Discussion at AAAI-84.” AI

Magazine 6 (3): 122–122. https://doi.org/10.1609/aimag.v6i3.494.

9. O'Connell, Sanjida. 2000. “What the tortoise taught us.” The Guardian.

https://www.theguardian.com/science/2000/dec/07/robots.