Task 3

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

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.


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:

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? comment image Send mail to Chris Riesbeck.