Course syllabus
Constraint-programmering
Constraint Programming
EDAN01, 7,5 credits, A (Second Cycle)
Valid for: 2022/23
Faculty: Faculty of Engineering, LTH
Decided by: PLED C/D
Date of Decision: 2022-04-07
General Information
Elective for: C4-pv, D4-pv, D4-se, E4, F4, F4-pv, IDA3, Pi4, MMSR2
Language of instruction: The course will be given in English on demand
Aim
The goal of this course is to have each student acquire the
knowledge on a new programming paradigm based on constraints over
finite domains, and provide experience of how to use these methods
for solving combinatorial problems.
Learning outcomes
Knowledge and understanding
For a passing grade the student must
- be able to use basic concepts of constraint programming
- be able to explain principles of constraint programming and
define constraints for simple problems.
Competences and skills
For a passing grade the student must
- be able to model and implement constraint programs for a
combinatorial problem
- be able to use appropriate heuristics to implement efficient
search methods,
- demonstrate ability to critically, autonomously and creatively
identify, formulate and handle combinatorial problems.
Judgement and approach
For a passing grade the student must
- demonstrate ability to identify needs for additional knowledge
and to continuously develop new skills.
Contents
- Introduction to constraint programming.
- Basic algorithms used in constraint programming systems
(constraint satisfaction and consistency, optimisation).
- Finite domain constraints.
- Modelling with finite domain constraints.
- Searching methods and optimisation.
- Selected advanced issues.
Examination details
Grading scale: TH - (U,3,4,5) - (Fail, Three, Four, Five)
Assessment: To qualify for a passing mark, the students must have completed the laboratory work. To qualify for a higher mark a written examination is required.
The examiner, in consultation with Disability Support Services, may deviate from the regular form of examination in order to provide a permanently disabled student with a form of examination equivalent to that of a student without a disability.
Admission
Admission requirements:
- EDAA01 Programming - Second Course or EDAA30 Programming in Java - Second Course or FRTF25 Introduction to Machine Learning, Systems and Control
The number of participants is limited to: No
The course overlaps following course/s: EDA340
Reading list
- Kuchcinski, K: Modeling and Optimisation of Embedded Systems with Constraint Programming: Principles and Practice. Distributed by the department.
Contact and other information
Course coordinator: Per Andersson, per.andersson@cs.lth.se
Course homepage: http://cs.lth.se/edan01