EdX

Constraint Programming (edX)

Constraint Programming (edX)

Learn the basics of constraint programming from the implementation of solvers to modeling techniques for solving concrete combinatorial problems such as routing and scheduling. In this course, we will learn the basics of constraint programming: a paradigm that aims to reduce the cost of developing and solving combinatorial problems through extensive reuse of code, whose design is open-ended, but also through pruning techniques of the search space by reasoning at the level of constraints.

Class Deals by MOOC List - Click here and see EdX's Active Discounts, Deals, and Promo Codes.

Today more than ever, the optimal use of resources has become a very important issue. Many decision problems (logistics, production, space, etc.) aiming at an optimal use of resources can be formulated as constraint combinatorial optimization problems. Unfortunately, these problems are difficult to solve mainly for two reasons :

  1. They require complex algorithms to design and develop,
  2. Finding an optimal solution can be computationally intensive.

During the proposed projects, you will develop your own constraint programming solver in Java that we will gradually extend in functionality in order to solve more and more complex combinatorial problems, especially in scheduling and vehicle routing. You will also develop global constraints, implement search strategies, model problems, and measure the impact of modeling choices on the efficiency of the solution.
Each module first introduces the concepts through videos, then a programming project is proposed to put these concepts into practice.

What you'll learn

  • Understand the constraint programming paradigm
  • Design and implement a modern constraint programming library
  • Model using the constraint programming
  • Extend the solver with new global constraints
  • Design custom and black-box searches
  • Approach Scheduling and Vehicle Routing problems with constraint programming

Syllabus

Module 1: From Backtracking Search to the Constraint Programming Paradigm
Starting from a custom backtracking search algorithm for the N-Queens Problem, we will make the approach gradually more generic until the introduction of a purely declarative approach and the design a first tiny CP library.

Module 2: Introduction to Mini-CP
The design and internals (variables, domains, state restoration, etc.) of Mini-CP, the constraint programming library that is used along the course and that is extended in each assignment.

Module 3: The sum and element global constraints
Two constraints that occur for solving most of the CP problems. Design of their filtering algorithms, study of their properties and implementation.

Module 4: The extensional table constraint
Introduction to the table constraint, the most generic one can imagine in CP. Study of some of its application, and filtering algorithms for this constraint.

Module 5: The alldifferent constraint
Study of the alldifferent global constraint as an illustration of an elegant reuse of well-known graph algorithms embedded into the filtering of constraints.

Module 6: The Circuit constraint and Vehicle Routing Problems (VRP)
Introduction to solving VRP with CP using the successor model and the circuit global constraint. Introduction to solving optimization problems with CP and Large Neighborhood search.

Module 7: Cumulative Scheduling Problems
Introduction to Scheduling with CP and the cumulative constraint, instrumental for scheduling non preemptive tasks with resource requirements.

Module 8: Disjunctive Scheduling Problems
A specific case of scheduling problems is the one of disjunctive resource where activities cannot overlap in time. We will study specific filtering and search techniques and apply it to solve the well kownknown job-shop problem.

Module 9: Blackbox Search
Introduction to efficient search heuristics independent of the problem to solve. All these searches are declinations of the well-known first-fail principle.

Module 10: Modeling
Introduction to advanced modeling techniques to boost the solving of your problems, including redundant constraints, and symmetry breaking.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Data Science: Inference and Modeling (edX) EdX
HarvardX,Harvard University

Data Science: Inference and Modeling (edX)

Learn inference and modeling, two of the most widely used statistical tools in data analysis. Statistical inference and modeling are indispensable for analyzing data affected by chance, and thus essential for data scientists. In this course, you will learn these key concepts through a motivating case study on election forecasting.

Self Paced
Self-Paced
Precalculus: Mathematical Modeling (Coursera) Coursera
Johns Hopkins University

Precalculus: Mathematical Modeling (Coursera)

This course helps to build the foundational material to use mathematics as a tool to model, understand, and interpret the world around us. This is done through studying functions, their properties, and applications to data analysis. Concepts of precalculus provide the set of tools for the beginning student to begin their scientific career, preparing them for future science and calculus courses. This course is designed for all students, not just those interested in further mathematics courses.

Sep 21st 2026
4 Weeks
Advanced Statistical Inference and Modelling Using R (edX) EdX
University of Canterbury,UCx

Advanced Statistical Inference and Modelling Using R (edX)

Extend your knowledge of linear regression to the situations where the response variable is binary, a count, or categorical as well as to hierarchical experimental set-up. Advanced Statistical Inference and Modelling Using R is part two of the Statistical Analysis in R professional certificate. This course is directed at people who are already familiar with basic linear regression and fundamentals of statistical inference. It extends the knowledge of linear regression to the situations where the response variable is binary, a count, or categorical as well as to hierarchical experimental set-up.

Self Paced
Self-Paced
Solving Algorithms for Discrete Optimization (Coursera) Coursera
University of Melbourne,The Chinese University of Hong Kong

Solving Algorithms for Discrete Optimization (Coursera)

Discrete Optimization aims to make good decisions when we have many possibilities to choose from. Its applications are ubiquitous throughout our society. Its applications range from solving Sudoku puzzles to arranging seating in a wedding banquet. The same technology can schedule planes and their crews, coordinate the production of steel, and organize the transportation of iron ore from the mines to the ports.

Oct 5th 2026
4 Weeks
Aplicaciones de la Teoría de Grafos a la vida real II (edX) EdX
Universitat Politècnica de València,UPValenciaX

Aplicaciones de la Teoría de Grafos a la vida real II (edX)

Aprenderemos a modelizar problemas del mundo real mediante su representación con grafos y a resolverlos mediante sus algoritmos asociados. Este curso trata la Teoría de Grafos desde el punto de vista de la modelización, lo que nos permitirá con posterioridad resolver muchos problemas de diversa índole. Presentaremos ejemplos de los distintos problemas en un contexto real, analizaremos la representación de éstos mediante grafos y veremos los algoritmos necesarios para resolverlos.

Self Paced
Self-Paced
Introduction to Analytics Modeling (edX) EdX
Georgia Institute of Technology,GTx

Introduction to Analytics Modeling (edX)

Learn essential analytics models and methods and how to appropriately apply them, using tools such as R, to retrieve desired insights. Analytical models are key to understanding data, generating predictions, and making business decisions. Without models it’s nearly impossible to gain insights from data.

Aug 24th 2026
13-24 Weeks
Averaged-Switch Modeling and Simulation (Coursera) Coursera
University of Colorado Boulder

Averaged-Switch Modeling and Simulation (Coursera)

This is Course #1 in the Modeling and Control of Power Electronics course sequence. The course is focused on practical design-oriented modeling and control of pulse-width modulated switched mode power converters using analytical and simulation tools in time and frequency domains. A design-oriented analysis technique known as the Middlebrook's feedback theorem is introduced and applied to analysis and design of voltage regulators and other feedback circuits.

Sep 21st 2026
3 Weeks
Simulating a Quadcopter's Electromechanics (edX) EdX
MathWorks

Simulating a Quadcopter's Electromechanics (edX)

Learn how to integrate multiple physical domains and optimize system performance of a quadcopter. Welcome to Modeling the Quadcopter Electromechanical System, the third course in the Engineering Design and Simulation Program. This course introduces the electrical part of the system to model the battery and the transfer of electrical energy to power the mechanical components powering the flight of the quadcopter.

Self Paced
Self-Paced
Principles of Modeling, Simulations, and Control for Electric Energy Systems (edX) EdX
MIT,MITx

Principles of Modeling, Simulations, and Control for Electric Energy Systems (edX)

Apply a dynamic systems-level approach and engage emerging research on efficient, sustainable, and physically and economically feasible electric power systems of the future. As global energy demand grows, to mitigate climate change we must drive a swift transition to clean energy resources and enhanced electric power grid infrastructure. In this course, you will explore systemic principles of future electric power system management, such as the role of smart grids, data-enabled machine learning, power electronics-control, and data-driven decision-making.

No session available
5-12 Weeks
Global Warming I: The Science and Modeling of Climate Change (Coursera) Coursera
University of Chicago

Global Warming I: The Science and Modeling of Climate Change (Coursera)

This class describes the science of global warming and the forecast for humans’ impact on Earth’s climate. Intended for an audience without much scientific background but a healthy sense of curiosity, the class brings together insights and perspectives from physics, chemistry, biology, earth and atmospheric sciences, and even some economics—all based on a foundation of simple mathematics (algebra).

Sep 21st 2026
5-12 Weeks