This preview shows pages 1–2. Sign up to view the full content.
This preview has intentionally blurred sections. Sign up to view the full version.View Full Document
Unformatted text preview: CSE 3402 3.0 Intro. to Concepts of AI Dept. of Computer Science &amp; Engineering Winter 2012 York University Assignment 1 Total marks: 120. Out: January 23 Due: February 6 at 14:30 Note: Your report for this assignment should be the result of your own individual work. Take care to avoid plagiarism (copying). You may discuss the problems with other students, but do not take written notes during these discussions, and do not share your written solutions. In this assignment you are going to implement a solver to the N-puzzle using three different search algorithms, A * ,A * with cycle-checking, and IDA * . We are providing you with the generic imple- mentations of these algorithms in Prolog. Your task will be to formulate the N-puzzle as a search problem and to run experiments with these algorithms. First, a bit of background. The N-puzzle is the simple (one-person) game we discussed briefly in class where tiles numbered 1 through N are moved on a square grid of N + 1 cells (i.e. the grid is N + 1 N + 1 ). Any tile adjacent to the blank position can be moved into the blank position. By moving tiles in sequence we attempt to reach the goal configuration. For example, in the figure below, we see three game configurations: the configuration (b) can be reached from configuration (a) by sliding tile 5 up; configuration (c) can be reached from configuration (b) by sliding tile 8 to the left. Configuration (c) is the goal configuration. The objective of the game is to reach the goal configuration from some starting configuration in as few moves as possible. The goal is, independent of the size of the grid, always defined as the ordering of all tiles enumerating from left to right and top to bottom, with the blank at the lower right corner....
View Full Document