Constraint programming

Constraint programming is a programming paradigm where relationships between variables are expressed as constraints. The objective is to find values for these variables that satisfy all given constraints. It is particularly useful for solving combinatorial problems, such as scheduling, planning, and resource allocation, where traditional algorithms might be inefficient. Instead of specifying steps to achieve a solution, one defines the desired properties of a solution, and the system determines a valid assignment, if one exists.
pyschedule example
29.10.2023

Python libraries

https://github.com/python-constraint/python-constraint https://github.com/timnon/pyschedule Note: install the most recent fork, (e.g. pip3.10 install "pyschedule"@git+"https://g...
29.10.2023

Exercise: Adam and Eve scheduling

Adam and Eve are happily married and have two cute sons, Cain and Abel. In general they love each other, but sometimes divirgent opinions relating to house management lead to un...
29.10.2023

Constraint Satisfaction Problem

A Constraint Satisfaction Problem (CSP) is a mathematical problem defined by a set of variables, a domain of possible values for each variable, and a collection of constraints s...