CS4402: Constraint Programming
This module is offered in 2020-21.
The aims of this module are:
- To introduce constraint solving techniques and algorithms.
- To teach modelling and solving discrete optimization problems with constraints.
On successful completion of this module, the student should:
- Have a working knowledge of the techniques employed in a modern constraint solver.
- Be able to construct a simple constraint solver.
- Be able to model and solve discrete optimization problems using modern constraint programming systems.
- Understand that modelling decisions can depend on the solver to be used.
- Preamble: an introduction to Constraint Programming, including how to model some simple problems and some very basic solution algorithms.
- Modelling: techniques for modelling problems in constraints.
- Solvers and algorithms: the implementation of, and algorithms used in, generic constraint solvers.
This module has no compulsory elements beyond those common to all modules (mark of 4 in each assessment component).