Operations Research: Network Problems 2
November 15, 2006
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 1 / 10
Main concepts for network problems
Identify real-world problems that can be modeled as network problems
Formulate network problems as LPs or IPs
Understand the hierarchy of problems—which are special cases of
Understand that faster specialized algorithms are available for each
type of problem; explain the tradeoﬀ between using a specialized
algorithm versus a more general one
Know the basic ideas of greedy algorithms for min spanning tree and
Dijkstra’s algorithm for shortest path
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 2 / 10
Min cost network ﬂows
Each node has a supply or demand or neither
Each arc has a unit cost
Each arc may have an upper bound (optional)
Determine the ﬂow along each arc to meet supply/demand at
Can be formulated as an LP:
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 3 / 10
Specialized algorithms exist for network problems
For min cost network ﬂows, sets of basic arcs have a special structure:
they are always spanning trees
This structure makes simplex pivots easier
A special version of the simplex algorithm, often called the network
simplex algorithm, takes advantage of this structure and runs about
10 times faster than the general simplex algorithm
Why might we prefer to use a more general algorithm (like a simplex
algorithm) instead of a network simplex algorithm?
The network simplex algorithm uses only additions and subtractions
(no divisions), which leads to an important result: if the supplies,
demands, and upper bounds are all integers, then the network simplex
algorithm will ﬁnd an optimal ﬂow for which all ﬂow values are
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 4 / 10
Given in Section 8.2
Want the shortest length path from origin node to destination node
The shortest path problem can also be modeled as a network ﬂow
(and therefore as an LP). This is only true because of the integrality
property of network ﬂows.
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 7 / 10
Shortest path: Dijkstra’s algorithm
Dijkstra’s algorithm is much more eﬃcient than even the network
simplex algorithm for large instances.
At the ith iteration, ﬁnd and “label” the ith closest node to the origin
with the distance from the origin (and the path to it)
This is done by considering all nodes that are one arc away from one
of the i − 1 nodes we have already labeled
Which of them is the next closest? Label it and repeat.
This algorithm assumes there are no negative length arcs. With that
assumption, we can prove that it will give the correct answer quickly
(though we won’t prove it for this class).
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 8 / 10
Usually a directed graph
One source node, one sink node
Each arc has an upper bound on ﬂow
Find the ﬂows through each arc to maximize the amount of ﬂow from
source to sink
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 9 / 10
Max ﬂow, Min Cut
There are special algorithms for the max ﬂow problem, which are
faster than the simplex algorithm.
The text describes the Ford-Fulkerson Method, which is based on the
idea of augmenting ﬂows.
We may also consider the dual LP, which may be interpreted as a
minimum cost cut of the network.
Strong duality tells us that the maximum ﬂow value will be equal to
the minimum cut value.
Brady Hunsaker () Operations Research: Network Problems 2 November 15, 2006 10 / 10