Network Optimization. Network optimization models:. Special cases of linear programming models. Important to identify problems that can be modeled as networks because:. (1). network representations make optimization. models easier to visualize and explain. (2).
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
Network Optimization
Network optimization models:
Special cases of linear programming models
Important to identify problems that can be modeled
as networks because:
(1)
network representations make optimization
models easier to visualize and explain
(2)
very efficient algorithms are available
Transportation Problem
We wish to ship goods (a single commodity) from
m sources to n destinations at minimum cost.
Warehouse i has si units available i = 1, . . . ,m and destination
j has a demand of dj, j = 1, . . . ,n.
Goal  Ship the goods from sources to destinations
at minimum cost.
Plants
Supply
Markets
Demand
Example
San Francisco
New York
350
325
Los Angeles
Chicago
600
300
Austin
275
From/To
NY
Chi
Aus
Unit Shipping Costs
SF
2.5
1.7
1.8
LA

1.8
1.4
Total supply = 950, total demand = 900
Transportation problem is defined on a bipartite network
Arcs only go from supply nodes to destination nodes
To handle excess supply
create a dummy destination with a demand of 50.
The mincost flow network for this transportation problem is
given by:
NY
[325]
(2.5)
(1.7)
SF
[350]
(1.8)
CHI
[300]
(0)
(M)
(1.8)
AUS
[275]
(1.4)
[600]
LA
(0)
DUM
[50]
·
Costs on arcs to dummydestination = 0
(In some settings it would be necessary
to include a nonzero warehousing cost.)
®
·
The objective coefficient on the LA
NY arc is M.
This denotes a large value and effectively prohibits
use of this arc (could eliminate arc).
·
We are assured of integer solutions because
technological matrix A is totally unimodular.
(important in some applications)
The LP formulation of the transportation problem with m
sources and n destinations is given by:
m
n
å
å
Min
c
x
ij
ij
j=1
i=1
n
å
s.t.
x
= s
i = 1,…,m
ij
i
j=1
m
å
x
= d
j = 1,…,n
ij
j
i=1
x
³
0
i = 1,…,m; j = 1,…,n
ij
Shortest Path Problem
Example
(cij)
cost or length
(2)
2
4
(3)
(4)
(1)
(1)
(2)
[1]
6
[1]
1
(6)
(7)
(2)
3
5
A = set of Arcs, N = set of nodes
Forward Star for node i: FS(i) = { (i,j) : (i,j) Î A }
Reverse Star for node i: RS(i) = { (j,i) : (j,i) Î A }
RS(i)
FS(i)
i
i
In general, if node s is the source node and node t is the termination node then the shortest path problem may be written as follows.
å
x
c
Min
ij
ij
(i,j)ÎA
{
1, i = s
–1, i = t
0, i Î N \ {s,t}
å
å
x
x
s
.t.
=

ij
ji
(i,j)ÎFS(i)
(j,i)ÎRS(i)
xij³ 0, " (i,j)ÎA
Maximum Flow Problem
Example
(2)
2
4
(3)
(4)
(uij)
arc capacities
(1)
(1)
6
(2)
1
(7)
(6)
(2)
3
5
1
6
Goal for Max Flow Problem
Send as much flow as possible from node 1 to node 6
Solution
[2](2)
[2](3)
[3](4)
2
4
[xij] (uij)
flow capacities
[1](1)
1
[3](7)
[2](6)
3
5
[2](2)
Maximum flow = 5
Cut: A partition of the nodes into two sets S and T. The origin node must be in S and the destination node must be in T.
Examples of cuts in the network above are:
{2,3,4,5,6}
S1
= {1}
T1
=
{4,5,6}
S2
T2
= {1,2,3}
=
S3
{2,4,6}
T3
= {1,3,5}
=
The value of a cut V(S,T) is the sum of all the arc capacities that have their tails in S and their heads in T.
V(S2,T2) = 5
V(S3,T3) = 12
V(S1,T1) = 10
MaxFlow MinCut Theorem
The value of the maximum flow is equal to the value of the minimum cut.
Max Flow Problem Formulation
s
t
Maximum Flow Model
Max xts
å
xij
å
xji = 0, "iÎN
s.t.

(i,j)ÎFS(i)
(j,i)ÎRS(i)
"(i,j)ÎA
0 £xij£ uij
Identify minimum cut from sensitivity report:
Note that the sum of the arc capacities with reduced costs of 1 equals the max flow value.
Sensitivity Report for Max Flow Problem
Adjustable Cells
Final
Reduced
Objective
Allowable
Allowable
Cell
Name
Value
Cost
Coefficient
Increase
Decrease
$E$9
Arc1 Flow
3
0
0
1E+30
0
$E$10
Arc2 Flow
2
0
0
0
1
$E$11
Arc3 Flow
0
0
0
0
1E+30
$E$12
Arc4 Flow
2
1
0
1E+30
1
$E$13
Arc5 Flow
1
1
0
1E+30
1
$E$14
Arc6 Flow
2
1
0
1E+30
1
$E$15
Arc7 Flow
0
0
0
0
1E+30
$E$16
Arc8 Flow
2
0
0
0
1
$E$17
Arc9 Flow
3
0
0
1E+30
0
$E$18
Arc10 Flow
5
0
1
1E+30
1
Constraints
Final
Shadow
Constraint
Allowable
Allowable
Cell
Name
Value
Price
R.H. Side
Increase
Decrease
$N$9
Node1 Balance
0
0
0
0
3
$N$10
Node2 Balance
0
0
0
1E+30
0
$N$11
Node3 Balance
0
0
0
0
3
$N$12
Node4 Balance
0
1
0
0
2
$N$13
Node5 Balance
0
1
0
0
3
$N$14
Node6 Balance
0
1
0
0
3
Minimum Cost Flow Problem
Example: Distribution problem
Supply [ si ] at each warehouse i
Demand [ dj] of each customer j
flow on each arc is limited to 200 units.
that minimizes transportation costs
Distribution Problem
[supply / demand]
arc lower bounds = 0
arc upper bounds = 200
(shipping cost)
[–200]
[700]
(6)
NY
6
CHIC
2
[–250]
PHOE
1
(4)
(6)
(7)
(4)
(3)
(3)
(5)
(2)
(5)
LA
3
DAL
4
[–150]
ATL
5
[–200]
(7)
(2)
[–300]
(4)
(2)
(7)
(6)
(5)
GAINS
8
[200]
AUS
7
[200]
Solution to Distribution Problem
[supply / demand]
(flow)
[200]
[250]
(200)
NY
CHIC
[700]
(50)
PHOE
(100)
(200)
(200)
[150]
(200)
LA
ATL
DAL
[300]
(50)
[200]
(200)
[200]
GAINS
AUS
[200]
This network flow problem is based on:
·
Conservation of flow at nodes. At each node
flow in = flow out.
At supply nodes there is an external inflow
(positive)
At demand nodes there is an external outflow
(negative).
·
Flows on arcs must obey the arc’s bounds.
lower bound & upper bound (capacity)
·
Each arc has a per unit cost &
the goal is to minimize total cost.
[external flow]
(cost)
lower = 0, upper = 200
[200]
[250]
(6)
2
6
[700]
1
(4)
(6)
(7)
(4)
(5)
(3)
(3)
(7)
(2)
(5)
[150]
[200]
4
3
5
(2)
[300]
(4)
(6)
(2)
(5)
(7)
[200]
8
7
[200]
Linear Program Model for Distribution Problem
Minimize z = 6x12 + 3x13 + 3x14 + 7x15 + … + 7x86
Subject to conservation of flow constraints at each node:
Node 1: x12 + x13 + x14 + x15 = 700
Node 2: –x12 – x62 – x52 = –200
Node 3: –x13 – x43 – x73 = –200
Node 4: x42 + x43 + x45 + x46 – x14 – x54 – x74 = –300
..
..
..
Node 8: x84 + x85 + x86 = 200
Bounds: 0 ≤ xij ≤ 200 for all (i,j)A