This is an introductory course into the field of artificial intelligence (AI), with particular focus on search as the fundamental technique for solving AI problems.
The problem of navigating a road map with a known layout is a typical example of a problem studied in this course. This course will introduce basics of AI search techniques, such as depth first, breadth first and iterative deepening search. It will discuss heuristic techniques such as A* search which improves efficiency by pruning the search space. It is a naïve idea and is rarely applicable in practice because of its vast space.
The course also deals with optimization problems. The optimization version of the n queens’ problem is to arrange n queens on an n x n chessboard while minimizing the number of pairs of queens that are under attack. Such problems can be effectively solved by search techniques. Some of it included in the course are hill climbing, simulated annealing and genetic algorithms.
Planning is a special kind of optimization problem. A typical planning problem is finding a sequence of actions for delivering ten packages to ten different destinations. This course will introduce a standardized language called strips for modelling planning problems. It will discuss how to solve planning problems using search techniques like forward chaining, backward chaining and partial order planning. It will also show how to apply these techniques to the problem of planning a robot’s path through an environment while taking into account the geometry of the environment and the robot.
Constraint satisfaction problems (CSPs) constitute another important class of AI problems, a typical example of which is the map coloring problem: color each country on a map with red, green, or blue, but in a way so that no two adjacent countries have the same color.