Introduction to Operations Research. Linear Programming

Similar documents
Introduction to Operations Research

Linear programming I João Carlos Lourenço

ISE 330 Introduction to Operations Research: Deterministic Models. What is Linear Programming? www-scf.usc.edu/~ise330/2007. August 29, 2007 Lecture 2

LP Definition and Introduction to Graphical Solution Active Learning Module 2

Introduction. Very efficient solution procedure: simplex method.

LINEAR PROGRAMMING. Introduction

Introduction to Linear Programming (LP) Mathematical Programming (MP) Concept (1)

Chapter 3 Introduction to Linear Programming PART 1. Assoc. Prof. Dr. Arslan M. Örnek

The Graphical Method & Algebraic Technique for Solving LP s. Métodos Cuantitativos M. En C. Eduardo Bustos Farías 1

Optimization. Broadly two types: Unconstrained and Constrained optimizations We deal with constrained optimization. General form:

2. Linear Programming Problem

Linear Programming. H. R. Alvarez A., Ph. D. 1

Optimisation. 3/10/2010 Tibor Illés Optimisation

Deterministic Operations Research, ME 366Q and ORI 391 Chapter 2: Homework #2 Solutions

MS-E2140. Lecture 1. (course book chapters )

Chap6 Duality Theory and Sensitivity Analysis

Optimization Methods in Management Science

Formulating and Solving a Linear Programming Model for Product- Mix Linear Problems with n Products

Practice Questions for Math 131 Exam # 1

Study Unit 3 : Linear algebra

Graphical and Computer Methods

Nonlinear Programming (Hillier, Lieberman Chapter 13) CHEM-E7155 Production Planning and Control

Optimization Methods in Management Science

MULTIPLE CHOICE QUESTIONS DECISION SCIENCE

INTERNATIONAL UNIVERSITY OF JAPAN Public Management and Policy Analysis Program Graduate School of International Relations

is called an integer programming (IP) problem. model is called a mixed integer programming (MIP)

UNIT-4 Chapter6 Linear Programming

Section 1.2 DOMAIN, RANGE, INTERCEPTS, SYMMETRY, EVEN/ODD

END3033 Operations Research I Sensitivity Analysis & Duality. to accompany Operations Research: Applications and Algorithms Fatih Cavdur

Optimization Methods in Management Science

56:171 Operations Research Fall 1998

MS-E2140. Lecture 1. (course book chapters )

Fundamentals of Operations Research. Prof. G. Srinivasan. Indian Institute of Technology Madras. Lecture No. # 15

NONLINEAR. (Hillier & Lieberman Introduction to Operations Research, 8 th edition)

The Simplex Method. Formulate Constrained Maximization or Minimization Problem. Convert to Standard Form. Convert to Canonical Form

Chapter 4 The Simplex Algorithm Part I

Chapter 2: Introduction to Linear Programming

CHAPTER 11 Integer Programming, Goal Programming, and Nonlinear Programming

Introduction to linear programming using LEGO.

Introduction to Linear Programming (LP) Mathematical Programming (MP) Concept

Chapter 2. Copyright 2010 Pearson Education, Inc. Publishing as Prentice Hall 2-1

Introduction to optimization and operations research

Part 1. The Review of Linear Programming Introduction

Linear Programming and Marginal Analysis

Modern Logistics & Supply Chain Management

Optimization Methods in Management Science

SAMPLE QUESTIONS. b = (30, 20, 40, 10, 50) T, c = (650, 1000, 1350, 1600, 1900) T.

The Simplex Method of Linear Programming

MAT016: Optimization

IV. Violations of Linear Programming Assumptions

Solution Cases: 1. Unique Optimal Solution Reddy Mikks Example Diet Problem

Linear Programming: Model Formulation and Graphical Solution

II. Analysis of Linear Programming Solutions

Week 3: Simplex Method I

UNIVERSITY of LIMERICK

Review Questions, Final Exam

The Simplex Algorithm and Goal Programming

UNIVERSITY OF CALICUT SCHOOL OF DISTANCE EDUCATION B Sc. Mathematics (2011 Admission Onwards) II SEMESTER Complementary Course

1. Algebraic and geometric treatments Consider an LP problem in the standard form. x 0. Solutions to the system of linear equations

Part 1. The Review of Linear Programming

DRAFT Formulation and Analysis of Linear Programs

Operations Research. Duality in linear programming.

Introduction to LP. Types of Linear Programming. There are five common types of decisions in which LP may play a role

Operations Research: Introduction. Concept of a Model

Introduction to Operations Research Economics 172A Winter 2007 Some ground rules for home works and exams:

56:270 Final Exam - May

56:171 Operations Research Midterm Exam - October 26, 1989 Instructor: D.L. Bricker

Questions and solutions operational research (OR)

The Simplex Algorithm

Linear programming on Cell/BE

LINEAR PROGRAMMING 2. In many business and policy making situations the following type of problem is encountered:

Yinyu Ye, MS&E, Stanford MS&E310 Lecture Note #06. The Simplex Method

An Introduction to Linear Programming

ENM 202 OPERATIONS RESEARCH (I) OR (I) 2 LECTURE NOTES. Solution Cases:

Solution 1 Linear programming illustrating maximisation

Simplex Method. Dr. rer.pol. Sudaryanto

OPRE 6201 : 3. Special Cases

ECE 307 Techniques for Engineering Decisions

Simplex tableau CE 377K. April 2, 2015

Linear programming Dr. Arturo S. Leon, BSU (Spring 2010)

5.3 Linear Programming in Two Dimensions: A Geometric Approach

Gauss-Jordan Elimination for Solving Linear Equations Example: 1. Solve the following equations: (3)

In Chapters 3 and 4 we introduced linear programming

IE 5531: Engineering Optimization I

CSC Design and Analysis of Algorithms. LP Shader Electronics Example

Dr. Maddah ENMG 500 Engineering Management I 10/21/07

Theory of Linear Programming

The Simplex Method for Solving a Linear Program Prof. Stephen Graves

7.2 Matrix Algebra. DEFINITION Matrix. D 21 a 22 Á a 2n. EXAMPLE 1 Determining the Order of a Matrix d. (b) The matrix D T has order 4 * 2.

Chapter 2 Introduction to Optimization & Linear Programming

Review for Final Review

3. Duality: What is duality? Why does it matter? Sensitivity through duality.

Transform and Conquer

AM 121: Intro to Optimization Models and Methods

MATH2070 Optimisation

UNIVERSITY OF CALICUT SCHOOL OF DISTANCE EDUCATION

Sensitivity Analysis and Duality in LP

Going from graphic solutions to algebraic

Linear Programming Duality P&S Chapter 3 Last Revised Nov 1, 2004

A Review of Linear Programming

Transcription:

Introduction to Operations Research Linear Programming

Solving Optimization Problems Linear Problems Non-Linear Problems Combinatorial Problems Linear Problems Special form of mathematical programming Equations must be linear Uses simple solution procedures Linear algebra Very powerful Extremely large problems 100,000 variables 1000's of constraints Useful design information by Sensitivity Analysis Answers to "what if" questions 2

In linear problems, all the outputs are simple linear functions of the inputs, as in y=mx+b When problems only use simple arithmetic operations such as addition subtraction, and Excel functions such as TREND() and FORCAST(), it indicates there are purely linear relationships between the variables Linear problems have been fairly easy to solve due to the advancement of computers and the invention by George Dantzig of the Simplex Method. A simple linear problem can be solved most quickly and accurately with a linear programming utility. The Solver utility included with Excel becomes a linear programming tool when you set the Assume Linear Model check box Solver then uses a linear programming routine to quickly find the perfect solution. If your problem can be expressed in purely linear terms, you should use linear programming. Unfortunately most real-world problems cannot be described linearly 3

Example 1 A glass company has three plants: aluminum frame and hardware, wood frame, glass and assembly. Two product with highest profit: Product 1: An 8-foot glass door with aluminum frame plants 1 and 3 Product 2: A 4*6 foot double hung wood frame window plants 2 and 3 The benefit of selling a batch (including 20) of products 1 and 2 are $3000 and $5000 respectively. Each batch of product 1 produced per week uses 1 hour of production time per week in plant 1, whereas only 4 hours per week are available. Each batch of product 2 produced per week uses 2 hours of production time per week in plant 2, whereas only 12 hours per week are available. Each batch of products 1 and 2 produced per week uses 3 and 2 hours of production time per week in plant 3 respectively, whereas only 18 hours per week are available. 4

Formulation as a Linear Programming Problem To formulate the mathematical (linear programming) model for this problem, let x 1 = number of batches of product 1 produced per week x 2 = number of batches of product 2 produced per week Z = total profit per week (in thousands of dollars) from producing these two products Thus, x 1 and x 2 are the decision variables for the model and the objective function is as follows 5 Z = 3x 1 + 5x 2 The objective is to choose the values of x 1 and x 2 so as to maximize Z subject to the restrictions imposed on their values by the limited production capacities available in the three plants.

To summarize, in the mathematical language of linear programming, the problem to choose values of x 1 and x 2 so as to 6 Maximize Z = 3x 1 + 5x 2 subject to the restrictions X 1 < 4 2x 2 < 12 3x 1 + 2x 2 < 18 and x 1 > 0, x 2 > 0

Simplex method (Graphical Solution) 7

8 Slope-intercept form: x 2 = -3/5 x 1 + 1/5 Z Excel Solver method

General Solution Approach (Graphical Method) Step 1: Find a corner point 9 An "initial feasible solution" Step 2: Proceed to improved corner points Step 3: Stop when no further improvements are possible Step 4: For large problems, a variety of more sophisticated approaches are used! Solution Calculations To find a corner point It is necessary to solve system of constraint equations from linear algebra, this requires working with matrix of constraint equations, specifically, manipulating the determinants Amount of effort set by number of constraints So number of constraints defines amount of effort This is why LP can handle many more decision variables than constraints

Solution Methods Simplex For step 2, select improved corners Always goes to best corner Searches until no further improvement possible Inefficient for real problems Not used in practice Many practical methods - often proprietary Step 2 takes many forms Each best for different cases Very great efficiency possible A real art! 10

Example 2 A concrete manufacturer is concerned about how many units of two types of concrete elements should be produced during the next time period to maximize profit. Each concrete element of type I generates a profit of $60, while each element of type II generates a profit of $40. 2 and 3 units of raw materials are needed to produce one concrete element of type I and II, respectively. Also, 4 and 2 units of time are required to produce one concrete element of type I and II, respectively. If 100 units of raw materials and 120 units of time are available, how many units of each type of concrete element should be produced to maximize profit and satisfy all constraints? Use Excel solver for the solution. 11 Solution

12

Example 3 A building contractor produces two types of houses: detached and semidetached. The customer is offered several choices of architectural design and layout for each type. The proportion of each type of design sold in the past is shown in the following table. The profit on a detached house and a semidetached house is $1,000 and $800 respectively. 13 The builder has the capacity to build 400 houses per year. However, an estate of housing will not be allowed to contain more than 75% of the total housing as detached. Furthermore, because of the limited supply of bricks available for type B designs, a 200-house limit with this design is imposed. Use Excel to develop a model of this problem and then use SOLVER to determine how many detached and semidetached houses should be constructed in order to maximize profits. State the optimum profit.

14

Standard Form of LP - Three Parts Objective function (OF) maximize or minimize r Y = i=1 c i X i 15 Y = C 1 X 1 + C 2 X 2 + + C n X n Xi known as decision variables Constraints subject to a 11 X 1 + a 12 X 2 + + a 1n X n < = > b 1 a 21 X 1 + a 22 X 2 + + a 2n X n < = > b 2 a m1 X 1 + a m2 X 2 + + a mn X n < = > b m Non-Negativity x i > 0 for all i

16 Common terminology for the linear programming model can now be summarized. Z is called the objective function. The restrictions normally are referred to as constraints. The first m constraints (those on the left-hand side) are sometimes called functional constraints and x j > 0 restrictions are called nonnegativity constraints.

Standard Form of LP Summary 17 Optimize Y = c X subject to: A X (< or = or >) b X > 0 Terminology for Solutions of the Model Solution: any specification of values for the decision variables (x 1, x 2,, x n ) Feasible solution: a solution for which all the constraints are satisfied. Infeasible solution: a solution for which at least one constraint is violated. In the example, the points (2, 3) and (4, 1) in Fig. 3.2 are feasible solutions, while the points (1, 3) and (4, 4) are infeasible solutions. Feasible region: the collection of all feasible solutions. No feasible solutions: It is possible for a problem to have no feasible solutions. This would have happened in the example if the new products had been required to return a net profit of at least $50,000 per week to justify discontinuing part of the current product line. The corresponding constraint, 3x 1 + 5x 2 > 50 would eliminate the entire feasible region, so no mix of new products would be superior to the status quo.

18

Optimal solution: a feasible solution that has the most favorable value of the objective function. Most favorable value: the largest value if the objective function is to be maximized, whereas it is the smallest value if the objective function is to be minimized. Multiple optimal solutions: Most problems will have just one optimal solution. However, it is possible to have more than one. This would occur in the example if the profit per batch produced of product 2 were changed to $2,000. This changes the objective function to Z = 3x 1 + 2x 2 so that all the points on the line segment connecting (2, 6) and (4, 3) would be optimal. As in this case, any problem having multiple optimal solutions will have an infinite number of them, each with the same optimal value of the objective function. No optimal solutions: Another possibility is that a problem has no optimal solutions. This occurs only if (1) it has no feasible solutions or (2) the constraints do not prevent improving the value of the objective function (Z) indefinitely in the favorable direction (positive or negative). 19

20

The latter case is referred to as having an unbounded Z. To illustrate, this case would result if the last two functional constraints were mistakenly deleted in the example. 21

A corner-point feasible (CPF) solution is a solution that lies at a corner of the feasible region. Relationship between optimal solutions and CPF solutions: Consider any linear programming problem with feasible solutions and a bounded feasible region. The problem must possess CPF solutions and at least one optimal solution. Furthermore, the best CPF solution must be an optimal solution. Thus, if a problem has exactly one optimal solution, it must be a CPF solution. If the problem has multiple optimal solutions, at least two must be CPF solutions. 22

Assumptions of linear programming 23 Proportionality is an assumption about both the objective function and the functional constraints Proportionality assumption: The contribution of each activity to the value of the objective function Z is proportional to the level of the activity x j, as represented by the c j x j term in the objective function. Similarly, the contribution of each activity to the left-hand side of each functional constraint is proportional to the level of the activity x j as represented by the a ij x j term in the constraint. Consequently, this assumption rules out any exponent other than 1 for any variable in any term of any function (whether the objective function or the function on the left-hand side of a functional constraint) in a linear programming model. When the function includes any cross-product terms, proportionality should be interpreted to mean that changes in the function value are proportional to changes in each variable (x j ) individually, given any fixed values for all the other variables. Therefore, a cross-product term satisfies proportionality as long as each variable in the term has an exponent of 1. (However, any cross-product term violates the additivity assumption, discussed next.)

To illustrate this assumption, consider the first term (3x 1 ) in the objective function (Z = 3x 1 + 5x 2 ) for the Wyndor Glass Co. problem. This term represents the profit generated per week (in thousands of dollars) by producing product 1 at the rate of x 1 batches per week. The proportionality satisfied column of table below shows the case that this profit is indeed proportional to x 1 so that 3x 1 is the appropriate term for the objective function. By contrast, the next three columns show different hypothetical cases where the proportionality assumption would be violated. 24

Refer first to the Case 1 column in the above table. This case would arise if there were start-up costs associated with initiating the production of product 1. For example, there might be costs involved with setting up the production facilities. There might also be costs associated with arranging the distribution of the new product. Because these are one-time costs, they would need to be amortized on a per-week basis to be commensurable with Z (profit in thousands of dollars per week). Suppose that this amortization were done and that the total start-up cost amounted to reducing Z by 1, the profit without considering the startup cost would be 3x 1. The contribution from product 1 to Z should be 3x 1-1 for x 1 > 0, whereas the contribution would be 3x 1 = 0 when x 1 = 0 (no start-up cost). This profit function, which is given by the solid curve in Figure 3.8, certainly is not proportional to x 1. 25

It might appear that Case 2 is quite similar to Case 1. However, Case 2 actually arises in a very different way. There no longer is a start-up cost, and the profit from the first unit of product 1 per week is indeed 3, as originally assumed. However, there now is an increasing marginal return; i.e., the slope of the profit function for product 1 (see the solid curve in the figure below) keeps increasing as x 1 is increased. This violation of proportionality might occur because of economies of scale that can sometimes be achieved at higher levels of production, e.g., through the use of more efficient high volume machinery, longer production runs, quantity discounts for large purchases of raw materials, and the learningcurve effect whereby workers become more efficient as they gain experience with a particular mode of production. As the incremental cost goes down, the incremental profit will go up (assuming constant marginal revenue). 26

Referring again to Table 3.4, the reverse of Case 2 is Case 3, where there is a decreasing marginal return. In this case, the slope of the profit function for product 1 (given by the solid curve in the figure below) keeps decreasing as x 1 is increased. This violation of proportionality might occur because the marketing costs need to go up more than proportionally to attain increases in the level of sales. For example, it might be possible to sell product 1 at the rate of 1 per week (x 1 = 1) with no advertising, whereas attaining sales to sustain a production rate of x 1 = 2 might require a moderate amount of advertising, x 1 = 3 might necessitate an extensive advertising campaign, and x 1 = 4 might require also lowering the price. 27

All three cases are hypothetical examples of ways in which the proportionality assumption could be violated. What is the actual situation? The actual profit from producing product 1 (or any other product) is derived from the sales revenue minus various direct and indirect costs. Inevitably, some of these cost components are not strictly proportional to the production rate, perhaps for one of the reasons illustrated above. For other problems, what happens when the proportionality assumption does not hold even as a reasonable approximation? Nonlinear programming Extension of linear programming: mixed integer programming (if the assumption is violated only because of start-up costs) 28

Additivity Although the proportionality assumption rules out exponents other than 1, it does not prohibit cross-product terms (terms involving the product of two or more variables). The additivity assumption does rule out this latter possibility, as summarized below. Additivity assumption: Every function in a linear programming model (whether the objective function or the function on the left-hand side of a functional constraint) is the sum of the individual contributions of the respective activities. To make this definition more concrete and clarify why we need to worry about this assumption, let us look at some examples. Table 3.5 shows some possible cases for the objective function for the Wyndor Glass Co. problem. In each case, the individual contribution from the products are 3x 1 for product 1 and 5x 2 for product 2. The difference lies in the last row, which gives the function value for Z when the two products are produced jointly. 29

The additivity satisfied column shows the case where this function value is obtained simply by adding the first two rows (3 + 5 = 8), so that Z = 3x 1 + 5x 2 as previously assumed. By contrast, the next two columns show hypothetical cases where the additivity assumption would be violated (but not the proportionality assumption). 30

Referring to the Case 1 column of the abovementioned table, this case corresponds to an objective function of Z = 3x 1 + 5x 2 + x 1 x 2, so that Z = 3 + 5 + 1 = 9 for (x 1, x 2 )=(1, 1), thereby violating the additivity assumption that Z = 3 + 5. (The proportionality assumption still is satisfied since after the value of one variable is fixed, the increment in Z from the other variable is proportional to the value of that variable.) This case would arise if the two products were complementary in some way that increases profit. For example, suppose that a major advertising campaign would be required to market either new product produced by itself, but that the same single campaign can effectively promote both products if the decision is made to produce both. Because a major cost is saved for the second product, their joint profit is somewhat more than the sum of their individual profits when each is produced by itself. Case 2 in the table also violates the additivity assumption because of the extra term in the corresponding objective function, Z = 3x 1 + 5x 2 x 1 x 2 so that z = 3 + 5-1 = 7 for (x 1, x 2 ) = (1, 1). As the reverse of the first case, Case 2 would arise if the two products were competitive in some way that decreased their joint profit. 31

For example, suppose that both products need to use the same machinery and equipment. If either product were produced by itself, this machinery and equipment would be dedicated to this one use. However, producing both products would require switching the production processes back and forth, with substantial time and cost involved in temporarily shutting down the production of one product and setting up for the other. Because of this major extra cost, their joint profit is somewhat less than the sum of their individual profits when each is produced by itself. The same kinds of interaction between activities can affect the additivity of the constraint functions. For example, consider the third functional constraint of the Wyndor Glass Co. problem: 3x 1 + 2x 2 < 18. (This is the only constraint involving both products.) This constraint concerns the production capacity of Plant 3, where 18 hours of production time per week is available for the two new products, and the function on the left-hand side (3x 1 + 2x 2 ) represents the number of hours of production time per week that would be used by these products. 32

The additivity satisfied column of Table 3.6 shows this case as is, whereas the next two columns display cases where the function has an extra cross-product term that violates additivity. For all three columns, the individual contributions from the products toward using the capacity of Plant 3 are just as assumed previously, namely, 3x 1 for product 1 and 2x 2 for product 2, or 3(2) = 6 for x 1 = 2 and 2(3) = 6 for x 2 = 3. As was true for table below, the difference lies in the last row, which now gives the total function value for production time used when the two products are produced jointly. 33

For Case 3, the production time used by the two products is given by the function 3x 1 + 2x 2 + 0.5x 1 x 2, so the total function value is 6 + 6 + 3 = 15 when (x 1, x 2 ) = (2, 3), which violates the additivity assumption that the value is just 6 + 6 = 12. This case can arise in exactly the same way as described for Case 2; namely, extra time is wasted switching the production processes back and forth between the two products. The extra cross-product term (0.5x 1 x 2 ) would give the production time wasted in this way. (wasting time switching between products leads to a positive cross-product term here, where the total function is measuring production time used, whereas it led to a negative cross-product term for Case 2 because the total function there measures profit.) For Case 4, the function for production time used is 3x 1 + 2x 2 0.1x 12 x 2 so the function value for (x 1, x 2 )= (2, 3) is 6 + 6-1.2 = 10.8. This case could arise in the following way. As in Case 3, suppose that the two products require the same type of machinery and equipment. But suppose now that the time required to switch from one product to the other would be relatively small. Because each product goes through a sequence of production operations, individual production facilities normally dedicated to that product would incur occasional idle periods. During these otherwise idle periods, these facilities can be used by the other product. Consequently, the total production time used (including idle periods) when the two products are produced jointly would be less than the sum of the production times used by the individual products when each is produced For other problems, if additivity is not a reasonable assumption, so that some of or all the mathematical functions of the model need to be nonlinear 34

Divisibility Our next assumption concerns the values allowed for the decision variables. Divisibility assumption: Decision variables in a linear programming model are allowed to have any values, including noninteger values, that satisfy the functional and nonnegativity constraints. Thus, these variables are not restricted to just integer values. Since each decision variable represents the level of some activity, it is being assumed that the activities can be run at fractional levels. For the Wyndor Glass Co. problem, the decision variables represent production rates (the number of batches of a product produced per week). Since these production rates can have any fractional values within the feasible region, the divisibility assumption does hold. In certain situations, the divisibility assumption does not hold because some of or all the decision variables must be restricted to integer values. Mathematical models with this restriction are called integer programming models. 35

Certainty Our last assumption concerns the parameters of the model, namely, the coefficients in the objective function c j, the coefficients in the functional constraints a ij, and the right-hand sides of the functional constraints b i. Certainty assumption: The value assigned to each parameter of a linear programming model is assumed to be a known constant. In real applications, the certainty assumption is seldom satisfied precisely. Linear programming models usually are formulated to select some future course of action. Therefore, the parameter values used would be based on a prediction of future conditions, which inevitably introduces some degree of uncertainty. For this reason it is usually important to conduct sensitivity analysis after a solution is found that is optimal under the assumed parameter values. One purpose is to identify the sensitive parameters (those whose value cannot be changed without changing the optimal solution), since any later change in the value of a sensitive parameter immediately signals a need to change the solution being used. Sensitivity analysis plays an important role in the analysis of the Wyndor Glass Co. problem. However, it is necessary to acquire some more background before we finish that story. Occasionally, the degree of uncertainty in the parameters is too great to be amenable to sensitivity analysis. In this case, it is necessary to treat the parameters as random variables. 36

References Richard de Neufville, Joel Clark and Frank R. Field, Intro. to Linear Programming, Massachusetts Institute of Technology. Richard de Neufville, Joel Clark and Frank R. Field, LP Sensitivity Analysis, Massachusetts Institute of Technology. Tarek Hegazi, Computer-Aided Project Organization and Management, University of Waterloo Hiller, Liberman, Introduction to Operations Research, 7 th edition, McGraw-Hill Companies, 2001 37