Leeds: 6 June 02Constraint Technology for the Masses Alan M. Frisch Artificial Intelligence Group Department of Computer Science University of York Collaborators:

Slides:



Advertisements
Similar presentations
Non-Binary Constraint Satisfaction Toby Walsh Cork Constraint Computation Center.
Advertisements

Global Constraints Toby Walsh National ICT Australia and University of New South Wales
Dynamic Programming Rahul Mohare Faculty Datta Meghe Institute of Management Studies.
1 Finite Constraint Domains. 2 u Constraint satisfaction problems (CSP) u A backtracking solver u Node and arc consistency u Bounds consistency u Generalized.
Exploiting Symmetry in Planning Maria Fox Durham Planning Group University of Durham, UK.
Reducing Symmetry in Matrix Models Alan Frisch, Ian Miguel, Toby Walsh (York) Pierre Flener, Brahim Hnich, Zeynep Kiziltan, Justin Pearson (Uppsala)
1 Transportation problem The transportation problem seeks the determination of a minimum cost transportation plan for a single commodity from a number.
Case study 5: balanced academic curriculum problem Joint work with Brahim Hnich and Zeynep Kiziltan (CPAIOR 2002)
Generating Implied Constraints via Proof Planning Alan Frisch, Ian Miguel, Toby Walsh Dept of CS University of York EPSRC funded project GR/N16129.
Section 3 CS182 Intelligent Machines: Reasoning, Actions and Plans.
MATH 685/ CSI 700/ OR 682 Lecture Notes
1 1.8 © 2012 Pearson Education, Inc. Linear Equations in Linear Algebra INTRODUCTION TO LINEAR TRANSFORMATIONS.
Transforming and Refining Abstract Constraint Specifications Alan Frisch, Brahim Hnich*, Ian Miguel, Barbara Smith, and Toby Walsh *Cork Constraint Computation.
CPSC 322, Lecture 18Slide 1 Planning: Heuristics and CSP Planning Computer Science cpsc322, Lecture 18 (Textbook Chpt 8) February, 12, 2010.
Symmetry as a Prelude to Implied Constraints Alan Frisch, Ian Miguel, Toby Walsh University of York.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Alan M. Frisch Artificial Intelligence Group Department of Computer Science University of York Extending the Reach of Constraint Technology through Reformulation.
CGRASS A System for Transforming Constraint Satisfaction Problems Alan Frisch, Ian Miguel AI Group University of York Toby Walsh 4C.
1 Optimisation Although Constraint Logic Programming is somehow focussed in constraint satisfaction (closer to a “logical” view), constraint optimisation.
CPSC 322, Lecture 12Slide 1 CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12 (Textbook Chpt ) January, 29, 2010.
CPSC 322, Lecture 13Slide 1 CSPs: Arc Consistency & Domain Splitting Computer Science cpsc322, Lecture 13 (Textbook Chpt 4.5,4.8) February, 02, 2009.
Matrix Modelling Alan M. Frisch and Ian Miguel (York) Brahim Hnich, Zeynep Kiziltan (Uppsala) Toby Walsh (Cork)
Matrix Modelling Pierre Flener (Uppsala) Alan M. Frisch (York) Brahim Hnich, Zeynep Kiziltan (Uppsala) Ian Miguel, and Toby Walsh (York)
Automated Changes of Problem Representation Eugene Fink LTI Retreat 2007.
Alan M. Frisch Ian Miguel Joint work with Matt Grum, Chris Jefferson & Bernadette Martinez Hernandez The Rules of Modelling Automatic Generation of Constraint.
Reducing Symmetry in Matrix Models Alan Frisch, Ian Miguel, Toby Walsh (York) Pierre Flener, Brahim Hnich, Zeynep Kiziltan, Justin Pearson (Uppsala)
Modeling the Covering Test Problem Brahim Hnich, Steven Prestwich, and Evgeny Selensky Cork Constraint Computation Center UCC Supported by SFI.
Alan M. Frisch Artificial Intelligence Group Department of Computer Science University of York Co-authors Ian Miguel, Toby Walsh, Pierre Flener, Brahim.
CGRASS A System for Transforming Constraint Satisfaction Problems Alan Frisch, Ian Miguel (York) Toby Walsh (Cork)
Constraint Systems Laboratory 11/22/2005Zheng – Comprehensive1 Survey of Techniques for Detecting and Exploiting Symmetry in Constraint Satisfaction Problems.
Matrix Modelling: Déjà Vu Pierre Flener (Uppsala) Alan M. Frisch (York) Brahim Hnich, Zeynep Kiziltan (Uppsala) Ian Miguel, and Toby Walsh (York)
Global Constraints for Lexicographic Orderings Alan Frisch, Ian Miguel (University of York) Brahim Hnich, Toby Walsh (4C) Zeynep Kiziltan (Uppsala University)
Modelling a Steel Mill Slab Design Problem Alan Frisch, Ian Miguel, Toby Walsh AI Group University of York.
Article Title: Optimization model for resource assignment problems of linear construction projects ShuShun Liu & ChangJung Wang, National Yunlin University.
LINEAR PROGRAMMING SIMPLEX METHOD.
Operations Research Models
CS32310 MATRICES 1. Vector vs Matrix transformation formulae Geometric reasoning allowed us to derive vector expressions for the various transformation.
Slide 1 CSPs: Arc Consistency & Domain Splitting Jim Little UBC CS 322 – Search 7 October 1, 2014 Textbook §
CP Summer School Modelling for Constraint Programming Barbara Smith 1.Definitions, Viewpoints, Constraints 2.Implied Constraints, Optimization,
Symmetry Breaking Ordering Constraints Zeynep Kiziltan Department of Information Science Uppsala University, Sweden A progress.
1 Computer Programming (ECGD2102 ) Using MATLAB Instructor: Eng. Eman Al.Swaity Lecture (1): Introduction.
Constraint Satisfaction Problems (CSPs) CPSC 322 – CSP 1 Poole & Mackworth textbook: Sections § Lecturer: Alan Mackworth September 28, 2012.
Constraint Programming Research at York 1. Modelling 2. Symmetry Breaking 3. SAT 4. Applications Allocating orders to steel slabs in a steel mill Distribution.
Embedding Constraint Satisfaction using Parallel Soft-Core Processors on FPGAs Prasad Subramanian, Brandon Eames, Department of Electrical Engineering,
Information Security - City College1 Access Control in Collaborative Systems Authors: Emis Simo David Naco.
The Volcano Optimizer Generator Extensibility and Efficient Search.
Data Structures Lecture 1: Introduction. Course Contents Data Types   Overview, Introductory concepts   Data Types, meaning and implementation  
Algebra II Sequence Rationale. Preface According to the TEKS for Algebra I, students will learn: What a function is Gather and record data Represent functions.
Data Structures and Algorithms Dr. Tehseen Zia Assistant Professor Dept. Computer Science and IT University of Sargodha Lecture 1.
Chapter 5 Constraint Satisfaction Problems
3.6 Solving Systems Using Matrices You can use a matrix to represent and solve a system of equations without writing the variables. A matrix is a rectangular.
CP Summer School Modelling for Constraint Programming Barbara Smith 3. Symmetry, Viewpoints.
Arc Consistency CPSC 322 – CSP 3 Textbook § 4.5 February 2, 2011.
CIS 601 Fall 2003 Introduction to MATLAB Longin Jan Latecki Based on the lectures of Rolf Lakaemper and David Young.
System To Generate Test Data: The Analysis Program Syed Nabeel.
Abdul Rahim Ahmad MITM 613 Intelligent System Chapter 10: Tools.
ICS 353: Design and Analysis of Algorithms Backtracking King Fahd University of Petroleum & Minerals Information & Computer Science Department.
10.3 Reformulation The Lex-Leader Method Shant Karakashian 1.
CIS 595 MATLAB First Impressions. MATLAB This introduction will give Some basic ideas Main advantages and drawbacks compared to other languages.
Sudoku Solutions Using Logic Equations Christian Posthoff The University of The West Indies, Trinidad & Tobago Bernd Steinbach Freiberg University of Mining.
Composing semantic Web services under constraints E.Karakoc, P.Senkul Journal: Expert Systems with Applications 36 (2009)
Automatic Test Generation
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Constraint Satisfaction Problems (CSPs) Introduction
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
CSCI N207 Data Analysis Using Spreadsheet
ICS 353: Design and Analysis of Algorithms
Linear Equations in Linear Algebra
Linear Equations in Linear Algebra
Presentation transcript:

Leeds: 6 June 02Constraint Technology for the Masses Alan M. Frisch Artificial Intelligence Group Department of Computer Science University of York Collaborators: Ian Miguel, Toby Walsh, Pierre Flener, Brahim Hnich, Zeynep Kiziltan, Justin Pearson Constraint Technology for the Masses

Leeds: 6 June 02Constraint Technology for the Masses Constraint Programming is Important Useful for solving a wide range of problems including scheduling, allocation, layout. Often used on large, complex problems whose solution is crucial. Constraint technology is a big business. Powerful toolkits are available: –Eclipse from IC PARC –Solver from ILOG

Leeds: 6 June 02Constraint Technology for the Masses Formulation Bottleneck Use of current technology requires modelling a problem as a constraint program. This requires moderate/great expertise. Hence constraint technology is used almost exclusively by large enterprises on problems with large payoff.

Leeds: 6 June 02Constraint Technology for the Masses Reducing the Formulation Bottleneck Systematise the knowledge of the expert. The expert can recognise patterns in problems and match them to patterns of problem formulations. The expert can choose among alternatives.

Leeds: 6 June 02Constraint Technology for the Masses Exploiting Common Patterns Published in journals with analyses of properties. Catalogued in textbooks with guidance on selection. Implemented in libraries. Supported by high-level languages. Exploited by intelligent compilers. This would bring constraint technology to BSc’s.

Leeds: 6 June 02Constraint Technology for the Masses Making Constraint Technology Invisible Conceal constraint technology behind intuitive user interfaces. Pre-programmed patterns would be provided. This would bring constraint technology to the masses.

Leeds: 6 June 02Constraint Technology for the Masses The Constraint Satisfaction Problem An instance of the CSP consists of Finite set of variables X 1,…,X n, having finite domains D 1,…,D n. Finite set of constraints. Each restricts the values that the variables can simultaneously take. Example: x neq y. x+y<z.

Leeds: 6 June 02Constraint Technology for the Masses Solutions of a CSP Instance A total instantiation maps each variable to an element in its domain. A solution to a CSP instance is a total instantiation that satisfies all the constraints. Problem: Given an instance –Determine if it is satisfiable (has a solution) –Find a solution –Find all solutions –Find optimal solution

Leeds: 6 June 02Constraint Technology for the Masses Partial Instantiation Search X X X ! X !! !! !

Leeds: 6 June 02Constraint Technology for the Masses Matrix Models A problem formulation involving one or more (multi-dimensional) matrices of decision variable s. Often has row and column symmetry. 0 vs 72 vs 72 vs 60 vs 41 vs 63 vs 54 vs 5Period 3 0 vs 5 1 vs 4 3 vs 7 Week 5 3 vs 4 0 vs 6 1 vs 5 Week 6 1 vs 31 vs 22 vs 54 vs 66 vs 7Period 4 5 vs 65 vs 70 vs 31 vs 72 vs 3Period 2 2 vs 43 vs 64 vs 70 vs 20 vs 1Period 1 Week 7Week 4Week 3Week 2Week 1 Round Robin Tournament Schedule

Leeds: 6 June 02Constraint Technology for the Masses Matrix Models are Prevalent Commonly used to implement sets, subsets, partitions, relations, functions, permutations… Of 31 problems in CSPlib ( 27 have natural matrix models, most already published and arguably the most natural models. Many have row and column symmetries.

Leeds: 6 June 02Constraint Technology for the Masses Overview I Systematic refinement of high-level specifications to matrix models. II Breaking row and column symmetry. III Vision of constraint spreadsheets.

Leeds: 6 June 02Constraint Technology for the Masses Part I: Systematic refinement of high-level specifications to matrix models.

Leeds: 6 June 02Constraint Technology for the Masses Balanced Academic Curriculum Problem Assign courses to periods in which they will be taught such that: –Course load in each period is not too large or too small. –Credit load in each period is not too large or too small. –The prerequisites to each course are taught before the course.

Leeds: 6 June 02Constraint Technology for the Masses High-level Specification Find a function CUR: courses  periods Constraints are inequalities involving CUR, CUR -1, cardinality and summation. We have semi-systematically transformed this to a variety of alternative matrix models. Major decisions: –How to represent CUR. –The introduction of a 1D matrix of variables to store the credit load of each period (from CGRASS).

Leeds: 6 June 02Constraint Technology for the Masses 1D Matrix Representation of a Function Periods CUR1 Courses No straightforward way to express the credit load of a period with facilities of current constraint programming languages.

Leeds: 6 June 02Constraint Technology for the Masses 2D Matrix Representation of a Function 0..1 Courses Periods CUR2  =1 … All constraints can be expressed as linear inequalities.

Leeds: 6 June 02Constraint Technology for the Masses 1D + 2D Matrix Representation of a Function 0..1 Courses Periods CUR2 Periods CUR1 CUR2[c,p] = 1  CUR1[c] = p All constraints can be expressed straightforwardly.

Leeds: 6 June 02Constraint Technology for the Masses Golumb Ruler Problem We have systematically transformed a high-level specification of the problem into an efficient CSP formulation (roughly that of Smith, Stergiou & Walsh). This involves: –Introducing new variables. –Replacing constraints with more powerful ones. –Refinement: choosing subset to choosing values. –Breaking symmetry. –Reasoning about ordered subscripts.

Leeds: 6 June 02Constraint Technology for the Masses CGRASS A system that automatically generates implied constraints and symmetry breaking constraints to improve efficiency of solver. Currently operates on problem instances, but is now being extended to handle problem classes. Major lesson: inferences must be made at the appropriate level of abstraction. Refinement rules as well as inference rules are needed.

Leeds: 6 June 02Constraint Technology for the Masses Part II: Breaking Row and Column Symmetries

Leeds: 6 June 02Constraint Technology for the Masses Index Symmetry in One Dimension Indistinguishable Rows ABC DEF GHI 2 Dimensions [A B C]  lex [D E F]  lex [G H I] Can be extended to n dimensions and partial symmetry.

Leeds: 6 June 02Constraint Technology for the Masses Index Symmetry in Multiple Dimensions ABC DEF GHI ABC DEF GHI ABC DEF GHI ABC DEF GHI Consistent Inconsistent

Leeds: 6 June 02Constraint Technology for the Masses Incompleteness of Double Lex Swap 2 columns Swap row 1 and 3

Leeds: 6 June 02Constraint Technology for the Masses Enforcing Lexicographic Ordering We have developed a linear time algorithm for enforcing generalized arc-consistency on a lexicographic ordering constraint between two vectors of variables. Experiments show that in some cases it is vastly superior to previous consistency algorithms, both in time and in amount pruned.

Leeds: 6 June 02Constraint Technology for the Masses Part III: Constraint Spreadsheets Matrix of decision variables can be viewed and manipulated through a spreadsheet-style interface. Simple methods for imposing constraints on multiple rows/columns w/out iteration or recursion. Facilitate mixed-initiative solving and “what-if” reasoning. Endow spreadsheets with solving in addition to calculation. Object-oriented hierarchy of style sheets for solving common problem types.

Leeds: 6 June 02Constraint Technology for the Masses Conclusion Constraint technology has made impressive progress, yet available toolkits support constraint programming at only a low level of abstraction. First steps to bring technology to the masses: –Develop high-level language supported with automatic refinement and reformulation, especially to matrix models. –Efficient methods for solving matrix models, especially for breaking index symmetry. –Constraint spreadsheets.