/vacuum

Primary LanguagePython

Vacuum

This lab provides the opportunity to create an autonomous agent to vacuum virtual houses.

A robotic vacuum cleaner cleaning a carpet (Stable Diffusion)

Task

Your task is to implement the vacuuming agent such that it is able to successfully vacuum at least houses 0 through 4. Additional houses are provided for an extra challenge and to better measure agent performance in complex environments.

Warning 🔥: The vacuum hardware is somewhat limited and is unable to run continuously without overheating. There is a sensor to monitor the current temp. Make sure that you rest occasionally to prevent the device from catching fire.

Handout code vacuum.py is provided and must be used as a starting point for this assignment. Your task is to provide an implementation for the agent function.

No code outside of the agent function should be modified in your final submission.

Houses

Houses are represented as plain text. The * character is used to represent a wall, the . is used to represent dirt, and a blank space is used to represent clean floor. Once clean, all dirt (.) should be removed from a house. Here's an example showing what house 4 looks like:

*********
*...*...*
*...*...*
**.**...*
*.......*
*********

Percepts and Actions

Agent environment diagram

The vacuum agent processes data from sensors as percepts and uses this sensor data to select a valid action. The environment then updates based on the action and new percepts are returned from sensors so the agent can make its next decision.

Resource