SlideShare una empresa de Scribd logo
1 de 12
Descargar para leer sin conexión
June 26-29, 2018
June 26-29, 2018
CPAIOR 2018
CPAIOR 2018
© 2018 IBM Corporation
© 2018 IBM Corporation
Objective Landscapes for
Constraint Programming
Philippe Laborie, IBM
laborie@fr.ibm.com
2 / 12 CPAIOR 2018 © 2018 IBM Corporation
Goal
Improve performance of a Black-Box CP Solver (in our
case IBM ILOG CP Optimizer) by exploiting some
information on the relation between decision variables and
objective value
This idea is not new !
Impact-Based Search [Refalo-2014]
Activity-Based Search [Michel&Van Hentenryck-2012]
Linear Relaxations [Beck&Refalo-2003, Laborie&Rogerie-2016]
…, …, ...
But we had specific requirements:
It should work for variables with huge domains, typically with
continuous semantics (start/end times of activities)
It should scale to large problems with several 1000s of
variables
3 / 12 CPAIOR 2018 © 2018 IBM Corporation
Goal
Typical examples of objective functions in the real-world:
Scheduling in semiconductor manufacturing:
xi
: Boolean variables (allocations of tasks to machines)
ej
: End time of task j, Fj
: Earliness/Tardiness cost function
dk
: Delay variable between some particular tasks
Resource Constrained Project Scheduling with Net Present
Value:
ep
: End times of activities producing cash
ec
: End times of activities consuming cash
4 / 12 CPAIOR 2018 © 2018 IBM Corporation
The Philosophy of Objective Landscapes
“Lazy Programmers for Lazy Machines.”
The new technique should (almost) not add any
computational cost to the existing search algorithms
The new technique should reuse existing algorithms as
much as possible
→ Use existing algorithms in a different way !
5 / 12 CPAIOR 2018 © 2018 IBM Corporation
Objective Landscape Definition
Context:
A constrained-optimization problem:
minimize f(x1
,…,xn
)
subject to c(x1
,…,xn
,y1
,…,ym
)
x1
,…, xn
, y1
,…, ym
are decision variables
A constraint propagation algorithm P that propagates the
constraint f(x1
,…,xn
) ≤ z for a given value z
Let Xi
L
(z) (resp. Xi
U
(z) ) denote the min (resp. max) value in
the domain of xi
after propagation of f(x1
,…,xn
) ≤ z by P
6 / 12 CPAIOR 2018 © 2018 IBM Corporation
Objective Landscape Definition
Landscape function Li
of a variable xi
Li
(v) can be interpreted as an optimistic estimation of the
objective value when xi
=v (more formalization in the paper)
90o
7 / 12 CPAIOR 2018 © 2018 IBM Corporation
Objective Landscape Computation
Objective Landscape functions can be quickly computed
once and for all before entering the search by sampling a
discrete set of objective values z and running propagation
algorithm P and recording the bounds for all variables xi
They are represented using a light-weight structure (array
of pairs variable value/objective value)
Computing the landscape value Li
(v) for a value v in the
domain of xi
is fast: it can be done in O(log(N)) if N is the
number of samples (generally only a few tens) by simple
binary search
8 / 12 CPAIOR 2018 © 2018 IBM Corporation
Examples of Landscape Functions
9 / 12 CPAIOR 2018 © 2018 IBM Corporation
Objective Landscape Exploitation
In CP, landscape functions can be used in many ways
during the search:
Selection of variables
Selection of values
In a Large Neighborhood Search (LNS) context:
Selection of LNS fragment
Prevent cost degradation for some variables in LNS moves
Selection of variables and values in LNS completion
We still did not fully explore all these ideas
10 / 12 CPAIOR 2018 © 2018 IBM Corporation
Objective Landscape Exploitation
Preventing cost degradation for some variables in LNS moves
At the top level of a move, we have the current solution S and a
relaxed model around S that we want to re-optimize
For a given variable xi
, let Xi
S
denote the value of xi
in solution S
For a certain number of variables xi
(randomly selected) we just
consider the additional constraint Li
(xi
) ≤ Li
(Xi
S
)
Xi
S
Landscape function Li
Li
(Xi
S
)
11 / 12 CPAIOR 2018 © 2018 IBM Corporation
Experimental Results
Average speed-up when using objective landscapes on
135 different families of scheduling problems
12 / 12 CPAIOR 2018 © 2018 IBM Corporation
Conclusion and Future Work
Implemented in automated search of IBM ILOG CP
Optimizer V12.7.1/12.8
Average speed-up x1.5 between 12.7 and 12.8
Up to two orders of magnitude speed-up for some problems
with objective expressed as a weighted sum of variables
with continuous semantics (very common in real problems)
Future work:
Investigate other forms of landscape exploitation in the search
Objective landscapes can be generalized to store holes in the
domains
Constraints of the problem could be exploited too

Más contenido relacionado

La actualidad más candente

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
 
Planning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPlanning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPhilippe 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
 
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
 
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
 
An introduction to CP Optimizer
An introduction to CP OptimizerAn introduction to CP Optimizer
An introduction to CP OptimizerPhilippe Laborie
 
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...Philippe Laborie
 
Modeling and Solving Scheduling Problems with CP Optimizer
Modeling and Solving Scheduling Problems with CP OptimizerModeling and Solving Scheduling Problems with CP Optimizer
Modeling and Solving Scheduling Problems with CP OptimizerPhilippe Laborie
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizerPaulShawIBM
 
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
 
CP Optimizer Walkthrough
CP Optimizer WalkthroughCP Optimizer Walkthrough
CP Optimizer WalkthroughPaulShawIBM
 
Innovations in CPLEX performance and solver capabilities
Innovations in CPLEX performance and solver capabilitiesInnovations in CPLEX performance and solver capabilities
Innovations in CPLEX performance and solver capabilitiesIBM Decision Optimization
 
CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013Roland Wunderling
 
Recent MIP Performance Improvements in IBM ILOG CPLEX Optimization Studio
Recent MIP Performance Improvements in IBM ILOG CPLEX Optimization StudioRecent MIP Performance Improvements in IBM ILOG CPLEX Optimization Studio
Recent MIP Performance Improvements in IBM ILOG CPLEX Optimization StudioIBM Decision Optimization
 
Optimization Software and Systems for Operations Research: Best Practices and...
Optimization Software and Systems for Operations Research: Best Practices and...Optimization Software and Systems for Operations Research: Best Practices and...
Optimization Software and Systems for Operations Research: Best Practices and...Bob Fourer
 
Linear Programming
Linear ProgrammingLinear Programming
Linear ProgrammingHumma Rashid
 

La actualidad más candente (18)

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
 
Planning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPlanning/Scheduling with CP Optimizer
Planning/Scheduling with CP Optimizer
 
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
 
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...
 
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
 
An introduction to CP Optimizer
An introduction to CP OptimizerAn introduction to CP Optimizer
An introduction to CP Optimizer
 
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
Modeling and Solving Resource-Constrained Project Scheduling Problems with IB...
 
Modeling and Solving Scheduling Problems with CP Optimizer
Modeling and Solving Scheduling Problems with CP OptimizerModeling and Solving Scheduling Problems with CP Optimizer
Modeling and Solving Scheduling Problems with CP Optimizer
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizer
 
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
 
CP Optimizer Walkthrough
CP Optimizer WalkthroughCP Optimizer Walkthrough
CP Optimizer Walkthrough
 
Innovations in CPLEX performance and solver capabilities
Innovations in CPLEX performance and solver capabilitiesInnovations in CPLEX performance and solver capabilities
Innovations in CPLEX performance and solver capabilities
 
CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013CPLEX 12.5.1 remote object - June 2013
CPLEX 12.5.1 remote object - June 2013
 
Recent MIP Performance Improvements in IBM ILOG CPLEX Optimization Studio
Recent MIP Performance Improvements in IBM ILOG CPLEX Optimization StudioRecent MIP Performance Improvements in IBM ILOG CPLEX Optimization Studio
Recent MIP Performance Improvements in IBM ILOG CPLEX Optimization Studio
 
Optimization Software and Systems for Operations Research: Best Practices and...
Optimization Software and Systems for Operations Research: Best Practices and...Optimization Software and Systems for Operations Research: Best Practices and...
Optimization Software and Systems for Operations Research: Best Practices and...
 
F1074145
F1074145F1074145
F1074145
 
Linear Programming
Linear ProgrammingLinear Programming
Linear Programming
 

Similar a Objective Landscapes for Constraint Programming

Applying Linear Optimization Using GLPK
Applying Linear Optimization Using GLPKApplying Linear Optimization Using GLPK
Applying Linear Optimization Using GLPKJeremy Chen
 
APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...
APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...
APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...ijcsit
 
Applying Transformation Characteristics to Solve the Multi Objective Linear F...
Applying Transformation Characteristics to Solve the Multi Objective Linear F...Applying Transformation Characteristics to Solve the Multi Objective Linear F...
Applying Transformation Characteristics to Solve the Multi Objective Linear F...AIRCC Publishing Corporation
 
A Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming ProblemsA Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming ProblemsCarrie Romero
 
Limitations of linear programming
Limitations of linear programmingLimitations of linear programming
Limitations of linear programmingTarun Gehlot
 
Can Machine Learning Models be Trusted? Explaining Decisions of ML Models
Can Machine Learning Models be Trusted? Explaining Decisions of ML ModelsCan Machine Learning Models be Trusted? Explaining Decisions of ML Models
Can Machine Learning Models be Trusted? Explaining Decisions of ML ModelsDarek Smyk
 
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...NTT Software Innovation Center
 
Convex optmization in communications
Convex optmization in communicationsConvex optmization in communications
Convex optmization in communicationsDeepshika Reddy
 
1 resource optimization 2
1 resource optimization 21 resource optimization 2
1 resource optimization 2shushay hailu
 
Scilab Modelica conference 20150921
Scilab Modelica conference 20150921Scilab Modelica conference 20150921
Scilab Modelica conference 20150921Scilab
 
GPUFish_technical_report
GPUFish_technical_reportGPUFish_technical_report
GPUFish_technical_reportCharles Hubbard
 
Linear Discrimination Centering on Support Vector Machines
Linear Discrimination Centering on Support Vector MachinesLinear Discrimination Centering on Support Vector Machines
Linear Discrimination Centering on Support Vector Machinesbutest
 
Chapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdfChapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdfTsegay Berhe
 
Sampling-Based Planning Algorithms for Multi-Objective Missions
Sampling-Based Planning Algorithms for Multi-Objective MissionsSampling-Based Planning Algorithms for Multi-Objective Missions
Sampling-Based Planning Algorithms for Multi-Objective MissionsMd Mahbubur Rahman
 
Constraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in SchedulingConstraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in SchedulingEray Cakici
 

Similar a Objective Landscapes for Constraint Programming (20)

Applying Linear Optimization Using GLPK
Applying Linear Optimization Using GLPKApplying Linear Optimization Using GLPK
Applying Linear Optimization Using GLPK
 
APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...
APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...
APPLYING TRANSFORMATION CHARACTERISTICS TO SOLVE THE MULTI OBJECTIVE LINEAR F...
 
Applying Transformation Characteristics to Solve the Multi Objective Linear F...
Applying Transformation Characteristics to Solve the Multi Objective Linear F...Applying Transformation Characteristics to Solve the Multi Objective Linear F...
Applying Transformation Characteristics to Solve the Multi Objective Linear F...
 
A Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming ProblemsA Decomposition Technique For Solving Integer Programming Problems
A Decomposition Technique For Solving Integer Programming Problems
 
Core concepts of C++
Core concepts of C++  Core concepts of C++
Core concepts of C++
 
Recent progress in CPLEX 12.6.2
Recent progress in CPLEX 12.6.2Recent progress in CPLEX 12.6.2
Recent progress in CPLEX 12.6.2
 
Limitations of linear programming
Limitations of linear programmingLimitations of linear programming
Limitations of linear programming
 
Can Machine Learning Models be Trusted? Explaining Decisions of ML Models
Can Machine Learning Models be Trusted? Explaining Decisions of ML ModelsCan Machine Learning Models be Trusted? Explaining Decisions of ML Models
Can Machine Learning Models be Trusted? Explaining Decisions of ML Models
 
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
Hybrid Computing Platform for Combinatorial Optimization with the Coherent Is...
 
Convex optmization in communications
Convex optmization in communicationsConvex optmization in communications
Convex optmization in communications
 
1 resource optimization 2
1 resource optimization 21 resource optimization 2
1 resource optimization 2
 
Scilab Modelica conference 20150921
Scilab Modelica conference 20150921Scilab Modelica conference 20150921
Scilab Modelica conference 20150921
 
GPUFish_technical_report
GPUFish_technical_reportGPUFish_technical_report
GPUFish_technical_report
 
Linear Discrimination Centering on Support Vector Machines
Linear Discrimination Centering on Support Vector MachinesLinear Discrimination Centering on Support Vector Machines
Linear Discrimination Centering on Support Vector Machines
 
Chapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdfChapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdf
 
Sampling-Based Planning Algorithms for Multi-Objective Missions
Sampling-Based Planning Algorithms for Multi-Objective MissionsSampling-Based Planning Algorithms for Multi-Objective Missions
Sampling-Based Planning Algorithms for Multi-Objective Missions
 
Log polar coordinates
Log polar coordinatesLog polar coordinates
Log polar coordinates
 
MUMS: Agent-based Modeling Workshop - Practical Bayesian Optimization for Age...
MUMS: Agent-based Modeling Workshop - Practical Bayesian Optimization for Age...MUMS: Agent-based Modeling Workshop - Practical Bayesian Optimization for Age...
MUMS: Agent-based Modeling Workshop - Practical Bayesian Optimization for Age...
 
Constraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in SchedulingConstraint Programming - An Alternative Approach to Heuristics in Scheduling
Constraint Programming - An Alternative Approach to Heuristics in Scheduling
 
Lecture4 xing
Lecture4 xingLecture4 xing
Lecture4 xing
 

Último

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesSanjay Willie
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dashnarutouzumaki53779
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Scott Andery
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...AliaaTarek5
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Último (20)

Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your QueriesExploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
Exploring ChatGPT Prompt Hacks To Maximally Optimise Your Queries
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Visualising and forecasting stocks using Dash
Visualising and forecasting stocks using DashVisualising and forecasting stocks using Dash
Visualising and forecasting stocks using Dash
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
Enhancing User Experience - Exploring the Latest Features of Tallyman Axis Lo...
 
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
(How to Program) Paul Deitel, Harvey Deitel-Java How to Program, Early Object...
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

Objective Landscapes for Constraint Programming

  • 1. June 26-29, 2018 June 26-29, 2018 CPAIOR 2018 CPAIOR 2018 © 2018 IBM Corporation © 2018 IBM Corporation Objective Landscapes for Constraint Programming Philippe Laborie, IBM laborie@fr.ibm.com
  • 2. 2 / 12 CPAIOR 2018 © 2018 IBM Corporation Goal Improve performance of a Black-Box CP Solver (in our case IBM ILOG CP Optimizer) by exploiting some information on the relation between decision variables and objective value This idea is not new ! Impact-Based Search [Refalo-2014] Activity-Based Search [Michel&Van Hentenryck-2012] Linear Relaxations [Beck&Refalo-2003, Laborie&Rogerie-2016] …, …, ... But we had specific requirements: It should work for variables with huge domains, typically with continuous semantics (start/end times of activities) It should scale to large problems with several 1000s of variables
  • 3. 3 / 12 CPAIOR 2018 © 2018 IBM Corporation Goal Typical examples of objective functions in the real-world: Scheduling in semiconductor manufacturing: xi : Boolean variables (allocations of tasks to machines) ej : End time of task j, Fj : Earliness/Tardiness cost function dk : Delay variable between some particular tasks Resource Constrained Project Scheduling with Net Present Value: ep : End times of activities producing cash ec : End times of activities consuming cash
  • 4. 4 / 12 CPAIOR 2018 © 2018 IBM Corporation The Philosophy of Objective Landscapes “Lazy Programmers for Lazy Machines.” The new technique should (almost) not add any computational cost to the existing search algorithms The new technique should reuse existing algorithms as much as possible → Use existing algorithms in a different way !
  • 5. 5 / 12 CPAIOR 2018 © 2018 IBM Corporation Objective Landscape Definition Context: A constrained-optimization problem: minimize f(x1 ,…,xn ) subject to c(x1 ,…,xn ,y1 ,…,ym ) x1 ,…, xn , y1 ,…, ym are decision variables A constraint propagation algorithm P that propagates the constraint f(x1 ,…,xn ) ≤ z for a given value z Let Xi L (z) (resp. Xi U (z) ) denote the min (resp. max) value in the domain of xi after propagation of f(x1 ,…,xn ) ≤ z by P
  • 6. 6 / 12 CPAIOR 2018 © 2018 IBM Corporation Objective Landscape Definition Landscape function Li of a variable xi Li (v) can be interpreted as an optimistic estimation of the objective value when xi =v (more formalization in the paper) 90o
  • 7. 7 / 12 CPAIOR 2018 © 2018 IBM Corporation Objective Landscape Computation Objective Landscape functions can be quickly computed once and for all before entering the search by sampling a discrete set of objective values z and running propagation algorithm P and recording the bounds for all variables xi They are represented using a light-weight structure (array of pairs variable value/objective value) Computing the landscape value Li (v) for a value v in the domain of xi is fast: it can be done in O(log(N)) if N is the number of samples (generally only a few tens) by simple binary search
  • 8. 8 / 12 CPAIOR 2018 © 2018 IBM Corporation Examples of Landscape Functions
  • 9. 9 / 12 CPAIOR 2018 © 2018 IBM Corporation Objective Landscape Exploitation In CP, landscape functions can be used in many ways during the search: Selection of variables Selection of values In a Large Neighborhood Search (LNS) context: Selection of LNS fragment Prevent cost degradation for some variables in LNS moves Selection of variables and values in LNS completion We still did not fully explore all these ideas
  • 10. 10 / 12 CPAIOR 2018 © 2018 IBM Corporation Objective Landscape Exploitation Preventing cost degradation for some variables in LNS moves At the top level of a move, we have the current solution S and a relaxed model around S that we want to re-optimize For a given variable xi , let Xi S denote the value of xi in solution S For a certain number of variables xi (randomly selected) we just consider the additional constraint Li (xi ) ≤ Li (Xi S ) Xi S Landscape function Li Li (Xi S )
  • 11. 11 / 12 CPAIOR 2018 © 2018 IBM Corporation Experimental Results Average speed-up when using objective landscapes on 135 different families of scheduling problems
  • 12. 12 / 12 CPAIOR 2018 © 2018 IBM Corporation Conclusion and Future Work Implemented in automated search of IBM ILOG CP Optimizer V12.7.1/12.8 Average speed-up x1.5 between 12.7 and 12.8 Up to two orders of magnitude speed-up for some problems with objective expressed as a weighted sum of variables with continuous semantics (very common in real problems) Future work: Investigate other forms of landscape exploitation in the search Objective landscapes can be generalized to store holes in the domains Constraints of the problem could be exploited too