You are here

Workshop on Teaching Constraint Programming

Teaching constraint programming (CP) is important: it allows us to increase the uptake of the technology and to train the next generation of researchers and practitioners.  We are holding the first workshop on teaching constraint programming, whose aim is to help participants improve the quality of the teaching of constraint programming. It will give participants the opportunity to discuss the difficulties they encounter and the strategies they have employed to teach effectively. We aim to share best practice and teaching materials from both academia and industry.


       Session 1: Teaching Constraint Programming On Line

13:30  The Discrete Optimization MOOC: An Exploration in Open Curricula and Discovery-Based Assessments
       Carleton Coffrin and Pascal Van Hentenryck

14:00  Lessons Learned from Developing an On-line Constraint Programming Course
       Helmet Simonis

       Session 2: Teaching Constraint Modelling

14:20  Modelling not Solving
       Peter J. Stuckey and Carleton Coffrin

14:50  Teaching Constraint Modelling: A Systematic Approach
       Alan Frisch and Ian Miguel

15:10  Coffee Break

       Session 3: Courses on Constraint Programming

15:40  Teaching Constraint Programming and Modelling at Uppsala University
       Pierre Flener, Jean-Noël Monette and Justin Pearson

15:55  Constraint Programming at Glasgow
       Patrick Prosser and Ciaran McCreesh

16:10  Using Constraint Programming as a way to introduce Computer Science Research
       Karen Petrie

16:25  Teaching Constraint Programming at Polytechnique Montreal
       Giles Pesant

16:40  Discussion: Courses on Constraint Programming

       Session 4: Wrap Up

17:00  Discussion: As a community, what can we do to improve and increase
       the teaching of constraint programming

17:30  Close

Call for Participation

We intend to have a mix of short talks and panel sessions.  Participants who are involved in teaching are asked to give us a short summary of their courses, including:

  • The format of the course.
  • Who the audience is (e.g. final year undergraduates).
  • What their curriculum covers.
  • Which toolkit is used, and why.
  • What resources (books, papers, lecture notes, demos) are used.
  • How the course is assessed.

Current or former students who have taken a CP course are also welcome to discuss their experiences.

Participants who are interested in giving a talk are asked to submit a tentative title and an abstract (no more than one page, but a paragraph is fine).  Topics for talks could include:

  • Experiences in teaching CP and related subjects.
  • Teaching CP in non-university settings.
  • How CP fits into an academic curriculum.
  • Difficulties in learning and teaching CP.
  • Assessing CP.
  • Impact of high-level modelling languages on understanding.
  • Algorithm visualisation.
  • Assistance available for teaching CP.

There is no research requirement: we expect most talks to be experience reports.  However, speakers will be invited to contribute to a joint paper summarising the workshop which will be written during the conference.

By submitting a proposal for a talk, the authors commit that, if the proposal is accepted, at least one author will present at the workshop.


  • Submission deadline: July 1st 2015, by EasyChair. Please upload a PDF containing your interest in participating, the summary of your course as requested above (if applicable), and your abstract if you would like to give a talk.
  • Notification: July 13th 2015
  • Workshop: August 31st 2015

Workshop Organisers

Alan Frisch, University of York, UK
Ciaran McCreesh, University of Glasgow, UK
Karen Petrie, University of Dundee, UK
Patrick Prosser, University of Glasgow, UK

Program Committee

Ken Brown, University College Cork, Ireland
Berthe Y Choueiry, University of Nebraska-Lincoln, USA
Yves Deville, Université catholique Louvain, Belgium
Jean-Charles Régin, Université de Nice-Sophia Antipolis