Artificial Intelligence Programming

ICS 361

Assignment #5 - AKA Course Project
Creating a Recycling Softbot in Common Lisp

This assignment is worth 200 points.

Your assignment is to design, implement, test, and report results on the project described below.

  • Start with the simple Vacuum cleaner agent code provided by Norvig & Russell.
  • Reference the VacuumWorld slides on Laulima (VacuumWorld.pdf under lectures)
  • Open . Then download the file code.tar.gz and unzip it.
  • Alternatively, a local copy of the unzipped code is here.
  • Documentation for the code is at
    You will only need to load the utilities and agents subsystems of the AIMA code. Start with and modify the grid environment and vacuum agent code, you do not need to re-write the parts of the code that are available.
  • Output from the simple Reflex vacuum is here. The lines with gc represent garbage collection and can be ignored. The run was not optimized for speed or space use.

    Your GOAL is to create a softbot to collect bottles and cans and put them into a recycle bin.

    The robot can carry a mazimum of 1 can and 1 bottle at the same time. Cans and bottles are released separately into the Recycle bin (Rb).

    What actions will your robot need to complete its task? Explain them in your report. What strategies do you use to clean the room? Find the Recyclebin (Rb)? Minimize the number of moves? Explain these in your report.


    Your softbot will compete with others during the last week of class.

    There are 3 levels of competition. There are 2 choices for robot sensors (see sensors above). There are 3 levels of competition, 1 hand (can or bottle) Easy, 2 hands (cans or bottles in either) Medium and 1 Can hand + 1 Bottle hand Hard. Programs in each competition level will receive 50 bonus EC assignment points. The runner-up will receive 25 points and 3rd place 10 points.

    Turn in your code, transcripts of testing and running it, and a report on your solution/algorithms and results.

    Back to the course homepage.

    (c) N. E. Reed, 2005-2016