Constraint Processing and Programming

You are here

Credits
4.5
Types
Elective
Requirements
This subject has not requirements

Department
CS
This course examines the paradigm of constraint programming as a tool for solving combinatorial optimization problems.

Teachers

Person in charge

  • Francisco Javier Larrosa Bondia ( )

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

Modeling

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

Constraint Programming

Theory
5
Problems
5
Laboratory
5
Guided learning
0.5
Autonomous learning
25
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. They will weight between 5% and 20% of the final grade depending on their difficulty. There also will be a final exam.

Previous capacities

Basic Algorithmics