Potential-driven flows in capacitated networks

advertisement
Potential-driven flows in capacitated networks
by
Aurelie Thiele
B.S., Ecole des Mines de Paris, France (1999)
Submitted to the Department of Electrical Engineering and Computer
Science
in partial fulfillment of the requirements for the degree of
Master of Science
at the
MASSACHUSETTS INSTITUTE OF TECHNOLOGY
September 2000
© Massachusetts Institute of Technology 2000. All rights reserved.
A uthor .....................................
Department of Electrical Engineering and Computer Science
August 17, 2000
Certified by.....................
George Verghese
Professor
Thesis Supervisor
/
Accepted by ...
Accepte
.. ...
..
AAArthrt
C.urCit
Chairman, Department Committee on Graduate Students
MASSACHUSETTS INSTITUTE
OF TECHNOLOGY
OCT 2 3 2000
LIBRARIES
2
Potential-driven flows in capacitated networks
by
Aurelie Thiele
Submitted to the Department of Electrical Engineering and Computer Science
on August 17, 2000, in partial fulfillment of the
requirements for the degree of
Master of Science
Abstract
We expose here properties of capacitated networks with potential-driven flows, usually
called "resistive networks" because of their analogy with elementary electric circuits.
The flows are injected at certain nodes, extracted at others, and conserved in between. A new algorithm based on geometrical considerations is proposed for the
design of optimal networks with a small number of nodes, and original heuristics are
suggested and implemented when the number of nodes becomes too large to solve the
optimization problem exactly.
In particular, we establish here some characteristics of the flow distribution and
identify edges that play an important role in the network (the importance being
measured in terms of influence on the fulfilment of the requirements, as well as the
new strain on the network and the change in the maximum flow obtained at a given
node when one of these edges is removed). We also highlight some counterintuitive
behaviors of resistive networks, such as the increase of the maximum flow at the target
node when a well-chosen edge is removed, and the fact that in some configurations the
flow injection and extraction requirements are not feasible any more when one edge
is removed but become feasible again when a further edge is removed. These results
enable us to formulate efficient procedures to design resistive networks under some
optimization criteria such as the minimization of the total cost. As with the design
problem of a capacitated general flow network (which is known to be NP-hard), the
design problem of a capacitated resistive network grows very rapidly in complexity
as the number of nodes in the network increases. As a result, we focus on heuristic
procedures and assess their relevance.
This research sheds new light on a little known area of network design through an
approach building upon the characteristics of resistive systems, and opens up several
directions for further research.
Thesis Supervisor: George Verghese
Title: Professor
3
4
Acknowledgements
I am grateful to Professor George Verghese for the role he played in my admission
to MIT, his support and advice throughout this research and his insistence in having
me continue for a PhD, which finally convinced me.
I also want to thank Sandip Roy for reading the first draft of this thesis and
giving me very useful comments.
Special thanks to my parents Janine and Christian and my brother Olivier who
are all wonderful, and hello to my dog Karlos although he will never read these lines
(but he will probably love to sleep on this thesis while I will desperately try to move
him).
This thesis was written in memory of Charlotte (Lollo) and Jean-Paul Antiq.
Without you all I would not be where I am now. Thank you.
The work on this thesis was supported in part by the Electric Power Research Institute (EPRI) and the Department of Defense, under their joint Complex Interactive
Networks/Systems Initiative.
5
6
Contents
1
Maximum flows in resistive networks: a comparison with the general
17
Ford-Fulkerson theorem and other results
1.1
G eneralities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
17
1.2
The Ford-Fulkerson theorem . . . . . . . . . . . . . . . . . . . . . . .
18
1.2.1
Assumptions and definitions . . . . . . . . . . . . . . . . . . .
18
1.2.2
The max-flow min-cut theorem
. . . . . . . . . . . . . . . . .
19
1.2.3
Modifications of the assumptions
. . . . . . . . . . . . . . . .
22
. . . . . . . . . . . . . .
23
1.3.1
G eneralities . . . . . . . . . . . . . . . . . . . . . . . . . . . .
23
1.3.2
Mathematical formulation
. . . . . . . . . . . . . . . . . . . .
24
1.3.3
Exam ple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
1.3.4
Extension to several variable sources
. . . . . . . . . . . . . .
30
Properties of the maximum flow in a resistive network . . . . . . . . .
32
1.3
1.4
The max-flow theorem in resistive networks
1.4.1
The saturated edges of the maximum flow in a resistive network
are not necessarily saturated edges of the maximum flow in the
Ford-Fulkerson sense . . . . . . . . . . . . . . . . . . . . . . .
1.4.2
The saturated edges are often on a Minimum Spanning Tree of
the netw ork . . . . . . . . . . . . . . . . . . . . . . . . . . . .
35
1.4.3
The maximum flow can be increased when we take one line out
39
1.4.4
Some configurations are not feasible when we take one line out
. .
54
E xam ple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
60
and become feasible again when we take a second line out
1.5
32
7
2 Optimal design and growth of small resistive networks under the
constraint of minimal cost
65
2.1
G eneralities
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
65
2.2
Design of a network with 1 source node and 2 sink nodes . . . . . . .
67
2.2.1
Design of the optimal network . . . . . . . . . . . . . . . . . .
67
2.2.2
Limiting variations of the demand at the sink nodes . . . . . .
75
2.3
2.4
2.5
3
Adding nodes to an already designed network
. . . . . . . . . . . . .
81
2.3.1
Adding a source node to our basic network . . . . . . . . . . .
81
2.3.2
Adding a sink node to our basic network . . . . . . . . . . . .
82
2.3.3
Adding a node to any already designed network . . . . . . . .
84
Comparison with a network designed in an single step . . . . . . . . .
86
2.4.1
Primary design of a 2 inputs, 2 outputs network
. . . . . .
86
2.4.2
Primary design of a 1 input, 3 outputs network
. . . . . .
88
2.4.3
Primary design of a m inputs, n-m outputs network . . . . . .
89
C om m ents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
Heuristic design of resistive networks under the constraint of minimum cost
93
3.1
G eneralities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
93
3.2
Mathematical formulation . . . . . . . . . . . . . . . . . . . . . . . .
94
3.3
Several possible heuristics
. . . . . . . . . . . . . . . . . . . . . . . .
96
3.3.1
Using a Lagrangean relaxation . . . . . . . . . . . . . . . . . .
96
3.3.2
Using Minimum Spanning Trees . . . . . . . . . . . . . . . . .
97
3.4
First exam ple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
3.5
Second example . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106
3.6
Comments on the design of a resistive survivable network . . . . . . . 112
8
List of Figures
1-1
A sim ple exam ple . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
1-2
Optimum flow by Ford-Fulkerson
. . . . . . . . . . . . . . . . . . . .
28
1-3
Optimum resistive flow . . . . . . . . . . . . . . . . . . . . . . . . . .
28
1-4
Network where the saturated edges for the optimum resistive flow are
not saturated in a Ford-Fulkerson optimum flow
32
. . . . . . . . . . . . . . . . . . . . . . . . . . .
1-5
Geometric argument
1-6
The saturated edge is no t on a MST
1-7
General case ..
1-8
Other case ... .....
1-9
The saturated edge is or a MST . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. .. . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
. ...
.. . . . . . . . . . . . . . . . . .
1-10 An example of optimum flow increased with 1 line out
34
36
36
37
38
. . . . . . . .
40
1-11 The modified example
. . . . . . . . . . . . . . . . . . . . . . . . . .
41
1-12 Small square, expl 1
. . . . . . . . . . . . . . . . . . . . . . . . . .
46
1-13 Small square, expl 2
. . . . . . . . . . . . . . . . . . . . . . . . . .
46
1-14 Small square, expl 3
. ..... ... .. . .. .. .. ... ... ..
47
1-15 Small square, expl 4
. ..... ... .. . .. .. .. ... ... ..
47
1-16 Small square, expl 5
.. .... ... .. . .. .. .. ... ... ..
48
1-17 Big rectangle, expl.
. ..... ... .. . .. .. .. ... ... ..
48
1-18 Big rectangle, expl2
. ..... ... .. . .. .. .. ... ... ..
49
1-19 Big rectangle, expl3
. ..... ... .. . .. .. .. ... .. ...
49
1-20 Big rectangle, expl4
. . . . . . . . . . . . . . . . . . . . . . . . . .
50
1-21 Big rectangle, expl5
. . . . . . . . . . . . . . . . . . . . . . . . . .
50
1-22 Big rectangle, expl6
.. .... ... .. . .. .. .. ... .. .. .
51
9
1-23 Big rectangle, expl7 . . . . . . . . . . . . . . . . . . . . . . . . . . . .
51
. . . . . . . . . . . . . . . . . . . . . .
52
1-25 Transportation network, expl2 . . . . . . . . . . . . . . . . . . . . . .
52
1-26 Transportation network, expl3 . . . . . . . . . . . . . . . . . . . . . .
53
1-27 An example of requirements admissible again with 2 lines out
. . . .
55
1-28 Optimal flow for the initial network . . . . . . . . . . . . . . . . . . .
55
1-29 New topology: 1 line out . . . . . . . . . . . . . . . . . . . . . . . . .
56
. . . . . . . . . . . . . . . . . . . . . . . .
56
1-31 Optimal flow with the last topology . . . . . . . . . . . . . . . . . . .
57
1-32 A more complex example . . . . . . . . . . . . . . . . . . . . . . . . .
61
1-24 Transportation network, expl
1-30 New topology: 2 lines out
2-1
N otations
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
67
2-2
No link between nodes 1 and 2 . . . . . . . . . . . . . . . . . . . . . .
68
2-3
No link between nodes 1 and 3 . . . . . . . . . . . . . . . . . . . . . .
69
2-4
No link between nodes 2 and 3 . . . . . . . . . . . . . . . . . . . . . .
69
2-5
A ll links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
70
2-6
Cost function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
70
2-7
Boundaries of the types of lines . . . . . . . . . . . . . . . . . . . . .
71
2-8
Tree-network studied . . . . . . . . . . . . . . . . . . . . . . . . . . .
75
2-9
Admissible domain . . . . . . . . . . . . . . . . . . . . . . . . . . . .
77
2-10 Fully connected network . . . . . . . . . . . . . . . . . . . . . . . . .
77
2-11 Configurations with an additional node . . . . . . . . . . . . . . . . .
83
2-12 Various possibilities for a 1-i 3-o network . . . . . . . . . . . . . . . .
84
2-13 Primary design of a 2-i 2-o network . . . . . . . . . . . . . . . . . . .
86
2-14 Comparison of the designs, example 1 . . . . . . . . . . . . . . . . . .
88
2-15 Primary design of a 1-i 3-o network . . . . . . . . . . . . . . . . . . .
88
2-16 Comparison of the designs, example 2 . . . . . . . . . . . . . . . . . .
89
2-17 Comparison of the designs, final example . . . . . . . . . . . . . . . .
90
3-1
First example . . . . . . . . . . . . . . .
101
3-2
MST, Criterion 1 . . . . . . . . . . . . .
102
10
3-3
MST, Criterion 2 . . . . . . . . . . . . .
. . . . . . . . . . . . .
102
3-4
MST, Criterion 3 . . . . . . . . . . . . .
. . . . . . . . . . . . .
104
3-5
Final solution, Criterion 1 . . . . . . . .
. . . . . . . . . . . . .
105
3-6
Final solution, Criterion 2 . . . . . . . .
. . . . . . . . . . . . . 105
3-7
Final solution, Criterion 3 . . . . . . . .
. . . . . . . . . . . . .
3-8
Second example . . . . . . . . . . . . . .
. . . . . . . . . . . . . 108
3-9
Final solution, Criterion 1 . . . . . . . .
. . . . . . . . . . . . . 109
106
3-10 Final solution, almost admissible network only, Criterion 2 . . . . . . 111
3-11 Final solution, Criterion 3 . . . . . . . .
11
. . . . . . . . . . . . . 112
12
List of Tables
1.1
Our coefficients for the utility of each edge . . . . . . . . . . . . . . .
60
1.2
Final example, case 1 . . . . . . . . . . . . . . . . . . . . . . . . . . .
63
1.3
Final example, case 2 . . . . . . . . . . . . . . . . . . . . . . . . . . .
64
2.1
Possible optimums
. . . . . . . . . . . . . . . . . . . . . . . . . . . .
75
2.2
A tree and a fully connected network as optima . . . . . . . . . . . .
75
3.1
Possible criteria to quantify the interest in building the edges . . . . .
99
3.2
Results of the initialization step . . . . . . . . . . . . . . . . . . . . . 101
3.3
Positions of the nodes
3.4
Param eters
. . . . . . . . . . . . . . . . . . . . . . . . . . 107
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
13
14
Introduction
Networks with potential-driven flows represent a class of systems that has been rarely
studied before the last few years. Interest has significantly increased mainly because
the power outages in California in the summer of 1996 and other occurrences of
cascade failures in the electricity network have drawn considerable attention to one of
the main application areas of potential-driven flows: power systems. In what follows,
we will refer to this class of networks, where the flow along an edge depends on the
difference between node variables at its extremities called "potentials", by the term
"resistive networks". This terminology is justified by a straightforward analogy with
elementary electric circuits, where the current in a resistor is a linear function of the
voltage difference between the two ends. In the case of power systems, the flow of
interest is a power flow, and the potential at a node is actually the phase angle of
the sinusoidal voltage at that node. The networks we consider have flows injected
at certain nodes, extracted at others, and conserved in between. We are particularly
interested in the case where there is an upper limit or capacity for the flow in each
edge.
Power systems are now at the centre of numerous studies, which are typically
concerned with issues such as the behavior of the network and its robustness to
link or node failures.
Well-chosen stochastic and dynamic models are then used
to describe the likelihood of a wide-spread power outage and analyze its features.
Our approach differs from this traditional perspective insofar as we aim at exposing
particular characteristics of the broader class of resistive networks that are in some
sense optimal in their design, and building upon these features to draw conclusions
concerning their main properties. By proceeding in this fashion, we also hope to gain
15
a better understanding of the flow distribution in a resistive network, about which
little is known so far. This knowledge could provide significant insight into which
areas of a power network are put under the greatest strain, and why.
These results will enable us to formulate a procedure to efficiently design capacitated networks with potential-driven flows under some optimization criteria such as
the minimization of the total cost. The basic setting for the research is the following:
prespecified (positive or negative) demands at each node must be satisfied by the
flows going through the network while respecting the capacity constraints on every
edge. Unlike the case of a general network, in a resistive system the flow going into a
node cannot be split arbitrarily among the outgoing edges, because of its dependence
on the values of the potentials. More precisely, in the context of power systems, each
node is associated with a variable called the (generator or load) angle, and the flow
along a given edge is proportional to the sine of the difference of these variables at
its extremities (the coefficient of proportionality depends on the characteristics of
the line). This defines a seldom studied class of networks to which the usual design
procedures cannot be applied. Similarly to the design problem of a capacitated general network (which is known to be NP-hard), the design problem of a capacitated
resistive network grows very rapidly in complexity as the number of nodes in the
network increases. As a result, we are led to focus on heuristic procedures to solve
our problem and have then to assess their relevance.
This research is therefore motivated by the prospect of shedding new light on
a little known area of network design through an approach building upon the characteristics of capacitated systems with potential-driven flows. Several new research
questions are posed along the way.
16
Chapter 1
Maximum flows in resistive
networks: a comparison with the
general Ford-Fulkerson theorem
and other results
In this chapter, after a brief introduction (Section 1.1), we restate the main results
known about the maximum flow in a general network as obtained via the FordFulkerson theorem (Section 1.2). This serves as a contrast to several properties of
potential-driven flows. We provide a new mathematical formulation for the problem of
the maximum flow in resistive networks (Section 1.3) and then compare the maximum
flows in the general case and in the resistive case through a characterization of the
saturated edges in the resistive-network setting (Section 1.4). We illustrate our point
by an example (Section 1.5).
1.1
Generalities
The problem of the maximum flow that can go from a source to a sink in a network
has been widely studied and as early as 1962, Ford and Fulkerson have provided a
very powerful tool, known as the max-flow min-cut theorem, to link the maximum
17
flow with the capacities of the edges of the network. Most general problems are now
solved through the use of this theorem and the resulting algorithm. However, in some
networks, this procedure cannot be implemented because the fundamental property
that at any node you can split the flows in an arbitrary way (only restrained by the
edge capacities), and therefore that you can increase the flow on a given source-sink
path without modifying the flows on the other ones, is not verified. For instance in
power systems a generator or load angle is associated with each node and the flow
going through a given edge is proportional to the difference of angles at its extremities.
This gives us a new constraint that the algorithm designed by Ford and Fulkerson
cannot take into account. Therefore, their solution provides an upper bound to the
maximum flow that can go through a power network but this bound is often not
reached.
Several questions can then be raised: is there a simple expression of the difference
between the two optimal flows? How can we characterize the saturated edges? What
specific properties does the maximum flow in power networks have? The answers will
allow us to gain significant insight into the best way to link new nodes to a power
network in order to maximize the flow reaching them or at least meet their minimal
requirements. This knowledge will be particularly useful in the following chapters.
1.2
The Ford-Fulkerson theorem
We restate here briefly the main results concerning the max-flow min-cut theorem (a
more complete version can be found in [1], from which 1.2.1. and 1.2.2. are strongly
inspired) and stress the points that will not hold in the case of resistive networks.
1.2.1
Assumptions and definitions
We consider a network G
arcs. Each arc (x, y)
CA
=
[N, A] with N the set of nodes and A the set of oriented
has a capacity c(x, y). Let s be the source node and t the
target node. We assume conservation of the flow at the intermediary nodes. For a
node x, A(x) (resp. B(x)) is the set of nodes y so that (x, y) (resp. (y, x)) is an edge.
18
Definition 1.2.1 A static flow of value v from s to t in [N, A] is a function
f
from A to non-negative reals that satisfy the linear equations and inequalities:
e
f (x,y)
f (x, y)-
yEA(x)
X,
=
(1.1)
yEB(x)
f (x,y) < c(x, y)
for all (x, y) E A
(1.2)
The first equation states that the net flow out of a node x is either v (for the source),
or 0 (for intermediary nodes), or -v (for the destination). The second equation states
that the flow going through an edge must be inferior to the capacity of this edge.
Definition 1.2.2 A cut in [N, A] separating s and t is a set of arcs (X, X) where
s C X, t E X
The capacity of a cut is given by c(X, X)
=
_(xt)E(XX) c(x, 2), i.e. it is the sum of
the capacities of the edges that have their initial extremity in X and their terminal
extremity in X.
1.2.2
The max-flow min-cut theorem
Theorem 1.2.1 For any network the value of the maximum flow from s to t is equal
to the capacity of the minimal cut of all cuts separating s and t.
Proof
The proof is in two parts: first Ford and Fulkerson show that the value of any flow
going through the network is inferior to the capacity of any cut separating s and t
(so the value of the maximum flow is inferior to the capacity of the minimum cut),
and secondly they exhibit a cut whose capacity is equal to the maximum flow.
1. Let
f
be a flow from s to t in a network [N, A] and let f have the value v. If
(X, X) is a cut separating s and t, then
v
=
f(X, X) - f (X, X) < c(X, X)
19
(1.3)
where f(X, X) =
f(x, 2)
xy(Xx)
To show it, Ford and Fulkerson use that s E X, t E X, and sum over all x C X
the equations:
f(s,N)-f(Ns)
-
v
Oforx #s,t
f(x,N)-f(Nx)
with N representing all nodes of the network.
Then they write N as X UX and use that f(X, X) < c(X, X) and f(X, X) > 0.
2. They find a flow
f
and a cut (X, X) for which equality of flow value and cut
capacity holds. For this, they consider the maximum flow f that can go through
the network (clearly such a flow exists) and define in terms of
f
a cut (X, X)
such that:
f (X, X)
c(X, X) and f (X, X) = 0
The set X is defined recursively by
(a) s c X
(b) if x E X and f(x, y) < c(x, y) then y E X
(c) if xEX and f(y,x) >0 then yE X
They assert t E X. Suppose not: then there is a path (note: a path from s to
t is obtained by considering the undirected graph, which means that we do not
care about the true orientation of the edges to determine a path) from s to t,
say s
x1 , x2 ,
...
,
n= t
having the property that for all forward arcs (xi, xi+1)
of the path, f(xi, xi+) < c(xi, x,+ 1 ), whereas for all reverse arcs (xi+1 , xi) of
the path (i.e. arcs that are not oriented in the direction we use to go from s to
t, but in the opposite direction) , f(xi+1, Xi) > 0. Then they define
e = min(
and they increase
f
min
forward arcs
(c - f),
min
reverse arcs
f)
by e on all forward arcs of the path and decrease f by
e on all reverse arcs (the path s =x 1 , x 2 , - - -, Xn = t is then said to be flow20
augmenting). The value of the new flow is f + c with r > 0. But
f was
maximal:
there is a contradiction. So t E X. From the definition of X, it follows that
f (X, I)
=
c(x, 2t)
f or (x, -t) E (X, X)
f (t,X)
=
0
f or (2,)E(X, X)
We have then:
f (X, X) = c(X, X), f (X, X) = 0
so
v = f(X, X) = c(X, X)
We see that the crucial point in the proof is that the flow on a path from s to t can
be increased without inducing any modification in the flows going through the edges
that are not on this path.
It follows immediately from the proof of the theorem that:
Corollary 1.2.2 A flow f is maximal if and only if there is no flow augmenting path
with respect to f
Algorithm to solve the maximum flow problem
The algorithm used to solve the practical cases of maximum flow problems is obtained
from the recursive procedure we mentioned in the proof.
We take any admissible flow f from s to t and label the nodes of the network as
follows:
(a) s E X and s is labeled "+"
(b) if x E X and f(x, y) < c(x, y) then y E X and y is labeled "+x"
(c) if x E X and f(y, x) > 0 then y E X and y is labeled "-x"
If at the end of the procedure t is labeled, the flow is not optimal and using the
labels we find the path from s to t that enabled us to label t, and we increase (resp.
21
decrease) the flow on the forward (resp. reverse) edges the more we can, so we cannot
use this path any more to label t, and we start the procedure again with this new
flow. The algorithm terminates as soon as t is not labeled.
1.2.3
Modifications of the assumptions
We want now to have a fixed input or output at the intermediary nodes. Let call Ri
the fixed input/output at node i, by convention Ri > 0 if it is an output (a load node
in the power systems context), Ri < 0 otherwise.
Equation 1.1 becomes, with n the number of intermediary nodes:
v+n
Sf (x, y) -
f (x,y)
-Rx,
1
Ri,
x=s
X =
i
... n}(x f s, t),
yEB(x)
yEA(x)
Equation 1.3 becomes now, for any flow and any cut:
v + R(X)
=
f(X, X) - f(X, X) < c(X,X), with R(X)
=
R
It can be rewritten:
V < a(X, X) with d(X, X) = c(X, X) - R(X)
So once you have an admissible flow (this time the zero flow is not possible to
start the algorithm, because of the demands at the sinks), you only have to compare
f
(verifying Equation 1.1 modified) with c through the relation f(X, X) - f(X, X) <
c(X, X) and you still want to find
f
and X so that f(X, X) - f(X, X)
=
c(X, X) so
we can use the same procedure as before.
This modification is important when we study the maximum flow problem in
resistive networks.
22
1.3
The max-flow theorem in resistive networks
1.3.1
Generalities
We associate a potential 6, with every node x of the network. We fix without any
loss of generality 6, = 0. Here, the source node s is the only node in the network
whose input (or output) is variable. The intermediary nodes have all fixed input or
output requirements.
The flow from node i to node
j
in a resistive network will be modelled by:
f (i, j) = c(ij) - i - 6j]
with the constraint 16i - 6jI < 1.
Actually, in the power systems context which represents the main application
area of this research, the true expression of the flow (as given in the short-line model
exposed in [2]) is:
f (i, j) = c(i, j) -sin[6i -
6j]
But we find the expression above again by a straightforward linear approximation, which is enough to begin with.
A resistive network is a general network, defined in the previous section, with
the added constraint:
For any cycle io = i, ii, . . . , ,
+
io,
f(ik, ik+1)
= 0
k=O C(4ikk+1)
Therefore, a resistive flow is a special type of flow and the optimum given by
Ford-Fulkerson is an upper bound that we are not sure to reach. The optimum flow
by Ford-Fulkerson in a general network, that we will note FF*, is typically not the
same as the optimum flow in a resistive network, that we will note RN*.
23
1.3.2
Mathematical formulation
Equations
We consider a case where we have 1 source with a variable input, 1 target node (sink),
and all the intermediary inputs/outputs are fixed. As said before, 6, = 0
We have the following equation
l
0
61
K
1
Ri + P
-R,
:
=
6n
-Rn
6St
-P
where K is defined by:
kij
Kij =
if edge of capacity kij between i and
0
if no edge between i and
Ekykik
for
j, i
j
# j
j = i
K is a symmetric matrix whose rows (and columns) sum up to 0. We get rid of
this redundancy by suppressing the first row and first column (we have fixed 6, = 0)
and obtaining thus a matrix R verifying:
61
R,
67,
Rn
6St
P
We consider only connected networks (if we have several networks that are not
connected with each other, we simply consider each one separately), so R is invertible
(for a connected network, the zero eigenvalue is only of order 1). R 1 ,. . . , R" are fixed,
P is unknown (to be maximized). We therefore express the problem under a slightly
24
different way below, where K is obtained from k by suppressing the last row and the
last column (corresponding to the target node t).
R,
-
=--P
Kt,,-*t
+,t
(1.4)
K14nt
Rn
6n)
K1
6t
represents the vector consisting of the first n elements of column t in R
and Kt,1,, represents the (n + 1)" row of k (the one corresponding to t).
In what follows, we note Ktt the (n + 1, n + 1) element of K and R the vector
of the requirements Ri for i = 1, ... , n.
By expressing
6 1,...,
5n in function of 6 t, we obtain (as we want to minimize
-P):
-KN
[R + 6t Ki-m,t]
(1.5)
min [-Kt,1 nK(R + 6t Ki st) + Kt,tAt]
(1.6)
The last equation can be rewritten:
min (Kt - K
>,10m
Ki-m,t) 6
- Kt, 1 -*nK
R]
(1.7)
>0
The scalar in front of 6t (analog in some sense to an equivalent resistance) is positive,
as shown by using the following lemma.
25
A
Lemma 1.3.1
B1
B'
positive definite iff M
C_
[
Id
0
-B'A -1 Id
A
I
B
B' C
K,
1
positive definite (A
and obtain after calculations:
M
So with A =
B
B' C
and C symmetric)
We take M =
[
A
A
0
0
C - B' A-'B
B = Kis+,,,C =Kt,,,we obtain the desired result that the coefficient
in front of 6t is positive.
Therefore, the minimum is reached at the lower bound of 6 t
Admissible domain for the variable
The admissible domain for 6 t is given by the following constraint:
For every edge (i, j), 16i - 6j I
i.e.
1
5P'61 < 1 componentwise
where P is the node-edge incidence matrix without the row corresponding to node s
It is obvious that this constraint can be expressed linearly as a function of 6t.
Therefore, for every edge e, we have a relation of the form:
be < 6t < Be
These two bounds, be and Be, are function of R 1 ,..., R,.
So we finally obtain:
max
all edges e
b(R ,...,R)
6t
a min
all edges e
Be
(1.8)
(RI,
which gives us the following feasibility condition on the R 1 , .. . , R,:
max
all edges e
be(Ri,. .. ,R ) <
26
min
all edges e
Be(R,,
R )
(1.9)
If the feasibility condition is verified, the optimum 6 t is:
6*=t aall max
edges e be (R1,.
maxall
edges
e be
.
.,Rn)
(1.10)
corresponds to the saturation of at least 1 edge (usually exactly
1).
So we have the following theorem.
Theorem 1.3.2 If we have an admissible power flow with (at least) 1 saturatededge,
we have found either the optimal (maximum) flow, or the minimum flow verifying the
constraints. If by decreasing 6t by an arbitraryc > 0, the flow is not admissible any
more, we have found the optimal flow.
This theorem is very different from the max-flow min-cut theorem, where we
can split the flows the way we want. Here we have only one unknown (as we have
only so far one variable source) and as soon as we have fixed this unknown within its
admissible bounds, all the flows are determined.
1.3.3
Example
We illustrate our mathematical formulation by the following example.
The capacity of all edges is 1. We have two intermediary nodes, 1 and 2. The
requirement at node 1 (resp node 2) is
(resp
)
1/2
411
1A
e
Figure 1-1: A simple example
27
1/2
1/2
1
0M
1
3/4
5/4
Figure 1-2: Optimum flow by Ford-Fulkerson
The optimal flow by Ford-Fulkerson is given above.
(You can imagine other configurations but they have all in common that the
edges (s, 1) and (s, 2) are saturated)
But the optimal resistive flow is:
1
9/16
1/16
15/16
/819/16
Figure 1-3: Optimum resistive flow
It is easy to see that for this network, and for any outputs at the intermediary
nodes R 1 and R 2 , the values of FF*and RN* verify the following relation:
v(FF*) - v(RN*) |
-
4
R2
that is, the difference between the two flows depends on the imbalance between the
two requirements. This formula actually gives the (absolute) value of the flow on edge
(1,2).
In a more general case, where the capacities on the different edges are arbitrary
28
under the condition that FF*is obtained by saturating (s, 1) and (s, 2), we have:
RN*
=
FF* 6
ks1
R1
-
ks 2
kit
-
R2
k2t
If k< - R : ks2 - R2 we saturate (s, 1) to find the maximum flow and the general
kit
k2t
imbalance formula for this case is then given by
Iv(FF*) - v(RN*)|
+ kl 1 k 2
ks2 - 1 - k 1 2 k
R
k1k2 - k
k 12 kut + k- 1 k 2t
km 2 kut+ k 1 2 k 2 t
2
k1 2 kut + k- 1 k 2
k- 2 ku + k 1 2 k 2
R2
k,1k-+2-
t
k1 2
-
k12
k-k2-
-
with kai = k8 i + k 12 + kit
and k-
2 =
k, 2 + k 12 + k 2 t
A similar formula can be found in the case where (s, 2) is saturated instead of
(s,1).
We can notice that even for such a simple example, the expression is very complicate. It involves det K as well as the determinant of the submatrices obtained from
k by disregarding the last column of k and considering the matrix composed of the
last row and the row corresponding either to node 1 or to node 2). If in FF*all edges
linked with s are saturated, the difference between the 2 optima will be EZ ksg(1 + 6)
i.e. Kt, 1 4,[
[R+± *K14n,t] - 11 which is coherent with the expression found in our
example.
We see that exact formulas depend strongly on the exact topology of the network
and the way the optimum flow in the Ford-Fulkerson sense is reached. The only thing
we can predict is that det K is going to appear at the denominator as a consequence
of having
K
in the calculations.
Generally speaking, a flow in the Ford-Fulkerson sense, specified by the {xij},
is best approached in the resistive network sense by the solution of the following
quadratic problem: find {6}, i
=
1,. . . , N (6s
29
=
0) so that Eij cj(Xzj - (6,
-
6j))2
is
minimum.
If the minimum is reached within the bounds of the domain and not at its
extremities, we will have (by derivation): Vi,
Ej cij(65
- 6j - Xij) = 0
A sufficient condition would be that V(i, j), 61 - 6j = xij, i.e. the FF flow can be
exactly reached by the RN flow. This does not happen very often.
Such a formulation, and the underlying approximation through the minimization
of a quadratic form, may enable us to bound the difference between FF*and RN*.
1.3.4
Extension to several variable sources
For a general network
If the sources have a capacity (for instance: the maximum production of a factory),
you link them to a fictitious node through an edge whose capacity is the source
capacity. If the source capacity is very large or infinite, you associate a very large
number to the edge towards the fictitious node. Then you can use again the FordFulkerson theorem for 1 source and 1 target node.
For a resistive network
However, if we try to apply the previous method in the context of networks with
potential-driven flows, assuming at that stage that the source capacities are infinite,
we take the same capacity M (with M big) for every link to the fictitious node and
therefore obtain for every source node 1:
flow arriving in i
=
constant
Because of these constraints, this brings us far away from the multi-source problem and we prefer therefore extending the former Resistive-Network formulation.
We assume we have p + 1 sources, p > 0. The first source is still noted s, with
, =_0. 1, . . . , p are the other sources with variable inputs. p +
intermediary nodes, with fixed inputs/outputs Rp±1 ,..
30
..... , n are the other
, Rn. t is the target node.
We write:
=
K=-
(q
~Kp
Kpq
Kqp
Kqq
n -(p+1)
Let call S the vector of the angles of the variable sources, s not included (as
, =0), 6 the vector of the angles at the fixed inputs/outputs, R the vector of the
fixed inputs/outputs.
Equation 1.4 becomes:
Kqp J +Kqq J = -R - 6t Kqt
(1.11)
i.e.
6
=
-Kgg 1 [R + KqpS + 6 t Kqt]
We want to minimize Ktp 6 + Ktq 6 +Ktt
(1.12)
6t
After replacing 6 by its value given in 1.12, we obtain the new function to be
minimized:
min[(Ktt - KqK-jq'Kqt) 6 t + (Ktp - KqKq1 Kqp)
-
KtqKqq1 R]
row-vector
scalar>O
This is equivalent to saying that we want to minimize utx, with:
x
(=
and
-1 Kqp
Kt-
KKtq
Ktt -
KItqIKq 1Kqt
)
under constraints of the type A x < b (to express the capacity constraints on the
edges) (in the previous case, u and x were just scalars).
We therefore have a classic problem of linear optimization on a convex domain.
The optimum will be reached at one of the extremities of the domain.
31
This is a
generalization of the previous situation.
1.4
Properties of the maximum flow in a resistive
network
1.4.1
The saturated edges of the maximum flow in a resistive network are not necessarily saturated edges of the
maximum flow in the Ford-Fulkerson sense
Although most tests on various networks have shown that edges that are saturated
in the maximum flow of a resistive network remain often saturated in at least one
configuration of the maximum flow in the Ford-Fulkerson sense, in the following example, found by Sandip Roy (LEES, MIT), the saturated edge of the maximum flow
in the resistive-network setting is not a saturated edge in the Ford-Fulkerson setting.
(The numbers on the edges are the capacities)
(D 1 (
S
l1
QD
0.01
Figure 1-4: Network where the saturated edges for the optimum resistive flow are not
saturated in a Ford-Fulkerson optimum flow
The requirements are all equal to 0.
32
We find that the saturated edge in the optimal resistive flow configuration is
edge (4, 5). The optimum power flow in t is then 0.6833 (obtained by having 0.3367
go through (s, 1) and 0.3467 go through (s, 5)) and it can be increased by taking out
lines (s, 5), (4, 5), (4, t).
The optimum Ford-Fulkerson flow is of course obtained by saturating (s, 1) and
(s, 5) andthe optimum flow at node t is 2. Edge (4, 5) is not saturated (actually, the
flow going through it is 0).
In numerous other instances, the saturated edge in RN* belongs to the set of
the edges that are saturated in any configuration of FF*(see Subsection 1.3.3. for an
example), or at least one configuration (as we can split the flows arbitrarily, sometime
we can choose not to saturate an edge, but there is often at least one case where the
edge saturated in RN* belongs to the set of saturated edges of FF*). There is so far
no rigorous argument for such a phenomenon but this can be explained intuitively as
follows.
Consider RN* and forget it is a resistive network (regard it as a general network).
We know that a flow
f
is maximal, in the Ford-Fulkerson sense, if and only if there is
no flow augmenting path with respect to
f.
Take the paths including the saturated
edge(s) of RN*. As these edges are saturated, it is only possible to increase the flow
on these paths if the saturated edges belong to the set of reverse arcs, on which you
decrease the flow to obtain a higher value of the flow at t. Our numerical tests show
that the saturated edges are forward edges most of the time, which is sensible as we
want to bring as much flow to t as possible, in the forward direction.
This phenomenon can also have the following geometrical formulation: the flow
on a given edge of a resistive network is given by cij( 3 i - 6j) where 16i - 6j I
1,
while the flow on the same edge of a general network is given by cijxij with 1xij I
1.
Having all xij of the form Ji - Jj is, as said before, an important restriction on the
choice of the xij (at least when the network is not a tree). We consider the admissible
domain of the set of the variables for the general network:
D = {V(ij) E E, xjjfI
33
1}
c 7RIE
where JEJ is the number of edges in the network.
The optimum in the Ford-Fulkerson sense is reached at one of the extremities
of the convex domain D. There will be at least one Ixij I equal to 1 per disjoint path
from s to t, and we have seen that some xij can change continuously while preserving
the value of the maximum flow, so we will obtain a piecewise linear function on the
set of faces of D that will be the set of the possible configurations for the maximum
flow in FF*.
Besides, the optimum in the resistive network sense is usually reached by the
saturation of exactly one edge, which means that it will be on exactly one face of D
(not on a boundary between two faces).
So the remark that we have made on the fact that the saturated edges of the
maximum flow in a resistive network are often saturated edges of at least one configuration of the maximum flow in the Ford-Fulkerson sense is equivalent to saying that in
most cases the intersection of the locus of the possible configurations of FF*with the
facet of D that contains RN* is not empty (therefore, you can reach a configuration
of FF*from RN* while staying on the same facet i.e. while keeping saturated the
edge that was saturated in RN*.
We illustrate our point by using the example of Subsection 1.3.3. with only xsl,
Xs2,
x 1 2 to make a graphical representation possible:
locus of FF*
Xs I and Xs2 both at I
X 12 between
- 1/2
and
facet Xs2=1
1/2
s
(-1,,-1)(1,1-1)Xs
_
PN*
(-1,1,1)(1,15/16,1/16)
X12
((1,-1,-)
facet Xsl=1
(-1,-Fr)
(5,-rg)
Figure 1-5: Geometric argument
34
s
So why does this intuition fail on our example? The reason is the following:
when we consider our resistive network as a general network, and try to obtain the
Ford-Fulkerson maximum by augmenting the flow on each path, we saturate edges
(s, 5), (5, 4) and as a consequence (4, t). The other edges carry 0.99. There is a path
of unsaturated forward edges from s to 4 and a path of unsaturated forward edges
from 5 to t. As a consequence, once s is labeled 4 is labeled and if 5 can be labeled
then t is labeled. But as we have an edge from 5 to 4 carrying a non-zero flow, once 4
is labeled we use the "backward edge" part of the algorithm to label 5. As a result, t is
labeled and the flow is not optimal. To reach the optimal flow we have to decrease the
flow on (5, 4) to 0. The main point here is that we have paths of unsaturated forward
edges from s to
j
and from i to t, where (i, j) is the saturated edge ((i, j) = (5, 4)).
It is also important to note that the reason why (5, 4) is the saturated edge in the
resistive network is the big difference of angles at its extremities, due to the position
in the network of the nodes we link together: 5 is very close to s and 4 is very close
to t. If there are less edges between s and j or i and t with (i, j) the saturated edge
in the resistive network (here i = 5 and
where i = 2 and
j
j
=
4), as in the example in Subsection 1.3.3,
= 1, this phenomenon does not appear and the saturated edge in
the resistive network is also a saturated edge in the Ford-Fulkerson sense.
1.4.2
The saturated edges are often on a Minimum Spanning
Tree of the network
On the face of it, it seems that the saturated edges of RN* should be some of the
edges of smallest capacity. So we may wonder whether or not the saturated edges are
on a Minimum Spanning Tree of the network, and we define the length of the edges
as their capacities to start with. The following example shows that they are not.
A triangle network (s, 1, t) with edge capacities of 1 for (s, 1) and (1, t), an edge
capacity of 3 for (s, t) and a requirement of
in the figure below:
35
at node 1 has the optimal flow given
3W
1/4
3/4
1/2
Figure 1-6: The saturated edge is not on a MST
If we look further into the calculations, we realize that the fact that (s, t) is the
saturated edge depends solely on the capacity of (s, 1) and the requirement at node
1, and not on its own capacity, as the following proof for the general case shows it:
EW
a
IT
c
b
R
Figure 1-7: General case
We have:
b+ c
K=[z
-c
]
so:
[-t- co]
b+c[R
61=
We must have:
-1
<
6t
<
-1
< 61
<
1
-1
< 61 - 6
<
I
36
1
that is
-1
6t > -1 implies 6 t > -I
<
C
6t
cb <
1+
--1_R
<
+c
b
6
6t
-
< I
1
<
<
1 + R+b
1+ c- R
b
R + c so either (s, t) is saturated or (s, 1) but never (1, t).
b
(s, t) is the saturated edge if and only if R - b < 0 i.e. b > R (the capacity of
edge (s, 1) must be superior to the requirements at node 1).
So we see that the result is not linked very tightly to the capacities of the edges
of the whole network: if a < b, (s, t) would have been saturated as well.
Besides, the values of the requirements have to play a role in the saturation of
the edges. Let consider for instance the following network:
1/2
2
2
11
S1/4
Figure 1-8: Other case
Requirements of
at node 2 saturate edge (s, 1) and the
at node 1 and of
optimal flow in t is going to be 2.25 with
6
t
= -1.75.
However, if we switch the
requirements, (s, 2) is now the saturated edge and the optimum flow in t is 2.04 with
-t= -1.61.
So to take into account the requirements, we define a new "length" to compute
the Minimum Spanning Tree, which is not their maximum capacity kj any more but:
(i,
R
if (ij) are intermediary nodes with max(Ri, Rj) :4 0
if i is an intermediary node and
M
j
s or t, with Ri # 0
for the other cases, with M any "big" scalar
37
This is justified by the fact that an edge is more likely to be saturated if it has
a small capacity or a big requirement at one of its extremities.
We review then the examples we have used so far and in every instance, the
saturated edge belongs to one of the possible MST of the networks. For instance, in
the case of the example given in 1.4.1, a possible MST is given below and we can note
that edge (3, 6) is on the spanning tree. A case where the rule is not verified is, for
0
2
43
V
0
3
5
5
4
5
(
Figure 1-9: The saturated edge is on a MST
instance for the network studied below in Section 1.5 (we will refer to this network
as the "transportation network example"), when the requirements are 0 everywhere
except "3" at node 1 and "1" at nodes 4 and 8. Then edge (s, 2) saturates while not
having requirements at its extremities. This is of course due to the fact that an edge
does not transmit power only to its immediate extremities but also to the rest of the
network. Therefore, we should adapt the criterion, but it already provides a good
insight into which edges are going to saturate.
A possible modification to take into account the observation we have just made
would be to change the definition of the length of edges with no requirement at their
extremities to build the MST: instead of giving them a length arbitrarily big M, it is
38
probably more realistic to assign the following values:
{k
I , 0-< <a 1 for (s,i) with]Ri = 0
i ax, R
#max R , 0 < #3 < I for (i,j) with Ri =R
0
(An analysis of the flows going through a given network has proved that a ki
and # maxi Ri were a realistic approximation for the flows going through edges with
no requirement at their extremities, respectively edges of type (s, i) and (i, j), if you
choose the parameters a and / correctly - typically, a = 0.8 or 0.9 and / is between
0.3 and 0.5). Another possibility would be av maxi
msiRi4 for edges (s, i) with Ri
=
0.
When we implement this modification to the previous case where the saturated
edge was not on the MST, with parameters a
=
0.9 and /
0.3, we find that now
(s, 2) does belong to the MST.
Although it remains an experimental observation and would need a more formal
proof (and the instances where the rule is not verified should be examined in more
details), we can conjecture that the saturated edge(s) of the resistive network belongs
often to the MST of this network, where the "length" for each edge is, by and large,
its capacity divided by the maximum requirements at its extremities.
1.4.3
The maximum flow can be increased when we take one
line out
In some instances, we observe an interesting phenomenon, namely the increase of the
maximum flow at t when we take a well-chosen line out, which is rather counterintuitive.
Example
We consider the following network:
39
1/4
1/10
1w
G-]
(1/4
Figure 1-10: An example of optimum flow increased with 1 line out
The matrix k is here:
We obtain:
(
61
2.1
-1
-1
-1
3
-1
-1
-1
3
6t - 0.25
5.3
62
(
4
3.1
By writing the constraints on the different edges, and using that we know the
direction of the flow on (s, 1) and (s, 2), we have the following inequalities (the flow
on (1, 2) is constant, independent of 6 t:
So we have:
Link (s, 1):
-1.075 <t < 0.250
Link (s, 2)
-1.460 < 6t < 0.250
Link (t, 1):
-4.846 < 6t < -0.769
Link (t, 2):
-2.761 < 6t < -0.352
I
62
=
-1.075
=
-0.775
The maximum flow injected is then 0.8750 and the maximum flow in t is 0.3750.
40
If we remove edge (s, 1), we have the following configuration:
1/4
1
T
1
S1
1/4
Figure 1-11: The modified example
After calculations, we obtain
{t
= -1.417
61
=
-1.333
62
=
-1
The saturated edge is (s, 2) and the maximum flow in t is 0.5000.
We see here that the increase of the maximum flow at the target node is due to
the removal of an edge whose capacity was significantly smaller than the other ones.
Mathematical formulation
Of course a possibility is to remove every edge of the network, one at a time, calculate
the new value of the flow at t and compare it with the former value. If we do not need
to know by how much the flow is increased, we can use a quicker method, described
below.
The unknowns for the first, "old" network are designed by an index "o". The
unknowns for the "new" network (where you removed one link) are designed by an
index "n". We know that the flow at the target node is a linear function of 6 t so we
define A0 , B 0 , An, B, as the coefficients in the expressions of the "old" and "new"
41
flows as follows:
-P,
=A, 6t + Bn
-PO=
Ao 6t + BO
(Ot*)n
(6*)o + A
We rewrite P as:
-Pn
= AOr + BO + (An - Ao) 6t + (Bn - B 0 )
We calculate the value of this expression in
(6t*)n:
-P* = -PO* + An A + (An - Ao) (6*) 0+ (Bn - Bo)
We have seen before that the coefficient An is (strictly) positive. So the general
expression for the increase of the flow is:
Theorem 1.4.1
The maximum flow at t increases iff:
A<
Pn((6t*)o) - Po((6t*)O)
-
An
z. e.
Pn(0) - Po((6t*)o)
An
(because Bn = -Pn(O))
(6t*)n
corresponds to the maximum of the minimum values of the bounds on 6t,
so we compute the minimum value of the bound for a given edge and compare it to
Q
Pn(O)
-
Po((6*)O). If we find an edge for which
Q is
smaller than the minimum
bound, we stop: we are sure that the maximum flow will not be increased.
You can actually express the relation more precisely if you study which edge you
are taking out. We give these relations below.
Relation if we take out a line that was not connected to the target node
Ktt, Kt,1-+,
Ki-mt and of course R remain unchanged.
42
If the line we remove was connected to s (we note it (s, i)),
Kn= Ko - ksiEi
where Eii is the zero matrix except for its (i, i) element that is 1.
If the line we remove was not connected to s (we note it (i, )),
Kn
= Ko - kjj Ejj
where Eii is the zero matrix except for its (i, i) and
(j, )
elements that are 1, and its
(i, j) and (j,i)elements that are -1.
We have (6t*)n = (6t*)o + A
(When we do not give any index to the element it means "old network")
So we have:
-P* =(K,t - K
1
_,nK,
K 1 ,e)((5t) 0 + A)
We express Kn
in function of Ko
We have Kn
[Ko(Id - ksjKO0
1
E ]
K
-
K, 1 _>K
R
=[Ko(Id - kijKo
or Kn
Eij)]-1
After calculation, we find that due to the special structure of the matrices Ei
Ej)- 1 and (Id
and Eij, that are of rank 1, (Id - ksi$K
can be
-k
rewritten in a more usable form.
E-1) 1 =
(Id - k 8iK 0
=
(Id - kij~o
-1
E4
I
=
=
ksi
1 Kk
1 - k8s(Ko )jj
Id+
Id +
1
-
ki [(K0
-1
Ei
-
_1
);, + (=
J
KE
=0o
).,
-
2(Ko
E2
).,]
So in both cases we can write the matrix as Id + bA, which enables us to write:
P=
A>n [K
-PO -b K, 1 Ao
1
n,t (67 ) o+ R]
+
(K,-
K,1_(Id bA)
So the general condition here to have the flow increased is:
43
K 1 _,)A
Theorem 1.4.2 The maximum flow in t is increased by removing a line not connected to t iff:
--
(6t*)
< (6t*)o +
bKt,1-nAKo
1
[Ki-m,t(6t*)o
=
Ktt - Kt, 1 4+(Id + bA) K
-1
+
R]
KI4n,t
where b and A are defined above.
The coefficients corresponding to the new network are b and A only, which makes
this quantity easily computable.
Relation if we take out a line that was connected to the target node
If the line was also connected to the source node, i.e. is (s, t), the only coefficient
that changes is Kt,t. Calculations similar to the ones we presented above give us:
Theorem 1.4.3 The maximum flow in t is increased by taking out (s, t) (if this line
exists) iff:
(6t*)n < (Ot*)o +
kst (6*)o
t
Ktt - kst - Kt,1_4nK
1
K1
-,t
i. e.
W~
=K 1 ,0
t
Kt,t - kst - KtismK Kian,t
For the case where the line is connected to t and an intermediary node, all
coefficients vary and we have to use the general expression without trying to express
An or Bn in a simpler way.
Additional experimental observations
For a given network with prespecified requirements at its nodes, we compute the
maximal flow that can reach the target node. We also compute the flows that go
through any edge of the network for this optimal configuration and split them into
three categories: small, medium and big flows (the boundary values for each category
are determined empirically so there is a significant, although not too high, number of
medium and big flows). We represent the type of the flow for each edge of the network
44
on the graph (with for instance colors or different types of lines). Then we add to
the graph, in another color, all the edges that, according to our MATLAB program,
should be removed to increase the maximum flow.
Several interesting properties
appear in the pattern of repartition of the edges to be removed compared to the
different types of flows:
* there is usually a succession of candidate edges, that is, when an edge is candidate, at least one of its adjacent edges is also going to be candidate. (This has
=-1
=--1
to do with the way KO EijKO
1=
1
and (KO )jj - 2(K 0 )0i) vary in function of
j
for a fixed i).
* in the majority of the cases, the edges to be removed carry small flows, occasionally they carry medium flows.
" the edges to be removed are very close neither to the source node nor to the
target node, and they can even be quite far away.
* when the medium and big flows remain localized in the network there are fewer
edges candidates (or even none).
We illustrate our topic by giving three examples, that we will refer to as "the
small square", "the big rectangle" and "the transportation network". For each example we give several configurations of the requirements to show how the patterns of the
edges with big flows and the edges that should be removed evolve. The requirements
are indicated in the left figure, where the different types of flows are represented.
In the right figure are represented the edges that are saturated (semi-dotted lines),
the ones that should not be removed otherwise the requirements will not be feasible
any more (if such edges exist) (dotted lines), and of course the edges that should be
removed to increase the maximum flow at the target node (thick lines).
In the example of the small square (resp. the big rectangle), all edges have a
capacity of 5 (resp. 2). The capacities in the case of the transportation network have
already been given in a previous part of this work.
45
Case of the small square:
1
1
1
I
I
I
I
1
1
1
I
S
1
----
1
1
T
1
1
1
Figure 1-12: Small square, expl 1
0
0
0
0
0
0
0
1
0
S
1
._ __ __
0
T
I
I
'
'
0
0
0
I
.0
0
0
Figure 1-13: Small square, expl 2
46
1
1
0
1
1
1
0
0
1
1
0
S
1
0
1 |
o
0
T
1
1
1
Figure 1-14: Small square, expl 3
1
0
0
0
0
1
0
0
0
S
0
0 _ _
0
0
0
I
1
T
0
0
0
Figure 1-15: Small square, expl 4
47
0
0
4
0
0
0
0
0-
0
0
0
S
0
0
0
4
0
0----
0
0
0
___
0
0
T
0
0
0
Figure 1-16: Small square, expl 5
Case of the big rectangle: (when the requirements of the load nodes are not
specified, we assume it is zero)
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1:
_
_ _
0.1_
.
0.1
_ __0.11 .
0.1:
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
Figure 1-17: Big rectangle, expli
48
0.1
0.1
T
S
0.1
0.1
0.2
0.2
0.2
0.2
---
-
-
1D
0.1
0.1
0.3:
0.3
0.3
T
Figure 1-18: Big rectangle, expl2
0.1
0.2
0.2
0.2
0.2
0.1
0.1
s
T
Figure 1-19: Big rectangle, expl3
49
0.3
O.3
0.3
0.3
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.11
0.11
0.1
0.1
0- -.
1
01
0.1
0.1
01
0.1
0.1
0.1
0.1
0.1
0.1:
0.:
0.1
01
0 .1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
o.1
0.11
0.1
0.1
0.1
0.1
0.1
0.11
0.1
0.1
0.1
0.1
01
0.11
0. 1
0.1
0.1
0.1
0.11
0.1
0.1
0.1
0.1
0.1
T
Figure 1-20: Big rectangle, expl4
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1'
0.1
0.11
0.1
0.1
0.1
0.1|
0.1
I
|
T
s
Figure 1-21: Big rectangle, expl5
50
-
0.1
F~1~I
0.1
0.1
__
__
__
__
0.1
0.11
1
Figure 1-22: Big rectangle, expl6
0.1
- - - -_____-_____0.1
0.1
0.1
0.1
0.1
0.1
0.1
0.1
S
Figure 1-23: Big rectangle, expl7
51
1
I
__
Case of the transportation network:
Here as the network is fairly small we draw only one graph. The saturated edge is
designated in very thick lines and the edges the removal of which will increase te
maximum flow at the target node are designated in very thick dotted lines (the other
conventions are unchanged).
0
0
0
'
0
0
0
Figure 1-24: Transportation network, expli
31
0
'
00
0
0
Figure 1-25: Transportation network, expl2
52
0
0
2
S ''
0T
0
0
0
2
Figure 1-26: Transportation network, expl3
The influence of the capacities at the edges (in two of our examples, all edges
have the same capacities), the requirements at the nodes (beside the fact that when
two adjacent nodes have high requirements it is often good to remove the edge between them) , and the degree of the nodes in the network (assuming it may have an
influence because it tightens the network more) remains to be quantified beside the
mathematical formulation we have given above in terms of b and A.
A quick study of the utility of the edges in the example of the "transportation
network" has been carried out as follows: we have removed one by one every edge in
the network and computed the maximum flow at the target node in this new configuration as well as the edges that now have to be removed to increase the maximum
flow. (Then we add the edge that we had removed, remove another one and do the
same process again) For each set of requirements, we sort the type of configurations
of the network (the initial one and all the possibilities for the initial network minus
one edge) according to the maximum flow they enable the target node to get (each
type of configurations is simply denoted by the edge that has been removed from the
initial network, or 0 if it is the initial configuration).
We then try to see if some
edges are usually very good or very bad candidates for the removal, that is if there
is, in addition to an obvious requirements factor (the edges to be removed depend
on where the requirements are), a topological factor (the edges also depend on the
topology of the network: the degree of the nodes, the capacities of the edges). Our
53
analysis seems to indicate that the requirements factor has a bigger influence than
the topological factor, there is a big variability in the edges that should be removed,
however, on the face of it, the edges not to be removed appear more easily than the
edges to be removed when we consider only the topological factor.
This would need to be looked into with more details.
Let note to finish with that the number of categories has been so far chosen
arbitrarily and a higher number of categories could provide a better insight into the
repartition of the edges to be removed, compared to the flows. Besides, the removal
of some edges will only induce a small increase in the maximum flow at a given node,
whereas the removal of other edges will induce a much higher increase, so we should
also discriminate between the utility of all these edges whose removal can increase
the maximum flow. However, an easy way to discriminate between the potentially
interesting edges does not seem to exist.
1.4.4
Some configurations are not feasible when we take one
line out and become feasible again when we take a second line out
Keeping in mind that a too high strain on the network, due for instance to lines taken
out for maintenance or "broken" (such as in the case of power outages), can induce
widely spread cascade failures, we are interested in finding out whether or not the
strain on the network can be in some case decreased by taking some lines out (as the
operators rarely have the possibility of taking lines in). We simplify the problem here
by considering the case where some configurations are not feasible at all when we take
a certain line out, and become feasible again when we take another well-chosen line
out. In this section, we fix the requirement at node t.
Example
We consider the following network:
54
1/10
1
1/
6/10
F-]
Figure 1-27: An example of requirements admissible again with 2 lines out
The optimal angles are given by:
I
=
61
The optimal flow is:
-0.9144
62
-
-0.7087
6t
-
-1.1113
0.091
0.197
0.2 06
0.403
0.709
6/10
G/1]
Figure 1-28: Optimal flow for the initial network
Now we remove (1, 2):
55
1/10
16/1
1/10
Figure 1-29: New topology: 1 line out
The optimal angles should be:
61
-1.2305
=
-0.6768
62
-1.2536
t=
But 1611 > 1 is impossible. So the requirements are not feasible any more. Then
we remove (1, t):
1/10
1
1/10
1
1
6/10
1/10
Figure 1-30: New topology: 2 lines out
The optimal angles are:
61
=
-1.
62
=
-0.7
6t
=
-1.3
56
The optimal flow is:
1/10
1/10
6/10
7/10
1/10
Figure 1-31: Optimal flow with the last topology
The requirements are feasible again.
Mathematical formulation
For each edge that we remove, we compute maxedges FKr- RI (P is simply the
node-incidence matrix without the line corresponding to s as the angle of the source
node is always zero). If this quantity is inferior or equal to 1 the requirements are
still feasible. Otherwise, they are not feasible any more, and in that case we run
the program again to see whether removing another line can make the requirements
feasible again.
But if we are concerned solely with the edges that should not be removed from
the network (otherwise the requirements will not be feasible any more), a good
insight is already provided by the following analysis: we try to determine under
which conditions maxedges IFKJ RI is going to be superior 1 if it is given that
maxedges
oFK
RI is inferior to 1.
So we express FP'Kn7'R using PFK, R. We
have:
Kn
Ko - keEe
(where e is the edge we remove)
The operator "bar" is linear so K, is simply RK
intermediary nodes of the network, say i and
57
- keEc.
If the edge e links
j, or an intermediary node i with the
target node t,
E,
is simply going to be Ej or Et. Otherwise (when the edge links
an intermediary node i with the source node s), Ee is going to be Eii, whose only
non-zero element is in (i, i) and is equal to 1.
We use the results of the previous section about the expression giving KJ
to
assess that:
FKn R =(F±'
+ A )(Ko
+ lego
e~o 1
R)
where 1e is the coefficient defined by:
Kn
1
o - Id=e~o-1Fe
i.e.
FnKn
R = FoK
The term A/KO
R + [,A + le(Po + A')ko
e]K
R
R cancels out FOKJ R for the line we remove and has therefore
little interest in our analysis.
In what follows, we concentrate on: le(Fo + A)Ko
EeK
1R
EeKo
R
is the difference of angles (in the "old" configuration) at the extremities
of the edge that we are removing, it also represents the ratio "flow/capacity" and gives
an idea of how close this edge was to saturation. Another term of interest is le which
is linked in a simple way to the capacity of the edge ke and the other capacities of
the network (as they appear in k
0
1).
So the bigger the ratio "flow/capacity" in the old network for the edge we are
removing, or the bigger 1e, the more likely we are by removing this edge to enter a
configuration where the requirements will not be admissible any more. We can also
notice that leIe can also be written, if e = (i, j):
Fj
lZ- ki[(K0 _1)i1 , + ((K_I -e-[=:O'~
(Ko
1,j
--
+ (K0
(k
-
)
-
2(K0
-1)~
i
_+
)jj - 2(Ko
)j,]
jR_1.
) , is E K0
.
Therefore the risk that the requirements will not be met in the new configuration
58
is high when the flow going through the edge is big (which is obvious, although we
have here found the exact relation of dependency) or when EijR0
into account only some coefficients of R7)
(which takes
is small. (A similar expression can be
obtained when the edge is of the type (s, i)).
We check our analysis on the example of the transportation network. We compute the quantity:
Ms - =
-
ksj|6j|
(
1
1 - kij[(Koj)
k
Ik
I|
i + (Ko~ )jj - 2(KO
)ij]
for each edge of the network and for each configuration of the requirements. We order
then the mj. and study whether these values have a correlation with the edges that
should not be removed in the network. We observe the following:
" the edges of small mij are edges whose removal does not affect the fulfillment
of the requirements
" the edges of big mij are edges whose removal is going, with certainty, to make
the fulfillment of the requirements impossible
* there is a zone of medium mij where the removal of the edge can sometimes
prevent the requirements to be fulfilled and sometimes not (the margin by which
the requirements are fulfilled or not remains to be studied, it may be very small
values)
So there is no value of mij which would clearly make a boundary between the
edges whose removal does not affect the fulfillment of the requirements and the edges
whose removal does, but the mij have an obvious correlation with the importance
of the edges in the network. For instance, for the network given in example at the
beginning of this paragraph, we obtain the following results:
requirements not met by taking out the line: s 2
requirements not met by taking out the line: 1 2
59
but met by taking out the line: s 1
but met by taking out the line: 1 t
requirements not met by taking out the line: 2 t
but met by taking out the line: s 1
On the other hand, we find the following mij: We see that (s,2) has a very high
Edges
Coefficients
(s,1)
(s,2)
0.1067
8.2667
(1,2)
(1,t)
(2,t)
0.5538
0.5750
1.1750
Table 1.1: Our coefficients for the utility of each edge
coefficient
mS2,
and its removal cannot be counterbalanced by the removal of another
edge. The removal of (s, 1) does not affect the fulfillment of the requirements and
this edge has the smallest coefficient of all edges. We can also notice that mit is very
close to Mn1 2 but the requirements can still be satisfied after the removal of (1, t), not
after the removal of (1, 2).
However, the mij do not seem of a significant help when it comes to determining
if the removal of another edge would make the requirements feasible again (besides,
it does not seem to predict very accurately which edge should be removed to increase
the maximum flow in one edge of the network).
1.5
Example
In this section, we apply the results we have obtained so far to the network below and
use our algorithms to study which links are of importance. The network topology
is given below. (The load nodes are indicated with circles, and the numbers on the
edges are their capacities).
We run the programs for a uniform set of requirements of 0.1 on every intermediary node and obtain:
60
6122
1
8
1
722(?2Q5
<-I
S
I
1
3
1
20
5
10)
19
1
2 (:12)
13
2
1
17
2
2
3
1
2
16
U4
3
2
I
2
2
Figure 1-32: A more complex example
Optimal flow: 1.3948
Reached for deltat= -3.4113
Saturated edge: (19,20)
Requirements not feasible any more by taking out line (2,3)
Flow increased by taking out line (9,10)
Flow increased by taking out line (13,14)
The mij are given at the end of this section.
61
(2, 3), the only edge that should not be removed, is also the edge with the highest
coefficient.
The edges the removal of which increase the maximum flow at the target node do
seem to belong to the set of edges with small flows, although the role of the different
capacities in the network should be better quantified.
For the same set of requirements, except at nodes 3, 7, 13, 21, where the demand
is 0.5 instead, we obtain:
Optimal flow: 0.2979
Reached for deltat= -2.8881
Saturated edge: (18,19)
Requirements not feasible any more by taking out line (s,1)
Requirements not feasible any more by taking out line (2,3)
Flow increased by taking out line (9,10)
Flow increased by taking out line (11,12)
Flow increased by taking out line (13,23)
The mij are given at the end of this section.
Once again, the experimental results are coherent with our analysis.
62
Edges
(s,1)
(s,18)
(1,2)
(2,3)
(2,19)
(3,4)
(3,5)
(3,22)
(4,5)
(5,6)
(6,7)
(7,8)
(7,10)
(7,22)
(8,9)
(9,10)
(10,11)
(11,12)
(12,13)
(13,14)
(13,23)
(14,15)
(14,20)
(15,16)
(15,21)
(15,24)
(16,17)
(17,18)
(18,19)
(19,20)
(20,21)
(23,t)
(24,t)
Coefficients
8.1508
4.3333
2.8625
10.6110
0.2727
0.2267
0.7377
0.7147
0.0696
0.5118
0.4302
0.2413
0.2565
0.8738
0.0398
0.6416
0.8250
2.6194
1.7944
0.0373
2.4386
0.4190
0.1443
0.1117
0.2157
1.0631
0.7527
1.2820
0.5594
0.1383
0.0059
1.9761
1.4088
Table 1.2: Final example, case 1
63
Edges
(s,1)
(s,18)
(1,2)
(2,3)
(2,19)
(3,4)
(3,5)
(3,22)
(4,5)
(5,6)
(6,7)
(7,8)
(7,10)
(7,22)
(8,9)
(9,10)
(10,11)
(11,12)
(12,13)
(13,14)
(13,23)
(14,15)
(14,20)
(15,16)
(15,21)
(15,24)
(16,17)
(17,18)
(18,19)
(19,20)
(20,21)
(23,t)
(24,t)
Coefficients
13.6462
6.5789
5.0611
20.0485
0.5092
0.2798
0.9785
1.0991
0.1758
0.8402
1.0870
0.1914
0.5214
1.6426
0.0897
0.7414
1.5565
4.0824
2.5259
0.5146
4.8676
0.8729
0.3861
0.3878
0.6810
2.0044
1.3050
1.8343
0.9969
0.4120
0.8240
3.5951
2.3501
Table 1.3: Final example, case 2
64
Chapter 2
Optimal design and growth of
small resistive networks under the
constraint of minimal cost
In this chapter, after a brief introduction (Section 2.1), we describe a procedure to
optimally design a network with 1 source node and 2 sink nodes through an original
geometrical algorithm (Section 2.2) and extend this procedure to the case where
we add nodes to an already designed network (Section 2.3). We then compare the
networks obtained through this "growth procedure" to networks designed in a single
step (Section 2.4). We end this chapter with a few comments (Section 2.5).
2.1
Generalities
In this part, we will only optimize the design of the network under the criterion of
the minimum cost, with the constraint that every sink node must be provided with
the flow it requires: this implies that every sink node will be connected to at least
one source node.
The cost of the line will be a function of the type of the line, i.e. its capacity,
65
and its length. We assume the set of the types of the lines is discrete.
COST
=
F(type of the line, length of the line)
The maximum power flow that can go through this line is given by the following
formula:
Pmax
'VV
Smax
-
where:
IVI and IVI' are the voltages at each extremity of the line,
I is its length,
x is the inductance per unit length (which depends on the capacity of the line),
smax
is the maximum value that the sine of the difference of the generator angles
can take without jeopardizing the thermal and dynamic stability of the line.
We can note that this expression of the power flow through a transmission line
is valid only under the short-line model, which implies that there is no transmission
loss. This seems a reasonable assumption to start with.
Finally, we can say that
K(type of the line)
length of the line
We make the following restriction on the cost: we consider that it is the product
of a function of the type of the line and of a function of the length of the line.
COST = f (type of the line) - g(length of the line)
We choose to note "1" the smallest type of line, "2" the type immediately bigger,
etc, till "n", the biggest one. Typically, n will be 2 or 3. The cost of the line increases
with its type and also with its length, which means that the functions f and g are
monotonically increasing. This matches the intuition.
66
We will first consider the simplest possible network, composed of one input node
and two output nodes, and analyze the different solutions (depending on the initial
hypothesis) of the optimization problem obtained in this case. Then we will examine
the circumstances that can lead to a saturation of one or more links in the network
(in a static approach), and study the case where one node is added to an already
designed network. We will also compare the network that is obtained this way with
a network with the same number of nodes where all edges have to be built in a single
step, and try to generalize our results within the computational limits of this NP-hard
problem.
2.2
Design of a network with 1 source node and 2
sink nodes
2.2.1
Design of the optimal network
The notations are indicated in the following figure:
113
R2+R
R3 -R
20
123
R
R2
R3
Figure 2-1: Notations
R 2 and R 3 are the requirements at nodes 2 and 3 for which the network is to be
designed. We assume that the source node can always meet the requirements.
The flow R can be either positive (if it goes from node 2 to node 3) or negative
(if it goes from node 3 to node 2).
The flow from the generator to any load is positive in this "closed" configuration,
67
because having power coming back to the generator would mean that we sent too much
in the network and obviously this is not optimal (the optimal configuration would be
there to decrease the power flow sent into the network and not build the link where
the power comes back to the generator). We have therefore the following inequality:
-R2<&R < R3
Actually, all values of R within this range are not admissible by a network with
potential-driven flows, as we have seen in the previous chapter. We will come back
on this important point later.
The problem of designing the network under a constraint of minimal cost has
here only one unknown, R, and can be written in the following way:
min
-R2<R<R3
with
f
[f ((R 2 + R)l1 2 ) - 9(1 12 ) + f((R 3 - R)113 ) -g(li3) ± f (IRl 23 ) - 9(123)]
taking discrete values corresponding to the cost associated with the type of
the line and g varying continuously.
From the optimal solution R* that is found we can deduce the capacities to be
given to each link and the problem is solved. We can have four different cases:
e R* = -R
2:
the link from node 1 to node 2 does not exist, the optimal network
has only two links
R2 +R 3
R2
R2
R3
Figure 2-2: No link between nodes I and 2
68
" R* = R 3 : the link from node 1 to node 3 does not exist, the optimal network
has only two links
R 2 +R 3
20
R3
R2
R3
Figure 2-3: No link between nodes 1 and 3
" R* = 0: the link from node 2 to node 3 does not exist, the optimal network has
only two links
R2
R
3
2
R2
R3
Figure 2-4: No link between nodes 2 and 3
" otherwise, the optimal network has three links
69
R2+R
R -R *
0D
2
R
R2
R3
Figure 2-5: All links
We can note that if the requirements are small enough so that in the whole
optimization problem we will only have to consider transmission lines of the smallest
type without saturating them, the optimal solution to the problem boils down to
finding a Minimum Spanning Tree in the network, given the properties of the function
g. It is interesting to note that in the more general case where several types of lines
can be used, a tree may not be always the best solution because the small lines can be
significantly cheaper than the big ones: then it would be better to have three small
lines instead of one big and one small (or two big ones).
The function to be minimized is of the following form (the crosses correspond to
cases where you have only two lines):
C
0
T
-R
2
R
3
0
Figure 2-6: Cost function
70
It is quite difficult to draw conclusions on the design of the optimal network
using this approach, as the function takes discrete values, so we will use another
representation, described below.
Let note b1 (resp. b2 , ... , bc- 1 ) the maximum value R - 1 can take on a line of
type 1 (resp. 2, -, C - 1), having a length 1 and a flow going through it (in absolute
value) R C is the highest type of capacity we can have on a given link. This means
that, if the flow increases once we have R - 1 = bi for a certain i, we have to change
the type of the line and use the type i + 1 instead to be able to convey the new flow.
In other words, with R the flow (in absolute value) that has to go through a line of
length 1, bi-
1
< R - 1 < bi means that the line will be of type i (R -1 < b1 means that
the line will be of type 1 and R -1 > bc- 1 means that the line will be of type C). In
the (1, R) plane, the curves "R = i" represent the boundaries between the different
types of line, as follows:
R
RI=b
3
RI=b
2
Rl=b1
Figure 2-7: Boundaries of the types of lines
Let come back to our optimization problem. We have to distinguish between the
cases "fR > 0" and "fR < 0".
For R c [0, R 3], we can enumerate the possible discontinuities (that is: the values
of the flow on a given link for which you have to take a higher capacity) as follows:
* 0 and R 3 , because they correspond to the cases the link from node 2 to node 3
(resp. the link from node 1 to node 3) does not exist: as soon as the value of R
is 0+ or R3 , we have to build the link and there is a discontinuity in the cost
71
"
for the link from node 1 to node 2: we consider the family of equations "(R2 +
R) - 112 = bi" for i =1,..., C - 1, i.e.
R =- bb -
R2
for i =1..C
112
As R is bounded by 0 and R3 , it is possible that not all these discontinuities
are encountered, we keep only the ones that are in our interval
" for the link from node 1 to node 3: we consider the family of equations "(R3 R) .
=
113
bi" for i
1,..., C - 1, i.e.
1
R = R3 -
fori
1,..., C - 1
113
Once again, as R is bounded by 0 and R 3 , it is possible that not all these
discontinuities are encountered, and we keep only the ones that are in our
interval
* for the link from node 2 to node 3: we consider the family of equations "fR -123
bi" for i = 1, ... , C - 1, i.e.
R = b for i= 1,...,C123
1
We can then order these discontinuities on the interval [0, R31.
Between two
consecutive discontinuities the cost of building the network remains constant as the
type of the links does not change.
Then we only need to pick the configuration
corresponding to the smallest cost (and then compare with the smallest value given
for R c [-R
2 , 0]).
An easy way to calculate the optimal cost of the network is given
below: on the (l, R) graph representing the limits between each type, we consider
the three possible lengths of links (1 12 ,
113
and l 23 ) and the range of the flows going
through them when R increases from 0 to R 3 (resp.: R 2 to R2+ R 3 , R 3 to 0 and 0 to
R 3 ).
This gives us vertical segments that intersect some boundary curves at one of
the discontinuity values given above. We number these points according to their order
72
on [0, R 3 ] and write the sequence of the capacities of the links required to provide
enough power to each node when R increases from 0 to R 3 . Then we can compare
the different sequences, knowing that if two sequences differ only by one number, the
sequence that has the smallest number will be the cheapest one (for instance, the
sequence "2-2-1", which means that the link from node 1 to node 2 (resp. I to 3,
2 to 3) has a capacity of type 2 (resp. 2, 1) will be cheaper than "2-3-1"). For the
remaining sequences, we have to write down the costs and make the calculation.
We now come back to the fact that all values of R between -R
2
and R 3 are not
admissible for a network with potential-driven flows. We need to have the difference
of potential along every edge less than a prespecified value (that we took equal to 1 in
the previous chapter, using the usual linear approximation of the sine). To calculate
the difference of potentials we use the same method as before and compute K-IR
(that actually gives us the sine of the difference of potential). Then we check that
the expressions are in the appropriate range.
Here k can be written as:
[F
12
-F
+ F2 3
-F23
23
F13 +F23
Finally, we find by using a linear approximation the condition:
F2 3 >
max(FU
2 R 3 , F 13 R 2 ) -F12F13
(F 12 + F1 3 ) - (R + R )
2
3
So we modify the calculation of the cost as follows: we add a new element to
the cost, the value of which will be 0 if the condition above is verified and M (with
M very big) if it is not. Then the procedure is complete.
We give an example to clarify this explanation. We consider here only 3 different
types of lines, with bi = 10 and b2
We have
112=
4, 113 = 5,
123=
20.
6 (in a given unit), and R2
73
=
1, R 3 = 7.
The values of the discontinuities between -R
2
and R 3 are, in increasing order:
-1.0
0
1.5
1.7
3.0
3.3
4.0
5.0
7.0
The corresponding succession of configurations (with R increasing from -R
2
to
R 3 ) is:
For the fully connected networks, we have to check whether the condition mentioned above to make the configuration admissible for potential-driven flows is satisfied. We keep only the cases where it is. (When an edge is of type 3, we take 100 as
the limit). We find all fully connected configurations admissible except 2-2-2.
By comparing the candidate configurations two by two, we obtain a reduced set
of possible optimums with their cost (ci denotes the cost per unit length for type i):
74
Configuration
0-3-1
1-3-0
Cost
5c3+6 ci
4c 1 +5c 3
2-2-3
9 c 2 +6c
3-0-3
10 c 3
3
Table 2.1: Possible optimums
We solve the problem for two different sets of costs per unit lengths:
Set of costs
Best configuration
Cost
Comments
c1 =1 c2 =2 c3 =5
cI=10 c2 =3 c3 =12
1-3-0
2-2-3
29
99
Tree
Fully connected network
Table 2.2: A tree and a fully connected network as optima
2.2.2
Limiting variations of the demand at the sink nodes
We look here into the consequences of significant variations in the requirements at
each load node around the values for which the network has been designed. We use
a static approach.
For a tree network
We consider only the case where the existing links are the links from node 1 to node
2, and from node 2 to node 3. Our conclusions can be easily extended to the other
types of trees in this network.
R 2 +R
3
In
R
I
Figure 2-8: Tree-network studied
75
If we note:
* F 1 2 and F 23 the maximum power flows the links (1, 2) and (2, 3) can transmit
in theory (that is, with a difference of node angles of 90deg),
* P 12 and P 23 the flows really transmitted by the network,
* 612
and 623 the differences in the node potentials,
we have the following relations:
P 12
=
F 12 sin 612
P 23
=
F23 sin 623
and we reach the saturation when we have:
R2 + R 3
= F12Sm
or
R3 = F23 sm
where sm is the maximum value sin 6 can take for thermal and dynamic reasons.
This gives us an admissible domain for (R 2 , R 3 ) as described in the two figures on the
next page, one for the case F 12 > F 23 and the other one for the case F 1 2 < F2 3 (the
admissible domain is hatched).
As the link from node 1 to node 2 carries more power than the link from node
2 to node 3, the assumption F 12 > F23 seems quite sensible.
For any (r 2 , r 3 ) E D, we can find 612 and 623 to have the correct flows going
through the network, they are:
arcsin
612
623
=
F
3
arcsin
Otherwise the network cannot supply the required power.
76
R
F s
12 m
F s
23 m
F 12'm
F s
21 m
.R2
k
F12 S
F
F
23
--F2s
12 m
,
R2
F23 >F1
12
Figure 2-9: Admissible domain
The saturation will be on link (1, 2) first if:
{
r
2
r2
>
(F 12 - F23)Sm
+ r3
=
F128m
The saturation will be on link (2, 3) first if:
{
0
r3
r2
=
<
(F 12 - F23)Sm
F23sm
For a fully connected network
R2+R
R 3 -R
0
2
R
R2
R3
Figure 2-10: Fully connected network
In this case, it is more difficult to predict which link is going to saturate when
the demands at the load nodes vary from their nominal values. We will try to answer
77
the following question: what are the (R 2 , R 3 ) "reachables" by the network (that is,
for which there exists
(612, 613, 623)
so that the required power flows are supplied at
the load nodes)?
We have the following relations:
{
=
F 12 sin612
=
R 2 +R
P 13 =
F 13 sin 613
=
R3 - R
P2 3 =
F23 sin623
P 12
with R c [-R2, R3] and 623 = 613
-
R
612
We can express R2 and R 3 as functions of 612 and 613 only:
{
R2
=
F 12 sin 612 - F 23 sin (613
- 612)
R3
=
F 13 sin 613 + F23 sin (613
-
612)
or, in a slightly simpler form:
{
=
F 12 sin 612 - F 23 sin (613
R2 + R3 =
-
612)
F12 sin 612 + F 13 sin 613
For the sake of the simplicity, we will note sin 6 ij "sij" and cos 6ij "cij" By writing
sin
(613 -
612)
as s 13 c 12
-
1 - sj (because the angles are always in
s 1 2 c1 3 , and cij =
[-90, 90]deg the cosine is always positive), we finally have:
(R 2 , R 3 ) = f (s 12 , 813)
or more precisely
R2
=
R2 + R3
As 0 < s13
<
Sm
F 12 S1 2
-
F 23 8 13
1 -
+ F 23 s 12
1
-S
3
F 12 S1 2 + F 13 s1 3
(the sine is positive because the flow comes from the generator),
78
we have, using the second relation:
0<
R2
+ R3
- F 12
Sm
12
F 13
i.e.
R 2 + R 3 - F13sm
R2 + R3
< 1
F12
F 12
but we have also 0< s12 < sm
+ Rw13 F12s12 in function of s12,
si3 being then given by the formula s13 = R2
we want only to solve in 812 the equation:
R 2 =F12s12
F23
-
1
(813
s12
-
-
1
S12
S3)
-
for:
max (0,
R2 + R 3
-
F13Sm
s12 < min
F 12
R 2 + R3
(sm,
F12)
After calculations, we find that this is equivalent to solving
f (s12)
=
0
with
= -R2+F12-sf (s) f~s)F
2 3 R 2 +R 3 -F
F(
F13
1
2 -s)v/I
- s2+ F23-S
1
-
( R 2+R
3
-F
12
S)
2
F 13
A straightforward derivation shows that for all s, ds > 0: f is monotonically
increasing.
Therefore, there exists a s12 solution (and (R 2 , R 3 ) are reachable by the system)
if and only if:
f (max
R2 + R3
(0,
-
F13Sm>
F 12
We can note that f(0) = -R
2 -
< 0 and
23-(R
79
2
f
(min
+ R 3)
so
R2 +
(sm,
f(0) < 0.
F12
R3
> 0
Therefore, the "boundaries of reachability" by the system are:
f
(R
2
+=
F
m)
F12
3
and f
0
s
RmRn
;> 0
F12
or
f
max 0, R 2 ±
3
-
F 12
3 Sm))
F
0
and f(sm )f
2
+R
F12
3
=0
Example
We use our former example, R 2
-
1, R 3
"2-2-3". Then F 12 = 5, F 1 3 = 4 and F2 3
=
=
7, in a fully connected configuration
33.
We obtain after calculations the following conditions of feasibility (with sm = 1):
f (0.8) < 0 and f (1) > 0
We have here: f(0.8) = -16.8 and f(1)
=
25.8, so the feasibility conditions are
verified.
We can also check this by using the approach developed in Chapter 1, with the
linearized model. The big difference in the formulations is that with the approach
that we have just developed, we do not need to linearize the equations in the power
systems context. We find:
1
61
-0.8454
7J
62
-0.94321
so no edge is saturated and we find again that these requirements are admissible, i.e.
reachable by the network.
If now for the same network we consider a change in the requirement at node 2,
R2
=
2, we obtain that the only possible value for s is 1, but f(1) = 3 # 0 so these
requirements are not admissible. With the other approach we find:
2
61
-0.9621
7
62
-1.0473
80
so, as
1621
> 1 the requirements are not admissible.
Therefore, the two formulations are consistent with each other.
We can also have a look at the boundaries for the reachable requirements given
by these two methods. For instance, if we fix R3 and have R2 vary, the method
developed in Chapter 1, that takes only into account the linearized model, shows
that the highest admissible value for R2 is around 1.545. But the method developed
in this chapter shows that the actual highest admissible value is 1.979. For instance,
for a R2 between
th tewo bounds (1.545 and 1.979), say, 1.8, we find with the first
method:
[1
F-0.9388
62
-1.0265
but with the second formulation we have
f (max (0,
R
-Fi
F 12
f (0.96) = -6.24
=2+
3 8m
and
f (min (sm, R 2 +R3
-
f (1)
=
13.50
and a straightforward dichotomy shows that s*2= 0.97.
It shows that the actual admissible domain for the requirements is bigger than
we would think by considering only the linearized model. This is due to the fact
that the linearized model overestimates the flows going through the edges (because
sin(x) < x) so we reach the saturation more easily in the linearized model. Therefore,
our results match the intuition.
2.3
2.3.1
Adding nodes to an already designed network
Adding a source node to our basic network
According to our assumptions, the source nodes are not limited in generation. Problems arise only if new sink nodes are so far away from the existing source nodes that
81
not enough flow can reach them (in the context of a resistive network). Therefore,
adding a new source node will occur only if the demand of a new sink node cannot
be met in the present configuration and the way we link a new source node to the
network depends a lot on where the problematic sink node is located and not only on
considerations of minimum cost. This explains why we will not go into further details
for that particular case.
2.3.2
Adding a sink node to our basic network
For each configuration of the network already built, we can adopt notations on the
flows so that the flow from node 2 to node 4 (the new node) will be x, the flow from
node 3 to node 4 will be y, and the flow from node 1 to node 4 is R 4
-
x - y, where
R 4 is the nominal requirement for node 4 (see the figure on next page). We assume
that x and y are positive (an extension to the case where they are not would be
straightforward) and we always have x + y < R 4 . This is equivalent to saying that
0 < x < R 4 and 0 < y < R 4
-
x.
So, no matter what configuration was formerly chosen for the network, our objective function is now:
f((R4
-
x
-
y) 1 14) - g(l
14
) + f(x 124)
- g(124)
+ f(y 134)
g(13 4 )
-
with f(0) = 0, which means that no line is built.
But the ranges of x and y, on which the minimization is to be done depend on
the former configuration of the network (without the new node), more precisely on
the capacities of the links already designed.
We will here solve the optimization problem without considering the capacities of
the links already designed, after finding the optimal solution we will check if the links
can support such flows and if not we will take the second, third, etc, best solution,
stopping when we have found admissible flows on all the already designed links.
On the admissible domain defined by (0 < x < R 4 , 0 < y < R 4
82
-
x), we draw the
R
R-X-Y
-Y
-X
R
2
+R +X+Y
2
3
R3+'
(
-
Y
/A
-x
R 3 +Y
3
+R+XX
-'-
R -X-Y
4
4-X-Y
R2+R+X
+R +X+Y
R22 +R3
x 3-
R
+X
R
2
Figure 2-11: Configurations with an additional node
boundary lines delimiting the different types of the links:
124
y
x+y
for Zi , ... , C
-
i
-
4
134
=R4 -
I
We obtain the following figure:
83
b
114
Y
R4
2-1-3
1-0-3
X+Y=R
0-1-3
1-1-3
4 - BI/L 14
1-1-2
2-0-342
34
022
122
2-0-2
2-3-2
2-2-2
2-1-2
1-3-2
-0-2
X+Y=R 4 - B2/B
2
0-3-2
14
/L34
34
2-1-1
0-
1-
3-1-0
2-3-1
2-2-1
3-1-1
3-2-0
3-2-1
2-3-0
\2-2-0
B /L
2
24
B1 / L24
1-3-0
X
R
4
Figure 2-12: Various possibilities for a 1-i 3-o network
We calculate then the cost associated to each combination and take the minimum. This minimum is associated with a certain range of values for x and y. If no
(x, y) in this range is admissible for the links already built in the network, we choose
the second optimal result and do the same verification.
The algorithm terminates when we find a range for which at least one (x, y) is
admissible.
2.3.3
Adding a node to any already designed network
We know that such a problem is NP-hard so the solution to any optimal algorithm
used for a network of arbitrary size cannot be implemented in a "reasonable" time.
Therefore, we will only give a few comments on the problem.
84
As we assume every time we add a sink node that its requirement can be met
by the existing generators, the case of adding a source node appears only, in our
formulation, jointly with the addition of sink nodes. In what follows, we will only
consider the addition of sink nodes. (As said in 2.3.1., if source nodes need to be
added, the minimum cost is only of secondary concern in the way we link the new
source node to the network.)
Let call n the number of nodes already included in the network. We want to
add a (n + 1)8t one, which is going to be a sink node. Therefore, there are n possible
links that can be build, and as the sum of the flows entering the new sink node must
be equal to its requirement Rn, we have n - 1 independent unknowns representing
the flows through the new edges.
The optimization problem can then be formulated as follows:
min f ((Rn+
n
n
)l,n+) ' 9(li,n+i) +
f (xili,n+1) 9(li,n+1)
-
i=2
i=2
L
X1
with:
0
x
2
<
Rn+1
0
x3
<
Rn+1 - x
2
0
x4
<
Rn+1 - x
2
o
x,
<
Rn+1 -
- x
3
+1 X,
We also have to add to these inequalities that, if m is the number of generators in
the network, the flow going to each generator to the new node is going to be positive
(a negative sign would mean that we sent too much power in the network and this
would not correspond to an optimal configuration in the design)
This gives us an admissible domain in R'- 1 , that we divide into smaller domains
of R'- 1 by introducing the boundaries delimiting the different types of lines, that is
nC+ 1 hyperplanes (there are n new possible links, each one of type 0 (not existing),
or 1,... , C. For each domain we compute the cost, choose the domain of minimum
85
cost, and then verify that there exist some values of the flows in this domain that can
be sustained by the links already designed in the network (because when we consider
a new link from an "old" sink node to the "new" sink node, the extra flow has still to
be supplied by a source node and to reach the "old" sink node). Of course, as soon
as n > 3 , all this requires a lot of computer calculations.
2.4
Comparison with a network designed in an single step
What we mean by "single step" is that we try to optimize the whole structure of the
network, and do not use the former procedure of adding one node at a time. This
should lead to the "true" optimal solution of the problem, and we would like to study
the differences between the two networks. Of course, as we know we cannot get the
explicit form of the optimal solutions for most networks, we can only compare the
results for small networks. We will compare the heuristic results with each other in
the next chapter.
2.4.1
Primary design of a 2 inputs, 2 outputs network
Figure 2-13: Primary design of a 2-i 2-o network
86
Result of the optimization
To keep notations similar to the ones we used before, nodes 1 and 4 are the source
nodes and nodes 2 and 3 are the sinks. With the assumption that the source nodes
are not limited in generation, we can actually suppress link (1, 4).
The optimization problem can therefore be written as follows:
min [f ((R 2 - x + y) 112)
9(112)
f (y 123) g(l 23 ) +
with x > 0, -R
2
< y < R3, z
>
+ f ((R 3
-
y - z) 113)
g(113)+
9(124) + f(z 134) - 9(134)]
f (x 124)
0.
(We have 3 independent unknowns because we have 5 edges and 2 node requirements)
The admissible domain is given by (using that the flow coming from generators
is positive):
x
> 0
z
>
0
x- y <
R2
y+z
R3
<
It is easy to see that these 4 relations delimit a tetrahedron. We divide it into
smaller polygons in R 3 according to the boundaries of each type of lines and find the
domain where the cost is cheapest. Once again, we have to check that this solution
is admissible.
Comparison with the design of the network obtained by the growth procedure
We call here growth procedure the process of adding a node (here, an input node) to
an already existing network.
A very simple example is given on the following page, with only one type of line,
small equirements compared to the capacities of the line, a cost per unit length equal
to 1 and the following lengths:
112=
4, 113
=
87
5,
123 =
6 and l2 4
=
2 (in a prespecified
unit).
3
3
2 4)
Design in
one
single step
Design by the growth procedure
COST=7
COST=9
(Node 4 is useless)
Figure 2-14: Comparison of the designs, example 1
2.4.2
Primary design of a 1 input, 3 outputs network
Result of the optimization
We have here six possible links and three node requirements, therefore we have 3
unknowns.
The notations are given in the following figure.
They are similar to
the ones used in the case of a 1 input, 3 outputs network obtained by the growth
procedure.
R
R
2
-X-Z
R 3 +Z-Y
+X+Y
u 2
Z
Y
Figure 2-15: Primary design of a 1-i 3-o network
88
x, y and z can be positive or negative. The admissible domain (using that the
flows coming from the generator are positive) is given by:
x +y
>
y-
z
< R3
x+ z
< R4
-R
2
In contrast with the 2 inputs, 2 outputs network, we have here only 3 inequalities:
the domain is not bounded. We rewrite the admissible domain as:
y -
R
x+y
>
-R2
<
z
<
3
R4 - x
We use the same kind of algorithm as before to find the optimal solution.
Comparison with the design of the network obtained by the growth procedure
We consider the very simple example below, with only one type of line and requirements very small compared to the capacities of the lines.
3
24
Design in one single step
Design by the growth procedure
COST=5.75
COST=6.70
Figure 2-16: Comparison of the designs, example 2
2.4.3
We have
n(n 2 1)
Primary design of a m inputs, n-m outputs network
2
possible links and n - m node requirements. Therefore, we have
(n-m - n(n-3)
+ m unknowns with (n - m)' relations of sign, and
89
-
1)
0+1
boundary hyperplanes. So we see the problem seems to get fairly
complex quickly. However, our algorithm seems to be an efficient way to solve the
problem as it uses the property that the set of possibilities is discrete. We should
implement something similar to the "0 if the requirements are reachable by a resistive
network and M otherwise" as we did above.
The reader will get an idea of the difference between a network designed in a
single step and a network designed by a growth procedure through the example below.
We consider one type of line to simplify and assume the requirements are very
small compared to the capacities of the line. The numbers of the nodes indicate their
order of appearance when the growth procedure is used. There is only one source
node.
5
5
6
7
7
2
2
4
3
4
3
11
Design in a single step
Design with the growth prncedure
Figure 2-17: Comparison of the designs, final example
90
2.5
Comments
The algorithm that we have presented here enables us to optimally design small
networks through an original geometrical technique that builds upon the discontinuity
values of the lines. But we have seen that the number of unknowns grows very rapidly,
and with it the duration of the required calculations. Therefore, we cannot extend
this algorithm to the design of a resistive network of any size, and in the next chapter
we will focus on heuristic procedures.
For similarly motivated work, but in the context of gas pipeline networks, see [3].
91
92
Chapter 3
Heuristic design of resistive
networks under the constraint of
minimum cost
In this chapter, after a brief introduction (Section 3.1), we give a new mathematical
formulation for the problem of heuristically designing resistive networks under the
constraint of minimum cost (Section 3.2). We then propose several heuristics (Section
3.3) and implement them on two examples (Sections 3.4 and 3.5). We end this chapter
with a few comments on the design of survivable networks in the resistive setting
(Section 3.6).
3.1
Generalities
Literature concerning the design of general (not resistive) networks abounds, for instance in the contexts of transportation planning, production planning, or design of
communication networks. We have already emphasized in previous sections the consequences of having in resistive networks independent unknowns at the nodes (the
potentials) and not at the edges (edge flows), which makes a capacitated power system even more difficult to design than a general network, although the design of a
general network is itself known to be NP-hard (see [4], [5]). Therefore, we content
93
ourselves with a very quick review of the literature.
The most important article has been written by Balakrishnan and Graves in 1989
(see [6]), which extends the case of the fixed-charge network design problem handled
by Balakrishnan, Magnanti and Wong in [7]. Balakrishnan and Graves consider a
minimum cost, multicommodity network flow problem where the total cost for each
arc is a piecewise linear, concave function of the total flow along the arc. They
formulate a mixed-integer program to find good lower bounds and heuristic solutions
for the problem, and solve it through a Lagrangean relaxation (more information
about Lagrangean relaxation can be found in [8] and [9]). Amiri and Pirkul built
upon this paper to develop a modified approach and extended the problem to the case
of piecewise nonlinear, concave-cost functions in [10]. Rios, Marianov and Gutierrez
gave in [11] a new approach which is a survivable discrete cost modified version of [10].
Generally speaking, the scheme found in the literature aims at generating both
good lower bounds and heuristic solutions through the following steps:
" formulate the problem as a mixed-integer program
" develop a Lagrangean relaxation
" improve the Lagrangean lower bound by iteratively adjusting the multipliers
and find initial solutions for a local improvement heuristic algorithm.
We will study the relevance of this approach while solving heuristically the design
problem in the context of resistive systems.
3.2
Mathematical formulation
The capacitated network design problem in resistive systems has the following formulation. Consider (V, E) a given graph where V is the set of nodes and E is the set
of the potential links to be installed. Let L be the set of load nodes (L C V) and R
be the set of the available capacities. We define for every node
equivalence relation:
i E C(j)
<
94
(ij)
E
j
the set C(j) by the
We want:
min
z
C
L2
(ij)EE rER
where Yi()23 is equal to 1 if range r is selected for edge (i, J) and 0 otherwise, and C 23
is the capacity of edge (i, J) if range r is selected,
under the constraints:
EC(j) ErER
Y()OM 23
- 1)
3
Yi) 16i - 6j I
ErER Yi
Yi()
i)(T Mr) sin(6i - 6j) = R
Vj E L
M<
sin(6j - 6j)l
Z3
V(i, j)
cE
V(i,j) E EVr c R
b
< 1
V(i, j) E E
V(i, j) E E, Vr E R
E {0, '}
The first constraint, stating that the requirements must be met at each load
node, is by far the hardest one.
The second one states that if type r is selected for a given edge, the flow going
through that edge is within the ranges for which type r is optimal (i.e. between
M
' and MQ ), otherwise a range inferior to r would have been selected. In the
case where the cost function is concave, Balakrishnan and Graves show in [6] that
this constraint is redundant with the other ones.
The third constraint takes into account the thermal and stability constraints
inherent to resistive systems.
The fourth constraint states that at most one type of line is chosen for every
edge.
And finally, the fifth one states the integrality of {Y>r}, which are decision
variables.
We obtain therefore a mixed-integer nonlinear programming, where one set of
unknowns, the
{4},
{Y },
indexed on the set of edges, are integer, and the other set, the
indexed on the set of nodes, are continuous.
95
3.3
Several possible heuristics
3.3.1
Using a Lagrangean relaxation
We try to adapt the formulation in [6], [10] and [11] to our problem by using a new
unknown:
= Yi|(6i - 6j)
X
But the unknowns are not independent, which makes impossible a splitting into
two minimization problems by using the linearity of the function. More precisely,
if we relax the second constraint which links X
and YT together, we obtain a
problem of the form:
min E E{[C
(ij) EE r ER --
+-
Mg)]Yr) - AMg sin X
Problem
1
1 1 1-o
N%
Problem 2
The whole interest of such a splitting lies in the ability of solving each problem
independently and edge by edge, under certain constraints. Problem 1 could be solved
edge by edge, but because of the requirements constraints at each intermediary node,
Problem 2 cannot be solved edge by edge.
A way to get around this obstacle could be to select for each (i, j) the range r
so that C
+ A Mr-l is minimum, where A is the Lagrangean multiplier, and try
to get as close to the requirements as possible. This raises the question of "how can
we get good Lagrangean multipliers?"
Another method using a Lagrangean relaxation would be to define the indicator
function I by:
0 if x = 0
I
and solve the following problem:
min
(ij)EE rER
96
if X 7 0
under the constraints:
zeC(j)
ZrER
sin(X j))
M
-
Rj
Vj E L
MTsir(X ))| V(i, j) E E
I(XZ3)M$- 1
V(i,j) E E,Vr c R
JX)|I< b
ErR-I(Xz))
V(i, j) E E
1
Then the relaxation of the first constraint can be written as:
Ci(X)
&
min
jEV i<j,iGC(j)
+ E pj(RjjEL
E
E M )sin(X)))
iEC(j) rCR
But this relation is not easy to use and by introducing X () we lost the relations
of the potentials on the loop, without making the problem more easily solvable.
The main reason for the problems that we encounter by trying to implement
the methods of [6], [10] and [11] is that we have unknowns and constraints on the
edges and on the nodes, which makes it impossible to solve subproblems for each edge
independently.
3.3.2
Using Minimum Spanning Trees
First idea
We want to order, for every edge, the different types of links according to a "fault"
criterion and then build a spanning tree where the length of an edge corresponds to
the range that minimizes the fault criterion. Therefore we have the choice between
building no edge or building the edge that has the most "merit" (having merit is
a combination of the cost of building the edge, its maximum capacity and the re-
quirements at its extremities, as explained in Subsection 1.4.2). Let note that, as the
source nodes are not limited in generation, we usually start by building several spanning trees (one source per tree) without linking them together. This creates clusters.
Once the spanning tree is built, we check whether the requirements are met. If they
are, the procedure is over, otherwise we have to add some of the edges we neglected
97
while building the tree. The implementation raises the following issues:
* the criterion to order the different ranges for a given link cannot be solely
(r) because with the assumption of the economy of scale, the highest type
Mij
will always have the highest merit and this will induce us to overdimension the
network
* if we choose a criterion that does not select systematically the highest type, we
are not sure that the requirements will ever be met, even if we have to add all
the edges that we had neglected while building the spanning tree.
Therefore, we propose now a modified version of the algorithm.
Final algorithm
Step 1 Assignment of the smallest range we consider for the edges: we associate to
edge (i,j) the range r so that M 11 < f(i, j) < M[' where f(i, j) is a function
that roughly approximates the flow that will go through this edge as a function
of the requirements if this edge is built. We have:
f (z, J)
a max(Ri, Rj)
if max (R , Rj) # 0
b maxi(Ri)
if max(R , Rj) = 0 and i f s
c maxi (Ri)
if max(R , Rj)
=0 and i
s
Step 2 Assignment of the "faultness" for every edge: several criteria can be used.
In what follows, we consider that CD and MD can be written as: C
and MD =
= C,
(the cost increases with the length, and the maximum flow
transmitted by the network decreases with the length. We assume this relation
of dependency to be linear) We list the criteria below and give some reasons
for the use of these criteria. f(i, j) was defined above. g(i, j) is IRi - RjI(R1 +
Rj)/2 + 0.01 (because we are interested in keeping edges with exactly one high
requirement at its extremities)
98
Criteria
Cr.
Reasons
12
ratio cost-over-max capacity (COMC):
the most obvious criterion
Mr
m
.N
f(ij)
COMC giving an advantage to the edges
where we expect big flows
jS. .
mijg9(i A)
COMC taking into account that
the removal of edges between nodes with big requirements
often increases the max flow
Table 3.1: Possible criteria to quantify the interest in building the edges
Step 3 Computation of the minimum spanning trees: we obtain one cluster per
generator
Step 4 Checking procedure of the fulfilment of the demand: are all requirements
met? if no, what is the closest admissible configuration we can obtain? which
nodes are not supplied with enough power?
Step 5 (Iteration) Addition of new edges or increase of the range of already existing edges until all requirements are met. Again, we have a lot of possibilities
to choose these edges. The general rule encompassing all these possibilities is:
"pick, among the edges that we have not built yet and that could help meeting
the requirements if they were added, the one that has the smallest fault coefficient, or increase the range of a well-chosen edge among those already built depending on some criterion". Four things have then to be determined: how do
we measure the impact the addition of a new edge can have, the way we choose
which edge shouldhave its range increased, by how much we will increase this
range, and finally the criterion we should take. To simplify the problem, we decide we will increase the range one level at a time, and for oversaturated edges
only. So only two parts of the procedure must still be fixed. The criterion has of
course something to do with the cheapest possibility but we should bear in mind
that in the context of potential-driven flows, adding edges adds constraints so
we do not wish to add too many edges. We give the general procedure below:
99
General idea: We determine the most oversaturated edge, defined by arg maxK-1 RI
and identify its terminal extremity (i.e. the node towards which it points). Then
we compare between adding another edge pointing to this node (if some remain
to be built) and increasing the range of the oversaturated edge.
Details: The comparison criterion can consist solely of the cost, but we can also
choose to consider a criterion of the type totoa
argin, where the total margin
is defined to be the sum over all edges of the difference between the capacity
of the edge and the flow going through it, especially if we expect that we will
still be far away from meeting the requirements at the next step. Besides, if
you cannot add edges any more around the terminal node of the oversaturated
edge, we can trace in some sense where most of the flow goes and try to add
edges on its path.
Another possibility is to add the edge with the smallest "fault" level, without
taking into account its position in the network.
3.4
First example
We consider the following example, and apply the different versions of the algorithm
to study the variablility of the design. The lines represent potential edges to be built.
The numbers next to the edges indicate their length. Node 1 is the generator. All
the other nodes are load nodes. There are only 2 types of ranges for the edges to be
built.
100
6.9
3.4
5.5
7.4
5.6
3.3
9.1
7.0
4.2
4.4
6.4
Figure 3-1: First example
The numerical values of the parameters are:
R=[2; 3;1;2; 2; 1];
m1=20; m2=40;
c1=1; c2=1.5;
a=1.5;
%b and c unfixed as they do not intervene here
The results of the algorithm are:
Edge
(1,2)
Starting range
1
Edge
(1,3)
Starting range
2
(2,3)
2
(1,4)
1
(2,4)
(1,7)
(1,5)
(6,7)
1
1
2
1
(4,5)
(3,7)
(5,7)
(5,6)
2
2
1
1
Table 3.2: Results of the initialization step
Initialization step: assignment of the smallest value we consider for the ranges
101
Minimum spanning trees Criterion 1 The minimum spanning tree is:
1©
CD
GD
Figure 3-2: MST, Criterion 1
The corresponding load node angles are:
-0.3400
-0.4125
-0.9900
-1.8650
-2.9350
-2.4950
No edge is oversaturated. The constraints are respected and the requirements are met. The problem is solved.
Criterion 2 The minimum spanning tree is:
Figure 3-3: MST, Criterion 2
102
The corresponding sink potentials are:
-0.3400
-1.1000
6=
-0.1650
-2.4450
-2.4650
-2.0250
Edge (1, 3) is saturated. It is an edge of type 2. Node 3 has only one
outgoing edge, which is (3, 7).
Among the potential edges to be built
around node 3, only edge (2, 3) has not been built so far. Therefore we have
the choice between adding edge (2, 3) (of type 2, given our initialization
step) or adding edge (1, 7) (of type 1).
If we add edge (2, 3) (of type 2), a straightforward computation similar to
the ones above shows that edges (1, 2) and (1, 3) are oversaturated.
If we add edge (1, 7) (of type 1), edge (1, 7) is oversaturated.
As edge (1, 7) is not of the maximal range yet and as we know that in
the context of resistive networks, adding edges adds constraints as well as
(sometimes) capacity, and therefore can do more harm than good, we give
the priority to the testing of the solution with edge (1, 7) of type 2 (this is
a general rule we will maintain throughout the algorithm).
With edge (1, 7) of type 2, no edge is oversaturated and the requirements
are met. The problem is solved.
103
Criterion 3 The minimum spanning tree is:
Figure 3-4: MST, Criterion 3
The corresponding sink potentials are:
-1.3600
-0.4125
-3.0400
-3.9150
-4.9850
-4.5450
Edges (1, 2) and (2, 4) are oversaturated. They are both of type 1. Around
node 2, edge (2, 3) is the only edge that remains to be built. Around node
4, edge (1, 4) is the only edge that remains to be built.
We increase the range of edge (1, 2) (to type 2): edge (2, 4) remains oversaturated. We increase the range of edge (2, 4) (to type 2): this time no
edge is oversaturated and the requirements are met. The problem is solved.
We can notice that we would have also reached a solution by adding edge
(2, 3) of type 2: then edge (1, 2) remains oversaturated, therefore we increase its type to type 2. Edge (2, 4) is then oversaturated, therefore we
increase its type to type 2. Then no edge is oversaturated and the requirements are met. Let note that this corresponds to the solution we have
just found, with in addition edge (2, 3). So the first solution (obtained by
104
increasing the type of both (1, 2) and (2, 4) directly) is strictly better.
Finally, we obtain the following solutions (the numbers above the edges indicate
their type):
1©
CGD
Figure 3-5: Final solution, Criterion 1
Criterion 1 Cost=34.05
22
2
(:
1Q
G)GQ
Figure 3-6: Final solution, Criterion 2
Criterion 2 Cost=48.30
105
©
1
©
1
G©
Figure 3-7: Final solution, Criterion 3
Criterion 3 Cost=40.85
There is a 42% increase in the cost between cases 1 and 2, and there is a 20%
increase in the cost between cases 1 and 3. This shows the importance of picking the
right minimum spanning tree to start the algorithm with.
3.5
Second example
We consider now a network with 20 nodes: 3 generators and 17 load nodes. The
generators are nodes 5, 8 and 10.
The location of the 20 nodes has been chosen
randomly over the square (0, 20)X(0, 20) and is given in the following table, with the
requirements ('-' indicates a generator).
106
Node
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Coordinates
(19.00,4.62)
(12.14,9.72)
(9.13,0.37)
(9.13,0.37)
(16.43,8.89)
(12.31,15.84)
(18.44,14.76)
(3.53,8.11)
(18.71,18.34)
(8.21,17.87)
(1.16,7.06)
(16.26,0.20)
(2.78,4.06)
(3.97,12.08)
(5.44,3.98)
(0.31,14.94)
(8.90,18.64)
(9.32,8.37)
(16.92,10.50)
(4.05,13.44)
Requirement
3
2
0
5
1
2
4
1
1
3
3
4
2
2
2
2
5
Table 3.3: Positions of the nodes
107
The nodes and the potential links are represented in the following figure (the
generators are circled).
177
141
202
14
139
181
12
4
Figure 3-8: Second example
We consider 3 possible types of ranges.
Range
1
2
3
Power transmitted m
10
25
50
Cost per unit length c
1
2
3
Table 3.4: Parameters
The initial ranges we consider to start the algorithm are (let note again that
among the coefficients a, b and c only a intervenes here as a scale factor so we actually
do not even need to specify its value):
(1,5):
2
(1,7):
3
(1,12):
2
(1,18):
3
(1,19):
2
(2,5):
1
(2,6):
2
(2,10):
2
(2,18):
1
(2,19):
1
(3,6):
1
(3,7):
1
(3,9):
2
(3,19):
1
(4,12):
3
(4,13):
3
(4,15):
3
(4,18):
3
(5,18):
2
(5,19):
1
(6,9):
3
(6,10):
1
(6,17):
1
(6,19):
2
108
(7,9):
2
(7,19):
1
(8,11):
1
(8,13):
2
(8,14):
2
(8,15):
(9,17):
3
(10,16)
2
(10,17)
1
(10,18):
2
(10,20): 3
(11,13)
2
(11,16)
2
(12,18)
2
(13,15)
2
(14,16)
2
(14,18):
2
(15,18)
2
(16,17)
2
(16,20):
2
(18,20)
3
2
(8,18):
2
(14,20): 1
Criterion 1 The requirements are not feasible with the minimum spanning tree. As
said before, it is usually better to try, when possible, to improve the capacity
of the oversaturated edge before adding another edge. In our starting configuration, 4 edges are oversaturated: (5, 19) of type 1, (7,19) of type 1, (8, 11) of
type 1 and (8,14) of type 2. (Let note that these three edges have all a generator at one of their extremities). However, by increasing the ranges to types,
respectively, 2, 3, 3 and 3, the requirements become feasible. We have therefore
found an admissible solution. The cost is: 117, 68.
09
7
20
14
19
2
2
1
33
2
12
Figure 3-9: Final solution, Criterion 1
109
Criterion 2 The requirements are not feasible with the minimum spanning tree. 4
edges are oversaturated: (6,17) of type 1, (8,14) of type 2, (8,15) of type 2,
(4,15) of type 3. When the type of the first three edges is changed to type 3,
these edges are not saturated any more. However, (4,15) is of the maximum
type. It should carry 10 and is able to carry only 9.70. If we decide carrying
only 9.70 is enough (for instance because there are some uncertainties about the
true value of the requirements, and bringing 9.70 could be enough), the problem
is solved. The cost of this "almost admissible" network will be: 165.00
If we decide it is not enough, we add another edge.
(4,13) is the only edge
towards 4 not built yet. Its range is 3. After calculations, we find it makes
things even worse so we do not build it.
We are then led to consider intercluster links still to be built and relevant to
our problem (i.e. linked with the problematic half-cluster around node 8). The
possible intercluster links are: (2, 5), (2, 19), (1, 12), (10, 18), (2, 10). According
to our ranking criterion, the "best" edge is (1, 12). Its range is 2.
When we add this edge, the requirements are not feasible. We increase then
the range of (1, 12) to type 3, and after calculations we also increase the type of
(1, 5) to type 3. In that case we fall short of meeting the requirements by having
(8,15) oversaturated by 0.01 (which is much better than 0.30 in the previous
case). If we decide this is an acceptable result, the problem is solved. The cost
of this second "almost admissible network" is 185.60.
Otherwise we have to continue. The next intercluster link we can build is (2, 5),
of type 1 (in the purpose of using (4,18) to bring power to 4 instead of bringing
power to 18). This time the situation is even worse. This illustrates the fact
that in a network with potential-driven flows, we are not sure to reach the
requirements by adding edges. We stop there and keep the second "admissible
network". The cost is: 185.60.
110
167
20
13
19
133
4
3
| 1
Figure 3-10: Final solution, almost admissible network only, Criterion 2
Criterion 3 The requirements are not feasible with the minimum spanning tree. 3
edges are oversaturated: (8,15) of type 2, (9, 17) and (17, 20) of type 3. We
increase the type of (8,15) to type 3 but (8,15) remains oversaturated.
We add (8,11). (8, 15) is not oversaturated any more.
To try to "unsaturate" (10, 20), we add (10,16) (the edge with 10 as extremity
that has the lowest ranking value among the possible edges), of type 2. The
requirements are still not met. We change the type of (10,16) to type 3. The
requirements are still not met. Instead of adding (10, 16), we try then to add
(10,18), of type 2. Again, the requirements are not met. We increase then the
type of (10, 18) to type 3. This time (10, 20) is not oversaturated any more.
To try to "unsaturate" (9, 17), we build (6, 17) of type 1. Then (9, 17) is not
oversaturated any more. The cost is: 204.11.
111
17
1
16
7
20
3
19
is
F0
Figure 3-11: Final solution, Criterion 3
Comments At this stage, the reader will be convinced that, when the algorithm
cannot remove edges but can only change the range of existing edges or add
new ones, the way the edges are ordered to build the minimum spanning tree
to start the algorithm with is of the utmost importance in terms of duration
of the computations and of the final cost. The best choice seems so far to
"keep it simple" and order the edges on a "cost-over-power" ratio. We can also
notice that we had many times to increase the type of the edges linked with the
source nodes. This is due to the fact that our rough approximation of the flow
is probably too much an underestimation of the situation for these edges. We
should estimate the flow on these edges by an expression such as a' maxi Ri,
rather than a Ri.
3.6
Comments on the design of a resistive survivable network
A legitimate concern when a network is designed is to make sure it will be able to resist
some failures. Such a network is called a "survivable network", although survivability
can take many definitions: sometimes for instance you want the requirements still to
be met despite exactly one (random) edge-failure, in other cases you impose the
112
existence of at least 2 edge-disjoint paths from a source node to any sink nodes.
The reader interested in survivability for general networks will find many interesting
methods, for instance the cutting-plane algorithm, detailed in [12] and [13].
However, in the context of capacitated networks with potential-driven flows,
ensuring survivability may not benefit to the network because adding many edges
will, as we have seen many times, add constraints to the network. The performance
of the network can be strongly decreased, and we often notice that power networks,
for instance, are not designed with a strong emphasis on survivability. Therefore,
resistive networks seem to be a type of networks for which survivability should not
be the primary concern during the design procedure.
113
114
Conclusions
This research provides a better understanding of resistive networks in terms of the distribution of the flows that go through the system, and of the edges that are saturated
when the flow at a given node is maximum. It also highlights several counterintuitive behaviors of networks with potential-driven flows, such as the increase of the
maximum flow when a well-chosen edge is removed, or the fact that requirements
that are infeasible when a certain edge is removed become feasible again when an
additional one is removed, whereas you would have expected that the removal of an
edge would always make the situation worse. This is of particular importance in the
context of power systems, where we have been confronted with several widespread
cascade failures during the past years, highlighting the need for better knowledge of
such properties.
The insight we have thus gained into resistive networks enables us to develop
efficient heuristics when the size of the network starts making the calculations for the
optimal solution to the problem intractable. These heuristics represent an original
approach to the capacitated network design problem in the context of power systems,
and more generally to the characteristics of networks with potential-driven flows.
115
116
Bibliography
[1] L.R.Ford, Jr, D.R.Fulkerson, Flows in Networks, Princeton University Press,
1962
[2] A.R.Bergen, V.Vittal, Power Systems Analysis, 2nd ed., Prentice-Hall, 2000
[3] S.Bhaskaran, F.J.M.Salzborn, Optimal design of gas pipeline networks, Journal
of the OperationalResearch Society 12: 1047-60, 1979
[4] D.S.Johnson, J.K.Lenstra, A.H.G. Rinnoy Kan, The complexity of the network
design problem, Networks 8: 279-285, 1978
[5] F.Cruz, J MacGregor Smith, G.Mateus, Solving to optimality the uncapacitated
fixed-charge network flow problem, Comput and Ops Res 25: 67-81, 1998
[6] A.Balakrishnan, S.Graves, A composite algorithm for a concave-cost network
flow problem, Networks 19: 175-202, 1989
[7] A.Balakrishnan, T.L.Magnanti, R.T.Wong, A dual-ascent procedure for largescale uncapacitated network design, Operations Research 37: 716-740, 1989
[8] A.M. Geoffrion, Lagrangean relaxation for integer programming, Mathematical
Programming Study 2: 82-114, 1974
[9] M.S.Bazaraa, J.J.Goode, A survey of various tactics for generating Lagrangian
multipliers in the context of Lagrangian duality, European Journal of Operational
Research 3: 322-338, 1979
117
[10] A.Amiri, H.Pirkul, New formulation and relaxation to solve a concave-cost network flow problem, Journal of the Operational Research Society 48: 278-287,
1997
[11] M.Rios, V.Marianov, M.Gutierrez, Survivable capacitated network design problem: new formulation and Lagrangean relaxation, Journal of the Operational
Research Society 51: 574-582, 2000
[12] R.Bhandari, Survivable Networks: Algorithms for Diverse Routing, Kluwer Academic Publishers, 1999
[13] M.Stoer, Design of Survivable Networks, Lecture notes in Mathematics 1531,
Springer-Verlag, 1991
118
Download