Tommy Messelis * Stefaan Haspeslagh Patrick De Causmaecker *

Slides:



Advertisements
Similar presentations
Analysis of Algorithms
Advertisements

Artificial Intelligence Chapter 13 The Propositional Calculus Biointelligence Lab School of Computer Sci. & Eng. Seoul National University.
Propositional and First Order Reasoning. Terminology Propositional variable: boolean variable (p) Literal: propositional variable or its negation p 
“Using Weighted MAX-SAT Engines to Solve MPE” -- by James D. Park Shuo (Olivia) Yang.
PAPER BY : CHRISTOPHER R’E NILESH DALVI DAN SUCIU International Conference on Data Engineering (ICDE), 2007 PRESENTED BY : JITENDRA GUPTA.
Models and Propositional Logic In propositional logic, a model in general simply fixes the truth value – true or false – for every proposition symbol.
Methods of Proof Chapter 7, second half.. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound)
Methods of Proof Chapter 7, Part II. Proof methods Proof methods divide into (roughly) two kinds: Application of inference rules: Legitimate (sound) generation.
CPSC 422, Lecture 21Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 21 Mar, 4, 2015 Slide credit: some slides adapted from Stuart.
Properties of SLUR Formulae Ondřej Čepek, Petr Kučera, Václav Vlček Charles University in Prague SOFSEM 2012 January 23, 2012.
Proof methods Proof methods divide into (roughly) two kinds: –Application of inference rules Legitimate (sound) generation of new sentences from old Proof.
3/25  Monday 3/31 st 11:30AM BYENG 210 Talk by Dana Nau Planning for Interactions among Autonomous Agents.
1 Boolean Satisfiability in Electronic Design Automation (EDA ) By Kunal P. Ganeshpure.
Algorithms in Exponential Time. Outline Backtracking Local Search Randomization: Reducing to a Polynomial-Time Case Randomization: Permuting the Evaluation.
NP-Complete Problems Reading Material: Chapter 10 Sections 1, 2, 3, and 4 only.
Existential Graphs and Davis-Putnam April 3, 2002 Bram van Heuveln Department of Cognitive Science.
The Theory of NP-Completeness
NP-Complete Problems Problems in Computer Science are classified into
Methods of Proof Chapter 7, second half.
1 Discrete Structures CS 280 Example application of probability: MAX 3-SAT.
IT University of Copenhagen Lecture 8: Binary Decision Diagrams 1. Classical Boolean expression representations 2. If-then-else Normal Form (INF) 3. Binary.
Daniel Kroening and Ofer Strichman Decision Procedure
SAT Solver Math Foundations of Computer Science. 2 Boolean Expressions  A Boolean expression is a Boolean function  Any Boolean function can be written.
Satisfiability Introduction to Artificial Intelligence COS302 Michael L. Littman Fall 2001.
Quantified Formulas - Decision Procedure Daniel Kroening, Ofer Strichman Presented by Changki Hong 07 NOV 08.
INTRODUCTION TO ARTIFICIAL INTELLIGENCE COS302 MICHAEL L. LITTMAN FALL 2001 Satisfiability.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 3 Logic Representations (Part 2)
Solvers for the Problem of Boolean Satisfiability (SAT) Will Klieber Aug 31, 2011 TexPoint fonts used in EMF. Read the TexPoint manual before you.
Week 10Complexity of Algorithms1 Hard Computational Problems Some computational problems are hard Despite a numerous attempts we do not know any efficient.
CP Summer School Modelling for Constraint Programming Barbara Smith 4. Combining Viewpoints, Modelling Advice.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module Logic Representations.
LECTURE LECTURE Propositional Logic Syntax 1 Source: MIT OpenCourseWare.
LDK R Logics for Data and Knowledge Representation Propositional Logic: Reasoning First version by Alessandro Agostini and Fausto Giunchiglia Second version.
NP-Complete Problems. Running Time v.s. Input Size Concern with problems whose complexity may be described by exponential functions. Tractable problems.
T. Messelis, S. Haspeslagh, P. De Causmaecker B. Bilgin, G. Vanden Berghe.
Extra slides for Chapter 3: Propositional Calculus & Normal Forms Based on Prof. Lila Kari’s slides For CS2209A, 2009 By Dr. Charles Ling;
Performance prediction for real world optimisation problems Tommy Messelis Stefaan Haspeslagh Burak Bilgin Patrick De Causmaecker Greet Vanden Berghe.
CS 3343: Analysis of Algorithms Lecture 25: P and NP Some slides courtesy of Carola Wenk.
CPSC 422, Lecture 21Slide 1 Intelligent Systems (AI-2) Computer Science cpsc422, Lecture 21 Oct, 30, 2015 Slide credit: some slides adapted from Stuart.
Review of Propositional Logic Syntax
Patrick De Causmaecker Stefaan Haspeslagh Tommy Messelis.
© Copyright 2008 STI INNSBRUCK Intelligent Systems Propositional Logic.
Planning as Satisfiability (SAT-Plan). SAT-Plan Translate the planning problem into a satisfiability problem for length n of Plan garb 0 (proposition)present.
28.
Solving the Logic Satisfiability problem Solving the Logic Satisfiability problem Jesus De Loera.
Satisfiability and SAT Solvers CS 270 Math Foundations of CS Jeremy Johnson.
NPC.
EEL 5937 Content languages EEL 5937 Multi Agent Systems Lecture 10, Feb. 6, 2003 Lotzi Bölöni.
Inference in Propositional Logic (and Intro to SAT) CSE 473.
Tommy Messelis * Stefaan Haspeslagh Burak Bilgin Patrick De Causmaecker Greet Vanden Berghe *
2009/6/30 CAV Quantifier Elimination via Functional Composition Jie-Hong Roland Jiang Dept. of Electrical Eng. / Grad. Inst. of Electronics Eng.
CS.462 Artificial Intelligence SOMCHAI THANGSATHITYANGKUL Lecture 04 : Logic.
Logical Agents. Outline Knowledge-based agents Logic in general - models and entailment Propositional (Boolean) logic Equivalence, validity, satisfiability.
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
Inference in Propositional Logic (and Intro to SAT)
SAT problem SAT – Boolean satisfiability problem
Richard Anderson Lecture 26 NP-Completeness
Polynomial-Time Reduction
The Propositional Calculus
Richard Anderson Lecture 26 NP-Completeness
ARTIFICIAL INTELLIGENCE
Propositional Calculus: Boolean Algebra and Simplification
ICS 353: Design and Analysis of Algorithms
Richard Anderson Lecture 25 NP-Completeness
NP-Completeness Proofs
How Hard Can It Be?.
Chapter 8 NP and Computational Intractability
Back to “Serious” Topics…
CSE 6408 Advanced Algorithms.
Instructor: Aaron Roth
Presentation transcript:

Tommy Messelis * Stefaan Haspeslagh Patrick De Causmaecker *

Outline positioning of this research / our motivation Nurse Rostering Problem (NRP) propositional SATisfiability problem (SAT) translation scheme conclusions

scope performance prediction for real world scheduling and timetabling building empirical hardness models for various established solution methods mapping instance features readily available / efficiently computable properties of the problem instances onto performance criteria how good does an algorithm do, how much time does it need, what solution quality can it achieve given a fixed time algorithm selection problem: how to choose the best algorithm for a given problem instance?

scope feature set is extremely important for the quality of the predictions come up with very good features expert knowledge eliminate this expert by transforming the problem to another (better studied) problem use an existing feature set on this abstract representation

Nurse Rostering Problem planning horizon: time units (corresponding to shifts) e.g. 14 days, 3 shift structure (early/late/night) total of 42 time units set of nurses need to be assigned to these shifts demands minimum needed occupation for all time units constraints hard: cannot be violated a nurse cannot work in 2 places at the same time soft: can be violated at a certain cost a nurse should not work more than 5 days in a row find an assignment that satisfies all hard constraints and as many soft constraints as possible

Nurse Rostering Problem structural constraint types consecutiveness between total demands equal to total constraints, but dealing with time units instead of individual nurses other constraints nurse preferences, skill requirements,...

Nurse Rostering Problem MonTueWedThuFriSatSun Nurse1EEEEELL Nurse2LLLLLNN Nurse3NNELE... demands Example: incomplete roster not all demands are (yet) satisfied some nurses work already more than allowed

propositional SATisfiability a logical formula on boolean variables in Conjunctive Normal Form (CNF) a CNF formula is a conjunction of clauses: C 1 ∧ C 2 ∧... ∧ C N each clause C i is a disjunction of literals: L 1 ∨ L 2 ∨... ∨ L M each literal L j is a boolean variable or its negation: v 10 or ¬ v 16 find a truth assignment for the set of boolean variables so that the formula evaluates true

outline so far the nurse rostering problem the propositional satisfiability problem now getting from the one problem into the other

from NRP to SAT decision variables for each time unit t and each nurse p a boolean variable v t,j that indicates whether nurse p works shift t problem constraints need to be imposed onto these variables, expressed using CNF clauses MonTueWed time unit Nurse1v 1,1 v 2,1 v 3,1 v 4,1 v 5,1 v 6,1 v 7,1 v 8,1 v 9,1 Nurse2v 1,2 v 2,2 v 3,2 v 4,2 v 5,2 v 6,2 v 7,2 v 8,2 v 9,2 Nurse3v 1,3 v 2,3 v 3,3 v 4,3 v 5,3 v 6,3 v 7,3 v 8,3 v 9,3...

numberings represent (multiple) time units by a number a numbering defines the subject of a constraint N 1 will deal with working days N 2 looks only at early shifts N 3 handles only tuesdays MonTueWed time unit Numbering N Numbering N 2 1UU2UU3UU Numbering N 3 UUU111UUU...

numberings: notation a solution (assignment of some shifts to a nurse) induces a set of numbers (called events) an event sequence is a row of events, conserving the timely order e 1, e 2,..., e m (e.g. 1,2,5,6,7) an event sequence is contiguously ascending when for all j holds: e j – e j-1 = 1 (e.g. 1,2,3,4,5) constraints can be expressed using event sets and event sequences

example assignment Numbering N 1 induces the event set {1,2,3,4,5,7} max_consecutive_working_days = 5 there is no contiguously ascending event sequence of length 6 : satisfied Numbering N 2 induces the event set {1,2,3,4,5} max_total_early = 4 the event set should not contain more than 4 events : violated MonTueWedThuFriSatSun time unit N1N N2N2 1UU2UU3UU4UU5UU6UU7UU Nurse2 ✓✗✗✓✗✗✓✗✗✓✗✗✓✗✗✗✗✗✗✗✓

from numbers to clauses for each number i, we introduce a new variable t i which indicates whether the number i occurs in the event set: t i ⇔ v 3i ∨ v 3i-1 ∨ v 3i-2 or in CNF format, the conjunction of 4 clauses: ¬ t i ∨ v 3i ∨ v 3i-1 ∨ v 3i-2 t i ∨ ¬ v 3i t i ∨ ¬ v 3i-1 t i ∨ ¬ v 3i-2 for n numbers, we generate n variables and O(n) clauses

from numbers to clauses consecutiveness constraints are easily represented by CNF clauses: max_cons_working_days = 4 ¬ t i ∨ ¬ t i+1 ∨ ¬ t i+2 ∨ ¬ t i+3 ∨ ¬ t i+4 for i ∈ {1..(n-4)} (in a row of 5 consecutive days, not all t i may be true) min_cons_working_days = 2 t i ∨ ¬ t i+1 ∨ t i+2 for i ∈ {1..(n-2)} (in a row of 3 consecutive days, the middle t i may not be true without one of the border variables) for n numbers, we generate O(n) clauses (no extra variables)

from numbers to clauses between constraints are very similar O(n) clauses and no extra variables total constraints are a bit harder max_total = 6 no subset of variables t i of size 6 can have all variables set true min_total = 4 no subset of variables t i of size n-4 can have all variables set false leads to an exponential number of clauses: O( 2 n ) ⇒ we need a better representation with fewer clauses

total constraints at least i events in the complete set ⇔ at least k left OR at least l right, forall k,l: k+l = i+1 instead of expressing the constraint in function of the complete set of numbers, we now use sets of half the size doing this recursively, until the sets are of size 1, leads to an efficient schema (the variable t x represents exactly if the event x is present) O(nlogn) variables and O(n 2 ) clauses ✓✗✗✓✗✗✓✗✗✓✗✗✓✗ ✗✗✓✗✗✓✗ ✓✗✗✓✗✗✓ 4 ✓ 12 ✗

conclusions we represented the problem by boolean variables we used numberings to express all kinds of constraints on the solutions each number introduced an extra variable and some clauses in total n variables and 0(n) clauses constraints on the numberings were then translated into CNF clauses consecutiveness, between constraints O(n) clauses, no extra variables total constraints need special attention O(nlogn) auxiliary variables and 0(n 2 ) clauses the overall process of translating NRP instances into CNF clauses needs O(nlogn) variables and O(n 2 ) clauses, which is an efficient translation schema

Thank you! Questions?