SENSITIVITY ANALYSIS IN LINEAR PROGRAMMING USING A CALCULATOR

Similar documents
LECTURE NOTES Duality Theory, Sensitivity Analysis, and Parametric Programming

Kent State University CS 4/ Design and Analysis of Algorithms. Dept. of Math & Computer Science LECT-16. Dynamic Programming

Solving two-person zero-sum game by Matlab

Intra-Parametric Analysis of a Fuzzy MOLP

Support Vector Machines

Optimization Methods: Integer Programming Integer Linear Programming 1. Module 7 Lecture Notes 1. Integer Linear Programming

Sum of Linear and Fractional Multiobjective Programming Problem under Fuzzy Rules Constraints

5 The Primal-Dual Method

GSLM Operations Research II Fall 13/14

On Some Entertaining Applications of the Concept of Set in Computer Science Course

An Application of the Dulmage-Mendelsohn Decomposition to Sparse Null Space Bases of Full Row Rank Matrices

A New Approach For the Ranking of Fuzzy Sets With Different Heights

3D vector computer graphics

ON SOME ENTERTAINING APPLICATIONS OF THE CONCEPT OF SET IN COMPUTER SCIENCE COURSE

Polyhedral Compilation Foundations

An Optimal Algorithm for Prufer Codes *

An Application of Network Simplex Method for Minimum Cost Flow Problems

Complex Numbers. Now we also saw that if a and b were both positive then ab = a b. For a second let s forget that restriction and do the following.

Analysis of Continuous Beams in General

NUMERICAL SOLVING OPTIMAL CONTROL PROBLEMS BY THE METHOD OF VARIATIONS

Improving Low Density Parity Check Codes Over the Erasure Channel. The Nelder Mead Downhill Simplex Method. Scott Stransky

The Greedy Method. Outline and Reading. Change Money Problem. Greedy Algorithms. Applications of the Greedy Strategy. The Greedy Method Technique

Smoothing Spline ANOVA for variable screening

Compiler Design. Spring Register Allocation. Sample Exercises and Solutions. Prof. Pedro C. Diniz

6.854 Advanced Algorithms Petar Maymounkov Problem Set 11 (November 23, 2005) With: Benjamin Rossman, Oren Weimann, and Pouya Kheradpour

Meta-heuristics for Multidimensional Knapsack Problems

Array transposition in CUDA shared memory

A mathematical programming approach to the analysis, design and scheduling of offshore oilfields

A Facet Generation Procedure. for solving 0/1 integer programs

R s s f. m y s. SPH3UW Unit 7.3 Spherical Concave Mirrors Page 1 of 12. Notes

Problem Definitions and Evaluation Criteria for Computational Expensive Optimization

Non-Split Restrained Dominating Set of an Interval Graph Using an Algorithm

Programming in Fortran 90 : 2017/2018

Subspace clustering. Clustering. Fundamental to all clustering techniques is the choice of distance measure between data points;

Parallelism for Nested Loops with Non-uniform and Flow Dependences

Course Introduction. Algorithm 8/31/2017. COSC 320 Advanced Data Structures and Algorithms. COSC 320 Advanced Data Structures and Algorithms

Face Recognition University at Buffalo CSE666 Lecture Slides Resources:

INTEGER PROGRAMMING MODELING FOR THE CHINESE POSTMAN PROBLEMS

Loop Permutation. Loop Transformations for Parallelism & Locality. Legality of Loop Interchange. Loop Interchange (cont)

Mathematics 256 a course in differential equations for engineering students

Lecture 5: Multilayer Perceptrons

2x x l. Module 3: Element Properties Lecture 4: Lagrange and Serendipity Elements

Sequential search. Building Java Programs Chapter 13. Sequential search. Sequential search

Lecture 4: Principal components

Solitary and Traveling Wave Solutions to a Model. of Long Range Diffusion Involving Flux with. Stability Analysis

Learning the Kernel Parameters in Kernel Minimum Distance Classifier

UNIT 2 : INEQUALITIES AND CONVEX SETS

Vectorization in the Polyhedral Model

A Binarization Algorithm specialized on Document Images and Photos

Range images. Range image registration. Examples of sampling patterns. Range images and range surfaces

Support Vector Machines. CS534 - Machine Learning

For instance, ; the five basic number-sets are increasingly more n A B & B A A = B (1)

Computer models of motion: Iterative calculations

OPTIMIZATION OF PROCESS PARAMETERS USING AHP AND TOPSIS WHEN TURNING AISI 1040 STEEL WITH COATED TOOLS

Multicriteria Decision Making

NAG Fortran Library Chapter Introduction. G10 Smoothing in Statistics

Brave New World Pseudocode Reference

F Geometric Mean Graphs

CMPS 10 Introduction to Computer Science Lecture Notes

Feature Reduction and Selection

Design for Reliability: Case Studies in Manufacturing Process Synthesis

Parallel Numerics. 1 Preconditioning & Iterative Solvers (From 2016)

5.0 Quality Assurance

Lecture #15 Lecture Notes

Problem Set 3 Solutions

International Journal of Mathematical Archive-3(11), 2012, Available online through ISSN

Outline. Midterm Review. Declaring Variables. Main Variable Data Types. Symbolic Constants. Arithmetic Operators. Midterm Review March 24, 2014

APPLICATION OF MULTIVARIATE LOSS FUNCTION FOR ASSESSMENT OF THE QUALITY OF TECHNOLOGICAL PROCESS MANAGEMENT

Proposed Simplex Method For Fuzzy Linear Programming With Fuzziness at the Right Hand Side

An Iterative Solution Approach to Process Plant Layout using Mixed Integer Optimisation

Loop Transformations, Dependences, and Parallelization

Loop Transformations for Parallelism & Locality. Review. Scalar Expansion. Scalar Expansion: Motivation

CS1100 Introduction to Programming

CS 534: Computer Vision Model Fitting

CHAPTER 2 PROPOSED IMPROVED PARTICLE SWARM OPTIMIZATION

Outline. Self-Organizing Maps (SOM) US Hebbian Learning, Cntd. The learning rule is Hebbian like:

TN348: Openlab Module - Colocalization

A fault tree analysis strategy using binary decision diagrams

Reading. 14. Subdivision curves. Recommended:

Today Using Fourier-Motzkin elimination for code generation Using Fourier-Motzkin elimination for determining schedule constraints

Hermite Splines in Lie Groups as Products of Geodesics

Minimization of the Expected Total Net Loss in a Stationary Multistate Flow Network System

Lobachevsky State University of Nizhni Novgorod. Polyhedron. Quick Start Guide

Cluster Analysis of Electrical Behavior

Biostatistics 615/815

Harvard University CS 101 Fall 2005, Shimon Schocken. Assembler. Elements of Computing Systems 1 Assembler (Ch. 6)

Machine Learning 9. week

Quality Improvement Algorithm for Tetrahedral Mesh Based on Optimal Delaunay Triangulation

Computer Vision. Exercise Session 1. Institute of Visual Computing

Modeling, Manipulating, and Visualizing Continuous Volumetric Data: A Novel Spline-based Approach

Module Management Tool in Software Development Organizations

Classification / Regression Support Vector Machines

Network Coding as a Dynamical System

Machine Learning. Support Vector Machines. (contains material adapted from talks by Constantin F. Aliferis & Ioannis Tsamardinos, and Martin Law)

Optimization of integrated circuits by means of simulated annealing. Jernej Olenšek, Janez Puhan, Árpád Bűrmen, Sašo Tomažič, Tadej Tuma

S1 Note. Basis functions.

Assignment # 2. Farrukh Jabeen Algorithms 510 Assignment #2 Due Date: June 15, 2009.

Solutions to Programming Assignment Five Interpolation and Numerical Differentiation

Learning to Project in Multi-Objective Binary Linear Programming

A Saturation Binary Neural Network for Crossbar Switching Problem

Transcription:

SENSITIVITY ANALYSIS IN LINEAR PROGRAMMING USING A CALCULATOR Judth Aronow Rchard Jarvnen Independent Consultant Dept of Math/Stat 559 Frost Wnona State Unversty Beaumont, TX 7776 Wnona, MN 55987 aronowju@hal.lamar.edu rdjarvnen@vax2.wnona.msus.edu Albert Ensten was to have sad that thngs should be made as smple as possble, but not smpler. When t comes to senstvty analyss n operatons research, the plot does thcken. In ths paper we attempt to step n the drecton of makng what s complex n the context of a dynamc classroom settng, smpler, usng the handheld programmable computng devces: TI-85 and HP-48G/GX. We consder the followng changes to a lnear programmng model (now n a prepared state for soluton by the Bg M method) max z = c1x 1 + c2x 2 +... + cnxn s.t. a11x 1 + a12x 2 +... + a1nx n = b1 a x + a x +... + a (*)...... x = b 21 2 2 2m n 2 a x +a x +... + a x = b m1 1 m2 2 mn n m x,..., x 1 n after t has been transformed from ts ntal state (*) to the optmal model: Changes n resource avalabltes: b Changes n a column for a nonbasc varable: a and c Changes n Resource Avalabltes: j j Resource avalabltes or "scarce resources" are represented by the rght sdes, b of the constrants. Avalabltes are quanttes whch may be subject to change as tme goes on. For example, strkes n an ndustry producng the needed quanttes, bad (or extraordnary) crop years, an ncrease or decrease n governmental regulatons are all possble reasons for changng what s avalable to a manufacturer, small busness, agrcultural enterprse, to name a few. Other changes nduced by changes n avalabltes: The new optmal model may change the actual decson by changng whch actvtes are optmal or, n lnear programmng terms, brngng n new basc varables.

Changes n avalabltes can also result n changng the optmal value, z. Questons to explore: Are there changes to the rght sdes whch wll not result n a change n the bass? That s, wll the same actvtes stll be optmal, although ther level may be changed? Are there changes to the rght sdes whch wll result n a change of bass? Is there a range of values for the change n one of the b 's for whch the (same) bass remans or changes? Wll any change to a b cause negatve rght sdes,.e., an nfeasble bass n the fnal model? Changng the rght sde of an ntal lnear programmng model n standard form may lead to an nfeasble tableau,.e., negatve rght sdes. Then a new optmal soluton wth a new set of basc varables may be obtaned usng the dual smplex algorthm. It s possble, however, to change the b 's wthout changng the bass of the optmal soluton. Ths s the possblty whch we wll explore usng the calculator. Consder the followng problem: An offce furnture factory makes desks and chars. It takes 1 lb of nals to make a desk and 1/4 lb of nals to make a char. Also, t takes 1 board-feet of lumber to make a desk and 4 board-feet of lumber to make a char. In any one week there are 3 lbs of nals on hand, and 3,4 board-feet of lumber on hand. The net proft on a desk s $15 and on a char, $1. How many desks and chars should be made to maxmze net proft? Let x represent the number of desks made 1 x represent the number of chars made 2 The formulaton of the problem s: max z = 15 x + 1 x s.t. x + (1/4)x 3 1 x + 4 x 34 x, x The ntal representaton n standard form s:

max z s.t. x 1 + (1/4)x 2 + x 3 + = 3 (**) 1 x + 4 x + + x = 34 4 5 x - 1 x + + + z = x, x, x, x 3 4 where x and x are slack varables for the frst and second constrants. 3 4 The fnal optmal representaton s: max z s.t. (3/8) x 1 + + x 3 - (1/16) x 4 = 87.5 (***) (5/2) x + x + + (1/4) x = 85 4 1 x + + + 25 x + z = 85 1 4 x, x, x, x 3 4 The optmal soluton s to make 85 chars and no desks, for a net proft of $85,. And, x 3 and x 2 (n order by rows) are basc varables n the optmal representaton. We want to consder changes, b, to the rght sde of the ntal representaton, whch would keep x 3 and x 2 basc and then calculate the new values of those varables and the new optmal value, z, of the lnear program. A smple way to calculate these quanttes s to (1) Form the matrx: B = [[a ] [a ]... [a ]] = [[ 1 1/4 ] ( for the problem above) bv1 bv2 bvm [ 4 ]] where the column ndces are those assocated wth the basc varables n the fnal tableau and the a's are the correspondng columns n the ntal tableau. (2) Fnd: B = [[g 1,1... g 1,m ] = [[ 1 -.625]... [.25 ]] [g m,1... g m,m]] (3) Fnd the range for b whch results n a fnal feasble tableau wth the same basc varables, by formng the nequaltes b - d / g, k = 1,...,m k, where d s the th element n the column of rght sdes n the optmal tableau. See [Harvey, p. 138] for a full dscusson of range.

(4) Select a value for b from the acceptable range n (3). (5) Calculate the new values of the basc varables, x, = 1,...,m. bv (6) Calculate the new optmal value, z, for the lnear program. The followng two programs for the TI-85 wll fnd the acceptable range and new optmal values respectvely: RANGE: The range of values for b resultng n the same basc varables. NEW: The new values of the basc varables, and the new optmal value of the lnear program for a gven b and a gven b. RANGE : Dsp "ENTER COL. OF [B] " : Input J : Dsp "ENTER NUMBER OF ROWS" : Input M : 1 K : Lbl A : If BINV(K,J)= = : Then : (1^-8) BINV(K,J) : End : If K<M : Then : K+1 K : Goto A : End : Dsp "B INVERSE. PRESS FOR RANGE." : Dsp BINV : Pause : 1 K : {M,1} dm DEL : For(K,1,M,1) : -DOPT(K,1)/BINV(K,J) DEL(K,1) ; End : Dsp "RANGE. PRESS [ENTER] TO PROCEED" : Dsp DEL [READ THIS VECTOR AS FOLLOWS: (THE #) IF #< AND (THE #) IF #> ] : Pause : Dsp "PRESS [ENTER] TO PROCEED" : B BINV : Fll (,DEL) To use RANGE have matrces B and B (BINV) stored n the calculator. NEW : Dsp "ENTER NUMBER OF ROWS" : Input M : {M,1} dm F : Dsp "ENTER DELTA ROW" : Input I : Dsp "ENTER DELTA"

: Input D : D F(I,1) : BORIG+F NEWB : BINV*NEWB X : CO*BINV*NEWB NEWZ : Dsp "X. PRESS [ENTER] FOR Z" : Dsp X : Pause : Dsp NEWZ : Fll (O,X) : Fll (O,F) To use NEW, have matrces BORIG (orgnal basc b ), CO (orgnal basc objectve functon coeffcents), and BINV stored n the calculator. NOTE: For the problem above: BORIG = [[3] [34]] and CO = [ 1]. The range for delta s gven by [[14][-34]], meanng -34 14 when we change b. 2 For DEL = 5, X = {x,x } = [[181.25][475.]] and z = $47,5. 3 2 Try varyng DEL for postve values of b and b. How far can they go and stll affect z? Changes n a Column for a Nonbasc Varable: Changng the column (cj - and aj-values) for a nonbasc varable, lke desks,.e., x 1, leaves B, B, and hence the rght-hand sde (whch s B b) of the optmal tableau unchanged. See [Wnston, chapt. 6]. Thus: An nfeasble bass cannot result. However: The bass may become suboptmal, resultng therefore n a new optmal soluton: new set of basc varables and a new optmal z-value. a Exploratons: Usng the HP-48G/GX we explore nonbasc column parameter condtons that change the bass or keep t the same. We refer back to the standard form (**) of the offce furnture factory problem, notng that t takes 1 lb of nals and 1 board-feet of lumber to make a desk. That the case, we found that x 1, the number of desks to be made, s nonbasc. Thus no desks should be made. But suppose the prce at whch a desk s sold and/or the amount of nals and/or lumber used to make a desk are changed. Mght the optmal soluton change? Let us suppose, for the sake of an example, that the net proft on a desk s rased to $25, that only 1/2 lb of nals and 9 board-feet of lumber are to be used for each desk. We now compute the new c-value, c 1, usng the formula [Wnston] c j = C BV B a jnew - cjnew where C s a row matrx of c-values (from the startng form (*) of the lnear program) BV correspondng to named basc varables ordered by the row number n whch they arse n

the optmal tableau. In ths example we have C BV = [ 1], a 1new = [[1/2], c 1new = 25, B (as above) [ 9 ]] from whch we obtan the new c-value: c = -25. Snce the latter s negatve, the current bass 1 of x and x s no longer optmal. The fact that c = -25 means that each desk now produced 3 2 1 ncreases proft by $25. Thus, x 1 should enter nto the bass. To fnd the new optmal soluton one must solve the lnear program obtaned from (***) by replacng the column numbers 3/8, 5/2, and 1 by -.625, 2.25, and -25, resp. [One can make use of a program such as LINDO for ths purpose.] The frst two of the latter numbers are obtaned from B a 1new [Wnston]. The latter number, -25, s computed as above. The new bass becomes x 3 together wth x 1. In addton to explorng when a bass changes, we explore changes n the column of a nonbasc varable, lke x 1, for whch the bass does not change. We note there s no change n the names of the bass varables when, usng the formula above, the computed c j s non-negatve. The followng HP-48G/GX program has been wrtten for the exploratory purposes cted above, namely, to dagnose whether or not a bass wll change. The program accommodates matrces of any dmenson,.e., for problems larger than that carred here. As one experments by changng parameters, approprate changes to nput matrces must occur. These changes can be accomplshed on the HP by a) re-typng the matrces n ther entrety and re-enterng them, b) usng the matrx edtng routnes found on the HP, or c) usng varous matrx edtng programs such as those descrbed n [LaTorre, chapt. 4]. We note that even n ths small example there are three parameters, c, a, and a, that are 1 11 12 allowed to vary, ndvdually or smultaneously, whch makes for a szeable degree of complexty. The reader s nvted to vary the latter parameters, record data, and note f the bass changes: a numercal nvestgaton. It s nformatve n the case of the example n hand to examne the senstvty ssue from the followng addtonal two ponts of vew: graphcal and analytcal. The program below wrtten for the HP-48G/GX wll determne whether or not a bass becomes suboptmal,.e., no longer remans a bass, when any combnaton of parameters c j and a j from a sngle column are altered. MAIN PROGRAM: {The program s nteractve} P.SA: << P1 P2 P3 P4 P5 P6 SWAP P7 SWAP P8 HALT P9 P9 P1 P9 P11 HALT SWAP DROP SWAP DROP P12 P13 DUP2 P14 P15 ROLLD P16 NEG P17 P18 >> {P.SA = PROGRAM (FOR) SENSITIVITY ANALYSIS} SUBROUTINES: P1: << "ENTER ROW CBV" PROMPT >> {CBV = C BV} P2: << "ENTER BINV" PROMPT >> {BINV = B }

P3: << "ENTER COL NBAJ" PROMPT >> {NBAJ = NONBASIC VARIABLE COLUMN J WITH ENTRIES a j } P4: << CBV BINV NBAJ ' CBV*BINV*NBAJ ' >> P5: << OBJ DROP >> P6: << "PRICE MUST " >> P7: << "EXCEED " >> P8: << "TO CHANGE BASIS" >> P9: << "... " >> P1: << "CURRENT PRICE IS" >> P11: << " ENTER CJ " >> {CJ = c } j P12: << 6 >> P13: << PICK >> P14: << A B << IF 'A B' THEN " NO BASIS CHANGE" ELSE " BASIS CHANGES " END >>>> P15: << 3 >> P16: << - >> P17: << " IS THE NEW CJ " >> P18: << " END " >> TO RUN THE PROGRAM: Press P.SA Enter CBV {See CBV above} Enter BINV {See BINV above} Enter NBAJ {See NBAJ above} Message appears: "PRICE MUST EXCEED..." Message appears: "CURRENT PRICE IS" Message appears wth request: "ENTER CJ" Enter CJ value Fnal message appears nformng whether or not bass changes and gvng new CJ value REFERENCES Harvey, C.M., Operatons Research: An Introducton to Lnear Optmzaton and Decson Analyss. Elsever North Holland, Inc., 1979 (New York, New York). LaTorre, D.R., edtor, HP-48G/GX for Scence and Engneerng Mathematcs. Saunders College Publshng, 1994 (Orlando, Florda). Wnston, W.L., Operatons Research: Applcatons and Algorthms. Duxbury Press, 1994 (Belmont, Calforna).