Flow models, optimal routing, and topological network design - PowerPoint PPT Presentation

1 / 25
About This Presentation
Title:

Flow models, optimal routing, and topological network design

Description:

... arc (link), over this arc some quantity f(i,j) (link flow) in data units/sec can ... over all nodes i and j for which the previous two conditions are ... – PowerPoint PPT presentation

Number of Views:196
Avg rating:3.0/5.0
Slides: 26
Provided by: ACE560
Category:

less

Transcript and Presenter's Notes

Title: Flow models, optimal routing, and topological network design


1
Flow models, optimal routing, and topological
network design
  • Single commodity network flows
  • Max-flow/min cut
  • The Ford-Fulkerson algorithm
  • Minimum cost flows
  • Constrained MST algorithms
  • The Essau-William algorithm
  • (Sharma algorithm)

2
Flows in a network
  • In a directed graph, if node i and node j are
    joined by an arc (link), over this arc some
    quantity f(i,j) (link flow) in data units/sec can
    flow.
  • Associated with the arc connecting node i and
    node j is a capacity c(i,j), so that f(i,j)
    cannot exceed c(i,j).
  • There is a source node S, which has an external
    supply of flow v. There is a sink node T, which
    has a demand of flow v.

3
Flows in a network example
  • A network with the arc capacities as indicated
  • conservation of flow (flow_out-flow_in0)
  • node s f(S,1) f(S,2) v 0
  • node 1 f(1,3) f(1,2) f(S,1) 0
  • node 2 f(2,3) f(2,4)- f(S,2) f(1,2) 0
  • node 3 f(3,T) f(3,4) f(2,3) f(1,3) 0
  • node 4 f(4,T) - f(3,4) - f(2,4) 0
  • v f(3,T) f(4,T) 0

4
Flows in a network example (cont.)
  • Arc capacity constraints f(S,1) ? 6, f(S,2) ?
    8, f(1,2) ? 3, f(1,3) ? 3, f(2,3) ? 4, f(2,4) ?
    2, f(3,4) ? 2, f(3,T) ? 8, f(4,T) ? 6
  • A (path) flow is a collection of the link flows
    f(i,j) . A feasible flow is a flow that
    satisfies the flow conservation and arc
    capacities constraints.
  • The objective is to maximize the total flow v
    under the flow conservation and capacity
    constraints.

3
1
3
6
8
4
3
S
T
2
v
v
8
6
2
4
2
5
Flow-augmenting paths
  • Consider the following feasible flow example
  • The arcs in a flow network can be put into two
    categories
  • I, the set of arcs whose flow can be increased,
    these are those arcs whose flow is smaller than
    its capacity, e.g. arcs S-1, 1-2, 2-6, 3-S, 4-2,
    4-3
  • R, the set of arcs whose flow can be reduced,
    these are those arcs whose flow is non-zero, e.g.
    all arcs in I and 3-2, T-4

capacity
Link flow
6
Flow-augmenting paths (cont.)
  • To increase the net flow from S to T, we can
  • find a directed path from S to T which only
    consists of arcs belonging to I then determine
    the maximum increase in flow for these arcs, e.g.
    the path S-1-2-T is such a path and the maximum
    increase in flow without exceeding the arc
    capacities is 1. This path may be called a flow
    augmenting path.
  • find a directed path from T to S which only
    consists of arcs belonging to R then determine
    the maximum decrease in flow for these edges,
    e.g. the path T-4-3-S is such a path and the
    maximum decrease in flow is 1. This is also a
    flow augmenting path.
  • combine the two approaches above i.e., find a
    path P from S to T with the following properties
  • if arc(x,y) is on P and is directed from S to T
    (a forward arc), then (x,y) is a member of I.
  • if arc(x,y) is on P and is directed from T to S
    (a backward arc), then (x,y) is a member of R.

7
Flow-augmenting paths (cont.)
  • For the combined approach, the maximum increase
    in flow is the minimum of the possible increase
    in flow for those forward arcs, or the minimum
    decrease in flow for those backward arcs,
    whichever smaller.
  • e.g., in the previous example S-1-3-4-T is such a
    path. The maximum increase in flow is 2 units.

Illustrating flow augmentation on S-1-3-4-T
8
Residual network
  • The residual network for any feasible flow is
    constructed as follows.
  • If arc(x,y) is a member of I, then construct an
    arc in the residual network from x to y and label
    it with a residual capacity r(x,y) c(x,y)
    f(x,y).
  • If arc(x,y) is a member of R, then construct an
    arc in the residual network from y to x and label
    it with a residual capacity r(y,x) f(x,y).

9
Residual network example
3
10
Flow-augmenting algorithm
  • Every flow augmenting path from S to T in the
    original network is a directed path from S to T
    in the residual network.
  • A flow augmenting algorithm can be designed as
    follows.
  • Step 1 Construct the residual network
    corresponding to the current feasible flow. label
    node S with e(s) ? and p(S) 0. All other
    nodes are initially unlabeled. All arcs are
    unmarked.
  • Step 2 Select a labeled node x which has not yet
    been considered. If none exits, then stop no
    flow-augmenting path from S to T exits. Otherwise
    go to step 3.
  • Step 3 If y is currently unlabeled and if (x,y)
    is a member of the forward star (outgoing arc) of
    x, then label node y with e(y) min e(x),
    r(x,y) and p(y) x. Mark arc(x,y). If T is
    labeled, then stop since a flow-augmenting path
    from S to T has been found Otherwise return to
    step 2.

11
Flow-augmenting algorithm example
e extra flow that can be sent down the
pathp predecessor
3
12
Cut
  • If a set of arcs are removed from a connected
    graph, the number of components is increased.
    This set of arcs is called a disconnecting set.
  • A cut is a set of arcs in a directed graph such
    that each path from S to T includes an arc in
    this set. Thus a cut in a network is an S-T
    disconnecting set (one component containing S,
    the other T) in the corresponding directed graph.

a disconnecting set
1
2
3
4
6
5
13
Cut (cont.)
  • The capacity of a cut is the sum of the
    capacities of the forward arcs in the cut.
  • When the cut capacity is the smallest, the cut is
    called a minimum cut.
  • Note that there may be more than one minimum cut
    in a network.

14
Cut examples
cut 2
cut 1
Cut3
1
a
c
1
1
T
S
1
1
1
1
1
b
d
1
Cap.2
Cap.2
Cap.3
  • The minimum cut is (S,a), (b,T) and the
    capacity is equal to 2

15
Ford and Fulkerson algorithm (Maximum-flow
algorithm)
  • Max-Flow/Min-Cut theorem The value of the
    maximum feasible flow from S to T is equal to the
    capacity of the minimum S-T cut.
  • This algorithm makes use of the concepts of
    residual network and flow-augmenting path
    discussed previously.

16
Ford and Fulkerson algorithm (cont.)
  • Step 1 Let S denote the source node, and let T
    denote the sink node.Select any initial flow
    from S to T, i.e., any set of values for f(x,y)
    that satisfies conservation of flow and capacity
    constraints. If no such initial flow is known,
    use as the initial flow f(x,y)0 for all (x,y).
  • Step 2 Construct the residual network relative
    to the current flow.
  • Step 3 Perform the flow-augmenting algorithm to
    determine a flow-augmenting path if no path is
    found, stop the current flow is maximum
    otherwise make the maximum possible flow
    augmentation along the flow-augmenting path
    discovered by the flow-augmenting algorithm.
    Return to Step 2.

An example in flash movie
17
Minimum cost flow
  • A given cost per unit C(i,j) is associated with
    the arc (i,j).
  • Given s-t flow, find the minimum cost of the s-t
    flow, where the cost of a flow is defined as the
    sum of the flow over all arcs times the cost per
    unit for that arc.
  • Find the maximum flow with a minimum cost.

18
Optimal routing
  • In a network, there is a set of
    origin-destination (O-D) pairs. The traffic for
    each pair w(i,j) is denoted rw.
  • The transmission capacity of link (i,j) is
    denoted c(i,j) in data units/sec. The link flow
    for link (i,j) is f(i,j).
  • Optimal routing given traffic and link
    capacities, find path flows to minimize
    subject to flow conservation, where Dij
    is a cost function.
  • Example use the average number of waiting data
    units in the network as cost function. On link
    (i,j), are waiting. Optimal
    routing finding path flows to minimize
    subject to flow
    conservation.

19
Subnet design and capacity assignment
  • Subnet design problem given the location of
    network nodes and traffic flow for each pair of
    nodes, select capacity and flow of each link to
    meet some delay and/or reliability constraints
    while minimizing costs.
  • Capacity assignment problem choose the capacity
    c(i,j) of each link (i,j) so as to minimize the
    linear cost where p(i,j)
    is a known positive price per unit capacity,
    subject to average delay constraint.

20
Iterative heuristic method for capacity
assignment problem
  • At the start of each iteration, there is
    available a current best topology and a trial
    topology.
  • Current bets topology a topology found so far
    that satisfies the constraints.
  • Trial topology the topology that will be
    evaluated in the current iteration.
  • If the cost of the trial topology is less than
    that of the current best topology, replace the
    current best topology with the trial topology.
  • Heuristic rules for generating trial topologies
  • Lower the capacity of a link with low
    f(i,j)/c(i,j)
  • Increase the capacity of links with high
    f(i,j)/c(i,j) when the delay constraint is not
    met.
  • Branch exchange heuristic one link is deleted
    and another link is added.

21
Centralized network topology
  • Multipoint line topology Selection of the links
    connecting terminals to the center.
  • Terminal assignment The association of terminals
    with specific concentrators.
  • Concentrator location Deciding where to place
    concentrators, and whether or not to use them at
    all.

22
Multipoint line layout formalated
  • Given N sites, site 1 to site N, and a center
    site denoted by site 0.
  • The traffic from site i (i1..N) to the center is
    denoted ti0 and t0i denotes the traffic from the
    center to site i.
  • The cost of connecting site i and and site j is
    denoted cij.
  • Let xij 1 if (i,j) is included in the topology
    xij 0 otherwise.

23
Problem statement
  • Find zmin cij xij subject
    to a b c d

24
Constrained MST algorithm
  • A matrix of input traffic tij from every node to
    every other node is given.
  • An MST is to be designed suject to the constraint
    that the flow on each arc will not exceed a given
    upper bound.
  • Kruskal or Prim algorithms can be modified for
    finding constrained MST at each iteration, a
    check is made on the flow constraint.

25
The Essau-Williams algorithm
  • Start with a spanning tree where the central node
    is directly connected with each of the N nodes.
    At each successive itearation, a link (i,0) is
    deleted from the current spanning tree and a link
    (i,j) is added. The link (i,j) is so chosen
  • No cycle is formed
  • The capacity constraints of all links of the new
    spanning tree are satisfied.
  • The saving wi0 - wij in link weight obtained by
    exchanging (i,0) with (i,j) is positive and is
    maximized over all nodes i and j for which the
    previous two conditions are satisfied.

example
Write a Comment
User Comments (0)
About PowerShow.com