Assignment 1: Search

Goal

To understand two different search techniques and aplly them to the same problem--the 8 puzzle. The two algorithms are A*, and hill-climbing.

Procedure

Implement and test the two different algorithms in whatever language you wish. Tests should include a capability for a random start state.

Teams

Work in groups of 2 or 3, but no more. Let me know as soon as you can what your group is. You may work alone if you wish, but this assignment (and subsequent ones) will go faster if you work together.

Deliverables

Source code for the two algorithms, and program output that shows a sequence of moves for each algorithm made to reach the goal state from a random start state.

Example code

I have downloaded example code in both Lisp and C++ from the Russell's web site. They can be found as follows:

C++ search algorithms in: /home/radon1/rth/public/AIC++/code/mydean/04.Search/C++Code/Search

Support classes for these are in: /home/radon1/rth/public/AIC++/code/mydean/C++Support

Lisp search algorithms are in: /home/radon1/rth/public/AILisp/search/*

Due Date

Wednesday 24th. February, in class.