FLOC 2018: FEDERATED LOGIC CONFERENCE 2018
Automated Constraint Modelling with Conjure

Author: Özgür Akgün

Paper Information

Title:Automated Constraint Modelling with Conjure
Authors:Özgür Akgün
Proceedings:LaSh AllTalks
Editor: David Mitchell
Keywords:Constraint Modelling, Reformulation, Constraint Language, Constraint Solving
Abstract:

ABSTRACT. When solving a combinatorial problem, the formulation or model of the problem is critical to the efficiency of the solver. Automating the modelling process has long been of interest because of the expertise and time required to produce an effective model of a given problem. I describe a method to automatically produce constraint models from a problem specification written in the abstract constraint specification language Essence. The approach is to incrementally refine the specification into a concrete model by applying a chosen refinement rule at each step. Any non-trivial specification may be refined in multiple ways, creating a space of models from which to choose.

The handling of symmetries is a particularly important aspect of automated modelling. Many combinatorial optimisation problems contain symmetry, which can lead to redundant search. If a partial assignment is shown to be invalid, we are wasting time if we ever consider a symmetric equivalent of it. A particularly important class of symmetries are those introduced by the constraint modelling process: modelling symmetries. I show how modelling symmetries may be broken automatically as they enter a model during refinement, obviating the need for an expensive symmetry detection step following model formulation.

This approach is implemented in a system called Conjure. The models produced by Conjure are compared to hand-written constraint models from the literature that are known to be effective. Empirical results confirm that Conjure can reproduce successfully the kernels of the constraint models of several benchmark problems found in the literature.

Pages:1
Talk:Jul 18 16:25 (Session 129E: Modelling and Solving)
Paper: