20
Optimization Optimization technology technology Recent history dates back to invention of Recent history dates back to invention of Operations Research (OR) techniques by Operations Research (OR) techniques by mathematicians such as George Dantzig mathematicians such as George Dantzig (1940’s) (1940’s) Mathematical programming techniques from OR Mathematical programming techniques from OR have provided the basis for most have provided the basis for most optimization solutions in 1950’s, 1960’s and optimization solutions in 1950’s, 1960’s and 1970’s 1970’s Constraint programming (invented in the Constraint programming (invented in the 1970’s by computer scientists such as 1970’s by computer scientists such as Mackworth, Montanari and Waltz) has grown in Mackworth, Montanari and Waltz) has grown in popularity in the commercial setting since popularity in the commercial setting since the 1980’s. the 1980’s. Agent technology has become recognized as Agent technology has become recognized as an alternative basis for solving an alternative basis for solving

Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

  • View
    217

  • Download
    2

Embed Size (px)

Citation preview

Page 1: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Optimization technologyOptimization technologyRecent history dates back to invention of Operations Research Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (OR) techniques by mathematicians such as George Dantzig (1940’s)(1940’s)Mathematical programming techniques from OR have provided Mathematical programming techniques from OR have provided the basis for most optimization solutions in 1950’s, 1960’s and the basis for most optimization solutions in 1950’s, 1960’s and 1970’s1970’sConstraint programming (invented in the 1970’s by computer Constraint programming (invented in the 1970’s by computer scientists such as Mackworth, Montanari and Waltz) has grown in scientists such as Mackworth, Montanari and Waltz) has grown in popularity in the commercial setting since the 1980’s.popularity in the commercial setting since the 1980’s.Agent technology has become recognized as an alternative basis Agent technology has become recognized as an alternative basis for solving optimization problems since the 1990’sfor solving optimization problems since the 1990’s

Page 2: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

An exampleAn example

Optmization in the steel industryOptmization in the steel industry

Page 3: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Basic elements of an Basic elements of an optimization problemoptimization problem

Identify the Identify the decision variables decision variables – finding a value for each – finding a value for each of these constitutes a solution to the problemof these constitutes a solution to the problem

Identify the set of Identify the set of constraints constraints – these determine what the – these determine what the allowed combinations of values are for the decision allowed combinations of values are for the decision variables. The language for writing constraints depends on variables. The language for writing constraints depends on the specific optimization technique. Ex: Linear the specific optimization technique. Ex: Linear programming only allows us to write constraints in the programming only allows us to write constraints in the form of linear inequalities (e.g., x + y < 10).form of linear inequalities (e.g., x + y < 10).

Identify the Identify the objective function.objective function. This is function to be This is function to be maximized or minimized, e.g. maximize profit, or maximized or minimized, e.g. maximize profit, or minimize cost.minimize cost.

Page 4: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Supply chain Supply chain optimizationoptimization

Business objective: improve supply chain efficiency Business objective: improve supply chain efficiency (velocity ?), optimize operation of the supply chain(velocity ?), optimize operation of the supply chain

Metrics for efficiency - what do we optimize ?Metrics for efficiency - what do we optimize ?– Define the problem in terms of Define the problem in terms of decision variablesdecision variables– Define an Define an objective functionobjective function in terms of the decision in terms of the decision

variables. The goal would be to variables. The goal would be to maximizemaximize or or minimizeminimize the value of this function, i.e., to find an allocation of the value of this function, i.e., to find an allocation of values to the decision variables such that the value of values to the decision variables such that the value of this function is either maximized or minimized.this function is either maximized or minimized.

– Supply chain optimization is the continuous process of Supply chain optimization is the continuous process of seeking optimal allocations of values to decision seeking optimal allocations of values to decision variablesvariables

Page 5: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Common optimization problems: Common optimization problems: II

Long-term planning Long-term planning (time-frame: several months/years):(time-frame: several months/years):– Questions:Questions:

» How much of each product type should I manufacture ? When ? Where How much of each product type should I manufacture ? When ? Where ? (Assumes a network of manufacturing centers with potential ? (Assumes a network of manufacturing centers with potential duplication of manufacturing capability)duplication of manufacturing capability)

» How much should I keep in inventory (both for manufacturing inputs How much should I keep in inventory (both for manufacturing inputs and outputs) ? Where ? (Assumes a distributed network of warehouses)and outputs) ? Where ? (Assumes a distributed network of warehouses)

– Constraints:Constraints:» Capacity constraints (both manufacturing and inventory)Capacity constraints (both manufacturing and inventory)» Demand profileDemand profile» Process constraints (downtimes, planned outages)Process constraints (downtimes, planned outages)» Supply variabilitySupply variability

– Objectives: Profit/revenue maximization, maximizing asset Objectives: Profit/revenue maximization, maximizing asset utilization, minimization of deviation from demand profile, utilization, minimization of deviation from demand profile, minimization of deviation from target inventory profileminimization of deviation from target inventory profile

Page 6: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Common optimization problems: IICommon optimization problems: II

Medium-term planning/schedulingMedium-term planning/scheduling (time-frame: a few (time-frame: a few months/weeks)months/weeks)::– Similar to long-term planning, but with scheduling constraints and objectives Similar to long-term planning, but with scheduling constraints and objectives

addedadded Unit scheduling/reactive scheduling:Unit scheduling/reactive scheduling:

– Questions:Questions:» In what sequence should orders/jobs be manufactured ? Which job should I In what sequence should orders/jobs be manufactured ? Which job should I

process on a given production unit at a given point in time ? Should I go process on a given production unit at a given point in time ? Should I go into overtime ?into overtime ?

– Constraints:Constraints:» Capacity constraintsCapacity constraints» Sequencing constraintsSequencing constraints» Orders + deadlinesOrders + deadlines» Process constraints (downtimes etc.)Process constraints (downtimes etc.)

– Objectives: Minimize makespan (i.e., maximize asset utilization), Objectives: Minimize makespan (i.e., maximize asset utilization), minimize deviation from order deadlines, maximize profit/revenueminimize deviation from order deadlines, maximize profit/revenue

Page 7: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Common optimization problems: IIICommon optimization problems: III

Shipping:Shipping:– How do I allocate orders to trucks ?How do I allocate orders to trucks ?

– What routes should trucks travel on ?What routes should trucks travel on ?

– How do I allocate truck to routes ?How do I allocate truck to routes ?

Page 8: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Major classes of optimization Major classes of optimization techniques:techniques:

From the field of operations research (OR)From the field of operations research (OR)– Linear programmingLinear programming– Integer programming….Integer programming….

From the field of artificial intelligence (AI)From the field of artificial intelligence (AI)– Constraint programmingConstraint programming– Heuristic search techniquesHeuristic search techniques

Page 9: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Why constraint programming: IWhy constraint programming: I

Operations research (OR) techniques Operations research (OR) techniques guarantee optimality, but solve an guarantee optimality, but solve an approximation of the real problemapproximation of the real problem

OR techniques operate in “black box” OR techniques operate in “black box” mode – no operator interventionmode – no operator intervention

OR techniques are brittleOR techniques are brittle OR techniques cannot be interrupted to OR techniques cannot be interrupted to

obtain partial solutionsobtain partial solutions

Page 10: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Why constraint programming: IIWhy constraint programming: II

Robust handling of inputsRobust handling of inputs– Avoid giving up if the problem is too hardAvoid giving up if the problem is too hard

Incremental re-solvingIncremental re-solving– Avoid starting from scratch if there is a small change Avoid starting from scratch if there is a small change

to the problem inputsto the problem inputs Mixed-initiative Mixed-initiative solvingsolving

– Allow the operator full control over the problem Allow the operator full control over the problem solving processsolving process

– Ask the operator for guidance when there isn’t enough Ask the operator for guidance when there isn’t enough information to generate a solutioninformation to generate a solution

Page 11: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Why constraint programming: IIIWhy constraint programming: III

Generating (partial) solutions in real-timeGenerating (partial) solutions in real-time– Allow the operator to interrupt and obtain a (good) Allow the operator to interrupt and obtain a (good)

partial solution if the solving process takes too longpartial solution if the solving process takes too long ““What-if” analysisWhat-if” analysis

– Allow the operator to generate hypothetical Allow the operator to generate hypothetical scenarios (e.g. scenarios (e.g. What would the roster look like if What would the roster look like if John gets the Wednesday evening shift ?)John gets the Wednesday evening shift ?)

– Support the merging of hypothetical scenariosSupport the merging of hypothetical scenarios User-friendly interfacesUser-friendly interfaces

Page 12: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Constraint programming: Constraint programming: InternalsInternals

Identify the variables of interest (the Identify the variables of interest (the decision decision variables)variables)

Identify the Identify the variable domainsvariable domains (the sets from (the sets from which these variables might be assigned which these variables might be assigned values)values)

Identify the relevant Identify the relevant constraintsconstraints on these on these variables. Ex: X= Y + 2 variables. Ex: X= Y + 2 OROR

(X=a AND Y=b) OR (X=c AND Y=d)(X=a AND Y=b) OR (X=c AND Y=d)

Page 13: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Example: SchedulingExample: Scheduling Variables: {Astart, Aend, Bstart, Bend}Variables: {Astart, Aend, Bstart, Bend} Domains: {1,2, …, 24} for each variableDomains: {1,2, …, 24} for each variable Constraints:Constraints:

– Aend - Astart = 1Aend - Astart = 1– Astart > 8Astart > 8– Aend < 13Aend < 13– Bend - Bstart = 1Bend - Bstart = 1– Bstart > 8Bstart > 8– Bend < 13Bend < 13– Bstart - Aend = 1Bstart - Aend = 1

Page 14: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Constraint-based Constraint-based Optimization: IOptimization: I

Specify an Specify an objectiveobjective function to be function to be maximized (e.g. profit or resource maximized (e.g. profit or resource utilization) or minimized (e.g. cost or cycle-utilization) or minimized (e.g. cost or cycle-time)time)

Constraint-based optimization techniques Constraint-based optimization techniques search through a space of increasingly search through a space of increasingly better better solutionssolutions– And can be interrupted to obtain the current And can be interrupted to obtain the current

best solutionbest solution

Page 15: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Constraint-based Optimization: IIConstraint-based Optimization: II

Transforming an optimization problem to a Transforming an optimization problem to a satisfaction problem:satisfaction problem:– Identify the current value of the objective function Identify the current value of the objective function f(S)f(S)

under the current solution under the current solution SS– Post a new constraint Post a new constraint f(X) > f(S)f(X) > f(S) (where (where XX is the is the

signature of the objective function signature of the objective function ff))– Search for a new solution to the satisfaction problemSearch for a new solution to the satisfaction problem– Iterate until the satisfaction problem becomes Iterate until the satisfaction problem becomes

unsolvable (or when the marginal improvement over unsolvable (or when the marginal improvement over each iteration drops below a threshold)each iteration drops below a threshold)

(Observe that this procedure can be interrupted(Observe that this procedure can be interrupted at any time at any time to obtain the current best solution)to obtain the current best solution)

Page 16: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Example: Example: Over-constrained Over-constrained schedulingscheduling

Variables: {Astart, Aend, Bstart, Bend}Variables: {Astart, Aend, Bstart, Bend} Domains: {1,2, …, 24} for each variableDomains: {1,2, …, 24} for each variable Constraints:Constraints:

– Aend - Astart = 1 Aend - Astart = 1 – Astart > 8 Astart > 8 – Aend < 13 Aend < 13 – Bend - Bstart = 1 Bend - Bstart = 1 – Bstart > 8 Bstart > 8 – Bend < 13 Bend < 13 – Bstart - Aend = 2 Bstart - Aend = 2

Page 17: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Soft constraintsSoft constraints

When a problem is over-constrained, When a problem is over-constrained, some constraints have to be violated.some constraints have to be violated.– ““If at all possible, I’d like to do my talk If at all possible, I’d like to do my talk

at 11am”at 11am” Even when a constraint is violated, we Even when a constraint is violated, we

do not have to deviate too far from itdo not have to deviate too far from it

Page 18: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Supply chain optimization: Market Supply chain optimization: Market agentsagents

Market-oriented programming Market-oriented programming (Wellman (Wellman et alet al) exploits market ) exploits market models in multi-agent models in multi-agent computational economies to solve computational economies to solve distributed resource allocation distributed resource allocation problems.problems.

The only agent interactions are The only agent interactions are trading interactionstrading interactions by offering to by offering to buy or sell commodities at fixed buy or sell commodities at fixed prices.prices.

When the system reaches When the system reaches equilibrium, the current allocations equilibrium, the current allocations of commodities to agents represents of commodities to agents represents a solution to the distributed a solution to the distributed resource allocation problem.resource allocation problem.

Applications:Applications:– Truck despatch in open-pit minesTruck despatch in open-pit mines– Courier truck despatchCourier truck despatch

A hybrid market-oriented and A hybrid market-oriented and constraint-based solutionconstraint-based solution

A market mechanism such as a sealed-A market mechanism such as a sealed-bid auction determines initial allocation bid auction determines initial allocation of tasks to trucks. Computing bids of tasks to trucks. Computing bids requires constraint solvingrequires constraint solving

Near-optimality of task allocations Near-optimality of task allocations must be maintained in a dynamic must be maintained in a dynamic environment. This is achieved via a environment. This is achieved via a market mechanism where task market mechanism where task allocations are tradedallocations are traded

Determining whether a trade is feasible Determining whether a trade is feasible requires constraint solvingrequires constraint solving

Page 19: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

Some vendors of optimization Some vendors of optimization systemssystems

ILOGILOG ConstraintWorksConstraintWorks CosytecCosytec Numetrix (now part of JDEdwards)Numetrix (now part of JDEdwards) SAPSAP PeoplesoftPeoplesoft BaanBaan

Page 20: Optimization technology Recent history dates back to invention of Operations Research (OR) techniques by mathematicians such as George Dantzig (1940’s)

The endThe end

Questions?