ORF 307 Network Flows: Algorithms

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

Part I: Graph Coloring

Route optimization using Hungarian method combined with Dijkstra's in home health care services

Algorithms, Lecture 3 on NP : Nondeterministic Polynomial Time

An Experimental Comparison of Fast Algorithms for Drawing General Large Graphs

Iterative Deletion Routing Algorithm

Post-Routing Layer Assignment for Double Patterning

Adaptive decoding of convolutional codes

Chapter 2 An Abbreviated Survey

Modbus Register Tables for SITRANS RD300 & WI100

Decision-Maker Preference Modeling in Interactive Multiobjective Optimization

Heuristic Search & Local Search

Reverb 8. English Manual Applies to System 6000 firmware version TC Icon version Last manual update:

Yale University Department of Computer Science

Chapter 12. Synchronous Circuits. Contents

Investigation on Technical Feasibility of Stronger RS FEC for 400GbE

Cedar Rapids Community School District

Brian Holden Kandou Bus, S.A. IEEE GE Study Group September 2, 2013 York, United Kingdom

Problem 1 - Protoss. bul. Alexander Malinov 33., Sofia, 1729, Bulgaria academy.telerik.com

VISSIM TUTORIALS This document includes tutorials that provide help in using VISSIM to accomplish the six tasks listed in the table below.

Section 2.1 How Do We Measure Speed?

Cost-Aware Live Migration of Services in the Cloud

Mitigation of Cascading Outages and Prevention of Blackouts:System-Wide Corrective Control

Analysis of Different Pseudo Noise Sequences

Total Minimal Dominating Signed Graph

Asynchronous IC Interconnect Network Design and Implementation Using a Standard ASIC Flow

A High- Speed LFSR Design by the Application of Sample Period Reduction Technique for BCH Encoder

ABSTRACT. Figure 1. Continuous, 3-note, OP-Space (Mod-12) (Tymoczko 2011, fig )

Optimization of Multi-Channel BCH Error Decoding for Common Cases. Russell Dill Master's Thesis Defense April 20, 2015

If you have questions or problems in providing anything described as Customer

Ultra-lightweight 8-bit Multiplicative Inverse Based S-box Using LFSR

OPERATIONS SEQUENCING IN A CABLE ASSEMBLY SHOP

Exploring Persian Rug Design Using a Computational Evolutionary Approach

Logic Design II (17.342) Spring Lecture Outline

For an alphabet, we can make do with just { s, 0, 1 }, in which for typographic simplicity, s stands for the blank space.

Connection for filtered air

ARC-MFSAT INSTALLATION MANUAL

NanoGiant Oscilloscope/Function-Generator Program. Getting Started

Xpress-Tuner User guide

Figure 9.1: A clock signal.

Scanning Electron Microscopy (FEI Versa 3D Dual Beam)

Fugue generation using genetic algorithms

Series Digital Dimmer. User Manual (VER: 2.0) Net.DO LIGHTING CONTROL EQUIPMENT CO.,LTD

Week 14 Music Understanding and Classification

An optimal broadcasting protocol for mobile video-on-demand

EN2911X: Reconfigurable Computing Topic 01: Programmable Logic. Prof. Sherief Reda School of Engineering, Brown University Fall 2014

A STATISTICAL VIEW ON THE EXPRESSIVE TIMING OF PIANO ROLLED CHORDS

A QUARTERLY OF ART AND CULTURE ISSUE 57 CATASTROPHE US $12 CANADA $12 UK 7

Real-Time Systems Dr. Rajib Mall Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

1360 IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 59, NO. 3, MARCH Optimal Encoding for Discrete Degraded Broadcast Channels

On the Infinity of Primes of the Form 2x 2 1

EE 200 Problem Set 3 Cover Sheet Fall 2015

Negation Switching Equivalence in Signed Graphs

Embedded Signal Processing with the Micro Signal Architecture

1-5 Square Roots and Real Numbers. Holt Algebra 1

MOTIVE IDENTIFICATION IN 22 FOLKSONG CORPORA USING DYNAMIC TIME WARPING AND SELF ORGANIZING MAPS

Power-Driven Flip-Flop p Merging and Relocation. Shao-Huan Wang Yu-Yi Liang Tien-Yu Kuo Wai-Kei Tsing Hua University

Spare Parts, Accessories, Consumable Material for Older Design Recorders

Efficient Trace Signal Selection for Post Silicon Validation and Debug

Comment #147, #169: Problems of high DFE coefficients

FUNDAMENTAL MANUFACTURING PROCESSES Computer Numerical Control

Human Number Line. Introduction to Negative Numbers

Color Image Compression Using Colorization Based On Coding Technique

Cylindrical High-Intensity LED (5 mm)

Creative Competition 39th

Synchronization Check Relay ARGUS 7

Musical Sound: A Mathematical Approach to Timbre

Interactive Visualization for Music Rediscovery and Serendipity

2GS100/110-2HS100/110 / Dual channel 3Gb/s, HD down-converter with color corrector and optional cross input audio shuffler

AN INTRODUCTION TO MUSIC THEORY Revision A. By Tom Irvine July 4, 2002

2 nd Int. Conf. CiiT, Molika, Dec CHAITIN ARTICLES

Algorithmic Composition: The Music of Mathematics

Opti Max4100. Opti Max. 1GHz Segmentable Nodes. Features. Broadband Access. 1GHz technology. Future 85/105MHz architecture support

Overview. Teacher s Manual and reproductions of student worksheets to support the following lesson objective:

User s Guide - 64 Bit Digital Electronic Crossover

Efficient Architecture for Flexible Prescaler Using Multimodulo Prescaler

1. Introduction. Abstract. 1.1 Logic Criteria

QCN Transience and Equilibrium: Response and Stability. Abdul Kabbani, Rong Pan, Balaji Prabhakar and Mick Seaman

140 IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS, VOL. 12, NO. 2, FEBRUARY 2004

CZT vs FFT: Flexibility vs Speed. Abstract

Geometry and the quest for theoretical generality

Pitch correction on the human voice

WATERMARKING USING DECIMAL SEQUENCES. Navneet Mandhani and Subhash Kak

ORTHOGONAL frequency division multiplexing

2. ctifile,s,h, CALDB,,, ACIS CTI ARD file (NONE none CALDB <filename>)

AutoChorale An Automatic Music Generator. Jack Mi, Zhengtao Jin

Chapter 6: Modifying Sounds Using Loops

DSP First Lab 04: Synthesis of Sinusoidal Signals - Music Synthesis

12-bit Wallace Tree Multiplier CMPEN 411 Final Report Matthew Poremba 5/1/2009

Experiment: Real Forces acting on a Falling Body

TUTORIAL IGBT Loss Calculation in the Thermal Module

SIDRA INTERSECTION 8.0 UPDATE HISTORY

CALIFORNIA GERMANY TRAVEL TRADE BAROMETER

Setting Up the Warp System File: Warp Theater Set-up.doc 25 MAY 04

1608 IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, VOL. 18, NO. 11, NOVEMBER 1999

Cascading Citation Indexing in Action *

CALIBRATION OF SOLUTION SECONDARY CURRENT FOR 9180 controls with SC software PAGE 1 OF 5

Chapter 18: Supplementary Formal Material

MindMouse. This project is written in C++ and uses the following Libraries: LibSvm, kissfft, BOOST File System, and Emotiv Research Edition SDK.

Switching Circuits & Logic Design, Fall Final Examination (1/13/2012, 3:30pm~5:20pm)

Transcription:

ORF 307 Network Flows: Algorithms Robert J. Vanderbei April 5, 2009 Operations Research and Financial Engineering, Princeton University http://www.princeton.edu/ rvdb

Agenda Primal Network Simplex Method Dual Network Simplex Method Two-Phase Network Simplex Method One-Phase Primal-Dual Network Simplex Method Planar Graphs Integrality Theorem

Primal Network Simplex Method Used when all primal flows are nonnegative (i.e., primal feasible). Pivot Rules: Entering arc: Pick a nontree arc having a negative (i.e. infeasible) dual slack. Entering arc: (g,e) Leaving arc: (g,d) Leaving arc: Add entering arc to make a cycle. Leaving arc is an arc on the cycle, pointing in the opposite direction to the entering arc, and of all such arcs, it is the one with the smallest primal flow.

Primal Method Second Pivot Entering arc: (d,e) Leaving arc: (d,a) Explanation of leaving arc rule: Increase flow on (d,e). Each unit increase produces a unit increase on arcs pointing in the same direction. Each unit increase produces a unit decrease on arcs pointing in the opposite direction. The first to reach zero will be the one pointing in the opposite direction and having the smallest flow among all such arcs.

Primal Method Third Pivot Entering arc: (c,g) Leaving arc: (c,e) Optimal!

Dual Network Simplex Method Used when all dual slacks are nonnegative (i.e., dual feasible). Pivot Rules: Leaving arc: Pick a tree arc having a negative (i.e. infeasible) primal flow. Leaving arc: (g,a) Entering arc: (d,e) Entering arc: Remove leaving arc to split the spanning tree into two subtrees. Entering arc is an arc reconnecting the spanning tree with an arc in the opposite direction, and, of all such arcs, is the one with the smallest dual slack.

Dual Network Simplex Method Second Pivot Leaving arc: (d,a) Entering arc: (b,c) Optimal!

Explanation of Entering Arc Rule Recall initial tree solution: Leaving arc: (g,a) Entering arc: (d,e) Remove leaving arc. Need to find a reconnecting arc. Consider some reconnecting arc. Add flow to it. If it reconnects in the same direction as leaving arc, such as (f,d), then flow on leaving arc decreases. Therefore, leaving arc s flow can t be raised to zero. Therefore, leaving arc can t leave. No good. Consider a potential arc reconnecting in the opposite direction, say (b,c). Its dual slack will drop to zero. All other reconnecting arcs pointing in the same direction will drop by the same amount. To maintain nonnegativity of all the others, must pick the one that drops the least.

Two-Phase Network Simplex Method Example. Turn off display of dual slacks. Turn on display of artificial dual slacks.

Two-Phase Method First Pivot Use dual network simplex method. Leaving arc: (d,e) Entering arc: (e,f) Dual Feasible!

Two-Phase Method Phase II Turn off display of artificial dual slacks. Turn on display of dual slacks.

Two-Phase Method Second Pivot Entering arc: (g,b) Leaving arc: (g,f)

Two-Phase Method Third Pivot Entering arc: (f,c) Leaving arc: (a,f) Optimal!

Online Network Simplex Pivot Tool Click here (or on any displayed network) to try out the online network simplex pivot tool.

One-Phase Primal-Dual Method Artificial flows and slacks are multiplied by a parameter µ. In the Figure, 6, 1 represents 6 + 1µ. Question: For which µ values is dictionary optimal? Answer: 1 + µ 0 (a, b) µ 0 (f, b) 2 + µ 0 (a, c) 20 + µ 0 (c, e) µ 0 (a, d) 1 + µ 0 (f, c) µ 0 (e, a) 9 + µ 0 (g, d) 3 + µ 0 (a, g) 12 + µ 0 (f, e) µ 0 (b, c) 6 + µ 0 (g, e) 3 + µ 0 (b, d) That is, 9 µ <. Lower bound on µ is generated by arc (g,d). Therefore, (g,d) enters. Arc (a,d) leaves.

Second Iteration Range of µ values: 2 µ 9. Entering arc: (a,c) Leaving arc: (b,c) New tree:

Third Iteration Range of µ values: 1.5 µ 2. Leaving arc: (a,g) Entering arc: (g,e) New tree:

Fourth Iteration Range of µ values: 1 µ 1.5. A tie: Arc (f,b) enters, or Arc (f,c) leaves. Decide arbitrarily: Leaving arc: (f,c) Entering arc: (f,b)

Fifth Iteration Range of µ values: 1 µ 1. Leaving arc: (f,b) Nothing to Enter. Primal Infeasible!

Online Network Simplex Pivot Tool Click here (or on any displayed network) to try out the online network simplex pivot tool.

Planar Networks A Definition. Network is called planar if can be drawn on a plane without intersecting arcs. a B b D c Theorem. Every planar network has a dual dual nodes are faces of primal network. f C e d Notes: Dual node A is node at infinity. Primal spanning tree shown in red. Dual spanning tree shown in blue (don t forget node A). Theorem. A dual pivot on the primal network is exactly a primal pivot on the dual network.

Integrality Theorem Theorem. Assuming integer data, every basic feasible solution assigns integer flow to every arc. Corollary. Assuming integer data, every basic optimal solution assigns integer flow to every arc.