PA163 Constraint programming

Faculty of Informatics
Autumn 2020
Extent and Intensity
2/1. 3 credit(s) (plus extra credits for completion). Type of Completion: zk (examination).
Teacher(s)
doc. Mgr. Hana Rudová, Ph.D. (lecturer)
Mgr. Vojtěch Sassmann (assistant)
Guaranteed by
doc. Mgr. Hana Rudová, Ph.D.
Department of Computer Systems and Communications – Faculty of Informatics
Supplier department: Department of Computer Systems and Communications – Faculty of Informatics
Timetable
Wed 10:00–11:50 A218
  • Timetable of Seminar Groups:
PA163/01: each odd Thursday 14:00–15:50 A215, H. Rudová
PA163/02: each even Thursday 14:00–15:50 A215, H. Rudová
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
fields of study / plans the course is directly associated with
Course objectives
Course provides information about constraint programming, about problem modeling using constraints generally as well as practically in programming language, about general propagating algorithms and about main search algorithms for constraint satisfaction problems.
Learning outcomes
The graduate will understand how to apply a declarative approach for problem solving with the help of constraint programming.
The graduate will understand which algorithms are used for the implementation of the constraint programming approach to be able to propose a proper declarative model and proper search procedures. To achieve that graduates will learn various constraint propagation algorithms and search methods.
The graduate will be able to implement a solution to the problem using constraint programming in the Optimization Programming Language of IBM CPLEX CP Optimizer.
Syllabus
  • Constraint satisfaction problem. Introduction to problem modeling.
  • Algorithms and consistency: arc, path. Methods for non-binary constraints: k-consistency, general arc, and bounds consistency, global constraints. Directional versions, the width of the constraint graph, and polynomial problems.
  • Tree search: backtracking, look ahead, look back, incomplete algorithms. Local search.
  • Optimization and over-constrained problems: frameworks and algorithms.
  • Problem modeling and real-life applications. Programming with programming language OPL in IBM ILOG CP Optimizer.
Literature
  • DECHTER, Rina. Constraint processing. San Francisco: Morgan Kaufmann Publishers, 2003, xx, 481 s. ISBN 1-55860-890-7. info
  • TSANG, Edward (author), FRUEHWIRTH, Thom (editor). Foundations of constraint satisfaction. Books On Demand, 2014.
Teaching methods
Video and slides are available for each lecture, video conferencing is at the time of the lecture with a discussion of pre-sent questions and other questions. The lecture is mainly oriented on presentations of algorithms and their practical application for solving problems in the area of constraint programming. Seminaries concern namely practical realization of OPL programs in IBM ILOG CP Optimizer. Solved problems are often realized using modifications of existing code. Solutions of examples solved during seminaries as well as solutions to homeworks from seminaries are available at the course web site.
Assessment methods
There is the following expected evaluation given as a sum of points for homeworks, online final exam, and bonus points for activities at lectures: A more than 90, B 89-80, C 79-70, D 69-60, E 59-50.
It is possible to get up to 80 points for the online final exam, it is obligatory to get more than 40 out of 80 points. The regular date of the exam will be written and mandatory for all students. Repair exam dates will be in the form of an oral online exam.
There are two homeworks during the semester. It is possible to get points up to 10 points per homework. Each student is required to obtain 8 points at least from the total point of 20 points.
Also, each student can get 2 bonus points for activity in each lecture (1 point: student response to several easy questions and/or student questions to clarify some part of the lecture, student response to one harder question; 2 points: larger interaction), i.e., it is possible to about 24 bonus points for activity base on the number of lectures.
No later than the day after the seminar, students are required to submit the codes of solved examples to the subject vault (although in some cases not fully functional). It is tolerated if the codes are submitted once by e-mail. In the case of two late submissions, it is necessary to work out a solution of additional examples. More than two late submissions are not possible for successful completion of the course.
Language of instruction
Czech
Follow-Up Courses
Further Comments
Study Materials
The course is taught annually.
Teacher's information
http://is.muni.cz/el/1433/podzim2020/PA163/index.qwarp
The course is also listed under the following terms Autumn 2003, Autumn 2004, Autumn 2005, Autumn 2006, Autumn 2007, Autumn 2008, Autumn 2009, Autumn 2010, Autumn 2011, Autumn 2012, Autumn 2013, Autumn 2014, Autumn 2015, Autumn 2016, Autumn 2017, Autumn 2018, Autumn 2019, Autumn 2021, Autumn 2022, Autumn 2023, Autumn 2024.
  • Enrolment Statistics (Autumn 2020, recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2020/PA163