CS288 Intensive Programming
Homework 7 on simple state-space search
- Design and implement a C program for three search strategies: depth first, breadth first, and intelligent search. For intelligent search, use the heuristic function and values f,g,h, to be disucssed in class. Use the skeleton code. The program will use a doubly linked list. The program is designed such that a search stragegy is parameterized, i.e., you write a script to run the code with various initial states with various strategies (let it run and go do something else or install a cron job if you so wish).
- Consider putting in a function to check if the random initial state is solvable. Check the Web. There are a plenty of pages out there on this.
- Run the three strategies with the same initial- and goal states, measure the execution times in seconds (not in micro seconds) and memory space required, and compare the results. You are not required to write a formal report on the performance of the three strategies for time and memory space. However, it will be a useful experience for you to write such a report. Be prepared to spend sometime for not only designing, implementing, and debugging the program but executing with random initial states.