Introduction & Overview
|
|
- Robyn Small
- 8 years ago
- Views:
Transcription
1 ID2204: Constraint Programming Introduction & Overview Lecture 01, Christian Schulte Software and Computer Systems School of Information and Communication Technology KTH Royal Institute of Technology Sweden
2 Lecture Overview What is Constraint Programming? Sudoku is Constraint Programming... more later
3 Sudoku...is Constraint Programming!
4 Sudoku Assign blank fields digits such that: digits distinct per rows, columns, blocks
5 Sudoku Assign blank fields digits such that: digits distinct per rows, columns, blocks
6 Sudoku Assign blank fields digits such that: digits distinct per rows, columns, blocks
7 Sudoku Assign blank fields digits such that: digits distinct per rows, columns, blocks
8 Block Propagation No field in block can take digits 3,6,8
9 Block Propagation 1,2,4,5,7,9 8 1,2,4,5,7,9 1,2,4,5,7, ,2,4,5,7,9 1,2,4,5,7,9 1,2,4,5,7,9 No field in block can take digits 3,6,8 propagate to other fields in block Rows and columns: likewise
10 Propagation ,2,3,4,5,6,7,8, Prune digits from fields such that: digits distinct per rows, columns, blocks
11 Propagation ,3,5,6,7, Prune digits from fields such that: digits distinct per rows, columns, blocks
12 Propagation ,3,6,7 Prune digits from fields such that: digits distinct per rows, columns, blocks
13 Propagation ,3, Prune digits from fields such that: digits distinct per rows, columns, blocks
14 Iterated Propagation Iterate propagation for rows, columns, blocks What if no assignment: search... later
15 Sudoku is Constraint Programming Variables: fields take values: digits maintain set of possible values Constraints: distinct relation among variables Modelling: variables, values, constraints Solving: propagation, search
16 Constraint Programming Variable domains finite domain integer, finite sets, multisets, intervals,... Constraints distinct, arithmetic, scheduling, graphs,... Solving propagation, branching, exploration,... Modelling variables, values, constraints, heuristics, symmetries,...
17 Plan of Lecture Introduction what is constraint programming? principles and applications Overview course content course goal Organizational
18 What Is Constraint Programming?
19 Running Example: SMM Find distinct digits for letters, such that SEND + MORE = MONEY
20 Constraint Model for SMM Variables: S,E,N,D,M,O,R,Y {0,,9} Constraints: distinct(s,e,n,d,m,o,r,y) 1000 S+100 E+10 N+D M+100 O+10 R+E = M+1000 O+100 N+10 E+Y S 0 M 0
21 Solving SMM Find values for variables such that all constraints satisfied
22 Finding a Solution Compute with possible values rather than enumerating assignments Prune inconsistent values constraint propagation Search branch: define search tree explore: explore search tree for solution
23 Constraint Propagation
24 Important Concepts Constraint store Propagator Constraint propagation
25 Constraint Store x {3,4,5} y {3,4,5} Maps variables to possible values stores basic constraints
26 Constraint Store finite domain constraints x {3,4,5} y {3,4,5} Maps variables to possible values Others: finite sets, intervals, trees,...
27 Propagators Implement (non-basic) constraints distinct(x 1,,x n ) x + 2*y = z
28 Propagators x y y>3 x {3,4,5} y {3,4,5} Amplify store by constraint propagation
29 Propagators x y y>3 x {3,4,5} y {3,4,5} Amplify store by constraint propagation
30 Propagators x y y>3 x {3,4,5} y {4,5} Amplify store by constraint propagation
31 Propagators x y y>3 x {3,4,5} y {4,5} Amplify store by constraint propagation
32 Propagators x y y>3 x {4,5} y {4,5} Amplify store by constraint propagation
33 Propagators x y y>3 x {4,5} y {4,5} Amplify store by constraint propagation Disappear when done (subsumed, entailed) no more propagation possible
34 Propagators x y x {4,5} y {4,5} Amplify store by constraint propagation Disappear when done (subsumed, entailed) no more propagation possible
35 Propagation for SMM Results in store S {9} E {4,,7} M {1} O {0} N {5,,8} D {2,,8} R {2,,8} Y {2,,8} Propagation alone not sufficient! create simpler sub-problems branching
36 Constraints and Propagators Constraints state relations among variables which value combinations satisfy constraint Propagators implement constraints prune values in conflict with constraint Constraint propagation drives propagators for several constraints
37 Search
38 Important Concepts Branching Exploration Branching heuristics Best-solution search
39 Search: Branching x y x {4,5} y {4,5} x=4 x 4 x y x {4} y {4} x y x {5} y {4,5} Create subproblems with additional information enable further constraint propagation
40 Example Branching Strategy Pick variable x with at least two values Pick value n from domain of x Branch with x=n and x n Part of model
41 Search: Exploration Iterate propagation and branching Orthogonal: branching exploration Nodes: Unsolved Failed Succeeded
42 SMM: Unique Solution SEND + MORE = MONEY = 10652
43 Heuristics for Branching Which variable least possible values (first-fail) application dependent heuristic Which value minimum, median, maximum x=m or x m split with median m x<m or x m Problem specific
44 SMM: Solution With First-fail SEND + MORE = MONEY = 10652
45 Send Most Money (SMM++) Find distinct digits for letters, such that SEND + MOST = MONEY and MONEY maximal
46 Best Solution Search Naïve approach: compute all solutions choose best Branch-and-bound approach: compute first solution add betterness constraint to open nodes next solution will be better prunes search space
47 Branch-and-bound Search Find first solution
48 Branch-and-bound Search Explore with additional constraint
49 Branch-and-bound Search Explore with additional constraint
50 Branch-and-bound Search Guarantees better solutions
51 Branch-and-bound Search Guarantees better solutions
52 Branch-and-bound Search Last solution best
53 Branch-and-bound Search Proof of optimality
54 Modelling SMM++ Constraints and branching as before Order among solutions with constraints so-far-best solution S,E,N,D,M,O,T,Y current node S,E,N,D,M,O,T,Y constraint added M+1000 O+100 N+10 E+Y < M+1000 O+100 N+10 E+Y
55 SMM++: Branch-and-bound SEND + MOST = MONEY = 10876
56 SMM++: All Solution Search SEND + MOST = MONEY = 10876
57 Summary
58 Summary: Key Ideas and Principles Modelling variables with domain constraints to state relations branching strategy solution ordering Solving constraint propagation constraint branching search tree exploration applications principles
59 Widely Applicable Timetabling Scheduling Crew rostering Resource allocation Workflow planning and optimization Gate allocation at airports Sports-event scheduling Railroad: track allocation, train allocation, schedules Automatic composition of music Genome sequencing Frequency allocation
60 Draws on Variety of Techniques Artificial intelligence basic idea, search,... Operations research scheduling, flow,... Algorithms graphs, matching, networks,... Programming languages programmability, extensionability,...
61 Essential Aspect Compositional middleware for combining smart algorithmic problem substructures components (propagators) scheduling graphs flows plus essential extra constraints
62 Principles Models for constraint propagation properties and guarantees Strong constraint propagation global constraints with strong algorithmic methods mantra: search kills, search kills, search k Branching strategies Exploration strategies
63 SMM: Strong Propagation SEND + MORE = MONEY = 10652
64 Scheduling Resources Modelling Propagation Strong propagation
65 Scheduling Resources: Problem Tasks duration resource Precedence constraints determine order among two tasks Resource constraints at most one task per resource [disjunctive, non-preemptive scheduling]
66 Scheduling: Bridge Example Infamous: additional side constraints!
67 Scheduling: Solution Start time for each task All constraints satisfied Earliest completion time minimal make-span
68 Scheduling: Model Variable for start-time of task a start(a) Precedence constraint: a before b start(a) + dur(a) start(b)
69 Propagating Precedence a before b a b start(a) {0,,7} start(b) {0,,5}
70 Propagating Precedence a before b a a b b start(a) {0,,7} start(b) {0,,5} start(a) {0,,2} start(b) {3,,5}
71 Scheduling: Model Variable for start-time of task a start(a) Precedence constraint: a before b start(a) + dur(a) start(b) Resource constraint: a before b or b before a
72 Scheduling: Model Variable for start-time of task a start(a) Precedence constraint: a before b start(a) + dur(a) start(b) Resource constraint: start(a) + dur(a) start(b) or b before a
73 Scheduling: Model Variable for start-time of task a start(a) Precedence constraint: a before b start(a) + dur(a) start(b) Resource constraint: start(a) + dur(a) start(b) or start(b) + dur(b) start(a)
74 Reified Constraints Use control variable b {0,1} c b=1 Propagate c holds propagate b=1 c holds propagate b=0 b=1 holds propagate c b=0 holds propagate c
75 Reified Constraints Use control variable b {0,1} c b=1 Propagate not easy! c holds propagate b=1 c holds propagate b=0 b=1 holds propagate c b=0 holds propagate c
76 Reification for Disjunction Reify each precedence [start(a) + dur(a) start(b)] b 0 =1 and [start(b) + dur(b) start(a)] b 1 =1 Model disjunction b 0 + b 1 1
77 Model Is Too Naive Local view individual task pairs O(n 2 ) propagators for n tasks Global view ("global" constraints) all tasks on resource single propagator smarter algorithms possible
78 Example: Edge Finding Find ordering among tasks ( edges ) For each subset of tasks {a} B assume: a before B deduce information for assume: B before a deduce information for join computed information can be done in O(n 2 ) a and B a and B
79 Summary Modeling easy but not always efficient constraint combinators (reification) global constraints smart heuristics More on constraint-based scheduling Baptiste, Le Pape, Nuijten. Constraint-based Scheduling, Kluwer, 2001.
80 Course Overview
81 Content Overview As to be expected, no surprises: applications principles pragmatics limitations
82 Modeling with CP Basic solving methods constraint propagation search Typical techniques for modeling in different application areas redundant constraints, symmetry elimination Refining models by strong algorithmic methods Heuristic search methods Application to hard real-size problems
83 Principles Underlying CP Models for propagation search and their essential properties Different levels of consistency (propagation strength) Different constraint domains finite domains, finite sets,...
84 Strong Algorithmic Methods Régin's distinct algorithm Edge-finding Integration achieving required properties for propagation
85 Relation to Other Techniques Integer programming Local search Discussion of merits and weaknesses Hybrid approaches
86 Goals: Learning Outcomes explain and apply basic modeling techniques for constraint problems, including the selection of variables, constraints, and optimization criteria. describe and apply depth-first search and branch-and-bound search for solving constraint problems. describe and define constraint propagation, search branching, and search tree exploration prove correctness, consistency, and completeness of propagators implementing constraints. define and prove correctness of branching strategies. describe optimizations of constraint propagation based on fixpoint reasoning.
87 Goals: Learning Outcomes describe advanced modeling techniques, analyze combinatorial problems for the applicability of these techniques, and apply and combine them techniques include: general symmetries, value and variable symmetries, symmetry breaking with constraints, symmetry breaking during search, domination constraints, redundant constraints, redundant modeling and channeling, using strong algorithmic techniques, and branching heuristics. describe and apply Régin's algorithm for the distinct constraint as an example of strong constraint propagation explain algorithms for the element constraint, linear constraints, and disjunctive scheduling constraints. implement a simple propagation algorithm. describe the main strength and weaknesses of constraint programming and how constraint programming relates to other methods (local search and integer programming)
88 Organizational
89 Material Lecture notes (slides) available before the lectures Additional material book excerpts scientific articles notes written by me Modeling and Programming with Gecode
90 How to Pass? Pass exam has 200 (3 hour exam) exam points 100 total points needed grading scale linear (see www) Total pts = exam pts + bonus pts Bonus points from assignments at most 20 points
91 Assignments Four assignments each 5 bonus points if submitted in time one to three weeks for solving Points only valid in this academic year!
92 Assignment Tasks Exploration tasks small tryouts need to be done in order to do Submission tasks submit in time, get bonus points do them, do them submit to me by Both practical and principles
93 Software: Gecode Gecode C++ library course web: links to Gecode page Download and install at least version (available on Monday) Start reading Modeling and Programming with Gecode at the beginning of Part M are reading instructions
94 Contacting Christian Schulte other options (urgent cases), see my homepage
95 Summary Constraint programming is exciting! is fun! Understanding of principles and applications necessary Read the webpage
96 Acknowledgments I am grateful to Pierre Flener for helpful comments and bugreports on these slides
Constraint-Based Scheduling: A Tutorial
Constraint-Based Scheduling: A Tutorial Claude Le Pape ILOG S. A. 9, rue de Verdun F-94253 Gentilly Cedex Tel: +33 1 49 08 29 67 Fax: +33 1 49 08 35 10 Email: clepape@ilog.fr Given a set of resources with
More informationAlternative Job-Shop Scheduling For Proton Therapy
Alternative Job-Shop Scheduling For Proton Therapy Cyrille Dejemeppe ICTEAM, Université Catholique de Louvain (UCLouvain), Belgium, cyrille.dejemeppe@uclouvain.be Director: Yves Deville (ICTEAM, UCLouvain)
More informationConstraint Programming for Random Testing of a Trading System
Constraint Programming for Random Testing of a Trading System Roberto Castañeda Lozano Master s thesis. Stockholm, January 28, 2010. School of Information and Communication Technology KTH Royal Institute
More informationINTEGER PROGRAMMING. Integer Programming. Prototype example. BIP model. BIP models
Integer Programming INTEGER PROGRAMMING In many problems the decision variables must have integer values. Example: assign people, machines, and vehicles to activities in integer quantities. If this is
More informationA Constraint Programming based Column Generation Approach to Nurse Rostering Problems
Abstract A Constraint Programming based Column Generation Approach to Nurse Rostering Problems Fang He and Rong Qu The Automated Scheduling, Optimisation and Planning (ASAP) Group School of Computer Science,
More informationScheduling Shop Scheduling. Tim Nieberg
Scheduling Shop Scheduling Tim Nieberg Shop models: General Introduction Remark: Consider non preemptive problems with regular objectives Notation Shop Problems: m machines, n jobs 1,..., n operations
More informationHeuristics for Dynamically Adapting Constraint Propagation in Constraint Programming
Heuristics for Dynamically Adapting Constraint Propagation in Constraint Programming Kostas Stergiou AI Lab University of the Aegean Greece CPAIOR 09 Workshop on Bound reduction techniques for CP and MINLP
More informationKeywords: Power Transmission Networks, Maintenance Scheduling problem, Hybrid Constraint Methods, Constraint Programming
SCHEDULING MAINTENANCE ACTIVITIES OF ELECTRIC POWER TRANSMISSION NETWORKS USING AN HYBRID CONSTRAINT METHOD Nuno Gomes, Raul Pinheiro, ZitaVale, Carlos Ramos GECAD Knowledge Engineering and Decision Support
More informationScheduling Constraints and Disjunctive Constraints
DISJUNCTIVE CONSTRAINTS FOR MANUFACTURING SCHEDULING: PRINCIPLES AND EXTENSIONS PHILIPPE BAPTISTE and CLAUDE LE PAPE ILOG S.A., 2 Avenue Gallieni, BP 85 F-94253 Gentilly Cedex FRANCE E-mail: baptiste@ilog.fr
More informationOutline. NP-completeness. When is a problem easy? When is a problem hard? Today. Euler Circuits
Outline NP-completeness Examples of Easy vs. Hard problems Euler circuit vs. Hamiltonian circuit Shortest Path vs. Longest Path 2-pairs sum vs. general Subset Sum Reducing one problem to another Clique
More informationA Constraint Programming Application for Rotating Workforce Scheduling
A Constraint Programming Application for Rotating Workforce Scheduling Markus Triska and Nysret Musliu Database and Artificial Intelligence Group Vienna University of Technology {triska,musliu}@dbai.tuwien.ac.at
More informationJust-In-Time Scheduling with Constraint Programming
Just-In-Time Scheduling with Constraint Programming Jean-Noël Monette and Yves Deville Computing Sciences and Engineering Department Université catholique de Louvain 1348 Louvain-la-Neuve Belgium Pascal
More informationY. Xiang, Constraint Satisfaction Problems
Constraint Satisfaction Problems Objectives Constraint satisfaction problems Backtracking Iterative improvement Constraint propagation Reference Russell & Norvig: Chapter 5. 1 Constraints Constraints are
More informationThe Problem of Scheduling Technicians and Interventions in a Telecommunications Company
The Problem of Scheduling Technicians and Interventions in a Telecommunications Company Sérgio Garcia Panzo Dongala November 2008 Abstract In 2007 the challenge organized by the French Society of Operational
More informationPractical Guide to the Simplex Method of Linear Programming
Practical Guide to the Simplex Method of Linear Programming Marcel Oliver Revised: April, 0 The basic steps of the simplex algorithm Step : Write the linear programming problem in standard form Linear
More informationClustering and scheduling maintenance tasks over time
Clustering and scheduling maintenance tasks over time Per Kreuger 2008-04-29 SICS Technical Report T2008:09 Abstract We report results on a maintenance scheduling problem. The problem consists of allocating
More informationIntegrating Benders decomposition within Constraint Programming
Integrating Benders decomposition within Constraint Programming Hadrien Cambazard, Narendra Jussien email: {hcambaza,jussien}@emn.fr École des Mines de Nantes, LINA CNRS FRE 2729 4 rue Alfred Kastler BP
More informationScheduling a sequence of tasks with general completion costs
Scheduling a sequence of tasks with general completion costs Francis Sourd CNRS-LIP6 4, place Jussieu 75252 Paris Cedex 05, France Francis.Sourd@lip6.fr Abstract Scheduling a sequence of tasks in the acceptation
More information5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
5 INTEGER LINEAR PROGRAMMING (ILP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 General Integer Linear Program: (ILP) min c T x Ax b x 0 integer Assumption: A, b integer The integrality condition
More informationScenario: Optimization of Conference Schedule.
MINI PROJECT 1 Scenario: Optimization of Conference Schedule. A conference has n papers accepted. Our job is to organize them in a best possible schedule. The schedule has p parallel sessions at a given
More informationA Constraint-Based Method for Project Scheduling with Time Windows
A Constraint-Based Method for Project Scheduling with Time Windows Amedeo Cesta 1 and Angelo Oddi 1 and Stephen F. Smith 2 1 ISTC-CNR, National Research Council of Italy Viale Marx 15, I-00137 Rome, Italy,
More informationMinerva Access is the Institutional Repository of The University of Melbourne
Minerva Access is the Institutional Repository of The University of Melbourne Author/s: Chu, Geoffrey G. Title: Improving combinatorial optimization Date: 2011 Citation: Chu, G. G. (2011). Improving combinatorial
More informationSudoku as a SAT Problem
Sudoku as a SAT Problem Inês Lynce IST/INESC-ID, Technical University of Lisbon, Portugal ines@sat.inesc-id.pt Joël Ouaknine Oxford University Computing Laboratory, UK joel@comlab.ox.ac.uk Abstract Sudoku
More informationDimensioning an inbound call center using constraint programming
Dimensioning an inbound call center using constraint programming Cyril Canon 1,2, Jean-Charles Billaut 2, and Jean-Louis Bouquard 2 1 Vitalicom, 643 avenue du grain d or, 41350 Vineuil, France ccanon@fr.snt.com
More informationOptimal Vehicle Routing and Scheduling with Precedence Constraints and Location Choice
Optimal Vehicle Routing and Scheduling with Precedence Constraints and Location Choice G. Ayorkor Korsah, Anthony Stentz, M. Bernardine Dias, and Imran Fanaswala Abstract To realize the vision of intelligent
More informationCharles Fleurent Director - Optimization algorithms
Software Tools for Transit Scheduling and Routing at GIRO Charles Fleurent Director - Optimization algorithms Objectives Provide an overview of software tools and optimization algorithms offered by GIRO
More informationSmart Graphics: Methoden 3 Suche, Constraints
Smart Graphics: Methoden 3 Suche, Constraints Vorlesung Smart Graphics LMU München Medieninformatik Butz/Boring Smart Graphics SS2007 Methoden: Suche 2 Folie 1 Themen heute Suchverfahren Hillclimbing Simulated
More informationVehicle Routing and Job Shop Scheduling: What s the difference?
Vehicle Routing and Job Shop Scheduling: What s the difference? J. Christopher Beck Cork Constraint Computation Center University College Cork, Ireland c.beck@4c.ucc.ie Patrick Prosser and Evgeny Selensky
More informationA Tool for Generating Partition Schedules of Multiprocessor Systems
A Tool for Generating Partition Schedules of Multiprocessor Systems Hans-Joachim Goltz and Norbert Pieth Fraunhofer FIRST, Berlin, Germany {hans-joachim.goltz,nobert.pieth}@first.fraunhofer.de Abstract.
More informationClassification - Examples
Lecture 2 Scheduling 1 Classification - Examples 1 r j C max given: n jobs with processing times p 1,...,p n and release dates r 1,...,r n jobs have to be scheduled without preemption on one machine taking
More informationA hybrid approach for solving real-world nurse rostering problems
Presentation at CP 2011: A hybrid approach for solving real-world nurse rostering problems Martin Stølevik (martin.stolevik@sintef.no) Tomas Eric Nordlander (tomas.nordlander@sintef.no) Atle Riise (atle.riise@sintef.no)
More informationAbstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling
Abstract number: 015-0551 Abstract Title: Planned Preemption for Flexible Resource Constrained Project Scheduling Karuna Jain and Kanchan Joshi Shailesh J. Mehta School of Management, Indian Institute
More informationAnt Colony Optimization and Constraint Programming
Ant Colony Optimization and Constraint Programming Christine Solnon Series Editor Narendra Jussien WILEY Table of Contents Foreword Acknowledgements xi xiii Chapter 1. Introduction 1 1.1. Overview of the
More informationD-optimal plans in observational studies
D-optimal plans in observational studies Constanze Pumplün Stefan Rüping Katharina Morik Claus Weihs October 11, 2005 Abstract This paper investigates the use of Design of Experiments in observational
More informationScheduling Single Machine Scheduling. Tim Nieberg
Scheduling Single Machine Scheduling Tim Nieberg Single machine models Observation: for non-preemptive problems and regular objectives, a sequence in which the jobs are processed is sufficient to describe
More informationPROJECT-ORIENTED APPROACH TO PRODUCTION PLANNING AND SCHEDULING IN MAKE-TO-ORDER MANUFACTURING
Production Systems and Information Engineering Volume 2 (2004), pp. 23-36 23 PROJECT-ORIENTED APPROACH TO PRODUCTION PLANNING AND SCHEDULING IN MAKE-TO-ORDER MANUFACTURING PÉTER EGRI, ANDRÁS KOVÁCS, ANDRÁS
More informationUsing Cloud Computing for Solving Constraint Programming Problems
Using Cloud Computing for Solving Constraint Programming Problems Mohamed Rezgui, Jean-Charles Régin, and Arnaud Malapert Univ. Nice Sophia Antipolis, CNRS, I3S, UMR 7271, 06900 Sophia Antipolis, France
More informationRecovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach
MASTER S THESIS Recovery of primal solutions from dual subgradient methods for mixed binary linear programming; a branch-and-bound approach PAULINE ALDENVIK MIRJAM SCHIERSCHER Department of Mathematical
More informationSingle machine models: Maximum Lateness -12- Approximation ratio for EDD for problem 1 r j,d j < 0 L max. structure of a schedule Q...
Lecture 4 Scheduling 1 Single machine models: Maximum Lateness -12- Approximation ratio for EDD for problem 1 r j,d j < 0 L max structure of a schedule 0 Q 1100 11 00 11 000 111 0 0 1 1 00 11 00 11 00
More informationApproximation Algorithms
Approximation Algorithms or: How I Learned to Stop Worrying and Deal with NP-Completeness Ong Jit Sheng, Jonathan (A0073924B) March, 2012 Overview Key Results (I) General techniques: Greedy algorithms
More informationThe Entity-Relationship Model
The Entity-Relationship Model 221 After completing this chapter, you should be able to explain the three phases of database design, Why are multiple phases useful? evaluate the significance of the Entity-Relationship
More informationM. Sugumaran / (IJCSIT) International Journal of Computer Science and Information Technologies, Vol. 2 (3), 2011, 1001-1006
A Design of Centralized Meeting Scheduler with Distance Metrics M. Sugumaran Department of Computer Science and Engineering,Pondicherry Engineering College, Puducherry, India. Abstract Meeting scheduling
More informationConstraint Programming and Scheduling
Constraint Programming and Scheduling Materials from the course taught at HTWG Constanz, Germany Hana Rudová Faculty of Informatics, Masaryk University Brno, Czech Republic http://www.fi.muni.cz/~hanka
More informationA Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem
A Branch and Bound Algorithm for Solving the Binary Bi-level Linear Programming Problem John Karlof and Peter Hocking Mathematics and Statistics Department University of North Carolina Wilmington Wilmington,
More informationInvGen: An Efficient Invariant Generator
InvGen: An Efficient Invariant Generator Ashutosh Gupta and Andrey Rybalchenko Max Planck Institute for Software Systems (MPI-SWS) Abstract. In this paper we present InvGen, an automatic linear arithmetic
More informationA search based Sudoku solver
A search based Sudoku solver Tristan Cazenave Labo IA Dept. Informatique Université Paris 8, 93526, Saint-Denis, France, cazenave@ai.univ-paris8.fr Abstract. Sudoku is a popular puzzle. In this paper we
More informationOptimal Methods for Resource Allocation and Scheduling: a Cross-Disciplinary Survey
Noname manuscript No. (will be inserted by the editor) Optimal Methods for Resource Allocation and Scheduling: a Cross-Disciplinary Survey Michele Lombardi Michela Milano Submitted: December 2010 Abstract
More informationSchool Timetabling in Theory and Practice
School Timetabling in Theory and Practice Irving van Heuven van Staereling VU University, Amsterdam Faculty of Sciences December 24, 2012 Preface At almost every secondary school and university, some
More informationBranch-and-Price Approach to the Vehicle Routing Problem with Time Windows
TECHNISCHE UNIVERSITEIT EINDHOVEN Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows Lloyd A. Fasting May 2014 Supervisors: dr. M. Firat dr.ir. M.A.A. Boon J. van Twist MSc. Contents
More informationSpecial Session on Integrating Constraint Programming and Operations Research ISAIM 2016
Titles Special Session on Integrating Constraint Programming and Operations Research ISAIM 2016 1. Grammar-Based Integer Programming Models and Methods for Employee Scheduling Problems 2. Detecting and
More informationEFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP
EFFICIENT KNOWLEDGE BASE MANAGEMENT IN DCSP Hong Jiang Mathematics & Computer Science Department, Benedict College, USA jiangh@benedict.edu ABSTRACT DCSP (Distributed Constraint Satisfaction Problem) has
More informationA Generic Visualization Platform for CP
A Generic Visualization Platform for CP Helmut Simonis and Paul Davern and Jacob Feldman and Deepak Mehta and Luis Quesada and Mats Carlsson 2 Cork Constraint Computation Centre Department of Computer
More informationDiscrete Optimization Introduction & applications
Discrete Optimization 2013 1/21 Discrete Optimization Introduction & applications Bertrand Cornélusse ULg - Institut Montefiore 2013 Discrete Optimization 2013 2/21 Outline Introduction Some applications
More informationLecture 2 Introduction to Data Flow Analysis
Lecture 2 Introduction to Data Flow Analysis I. Introduction II. Example: Reaching definition analysis III. Example: Liveness analysis IV. A General Framework (Theory in next lecture) Reading: Chapter
More information24. The Branch and Bound Method
24. The Branch and Bound Method It has serious practical consequences if it is known that a combinatorial problem is NP-complete. Then one can conclude according to the present state of science that no
More informationRecommender Systems: Content-based, Knowledge-based, Hybrid. Radek Pelánek
Recommender Systems: Content-based, Knowledge-based, Hybrid Radek Pelánek 2015 Today lecture, basic principles: content-based knowledge-based hybrid, choice of approach,... critiquing, explanations,...
More informationData Mining Practical Machine Learning Tools and Techniques
Ensemble learning Data Mining Practical Machine Learning Tools and Techniques Slides for Chapter 8 of Data Mining by I. H. Witten, E. Frank and M. A. Hall Combining multiple models Bagging The basic idea
More informationData Mining with R. Decision Trees and Random Forests. Hugh Murrell
Data Mining with R Decision Trees and Random Forests Hugh Murrell reference books These slides are based on a book by Graham Williams: Data Mining with Rattle and R, The Art of Excavating Data for Knowledge
More informationA Constraint Based Agent for TAC-SCM
A Constraint Based Agent for TAC-SCM Student: David A. Burke Supervisor: Kenneth N. Brown Cork Constraint Computation Centre, Dept. of Comp. Science, UCC, Cork, Ireland d.burke@4c.ucc.ie, k.brown@cs.ucc.ie
More informationConstraint-based Scheduling *
Constraint-based Scheduling * Markus P.J. Fromherz Xerox PARC, 3333 Coyote Hill Road, Palo Alto, CA 94304, USA www.parc.com/fromherz Abstract Constraint-based scheduling has become the dominant form of
More informationSport Timetabling. Outline DM87 SCHEDULING, TIMETABLING AND ROUTING. Outline. Lecture 15. 1. Problem Definitions
Outline DM87 SCHEDULING, TIMETABLING AND ROUTING Lecture 15 Sport Timetabling 1. Problem Definitions Marco Chiarandini DM87 Scheduling, Timetabling and Routing 2 Problems we treat: single and double round-robin
More informationDiagnosis of Simple Temporal Networks
Diagnosis of Simple Temporal Networks Nico Roos 1 and Cees Witteveen 2 Abstract. In many domains successful execution of plans requires careful monitoring and repair. Diagnosis of plan execution supports
More informationChecking for Dimensional Correctness in Physics Equations
Checking for Dimensional Correctness in Physics Equations C.W. Liew Department of Computer Science Lafayette College liew@cs.lafayette.edu D.E. Smith Department of Computer Science Rutgers University dsmith@cs.rutgers.edu
More informationGenerating models of a matched formula with a polynomial delay
Generating models of a matched formula with a polynomial delay Petr Savicky Institute of Computer Science, Academy of Sciences of Czech Republic, Pod Vodárenskou Věží 2, 182 07 Praha 8, Czech Republic
More informationIntegrated maintenance scheduling for semiconductor manufacturing
Integrated maintenance scheduling for semiconductor manufacturing Andrew Davenport davenport@us.ibm.com Department of Business Analytics and Mathematical Science, IBM T. J. Watson Research Center, P.O.
More informationNoncommercial Software for Mixed-Integer Linear Programming
Noncommercial Software for Mixed-Integer Linear Programming J. T. Linderoth T. K. Ralphs December, 2004. Revised: January, 2005. Abstract We present an overview of noncommercial software tools for the
More informationLecture 10: Regression Trees
Lecture 10: Regression Trees 36-350: Data Mining October 11, 2006 Reading: Textbook, sections 5.2 and 10.5. The next three lectures are going to be about a particular kind of nonlinear predictive model,
More informationnpsolver A SAT Based Solver for Optimization Problems
npsolver A SAT Based Solver for Optimization Problems Norbert Manthey and Peter Steinke Knowledge Representation and Reasoning Group Technische Universität Dresden, 01062 Dresden, Germany peter@janeway.inf.tu-dresden.de
More informationCSE 4351/5351 Notes 7: Task Scheduling & Load Balancing
CSE / Notes : Task Scheduling & Load Balancing Task Scheduling A task is a (sequential) activity that uses a set of inputs to produce a set of outputs. A task (precedence) graph is an acyclic, directed
More informationA Column-Generation and Branch-and-Cut Approach to the Bandwidth-Packing Problem
[J. Res. Natl. Inst. Stand. Technol. 111, 161-185 (2006)] A Column-Generation and Branch-and-Cut Approach to the Bandwidth-Packing Problem Volume 111 Number 2 March-April 2006 Christine Villa and Karla
More informationDESIGN AND DEVELOPMENT OF CSP TECHNIQUES FOR FINDING ROBUST SOLUTIONS IN JOB-SHOP SCHEDULING PROBLEMS WITH OPERATORS
UNIVERSIDAD POLITÉCNICA DE VALENCIA DEPARTAMENTO DE SISTEMAS INFORMÁTICOS Y COMPUTACIÓN DESIGN AND DEVELOPMENT OF CSP TECHNIQUES FOR FINDING ROBUST SOLUTIONS IN JOB-SHOP SCHEDULING PROBLEMS WITH OPERATORS
More informationDecision Trees from large Databases: SLIQ
Decision Trees from large Databases: SLIQ C4.5 often iterates over the training set How often? If the training set does not fit into main memory, swapping makes C4.5 unpractical! SLIQ: Sort the values
More informationFUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT MINING SYSTEM
International Journal of Innovative Computing, Information and Control ICIC International c 0 ISSN 34-48 Volume 8, Number 8, August 0 pp. 4 FUZZY CLUSTERING ANALYSIS OF DATA MINING: APPLICATION TO AN ACCIDENT
More informationWORKFLOW ENGINE FOR CLOUDS
WORKFLOW ENGINE FOR CLOUDS By SURAJ PANDEY, DILEBAN KARUNAMOORTHY, and RAJKUMAR BUYYA Prepared by: Dr. Faramarz Safi Islamic Azad University, Najafabad Branch, Esfahan, Iran. Workflow Engine for clouds
More informationThe Bi-Objective Pareto Constraint
The Bi-Objective Pareto Constraint Renaud Hartert and Pierre Schaus UCLouvain, ICTEAM, Place Sainte Barbe 2, 1348 Louvain-la-Neuve, Belgium {renaud.hartert,pierre.schaus}@uclouvain.be Abstract. Multi-Objective
More informationPPD: Scheduling and Load Balancing 2
PPD: Scheduling and Load Balancing 2 Fernando Silva Computer Science Department Center for Research in Advanced Computing Systems (CRACS) University of Porto, FCUP http://www.dcc.fc.up.pt/~fds 2 (Some
More information! Solve problem to optimality. ! Solve problem in poly-time. ! Solve arbitrary instances of the problem. #-approximation algorithm.
Approximation Algorithms 11 Approximation Algorithms Q Suppose I need to solve an NP-hard problem What should I do? A Theory says you're unlikely to find a poly-time algorithm Must sacrifice one of three
More informationBinary Image Reconstruction
A network flow algorithm for reconstructing binary images from discrete X-rays Kees Joost Batenburg Leiden University and CWI, The Netherlands kbatenbu@math.leidenuniv.nl Abstract We present a new algorithm
More informationInteractive Timetabling
Interactive Timetabling Tomáš Müller, Roman Barták * Charles University Department of Theoretical Computer Science Malostranské náměstí 2/25, Praha 1, Czech Republic tomas.muller@st.mff.cuni.cz bartak@kti.mff.cuni.cz
More informationTutorial: Operations Research in Constraint Programming
Tutorial: Operations Research in Constraint Programming John Hooker Carnegie Mellon University May 2009 Revised June 2009 May 2009 Slide 1 Motivation Benders decomposition allows us to apply CP and OR
More informationScheduling of Mixed Batch-Continuous Production Lines
Université Catholique de Louvain Faculté des Sciences Appliquées Scheduling of Mixed Batch-Continuous Production Lines Thèse présentée en vue de l obtention du grade de Docteur en Sciences Appliquées par
More informationThe Minimum Consistent Subset Cover Problem and its Applications in Data Mining
The Minimum Consistent Subset Cover Problem and its Applications in Data Mining Byron J Gao 1,2, Martin Ester 1, Jin-Yi Cai 2, Oliver Schulte 1, and Hui Xiong 3 1 School of Computing Science, Simon Fraser
More informationUnique column combinations
Unique column combinations Arvid Heise Guest lecture in Data Profiling and Data Cleansing Prof. Dr. Felix Naumann Agenda 2 Introduction and problem statement Unique column combinations Exponential search
More informationCS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014)
CS Standards Crosswalk: CSTA K-12 Computer Science Standards and Oracle Java Programming (2014) CSTA Website Oracle Website Oracle Contact http://csta.acm.org/curriculum/sub/k12standards.html https://academy.oracle.com/oa-web-introcs-curriculum.html
More informationSolving the chemotherapy outpatient scheduling problem with constraint programming
Journal of Applied Operational Research (2014) 6(3), 135 144 Tadbir Operational Research Group Ltd. All rights reserved. www.tadbir.ca ISSN 1735-8523 (Print), ISSN 1927-0089 (Online) Solving the chemotherapy
More informationCreating a More Efficient Course Schedule at WPI Using Linear Optimization
Project Number: ACH1211 Creating a More Efficient Course Schedule at WPI Using Linear Optimization A Major Qualifying Project Report submitted to the Faculty of the WORCESTER POLYTECHNIC INSTITUTE in partial
More informationScheduling Home Health Care with Separating Benders Cuts in Decision Diagrams
Scheduling Home Health Care with Separating Benders Cuts in Decision Diagrams André Ciré University of Toronto John Hooker Carnegie Mellon University INFORMS 2014 Home Health Care Home health care delivery
More informationLABEL PROPAGATION ON GRAPHS. SEMI-SUPERVISED LEARNING. ----Changsheng Liu 10-30-2014
LABEL PROPAGATION ON GRAPHS. SEMI-SUPERVISED LEARNING ----Changsheng Liu 10-30-2014 Agenda Semi Supervised Learning Topics in Semi Supervised Learning Label Propagation Local and global consistency Graph
More informationModeling and Solving the Capacitated Vehicle Routing Problem on Trees
in The Vehicle Routing Problem: Latest Advances and New Challenges Modeling and Solving the Capacitated Vehicle Routing Problem on Trees Bala Chandran 1 and S. Raghavan 2 1 Department of Industrial Engineering
More informationAnalysis of an Artificial Hormone System (Extended abstract)
c 2013. This is the author s version of the work. Personal use of this material is permitted. However, permission to reprint/republish this material for advertising or promotional purpose or for creating
More informationLecture 3. Linear Programming. 3B1B Optimization Michaelmas 2015 A. Zisserman. Extreme solutions. Simplex method. Interior point method
Lecture 3 3B1B Optimization Michaelmas 2015 A. Zisserman Linear Programming Extreme solutions Simplex method Interior point method Integer programming and relaxation The Optimization Tree Linear Programming
More informationEfficiency of algorithms. Algorithms. Efficiency of algorithms. Binary search and linear search. Best, worst and average case.
Algorithms Efficiency of algorithms Computational resources: time and space Best, worst and average case performance How to compare algorithms: machine-independent measure of efficiency Growth rate Complexity
More informationOptimal Scheduling for Dependent Details Processing Using MS Excel Solver
BULGARIAN ACADEMY OF SCIENCES CYBERNETICS AND INFORMATION TECHNOLOGIES Volume 8, No 2 Sofia 2008 Optimal Scheduling for Dependent Details Processing Using MS Excel Solver Daniela Borissova Institute of
More informationa 11 x 1 + a 12 x 2 + + a 1n x n = b 1 a 21 x 1 + a 22 x 2 + + a 2n x n = b 2.
Chapter 1 LINEAR EQUATIONS 1.1 Introduction to linear equations A linear equation in n unknowns x 1, x,, x n is an equation of the form a 1 x 1 + a x + + a n x n = b, where a 1, a,..., a n, b are given
More informationLoad Balancing. Load Balancing 1 / 24
Load Balancing Backtracking, branch & bound and alpha-beta pruning: how to assign work to idle processes without much communication? Additionally for alpha-beta pruning: implementing the young-brothers-wait
More informationClustering. 15-381 Artificial Intelligence Henry Lin. Organizing data into clusters such that there is
Clustering 15-381 Artificial Intelligence Henry Lin Modified from excellent slides of Eamonn Keogh, Ziv Bar-Joseph, and Andrew Moore What is Clustering? Organizing data into clusters such that there is
More informationA. TRUE-FALSE: GROUP 2 PRACTICE EXAMPLES FOR THE REVIEW QUIZ:
GROUP 2 PRACTICE EXAMPLES FOR THE REVIEW QUIZ: Review Quiz will contain very similar question as below. Some questions may even be repeated. The order of the questions are random and are not in order of
More informationAlgorithm Design and Analysis
Algorithm Design and Analysis LECTURE 27 Approximation Algorithms Load Balancing Weighted Vertex Cover Reminder: Fill out SRTEs online Don t forget to click submit Sofya Raskhodnikova 12/6/2011 S. Raskhodnikova;
More informationPlanning and Scheduling in the Digital Factory
Institute for Computer Science and Control Hungarian Academy of Sciences Berlin, May 7, 2014 1 Why "digital"? 2 Some Planning and Scheduling problems 3 Planning for "one-of-a-kind" products 4 Scheduling
More informationCS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing
CS Master Level Courses and Areas The graduate courses offered may change over time, in response to new developments in computer science and the interests of faculty and students; the list of graduate
More information