Foundations of Artificial Intelligence (FAI) Group
divider line


Spezialized Lecture: Automatic Planning


Organization. The course consists of oral lectures, 3*45 minutes per week (on average, see next), as well as exercises that will be supervised in tutorial groups (45 minutes/week on average).

The course has two weekly slots of 90 minutes each, Mondays 10:15 -- 11:45, and Tuesdays 10:15 -- 11:45. Every second week, the Tuesday slot is used for the tutorial. All lectures and tutorials take place in HS003, Building E1 3.

All lectures and tutorials will be held in English.

The lectures will be given by Prof. Dr. Joerg Hoffmann. The tutorials will be given by Dr. Michael Katz and Dr. Peter Kissmann.

There are two mailing lists for this course, open for posts by all registered students (to register, send email to Joerg Hoffmann). For any questions about the course or the exercices, email to automatic-planning@fai.cs.uni-saarland.de (received by FAI staff only). For questions/comments to be discussed with everybody following the course, email to automatic-planning-all@fai.cs.uni-saarland.de (received by all registered students and FAI staff).

Note: The Monday lecture slot overlaps with the Machine Learning core course. A survey amongst students resulted in a majority favoring to not move the slot for this reason.


Abstract. Automatic Planning is one of the fundamental sub-areas of Artificial Intelligence, concerned with algorithms that can generate strategies of action for arbitrary autonomous agents in arbitrary environments. The course will address so-called classical planning, where the actions and environment are assumed to be deterministic; this is a central area in planning, and has been the source of many influential ideas. It is also successfully applied in practice, as we will exemplify in the course. We will examine the technical core of the current research on solving this kind of problem, consisting of four different paradigms for automatically generating heuristic functions (lower bound solution cost estimators): critical paths, ignoring delete lists, abstractions, landmarks. Apart from understanding these techniques themselves, we will learn how to analyze, combine, and compare such estimators. The course consists mostly of research results from the last decade, and is very close to the current research frontier in planning.


Prerequisites. Participants should have successfully completed an introductory course in Artificial Intelligence, and should be familiar specifically with the basics of Search (the A* algorithm etc) as well as the basics of logics (propositional formulas etc).


Exercises and ECTS. The course is accompanied by programming exercises, that involve implementing (simple versions of) some of the techniques discussed, starting from a baseline we will provide. In other words, you will build your own planning system as part of the course! We'll run a competition amongst these systems at the end of term. We expect this to be interesting and fun for the students, and in light of the work involved in programming we'll allow groups of 3 and give 9 ECTS.


Exam and final grade. There will be a written exam at the end of the course. The final grade will be determined based on the performance in that exam, and the performance in the exercises. Precisely, each of the exercises and the exam will yield a maximum of 100 points. 50 points from the exercises are needed for admission to the exam. The final overall points will be determined from either the exam points alone, or from the average of exercise and exam points (0.5*exercises+0.5*exam), whichever one is better. At least 50 overall points are needed to pass the course.


Course Material. Due to the recency of the material covered, there exists no text book for this course. There are two kinds of slides, pre-handouts and post-handouts. Pre-handouts do not contain the answers to questions asked during the lecture sessions, and do not contain the details for examples worked during the lecture sessions. The post-handouts do contain all this, and correct any bugs. The pre-handouts are made available one day before the lecture sessions on each chapter, the post-handouts are made available directly after the lecture sessions on a chapter are finished.


Course Timing. The overall timing, of both lecture sessions and tutorials, is specified in the following calendar and table:

Date Chapter(s) / Tutorials
Mon, 15.10.12 About this Course
Tue, 16.10.12 Introduction
Mon, 22.10.12 Planning Formalisms; PDDL
Tue, 23.10.12 Applications
Mon, 29.10.12 Causal Graphs; Progression and Regression
Tue, 30.10.12 Search Algorithms
Mon, 05.11.12 Generating Heuristic Functions
Tue, 06.11.12 Tutorial 1 (PDDL Modeling)
Mon, 12.11.12 Critical Path Heuristics
Tue, 13.11.12 Delete Relaxation Heuristics
Mon, 19.11.12 Delete Relaxation Heuristics
Tue, 20.11.12 Tutorial 2 (Search)
Mon, 26.11.12 Delete Relaxation Heuristics; Search Space Surface Analysis
Tue, 27.11.12 Search Space Surface Analysis
Mon, 03.12.12 Abstractions
Tue, 04.12.12 Tutorial 3 (Critical Path Heuristics)
Mon, 10.12.12 Abstractions; Pattern Database Heuristics
Tue, 11.12.12 Pattern Database Heuristics; Merge-and-Shrink Heuristics
Mon, 17.12.12 Merge-and-Shrink Heuristics
Tue, 18.12.12 Tutorial 4 (Delete Relaxation Heuristics)
CHRISTMAS BREAK
Mon, 07.01.13 Landmarks Heuristics
Tue, 08.01.13 Landmarks Heuristics; Combining Heuristic Functions
Mon, 14.01.13 Combining Heuristic Functions
Tue, 15.01.13 Tutorial 5 (Pattern Databases)
Mon, 21.01.13 Comparing the Power of Heuristic Functions
Tue, 22.01.13 Planning Systems and the IPC
Mon, 28.01.13 Exam Preparation
Tue, 29.01.13 Tutorial 6 (Competition)
Tue, 05.02.13 Written Exam