Assignment 1

CS 482/682: Artificial Intelligence Fall 2013 Max Score: 100

Objectives

1. Learn and demonstrate knowledge of problem solving as informed and uninformed search

Consider a 2D grid world with r rows and c columns. You have to find a path from (r − 1, 0) to (0, c − 1), that is, from the bottom left to the top right. Every time you run this algorithm, assume that there are randomly sized and located, static, rectangular obstacles that occupy grid cells in this world. No path can go through any grid cell occupied by these obstacles.

You will need to implement this world, and test and implement the following three search algorithms. Please check the class web page for screenshots of my implementation and running of these algorithms.

1. Graph breadth first search

2. Greedy search

3. A* search In the context of this 2D grid world, answer the following questions. Provide justification.

1. What is the branching factor, b in this state space

2. What is a State in this search problem

3. What is the maximum number of nodes expanded by breadth first graph search?

4. What is your path cost function?

5. What is an admissible heuristic on this problem?

6. What is the number of nodes expanded by A∗ when there are no obstacles?

Graduate Students Do one or both of

1. Implement uniform cost search and local hill climbing search. For hill climbing search, describe your evaluation function.

2. Implement the three algorithms above in python in OpenEcslent (http://www.cse.unr.edu/ sushil/openEcslent/)

1 Turning in your assignment

Assume that this format will be used for all your assignments throughout the semester unless otherwise specified.

1. At the beginning of class, turn in hardcopy to me with (a) Your FULL name and email address

(b) Source code listing

(c) A transcript or movie of your compiling and running all your code on carefully chosen test cases that show off the strengths and weaknesses of your implementation

(d) Demo your running code Ask me (sushil@cse.unr.edu) if you have questions.