Linear Programming. Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015

Similar documents
Linear Programming. Linear Programming. Linear Programming. Example: Profit Maximization (1/4) Iris Hui-Ru Jiang Fall Linear programming

An example of LP problem: Political Elections

Linear Programming and its Applications

Lecture 9: Linear Programming

CS 372: Computational Geometry Lecture 10 Linear Programming in Fixed Dimension

Linear Programming Terminology

Artificial Intelligence

Design and Analysis of Algorithms (V)

Lecture 4: Linear Programming

What s Linear Programming? Often your try is to maximize or minimize an objective within given constraints

Three Dimensional Geometry. Linear Programming

Chapter 29 Linear Programming 771. policy urban suburban rural build roads gun control farm subsidies 0 10 gasoline tax

Linear Programming in Small Dimensions

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

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

Convex Optimization CMU-10725

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

Introduction to Linear Programming

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

CMPSCI611: The Simplex Algorithm Lecture 24

Lecture notes on the simplex method September We will present an algorithm to solve linear programs of the form. maximize.

CSC 8301 Design & Analysis of Algorithms: Linear Programming

Linear Programming. Readings: Read text section 11.6, and sections 1 and 2 of Tom Ferguson s notes (see course homepage).

Linear Programming. Widget Factory Example. Linear Programming: Standard Form. Widget Factory Example: Continued.

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

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

CHAPTER 3 LINEAR PROGRAMMING: SIMPLEX METHOD

11 Linear Programming

Heuristic Optimization Today: Linear Programming. Tobias Friedrich Chair for Algorithm Engineering Hasso Plattner Institute, Potsdam

OPERATIONS RESEARCH. Linear Programming Problem

An introduction to pplex and the Simplex Method

Linear programming and duality theory

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

Review for Mastery Using Graphs and Tables to Solve Linear Systems

Linear Programming CISC4080, Computer Algorithms CIS, Fordham Univ. Linear Programming

Some Advanced Topics in Linear Programming

Search and Intersection. O Rourke, Chapter 7 de Berg et al., Chapter 11

Chapter 4 Concepts from Geometry

Graphing Linear Inequalities in Two Variables.

Linear Programming Motivation: The Diet Problem

Lecture 2 September 3

UNIT 2 LINEAR PROGRAMMING PROBLEMS

Mathematics. Linear Programming

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

Mathematics for Business and Economics - I. Chapter7 Linear Inequality Systems and Linear Programming (Lecture11)

ACTUALLY DOING IT : an Introduction to Polyhedral Computation

Approximation Algorithms

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

Chapter 15 Introduction to Linear Programming

Mathematical and Algorithmic Foundations Linear Programming and Matchings

DETERMINISTIC OPERATIONS RESEARCH

Computer Science & Engineering 423/823 Design and Analysis of Algorithms

Tribhuvan University Institute Of Science and Technology Tribhuvan University Institute of Science and Technology

Combinatorial Geometry & Topology arising in Game Theory and Optimization

5. Consider the tree solution for a minimum cost network flow problem shown in Figure 5.

Math Week in Review #5

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

Lesson 11: Duality in linear programming

Linear Programming Duality and Algorithms

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

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

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

Linear Programming: Introduction

! Linear programming"! Duality "! Smallest enclosing disk"

Linear Programming. them such that they

4.1 Graphical solution of a linear program and standard form

INTRODUCTION TO LINEAR AND NONLINEAR PROGRAMMING

Notes for Lecture 18

Identical text Minor difference Moved in S&W Wrong in S&W Not copied from Wiki 1

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

David G. Luenberger Yinyu Ye. Linear and Nonlinear. Programming. Fourth Edition. ö Springer

1 Linear Programming. 1.1 Optimizion problems and convex polytopes 1 LINEAR PROGRAMMING

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

J Linear Programming Algorithms

Name: THE SIMPLEX METHOD: STANDARD MAXIMIZATION PROBLEMS

Graphical Methods in Linear Programming

Graphs that have the feasible bases of a given linear

Programming, numerics and optimization

Discrete Optimization. Lecture Notes 2

Introduction. I Given a weighted, directed graph G =(V, E) with weight function

POLYHEDRAL GEOMETRY. Convex functions and sets. Mathematical Programming Niels Lauritzen Recall that a subset C R n is convex if

Computational Geometry Lecture Duality of Points and Lines

Real life Problem. Review

Homework 2: Multi-unit combinatorial auctions (due Nov. 7 before class)

Convex Polygon Generation

I will illustrate the concepts using the example below.

1/25 Warm Up Find the value of the indicated measure

Computational Geometry. Algorithm Design (10) Computational Geometry. Convex Hull. Areas in Computational Geometry

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

Lec13p1, ORF363/COS323

16.410/413 Principles of Autonomy and Decision Making

Lesson 17. Geometry and Algebra of Corner Points

4 Integer Linear Programming (ILP)

Boardworks Ltd KS3 Mathematics. S1 Lines and Angles

Lecture 7: Support Vector Machine

Some Open Problems in Graph Theory and Computational Geometry

CS522: Advanced Algorithms

Computational Geometry

Solutions to problem set 1

LECTURE 13: SOLUTION METHODS FOR CONSTRAINED OPTIMIZATION. 1. Primal approach 2. Penalty and barrier methods 3. Dual approach 4. Primal-dual approach

Transcription:

Presentation for use with the textbook, Algorithm Design and Applications, by M. T. Goodrich and R. Tamassia, Wiley, 2015 Linear Programming 2015 Goodrich and Tamassia 1

Formulating the Problem q The function to maximize is called the objective function and the inequalities are called constraints. 2015 Goodrich and Tamassia 2

Matrix Notation 2015 Goodrich and Tamassia 3

Compact Matrix Notation 2015 Goodrich and Tamassia 4

Geometry of Linear Programs q Let us restrict ourselves to the twodimensional case: n n n n n Each inequality constraint describes a halfplane, expressed as an infinite region to one side of a line. So a point that is inside all of these halfplanes is a point that satisfies all the constraints. We call such a point a feasible solution. Intersections of half-planes have the shape of a convex polygon (Section 22.2). We call this set the feasible region. 2015 Goodrich and Tamassia 5

Optimization q q We are interested in a feasible solution that optimizes the objective function. We refer to this feasible solution an optimal solution. For example, consider the objective function c = 1000x 1 + 2000x 2. q Applying this to previous 2- dimensional constraints, optimization looks like a moving line that intersects the feasible region. 2015 Goodrich and Tamassia 6

The Simplex Method q To solve a linear program using the simplex method, we must first rewrite the problem in a format known as slack form. q To convert a linear program from standard form into slack form, we rewrite each of the inequality constraints as an equivalent equality constraint. q This is done with the introduction of new variables, called slack variables, which are nonnegative and measure the difference in the original inequality. 2015 Goodrich and Tamassia 7

Slack Form 2015 Goodrich and Tamassia 8

Example 2015 Goodrich and Tamassia 9

Basic Solutions and Pivots q q q We are interested in the basic solution of the slack form, which means we set all the free variables to zero and let the equality constraints determine the values of the basic variables. The simplex method works by rewriting the slack form until a basic solution becomes an optimal solution. The operation we use to rewrite the slack form is called a pivot, which takes a free variable and a basic variable and interchanges their roles by rewriting the equality constraints and objective function. 2015 Goodrich and Tamassia 10

Example Pivot 2015 Goodrich and Tamassia 11

An Extended Example 2015 Goodrich and Tamassia 12

An Extended Example, step 2 2015 Goodrich and Tamassia 13

An Extended Example, step 3 2015 Goodrich and Tamassia 14

An Extended Example, step 4 2015 Goodrich and Tamassia 15

The Simplex Algorithm q We assume the input is given in slack form and that the basic solution is feasible. 2015 Goodrich and Tamassia 16

Another Simplex Example 2015 Goodrich and Tamassia 17

Duality 2015 Goodrich and Tamassia 18

Duality, continued 2015 Goodrich and Tamassia 19

Duality Example 2015 Goodrich and Tamassia 20

Another Duality Example 2015 Goodrich and Tamassia 21

Application of Linear Programming to Shortest Paths q q q q In the shortest-path problem, we have a source, s, and target, t, such that each edge, (u, v), has a weight, d(u, v), that represents the distance between two locations, u and v. The goal is to find the shortest path between the source, s, and target, t. We can formulate a linear program for this problem based on the setup and termination conditions for the Bellman-Ford algorithm. We define for every vertex, v, a variable, d v, which should represent the shortest distance between s and v. The initialization, ds = 0, now becomes one of our constraints. To pinpoint the correct value for d t, we use the termination condition of the Bellman-Ford algorithm namely, that the triangle inequality holds for every edge. We want d t to be the largest value that satisfies these conditions. Thus, the corresponding linear program is the following: 2015 Goodrich and Tamassia 22