A Constraint Solver Synthesiser

Lead Research Organisation: University of St Andrews
Department Name: Computer Science

Abstract

Constraints are a natural, powerful means of representing and reasoning about combinatorial problems that impact all of our lives. For example, in the production of a university timetable many constraints occur, such as: the maths lecture theatre has a capacity of 100 students; art history lectures require a venue with a slide projector; no student can attend two lectures at once. Constraint solving offers a means by which solutions to such problems can be found automatically. Its simplicity and generality are fundamental to its successful application in a wide variety of disciplines, such as: scheduling; industrial design; aviation; banking; combinatorial mathematics; and the petrochemical and steel industries, to name but a few examples.Currently, applying constraint technology to a large, complex problem requires significant manual tuning by an expert. Such experts are rare. The central aim of this project is to improve dramatically the scalability of constraint technology, while simultaneously removing its reliance on manual tuning by an expert. We propose a novel, elegant means to achieve this: a constraint solver synthesiser, which generates a constraint solver specialised to a given problem. Synthesising a constraint solver tailored to the needs of an individual problem is a groundbreaking direction for constraints research, which has focused on the incremental improvement of general-purpose solvers. Synthesising a solver from scratch has two key benefits, both of which will have a major impact. First, it will enable a fine-grained optimisation not possible for a general solver, allowing the solution of much larger, more difficult problems. Second, it will open up many exciting research possibilities. There are many techniques in the literature that, although effective in a limited number of cases, are not suitable for general use. Hence, they are omitted from current general solvers and remain relatively undeveloped. The synthesiser will, however, select such techniques as they are appropriate for an input problem, creating novel combinations to produce powerful new solvers. The result will be a dramatic increase in the number of practical problems solvable without the input of a constraints expert.

Publications

10 25 50
 
Description Combinatorial problems are central to many important decision-making tasks, such as planning, scheduling, or design, that affect all of our lives. In this work, we have developed a constraint solver synthesiser: a system that accepts a combinatorial problem to solve and builds an automated problem solver tailored to the features of that problem. The advance that this represents over existing techniques is that general-purpose solvers necessarily contain a series of compromises in order to perform well on a wide range of problems. A special-purpose solver need not contain such compromises and can therefore realise substantial efficiency gains that are crucial in solving large, complex problems.
Exploitation Route Combinatorial search problems lie at the heart of so many ubiquitous tasks that improved solution techniques are constantly demanded as the problems we wish to solve grow ever larger and more complex. This work provides important insights into how we can obtain substantial efficiency gains and a platform for future research in this area. There are many open avenues to explore to find the right blend of techniques to produce a very efficient solver for an input problem.
Sectors Aerospace, Defence and Marine,Agriculture, Food and Drink,Creative Economy,Digital/Communication/Information Technologies (including Software),Electronics,Energy,Financial Services, and Management Consultancy,Healthcare,Retail,Transport

 
Description The constraint modelling and solving software associated with this grant is disseminated on the web (constraintmodelling.org). It is in use worldwide for both pedagogical and practical (industrial and academic) purposes. An illustrative example is the CB1000 Nanoproteomic Analysis System. Without previous experience of constraint programming, this work's author, Andrew Loewenstern, was able to model and solve the problem of scheduling the movements of the robotic arm and access to the separation chamber, improving the solution a previous approach provided significantly. The new solution is deployed in an industrial product. Our work has found many other diverse applications as its impact continues to increase. In software engineering it is used in testing and debugging computer programs - an essential and notoriously expensive phase of software development. In mathematics new applications appear very frequently, such as: enumerating monoids, finding torsion units of integral group rings of various types of simple group, and proving the existence of bicrucial permutations of even length. In robotics it is used for mission specification and planning for unmanned aircraft, and for collaborative task specification. In video games there are exciting applications in both level design and in gauging level difficulty, for example in the iOS puzzle game Combination. A related application is in generating crossword puzzles. In disaster response planning it is being used to assign resources such as fire fighters and trucks to local incidents. In security and surveillance it is being used to solve the Partner Units Problem, which involves sensor placement. A variety of further applications include: a parser for Sanskrit; debugging database queries; and benchmarking the Linux operating system.
First Year Of Impact 2010
Sector Aerospace, Defence and Marine,Creative Economy,Digital/Communication/Information Technologies (including Software),Education,Healthcare,Manufacturing, including Industrial Biotechology,Transport
Impact Types Cultural,Economic

 
Description Impact Acceleration Account
Amount £38,309 (GBP)
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 07/2014 
End 12/2014
 
Description Impact Acceleration Account
Amount £3,576 (GBP)
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 03/2016 
End 03/2016
 
Description SFC Innovation Voucher
Amount £5,000 (GBP)
Organisation Government of Scotland 
Department Scottish Funding Council
Sector Public
Country United Kingdom
Start 10/2014 
End 03/2015
 
Description Standard Research
Amount £630,232 (GBP)
Funding ID EP/K015745/1 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 04/2013 
End 09/2016
 
Description Standard Research
Amount £886,923 (GBP)
Funding ID EP/P015638/1 
Organisation Engineering and Physical Sciences Research Council (EPSRC) 
Sector Public
Country United Kingdom
Start 04/2017 
End 09/2020
 
Title Data underpinning - An externally validated age-related model of mean follicle density in the cortex of the human ovary 
Description  
Type Of Material Database/Collection of data 
Year Produced 2015 
Provided To Others? Yes  
 
Title Conjure 
Description An automated constraint modelling tool 
Type Of Technology Software 
Year Produced 2014 
Open Source License? Yes  
Impact This tool, still under active development, makes it possible to generate constraint models automatically from their specifications, rather than relying on human experts. 
URL http://constraintmodelling.org/conjure/
 
Title Minion 
Description A constraint solver 
Type Of Technology Software 
Year Produced 2006 
Open Source License? Yes  
Impact This software is in used by researchers worldwide to solve combinatorial search problems. 
URL http://constraintmodelling.org/minion/
 
Title Savile Row 
Description An automated constraint modelling tool 
Type Of Technology Software 
Year Produced 2014 
Open Source License? Yes  
Impact This tool is used for teaching and for research in various institutions worldwide 
URL http://savilerow.cs.st-andrews.ac.uk
 
Description Demofest 2014 
Form Of Engagement Activity Participation in an activity, workshop or similar
Part Of Official Scheme? Yes
Geographic Reach Regional
Primary Audience Professional Practitioners
Results and Impact Presentation led to several discussions with potential industrial collaborators.

Demofest happened only very recently at the time of writing.
Year(s) Of Engagement Activity 2014
URL http://www.sicsa.ac.uk/knowledge-exchange/industry-collaboration/demofest/