Advanced Problem Solving and Search

From International Center for Computational Logic

Advanced Problem Solving and Search

Course with SWS 2/2/0 (lecture/exercise/practical) in SS 2021




  • 2/2/0


Examination method

  • Oral exam

Problem solving and search is a central topic in Artificial Intelligence. This course presents several techniques to solve in general difficult problems.

The course covers the following topics:

  • Basic Concepts
  • Uninformed vs Informed Search
  • Local Search, Stochastic Hill Climbing, Simulated Annealing
  • Tabu Search
  • Answer Set Programming
  • Constraint Satisfaction
  • Evolutionary Algorithms, Genetic Algorithms
  • Structural Decomposition Techniques (Tree/Hypertree Decompositions)

The course does not cover topics in the area of Machine Learning and Neural Networks.

NOTE: This course was previously named Problem Solving and Search in Artificial Intelligence. The contents of former PSSAI and APSS are identical, and therefore students can only take one of the two courses.

Learning Outcomes

  • The students should identify why typical AI problems are difficult to solve
  • The students will analyze different algorithms and methods for AI problems and identify when their application is appropriate
  • The connections between the (graph) structure and the complexity of a problem should become clear, as well as which methods can be used to tackle the problem
  • In the tutorials, the students will analyze different problems and develop solutions for them.


  • Basic knowledge of theoretical computer science and Logic.
  • Good English skills: both the teaching and examination will be exclusively in English.


The goals can be acquired by studying the lecture material and solving the exercises of the tutorials.

The lectures will be held on Mondays DS2 (09.20 - 10.50 am) and the tutorials on Tuesdays DS2. Please check the schedule for changes.

The slides of the lectures and exercises of the tutorials will be uploaded in this page, in each corresponding session.

Announcement: because of the COVID-19 pandemic we will provide the materials for self-learning on the planned dates for lectures and we will have online live sessions for the tutorials. The lecture videos will be uploaded in OPAL and I invite you to use the forum to ask questions and share your exercise solutions.

Please, register for the course on the OPAL site:


This year, due to the exceptional COVID-19 pandemic, the exam will be written and online, on the OPAL-ONYX platform. It will mostly consist of single and multiple-choice questions as well as some quick exercises. There will be no oral examinations.

As a consequence, regarding complex examinations held jointly with another examiner:

- Students who wish to take a complex examination jointly with another examiner need to look for the main examiner. Due to the large number of registered students in PSSAI, I kindly request you to find another main examiner.  - In principle, PSSAI will only offer separate partial examinations (Teilprüfungen) this semester.

Please follow this link to get the instructions for the examination:
  • Stuart J. Russell and Peter Norvig. "Artificial Intelligence A Modern Approach" (3. edition ). Pearson Education, 2010.
  • Zbigniew Michalewicz and David B. Fogel. "How to Solve It: Modern Heuristics", volume 2. Springer, 2004.
  • Martin Gebser, Benjamin Kaufmann Roland Kaminski, and Torsten Schaub. "Answer Set Solving in Practice". Synthesis Lectures on Artificial Intelligence and Machine Learning. Morgan and Claypool Publishers, 2012.
  • Michael Gelfond and Vladimir Lifschitz. "Classical negation in logic programs and disjunctive databases". New Generation Comput., 9(3–4):365–386, 1991.
  • A.E. Eiben and J.E. Smith. "Introduction to Evolutionary Computing", Springer, 2003.
  • Thomas Hammerl, Nysret Musliu and Werner Schafhauser. "Metaheuristic Algorithms and Tree Decomposition", Handbook of Computational Intelligence, pp 1255–1270, Springer, 2015.
  • Hans L. Bodlaender, Arie M.C.A. Koster. "Treewidth computations I. Upper bounds", Comput. 208(2): 259–275, 2010.
  • Georg Gottlob, Nicola Leone, and Francesco Scarcello. "Hypertree decompositions and tractable queries", Journal of Computer and System Sciences, 64(3):579–627, 2002. ISSN 0022-0000.
  • Artan Dermaku, Tobias Ganzow, Georg Gottlob, Ben McMahan, Nysret Musliu, and Marko Samer. "Heuristic methods for hypertree decomposition", In Alexander Gelbukh and Eduardo F. Morales, editors, MICAI 2008: Advances in Artificial Intelligence, volume 5317 of LNCS, pages 1–11. Springer Berlin Heidelberg, 2008. ISBN 978-3-540-88635-8.

Subscribe to events of this course (icalendar)

Lecture Introduction DS2, April 12, 2021 in Screencast
Lecture Informed vs. Uninformed Search DS2, April 19, 2021 in Screencast
Lecture Local Search DS2, April 26, 2021 in Screencast
Exercise Tutorial 1 (Local Search) DS2, April 27, 2021 in Screencast File
Lecture Tabu Search DS2, May 3, 2021 in Screencast
Exercise Tutorial 2 (Tabu Search) DS2, May 4, 2021 in Screencast File
Lecture ASP 1 DS2, May 10, 2021 in Screencast
Exercise Tutorial 3 (ASP 1) DS2, May 11, 2021 in Screencast File
Lecture ASP 2 DS2, May 17, 2021 in Screencast
Exercise Tutorial 4 (ASP 2) DS2, May 18, 2021 in Screencast File
Lecture ASP 3 DS2, May 31, 2021 in Screencast
Lecture CSP DS2, June 7, 2021 in Screencast
Exercise Tutorial 5 (CSP) DS2, June 8, 2021 in Screencast File
Lecture Evolutionary Algorithms DS2, June 14, 2021 in Screencast
Exercise Tutorial 6 (EA 1) DS2, June 15, 2021 in Screencast File
Lecture Structural Decompositions 1 DS2, June 21, 2021 in Screencast
Exercise Tutorial 7 (Structural Decompositions) DS2, June 22, 2021 in Screencast File
Lecture Structural Decompositions 2 DS2, June 28, 2021 in Screencast
Exercise Tutorial 8 (Structural Decompositions 2) DS2, June 29, 2021 in Screencast
Lecture Q&A DS2, July 5, 2021 in Screencast File