SlideShare ist ein Scribd-Unternehmen logo
1 von 59
Downloaden Sie, um offline zu lesen
© 2013 IBM Corporation
December 12, 2013
Optimization : from mathematical tools
to real applications
Illustration on IBM ILOG Optimization
technologies and solutions
Philippe Laborie (laborie@fr.ibm.com)
© 2013 IBM Corporation2
Optimization : from mathematical tools to real applications
 IBM ILOG Optimization technologies and solutions
 From mathematical tools to real applications
© 2013 IBM Corporation3
IBM ILOG Optimization technologies and solutions
 Optimization
– Let:
• X A vector of decision variables
• f(X) A function
• C(X) Some constraints limiting the possible combinations of values for
decision variables
– Optimization problem:
minimize f(X)
subject to C(X)
© 2013 IBM Corporation4
IBM ILOG Optimization technologies and solutions
 Optimization: Linear Programming
– Let:
• X A vector of numerical decision variables
• f(X) A linear function
• C(X) Some linear constraints limiting the possible combinations of
values for decision variables
– Optimization problem:
minimize f(X)
subject to C(X)
© 2013 IBM Corporation5
IBM ILOG Optimization technologies and solutions
 Optimization: Linear Programming
© 2013 IBM Corporation6
IBM ILOG Optimization technologies and solutions
 Optimization: Mixed Integer Linear Programming
– Let:
• X A vector of numerical or integer decision variables
• f(X) A linear function
• C(X) Some linear constraints limiting the possible combinations of
values for decision variables
– Optimization problem:
minimize f(X)
subject to C(X)
© 2013 IBM Corporation7
IBM ILOG Optimization technologies and solutions
 Optimization: Mixed Integer Linear Programming
© 2013 IBM Corporation8
IBM ILOG Optimization technologies and solutions
 Optimization: Quadratic Programming
– Let:
• X A vector of numerical or integer decision variables
• f(X) A quadratic or linear function
• C(X) Some quadratic or linear constraints limiting the possible
combinations of values for decision variables
– Optimization problem:
minimize f(X)
subject to C(X)
© 2013 IBM Corporation9
IBM ILOG Optimization technologies and solutions
 Optimization: Quadratic Programming
© 2013 IBM Corporation10
IBM ILOG Optimization technologies and solutions
 Optimization: Constraint Programming
– Let:
• X A vector of integer decision variables
• f(X) A general expression
• C(X) Some general constraints limiting the possible combinations of
values for decision variables
– Optimization problem:
minimize f(X)
subject to C(X)
© 2013 IBM Corporation11
IBM ILOG Optimization technologies and solutions
 Optimization: Constraint Programming
© 2013 IBM Corporation12
IBM ILOG Optimization technologies and solutions
 Optimization: Constraint-Based Scheduling
– Let:
• X A vector of integer and interval decision variables (activities)
• f(X) A general expression
• C(X) Some general constraints limiting the possible combinations of
values for decision variables (temporal constraints,
resources, …)
– Optimization problem:
minimize f(X)
subject to C(X)
© 2013 IBM Corporation13
IBM ILOG Optimization technologies and solutions
 Optimization: Constraint-Based Scheduling
© 2013 IBM Corporation14
IBM ILOG Optimization technologies and solutions
CPLEX Optimization Studio
OPL Modeling Language & IDE
LP MIP
QP ...
CPLEX Optimizer
CSP COP
Scheduling
CP Optimizer
APIs:
C++
Python
Java
.NET
© 2013 IBM Corporation15
IBM ILOG Optimization technologies and solutions
© 2013 IBM Corporation16
From mathematical tools to real applications
 Some real applications
– Aerospace
• Project scheduling, Aircraft assembly scheduling, Assembly line configuration, …
– Banking, Finance
• Portfolio optimization, Trade matching and timing, Cash management, Loan
configuration and lending, …
– Energy & Utilities
• Network planning, Nuclear plant outage scheduling, Maintenance, Production
planning, …
– Logistics, Supply Chain
• Routing, Planning and scheduling, Shipment planning and order fulfillment, …
– Manufacturing
• Network optimization, Production planning and scheduling, Factory configuration, …
– Media & Communications
• Advertizing and program scheduling, event and personnel scheduling, …
– Retail
• Inventory optimization, Retail distribution and replenishment planning, Store
optimization, …
– Travel and transportation
• Crew scheduling, Timetabling, Airport resources allocation, Container management,
…
© 2013 IBM Corporation17
From mathematical tools to real applications
 There is a gap between mathematical tools and the real applications
LP
MIP
QP
...
CSP COP
Scheduling
minimize f(X)
subject to C(X)
© 2013 IBM Corporation18
From mathematical tools to real applications
 There is a gap between mathematical tools and the real applications
 This presentation uses material from the excellent blog of JF Puget:
IT Best Kept Secret Is Optimization
https://www.ibm.com/developerworks/mydeveloperworks/blogs/jfp/
© 2013 IBM Corporation19
From mathematical tools to real applications
 There is a gap between mathematical tools and the real applications
– Different stakeholders / objectives
– Language, Vocabulary
– Problem definition: which problem(s) do we want to solve?
– Data issues
– Solution definition: what is a solution to the problem(s) ?
– Solution display & User’s interactions
– Customer’s expectations
– Selecting the adequate solving technologies
– Development tools
– Communication channels with customer
– Proof of Concepts (POCs)
© 2013 IBM Corporation20
From mathematical tools to real applications
> Different stakeholders / objectives
 Buyer (management)
– Objectives: maximize ROI, minimize risk
 Final users
– Objectives: have the business problem solved, minimize change
 Their objective are not necessarily the same, they may even conflict
 They do not care about the technology
– They do not understand it, sometimes they do not trust it!
– They will typically expect that the resolution time of their problem scales
linearly with its size
 They only care about their problem
© 2013 IBM Corporation21
From mathematical tools to real applications
> Different stakeholders / objectives
 Buyer (management)
– Objectives: maximize ROI, minimize risk
 Final users
– Objectives: have the business problem solved, minimize change
 They only care about their problem
 … and the integration of the new solution in their environment
– Can be very hard if it implies process changes
– Can be tough if it implies to move or fire people
– Easier when optimization is used to do more :
• More revenue, better service, new services, etc
© 2013 IBM Corporation22
From mathematical tools to real applications
> Different stakeholders / objectives
 Optimization specialists
 Application developers, IT
 They deliver the solution to the business problem
 Applications developers and IT specialists generally do not know
optimization technologies
 This is something we are pushing in IBM: make optimization
technologies easier so that they are accessible to IT specialists and
developers (Model&Run paradigm, ODME)
© 2013 IBM Corporation23
From mathematical tools to real applications
> Different stakeholders / objectives
Developer
Buyer User
Optimization
expert
© 2013 IBM Corporation24
From mathematical tools to real applications
> Different stakeholders / objectives
Developer
Buyer User
Optimization
expert
© 2013 IBM Corporation25
From mathematical tools to real applications
> Different stakeholders / objectives
Developer
Buyer User
Optimization
expert
© 2013 IBM Corporation26
From mathematical tools to real applications
> Different stakeholders / objectives
Developer
Buyer User
Optimization
expert
© 2013 IBM Corporation27
From mathematical tools to real applications
> Different stakeholders / objectives
Developer
Buyer User
Optimization
expert
© 2013 IBM Corporation28
From mathematical tools to real applications
> Different stakeholders / objectives
Buyer User
Optimization
expertDeveloper
© 2013 IBM Corporation29
From mathematical tools to real applications
> Different stakeholders / objectives
Developer
Buyer User
Optimization
expert
© 2013 IBM Corporation30
From mathematical tools to real applications
> Different stakeholders / objectives
 You need to have a good understanding of the ecosystem of the project
© 2013 IBM Corporation31
From mathematical tools to real applications
> Language, Vocabulary
 Each domain has its own terminology : don’t expect a customer to
describe his optimization problems in terms of variables, constraints and
objective function
 You will hear about: ingot, PSCW, APX, connection, coil, berth,
ratability, shelf life, crude distillation unit (CDU), discount rate,
reticle, WBS, palonnier (fr), bâti (fr), …
 You have to communicate with the customer/prospect using his own
business language in order to understand his processes
© 2013 IBM Corporation32
From mathematical tools to real applications
> Problem definition
 What is the problem to be solved?
 Usually, many (most of) constraints and objective functions are implicit,
they need to be formalized
 A good technique for discovering implicit constraints is to iteratively enrich
the model and present some solutions of the current model to the user,
he will often easily see:
– That something is wrong/infeasible in the solution because some implicit
constraint was not modeled
– That the solution is not of good quality because some implicit objective was
not considered
 A good technique for discovering that some constraints have been
overstated in the model is to match a current solution of the customer
against the model and analyze which constraints are violated
© 2013 IBM Corporation33
From mathematical tools to real applications
> Problem definition
 You need to solve the right problem
 J.F. Puget: “It is better to provide an approximate answer to today's
problem than to perfectly solve yesterday's problem.”
 J. Tuckey: “An approximate answer to the right problem is worth a good
deal more than an exact answer to an approximate problem.”
© 2013 IBM Corporation34
From mathematical tools to real applications
> Problem definition
 But: Optimization will need some model of the real problem
 Models cannot fully describe the reality, some aspects of the real problem
will have to be:
– Ignored
– Relaxed (e.g. n almost similar machines => 1 resource of capacity n)
– Over-constrained (e.g. increase task duration to account for uncertainty)
– Approximated (e.g. to model an implicit objective function)
 There is a trade-off to be found between:
– The complexity/precision of the model
– The capacity of optimization technologies to satisfactorily solve it
This is the art of optimization modeling
© 2013 IBM Corporation35
From mathematical tools to real applications
> Problem definition
 Be ready to have moving targets
 The user may initially have a limited scope in mind:
– Focused on a particular sub-problem
– Think anything large would not be manageable
 … as the project advances, the ambitions may change to widen (or
restrict) the scope and/or scale of the model
The model should be written in such a way that refactoring is easy
(model agility): clean data structures, well-structured code, etc.
For instance, even for complex projects, the OPL language makes it
natural to separate data manipulation from the heart of the model itself.
Furthermore, the heart of the model is in general quite concise.
© 2013 IBM Corporation36
From mathematical tools to real applications
> Data issues
 Data may be stored on different type of source:
– Data files (txt, csv, excel, …)
– Data bases
– Data streams (web, …)
 It can be the result of a computation:
– Statistical analysis
– Current state of an execution system
– …
 Connection to data source should be easy
IBM Optimization products integrate easy-to-use connectors with data
files, data bases, statistic tools like SPSS, Python API …
© 2013 IBM Corporation37
From mathematical tools to real applications
> Data issues
 Data confidentiality issues : data may contain strategic information for
the user about its processes, its customers, …
 Customer may not agree to share his data as is
 When communicating with the customer, it is useful to have tools / data
file formats that encrypt/anonymize the data
 CPLEX Optimization Studio 12.6 provides functionalities to save a CP
model in an anonymized form (rename variables)
© 2013 IBM Corporation38
From mathematical tools to real applications
> Data issues
 Having data is not enough, you must have good quality data
 Data can be:
– Uncertain
– Imprecise
– Incomplete
– Incorrect
 Optimization is a GIGO computation (garbage in, garbage out):
Wrong data  Useless solutions
 Good practices:
– Check data quality in the model
– Visualize solutions to easily see that something is going wrong
© 2013 IBM Corporation39
From mathematical tools to real applications
> Data issues : uncertainties
 When data is uncertain (activity durations, costs, prices, etc.), think of
stochastic optimization techniques but remember:
 A prerequisite for solving a stochastic optimization problem is that you are
able to solve (efficiently) the deterministic version of the problem
 CPLEX Optimization Studio 12.6 provides a new constraint for modeling
stochastic/robust scheduling problems on disjunctive resources
© 2013 IBM Corporation40
From mathematical tools to real applications
> Data issues
 Having good quality data is not enough
 You must get realistic data early enough in the project
– For developing and testing the data structures and the model
– It helps communication with the customer about his requirements
 You must work with many instances, not only one
– Avoid model over-tuning (see later)
© 2013 IBM Corporation41
From mathematical tools to real applications
> Solution definition
 The notion of optimal solution is always relative to a model of the real
problem not to the real problem itself
 The user only cares about his real problem
 If you can convince the customer that the model is close enough to the
reality and if you have some guarantees on the solution quality with
respect to the model (optimality proof, gap), that can be of course useful
but remember: the user does not care about the technology and does
not understand it
 The user will assess the quality of the solution by:
– Comparing it to the current solutions he gets
– Trying to see if the solution you provide cannot be easily improved
© 2013 IBM Corporation42
From mathematical tools to real applications
> Solution definition
Current
user
solution
Minimized
objective
Bad solution
Good solution
© 2013 IBM Corporation43
From mathematical tools to real applications
> Solution definition
Current
user
solution
Minimized
objective
Bad solution
Good solution
© 2013 IBM Corporation44
From mathematical tools to real applications
> Solution definition
Current
user
solution
Minimized
objective
Bad solution
Good solution
You are not solving the right problem!
© 2013 IBM Corporation45
From mathematical tools to real applications
> Solution definition
 A good solution is a feasible and locally optimal solution that is better
than the current solution of the customer
 IBM Optimization engines pay special attention to the fact there is no
easily improved solution close to the one provided. For instance CPLEX
provides the notion of solution polishing for that. CP Optimizer operates
on neighborhoods on incumbent solutions.
© 2013 IBM Corporation46
From mathematical tools to real applications
> Solution definition
 Customers like solutions
 Instead of one solution, they often prefer to have several ones
– Because there are several objectives (multi-objective, Pareto optimality)
– Because he is the “decider”, not the machine
© 2013 IBM Corporation47
From mathematical tools to real applications
> Solution definition
 Customers like solutions
 Even when the problem is infeasible, they like to have one solution!
– Relax constraint in the objective function
 CPLEX Optimizer provide the notion of feasopt algorithm to provide a
solution that violates the constraints as few as possible
 CP Optimizer make it easy to relax constraints as objective terms.
Specially for scheduling constraints with the notion of optional interval
variable
 … or they would like to understand why the problem is infeasible
 CPLEX and CP Optimizers provide a conflict refiner functionality to
compute a minimal subset of infeasible constraints
© 2013 IBM Corporation48
From mathematical tools to real applications
> Solution display / User interactions
 Optimization is not worth it if the results aren't understood by the
business users
 The best way to make them understandable is to use nice graphics
 It also helps a lot the communication with customer during the
development of the model
 Solution display and model development should preferably be done in
parallel
© 2013 IBM Corporation49
From mathematical tools to real applications
> Solution display / User interactions
 Users often need some “what if analysis” and solve different scenarios
to analyze the impact of some decisions
– What happens if I have less trucks available ?
– What happens if this machine breakdowns ?
– What happens if the due date of a task is changed ?
 This notion of what if analysis and scenarios is at the heart of ODME
 Cooperative problem solving is also a common paradigm
– Configuration problems (e.g. car configuration)
© 2013 IBM Corporation50
From mathematical tools to real applications
> Customer’s expectations
 Requirements on solution architecture & infrastructure (clients, servers,
cloud, machines, communication)
 Requirements in terms of response time, scalability
– Users will in general expect that response time grows linearly with problem
size
– … and decrease linearly with the number of machine cores
 Requirements in terms of quality
– No bugs. Bugs in the engine may be killers (it's not like for a research work)
– Solution determinism: two resolutions of the same problem in the same
conditions should give the same result
© 2013 IBM Corporation51
From mathematical tools to real applications
> Selecting the adequate solving technologies
 LP, MILP, SAT, CP, Scheduling, ... : not always easy to select the adequate
technology
 It is a plus if you can easily change from one to the other in case you
need to reach a dead-end
 IBM Optimization technologies are based on a common modeling layer
(called Concert Technology) that makes it easier to change from one
optimization technology to another one
© 2013 IBM Corporation52
From mathematical tools to real applications
> Selecting the adequate solving technologies
 Real life problems are often complex:
– Large size
– Mix of different source of complexity
 The problem often needs to be split into several optimization models that
are solved with different technologies
– Hierarchical decompositions: planning with MIP, then scheduling with CP, …
– Temporal decomposition on time-windows
– Column Generation
– Logical Benders decompositions
– …
 Try to understand how the customer is currently solving his problem, it
may give some directions for decomposing the problem
© 2013 IBM Corporation53
From mathematical tools to real applications
> Selecting the adequate solving technologies
 Model tuning is good
 Model over-tuning is bad (you will only loose time)
– Do not fine tune your model until the model is complete
– Do not fine tune your model on a single problem instance !
– Do not fine tune your model on a single random seed !
© 2013 IBM Corporation54
From mathematical tools to real applications
> Development tools
 Which time are you allowed ?
– Time to compute a solution
• Often time boxed, best solution found in limited time
– Time to develop the software application
• Boxed too by project funding
 Trade off
– Fast solver with poor development tool
• Not much time to tune model/data, poor performance in the end
– Slow solver with great development tool
• Lots of time to tune model/data, poor performance in the end
– Great solver with great development tools
• Lots of time to tune model/data, great performance in the end
© 2013 IBM Corporation55
From mathematical tools to real applications
> Proof of Concepts (POCs)
 Often, potential customers will require a POC to convince them that we
are the best for solving their problem
 A POC is the same thing as the final project except that:
– 1. You have much less time for doing it (a few days/weeks)
– 2. You are in general not paid for it
– 3. It will be an essential element for the success of the deal
 The POC is not only about optimization, a good visualization and
interaction with the user is crucial already at this point
 The POC solves a simpler problem than the actual one. This problem:
– Must be relevant to the customer
– Must convince the customer (and the model developer) that the approach will
scale with problem complexity and with problem size: the POC should work
with real problem size
© 2013 IBM Corporation56
From mathematical tools to real applications
> Communication channels with customer
 We need to get feedback on the optimization products and help the
costumers
 Different channels for communication with users:
– Technical sales people
– Training sessions
– Consulting (internal, external)  Partners
– Customer support: L1 L2 L3  R&D
– Discussion forums
– User's meetings/conferences
© 2013 IBM Corporation57
From mathematical tools to real applications
> Take-home messages
 You need to have a good understanding of the ecosystem of the project
 You have to understand the vocabulary of the customer
 You need to solve the right problem
 You need to make sure you access good quality data early enough
 A good solution is a feasible and locally optimal solution that is better
than the current solution of the customer
 Customers like solutions (even when the problem is infeasible)
 Nice graphics are necessary and should preferably be developed in
parallel with the model
© 2013 IBM Corporation58
From mathematical tools to real applications
> Take-home messages
 Optimization is usually not a one-step process, it often requires
interactions with the user (what if analysis, cooperative problem
solving)
 Be ready to combine several optimization models that are solved with
different technologies. Be creative !
 Model tuning is good, model over-tuning is bad
 You need good model development tools
© 2013 IBM Corporation59
From mathematical tools to real applications
> Take-home messages
Project
environment
Problem
definition
Data
Problem
decomposition
Optimization
technologies
Visualization
Interactivity
Development
tools

Weitere ähnliche Inhalte

Was ist angesagt?

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
 
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
 
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
 
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
 
Planning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPlanning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPhilippe 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
 
CP Optimizer Walkthrough
CP Optimizer WalkthroughCP Optimizer Walkthrough
CP Optimizer WalkthroughPaulShawIBM
 
Mathematical Optimisation - Fundamentals and Applications
Mathematical Optimisation - Fundamentals and ApplicationsMathematical Optimisation - Fundamentals and Applications
Mathematical Optimisation - Fundamentals and ApplicationsGokul Alex
 
1 resource optimization 2
1 resource optimization 21 resource optimization 2
1 resource optimization 2shushay hailu
 
Application of linear programming techniques to practical
Application of linear programming techniques to practicalApplication of linear programming techniques to practical
Application of linear programming techniques to practicalAlexander Decker
 
Introduction to linear programming
Introduction to linear programmingIntroduction to linear programming
Introduction to linear programmingn_cool001
 
Linear programming
Linear programmingLinear programming
Linear programmingKarnav Rana
 
Karmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming ProblemKarmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming ProblemAjay Dhamija
 
Tbs910 linear programming
Tbs910 linear programmingTbs910 linear programming
Tbs910 linear programmingStephen Ong
 
Application of linear programming technique for staff training of register se...
Application of linear programming technique for staff training of register se...Application of linear programming technique for staff training of register se...
Application of linear programming technique for staff training of register se...Enamul Islam
 
Linear programming problem
Linear programming problemLinear programming problem
Linear programming problemmakeitsimple007
 
Optimization Computing Platform for the Construction Industry
Optimization Computing Platform for the Construction IndustryOptimization Computing Platform for the Construction Industry
Optimization Computing Platform for the Construction IndustryKostas Dimitriou
 
Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...
Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...
Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...Aalto University
 

Was ist angesagt? (20)

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...
 
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
 
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
 
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...
 
Planning/Scheduling with CP Optimizer
Planning/Scheduling with CP OptimizerPlanning/Scheduling with CP Optimizer
Planning/Scheduling with CP Optimizer
 
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...
 
CP Optimizer Walkthrough
CP Optimizer WalkthroughCP Optimizer Walkthrough
CP Optimizer Walkthrough
 
Cp04invitedslide
Cp04invitedslideCp04invitedslide
Cp04invitedslide
 
Lessonslearnedeuro
LessonslearnedeuroLessonslearnedeuro
Lessonslearnedeuro
 
Mathematical Optimisation - Fundamentals and Applications
Mathematical Optimisation - Fundamentals and ApplicationsMathematical Optimisation - Fundamentals and Applications
Mathematical Optimisation - Fundamentals and Applications
 
1 resource optimization 2
1 resource optimization 21 resource optimization 2
1 resource optimization 2
 
Application of linear programming techniques to practical
Application of linear programming techniques to practicalApplication of linear programming techniques to practical
Application of linear programming techniques to practical
 
Introduction to linear programming
Introduction to linear programmingIntroduction to linear programming
Introduction to linear programming
 
Linear programming
Linear programmingLinear programming
Linear programming
 
Karmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming ProblemKarmarkar's Algorithm For Linear Programming Problem
Karmarkar's Algorithm For Linear Programming Problem
 
Tbs910 linear programming
Tbs910 linear programmingTbs910 linear programming
Tbs910 linear programming
 
Application of linear programming technique for staff training of register se...
Application of linear programming technique for staff training of register se...Application of linear programming technique for staff training of register se...
Application of linear programming technique for staff training of register se...
 
Linear programming problem
Linear programming problemLinear programming problem
Linear programming problem
 
Optimization Computing Platform for the Construction Industry
Optimization Computing Platform for the Construction IndustryOptimization Computing Platform for the Construction Industry
Optimization Computing Platform for the Construction Industry
 
Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...
Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...
Model-Based User Interface Optimization: Part I INTRODUCTION - At SICSA Summe...
 

Andere mochten auch

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
 
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
 
Reasoning with Conditional Time-intervals
Reasoning with Conditional Time-intervalsReasoning with Conditional Time-intervals
Reasoning with Conditional Time-intervalsPhilippe 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
 
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
 
Numerical analysis convexity, concavity
Numerical analysis  convexity, concavityNumerical analysis  convexity, concavity
Numerical analysis convexity, concavitySHAMJITH KM
 
Logica | Intelligent Self learning - a helping hand in financial crime
Logica | Intelligent Self learning - a helping hand in financial crimeLogica | Intelligent Self learning - a helping hand in financial crime
Logica | Intelligent Self learning - a helping hand in financial crimeCGI
 
11 x1 t12 06 maxima & minima (2013)
11 x1 t12 06 maxima & minima (2013)11 x1 t12 06 maxima & minima (2013)
11 x1 t12 06 maxima & minima (2013)Nigel Simmons
 
Maxima & Minima for IIT JEE | askIITians
Maxima & Minima for IIT JEE | askIITiansMaxima & Minima for IIT JEE | askIITians
Maxima & Minima for IIT JEE | askIITiansaskiitian
 
Applications of maxima and minima
Applications of maxima and minimaApplications of maxima and minima
Applications of maxima and minimarouwejan
 
Traveling across India ( with sounds)
Traveling across India ( with sounds)Traveling across India ( with sounds)
Traveling across India ( with sounds)Nikkitta M
 
A Day In The Life Of A Monk
A Day In The Life Of A MonkA Day In The Life Of A Monk
A Day In The Life Of A MonkRobbo132615
 
Practicle application of maxima and minima
Practicle application of maxima and minimaPracticle application of maxima and minima
Practicle application of maxima and minimaBritish Council
 
Ic engine ies gate ias 20 years question and answers
Ic engine ies gate ias 20 years question and answersIc engine ies gate ias 20 years question and answers
Ic engine ies gate ias 20 years question and answersRamnarayan Meena
 

Andere mochten auch (18)

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
 
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
 
Reasoning with Conditional Time-intervals
Reasoning with Conditional Time-intervalsReasoning with Conditional Time-intervals
Reasoning with Conditional Time-intervals
 
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 ...
 
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...
 
Numerical analysis convexity, concavity
Numerical analysis  convexity, concavityNumerical analysis  convexity, concavity
Numerical analysis convexity, concavity
 
Logica | Intelligent Self learning - a helping hand in financial crime
Logica | Intelligent Self learning - a helping hand in financial crimeLogica | Intelligent Self learning - a helping hand in financial crime
Logica | Intelligent Self learning - a helping hand in financial crime
 
11 x1 t12 06 maxima & minima (2013)
11 x1 t12 06 maxima & minima (2013)11 x1 t12 06 maxima & minima (2013)
11 x1 t12 06 maxima & minima (2013)
 
Maxima & Minima for IIT JEE | askIITians
Maxima & Minima for IIT JEE | askIITiansMaxima & Minima for IIT JEE | askIITians
Maxima & Minima for IIT JEE | askIITians
 
Applications of maxima and minima
Applications of maxima and minimaApplications of maxima and minima
Applications of maxima and minima
 
Maxima and minima
Maxima and minimaMaxima and minima
Maxima and minima
 
Traveling across India ( with sounds)
Traveling across India ( with sounds)Traveling across India ( with sounds)
Traveling across India ( with sounds)
 
A Day In The Life Of A Monk
A Day In The Life Of A MonkA Day In The Life Of A Monk
A Day In The Life Of A Monk
 
Practicle application of maxima and minima
Practicle application of maxima and minimaPracticle application of maxima and minima
Practicle application of maxima and minima
 
Ic engine ies gate ias 20 years question and answers
Ic engine ies gate ias 20 years question and answersIc engine ies gate ias 20 years question and answers
Ic engine ies gate ias 20 years question and answers
 
Heat transfer questions
Heat transfer questionsHeat transfer questions
Heat transfer questions
 

Ähnlich wie IBM ILOG Optimization technologies and solutions

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
 
Navy Training Scheduling - Euro 2021
Navy Training Scheduling - Euro 2021 Navy Training Scheduling - Euro 2021
Navy Training Scheduling - Euro 2021 Eray Cakici
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizerPaulShawIBM
 
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXDecision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXSanjayKPrasad2
 
The Value of IBM Rational Solutions in a PLM System
The Value of IBM Rational Solutions in a  PLM System The Value of IBM Rational Solutions in a  PLM System
The Value of IBM Rational Solutions in a PLM System Cyrus Sorab
 
Prespective analytics with DOcplex and pandas
Prespective analytics with DOcplex and pandasPrespective analytics with DOcplex and pandas
Prespective analytics with DOcplex and pandasPyDataParis
 
Managing Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software DesignManaging Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software Designlbergmans
 
Lpp through graphical analysis
Lpp through graphical analysis Lpp through graphical analysis
Lpp through graphical analysis YuktaBansal1
 
Chapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdfChapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdfTsegay Berhe
 
What to do as simulation expert
What to do as simulation expertWhat to do as simulation expert
What to do as simulation expertAbinash Panda
 
Closing the Gap on Digital Manufacturing
Closing the Gap on Digital ManufacturingClosing the Gap on Digital Manufacturing
Closing the Gap on Digital ManufacturingARC Advisory Group
 
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0Haytham Ghandour
 
Microsoft Dynamics CRM - XRM Advantage for Solution Builders Whitepaper
Microsoft Dynamics CRM - XRM Advantage for Solution Builders WhitepaperMicrosoft Dynamics CRM - XRM Advantage for Solution Builders Whitepaper
Microsoft Dynamics CRM - XRM Advantage for Solution Builders WhitepaperMicrosoft Private Cloud
 
Cloud Solutions - what do we mean by Solution in the Cloud Era?
Cloud Solutions - what do we mean by Solution in the Cloud Era?Cloud Solutions - what do we mean by Solution in the Cloud Era?
Cloud Solutions - what do we mean by Solution in the Cloud Era?Ahmed Fattah
 
Ibm db2 update2019 intro ending
Ibm db2 update2019   intro endingIbm db2 update2019   intro ending
Ibm db2 update2019 intro endingGustav Lundström
 
Linear programming manufacturing application
Linear programming manufacturing applicationLinear programming manufacturing application
Linear programming manufacturing applicationMuneeb Ahmed
 
Job-to-be-done theory to practice : Ch4 Process
Job-to-be-done theory to practice : Ch4 ProcessJob-to-be-done theory to practice : Ch4 Process
Job-to-be-done theory to practice : Ch4 ProcessPRADA Hsiung
 
Domain Driven Design Introduction
Domain Driven Design IntroductionDomain Driven Design Introduction
Domain Driven Design Introductionwojtek_s
 
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...NRB
 

Ähnlich wie IBM ILOG Optimization technologies and solutions (20)

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
 
Industrial Algorithms
Industrial AlgorithmsIndustrial Algorithms
Industrial Algorithms
 
Navy Training Scheduling - Euro 2021
Navy Training Scheduling - Euro 2021 Navy Training Scheduling - Euro 2021
Navy Training Scheduling - Euro 2021
 
TenYearsCPOptimizer
TenYearsCPOptimizerTenYearsCPOptimizer
TenYearsCPOptimizer
 
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTXDecision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
Decision Optimization - CPLEX Optimization Studio - Product Overview(2).PPTX
 
The Value of IBM Rational Solutions in a PLM System
The Value of IBM Rational Solutions in a  PLM System The Value of IBM Rational Solutions in a  PLM System
The Value of IBM Rational Solutions in a PLM System
 
Prespective analytics with DOcplex and pandas
Prespective analytics with DOcplex and pandasPrespective analytics with DOcplex and pandas
Prespective analytics with DOcplex and pandas
 
Managing Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software DesignManaging Complexity and Change with Scalable Software Design
Managing Complexity and Change with Scalable Software Design
 
Lpp through graphical analysis
Lpp through graphical analysis Lpp through graphical analysis
Lpp through graphical analysis
 
Chapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdfChapter 2.Linear Programming.pdf
Chapter 2.Linear Programming.pdf
 
What to do as simulation expert
What to do as simulation expertWhat to do as simulation expert
What to do as simulation expert
 
Closing the Gap on Digital Manufacturing
Closing the Gap on Digital ManufacturingClosing the Gap on Digital Manufacturing
Closing the Gap on Digital Manufacturing
 
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
Best Practices & Lessons Learned from the field on EMC Documentum xCP 2.0
 
Microsoft Dynamics CRM - XRM Advantage for Solution Builders Whitepaper
Microsoft Dynamics CRM - XRM Advantage for Solution Builders WhitepaperMicrosoft Dynamics CRM - XRM Advantage for Solution Builders Whitepaper
Microsoft Dynamics CRM - XRM Advantage for Solution Builders Whitepaper
 
Cloud Solutions - what do we mean by Solution in the Cloud Era?
Cloud Solutions - what do we mean by Solution in the Cloud Era?Cloud Solutions - what do we mean by Solution in the Cloud Era?
Cloud Solutions - what do we mean by Solution in the Cloud Era?
 
Ibm db2 update2019 intro ending
Ibm db2 update2019   intro endingIbm db2 update2019   intro ending
Ibm db2 update2019 intro ending
 
Linear programming manufacturing application
Linear programming manufacturing applicationLinear programming manufacturing application
Linear programming manufacturing application
 
Job-to-be-done theory to practice : Ch4 Process
Job-to-be-done theory to practice : Ch4 ProcessJob-to-be-done theory to practice : Ch4 Process
Job-to-be-done theory to practice : Ch4 Process
 
Domain Driven Design Introduction
Domain Driven Design IntroductionDomain Driven Design Introduction
Domain Driven Design Introduction
 
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
NRB MAINFRAME DAY 04 - Yann Kindelberger - New generation of application arch...
 

Kürzlich hochgeladen

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
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Kürzlich hochgeladen (20)

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...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

IBM ILOG Optimization technologies and solutions

  • 1. © 2013 IBM Corporation December 12, 2013 Optimization : from mathematical tools to real applications Illustration on IBM ILOG Optimization technologies and solutions Philippe Laborie (laborie@fr.ibm.com)
  • 2. © 2013 IBM Corporation2 Optimization : from mathematical tools to real applications  IBM ILOG Optimization technologies and solutions  From mathematical tools to real applications
  • 3. © 2013 IBM Corporation3 IBM ILOG Optimization technologies and solutions  Optimization – Let: • X A vector of decision variables • f(X) A function • C(X) Some constraints limiting the possible combinations of values for decision variables – Optimization problem: minimize f(X) subject to C(X)
  • 4. © 2013 IBM Corporation4 IBM ILOG Optimization technologies and solutions  Optimization: Linear Programming – Let: • X A vector of numerical decision variables • f(X) A linear function • C(X) Some linear constraints limiting the possible combinations of values for decision variables – Optimization problem: minimize f(X) subject to C(X)
  • 5. © 2013 IBM Corporation5 IBM ILOG Optimization technologies and solutions  Optimization: Linear Programming
  • 6. © 2013 IBM Corporation6 IBM ILOG Optimization technologies and solutions  Optimization: Mixed Integer Linear Programming – Let: • X A vector of numerical or integer decision variables • f(X) A linear function • C(X) Some linear constraints limiting the possible combinations of values for decision variables – Optimization problem: minimize f(X) subject to C(X)
  • 7. © 2013 IBM Corporation7 IBM ILOG Optimization technologies and solutions  Optimization: Mixed Integer Linear Programming
  • 8. © 2013 IBM Corporation8 IBM ILOG Optimization technologies and solutions  Optimization: Quadratic Programming – Let: • X A vector of numerical or integer decision variables • f(X) A quadratic or linear function • C(X) Some quadratic or linear constraints limiting the possible combinations of values for decision variables – Optimization problem: minimize f(X) subject to C(X)
  • 9. © 2013 IBM Corporation9 IBM ILOG Optimization technologies and solutions  Optimization: Quadratic Programming
  • 10. © 2013 IBM Corporation10 IBM ILOG Optimization technologies and solutions  Optimization: Constraint Programming – Let: • X A vector of integer decision variables • f(X) A general expression • C(X) Some general constraints limiting the possible combinations of values for decision variables – Optimization problem: minimize f(X) subject to C(X)
  • 11. © 2013 IBM Corporation11 IBM ILOG Optimization technologies and solutions  Optimization: Constraint Programming
  • 12. © 2013 IBM Corporation12 IBM ILOG Optimization technologies and solutions  Optimization: Constraint-Based Scheduling – Let: • X A vector of integer and interval decision variables (activities) • f(X) A general expression • C(X) Some general constraints limiting the possible combinations of values for decision variables (temporal constraints, resources, …) – Optimization problem: minimize f(X) subject to C(X)
  • 13. © 2013 IBM Corporation13 IBM ILOG Optimization technologies and solutions  Optimization: Constraint-Based Scheduling
  • 14. © 2013 IBM Corporation14 IBM ILOG Optimization technologies and solutions CPLEX Optimization Studio OPL Modeling Language & IDE LP MIP QP ... CPLEX Optimizer CSP COP Scheduling CP Optimizer APIs: C++ Python Java .NET
  • 15. © 2013 IBM Corporation15 IBM ILOG Optimization technologies and solutions
  • 16. © 2013 IBM Corporation16 From mathematical tools to real applications  Some real applications – Aerospace • Project scheduling, Aircraft assembly scheduling, Assembly line configuration, … – Banking, Finance • Portfolio optimization, Trade matching and timing, Cash management, Loan configuration and lending, … – Energy & Utilities • Network planning, Nuclear plant outage scheduling, Maintenance, Production planning, … – Logistics, Supply Chain • Routing, Planning and scheduling, Shipment planning and order fulfillment, … – Manufacturing • Network optimization, Production planning and scheduling, Factory configuration, … – Media & Communications • Advertizing and program scheduling, event and personnel scheduling, … – Retail • Inventory optimization, Retail distribution and replenishment planning, Store optimization, … – Travel and transportation • Crew scheduling, Timetabling, Airport resources allocation, Container management, …
  • 17. © 2013 IBM Corporation17 From mathematical tools to real applications  There is a gap between mathematical tools and the real applications LP MIP QP ... CSP COP Scheduling minimize f(X) subject to C(X)
  • 18. © 2013 IBM Corporation18 From mathematical tools to real applications  There is a gap between mathematical tools and the real applications  This presentation uses material from the excellent blog of JF Puget: IT Best Kept Secret Is Optimization https://www.ibm.com/developerworks/mydeveloperworks/blogs/jfp/
  • 19. © 2013 IBM Corporation19 From mathematical tools to real applications  There is a gap between mathematical tools and the real applications – Different stakeholders / objectives – Language, Vocabulary – Problem definition: which problem(s) do we want to solve? – Data issues – Solution definition: what is a solution to the problem(s) ? – Solution display & User’s interactions – Customer’s expectations – Selecting the adequate solving technologies – Development tools – Communication channels with customer – Proof of Concepts (POCs)
  • 20. © 2013 IBM Corporation20 From mathematical tools to real applications > Different stakeholders / objectives  Buyer (management) – Objectives: maximize ROI, minimize risk  Final users – Objectives: have the business problem solved, minimize change  Their objective are not necessarily the same, they may even conflict  They do not care about the technology – They do not understand it, sometimes they do not trust it! – They will typically expect that the resolution time of their problem scales linearly with its size  They only care about their problem
  • 21. © 2013 IBM Corporation21 From mathematical tools to real applications > Different stakeholders / objectives  Buyer (management) – Objectives: maximize ROI, minimize risk  Final users – Objectives: have the business problem solved, minimize change  They only care about their problem  … and the integration of the new solution in their environment – Can be very hard if it implies process changes – Can be tough if it implies to move or fire people – Easier when optimization is used to do more : • More revenue, better service, new services, etc
  • 22. © 2013 IBM Corporation22 From mathematical tools to real applications > Different stakeholders / objectives  Optimization specialists  Application developers, IT  They deliver the solution to the business problem  Applications developers and IT specialists generally do not know optimization technologies  This is something we are pushing in IBM: make optimization technologies easier so that they are accessible to IT specialists and developers (Model&Run paradigm, ODME)
  • 23. © 2013 IBM Corporation23 From mathematical tools to real applications > Different stakeholders / objectives Developer Buyer User Optimization expert
  • 24. © 2013 IBM Corporation24 From mathematical tools to real applications > Different stakeholders / objectives Developer Buyer User Optimization expert
  • 25. © 2013 IBM Corporation25 From mathematical tools to real applications > Different stakeholders / objectives Developer Buyer User Optimization expert
  • 26. © 2013 IBM Corporation26 From mathematical tools to real applications > Different stakeholders / objectives Developer Buyer User Optimization expert
  • 27. © 2013 IBM Corporation27 From mathematical tools to real applications > Different stakeholders / objectives Developer Buyer User Optimization expert
  • 28. © 2013 IBM Corporation28 From mathematical tools to real applications > Different stakeholders / objectives Buyer User Optimization expertDeveloper
  • 29. © 2013 IBM Corporation29 From mathematical tools to real applications > Different stakeholders / objectives Developer Buyer User Optimization expert
  • 30. © 2013 IBM Corporation30 From mathematical tools to real applications > Different stakeholders / objectives  You need to have a good understanding of the ecosystem of the project
  • 31. © 2013 IBM Corporation31 From mathematical tools to real applications > Language, Vocabulary  Each domain has its own terminology : don’t expect a customer to describe his optimization problems in terms of variables, constraints and objective function  You will hear about: ingot, PSCW, APX, connection, coil, berth, ratability, shelf life, crude distillation unit (CDU), discount rate, reticle, WBS, palonnier (fr), bâti (fr), …  You have to communicate with the customer/prospect using his own business language in order to understand his processes
  • 32. © 2013 IBM Corporation32 From mathematical tools to real applications > Problem definition  What is the problem to be solved?  Usually, many (most of) constraints and objective functions are implicit, they need to be formalized  A good technique for discovering implicit constraints is to iteratively enrich the model and present some solutions of the current model to the user, he will often easily see: – That something is wrong/infeasible in the solution because some implicit constraint was not modeled – That the solution is not of good quality because some implicit objective was not considered  A good technique for discovering that some constraints have been overstated in the model is to match a current solution of the customer against the model and analyze which constraints are violated
  • 33. © 2013 IBM Corporation33 From mathematical tools to real applications > Problem definition  You need to solve the right problem  J.F. Puget: “It is better to provide an approximate answer to today's problem than to perfectly solve yesterday's problem.”  J. Tuckey: “An approximate answer to the right problem is worth a good deal more than an exact answer to an approximate problem.”
  • 34. © 2013 IBM Corporation34 From mathematical tools to real applications > Problem definition  But: Optimization will need some model of the real problem  Models cannot fully describe the reality, some aspects of the real problem will have to be: – Ignored – Relaxed (e.g. n almost similar machines => 1 resource of capacity n) – Over-constrained (e.g. increase task duration to account for uncertainty) – Approximated (e.g. to model an implicit objective function)  There is a trade-off to be found between: – The complexity/precision of the model – The capacity of optimization technologies to satisfactorily solve it This is the art of optimization modeling
  • 35. © 2013 IBM Corporation35 From mathematical tools to real applications > Problem definition  Be ready to have moving targets  The user may initially have a limited scope in mind: – Focused on a particular sub-problem – Think anything large would not be manageable  … as the project advances, the ambitions may change to widen (or restrict) the scope and/or scale of the model The model should be written in such a way that refactoring is easy (model agility): clean data structures, well-structured code, etc. For instance, even for complex projects, the OPL language makes it natural to separate data manipulation from the heart of the model itself. Furthermore, the heart of the model is in general quite concise.
  • 36. © 2013 IBM Corporation36 From mathematical tools to real applications > Data issues  Data may be stored on different type of source: – Data files (txt, csv, excel, …) – Data bases – Data streams (web, …)  It can be the result of a computation: – Statistical analysis – Current state of an execution system – …  Connection to data source should be easy IBM Optimization products integrate easy-to-use connectors with data files, data bases, statistic tools like SPSS, Python API …
  • 37. © 2013 IBM Corporation37 From mathematical tools to real applications > Data issues  Data confidentiality issues : data may contain strategic information for the user about its processes, its customers, …  Customer may not agree to share his data as is  When communicating with the customer, it is useful to have tools / data file formats that encrypt/anonymize the data  CPLEX Optimization Studio 12.6 provides functionalities to save a CP model in an anonymized form (rename variables)
  • 38. © 2013 IBM Corporation38 From mathematical tools to real applications > Data issues  Having data is not enough, you must have good quality data  Data can be: – Uncertain – Imprecise – Incomplete – Incorrect  Optimization is a GIGO computation (garbage in, garbage out): Wrong data  Useless solutions  Good practices: – Check data quality in the model – Visualize solutions to easily see that something is going wrong
  • 39. © 2013 IBM Corporation39 From mathematical tools to real applications > Data issues : uncertainties  When data is uncertain (activity durations, costs, prices, etc.), think of stochastic optimization techniques but remember:  A prerequisite for solving a stochastic optimization problem is that you are able to solve (efficiently) the deterministic version of the problem  CPLEX Optimization Studio 12.6 provides a new constraint for modeling stochastic/robust scheduling problems on disjunctive resources
  • 40. © 2013 IBM Corporation40 From mathematical tools to real applications > Data issues  Having good quality data is not enough  You must get realistic data early enough in the project – For developing and testing the data structures and the model – It helps communication with the customer about his requirements  You must work with many instances, not only one – Avoid model over-tuning (see later)
  • 41. © 2013 IBM Corporation41 From mathematical tools to real applications > Solution definition  The notion of optimal solution is always relative to a model of the real problem not to the real problem itself  The user only cares about his real problem  If you can convince the customer that the model is close enough to the reality and if you have some guarantees on the solution quality with respect to the model (optimality proof, gap), that can be of course useful but remember: the user does not care about the technology and does not understand it  The user will assess the quality of the solution by: – Comparing it to the current solutions he gets – Trying to see if the solution you provide cannot be easily improved
  • 42. © 2013 IBM Corporation42 From mathematical tools to real applications > Solution definition Current user solution Minimized objective Bad solution Good solution
  • 43. © 2013 IBM Corporation43 From mathematical tools to real applications > Solution definition Current user solution Minimized objective Bad solution Good solution
  • 44. © 2013 IBM Corporation44 From mathematical tools to real applications > Solution definition Current user solution Minimized objective Bad solution Good solution You are not solving the right problem!
  • 45. © 2013 IBM Corporation45 From mathematical tools to real applications > Solution definition  A good solution is a feasible and locally optimal solution that is better than the current solution of the customer  IBM Optimization engines pay special attention to the fact there is no easily improved solution close to the one provided. For instance CPLEX provides the notion of solution polishing for that. CP Optimizer operates on neighborhoods on incumbent solutions.
  • 46. © 2013 IBM Corporation46 From mathematical tools to real applications > Solution definition  Customers like solutions  Instead of one solution, they often prefer to have several ones – Because there are several objectives (multi-objective, Pareto optimality) – Because he is the “decider”, not the machine
  • 47. © 2013 IBM Corporation47 From mathematical tools to real applications > Solution definition  Customers like solutions  Even when the problem is infeasible, they like to have one solution! – Relax constraint in the objective function  CPLEX Optimizer provide the notion of feasopt algorithm to provide a solution that violates the constraints as few as possible  CP Optimizer make it easy to relax constraints as objective terms. Specially for scheduling constraints with the notion of optional interval variable  … or they would like to understand why the problem is infeasible  CPLEX and CP Optimizers provide a conflict refiner functionality to compute a minimal subset of infeasible constraints
  • 48. © 2013 IBM Corporation48 From mathematical tools to real applications > Solution display / User interactions  Optimization is not worth it if the results aren't understood by the business users  The best way to make them understandable is to use nice graphics  It also helps a lot the communication with customer during the development of the model  Solution display and model development should preferably be done in parallel
  • 49. © 2013 IBM Corporation49 From mathematical tools to real applications > Solution display / User interactions  Users often need some “what if analysis” and solve different scenarios to analyze the impact of some decisions – What happens if I have less trucks available ? – What happens if this machine breakdowns ? – What happens if the due date of a task is changed ?  This notion of what if analysis and scenarios is at the heart of ODME  Cooperative problem solving is also a common paradigm – Configuration problems (e.g. car configuration)
  • 50. © 2013 IBM Corporation50 From mathematical tools to real applications > Customer’s expectations  Requirements on solution architecture & infrastructure (clients, servers, cloud, machines, communication)  Requirements in terms of response time, scalability – Users will in general expect that response time grows linearly with problem size – … and decrease linearly with the number of machine cores  Requirements in terms of quality – No bugs. Bugs in the engine may be killers (it's not like for a research work) – Solution determinism: two resolutions of the same problem in the same conditions should give the same result
  • 51. © 2013 IBM Corporation51 From mathematical tools to real applications > Selecting the adequate solving technologies  LP, MILP, SAT, CP, Scheduling, ... : not always easy to select the adequate technology  It is a plus if you can easily change from one to the other in case you need to reach a dead-end  IBM Optimization technologies are based on a common modeling layer (called Concert Technology) that makes it easier to change from one optimization technology to another one
  • 52. © 2013 IBM Corporation52 From mathematical tools to real applications > Selecting the adequate solving technologies  Real life problems are often complex: – Large size – Mix of different source of complexity  The problem often needs to be split into several optimization models that are solved with different technologies – Hierarchical decompositions: planning with MIP, then scheduling with CP, … – Temporal decomposition on time-windows – Column Generation – Logical Benders decompositions – …  Try to understand how the customer is currently solving his problem, it may give some directions for decomposing the problem
  • 53. © 2013 IBM Corporation53 From mathematical tools to real applications > Selecting the adequate solving technologies  Model tuning is good  Model over-tuning is bad (you will only loose time) – Do not fine tune your model until the model is complete – Do not fine tune your model on a single problem instance ! – Do not fine tune your model on a single random seed !
  • 54. © 2013 IBM Corporation54 From mathematical tools to real applications > Development tools  Which time are you allowed ? – Time to compute a solution • Often time boxed, best solution found in limited time – Time to develop the software application • Boxed too by project funding  Trade off – Fast solver with poor development tool • Not much time to tune model/data, poor performance in the end – Slow solver with great development tool • Lots of time to tune model/data, poor performance in the end – Great solver with great development tools • Lots of time to tune model/data, great performance in the end
  • 55. © 2013 IBM Corporation55 From mathematical tools to real applications > Proof of Concepts (POCs)  Often, potential customers will require a POC to convince them that we are the best for solving their problem  A POC is the same thing as the final project except that: – 1. You have much less time for doing it (a few days/weeks) – 2. You are in general not paid for it – 3. It will be an essential element for the success of the deal  The POC is not only about optimization, a good visualization and interaction with the user is crucial already at this point  The POC solves a simpler problem than the actual one. This problem: – Must be relevant to the customer – Must convince the customer (and the model developer) that the approach will scale with problem complexity and with problem size: the POC should work with real problem size
  • 56. © 2013 IBM Corporation56 From mathematical tools to real applications > Communication channels with customer  We need to get feedback on the optimization products and help the costumers  Different channels for communication with users: – Technical sales people – Training sessions – Consulting (internal, external)  Partners – Customer support: L1 L2 L3  R&D – Discussion forums – User's meetings/conferences
  • 57. © 2013 IBM Corporation57 From mathematical tools to real applications > Take-home messages  You need to have a good understanding of the ecosystem of the project  You have to understand the vocabulary of the customer  You need to solve the right problem  You need to make sure you access good quality data early enough  A good solution is a feasible and locally optimal solution that is better than the current solution of the customer  Customers like solutions (even when the problem is infeasible)  Nice graphics are necessary and should preferably be developed in parallel with the model
  • 58. © 2013 IBM Corporation58 From mathematical tools to real applications > Take-home messages  Optimization is usually not a one-step process, it often requires interactions with the user (what if analysis, cooperative problem solving)  Be ready to combine several optimization models that are solved with different technologies. Be creative !  Model tuning is good, model over-tuning is bad  You need good model development tools
  • 59. © 2013 IBM Corporation59 From mathematical tools to real applications > Take-home messages Project environment Problem definition Data Problem decomposition Optimization technologies Visualization Interactivity Development tools