Applications of Linear Programming

Similar documents
Graph Algorithms (part 3 of CSC 282),

Lecture 3: Totally Unimodularity and Network Flows

Review of course COMP-251B winter 2010

Graph Algorithms (part 3 of CSC 282),

Chalmers University of Technology. Network Models. April 11, Birgit Grohe

Network Models - Examples. Network Models. Definition and Terminology. The Minimum Spanning Tree (MST) Problem

Lecture 18 Solving Shortest Path Problem: Dijkstra s Algorithm. October 23, 2009

Analysis of Algorithms, I

LECTURES 3 and 4: Flows and Matchings

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

Graphs and Network Flows IE411. Lecture 13. Dr. Ted Ralphs

Index. stack-based, 400 A* algorithm, 325

Lecture 7: Bipartite Matching

Communication Networks I December 4, 2001 Agenda Graph theory notation Trees Shortest path algorithms Distributed, asynchronous algorithms Page 1

Jessica Su (some parts copied from CLRS / last quarter s notes)

2.3 Optimal paths. E. Amaldi Foundations of Operations Research Politecnico di Milano 1

Problem set 2. Problem 1. Problem 2. Problem 3. CS261, Winter Instructor: Ashish Goel.

CSE 417 Network Flows (pt 4) Min Cost Flows

Shortest path problems

2.3 Optimal paths. Optimal (shortest or longest) paths have a wide range of applications:

Graphs and Network Flows IE411. Lecture 21. Dr. Ted Ralphs

Graph Algorithms. A Brief Introduction. 高晓沨 (Xiaofeng Gao) Department of Computer Science Shanghai Jiao Tong Univ.

Lecture 19. Broadcast routing

The Shortest Path Problem. The Shortest Path Problem. Mathematical Model. Integer Programming Formulation

Artificial Intelligence

Algorithm Design (8) Graph Algorithms 1/2

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

Minimum Spanning Trees

CS350: Data Structures Dijkstra s Shortest Path Alg.

CMSC351 - Fall 2014, Homework #6

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

Lecture Notes for IEOR 266: Graph Algorithms and Network Flows

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

Lecture 14: Linear Programming II

Taking Stock. Last Time Flows. This Time Review! 1 Characterize the structure of an optimal solution

Syllabus. simple: no multi-edges undirected edges in-/out-/degree /0: absent 1: present (strongly) connected component subgraph, induced graph

CSE 417 Network Flows (pt 3) Modeling with Min Cuts

CS 341: Algorithms. Douglas R. Stinson. David R. Cheriton School of Computer Science University of Waterloo. February 26, 2019

Introduction to Algorithms Third Edition

Solving problems on graph algorithms

Theory of Computing. Lecture 10 MAS 714 Hartmut Klauck

Graphs and Network Flows ISE 411. Lecture 7. Dr. Ted Ralphs

CS599: Convex and Combinatorial Optimization Fall 2013 Lecture 14: Combinatorial Problems as Linear Programs I. Instructor: Shaddin Dughmi

Algorithms for Data Science

CHAPTER 13 GRAPH ALGORITHMS

END-TERM EXAMINATION

Student Name and ID Number. MATH 3012, Quiz 3, April 16, 2018, WTT

Network Design and Optimization course

CS490 Quiz 1. This is the written part of Quiz 1. The quiz is closed book; in particular, no notes, calculators and cell phones are allowed.

Shortest Paths. March 21, CTU in Prague. Z. Hanzálek (CTU) Shortest Paths March 21, / 44

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

Sources for this lecture 2. Shortest paths and minimum spanning trees

Network Flow. November 23, CMPE 250 Graphs- Network Flow November 23, / 31

Mathematics for Decision Making: An Introduction. Lecture 18

Review for Midterm Exam

Introduction Optimization on graphs

CLASS: II YEAR / IV SEMESTER CSE CS 6402-DESIGN AND ANALYSIS OF ALGORITHM UNIT I INTRODUCTION

Algorithms and Data Structures

Lecture 3: Graphs and flows

Graphs and Algorithms 2016

and 6.855J March 6, Maximum Flows 2

Lecture 6 Basic Graph Algorithms

Chapter 9. Greedy Technique. Copyright 2007 Pearson Addison-Wesley. All rights reserved.

Notes for Lecture 20

Model Answer. Section A Q.1 - (20 1=10) B.Tech. (Fifth Semester) Examination Analysis and Design of Algorithm (IT3105N) (Information Technology)

CSC 8301 Design & Analysis of Algorithms: Linear Programming

Tutorial. Question There are no forward edges. 4. For each back edge u, v, we have 0 d[v] d[u].

Lecture 18. What we ve done and what s to come

Problem 1. Which of the following is true of functions =100 +log and = + log? Problem 2. Which of the following is true of functions = 2 and =3?

Minimum Spanning Tree

Directed Graphs. DSA - lecture 5 - T.U.Cluj-Napoca - M. Joldos 1

Homework 3 Solutions

Minimum Cost Edge Disjoint Paths

Algorithms and Data Structures Lesson 4

Dijkstra s algorithm for shortest paths when no edges have negative weight.

SUGGESTION : read all the questions and their values before you start.

Lecture 10,11: General Matching Polytope, Maximum Flow. 1 Perfect Matching and Matching Polytope on General Graphs

Thomas H. Cormen Charles E. Leiserson Ronald L. Rivest. Introduction to Algorithms

2. True or false: even though BFS and DFS have the same space complexity, they do not always have the same worst case asymptotic time complexity.

GRAPHS: THEORY AND ALGORITHMS

Reference Sheet for CO142.2 Discrete Mathematics II

Graph Theory II. Po-Shen Loh. June edges each. Solution: Spread the n vertices around a circle. Take parallel classes.

Final Exam Spring 2003

CS4800: Algorithms & Data Jonathan Ullman

Advanced Algorithm Design and Analysis (Lecture 5) SW5 fall 2007 Simonas Šaltenis

4/8/11. Single-Source Shortest Path. Shortest Paths. Shortest Paths. Chapter 24

Classic Graph Theory Problems

Contents. CS 124 Final Exam Practice Problem 5/6/17. 1 Format and Logistics 2

Introductory Remarks

Introduction to Parallel & Distributed Computing Parallel Graph Algorithms

Mathematical Tools for Engineering and Management

Lecture 10: Analysis of Algorithms (CS ) 1

Chapter 5 Graph Algorithms Algorithm Theory WS 2012/13 Fabian Kuhn

Maximum flows & Maximum Matchings

Single Source Shortest Path (SSSP) Problem

Single Source Shortest Path: The Bellman-Ford Algorithm. Slides based on Kevin Wayne / Pearson-Addison Wesley

Department of Computer Applications. MCA 312: Design and Analysis of Algorithms. [Part I : Medium Answer Type Questions] UNIT I

from notes written mostly by Dr. Carla Savage: All Rights Reserved

J Linear Programming Algorithms

1 Matching in Non-Bipartite Graphs

Transcription:

Applications of Linear Programming lecturer: András London University of Szeged Institute of Informatics Department of Computational Optimization Lecture 6 based on Juraj Stacho s lecture notes ad the Columbia university

Graphs

Graphs

Graph representations Graphs can be represented by matrices. For us the most important ones are the

Graph representations Graphs can be represented by matrices. For us the most important ones are the incidence matrix

Graph representations Graphs can be represented by matrices. For us the most important ones are the incidence matrix adjacency matrix

Graph representations Graphs can be represented by matrices. For us the most important ones are the incidence matrix adjacency matrix

A Graph s incidence matrix is TU Theorem. The incidence matrix of a directed graph is totally unimodular.

A Graph s incidence matrix is TU Theorem. The incidence matrix of a directed graph is totally unimodular. Proof. Easy to see by induction (according to the size of subdeterminants).

A Graph s incidence matrix is TU Theorem. The incidence matrix of a directed graph is totally unimodular. Proof. Easy to see by induction (according to the size of subdeterminants). Note: Combining this theorem with that we learnt in Lecture 5 we can see that if an IP is given by an incidence matrix (of a graph) is simplified to an LP problem. This makes easier to solve the problem (can be solved in polynomial time), moreover the strength of duality can be utilized.

Brief history and motivation The Shortest Path Problem is one of the most important efficient computational tools at this disposal

Brief history and motivation The Shortest Path Problem is one of the most important efficient computational tools at this disposal It is used everywhere, from GPS navigation and network communication to project management, layout design, robotics, computer graphics, and the list goes on

Brief history and motivation The Shortest Path Problem is one of the most important efficient computational tools at this disposal It is used everywhere, from GPS navigation and network communication to project management, layout design, robotics, computer graphics, and the list goes on First algorithms for the Shortest Path problem were designed by Ford (1956), Bellman (1958), and Moore (1959). For non-negative weights, a more efficient algorithm was first suggested by Dijkstra (1959).

Brief history and motivation The Shortest Path Problem is one of the most important efficient computational tools at this disposal It is used everywhere, from GPS navigation and network communication to project management, layout design, robotics, computer graphics, and the list goes on First algorithms for the Shortest Path problem were designed by Ford (1956), Bellman (1958), and Moore (1959). For non-negative weights, a more efficient algorithm was first suggested by Dijkstra (1959). All-pairs Shortest Path problem the first algorithms were founds by Shimbel (1953), and by Roy (1959), Floyd (1962), and Warshall (1962)

Brief history and motivation The Minimum Spanning Tree problem also has a rich history

Brief history and motivation The Minimum Spanning Tree problem also has a rich history The first known algorithm was developed by Boruvka (1926) for efficient distribution of electricity

Brief history and motivation The Minimum Spanning Tree problem also has a rich history The first known algorithm was developed by Boruvka (1926) for efficient distribution of electricity Later independently discovered by many researchers over the years: Jarnik (1930), Kruskal (1956), Prim(1957), and Dijkstra (1959)

Shortest path problem

Shortest path problem

Dijksra s algorithm

Dijksra s algorithm

Dijksra s algorithm

Dijksra s algorithm We can read the shortest path from 1 to 6: that is path 1,2,5,6.

Minimum spanning tree

Minimum spanning tree

Minimum spanning tree - Kruskal s algorithm

Maximum flow problem

Maximum flow problem

Maximum flow problem - The Ford-Fulkerson algorithm

Maximum flow problem - The Ford-Fulkerson algorithm

Maximum flow problem - The Ford-Fulkerson algorithm

Maximum flow problem - The Ford-Fulkerson algorithm

Maximum flow problem - Minimum cut

Maximum flow problem - Minimum cut Theorem. (Max. flow - Min. cut) The maximum value of an (s, t)-flow is equal to the minimum capacity of an (s, t)-cut.

Maximum flow problem - Minimum cut

Maximum flow problem - Minimum cut

Minimum cost flow problem

Minimum cost flow problem

Summary

Summary

Summary

Summary

Summary

Example #1

Example #2 Sunco Oil wants to ship the maximum possible amount of oil (per hour) via pipeline from node so to node si in Figure. On its way from node so to node si, oil must pass through some or all of stations 1, 2, and 3. The various arcs represent pipelines of different diameters. The maximum number of barrels of oil (millions of barrels per hour) that can be pumped through each arc is shown in the Table. Each number is called an arc capacity. Formulate an LP that can be used to determine the maximum number of barrels of oil per hour that can be sent from so to si.

Example #3 Five male and five female entertainers are at a dance. The goal of the matchmaker is to match each woman with a man in a way that maximizes the number of people who are matched with compatible mates. Table describes the compatibility of the entertainers. Draw a network that makes it possible to represent the problem of maximizing the number of compatible pairings as a maximum-flow problem.

Example #3 the arc joining each woman to the sink has a capacity of 1, conservation of flow ensures that each woman will be matched with at most one man. Similarly, because each arc from the source to a man has a capacity of 1, each man can be paired with at most one woman. Because arcs do not exist between noncompatible mates, we can be sure that a flow of k units from source to sink represents an assignment of men to women in which k compatible couples are created.