Lecture 3

45
Lecture 3 Lecture 3 Robert Zimmer Robert Zimmer Room 6, 25 St James Room 6, 25 St James

description

Lecture 3. Robert Zimmer Room 6, 25 St James. Introduction to Optimization Modeling. 3.2 Introduction to Optimization. Common elements of all optimization problems Decision Variables - the variables whose values the decision maker is allowed to choose. - PowerPoint PPT Presentation

Transcript of Lecture 3

Page 1: Lecture 3

Lecture 3Lecture 3Robert ZimmerRobert Zimmer

Room 6, 25 St JamesRoom 6, 25 St James

Page 2: Lecture 3

Introduction to Optimization Introduction to Optimization ModelingModeling

Page 3: Lecture 3

3.2 Introduction to 3.2 Introduction to OptimizationOptimization

► Common elements of all optimization problemsCommon elements of all optimization problems Decision VariablesDecision Variables - the variables whose values - the variables whose values

the decision maker is allowed to choose.the decision maker is allowed to choose. Objective Function Objective Function - value that is to be optimized - value that is to be optimized

– maximized or minimized– maximized or minimized Constraints Constraints that must be satisfiedthat must be satisfied

► Excel terminology for optimizationExcel terminology for optimization Decision variables = Decision variables = changing cellschanging cells Objective = Objective = target celltarget cell ConstraintsConstraints impose restrictions on the values in impose restrictions on the values in

the changing cells.the changing cells.

Page 4: Lecture 3

► A common form for a constraint is A common form for a constraint is

nonnegativitynonnegativity►NonnegativityNonnegativity constraints imply that changing constraints imply that changing

cells must contain nonnegative values.cells must contain nonnegative values.► Two steps in solving an optimization problem.Two steps in solving an optimization problem.

Model developmentModel development – decide what the decision – decide what the decision variables are, what the objective is, which constraints variables are, what the objective is, which constraints are required and how everything fits togetherare required and how everything fits together

OptimizeOptimize – systematically choose the values of the – systematically choose the values of the decision variables that make the objective as large or decision variables that make the objective as large or small as possible and cause all of the constraints to small as possible and cause all of the constraints to be satisfied.be satisfied.

Page 5: Lecture 3

►A A feasible solutionfeasible solution is any set of values is any set of values

of the decision variables that satisfies all of the decision variables that satisfies all of the constraints.of the constraints.

►The set of all feasible solutions is called The set of all feasible solutions is called the the feasible regionfeasible region..

►An An infeasible solution infeasible solution is a solution is a solution where at least one constraint is not where at least one constraint is not satisfied.satisfied.

►The The optimal solutionoptimal solution is the feasible is the feasible solution that optimizes the objective.solution that optimizes the objective.

Page 6: Lecture 3

Find maximal point in Find maximal point in Feasibility spaceFeasibility space

Page 7: Lecture 3

► An An algorithmalgorithm is basically a “plan of attack”. is basically a “plan of attack”. It is a prescription for carrying out the steps It is a prescription for carrying out the steps required to achieve some goal.required to achieve some goal.

► The The simplex methodsimplex method is an algorithm that is is an algorithm that is suitable for linear models.suitable for linear models.

► Excel’s Solver tool finds the best feasible Excel’s Solver tool finds the best feasible solution with the most suitable algorithm.solution with the most suitable algorithm.

► There is really a There is really a thirdthird step in the optimization step in the optimization process: process: sensitivity analysissensitivity analysis. This step . This step allows us to ask a number of what-if questions allows us to ask a number of what-if questions about the completed model.about the completed model.

Page 8: Lecture 3

►Graphs of equations and inequalitiesGraphs of equations and inequalities

Page 9: Lecture 3

Example 3.1 – Two Variable Example 3.1 – Two Variable ModelModel

►Maggie decided she must plan her desserts Maggie decided she must plan her desserts carefully. Maggie will allow herself no more then carefully. Maggie will allow herself no more then 450 calories and 25 grams of fat in her daily 450 calories and 25 grams of fat in her daily desserts. She requires at least 120 grams of desserts. She requires at least 120 grams of desserts a day. Each dessert also has a “taste desserts a day. Each dessert also has a “taste index”.index”.

►What should her daily dessert plan be to stay What should her daily dessert plan be to stay within her constraints and maximizes the total within her constraints and maximizes the total taste index of her dessert?taste index of her dessert?

► First step is to identify appropriate decision First step is to identify appropriate decision variables, the appropriate objective, the variables, the appropriate objective, the constraints and the relationships between them.constraints and the relationships between them.

Page 10: Lecture 3

Ex. 3.1(cont’d) - Algebraic ModelEx. 3.1(cont’d) - Algebraic Model► Identify the decision variable, write Identify the decision variable, write

expressions fro the total taste index and the expressions fro the total taste index and the constraints in terms of the constraints in terms of the x’sx’s. Then add . Then add explicit constraints to ensure that the explicit constraints to ensure that the x’sx’s are are nonnegative.nonnegative.

Maximize 37(85)Maximize 37(85)xx11 +65(95) +65(95)xx22Subject to:Subject to:

120120xx11+160+160xx22≤450≤45055xx11+10+10xx22≤25≤25

3737xx11+65+65xx22≥120≥120xx11,,xx22 ≥ 0 ≥ 0

Page 11: Lecture 3

Ex. 3.1(cont’d) - Graphical Ex. 3.1(cont’d) - Graphical ModelModel

►When there are only two decision variables When there are only two decision variables the problem can be solved graphically.the problem can be solved graphically.

►To graph this, consider the associate To graph this, consider the associate equality (120equality (120xx11+160+160xx22=450) and find =450) and find where the associated line crosses the where the associated line crosses the axes.axes.

►Graph the constraints on the figure as Graph the constraints on the figure as shown on the next slide.shown on the next slide.

Page 12: Lecture 3

Ex. 3.1(cont’d) - Graphical Ex. 3.1(cont’d) - Graphical ModelModel

►To see which feasible point maximizes the To see which feasible point maximizes the objective, draw a sequence of lines where, objective, draw a sequence of lines where, for each, the objective is a constant.for each, the objective is a constant.

►The last feasible point that it touches is The last feasible point that it touches is the optimal point.the optimal point.

Page 13: Lecture 3

Ex. 3.1(cont’d) - Spreadsheet Ex. 3.1(cont’d) - Spreadsheet ModelModel

►Common elements in all LP spreadsheet models Common elements in all LP spreadsheet models are:are: InputsInputs – all numeric data given in the statement of – all numeric data given in the statement of

the problem (Blue border)the problem (Blue border) Changing cellsChanging cells – the values in these cells can be – the values in these cells can be

changed to optimize the objective (Red border)changed to optimize the objective (Red border) Target(objective) cellTarget(objective) cell – contains the value of the – contains the value of the

objective (Double line black boarder)objective (Double line black boarder) ConstraintsConstraints – specified in the Solver dialog box – specified in the Solver dialog box NonnegativityNonnegativity – check an option in a Solver dialog – check an option in a Solver dialog

box to indicate nonnegative changing cellsbox to indicate nonnegative changing cells

Page 14: Lecture 3

Ex. 3.1(cont’d) - Spreadsheet Ex. 3.1(cont’d) - Spreadsheet ModelModel

►Three stages of the complete solution:Three stages of the complete solution: Model development stage – enter all inputs, Model development stage – enter all inputs,

trial values for the changing cells, and trial values for the changing cells, and formulas relating these in spreadsheetformulas relating these in spreadsheet

Invoke Solver – designate the objective cell, Invoke Solver – designate the objective cell, changing cells, the constraints and selected changing cells, the constraints and selected options, and tell Solver to find the options, and tell Solver to find the optimal optimal solution.solution.

Sensitivity analysis – see how the optimal Sensitivity analysis – see how the optimal solution changes as the selected inputs varysolution changes as the selected inputs vary

Page 15: Lecture 3

Ex. 3.1(cont’d) - Spreadsheet Ex. 3.1(cont’d) - Spreadsheet ModelModel

►Solver dialog box for this model.Solver dialog box for this model.

Page 16: Lecture 3

Ex. 3.1(cont’d) - Spreadsheet Ex. 3.1(cont’d) - Spreadsheet ModelModel

►Optimal Solution for the Dessert ModelOptimal Solution for the Dessert Model

Page 17: Lecture 3

Ex. 3.1(cont’d) - Spreadsheet Ex. 3.1(cont’d) - Spreadsheet ModelModel

► In this solution the calorie and fat In this solution the calorie and fat constraints have been met exactly, constraints have been met exactly, thus they are thus they are bindingbinding. The constraint . The constraint on grams in on grams in nonbindingnonbinding, the positive , the positive difference in grams is calleddifference in grams is called slack slack..

Page 18: Lecture 3

3.4 Sensitivity Analysis3.4 Sensitivity Analysis► Often it is useful to perform sensitivity Often it is useful to perform sensitivity

analysis to see how (or if) the optimal analysis to see how (or if) the optimal solution changes as one or more inputs solution changes as one or more inputs change.change.

► The Solve dialog box offers you the option to The Solve dialog box offers you the option to obtain a sensitivity report.obtain a sensitivity report.

► Solver’s sensitivity report performs two types Solver’s sensitivity report performs two types of sensitivity analysis:of sensitivity analysis:1.1. on the coefficients of the objectives, the on the coefficients of the objectives, the c’sc’s, and, and2.2. on the right hand sides of the constraints, the on the right hand sides of the constraints, the b’sb’s..

Page 19: Lecture 3

►The sensitivity report has two sections The sensitivity report has two sections

corresponding to the two types of analysis. corresponding to the two types of analysis. Example 3.1’s sensitivity report.Example 3.1’s sensitivity report.

Page 20: Lecture 3

►The The reduced costreduced cost for any decision not for any decision not

currently in the optimal solution indicates currently in the optimal solution indicates how much better that coefficient must be how much better that coefficient must be before that variable will enter at a positive before that variable will enter at a positive level.level.

►The term The term shadow priceshadow price is an economic is an economic term. It indicates the change in the optimal term. It indicates the change in the optimal value of the objective function when the value of the objective function when the right-hand side of some constraint changes right-hand side of some constraint changes by a given amount.by a given amount.

Page 21: Lecture 3

►The SolverTable Add-in allows us to ask The SolverTable Add-in allows us to ask

sensitivity questions about sensitivity questions about anyany of the of the input variables.input variables.

►SolverTable’s can be used in two ways:SolverTable’s can be used in two ways: One-way tableOne-way table – single input cell and any – single input cell and any

number of output cellsnumber of output cells Two-way tableTwo-way table – two input cells and one – two input cells and one

or more outputsor more outputs►The results are easily interpreted.The results are easily interpreted.

Page 22: Lecture 3

►For the dessert model, check how sensitive the For the dessert model, check how sensitive the

optimal dessert plan and total taste index are tooptimal dessert plan and total taste index are to(1) changes in the number of calories(1) changes in the number of calories(2) the number of daily dessert calories allowed.(2) the number of daily dessert calories allowed.

►The solution to question (1) can be solved by The solution to question (1) can be solved by selecting the Data/SolverTable menu item and selecting the Data/SolverTable menu item and select a one-way table in the first dialog box. select a one-way table in the first dialog box. The second dialog box should be completed as The second dialog box should be completed as shown on the next slide.shown on the next slide.

Page 23: Lecture 3

►The second question asks us to vary two inputs The second question asks us to vary two inputs simultaneously. This requires a two-way SolverTable. simultaneously. This requires a two-way SolverTable. Select the two-way option in the first SolverTable dialog Select the two-way option in the first SolverTable dialog box to get the two-way table dialog box.box to get the two-way table dialog box.

Page 24: Lecture 3
Page 25: Lecture 3

3.5 Properties of Linear 3.5 Properties of Linear ModelsModels

►Linear programming is an important subset Linear programming is an important subset of a larger class of models called of a larger class of models called mathematical programming modelsmathematical programming models..

►Three important properties that LP models Three important properties that LP models possesspossess Proportionality Proportionality

►If a level of any activity is multiplied by a constant If a level of any activity is multiplied by a constant factor, the contribution of this activity to the factor, the contribution of this activity to the objective, or to any of the constraints in which the objective, or to any of the constraints in which the activity is involved, is multiplied by the same factor.activity is involved, is multiplied by the same factor.

Page 26: Lecture 3

AdditivityAdditivity

►This property implies that the sum of the This property implies that the sum of the contributions from the various activities to a contributions from the various activities to a particular constraint equals the total contribution particular constraint equals the total contribution to that constraint.to that constraint.

DivisibilityDivisibility►This property means that both integer and This property means that both integer and

noninteger levels of the activities are allowed.noninteger levels of the activities are allowed.►How can you recognize whether a model How can you recognize whether a model

satisfies proportionality and additivity?satisfies proportionality and additivity?

Page 27: Lecture 3

► Not easy to recognize in a spreadsheet Not easy to recognize in a spreadsheet

model because the logic of the model can model because the logic of the model can be embedded in a series of cell formulas.be embedded in a series of cell formulas.

► Often it is easier to recognize when a model Often it is easier to recognize when a model is not linear. Two situations that lead to is not linear. Two situations that lead to nonlinear models are whennonlinear models are when1.1. there are products or quotients of expressions there are products or quotients of expressions

involving changing cells, andinvolving changing cells, and2.2. there are nonlinear functions, such as squares, there are nonlinear functions, such as squares,

square roots, or logarithms, of changing cells.square roots, or logarithms, of changing cells.

Page 28: Lecture 3

►Real-life problems are almost never exactly Real-life problems are almost never exactly

linear. However, a linear approximation linear. However, a linear approximation often yields very useful results.often yields very useful results.

► In terms of Solver, if the model is linear the In terms of Solver, if the model is linear the Assume Linear Model box must be checked Assume Linear Model box must be checked in the Solver Options dialog box.in the Solver Options dialog box.

►Check the Assume Linear Model box even if Check the Assume Linear Model box even if the divisibility property is violated.the divisibility property is violated.

Page 29: Lecture 3

► If the Solver returns a message that “the If the Solver returns a message that “the

condition for Assume Linear Model are not condition for Assume Linear Model are not satisfied” itsatisfied” it can indicate a logical error in your formulation.can indicate a logical error in your formulation. can also indicate that Solver erroneously can also indicate that Solver erroneously

thinks the linearity conditions are not satisfied.thinks the linearity conditions are not satisfied.►Try not checking the Assume Linear model Try not checking the Assume Linear model

box and see if that works. In any case it box and see if that works. In any case it always helps to have a well-scaled model.always helps to have a well-scaled model.

Page 30: Lecture 3

3.6 Infeasibility and 3.6 Infeasibility and UnboundednessUnboundedness

► It is possible that there are no feasible It is possible that there are no feasible solutions to a model. There are generally solutions to a model. There are generally two possible reasons for this:two possible reasons for this:1.1. There is a mistake in the model (an input There is a mistake in the model (an input

entered incorrectly) orentered incorrectly) or2.2. the problem has been so constrained that there the problem has been so constrained that there

are no solutions left.are no solutions left.► In general, there is no foolproof way to find In general, there is no foolproof way to find

the problem when a “no feasible solution” the problem when a “no feasible solution” message appears.message appears.

Page 31: Lecture 3

►A second type of problem is A second type of problem is

unboundednessunboundedness..►Unboundedness is that the model can be Unboundedness is that the model can be

made as large as possible. If this occurs it is made as large as possible. If this occurs it is likely that a wrong input has been entered or likely that a wrong input has been entered or forgotten some constraints.forgotten some constraints.

► Infeasibility and unboundedness are quite Infeasibility and unboundedness are quite different. It is possible for a model to have no different. It is possible for a model to have no feasible solution but no realistic model can feasible solution but no realistic model can have an unbounded solution.have an unbounded solution.

Page 32: Lecture 3

Example 3.2 – Product Mix Example 3.2 – Product Mix ModelModel

►The product mix problem is basically to select the The product mix problem is basically to select the optimal mix of products to produce to maximize profit.optimal mix of products to produce to maximize profit.

►The Monet company produces four types of picture The Monet company produces four types of picture frames. The four types differ with respect to size, shape frames. The four types differ with respect to size, shape and materials used.and materials used.

►Each frame requires a certain amount of skilled labor, Each frame requires a certain amount of skilled labor, metal and glass. They also all have different selling metal and glass. They also all have different selling prices.prices.

►Monet can produce in the coming week but they do not Monet can produce in the coming week but they do not want any inventory at the end of the week.want any inventory at the end of the week.

►What should the company do to maximize its profit for What should the company do to maximize its profit for this week?this week?

Page 33: Lecture 3

Ex. 3.2(cont’d) - Algebraic ModelEx. 3.2(cont’d) - Algebraic ModelMaximizeMaximize 66xx11 + 2 + 2xx22 + 4 + 4xx33 + 3 + 3xx44 (profit objective) (profit objective)

Subject toSubject to 22xx11 + + xx22 + 3 + 3xx33 + 2 + 2xx44 4000 (labor 4000 (labor constraint)constraint)44xx11 + 2 + 2xx22 + + xx33 + 2 + 2xx44 10,000 (glass constraint) 10,000 (glass constraint) xx11 1000 (frame 1 sales constraints) 1000 (frame 1 sales constraints) xx22 2000 (frame 2 sales constraints) 2000 (frame 2 sales constraints) xx33 500 (frame 3 sales constraints) 500 (frame 3 sales constraints) xx44 1000 (frame 4 sales constraints) 1000 (frame 4 sales constraints) xx11, , xx22, , xx33, , xx44 0 (nonnegativity constraint) 0 (nonnegativity constraint)

Page 34: Lecture 3

Ex. 3.2(cont’d) - Spreadsheet Ex. 3.2(cont’d) - Spreadsheet ModelModel

►To develop the spreadsheet model follow these To develop the spreadsheet model follow these steps:steps: InputsInputs - Enter the various inputs in the shaded ranges. - Enter the various inputs in the shaded ranges.

Enter only numbers, not formulas in the input cells. Enter only numbers, not formulas in the input cells. Range namesRange names – Name the ranges as indicated. – Name the ranges as indicated. Changing cellsChanging cells - Enter any four values in the range - Enter any four values in the range

named Produced. named Produced. Resources usedResources used - Enter the formula - Enter the formula

=SUMPRODUCT (B9:E9,Produced)=SUMPRODUCT (B9:E9,Produced) in cell B21 in cell B21 and copy it to the rest of the Used range. and copy it to the rest of the Used range.

Revenues, costs, and profitsRevenues, costs, and profits – Enter the formulas to – Enter the formulas to calculate these values.calculate these values.

Page 35: Lecture 3

►The optimal solution for the product mix model The optimal solution for the product mix model

is shown on the next slide.is shown on the next slide.►The sensitivity analysis allows us to experiment The sensitivity analysis allows us to experiment

with different inputs to this problem. Simply with different inputs to this problem. Simply change the inputs and then rerun Solver.change the inputs and then rerun Solver.

►Use SolverTable to perform a more systematic Use SolverTable to perform a more systematic sensitivity analysis on one or more input sensitivity analysis on one or more input variables.variables.

►Additional insight can be gained from Solver’s Additional insight can be gained from Solver’s sensitivity report.sensitivity report.

Page 36: Lecture 3

Example 3.3 – Another Product Example 3.3 – Another Product Mix ModelMix Model

►Pigskin company must decide how many footballs Pigskin company must decide how many footballs to produce each month. It has decided to us a 6-to produce each month. It has decided to us a 6-month planning horizon.month planning horizon.

►Pigskin wants to determine the production Pigskin wants to determine the production schedule that minimizes the total production and schedule that minimizes the total production and holding costs.holding costs.

►By modeling this type of problem, one needs to be By modeling this type of problem, one needs to be very specific about the very specific about the timingtiming events. events.

►By modifying the timing assumptions in this type By modifying the timing assumptions in this type of model, one can get alternative – and equally of model, one can get alternative – and equally realistic – models with very different solutions.realistic – models with very different solutions.

Page 37: Lecture 3

Ex. 3.3(cont’d) - Algebraic ModelEx. 3.3(cont’d) - Algebraic Model►The decision variables are the production The decision variables are the production

quantities for the 6 months (quantities for the 6 months (PP11 through through PP66). ). II11 through through II66 is the corresponding end-of-month is the corresponding end-of-month inventories.inventories.

►The obvious constraints are on the production The obvious constraints are on the production and inventory storage capacities for each and inventory storage capacities for each month, month, jj..

► In addition, "balance” constraints that relate to In addition, "balance” constraints that relate to P’sP’s and and I’s I’s are needed. The balance equation are needed. The balance equation for the month for the month j is Ij is Ijj--1 + 1 + PPjj = = DDjj + + IIjj. .

Page 38: Lecture 3

Ex. 3.3(cont’d) - Algebraic Ex. 3.3(cont’d) - Algebraic ModelModel

►By putting all variables (P’s and I’s) on the left and all By putting all variables (P’s and I’s) on the left and all known values on the right (a standard LP convention), known values on the right (a standard LP convention), these balance constraints becomethese balance constraints become

P1 – I1 = 100-50P1 – I1 = 100-50I1 + P2 – I2 = 150I1 + P2 – I2 = 150I2 + P3 – I3 = 300I2 + P3 – I3 = 300I3 + P4 – I4 = 350I3 + P4 – I4 = 350I4 + P5 – I5 = 250I4 + P5 – I5 = 250I5 + P6 – I6 = 100I5 + P6 – I6 = 100

►The goal is to minimize the sum of production and holding The goal is to minimize the sum of production and holding costs. It is the sum of unit production costs multiplied by costs. It is the sum of unit production costs multiplied by P’s, P’s, plus until holding costs multiplied by plus until holding costs multiplied by I’sI’s..

Page 39: Lecture 3

Ex. 3.3(cont’d) - Spreadsheet Ex. 3.3(cont’d) - Spreadsheet ModelModel

►The difference between this model from the The difference between this model from the product mix model is that some of the constraints product mix model is that some of the constraints are built into the spreadsheet itself by means of are built into the spreadsheet itself by means of the formulas.the formulas.

►The only changing cells are production quantities. The only changing cells are production quantities. ►The decision variables in an algebraic model are The decision variables in an algebraic model are

not necessarily the same as the changing cells in not necessarily the same as the changing cells in an equivalent spreadsheet model.an equivalent spreadsheet model.

►To develop the spreadsheet model:To develop the spreadsheet model: InputsInputs - Enter the inputs in the shaded ranges. - Enter the inputs in the shaded ranges. Name rangesName ranges – Name ranges indicated. – Name ranges indicated.

Page 40: Lecture 3

Ex. 3.3(cont’d) - Spreadsheet Ex. 3.3(cont’d) - Spreadsheet ModelModel

Production quantitiesProduction quantities - Enter any values in the range - Enter any values in the range Produced as the production quantities. As always, you can Produced as the production quantities. As always, you can enter values that you believe are good, maybe even optimal. enter values that you believe are good, maybe even optimal.

On-hand inventoryOn-hand inventory - Enter the formula - Enter the formula =B4 + B12=B4 + B12 in cell in cell B16. This calculates the first month on-hand inventory after B16. This calculates the first month on-hand inventory after production. Then enter the “typical” formula production. Then enter the “typical” formula =B20 + C12=B20 + C12 for on-hand inventory after production in month 2 in cell C16 for on-hand inventory after production in month 2 in cell C16 and copy it across row 16.and copy it across row 16.

Ending inventoriesEnding inventories - Enter the formula - Enter the formula =B16 – B18=B16 – B18 for for ending inventory in cell B20 and copy it across row 20.ending inventory in cell B20 and copy it across row 20.

Production and holding costs -Production and holding costs - Enter the formula Enter the formula calculate the monthly holding costs. Finally, calculate the calculate the monthly holding costs. Finally, calculate the cost totals in column H by summing with the SUM function.cost totals in column H by summing with the SUM function.

Page 41: Lecture 3

Ex. 3.3(cont’d) - Spreadsheet Ex. 3.3(cont’d) - Spreadsheet ModelModel

►The optimal solution from Solver.The optimal solution from Solver.

Page 42: Lecture 3

Ex. 3.3(cont’d) - Spreadsheet Ex. 3.3(cont’d) - Spreadsheet ModelModel

►SolverTable can be used to perform a SolverTable can be used to perform a number of interesting sensitivity number of interesting sensitivity analyses.analyses.

► In multiperiod models, the company has In multiperiod models, the company has to make forecasts about the future, such to make forecasts about the future, such as the level of demand. The length of the as the level of demand. The length of the planning horizon is usually the length of planning horizon is usually the length of time for which the company can make time for which the company can make reasonably accurate forecasts.reasonably accurate forecasts.

Page 43: Lecture 3

3.10 Decision Support 3.10 Decision Support SystemSystem

►Many people who are not experts need to use Many people who are not experts need to use models. models.

► It is useful to provide these users with a It is useful to provide these users with a decision support system decision support system (DSS) that can help (DSS) that can help them solve problems without having to worry them solve problems without having to worry about technical details.about technical details.

►The users sees a “front end” and a “back end”. The users sees a “front end” and a “back end”. The front end allows them to select input values. The front end allows them to select input values. The back end then produces a report that explains The back end then produces a report that explains

the optimal policy in nontechnical terms.the optimal policy in nontechnical terms.

Page 44: Lecture 3

►A “front-end” for a problem similar to the A “front-end” for a problem similar to the

Pigskin model.Pigskin model.

Page 45: Lecture 3

►A “back-end” for a problem similar to the Pigskin model.A “back-end” for a problem similar to the Pigskin model.