Model-Based Decision Making: On Supporting Deliberation with Metaheuristics
-
Upload
stevenokimbrough -
Category
Business
-
view
322 -
download
0
description
Transcript of Model-Based Decision Making: On Supporting Deliberation with Metaheuristics
Introduction Further Example Extended Example Evolutionary Computation Discussion
Model-Based Decision MakingOn Supporting Deliberation with Metaheuristics
Steven O. Kimbrough
University of Pennsylvania
INFORMS Practice Conference, 2009.04.26–28
1 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Acknowledgements
Collaborators: CHENG Shih-Fen, Gary Koehler, Ann Kuo,Lindawati, LAU Hoong Chuin (HC), Ming Lu, David HarlanWood, D.J. Wu
2 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Outline1 Introduction
DeliberationSimple Example: Simple Knapsack
2 Further ExampleGAP: The Generalized Assignment Problem
3 Extended ExampleGAP4_2 FoIsGAP4_2 IoIs
4 Evolutionary ComputationMotivationBasicsHard Problems
5 DiscussionKey PointsVision
3 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Deliberation
Given an optimization problem. . .
How can we recognize a modeling opportunity?How should we build the model(s)?How can we get a good solution?What should our decision be?
Our focus: this last question. The deliberation problem.
Recognize: The questions interact.
4 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Deliberation
Knapsack Problems
Canonical form for the Simple Knapsack model
max z =n∑
i=0
pixi (1)
subject to the constraints
n∑i=0
wixi ≤ c (2)
xi ∈ {0,1}, i = 0,1,2, . . . ,n. (3)
5 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Deliberation
Canonical GAP (= or ≤ on (6))
max z =m∑
i=1
n∑j=1
cijxij (4)
Subject to the constraints:
n∑j=1
rijxij ≤ bi i = 1, . . . ,m (5)
m∑i=1
xij ≤ 1 j = 1, . . . ,n (6)
xij ∈ {0,1} ∀i , j (7)
6 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Deliberation
Deliberation
Given a good solution, provide information relevant toimplementing the decision and to reconsidering the model.Think: post-solution analysis, sensitivity analysis,post-evaluation analysis, etc.The candle-lighting principle: “It is better to light onecandle than to curse the darkness.”The best response to a tight constraint may well be toloosen it.Generalize the point: other aspects of the model.Uncertainty, action.
7 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Deliberation
Shadow prices and reduced costs
From linear programming. Address the candle-lightingprinciple.How much would it be worth to loosen these constraints?How much would it cost us to tighten these constraints?And similar questions.All in support of deliberation.How can these questions be addressed outside of linearprogramming models?
8 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Simple Example: Simple Knapsack
z to c Response Curve (knapsack101)
160 170 180 190 200 210 220 230 2401000
1050
1100
1150
1200
1250z to c Response Curve for knapsack101 Problem
c: right−hand−side values
z: o
bjec
tive
func
tion
valu
es
9 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Simple Example: Simple Knapsack
z to c Response Curve: Zooming in
195 196 197 198 199 200 201 202 203 204 2051100
1105
1110
1115
1120
1125
1130
1135z:
obj
ectiv
e fu
nctio
n va
lues
c: right−hand−side values
z to c Response Curve for knapsack101 Problem
10 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Simple Example: Simple Knapsack
Two Challenges
We are often interested in z as a function of many varyingparameters, not just one, c in this case.
Response surface, not response line.The resulting search space will often be too large tosupport re-solving the model comprehensively.
The original problem may be solved only expensively,typically with a metaheuristic, so re-solving often is notpossible, even in a relatively small search space.
11 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Illustrative Example: GAP5_1
An organization is presented with a resource allocationproblem for which it has formulated a 0-1 integer program,called GAP5_1.The problem has 24 decision variables and 8 capacityconstraints, for a search space (∈ {1,2,3,4,5,6,7,8}) of824 = 272 = 4722366482869645213696 ≈ 4.7× 1021.A standard branch-and-bound solver (CPLEX) has foundthe optimal solution, x∗, for which z∗ = 563.
Note: OR-Library, J.E. Beasley.http://people.brunel.ac.uk/~mastjjb/jeb/info.html,[1].
12 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Solving with CPLEX
CPLEX> readName of file to read: GAP5_1.lpProblem ’GAP5_1.lp’ read.Read time = 0.00 sec.CPLEX> mipopt
...
Solution pool: 2 solutions saved.MIP - Integer optimal solution:Objective = 5.6300000000e+02Solution time=0.03 sec. Iterations = 0Nodes = 0CPLEX>
13 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Should we implement x∗?
If this were a linear programming problem. . .We would look at shadow prices, reduced costs, &c.Are there constraints that could be tightened at little costand the resources freed up deployed profitably elsewhere?Are there constraints that could be relaxed for a cost thatwould be covered by the benefit of a better solution?Perhaps we are sellers in an combinatorial auction. Wewant to consider acquiring/releasing resources in thefuture. Or negotiating with certain bidders.And so on. We would engage in deliberation (aka:post-solution analysis, sensitivity analysis, post-evaluationanalysis).But this isn’t LP, so what can we do? How can we getsupport for this sort of deliberation?
14 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Sensitivity and Post-Solution Analysis
CPLEX> display sensitivityNot available for mixed integer problems.Use CHANGE PROBLEM to change problem type.CPLEX>
What to do?
15 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Recall: Solution pool: 2 solutions saved.
CPLEX> display solution list *Change from
Solution Name Objective Value Incumbentp1 555.0000 8.33%p2 563.0000 0.00%CPLEX>
16 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
CPLEX> display solution member 1 slacks *Solution p1Constraint Name Slack Valueslack c1 1.000000slack c3 4.000000slack c4 7.000000slack c7 2.000000slack c8 2.000000All other slacks matching ’*’ are 0.
17 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
CPLEX> display solution member 2 slacks *Solution p2Constraint Name Slack Valueslack c1 2.000000slack c2 9.000000slack c3 7.000000slack c4 6.000000slack c7 3.000000slack c8 3.000000All other slacks matching ’*’ are 0.CPLEX>
18 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Illustrative Example:
GAP5_1 CPLEX Solution Pool Displayed in Resource UsageMode
Capacity ConstraintsConstraint: C1 C2 C3 C4 C5 C6 C7 C8
∑slacks
Capacity: 36 35 38 34 32 34 31 34 —Sol’n. Obj.2: x∗ 563 2 9 7 6 0 0 3 3 30
1: 555 1 0 4 7 0 0 2 2 16
At optimality, there is a slack of 2 on constraint 1, 9 onconstraint 2, etc.Potentially useful information for deliberation, especially whencombined with the corresponding solutions.
19 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
But. . . it would be nice to have more
Are there other interesting feasible solutions?If so, how might we get them?What about interesting infeasible solutions?How might we get them?
20 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Obvious approach: change the constraints andre-solve the problem
In this simple example, the maximal slack valueencountered was 9. If we sweep out the range oftightening from 1–9 on each constraint, there are 98 =43,046,721 possibilities.At 100 solutions per second, it would take
4304672160×60×24×100 ≈ 5 days to make the calculations.
And what about infeasible solutions? If we also sweep these toa depth of 9 we get 188/8640000 = 1,275.45 days.(Efficiencies are possible, these are upper bounds, but thebasic point remains.)
21 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Illustrative Example: GAP5 Optimal Solution Displayedin Resource Usage Mode
Capacity ConstraintsConstraint: C1 C2 C3 C4 C5 C6 C7 C8
∑Slacks
Capacity: 36 35 38 34 32 34 31 34 —Sol’n. Obj.
x∗ 563 2 0 2 5 4 1 3 2 19
At optimality, there is a slack of 2 on constraint 1, 0 onconstraint 2, etc.
22 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Some of the Alternative Feasible Solutions Discoveredby Evolutionary Computation for GAP5_1
Capacity ConstraintsConstraint: C1 C2 C3 C4 C5 C6 C7 C8
∑Slacks
Capacity: 36 35 38 34 32 34 31 34 —Sol’n. Obj.
x∗ 563 2 0 2 5 4 1 3 2 191 561 2 0 7 5 3 0 6 9 322 560 2 0 0 7 11 5 2 2 293 560 2 0 8 5 4 7 3 9 382 559 2 0 12 7 11 5 2 2 413 559 20 0 1 5 4 0 6 9 45
23 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
There are (at least) two dozen alternative feasible solutionswhich are close in value to the optimal solution (559/563 =0.993) and that offer seemingly large freeing of resources.Depending on prices (not represented in the model), someof these alternatives may be very attractive.We found about 2000 distinct feasible solutions withobjective function values ≥ 550. These are data fordeliberation. Note that EC also found an alternate optimalsolution.All this with modest computational effort.
24 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
Some Interesting Infeasible Solutions Discovered byEvolutionary Computation
Capacity Constraints Sum SumConstraint: C1 C2 C3 C4 C5 C6 C7 C8 Sks SpsCapacity: 36 35 38 34 32 34 31 34 — —
Sol’n. Obj.x∗ 563 2 0 2 5 4 1 3 2 19 01 570 20 0 -17 6 11 13 3 -27 53 -442 569 12 -19 -26 7 21 24 2 -7 66 -523 569 2 0 -41 6 11 18 3 -11 40 -524 569 12 15 -13 7 11 11 2 -22 58 -355 568 12 0 -13 17 4 11 2 -7 46 -206 568 12 0 -13 7 11 11 2 -7 43 -207 567 12 0 -13 18 0 11 2 -11 43 -24
Going beyond mere optimality by juggling constraints.Makes you think. . .Depending on prices and opportunities. . . 25 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP: The Generalized Assignment Problem
An Observation
Varying the capacities on the constraints, relaxing themand tightening them, creates a new search space. Howlarge is that space?The largest differential on the tightening side is 20. Goingwith just 13 on the relaxing side, 20+13 = 33. With 8constraints (and limiting ourselves to integers) this is338 = 1,406,408,618,241 ≈ 1.4× 1012. Too many timesto re-solve the problem. (Again, efficiencies are possible,these are upper bounds, but the basic point remains.)We need another method, even for such small problems.How can we find interesting, non-optimal solutions?
26 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 FoIs
GAP4_2
A representative GAP test problem.OR-Library, J.E. Beasley. http://people.brunel.ac.uk/~mastjjb/jeb/info.html, [1].c530-2 644. 5 machines, 30 jobs. 644 at optimum.Solved with FI-2Pop GA.FoIs: top 1000 feasible solutions, ranked by objectivevalue.IoIs: top 1000 infeasible solutions, ranked by distance tofeasibility.
27 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 FoIs
Can we find an optimal solution? Yes. Two!
Optimal Solution A0 1 2 3 4 5 6 7 8 9
0 – 3 3 5 1 2 1 3 1 41 2 3 2 1 4 5 5 2 4 52 3 4 5 3 4 2 1 4 1 53 2 – – – – – – – – –
Optimal Solution B0 1 2 3 4 5 6 7 8 9
0 – 3 3 5 1 2 1 4 1 41 2 3 2 1 4 4 5 2 2 52 3 4 5 3 5 3 1 4 1 53 2 – – – – – – – – –
28 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 FoIs
Now let’s compare them on their constraint slacks
Comparison of SlacksSolution 1 2 3 4 5A=644 2 5 0 1 1B=644 2 1 1 2 0
Decision makers may well prefer A over B or vice versa.
29 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 FoIs
Shadow-price-like questionsObj. Val. 1 2 3 4 5A=644 2 5 0 1 1B=644 2 1 1 2 0
643 2 5 1 4 1643 2 1 1 2 0643 0 4 1 11 0643 5 4 1 3 0643 2 1 1 3 0642 4 0 1 0 1642 2 1 0 1 0642 2 5 4 1 1642 5 4 3 1 0642 0 4 3 9 0641 2 1 1 4 0641 2 5 0 3 1
Can the additional slackresources be usefullydeployed?On which resources dowe not have muchopportunity forredeployment?(Ans: 2 & 5.)
30 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 FoIs
Shadow-price-like questions
In both of my optimal solutions, constraint 1 has a slack of2. Are there any good solutions available with a slack of atleast 10?Yes. #23 has a slack on constraint 1 of 10 and an objectivevalue of 640; #53, 11, 638; #97, 13, 636.What about constraint 2, which already has a slack of 5?#18, 641, 8; #68, 637, 15; #74, 637, 18.3? At 0 or 1. #10, 642, 4; #39, 639, 8; #48, 638, 10.4? At 1 or 2. #5, 643, 11.5? At 0 or 1. #35, 639, 9.Plus, we can do combinations. . .
31 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 FoIs
Slacks for top 100 feasible solutions
12
34
5
0
20
40
60
80
1000
5
10
15
20
32 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 FoIs
Reduced-cost-like questions
Job 25 is assigned to machine 2 in solution A and machine3 in solution B. What’s the best solution if we assign job 25to machine 1?Answer: It has an objective value of 643. The solution is
Job 25 to machine 10 0 1 2 3 4 5 6 7 8 90 – 3 3 5 1 2 3 4 1 41 2 4 2 1 4 5 5 2 2 52 3 4 3 3 5 1 1 4 1 53 2 – – – – – – – – –
Its slacks:Obj. Val. 1 2 3 4 5
643 2 1 1 3 0
33 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 IoIs
Shadow-price-like questionsObj. 1 2 3 4 5645 0 4 1 -1 5644 -1 5 1 3 0645 -2 2 1 4 1644 2 5 0 -2 0646 -2 2 0 1 1645 0 -2 0 3 1644 -2 8 0 0 2646 5 -2 0 5 0645 -2 0 7 0 1648 0 -2 1 0 1644 2 -2 1 11 -2644 2 -2 1 -2 1646 -2 -2 1 2 0645 -2 8 -2 4 1
Is there opportunity toacquire more resources?To trade in slacks andsurpluses?
34 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 IoIs
Shadow-price-like questions
We’re at 644, but we need to get to 651. Show me what Ineed to do.In the top 1000 IoIs there are 75 discovered solutions withobjective values at or above 651.
35 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 IoIs
Shadow-price-like questions. 651?Obj. 1 2 3 4 5
A=644 2 5 0 1 1B=644 2 1 1 2 0
651 -6 -9 1 1 0651 -3 -10 1 5 0651 5 1 1 -4 -12651 2 5 2 -1 -13651 2 -6 0 -13 1651 -10 -2 1 11 1651 -6 -13 1 5 0651 5 -7 4 -12 0651 -5 -7 -5 -1 -12651 2 -6 -13 6 1651 -13 4 1 8 0651 2 -9 0 5 -12
Is thereopportunity toacquire moreresources?To trade inslacks andsurpluses?
36 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 IoIs
Shadow-price-like questions. >651?Obj. 1 2 3 4 5654 -9 0 -9 5 1654 0 -6 1 -8 1654 -6 -5 1 -4 1653 2 -6 1 -12 1653 -5 -11 0 6 1653 2 -13 1 -3 0653 2 -10 -1 -4 0652 -2 4 -10 -5 0652 -3 4 -9 5 0652 -5 5 0 -8 1652 -8 5 0 -2 1652 2 1 1 -9 0652 -5 1 1 -7 0652 2 1 1 -6 1
Is thereopportunity toacquire moreresources?To trade inslacks andsurpluses?
37 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 IoIs
Reduced-cost-like questions
Job 20 is assigned to machine 3 in solutions A and B, andto 3 (and sometimes 4) in all the FoIs.There are 57 solutions in the IoIs in which we assign job 20to machine 2.What are the most promising of these solutions?
38 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 IoIs
Reduced-cost-like questions. 20 to 2?Obj. 1 2 3 4 5647 2 -2 0 6 -5646 2 -2 -12 -8 1646 2 -2 1 9 -5645 0 -6 0 -5 -12645 -8 -8 1 2 8645 2 -2 -4 -9 9645 4 -7 1 5 -5645 4 -7 -1 6 -3645 -5 -3 1 1 8644 -8 -12 0 -1 -1644 2 1 -4 2 -13644 13 -2 0 1 -3644 2 4 0 1 -12644 2 -2 1 11 -2644 0 1 -7 7 -5644 0 1 1 9 -5644 -2 1 7 0 -4
Is thereopportunity toacquire moreresources?
To trade inslacks andsurpluses?
Note: We do notfind anopportunity with20 assigned to 2and z > 647.
39 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
GAP4_2 IoIs
11.5
22.5
33.5
44.5
5
0
10
20
30
40
50−100
−50
0
50
40 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Motivation
How can we, how did we, find the FoIs and the IoIs?
Through evolutionary computation.Observation: Population-based heuristics profusely andintelligently sample the solution space in the vicinity ofgood solutions.Idea: Use these samples to derive the FoIs and IoIs.
41 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Basics
Evolutionary Algorithm Schema
1 Initialize parameters.2 Create, P0, the initial population of solutions.3 P ← P0
4 done← false5 Do while not done:
1 Evaluate and record the fitness of each member of P.2 Select members of P to compose the next generation, P ′.3 Perturb the members of P ′.4 P ← P ′5 If stopping condition is met, done← true
42 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Basics
Comments
There are many, many variations on this schema. I’ll focusprototypically on genetic algorithms, GAs.A solution is typically a string of numbers, serving asarguments to an evaluation function.For example, in a simple knapsack problem, solutionsmight be represented as lists of 0s and 1s, e.g.0 0 1 0 1 1
for a 6-item knapsack problem. Note: many otherencodings and representations are possible, e.g., toinclude representations of parameters.
43 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Basics
Comments (con’t.)
Typically, the initial population in a GA consists ofrandomly-generated solutions.Useful: seed the initial population with promising solutionsobtained otherwise.Fitness evaluation is performed on each solution. This istypically the most expensive operation and is recognizedas the standard point of comparison for different methods.Selection can be done in many different ways, but it isalways done on the basis of fitness.We use tournament selection . . .
44 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Basics
Comments (con’t.)
Perturbation of the next generation population memberscan be done in many, many different ways.We are using just mutation and recombination bysingle-point crossover. Prototypical for a simple GA.Mutation: randomly, with some probability, change thevalue of a locus, e.g.,
0 0 1 0 1 1 −→ 0 1 1 0 1 1
45 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Basics
Comments (con’t.)
Recombination by single-point crossover: randomly, withsome probability, exchange information between twoparents/members of the next generation, e.g.,0 0 1 0 1 1 −→ 0 0 1 0 0 00 0 1 1 0 0 −→ 0 0 1 1 1 1
Analogous to sexual recombination.Stopping condition.Take your pick. We fix the number of generations (newpopulations created) in order fix the number of fitnessevaluations, for comparing different GAs.
46 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Hard Problems
Hard Problems
Require heuristic solvers.With more nuance, most interesting formalized decisionproblems are NP-hard and hence (we assume) have nofast (polynomial) solver in the worst case.But many such problems are routinely solved very well withfast solvers.And many are not. For these we are forced to useheuristics, including meta-heuristics, such as GAs andvarious forms of evolutionary computation, tabu search,simulated annealing, particle swarm optimization, artificialimmune systems, ant colony optimization, bespokeheuristics, . . .
47 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Hard Problems
Constrained Optimization Models: Sources of HardProblems
Integer programming, mixed integer programming,non-linear programming, stochastic programming,multi-objective problems, . . . all typically present hardproblems for which only heuristic solvers are available.Explosion of interest in applying heuristics andmeta-heuristics to ConOptModels.Including extensive use in practice.
48 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Hard Problems
Canonical Form for ConOptModels
max~x
z = d(~x) (8)
subject to the constraints
fi(~x) ≤ ai , i = 1,2, . . . ,nf (9)gj(~x) = bj , j = 1,2, . . . ,ng (10)
xl ∈ Sl , l = 1,2, . . . ,nl (11)
Figure : Canonical form for single-objective, deterministicConOptModels. ~x = 〈x1, x2, . . . , xnl 〉
49 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Hard Problems
But, there’s a problem for GAs (and others) withconstrained optimization
The genetic operators—mutation, recombination,etc.—generally do not respect feasibility.How to handle constraint violations when a GA is beinguse to solve a ConOptModel?Approaches to handling infeasible solutions: death penalty(wasteful), penalty functions (but which?), special encodingto guarantee feasibility (rarely available), repair ofinfeasible solutions (problem-specific; computationallycostly, often).The penalty function approach is perhaps most natural andis widely used (e.g., MATLAB). Still, a number of publishedworries.
50 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Hard Problems
Our New Idea, FI2Pop GA: Separate Feasibility andOptimality Evaluations
Maintain two populations in the GA: a population offeasible solutions and a population of infeasible solutions.Fitness in the feasible population is determined solely bythe objective function.Fitness in the infeasible population is determine solely as afunction of distance to feasibility. (We used the sum ofconstraint violations.)Each population is processed in turn with a conventionalGA. Children go to the feasible or infeasible population,depending on. . . whether they are feasible or infeasible.
51 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Hard Problems
Performance Testing
Over a series of studies, we have found excellentperformance on (apparently) hard problems.We have also investigated, both theoretically andempirically, the behavior of the FI2Pop GA. [2]Note: Mindful of the No Free Lunch Theorems.
Typical behavior: FI-2Pop GA is competitive with penalty GAson FoIs and superior on IoIs.
52 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Key Points
Summary
Key for deliberation support:FoIs: Feasible solutions of Interest: Feasible, non-optimalsolutions with good objective values.IoIs: Infeasible solutions of Interest: Infeasible solutionsnear feasibility with good objective values.
These can be found by intelligent sampling of the solutions.This is just what metaheuristics, such as GAs, do.
53 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Key Points
Concept
If we had all possible solutions, we could fully answer ourpost-solution deliberation questions. (But we can’t havethat.)If we could get a representative random sample of all thesolutions, we could have good estimates for ourpost-solution deliberation questions. (But the searchspaces are too large.)If we could bias our sampling to the regions of interest(near the boundary(ies) of the feasible region(s)), we couldhave good estimates for our post-solution deliberationquestions.That’s what we are reporting. And effective means to do it.
54 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Key Points
To be done
Explore metaheuristics fully for purposes of deliberationsupport.Two categories:
Individual, local search based.Tabu search, simulated annealing, etc.Population based search.Evolutionary computation, particle swarm optimization, antcolony optimization, artificial immune systems, scattersearch, etc.
What works best for producing FoIs and IoIs? Scalingissues? OGIT.
55 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Vision
We envision. . .
A transformation in how complex COModels are used inpractice.Estimates given for all post-solution questions of interest.A great broadening of the scope of use and application ofCOModels.An empowering of users, as information for decisionsupport is made readily available.
56 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Vision
J. E. Beasley.OR-Library.World Wide Web, Accessed July 27, 2009.http://people.brunel.ac.uk/~mastjjb/jeb/info.html.
Steven Orla Kimbrough, Gary J. Koehler, Ming Lu, andDavid Harlan Wood.On a feasible–infeasible two–population (FI-2Pop) geneticalgorithm for constrained optimization: Distance tracing andno free lunch.European Journal of Operational Research,190(2):310–327, 2008.
57 / 58
Introduction Further Example Extended Example Evolutionary Computation Discussion
Vision
$Id: deliberation-COModel-master-beamer.tex 3607 2013-06-23 06:20:09Z sok $
58 / 58