Constraint Processing and Programming

You are here

Credits
4.5
Types
Elective
Requirements
This subject has not requirements, but it has got previous capacities
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
8h
Problems
8h
Laboratory
8h
Guided learning
1h
Autonomous learning
40h

Constraint Programming


Theory
5h
Problems
5h
Laboratory
5h
Guided learning
0.5h
Autonomous learning
25h

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 whose weight will be around 30%

Previous capacities

Basic Algorithmics