Artificially Intelligent Homes: The Robot Vacuum Cleaner

Humans For AI
humansforai
Published in
7 min readAug 23, 2017

Written by Madhav Srinath

Our homes are getting smarter by the day. Today, a home can contain many pieces of hardware that continue to make menial tasks easier and improve the quality of life. The future of working with a custom artificially intelligent being who is able manage our lives and leave us open to working on things that interest and enliven us is very close.

This series of artificially intelligent homes contains many robot personalities — in this article, we will be focusing on Clarence, the household robot. As humans, we find ourselves needing a roof over our heads, food to sustain us, and sleep to rejuvenate us. However, the same tasks keep popping up every day — cleaning the house, feeding our pets, and generally maintaining the house. These repetitive yet necessary tasks leave ample opportunity for artificial intelligence to step in and help.

The Roomba and many other home robots are revolutionary devices. It is the start to having robots in the house that can perform manual chores for us. In this case, the Roomba specifically focuses on cleaning. The Roomba has multiple sensors that allow it to take in measurements of the surroundings, map its surroundings, and employ an algorithm to cover the maximum area within the mapped rooms while minimizing the repeated traversals of the floor. However, technological innovations will eventually lead to a robot that can perform multiple tasks that are more than just vacuuming the floor.

Here are few examples of such tasks.

Housework

Mopping the floor

Dusting

Making the bed

Doing laundry

Organizing the closet/pantry

Cleaning the bathrooms

General Tasks

Feed the pets

Taking the dogs out

Retrieving mail

Cooking food

Assemble furniture

General handiwork

Packing/unpacking for a move

Buying groceries

Painting the house

Retrieving medicine

Outdoor work

Mow the grass

Pluck the weeds

Clean the gutters

Clean the pool

Rake the leaves

Salt the driveways

Clarence the Robot

Clarence is a home robot with many different features. One of his main features is vacuuming the entire house without any direction from his human friends. Here are the steps that Clarence takes to perform that task.

Step 1

Clarence needs to find out where he is in relation to the house. He uses his sensors to “see” and to determine where he currently is and what the house looks like. If it is the first time Clarence has ever been in this house, he will start looking around and familiarizing himself with his surroundings. When he finally understands where he is, he is “localized.” Localized simply means that Clarence has understood where he is in relation to the map that he has created of the house and now can make more informed decisions if he must navigate around the house. Since Clarence has navigated this house before, he has multiple maps in his storage that show him the most recent developments in his house and to increase his accuracy as he starts his next task.

Localization is a simple concept but with complex underpinnings. This means that Clarence the robot believes with reasonable certainty that in relation to the world around him, he knows where he is. For example, he may have encountered a series of landmarks in succession which proves that he is in a certain part of the room. There could be multiple scenarios throughout the house where this may occur but as Clarence continues moving throughout the house, he starts eliminating the other scenarios until he finally lands on the most likely possibility. The word “most likely” is important because Clarence always must have the ability to doubt himself and re-localize if he finds himself elsewhere. For example, if Clarence was moved while he was sleeping and wakes up in a new place which is similar but not exactly the same as what he believed, he may start off by bumping into his surroundings because he’s not a 100% sure where he is. But because he had a shred of doubt before, that can then be expanded upon until he starts to use his measurements and previous estimates to once again localize himself. Similarly, if a new piece of furniture is placed in a familiar location, Clarence must have the ability to add that to his mapping and take that into account as he continues cleaning the house.

Step 2

Now that Clarence has localized, and mapped the entire house, he can start planning a path around the house to ensure that no nook or cranny stays dirty. He also knows that the goal of this is to return to his charging port to ensure that he can rejuvenate himself and continue with the other chores. Clarence understands his task at hand — maximizing the surface area covered while minimizing overlap. While many of us use GPS to find the fastest route from point A to point B, Clarence is deliberately trying to find the best way to cover all surface area to ensure a clean surface and a satisfied homeowner. Since he has completely mapped the house and understands the various obstacles and open areas, he is able to plan a path to clean the entire house and return to his charging port.

The process of searching for such a path is a common mathematical problem solved by algorithms like Dijkstra, A*, and dynamic programming. In most search algorithms, the mapped house is transformed into a grid and then an optimal shortest path is found from the source to the destination. The interesting problem with cleaning is that the shortest path is still needed but with the additional caveat that every single open space is covered. How can this make sense?

This problem can be formulated as follows:

Goal: Optimize floor coverage and Minimize power used

With that in mind, Clarence has to approach this problem in such a way that he passes through every point in the grid while keeping in mind the return path to his destination (which is the charging port). With algorithms like A* and Dynamic Programming, a heuristic model can be used which applies a reward to every single grid cell corresponding to the open areas of the house and based on the provided heuristic, a series of steps are outputted for Clarence to follow to maximize his reward while minimizing his power usage.

Step 3

As he’s executing his vacuum task, Clarence knows that his current mapped environment, as well as the constant instantaneous measurements he is getting as he proceeds along his path, are not accurate to the degree of certainty that he needs to ensure that he doesn’t keep bumping into his surroundings. In addition, his steering controls may not be exactly accurate and he may need to course-correct based on what he sees in real-time. These slight corrections are made constantly and as Clarence navigates through the path, he sees many diversions from his original planned path.

But that’s okay, Clarence knows that this is part of the process and luckily there’s clever ways to use AI concepts to supplement his sensor technology. He uses a filtering approach like “Extended Kalman Filtering” which allows for 2 probability distributions surrounding the inputted measurement and the predicted measurement and combines the two to get an even clearer picture of where he is. To break it down further, if Clarence is 4 meters from an obstacle per his measurement but based on his previous measurements and predictions of his velocity and heading, he figures he is about 3.5 meters away, he can then use the associated probability distributions of the measurement and the prediction to see which is more certain and nudge his final decision based on that output. In this case, maybe he concludes that he is 3.75 meters away if he is equally uncertain about both or maybe he is 3.95 meters away if he concludes that his measurement is more accurate. This is also instantaneous so it continually gets recalculated as he gets more measurements from his sensors.

As he is going along his path, a PID (proportional, integral, derivative) controller is also used to smooth the path as needed to ensure circular corners are vacuumed properly with the robot smoothly navigating around that corner rather than performing a blocky and linear turn around a more common sharp corner. The proportional part of the controller ensures that the robot sticks to the original blocky linear path with some measure of accuracy. The integral component ensures that if there is a deviation from that blocky path, the correction happens smoothly. The derivative component is sometimes optional and it simply ensures that in the face of noisy measurements and unexpected actions, Clarence can correct himself smoothly.

Step 4

Clarence completes his vacuuming adventure and finds himself with 25% power. He records the telemetry data along with his results to an analytics data warehouse. This can then be analyzed using statistical and machine learning techniques to provide him with more accurate mapping and paths for his next vacuuming endeavor.

It’s time for a well-deserved nap for Clarence.

Conclusion

Clarence the robot’s vacuuming task was just one example of the many different activities that can be automated with the use of artificially intelligent robots. In the absence of hardware improvements with sensors, mathematical filtering approaches can be used intelligently to make better predictions and machine learning can be used to further analyze the outputted data and help Clarence do his next task with that much more proficiency.

Tomorrow’s world is ripe with opportunity for Artificial Intelligence to improve the quality of life. Humans will look to AI for a variety of different tasks and it is important for the experience to be a seamless and enjoyable one. Performing a task like vacuuming must not be encumbered by highly complicated interfaces but rather made simple to ensure that innovation is greatly enhanced by a great diversity of minds found in the general population. Only this can make wide-spread AI a reality.

About the Author

Madhav is a volunteer of Humans For AI, a non-profit focused on building a more diverse workforce for the future leveraging AI technologies. Learn more about us and join us as we embark on this journey to make a difference!

--

--