04.02.2015 Views

Stochastic Programming - Index of

Stochastic Programming - Index of

Stochastic Programming - Index of

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

NETWORK PROBLEMS 283<br />

then we do not need any <strong>of</strong> the inequalities is fairly obvious. The other part <strong>of</strong><br />

the proposition is much harder to prove, namely that if G(Y )andG(N \Y )<br />

are both connected then the inequalities corresponding to Y and N\Y are<br />

both needed. We shall not try to outline the pro<strong>of</strong> here.<br />

Proposition 6.2 might not seem very useful. A straightforward use could<br />

still require the enumeration <strong>of</strong> all subsets <strong>of</strong> N , and for each such subset<br />

achecktoseeifG(Y )andG(N \Y ) are both connected. However, we can<br />

obtain more than that.<br />

The first important observation is that the result refers to the connectedness<br />

<strong>of</strong> two networks—both the one generated by Y and the one generated by N\Y .<br />

Let Y 1 = N\Y . If both networks are connected, we have two inequalities that<br />

we need, namely<br />

b(Y ) T β ≤ a(Q + ) T γ<br />

and<br />

b(Y 1 ) T β = b(N \Y ) T β ≤ a(Q − ) T γ.<br />

On the other hand, if at least one <strong>of</strong> the networks is disconnected, neither<br />

inequality will be needed. Therefore, checking each subset <strong>of</strong> N means doing<br />

twice as much work as needed. If we are considering Y and discover that both<br />

G(Y )andG(Y 1 = N\Y ) are connected, we write down both inequalities at<br />

the same time. An easy way to achieve this is to disregard some node (say<br />

node n) from consideration in a full enumeration. This way, we will achieve<br />

n ∈N\Y for all Y we investigate. Then for each cut where the connectedness<br />

requirement is satisfied we write down two inequalities. This will halve the<br />

number <strong>of</strong> subsets to be checked.<br />

In some cases it is possible to reduce the complexity <strong>of</strong> a calculation by<br />

collapsing nodes. By this, we understand the process <strong>of</strong> replacing a set <strong>of</strong><br />

nodes by one new node. Any other node that had an arc to or from one <strong>of</strong><br />

the collapsed nodes will afterwards have an arc to or from the new node: one<br />

for each original arc. If Y is a set <strong>of</strong> nodes, we let A(Y )betheset<strong>of</strong>original<br />

nodes represented by the present node set Y as a result <strong>of</strong> collapsing.<br />

To simplify statements later on we shall also need a way to simply state<br />

which inequalities we want to write down. An algorithm for the capacitated<br />

case is given in Figure 4.<br />

Note that we allow the procedure to be called with Y = ∅. This is a<br />

technical devise to ensure consistent results, but you should not let that<br />

confuse you at the present time. Based on Proposition 6.2, it is possible to<br />

develop procedures that in some cases circumvent the exponential complexity<br />

arising from checking all subsets <strong>of</strong> N . We shall use Figure 5 to illustrate some<br />

<strong>of</strong> our points.<br />

Proposition 6.3 If B + (i)∪F + (i) ={i, j} then nodes i and j can be collapsed<br />

after the inequalities generated by CreateIneq({i}) have been created.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!