SlideShare a Scribd company logo
1 of 41
Download to read offline
Reasoning with 
Conditional Time-intervals 
P. Laborie and J. Rogerie 
[plaborie,jrogerie]@ilog.fr
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Overview 
 Motivations 
 Model 
 Constraint Propagation 
 Extensions & Conclusion
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Some activities can be left unperformed 
A C 
B
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Some activities can be left unperformed 
A C 
B
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Some activities can be left unperformed 
A 
B
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Some parts of the schedule can be left unperformed 
A 
B 
C 
D 
E
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Some parts of the schedule can be left unperformed 
A 
B 
C 
D 
E
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Some parts of the schedule can be left unperformed 
A 
B
C 
D 
E 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Some parts of the schedule can be left unperformed 
A 
B 
 Dependencies: exec(E)exec(C)exec(D)
C: Mode 1 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Alternative combination of resources 
A 
B 
C 
XOR 
C: Mode 2 
C: Mode 3
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Alternative combination of resources 
A 
B 
CC:: MMooddee 1
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Alternative combination of resources 
A 
B 
CC:: MMooddee 22
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Alternative combination of resources 
A 
B 
CC:: MMooddee 33
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Alternative recipes (common in manufacturing) 
A 
B 
XOR 
C 
C: Recipe 1 
Op11 Op12 Op13 
C: Recipe 2 
Op23 
Op21 Op22
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Alternative recipes (common in manufacturing) 
A 
B 
Recipe C: recipe 1 
Op11 Op12 Op13
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Optional time-intervals in scheduling: 
 Alternative recipes (common in manufacturing) 
A 
B 
C: Recipe 2 
Op23 
Op21 Op22
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
Motivations 
 Objective: Make it easier to model and solve 
scheduling problems involving optional 
activities/tasks/processes/recipes/… 
 Constraint Optimization framework 
 Basic ingredients: 
 Optional time-intervals variables (a,b,c,… ) 
 Logical constraints (exec(a)  exec(b)) 
 Precedence constraints (endBeforeStart(a,b)) 
 Decomposition constraints (span(a,{b1,…bn})) 
 Alternative constraints (alternative(a,{b1,…bn}))
Focus of this talk 
MODEL PROBLEM SOLVING 
Basic constraints: 
logical, precedence, 
span, alternative Basic constraint 
Time-interval 
variables 
propagation 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
What we won’t talk about here 
MODEL PROBLEM SOLVING 
Resource-related 
Basic constraints: 
logical, precedence, 
span, alternative Basic constraint 
Time-interval 
variables 
propagation 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
constraints: 
sequencing, cumul, 
states, calendars 
Resource-related 
constraint 
propagation 
Search & 
optimization 
techniques
Model: Time interval variables 
 Extension of classical CSPs 
 A new type of first class citizen decision 
variable: Time-interval variable 
 Domain of values for a time-interval variable a : 
Dom(a)  {}  { [s,e) | s,eℤ, s≤e } 
Non executed Interval of integers 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Model: Time interval variables 
 Domain of values for a time-interval variable a : 
Dom(a)  {}  { [s,e) | s,eℤ, s≤e } 
 Notations: Let a be a fixed time-interval variable 
 If a={[s,e)} (a is executed), we denote: 
x(a)=1, s(a)=s, e(a)=e, d(a)=e-s 
 If a={} (a is non-executed), we denote: 
x(a)=0 (in this case, s(a),e(a),d(a) are meaningless) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Model: Logical constraints 
 Execution unary constraint exec(a) means that a 
is executed (x(a)=1) 
 2-SAT clauses over execution constraints: 
[¬]exec(a)  [¬]exec(b) 
 Expressivity: 
 Same execution status: 
¬exec(a)exec(b),exec(a)¬exec(b) 
 Incompatibility: ¬exec(a)¬exec(b) 
 Implication: ¬exec(a)exec(b) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Model: Precedence constraints 
 Simple Precedence Constraints ti+z≤tj reified by 
execution statuses 
 Example: endBeforeStart(a,b,z) means 
x(a)x(b)  e(a)+z≤s(b) 
 startBeforeStart, startBeforeEnd 
endBeforeStart, endBeforeEnd 
startAtStart, startAtEnd 
endAtStart, endAtEnd 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Model: Span constraint 
 Span constraint span(a,{b1,…,bn}) means that if a 
is executed, it spans all executed intervals from 
{b1,…,bn}. Interval a is not executed iff none of 
intervals {b1,…,bn} is executed. 
b1 b4 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
b3 
b5 
a 
b2
Model: Alternative constraint 
 Alternative constraint alternative(a,{b1,…,bn}) 
means that if a is executed, then exactly one of 
the {b1,…,bn} is executed and synchronized with 
a. Interval a is not executed iff none of intervals 
{b1,…,bn} is executed. 
a 
b1 
b2 
b3 
XOR 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Model: Simple example 
 Inspired from [Barták&Čepek 2007] 
CollectMaterial (1) 
GetTube 
MakeTube 
SawTube (30) XOR 
ClearTube (20) 
SawRod (10) 
ClearRod (2) 
WeldRod (15) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
BuyTube (40) 
WeldTube (15) 
AssemblePiston (5) 
ShipPiston (0) 
CollectKit (1) 
AssembleKit (5) 
Deadline=70
Model: Simple example (ILOG OPL Studio) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Constraint Propagation: Interval variables 
 Time interval variable domain representation: 
tuple of ranges: 
 [xmin,xmax][0,1]: current execution status 
 [smin,smax] ℤ: conditional domain of start time would 
the time-interval be executed 
 [emin,emax] ℤ: conditional domain of end time would 
the time-interval be executed 
 [dmin,dmax] ℤ+: conditional domain of duration would 
the time-interval be executed 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Constraint Propagation: Logical network 
 Logical constraints are aggregated in an 
implication graph: all 2-SAT logical constraints 
[¬]exec(a)  [¬]exec(b) are translated as 
implications ( ¬[¬]exec(a)  [¬]exec(b) ) 
 Incremental transitive closure of the 
implication graph allows detecting infeasibilities 
and querying in O(1) whether exec(a)  exec(b) 
for any (a,b) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Constraint Propagation: Temporal network 
 Precedence constraints are aggregated in a temporal 
network 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Constraint Propagation: Temporal network 
 Precedence constraints are aggregated in a temporal 
network 
 Conditional reasoning: 
From logical network 
exec(a)exec(b) 
a b endBeforeStart(a,b) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Constraint Propagation: Temporal network 
 Precedence constraints are aggregated in a temporal 
network 
 Conditional reasoning: 
From logical network 
exec(a)exec(b) 
a b endBeforeStart(a,b) 
 Propagation on the conditional bounds of a (would a be 
executed) can assume that b will be executed too, thus: 
emax(a)  min(emax(a), smax(b)) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Constraint Propagation: Temporal network 
 Precedence constraints are aggregated in a temporal 
network 
 Conditional reasoning: 
From logical network 
exec(a)exec(b) 
a b endBeforeStart(a,b) 
 Propagation on the conditional bounds of a (would a be 
executed) can assume that b will be executed too, thus: 
emax(a)  min(emax(a), smax(b)) 
 Bounds are propagated even on time intervals with 
still undecided execution status ! 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Model: Simple example 
 Inspired from [Barták&Čepek 2007] 
CollectMaterial (1) 
GetTube 
MakeTube 
SawTube (30) XOR 
ClearTube (20) 
SawRod (10) 
ClearRod (2) 
WeldRod (15) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
BuyTube (40) 
WeldTube (15) 
AssemblePiston (5) 
ShipPiston (0) 
CollectKit (1) 
AssembleKit (5) 
Deadline=70
Model: Simple example 
 Inspired from [Barták&Čepek 2007] 
CollectMaterial (1) 
GetTube 
BBuuyyTTuubbee ((4400)) 
MakeTube 
SawTube (30) XOR 
ClearTube (20) 
SawRod (10) 
ClearRod (2) 
WeldRod (15) 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 
BuyTube (40) 
WeldTube (15) 
AssemblePiston (5) 
ShipPiston (0) 
CollectKit (1) 
AssembleKit (5) 
Deadline=70
Extensions & Conclusion 
 Conditional time-intervals are the foundation of 
the new version of ILOG CP Optimizer (2.0) for 
modeling and solving detailed scheduling 
problems 
 Model extensions: 
 Resources (sequencing, cumulative, state reasoning) 
 Calendars (resource efficiency curves, days off, etc.) 
 Expressions to use interval bounds (start, end, etc.) in 
classical CSP constraints on integer variables 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Extensions & Conclusion 
 Conditional time-intervals are the foundation of 
the new version of ILOG CP Optimizer (2.0) for 
modeling and solving detailed scheduling 
problems 
 Search: 
 Extension of SA-LNS [Laborie&Godard 2007] to handle 
optional time-interval variables 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Example: Multi-Mode RCPSP 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Example: Multi-Mode RCPSP 
Data 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Example: Multi-Mode RCPSP 
Model 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
Example: Multi-Mode RCPSP 
Trial Version: 
http://ilog.com/products/oplstudio/trial.cfm 
FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008

More Related Content

More from Philippe Laborie

Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...
Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...
Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...Philippe Laborie
 
Industrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint ProgrammingIndustrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint ProgrammingPhilippe Laborie
 
ICAPS-2020 Industry Session
ICAPS-2020 Industry SessionICAPS-2020 Industry Session
ICAPS-2020 Industry SessionPhilippe Laborie
 
CP Optimizer pour la planification et l'ordonnancement
CP Optimizer pour la planification et l'ordonnancementCP Optimizer pour la planification et l'ordonnancement
CP Optimizer pour la planification et l'ordonnancementPhilippe Laborie
 
Planning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPlanning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPhilippe Laborie
 
Recent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP OptimizerRecent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP OptimizerPhilippe Laborie
 
Objective Landscapes for Constraint Programming
Objective Landscapes for Constraint ProgrammingObjective Landscapes for Constraint Programming
Objective Landscapes for Constraint ProgrammingPhilippe Laborie
 
An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...
An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...
An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...Philippe Laborie
 
CP Optimizer: a generic optimization engine at the crossroad of AI and OR fo...
CP Optimizer: a generic optimization engine at the crossroad of AI and OR  fo...CP Optimizer: a generic optimization engine at the crossroad of AI and OR  fo...
CP Optimizer: a generic optimization engine at the crossroad of AI and OR fo...Philippe Laborie
 
Solving Industrial Scheduling Problems with Constraint Programming
Solving Industrial Scheduling Problems with Constraint ProgrammingSolving Industrial Scheduling Problems with Constraint Programming
Solving Industrial Scheduling Problems with Constraint ProgrammingPhilippe Laborie
 
New Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling ProblemNew Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling ProblemPhilippe Laborie
 
A (Not So Short) Introduction to CP Optimizer for Scheduling
A (Not So Short) Introduction to CP Optimizer for SchedulingA (Not So Short) Introduction to CP Optimizer for Scheduling
A (Not So Short) Introduction to CP Optimizer for SchedulingPhilippe Laborie
 
Optimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applicationsOptimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applicationsPhilippe Laborie
 
An introduction to CP Optimizer
An introduction to CP OptimizerAn introduction to CP Optimizer
An introduction to CP OptimizerPhilippe Laborie
 
Accelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer ModelsAccelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer ModelsPhilippe Laborie
 
Model Presolve, Warmstart and Conflict Refining in CP Optimizer
Model Presolve, Warmstart and Conflict Refining in CP OptimizerModel Presolve, Warmstart and Conflict Refining in CP Optimizer
Model Presolve, Warmstart and Conflict Refining in CP OptimizerPhilippe Laborie
 
An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...
An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...
An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...Philippe Laborie
 
Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...Philippe Laborie
 
IBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three Problems
IBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three ProblemsIBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three Problems
IBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three ProblemsPhilippe Laborie
 

More from Philippe Laborie (19)

Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...
Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...
Self-Adapting Large Neighborhood Search: Application to single-mode schedulin...
 
Industrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint ProgrammingIndustrial project and machine scheduling with Constraint Programming
Industrial project and machine scheduling with Constraint Programming
 
ICAPS-2020 Industry Session
ICAPS-2020 Industry SessionICAPS-2020 Industry Session
ICAPS-2020 Industry Session
 
CP Optimizer pour la planification et l'ordonnancement
CP Optimizer pour la planification et l'ordonnancementCP Optimizer pour la planification et l'ordonnancement
CP Optimizer pour la planification et l'ordonnancement
 
Planning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPlanning/Scheduling with CP Optimizer
Planning/Scheduling with CP Optimizer
 
Recent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP OptimizerRecent advances on large scheduling problems in CP Optimizer
Recent advances on large scheduling problems in CP Optimizer
 
Objective Landscapes for Constraint Programming
Objective Landscapes for Constraint ProgrammingObjective Landscapes for Constraint Programming
Objective Landscapes for Constraint Programming
 
An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...
An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...
An Update on the Comparison of MIP, CP and Hybrid Approaches for Mixed Resour...
 
CP Optimizer: a generic optimization engine at the crossroad of AI and OR fo...
CP Optimizer: a generic optimization engine at the crossroad of AI and OR  fo...CP Optimizer: a generic optimization engine at the crossroad of AI and OR  fo...
CP Optimizer: a generic optimization engine at the crossroad of AI and OR fo...
 
Solving Industrial Scheduling Problems with Constraint Programming
Solving Industrial Scheduling Problems with Constraint ProgrammingSolving Industrial Scheduling Problems with Constraint Programming
Solving Industrial Scheduling Problems with Constraint Programming
 
New Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling ProblemNew Results for the GEO-CAPE Observation Scheduling Problem
New Results for the GEO-CAPE Observation Scheduling Problem
 
A (Not So Short) Introduction to CP Optimizer for Scheduling
A (Not So Short) Introduction to CP Optimizer for SchedulingA (Not So Short) Introduction to CP Optimizer for Scheduling
A (Not So Short) Introduction to CP Optimizer for Scheduling
 
Optimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applicationsOptimization: from mathematical tools to real applications
Optimization: from mathematical tools to real applications
 
An introduction to CP Optimizer
An introduction to CP OptimizerAn introduction to CP Optimizer
An introduction to CP Optimizer
 
Accelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer ModelsAccelerating the Development of Efficient CP Optimizer Models
Accelerating the Development of Efficient CP Optimizer Models
 
Model Presolve, Warmstart and Conflict Refining in CP Optimizer
Model Presolve, Warmstart and Conflict Refining in CP OptimizerModel Presolve, Warmstart and Conflict Refining in CP Optimizer
Model Presolve, Warmstart and Conflict Refining in CP Optimizer
 
An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...
An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...
An Optimal Iterative Algorithm for Extracting MUCs in a Black-box Constraint ...
 
Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...Conditional interval variables: A powerful concept for modeling and solving c...
Conditional interval variables: A powerful concept for modeling and solving c...
 
IBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three Problems
IBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three ProblemsIBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three Problems
IBM ILOG CP Optimizer for Detailed Scheduling Illustrated on Three Problems
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024The Digital Insurer
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 

Recently uploaded (20)

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 

Reasoning with Conditional Time-intervals

  • 1. Reasoning with Conditional Time-intervals P. Laborie and J. Rogerie [plaborie,jrogerie]@ilog.fr
  • 2. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Overview  Motivations  Model  Constraint Propagation  Extensions & Conclusion
  • 3. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Some activities can be left unperformed A C B
  • 4. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Some activities can be left unperformed A C B
  • 5. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Some activities can be left unperformed A B
  • 6. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Some parts of the schedule can be left unperformed A B C D E
  • 7. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Some parts of the schedule can be left unperformed A B C D E
  • 8. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Some parts of the schedule can be left unperformed A B
  • 9. C D E FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Some parts of the schedule can be left unperformed A B  Dependencies: exec(E)exec(C)exec(D)
  • 10. C: Mode 1 FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Alternative combination of resources A B C XOR C: Mode 2 C: Mode 3
  • 11. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Alternative combination of resources A B CC:: MMooddee 1
  • 12. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Alternative combination of resources A B CC:: MMooddee 22
  • 13. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Alternative combination of resources A B CC:: MMooddee 33
  • 14. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Alternative recipes (common in manufacturing) A B XOR C C: Recipe 1 Op11 Op12 Op13 C: Recipe 2 Op23 Op21 Op22
  • 15. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Alternative recipes (common in manufacturing) A B Recipe C: recipe 1 Op11 Op12 Op13
  • 16. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Optional time-intervals in scheduling:  Alternative recipes (common in manufacturing) A B C: Recipe 2 Op23 Op21 Op22
  • 17. FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 Motivations  Objective: Make it easier to model and solve scheduling problems involving optional activities/tasks/processes/recipes/…  Constraint Optimization framework  Basic ingredients:  Optional time-intervals variables (a,b,c,… )  Logical constraints (exec(a)  exec(b))  Precedence constraints (endBeforeStart(a,b))  Decomposition constraints (span(a,{b1,…bn}))  Alternative constraints (alternative(a,{b1,…bn}))
  • 18. Focus of this talk MODEL PROBLEM SOLVING Basic constraints: logical, precedence, span, alternative Basic constraint Time-interval variables propagation FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 19. What we won’t talk about here MODEL PROBLEM SOLVING Resource-related Basic constraints: logical, precedence, span, alternative Basic constraint Time-interval variables propagation FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 constraints: sequencing, cumul, states, calendars Resource-related constraint propagation Search & optimization techniques
  • 20. Model: Time interval variables  Extension of classical CSPs  A new type of first class citizen decision variable: Time-interval variable  Domain of values for a time-interval variable a : Dom(a)  {}  { [s,e) | s,eℤ, s≤e } Non executed Interval of integers FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 21. Model: Time interval variables  Domain of values for a time-interval variable a : Dom(a)  {}  { [s,e) | s,eℤ, s≤e }  Notations: Let a be a fixed time-interval variable  If a={[s,e)} (a is executed), we denote: x(a)=1, s(a)=s, e(a)=e, d(a)=e-s  If a={} (a is non-executed), we denote: x(a)=0 (in this case, s(a),e(a),d(a) are meaningless) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 22. Model: Logical constraints  Execution unary constraint exec(a) means that a is executed (x(a)=1)  2-SAT clauses over execution constraints: [¬]exec(a)  [¬]exec(b)  Expressivity:  Same execution status: ¬exec(a)exec(b),exec(a)¬exec(b)  Incompatibility: ¬exec(a)¬exec(b)  Implication: ¬exec(a)exec(b) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 23. Model: Precedence constraints  Simple Precedence Constraints ti+z≤tj reified by execution statuses  Example: endBeforeStart(a,b,z) means x(a)x(b)  e(a)+z≤s(b)  startBeforeStart, startBeforeEnd endBeforeStart, endBeforeEnd startAtStart, startAtEnd endAtStart, endAtEnd FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 24. Model: Span constraint  Span constraint span(a,{b1,…,bn}) means that if a is executed, it spans all executed intervals from {b1,…,bn}. Interval a is not executed iff none of intervals {b1,…,bn} is executed. b1 b4 FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 b3 b5 a b2
  • 25. Model: Alternative constraint  Alternative constraint alternative(a,{b1,…,bn}) means that if a is executed, then exactly one of the {b1,…,bn} is executed and synchronized with a. Interval a is not executed iff none of intervals {b1,…,bn} is executed. a b1 b2 b3 XOR FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 26. Model: Simple example  Inspired from [Barták&Čepek 2007] CollectMaterial (1) GetTube MakeTube SawTube (30) XOR ClearTube (20) SawRod (10) ClearRod (2) WeldRod (15) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 BuyTube (40) WeldTube (15) AssemblePiston (5) ShipPiston (0) CollectKit (1) AssembleKit (5) Deadline=70
  • 27. Model: Simple example (ILOG OPL Studio) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 28. Constraint Propagation: Interval variables  Time interval variable domain representation: tuple of ranges:  [xmin,xmax][0,1]: current execution status  [smin,smax] ℤ: conditional domain of start time would the time-interval be executed  [emin,emax] ℤ: conditional domain of end time would the time-interval be executed  [dmin,dmax] ℤ+: conditional domain of duration would the time-interval be executed FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 29. Constraint Propagation: Logical network  Logical constraints are aggregated in an implication graph: all 2-SAT logical constraints [¬]exec(a)  [¬]exec(b) are translated as implications ( ¬[¬]exec(a)  [¬]exec(b) )  Incremental transitive closure of the implication graph allows detecting infeasibilities and querying in O(1) whether exec(a)  exec(b) for any (a,b) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 30. Constraint Propagation: Temporal network  Precedence constraints are aggregated in a temporal network FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 31. Constraint Propagation: Temporal network  Precedence constraints are aggregated in a temporal network  Conditional reasoning: From logical network exec(a)exec(b) a b endBeforeStart(a,b) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 32. Constraint Propagation: Temporal network  Precedence constraints are aggregated in a temporal network  Conditional reasoning: From logical network exec(a)exec(b) a b endBeforeStart(a,b)  Propagation on the conditional bounds of a (would a be executed) can assume that b will be executed too, thus: emax(a)  min(emax(a), smax(b)) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 33. Constraint Propagation: Temporal network  Precedence constraints are aggregated in a temporal network  Conditional reasoning: From logical network exec(a)exec(b) a b endBeforeStart(a,b)  Propagation on the conditional bounds of a (would a be executed) can assume that b will be executed too, thus: emax(a)  min(emax(a), smax(b))  Bounds are propagated even on time intervals with still undecided execution status ! FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 34. Model: Simple example  Inspired from [Barták&Čepek 2007] CollectMaterial (1) GetTube MakeTube SawTube (30) XOR ClearTube (20) SawRod (10) ClearRod (2) WeldRod (15) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 BuyTube (40) WeldTube (15) AssemblePiston (5) ShipPiston (0) CollectKit (1) AssembleKit (5) Deadline=70
  • 35. Model: Simple example  Inspired from [Barták&Čepek 2007] CollectMaterial (1) GetTube BBuuyyTTuubbee ((4400)) MakeTube SawTube (30) XOR ClearTube (20) SawRod (10) ClearRod (2) WeldRod (15) FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008 BuyTube (40) WeldTube (15) AssemblePiston (5) ShipPiston (0) CollectKit (1) AssembleKit (5) Deadline=70
  • 36. Extensions & Conclusion  Conditional time-intervals are the foundation of the new version of ILOG CP Optimizer (2.0) for modeling and solving detailed scheduling problems  Model extensions:  Resources (sequencing, cumulative, state reasoning)  Calendars (resource efficiency curves, days off, etc.)  Expressions to use interval bounds (start, end, etc.) in classical CSP constraints on integer variables FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 37. Extensions & Conclusion  Conditional time-intervals are the foundation of the new version of ILOG CP Optimizer (2.0) for modeling and solving detailed scheduling problems  Search:  Extension of SA-LNS [Laborie&Godard 2007] to handle optional time-interval variables FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 38. Example: Multi-Mode RCPSP FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 39. Example: Multi-Mode RCPSP Data FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 40. Example: Multi-Mode RCPSP Model FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008
  • 41. Example: Multi-Mode RCPSP Trial Version: http://ilog.com/products/oplstudio/trial.cfm FLAIRS 2008 – Coconut Grove, Florida, USA – May 15-17, 2008