Math 414 Lecture 30. The greedy algorithm provides the initial transportation matrix.

Similar documents
Name: THE SIMPLEX METHOD: STANDARD MAXIMIZATION PROBLEMS

Linear Programming. Linear programming provides methods for allocating limited resources among competing activities in an optimal way.

Optimization of Design. Lecturer:Dung-An Wang Lecture 8

Math Introduction to Operations Research

AM 121: Intro to Optimization Models and Methods Fall 2017

4.1 The original problem and the optimal tableau

Solutions for Operations Research Final Exam

Section Notes 5. Review of Linear Programming. Applied Math / Engineering Sciences 121. Week of October 15, 2017

Easter Term OPTIMIZATION

Linear Programming. Course review MS-E2140. v. 1.1

Introduction to Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

How to Solve a Standard Maximization Problem Using the Simplex Method and the Rowops Program

VARIANTS OF THE SIMPLEX METHOD

Linear programming and duality theory

Artificial Intelligence

Transportation Problems

Approximation Algorithms: The Primal-Dual Method. My T. Thai

5. DUAL LP, SOLUTION INTERPRETATION, AND POST-OPTIMALITY

Outline. CS38 Introduction to Algorithms. Linear programming 5/21/2014. Linear programming. Lecture 15 May 20, 2014

Read: H&L chapters 1-6

Finite Math - J-term Homework. Section Inverse of a Square Matrix

Section Notes 4. Duality, Sensitivity, and the Dual Simplex Algorithm. Applied Math / Engineering Sciences 121. Week of October 8, 2018

Linear Programming Problems

CSC 8301 Design & Analysis of Algorithms: Linear Programming

Outline: Finish uncapacitated simplex method Negative cost cycle algorithm The max-flow problem Max-flow min-cut theorem

Lecture 9: Linear Programming

Some Advanced Topics in Linear Programming

Discrete Optimization 2010 Lecture 5 Min-Cost Flows & Total Unimodularity

Mathematical and Algorithmic Foundations Linear Programming and Matchings

MATLAB Solution of Linear Programming Problems

16.410/413 Principles of Autonomy and Decision Making

4. Linear Programming

Introduction to Operations Research Prof. G. Srinivasan Department of Management Studies Indian Institute of Technology, Madras

MLR Institute of Technology

Lecture notes on Transportation and Assignment Problem (BBE (H) QTM paper of Delhi University)

COT 6936: Topics in Algorithms! Giri Narasimhan. ECS 254A / EC 2443; Phone: x3748

The Simplex Algorithm

MATH 423 Linear Algebra II Lecture 17: Reduced row echelon form (continued). Determinant of a matrix.

DM545 Linear and Integer Programming. Lecture 2. The Simplex Method. Marco Chiarandini

Civil Engineering Systems Analysis Lecture XIV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics

Linear Programming Terminology

CSE 40/60236 Sam Bailey

4 LINEAR PROGRAMMING (LP) E. Amaldi Fondamenti di R.O. Politecnico di Milano 1

Advanced Operations Research Techniques IE316. Quiz 2 Review. Dr. Ted Ralphs

Simulation. Lecture O1 Optimization: Linear Programming. Saeed Bastani April 2016

Fundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology, Madras. Lecture No.

Dual-fitting analysis of Greedy for Set Cover

Copyright 2007 Pearson Addison-Wesley. All rights reserved. A. Levitin Introduction to the Design & Analysis of Algorithms, 2 nd ed., Ch.

Finite Math Linear Programming 1 May / 7

Farming Example. Lecture 22. Solving a Linear Program. withthe Simplex Algorithm and with Excel s Solver

4 Integer Linear Programming (ILP)

Tuesday, April 10. The Network Simplex Method for Solving the Minimum Cost Flow Problem

BCN Decision and Risk Analysis. Syed M. Ahmed, Ph.D.

Recap, and outline of Lecture 18

Math 5593 Linear Programming Lecture Notes

Generalized Network Flow Programming

CS 473: Algorithms. Ruta Mehta. Spring University of Illinois, Urbana-Champaign. Ruta (UIUC) CS473 1 Spring / 36

LECTURES 3 and 4: Flows and Matchings

Introduction to Mathematical Programming IE496. Final Review. Dr. Ted Ralphs

Lecture 6: Faces, Facets

A Comparative study on Algorithms for Shortest-Route Problem and Some Extensions

Part 1. The Review of Linear Programming The Revised Simplex Method

Linear Programming Motivation: The Diet Problem

George B. Dantzig Mukund N. Thapa. Linear Programming. 1: Introduction. With 87 Illustrations. Springer

Lecture 16 October 23, 2014

The Simplex Algorithm. Chapter 5. Decision Procedures. An Algorithmic Point of View. Revision 1.0

Math Week in Review #5

Advanced Operations Research Techniques IE316. Quiz 1 Review. Dr. Ted Ralphs

Module 10. Network Simplex Method:

Civil Engineering Systems Analysis Lecture XV. Instructor: Prof. Naveen Eluru Department of Civil Engineering and Applied Mechanics

Lecture 5: Duality Theory

WEEK 4 REVIEW. Graphing Systems of Linear Inequalities (3.1)

Introduction. Linear because it requires linear functions. Programming as synonymous of planning.

Ahigh school curriculum in Algebra 2 contains both solving systems of linear equations,

Improved Gomory Cuts for Primal Cutting Plane Algorithms

56:272 Integer Programming & Network Flows Final Examination -- December 14, 1998

Duality. Primal program P: Maximize n. Dual program D: Minimize m. j=1 c jx j subject to n. j=1. i=1 b iy i subject to m. i=1

1. Lecture notes on bipartite matching February 4th,

Assignment #3 - Solutions MATH 3300A (01) Optimization Fall 2015

Part 4. Decomposition Algorithms Dantzig-Wolf Decomposition Algorithm

Outline. Combinatorial Optimization 2. Finite Systems of Linear Inequalities. Finite Systems of Linear Inequalities. Theorem (Weyl s theorem :)

4.1 Graphical solution of a linear program and standard form

CMPSCI611: The Simplex Algorithm Lecture 24

The Affine Scaling Method

The Ascendance of the Dual Simplex Method: A Geometric View

IV. Special Linear Programming Models

Ryerson Polytechnic University Department of Mathematics, Physics, and Computer Science Final Examinations, April, 2003

ACO Comprehensive Exam October 12 and 13, Computability, Complexity and Algorithms

Linear Optimization. Andongwisye John. November 17, Linkoping University. Andongwisye John (Linkoping University) November 17, / 25

Fundamentals of Operations Research. Prof. G. Srinivasan. Department of Management Studies. Indian Institute of Technology Madras.

Linear and Integer Programming :Algorithms in the Real World. Related Optimization Problems. How important is optimization?

Module 4 Lecture Notes 1. Use of software for solving linear programming problems

CSE 417 Network Flows (pt 4) Min Cost Flows

Linear Programming. Larry Blume. Cornell University & The Santa Fe Institute & IHS

Linear programming II João Carlos Lourenço

THE simplex algorithm [1] has been popularly used

Integer Programming Theory

1. Lecture notes on bipartite matching

ORF 307: Lecture 14. Linear Programming: Chapter 14: Network Flows: Algorithms

Unit.9 Integer Programming

Transcription:

Math Lecture The greedy algorithm provides the initial transportation matrix. matrix P P Demand W ª «2 ª2 «W ª «W ª «ª «ª «Supply The circled x ij s are the initial basic variables. Erase all other values to get a transportation skeleton.

skeleton W W W Supply P ª «ª «ª «ª «P ª2 «ª «Demand Converting a skeleton to a transportation tableau: The empty squares of the skeleton must be filled with the dual variables and slacks. The s go on the right border; the s on the bottom border, and the the o ij s in the squares not occupied by the x ij s. The ij th dual constraint with slacks is x ij : + +o ij = c ij. For a basic variable x ij, the dual slack is o ij = (Complementary Slackness Theorem). Thus + + o ij = c ij becomes + = c ij. For each of the circled basic variables we have an equation: + = c ij.

skeleton W W W Supply P ª «ª «ª «ª «P ª2 «ª «Demand For each of the circled basic variables we have an equation: + = c ij. There are dual variables but only independent equations, hence only are basic variables and one, let s pick p, is a parameter. Thus p =. Use the equations + = c ij to solve for the remaining dual variables p 2, p, w,..., w. Write the s on the right border; the s on the bottom border.

P P W ª «ª2 «W ª «W For the parameters, x ij =. So instead of writing a circled x ij in the square, write the dual slack o ij : + +o ij = c ij. Hence o ij = c ij - -. Use this equation to fill in the uncircled squares for o ij. These would be objective row entries in a simplex tableau. The result is a transportation tableau. ª «ª «ª «

tableau P P W ª «9 - ª2 «W 2 ª «W Now we successively improve these tableau to an optimal solution (none of the interior o ij s are negative). The circled x ij are > and the and are unrestricted. Hence the dual solution will be feasible (and the primal will be optimal) iff the uncircled o ij are >. In a simplex tableau, these would be objective row coefficients which must be made positive. Loop: If no o ij is negative, stop, you have an optimal solution. Otherwise Choose the next entering basic variable as usual. How ª «ª «ª «

Pick the most negative (uncircled) entry o ij. Erase o ij ; shade its square; add an empty circle. This will contain the new entering basic variable x ij. tableau W W W P ª «ª «- 2 ª «9 ª «ª «P ª2 «ª «In row i, the circled x ij values must sum to s i, i.e., S j x ij = s i. In column j, the circled values must sum to d j. Thus if one circled x ij value in a row or column increases (decreases), some other value must decrease (increase). Suppose we increase the green square by one, what are the consequences

Chase these increases and decreases around until you find a loop. This loop begins and ends at the shaded entering variable; its other corners are the circled basic variables. tableau P P W ª «+ ª «- ª2 «W ª «- ª «ª «+ ª «Alternately mark the corners of the loop + or - starting with a + on the entering variable. We will increase the + values; decrease the - ones. How much can be added and subtracted from the loop variables W

The - values cannot decrease below since x ij >. The maximum amount of change = the minimum of the values labeled -. Add this to the + variables; subtract it from the - variables. tableau P P W ª «+ ª «- ª «W ª «- W ª «ª «+ ª «The - variable with the minumum value goes to ; it is the departing basic variable (pick one if two or more go to ). Remove the square s circled basic variable. Picking the most negative o ij equals selecting a simplex column with the most negative objective coefficient. Picking the first basic variable which goes to equals picking the variable with the minimum q ratio to be the departing variable.

Erase the old s, s, and o ij s (getting a skeleton) recalculate the new ones (converting the skeleton to a tableau as before). Repeat the loop. tableau P P W ª «ª «ª «W ª «W ª «ª «

tableau W W W P ª «ª «ª «ª «P ª «ª «

tableau W W W P ª «ª «ª «ª «P 2 ª «ª «

tableau W W W P ª «ª «ª «ª «P 2 ª «ª «

tableau W W W P ª «ª «ª «ª «P 2 ª «ª «ª «

tableau W W W P ª «ª «ª «ª «P ª «ª «

tableau W W W P ª «ª «- ª «ª «P 2 ª «ª «2

tableau P P W ª «ª «ª «ª «ª «- Optimal. Solution: min z =. +. +. +. +. +. = 2 at x =, x 2 =, x 2 =, x 2 =, x =, x =, the rest = W W ª «2

TRANSPORTATION ALGORITHM Input: an initial transportation tableau. Output: an optimal transportation matrix. Repeat until an optimal solution is found: v Set p =. v For the remaining,, calculate, using + = c ij for each circled basic x ij. calculate o ij using o ij = c ij - - for each parameter x ij. v If no objective coefficient (uncircled o ij ) is negative, stop. You have an optimal solution. Otherwise: v Pick the variable with the most negative o ij as the entering variable. Erase o ij ; shade the square; add a circle. v v Find a loop, starting with the entering variable and whose other corners are basic (circled). Alternately mark the corners + and -, starting with a + on the entering variable. Increase the + and decrease the - corner by the minimum of the - values. v Remove the circled departing variable (a minimum - value) which went to.