Spring 2024: Mondays, Wednesdays, and Fridays from 2:00 PM - 2:50 PM in F. Paul Anderson Tower, Room 255
Jump to today's date on the calendar.
This is a seminar-style course for computer science graduate students interested in planning, a branch of artificial intelligence research. Planning is thinking before acting. Given a (1) description of the world in some formal logic, (2) a set of actions with preconditions and effects, and (3) a goal, a planning algorithm's task is to find a sequence of those actions which achieves that goal. Planning is computationally intractable, but the research community has developed a number of interesting techniques to mitigate this high cost and solve an impressive array of problems. Throughout this course, students will read important research papers in the field as well as implement and test historically important planning algorithms with guidance from the instructor. The course concludes with a self-defined project that allows students to explore a planning topic of interest.
Topics covered will include:
After taking this class, it is expected that:
Prof. Stephen G. Ware, Ph.D.
Department of Computer Science
Davis Marksbury Building, Room 307
sgware@cs.uky.edu
Office Hours: Monday, Wednesday, and Thursday from 4:00 PM to 5:00 PM
It is assumed that:
There is no required text for this course. The reading material will be research conference proceedings and journal articles provided to students as PDF files.
Grades for this class will be calculated based on the following assignments:
Assignment | Weight | Percentage |
---|---|---|
30 daily paper summaries | 1% each | 30% total |
1 to 5 research paper presentations | varies | 25% total |
3 planning algorithm programming projects | 15% each (1 dropped) | 30% total |
1 final project self-direct project | 15% | 15% total |
There will be no exams in this course.
This is a seminar-style course, which means that most class meetings will be a discussion of an academic paper on planning algorithms. Critical discussions at the beginning of each unit will be led by the instructor, but other papers in each unit will be presented by a member of the class. Each person in the class will present between 1 and 5 papers over the course of the semester, depending on the number of people enrolled. Presentations will be graded according to this rubric.
Whether or not they are presenting, each person should read the day's paper before class. Each person must submit a short (about half a page) summary of the paper at the start of class. Each summary is worth 1% of the final grade, and they double as a measure of course attendance.
This class is divided into several units. In units two, three, and four, we will discuss a related family of planning algorithms. By the end of each unit, each student must implement one of the algorithms in that family. The instructor will provide a library of helpful tools that for reading and processing benchmark planning problems; students will be responsible for filling in the "meat" of the algorithms--the interesting parts that affect their performance.
The instructor will provide a pre-configured IDE that includes a compiler, pre-written code libraries, and benchmark planning problems. By working in a common codebase, students will be able to make fair comparisons between their algorithms.
Each student's lowest programming project grade will be dropped at the end of the semester. (This policy does not apply to the final project.)
Click here to read the full details of each programming project.
The final project will be self-defined, and it will allow students to explore a topic of interest within planning algorithms. This project will require an initial proposal and a final presentation to communicate the results.
These policies are in place to maintain professionalism and mutual respect:
All students are expected to follow UK's code of academic integrity. Violations of this policy will be dealt with according to UK's policies.
Please be aware that copying code from another student or from an online repository such as GitHub for a programming project is cheating and will be dealt with as such. Please do not post solutions you develop for this class to public repositories where others could copy it.
This course abides by the academic policies that all UK courses must follow. These policies include information on excused absences, accomodations for disabilities, and and Prep Week.
This course abides by UK's statement on diversity, equity, and inclusion.
Topic | Assignments |
---|---|
Monday, January 8 Introduction and Syllabus |
|
Wednesday, January 10 Uninformed Search |
|
Friday, January 12 Informed Search |
|
Monday, January 15 Holiday |
|
Wednesday, January 17 Logic |
|
Friday, January 19 Logical Unification |
|
Monday, January 22 GPS: The First Planner |
|
Least Committment Planning | |
Wednesday, January 24 Partial Order Planning |
|
Friday, January 26 Causal Links in Plans |
|
Monday, January 29 Least Committment Planning |
|
Wednesday, January 31 The UCPOP Planner |
|
Friday, February 2 Optimizing Partial Order Planners |
|
Monday, February 5 Threat Resolution Strategies |
|
Wednesday, February 7 Discussion and Review |
|
Friday, February 9 Hierarchical Task Networks |
|
Plan Graph Planning | |
Monday, February 12 Plan Graphs |
|
Wednesday, February 14 Graphplan |
|
Friday, February 16 Boolean Satisfiability |
|
Monday, February 19 Planning as Satisfiability |
|
Wednesday, February 21 Planning as Satisfiability using Plan Graphs |
|
Friday, February 23 Local Search on Plan Graphs |
|
Monday, February 26 Discussion and Review |
|
Heuristic Planning | |
Wednesday, February 28 The HSP Planner |
|
Friday, March 1 The Fast Forward Planner |
|
Monday, March 4 Domain Transition Graphs and Multi-Valued Planning Tasks |
|
Wednesday, March 6 The Fast Downward Planner |
|
Friday, March 8 Discussion and Review |
|
Monday, March 11 Holiday |
|
Wednesday, March 13 Holiday |
|
Friday, March 15 Holiday |
|
Advanced Techniques | |
Monday, March 18 Landmarks |
|
Wednesday, March 20 Improvements to Fast Forward |
|
Friday, March 22 Improvements to Partial Order Planning |
|
Monday, March 25 Width-Based Planning |
|
Wednesday, March 27 Portfolio Planning |
|
Friday, March 29 Discussion and Review |
|
Narrative Planning | |
Monday, April 1 Intentional Planning |
|
Wednesday, April 3 Planning with Conflict |
|
Friday, April 5 The Glaive Planner |
|
Monday, April 8 Beliefs |
|
Wednesday, April 10 Combining Beliefs and Intentions |
|
Friday, April 12 The Sabre Planner |
|
Monday, April 15 Discussion |
|
Wednesday, April 17 Belief and Intention Recognition |
|
Friday, April 19 Emotion |
|
Monday, April 22 Speeding up Narrative Planning |
|
Wednesday, April 24 Speeding up Narrative Planning |
|
Monday, April 29 Final Presentations |
|
Wednesday, May 1 Final Project Due |
|
Monday, January 13 TBD |
|
Wednesday, January 15 TBD |
|
Friday, January 17 TBD |
|
Monday, January 20 Holiday |
|
Wednesday, January 22 TBD |
|
Friday, January 24 TBD |
|
Monday, January 27 TBD |
|
Wednesday, January 29 TBD |
|
Friday, January 31 TBD |
|
Monday, February 3 TBD |
|
Wednesday, February 5 TBD |
|
Friday, February 7 TBD |
|
Monday, February 10 TBD |
|
Wednesday, February 12 TBD |
|
Friday, February 14 TBD |
|
Monday, February 17 TBD |
|
Wednesday, February 19 TBD |
|
Friday, February 21 TBD |
|
Monday, February 24 TBD |
|
Wednesday, February 26 TBD |
|
Friday, February 28 TBD |
|
Monday, March 3 TBD |
|
Wednesday, March 5 TBD |
|
Friday, March 7 TBD |
|
Monday, March 10 TBD |
|
Wednesday, March 12 TBD |
|
Friday, March 14 TBD |
|
Monday, March 17 Holiday |
|
Wednesday, March 19 Holiday |
|
Friday, March 21 Holiday |
|
Monday, March 24 TBD |
|
Wednesday, March 26 TBD |
|
Friday, March 28 TBD |
|
Monday, March 31 TBD |
|
Wednesday, April 2 TBD |
|
Friday, April 4 TBD |
|
Monday, April 7 TBD |
|
Wednesday, April 9 TBD |
|
Friday, April 11 TBD |
|
Monday, April 14 TBD |
|
Wednesday, April 16 TBD |
|
Friday, April 18 TBD |
|
Monday, April 21 TBD |
|
Wednesday, April 23 TBD |
|
Friday, April 25 TBD |
|
Monday, April 28 TBD |
|
Wednesday, April 30 TBD |
|
Monday, May 12 Grades Due |