Constraint Processing and Programming

You are here

Credits
4.5
Department
CS
Types
Elective
Requirements
This subject has not requirements
This course examines the paradigm of constraint programming as a tool for solving combinatorial optimization problems.

Teachers

Person in charge

  • Francisco Javier Larrosa Bondia ( )

Others

  • Mario Martín Muñoz ( )

Weekly hours

Theory
1
Problems
1
Laboratory
1
Guided learning
0.116
Autonomous learning
5

Competences

Generic Technical Competences

Generic

  • CG1 - Capability to plan, design and implement products, processes, services and facilities in all areas of Artificial Intelligence.

Technical Competences of each Specialization

Academic

  • CEA1 - Capability to understand the basic principles of the Multiagent Systems operation main techniques , and to know how to use them in the environment of an intelligent service or system.
  • CEA13 - Capability to understand advanced techniques of Modeling , Reasoning and Problem Solving, and to know how to design, implement and apply these techniques in the development of intelligent applications, services or systems.

Transversal Competences

Reasoning

  • CT6 - Capability to evaluate and analyze on a reasoned and critical way about situations, projects, proposals, reports and scientific-technical surveys. Capability to argue the reasons that explain or justify such situations, proposals, etc..

Objectives

  1. Ability to model optimally a discrete optimization problem and solve it using the proper tools.
    Related competences: CT6, CEA1, CEA13, CG1,

Contents

  1. Modeling combinatorial problems
  2. Solving with Constraint Programming

Activities

Propositional Logic

Theory
4
Problems
4
Laboratory
4
Guided learning
0
Autonomous learning
0
Objectives: 1

Constraint Programming

Theory
8
Problems
8
Laboratory
8
Guided learning
0
Autonomous learning
0
Objectives: 1

Teaching methodology

There will be theory classes to introduce the fundamental theoretical concepts, classes of problems to exercirtar to use, and laboratory classes where you will see the actual technology

Evaluation methodology

Along the course several programming assignments will be evaluated. The last one will be bigger and will count 40% of the grade. The rest will count between 5% and 20% depending on their difficulty.

Previous capacities

Basic Algorithmics