## Problems often consist of choices. Making a choice that is compatible with all other choices made and optimal is difficult. Constraint Programming (CP) is the branch of Artificial Intelligence (AI), where computers help us to make these choices.

A constraint program consists of a set of variables, a set of values for each variable and a set of constraints. For example, the problem might be to fit components (values) to circuit boards (variables), subject to the constraint that no two components can be overlapping. A solution to a CP is an allocation of values to variables such that none af the constraints are violated. The goal of CP is to find one solution, all solutions or a good (optimal) solution to a problem.

The Cork Constraint Computation Centre (4C) undertakes research in CP. We are excited by our research, and enjoy passing on some of our knowledge and enthusiam to young people. Details of these sessions can be found by clicking on the activities menu on the left.

Alternatively if you would like to learn more about about CP you can choose between reading our tutorial, or by playing a game, from the menu on the left.