CHAPTER 1. Linear Programming; Basic Concepts. 1. 1.1. History and Introduction. 1. 1.2. The Company 'Dovetail'. 2. 1.2.1 Formulating Model 'Dovetail'. 2.
LINEAR AND INTEGER PROGRAMMING Theory and Practice Second Edition
Gerard Sierksma University of Groningen Groningen, The Netherlands
MARCEL
MARCEL DEKKER, INC.
N E W YORK • BASEL
CONTENTS
PREFACE CHAPTER 1. Linear Programming; Basic Concepts 1.1 History and Introduction 1.2 The Company 'Dovetail' 1.2.1 Formulating Model 'Dovetail' 1.2.2 The Graphical Solution Method 1.3 The Definition of LP-Model 1.3.1 The Standard Form of an LP-model 1.3.2 Types of Optimal Solutions and Feasible Regions 1.4 Basic Feasible Solutions 1.4.1 Slack Variables and Binding Constraints 1.4.2 Basic Feasible Solutions and Degeneracy 1.4.3 The Row-column Complementarity Theorem 1.5 Adjacency and Optimality 1.5.1 Hyperplanes and Halfspaces 1.5.2 Basic Feasible Solutions and Vertices of the Feasible Region 1.5.3 Degenerate Vertices and Basic Feasible Solutions 1.5.4 Adjacent Vertices; Optimal Vertex Theorem 1.6 Alternatives of the Standard LP-model 1.6.1 Reductions to Standard Form 1.6.2 Basic Feasible Solutions for Models with Equality Constraints 1.7 Exercises
From Vertex to Vertex to an Optimum The Simplex Algorithm Simplex Tableaus; Simplex Adjacency Graphs Cycling; the Perturbation Procedure Initialization The Big-M Procedure The Two-phase Procedure Multiple and Unbounded Optimal Solutions The Revised Simplex Method Formulating the Algorithm The Product Form of the Inverse Applying the Revised Simplex Algorithm Exercises
43 46 52 55 61 62 65 68 73 74 76 77 79
CHAPTER 3. Duality and Optimality 3.1 Introduction 3.2 The Companies 'Dovetail' and 'Salmonnose' 3.2.1 Formulating the Dual Model 3.2.2 Economic Interpretation 3.3 Duality and Optimality 3.3.1 Dualizing the Standard LP-model 3.3.2 Dualizing Nonstandard LP-models 3.3.3 Optimality and Optimal Dual Basic Feasible Solutions 3.4 Complementary Slackness Relations; Farkas' Lemma 3.4.1 Complementary Dual Variables 3.4.2 Strong Complementary Slackness 3.4.3 Determining the Optimality of a Given Solution 3.5 Infeasibility and Unboundedness 3.6 The Simplex Method and the Dual Model 3.7 Exercises
CHAPTER 4. Sensitivity Analysis 4.1 Sensitivity of the Model Parameters 4.1.1 Perturbing the Objective Coefficients 4.1.2 Perturbing Right-hand Sides of Constraints; Shadow Prices The Nondegenerate Case 4.1.3 Perturbation on the Nonnegativities; Shadow Costs The Nondegenerate Case 4.1.4 Perturbation of the Technology Matrix 4.2 Sensitivity Analysis for the Degenerate Case 4.2.1 Duality between Multiple and Degenerate Optimal Solutions 4.2.2 Left- and Right-shadow Prices/Costs 4.3 Shadow Prices/Costs and Redundancy of Equality Constraints
117 117 118 126 133 139 142 142 147 159
Contents 4.4
Exercises
XI
163
CHAPTER 5. Karmarkar's Interior Path Method 5.1 Introduction 5.1.1 Some History 5.1.2 The Lagrange Multiplier Method 5.2 The Interior Path 5.2.1 The Karush-Kuhn-Tucker Conditions 5.2.2 The Logarithmic Barrier Function and the Interior Path 5.2.3 Monotonicity and Duality 5.3 Formulation of the Interior Path Method 5.3.1 The Interior Path as an Invisible Hand 5.3.2 Projections on Null Space and Row Space 5.3.3 Dikin's Affine Scaling Procedure 5.3.4 Determining the Search Direction 5.4 Convergence to the Interior Path; Maintaining FeasibiUty 5.4.1 The Convergence Measure 5.4.2 Approximations of Interior Paths 5.4.3 Maintaining Feasibility; the Interior Path Algorithm 5.5 Termination and Initialization 5.5.1 Termination and the Duality Gap 5.5.2 Initialization 5.6 Exercises
CHAPTER 6. Integer Linear Programming 6.1 Introduction 6.1.1 The Rounding-off Procedure 6.1.2 The Company 'Cheemi' 6.2 The Branch-and-bound Method 6.2.1 Applying the Branch-and-bound Method 6.2.2 The General Form of the Branch-and-bound Method 6.2.3 The Knapsack Problem 6.2.4 A Machine Scheduling Problem 6.3 Linearizing Logical Forms with Binary Variables 6.3.1 The Binary Variables Theorem 6.3.2 Introduction to the Theory of Logical Variables 6.3.3 Logical Forms Represented by Binary Variables 6.3.4 A Decentralization Problem 6.4 Special Methods for Integer and Mixed Integer Models 6.4.1 Gomory's Cutting-plane Method for ILP-modeis 6.4.2 Gomory's Mixed-integer Cutting-plane Method 6.4.3 Benders' Decomposition Method for MILP-modeis 6.5 Exercises
CHAPTER 7. Linear Network Models 7.1 LP-Models with Integer Solutions; Total Unimodularity 7.1.1 Total Unimodularity and Integer Vertices 7.1.2 Total Unimodularity and Incidence Matrices 7.1.3 ILP-models having Totally Unimodular Matrices 7.2 The Network Simplex Method 7.2.1 The Transshipment Problem 7.2.2 Basis Network Matrices and Feasible Tree Solutions 7.2.3 Formulation of the Network Simplex Method 7.3 Exercises
269 269 269 273 277 288 288 290 293 307
CHAPTER 8. Computational Complexity Issues 8.1 Introduction to Computational Complexity 8.2 Computational Aspects of Dantzig's Simplex Method 8.3 Polynomiality of the Interior Path Method 8.4 Computational Aspects of the Branch-and-bound Method 8.5 Exercises
317 317 320 324 326 329
CHAPTER 9. Model Building, Case Studies, and Advanced Techniques 9.1 Linear Programming Applications 9.1.1 The Art of Building and Implementing Mathematical Models 9.1.2 Nine Steps of the Decision Process 9.2 Production Planning; a Single Product Case 9.2.1 The Parameters of the Model 9.2.2 Regulär Employees and Regulär Working-hours 9.2.3 Overtime 9.2.4 Sensitivity Analysis 9.3 The Production of Several Designs of Coffee Machines 9.3.1 The Parameters and the Input Data of the Model 9.3.2 Minimizing Shortages 9.3.3 Old and Recent Shortages 9.3.4 Füll Week Productions 9.3.5 Sensitivity Analysis 9.4 Minimizing Trim-loss when Cutting Cardboard 9.4.1 Formulating the Problem 9.4.2 Gilmore-Gomory's Solution Method 9.4.3 Transformation into a 0-1 Knapsack Problem 9.4.4 Calculating an Optimal Solution 9.5 Designing a Reservoir for Irrigation 9.5.1 The Parameters and the Input Data 9.5.2 Maximizing the Irrigation Area 9.5.3 Changing the Input Parameters of the Model 9.6 Routing Helicopters for Crew Exchanges on Off-shore Locations
Problem Description The Off-shore Transportation Problem as Vehicle Routing Problem Decreasing the Number of Platform Visits Integer Linear Programming Formulation The Column Generation Procedure; a Knapsack and Traveling Salesman Problem Dual Values as Price Indicators for Crew Exchanges A Rounding-off Procedure for Determining an Integer Solution Computational Experiments The Catering Service Problem The Formulation of the Problem The Transshipment Problem Formulation Applying the Network Simplex Method Sensitivity Analysis Conflicting Objectives: Producing or Importing Problem Description and Input Data Modeling the Two Conflicting Objectives; Pareto-optimal Points Goal Programming for Conflicting Objectives The LP-model of the Goal Programming Problem The Computer Solution for Conflicting Objectives Soft and Hard Constraints; Computer Solutions Sensitivity Analysis Alternative Solution Techniques A Comparison of the Solutions Coalition Formation and Profit Distribution The Farmers Cooperation Problem Game Theory; Linear Production Games How to Distribute the Total Profit among the Farmers Profit Distribution in the Case of p-Replica Games Sensitivity Analysis Exercises