Introduction to Mathematical Programming IE406. Lecture 16. Dr. Ted Ralphs

Similar documents
1. What do you get as the integer and noninteger parts if you factor this as we did with our cutting planes:

Introduction to Mathematical Programming IE406. Lecture 4. Dr. Ted Ralphs

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

Introduction to Mathematical Programming IE406. Lecture 20. Dr. Ted Ralphs

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

Material handling and Transportation in Logistics. Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena

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

Previously Local sensitivity analysis: having found an optimal basis to a problem in standard form,

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

Module 10. Network Simplex Method:

Introduction to Graph Theory

MA4254: Discrete Optimization. Defeng Sun. Department of Mathematics National University of Singapore Office: S Telephone:

An Introduction to Graph Theory

APPM 4120/5120 Exam #2 Practice Solutions Spring 2015

Graph theory: basic concepts

CSCI 5654 (Fall 2013): Network Simplex Algorithm for Transshipment Problems.

Outline. Introduction. Representations of Graphs Graph Traversals. Applications. Definitions and Basic Terminologies

Solving problems on graph algorithms

Network Flows. 7. Multicommodity Flows Problems. Fall 2010 Instructor: Dr. Masoud Yaghini

GRAPHS, GRAPH MODELS, GRAPH TERMINOLOGY, AND SPECIAL TYPES OF GRAPHS

Graph and Digraph Glossary

Graphs Definitions. Gunnar Gotshalks. GraphDefinitions 1

2. CONNECTIVITY Connectivity

EXERCISES SHORTEST PATHS: APPLICATIONS, OPTIMIZATION, VARIATIONS, AND SOLVING THE CONSTRAINED SHORTEST PATH PROBLEM. 1 Applications and Modelling

Lecture 19. Broadcast routing

Lecture 1: Examples, connectedness, paths and cycles

Graphs and Network Flows IE411 Lecture 20

Final Exam Spring 2003

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

Varying Applications (examples)

Source. Sink. Chapter 10: Iterative Programming Maximum Flow Problem. CmSc250 Intro to Algorithms

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

MAT 7003 : Mathematical Foundations. (for Software Engineering) J Paul Gibson, A207.

6. Lecture notes on matroid intersection

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

Paths. Path is a sequence of edges that begins at a vertex of a graph and travels from vertex to vertex along edges of the graph.

SCHOOL OF ENGINEERING & BUILT ENVIRONMENT. Mathematics. An Introduction to Graph Theory

Network optimization: An overview

Lecture 3: Totally Unimodularity and Network Flows

Graph Theory. ICT Theory Excerpt from various sources by Robert Pergl

of optimization problems. In this chapter, it is explained that what network design

The Matrix-Tree Theorem and Its Applications to Complete and Complete Bipartite Graphs

CMSC 380. Graph Terminology and Representation

Artificial Intelligence

1 Digraphs. Definition 1

AMS /672: Graph Theory Homework Problems - Week V. Problems to be handed in on Wednesday, March 2: 6, 8, 9, 11, 12.

Dynamic modelling and network optimization

Simple graph Complete graph K 7. Non- connected graph

Graphs. Introduction To Graphs: Exercises. Definitions:

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

A Connection between Network Coding and. Convolutional Codes

CS473-Algorithms I. Lecture 13-A. Graphs. Cevdet Aykanat - Bilkent University Computer Engineering Department

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

NETWORK OPTIMIZATION MODELS

Lecture 4: Graph Algorithms

The University of Sydney MATH 2009

Notes for Lecture 20

Chapter 9 Graph Algorithms

CS 6783 (Applied Algorithms) Lecture 5

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

Overview. H. R. Alvarez A., Ph. D.

Mathematical and Algorithmic Foundations Linear Programming and Matchings

4. Linear Programming

Dist(Vertex u, Vertex v, Graph preprocessed) return u.dist v.dist

A NETWORK SIMPLEX ALGORITHM FOR SOLVING THE MINIMUM DISTRIBUTION COST PROBLEM. I-Lin Wang and Shiou-Jie Lin. (Communicated by Shu-Cherng Fang)

Chapter 9 Graph Algorithms

Lecture 19 Thursday, March 29. Examples of isomorphic, and non-isomorphic graphs will be given in class.

A New Quick Algorithm for Finding the Minimal Spanning Tree

Graphs. Pseudograph: multiple edges and loops allowed

Lecture 22 Tuesday, April 10

Artificial Intelligence

CME 305: Discrete Mathematics and Algorithms Instructor: Reza Zadeh HW#3 Due at the beginning of class Thursday 02/26/15

Algorithm Design (8) Graph Algorithms 1/2

Introduction III. Graphs. Motivations I. Introduction IV

Chapter 2 Graphs. 2.1 Definition of Graphs

Lecture 5: Graphs & their Representation

Algorithm Computation of a Single Source Shortest Path in a Directed Graph. (SSSP algorithm)

Solutions for Operations Research Final Exam

Routing. Information Networks p.1/35

Pebbling on Directed Graphs

REGULAR GRAPHS OF GIVEN GIRTH. Contents

Konigsberg Bridge Problem

Chapter 4 Concepts from Geometry

Lesson 22: Basic Graph Concepts

Optimization Methods in Management Science

UNIT 5 GRAPH. Application of Graph Structure in real world:- Graph Terminologies:

Distributed minimum spanning tree problem

Graph Theory CS/Math231 Discrete Mathematics Spring2015

Graph Theory. Part of Texas Counties.

MINIMUM COST MAXIMUM FLOW PROBLEM

Introduction aux Systèmes Collaboratifs Multi-Agents

6 ROUTING PROBLEMS VEHICLE ROUTING PROBLEMS. Vehicle Routing Problem, VRP:

Lecture 7: Bipartite Matching

Lecture Notes for IEOR 266: Graph Algorithms and Network Flows

CMSC 451: Lecture 22 Approximation Algorithms: Vertex Cover and TSP Tuesday, Dec 5, 2017

Graph Theory. Connectivity, Coloring, Matching. Arjun Suresh 1. 1 GATE Overflow

On Page Rank. 1 Introduction

Alex Schaefer. April 9, 2017

LECTURES 3 and 4: Flows and Matchings

Matching and Planarity

Transcription:

Introduction to Mathematical Programming IE406 Lecture 16 Dr. Ted Ralphs

IE406 Lecture 16 1 Reading for This Lecture Bertsimas 7.1-7.3

IE406 Lecture 16 2 Network Flow Problems Networks are used to model systems in which a commodity or commodities must be transported from one or more supply points to one or more demand points along defined pathways. These models occur naturally in many contexts. Transportation Logistics Telecommunications Network flow problems are defined on graphs that define the structure of the pathways in the network.

IE406 Lecture 16 3 Undirected Graphs An undirected graph G = (N, E) consists of A finite set of nodes N representing the supply and demand points. A set E of unordered pairs of nodes called edges representing the pathways joining pairs of nodes. We say that the edge {i, j} is incident to nodes i and j and i and j are its endpoints. The degree of a node is the number of edges incident to it. The degree of a graph is the maximum of the degrees of its nodes.

IE406 Lecture 16 4 Basic Definitions (Undirected) A walk is a finite sequence of nodes i 1,..., i t such that {i k, i k+1 } E k = 1, 2,..., t 1. A walk is called a path if it has no repeated nodes. A cycle is a path with i 1 = i t, t > 2. An undirected graph is said to be connected if for every pair of nodes i and j, there is a path from i to j. For undirected graphs, our convention will be to denote N = n and E = m.

IE406 Lecture 16 5 Directed Graphs A directed graph G = (N, A) consists of a set of N nodes and a set A of ordered pairs of nodes called arcs. For any arc (i, j), we say that j is the head and i is the tail. The arc (i, j) is said to be outgoing from node i and incoming to node j and incident to both i and j. We define I(i) and O(i) as I(i) = {j N (j, i) A} and O(i) = {j N (i, j) A}

IE406 Lecture 16 6 Basic Definitions (Directed) Corresponding to every directed graph is the underlying undirected graph obtained by ignoring the direction of the arcs. A walk in a directed graph is a sequence of nodes i 1,..., i t plus a corresponding sequence of arcs such that a 1,..., a t 1 such that for every k, either a k = (i k, i k+1 ), in which case a k is a forward arc, or a k = (i k+1, i k ), in which case a k is a backward arc. Again, a walk is a path if its nodes are distinct and a cycle is a path in which i 1 = i t. A walk, path, or cycle is directed if it contains only forward arcs. A directed graph is connected if the underlying undirected graph is connected.

IE406 Lecture 16 7 Trees An undirected graph is a tree if it is connected and acyclic (has no cycles). In a tree, nodes of degree one are called leaves. Properties of trees Every tree with more than one node has at least one leaf. An undirected graph is a tree if and only if it is connected and has N 1 edges. For any two distinct nodes i and j in a tree, there exists a unique path from i to j. If we add an edge to a tree, the resulting graph contains exactly one cycle.

IE406 Lecture 16 8 Subgraphs and Spanning Trees Given a connected, undirected graph G = (N, E), a graph G = (N, E ) is a subgraph of G if N N and E E. A subgraph T = (N, E 1 ) that is also a tree is called a spanning tree of G. Any subset of edges of an undirected, connected graph that does not form any cycles can be extended to form a spanning tree.

IE406 Lecture 16 9 Network Flow Problems A network is a directed graph together with the following additional information: A supply b i associated with each node i (negative supply is interpreted as demand). A nonnegative capacity u ij associated with each arc (i, j). A cost c ij for transporting a unit of the commodity from i to j. We visualize a network by envisioning the flow of some commodity through the network. A node i such that b i > 0 is called a source. A node i such that b i < 0 is called a sink. A node i such that b i = 0 is called a transshipment node. We denote the flow of the commodity from i to j by the variable f ij.

IE406 Lecture 16 10 Formulating the Network Flow Problem A feasible flow satisfies the following conditions on the flow variables: f ij f ji = b i i N j O(i) j I(i) 0 f ij u ij (i, j) A The first set of constraints are called the flow balance constraints and can be read as flow out - flow in = supply. Any setting of the variables satisfying the flow balance constraints is called a flow. The second set of constraints are called the capacity constraints. In order for a feasible flow to exist, we must have i N b i = 0.

IE406 Lecture 16 11 Types of Network Flow Problems The minimum cost network flow problem is to find a feasible flow minimizing the objective function Special cases (i,j) A c ij f ij Shortest path problem: Determine the length of a shortest path between a specified pair of nodes. Maximum flow problem: Determine the the maximum amount of flow that can be sent through the network from a given source to a given sink without exceeding arc capacities. Transportation problem: Minimize the cost of shipping a good from a specified set of suppliers to a specified set of customers. Assignment problem: A special case of the transportation problem used to model the minimum cost of assigning workers to jobs.

IE406 Lecture 16 12 Variants of the Network Flow Problem Every network flow problem can be reduced to one with exactly one source and one sink. Every network flow problem can be reduced to one without any sources or sinks. This is called a circulation. A simple circulation is one in which the only nonzero flows are on the arcs of a cycle. We can also easily model problems in which the nodes have capacities (how?). We may also want to have lower bounds on the arcs.

IE406 Lecture 16 13 The Node-arc Incidence Matrix The node-arc incidence matrix A is defined as follows: 1, if i is the tail of the of the kth arc, a ik = 1, if i is the head of the kth arc, and 0, otherwise With this matrix, we can now rewrite the flow balance constraints more compactly as Af = b. Note that the rows of A sum to zero and are hence linearly dependent. Under the assumption that i N b i = 0, and G is connected, if we delete the last row to obtain Ã, then à has full rank.