The goal of this task is to write a planner, implementing the basic algorithms and applied to the simple examples described in Chapter 11 of the book. Where appropriate, you should use code (functions and data structures) from the CS 348 Deductive Data Retriever (DDR) to handle matching and simple inference, but you have to write the main control logic yourself.

Your report should contain comparative experiments, showing how your Planner works on different problems. Discuss both efficiency and "stupidity." How dumb are your planner's final results? How dumb is its search? What simple things might make it smarter?

Start with simple regression planning, in either STRIPS or ADL notation (p. 379). Regression planning is described on p. 385. Apply it to

• the air cargo problem (Fig 11.2) -- do two versions:
• the one in Fig 11.2
• the same but with no plane at SFO
• changing a tire (Fig 11.3)
• blocks world (Fig 11.4)
• the Sussman anomaly (Ex. 11.11)

Then move up to a partial-order planning, described in the text on page 390. Apply it to the same problems.

Your code should count things like number of actions considered, subgoals generated, depth of subgoal tree, perhaps, for use in your report.

### Experiments

Show in tables and charts if you know how to use Excel to make them how your planner works on the different problems. Also show the plans generated. Try to print them in some reasonably compact readable format.

### The Report

Put your report in a Word document (or RTF file if you use something other than Word). Separate the document into clearly labeled sections based on the above.

Create the following files:

• Put the planner report in the Word file `name-task3.doc`, where name is your last name.
• Put the planner code in `name-planner.lisp`.
• Put all the planner problem definitions in `name-problems.lisp`.
• Put all these files in a Zip archive titled `name-task3.zip`.

Just send in the DDR patch file, not the entire DDR code.

Send the Zip file as an attachment in an email to `c-riesbeck@northwestern.edu`, with the Subject line: `CS 348 Task 3`. Don't forget the CS 348!

Comments? Send mail to Chris Riesbeck.