Chapter 3 Introduction to Optimization Modeling CBTL212 Managerial Problem Solving 3.1 INTRODUCTION • Spreadsheet optimization is one of the most powerful and flexible methods of quantitative analysis. • The specific type of optimization discussed here is linear programming (LP). 3.2 INTRODUCTION TO OPTIMIZATION • All optimization problems: 1. Decision variables (Changing Cells) – the variables whose values the decision maker can choose. – directly or indirectly, the values of these variables determine such outputs as total cost, revenue, and profit – variables an organization must know to function properly 3.2 INTRODUCTION TO OPTIMIZATION cont’ 2. Objective function (Target Cells) – value that is to be optimized—maximized or minimized 3. Constraints – must be satisfied – usually physical, logical, or economic restrictions that depend on the nature of the problem 3.2 INTRODUCTION TO OPTIMIZATION cont’ Excel refers to the: • decision variables as the changing cells – cells must contain numbers that are allowed to change freely; – they are not allowed to contain formulas • objective as the target cell – There can be only one target cell—which could contain profit, total cost, total distance traveled – must be related through formulas to the changing cells 3.2 INTRODUCTION TO OPTIMIZATION cont’ 3.2 INTRODUCTION TO OPTIMIZATION cont’ • Constraints can come in a variety of forms. • One very common form is nonnegativity. • Nonnegativity constraints state that changing cells must have nonnegative (zero or positive) values. • Nonnegativity constraints are usually included for physical reasons. • For example, it is impossible to produce a negative number of automobiles. 3.2 INTRODUCTION TO OPTIMIZATION cont’ • Two steps are involved in solving an optimization problem. 1. Model Development – what are the variables, objective and constraints, and how everything fits together? – Spread sheet model - relate all variables with appropriate cell formulas – model contains formulas for relating the changing cells to the target cell and that it contains formulas for operationalizing the constraints 3.2 INTRODUCTION TO OPTIMIZATION cont’ 2. Optimize – systematically choose the values of the decision variables that make the objective as large (for maximization) or small (for minimization) as possible and satisfy all the constraints 3.2 INTRODUCTION TO OPTIMIZATION cont’ • LINEAR PROGRAMMING INTRO NOTES • WE HAVE SOLVER in Excel!!!!!!!!!!!!!!! 3.2 INTRODUCTION TO OPTIMIZATION cont’ • All we need to do is develop the model and then tell Solver the target cell, the changing cells, the constraints, and the type of model (linear, integer, or nonlinear). • Solver then goes to work, finding the best feasible solution with the most suitable algorithm. 3.2 INTRODUCTION TO OPTIMIZATION cont’ • Sensitivity analysis. – what-if questions – What if the unit costs increased by 5%? – What if forecasted demands were 10% lower? – What if resource availabilities could be increased by 20%? – What effects would such changes have on the optimal solution? 3.5 PROPERTIES OF LINEAR MODELS • LP models possess three important properties that distinguish them from general mathematical programming models: – proportionality, – additivity, and – divisibility. 3.5 PROPERTIES OF LINEAR MODELS cont’ Proportionality – if the level of any activity is multiplied by a constant factor, then the contribution of this activity to the objective, or to any of the constraints in which the activity is involved, is multiplied by the same factor. Or – A change in a variable results in a proportionate change in that variable’s contribution to the value of the function 3.5 PROPERTIES OF LINEAR MODELS cont’ Additivity – the sum of the contributions from the various activities to a particular constraint equals the total contribution to that constraint – Implies to the objective, i.e., the value of the objective is the sum of the contributions from the various activities or – The function value is the sum of the contributions of each term 3.5 PROPERTIES OF LINEAR MODELS cont’ Divisibility • both integer and noninteger levels of the activities are allowed or • The decision variable can be divided into noninterger values, taking on fractional values. Interger programming techniques can be used if the divisibility assumption does not hold 3.5 PROPERTIES OF LINEAR MODELS cont’ If we want the levels of some activities to be integer values, there are two possible approaches: – (1) We can solve the LP model without integer constraints, and if the solution turns out to have noninteger values, we can attempt to round them to integer values; or – (2) we can explicitly constrain certain changing cells to contain integer values. The latter approach, however, takes us into the realm of integer programming, which is discussed in Chapter 6. 3.5 PROPERTIES OF LINEAR MODELS cont’ Discussion of the linear properties • when a model is not linear? • Two particular situations that lead to nonlinear models are when : – (1) there are products or quotients of expressions involving changing cells and – (2) there are nonlinear functions, such as squares, square roots, or logarithms, of changing cells. 3.5 PROPERTIES OF LINEAR MODELS cont’ • In Excel’s Solver, if the model is linear—in particular if it satisfies the proportionality and additivity properties—then you should check the Assume Linear Model box in the Solver Options dialog box. 3.6 INFEASIBILITY AND UNBOUNDEDNESS • Two things can go wrong when you invoke Solver. • Both of these can indicate that there is a mistake in the model 3.6 INFEASIBILITY AND UNBOUNDEDNESS cont’ A. Infeasibility • it’s possible that there are no feasible solutions to the model. • There are generally two reasons for this: 1. There is a mistake in the model (an input was entered incorrectly, such as a >= instead of a <= ), or 2. the problem has been so constrained that no solutions are left 3.6 INFEASIBILITY AND UNBOUNDEDNESS cont’ B. Unboundedness • the model has been formulated in such a way that the objective is unbounded—that is, it can be increased (or decreased for minimization problems) without bound. • If this occurs, we have probably entered a wrong input or forgotten some constraints