• Keine Ergebnisse gefunden

The stochastic problem that follows the normally distributed approach is defined as follows:

Definition 4.1 (Stochastic Rooted Delay-Constrained Steiner Tree (SRDCST) Problem) We are given a graph G = (V, E), a delay bound B ∈ Nand a quantile up ∈ Q. The set

G0(r,t)is thep-quantile of this path. The task is to find a feasible solution with minimal weight

wG0 = X

e∈E0

we. (4.6)

Definition 4.2 The α-SRDCST problem is a special case of the SRDCST problem, where a constantα∈Q,0< α <1, exists such thatdˇe=α·de,∀e∈E.

Figure 3.1 does not only fit to the 0.5-RRDCST problem, but it shows also an instance of the 0.5-SRDCST and an optimal solution to it withup = 1. The calculated delays of the three paths are then slightly different. For a pathPi toti we get the following values:

dpP

It is not a rare case that the RRDCST and the SRDCST problem have the same optimal solutions for an instance withdˇe = ˆde,∀e ∈E, a fixed value ofΓand someup ≤Γ. But that does not mean that the two problems are interchangeable which will be demonstrated in Section 7.3.

4.3 Formulations

This section is about ILP formulations of the SRDCST problem. Surprisingly, the differences in the formulations between the robust and the stochastic RDCST are except for Section 4.3.1 only marginal.

4.3.1 Multi Commodity Flow

For the SRDCST problem a MCF formulation with quadratic constraints can be given with (4.7), (4.8) and the previously introduced constraints (3.7)–(3.13).

min X

However, such a formulation is clearly not as attractive as the MCF formulation from Sec-tion 3.2.1, because current solvers can’t solve it as efficiently as a linear program.

4.3.2 Path-Cut

For the SRDCST problem there are only small differences to Section 3.2.2. The setPinfcontains a node sequence ifdpP > B for the corresponding edge setP. This affects only the path cuts of the branch-and-cut algorithm. The feasibility check has to verify if a path violates a delay constraint (4.5). This has no further effect on the separation method for both LP and ILP results.

4.3.3 Layered Graph

As in the path-cut formulationPinf describes a different set as in Section 3.2.3. This affects not only the path cuts, but also the number of layers.

For the SRDCST problem it may not be enough to stop at layerB, because the parameterup is allowed to take negative values. It is defined in Section 4.1 that for a feasible pathP it has to hold that

We are now looking for an upper bound fordP for an arbitrary path. For every edgeethere is aβe,0< βe<1, withdˇee·de. We defineβminas the minimal andβmaxas the maximal factor for all edges.

The edge setsEhandEsare used to calculate a lower bound for the delay variation of a path with a high total delay. The setEhis used for good cases and constructed the following way

1. Ehis empty.

2. The edgeewith the highest standard deviationdˇeis taken fromE\Eh. Its expected delay is decreased to βdˇe

max and it is added toEh. 3. IfdpE

h < B, it is continued with 2.

The setEsis used for bad cases and constructed with the following steps:

1. Esis empty.

34

2. The edgee with the smallest standard deviationdˇe is taken from E\Es. Its expected delay is increased to βdˇe

min. 3. IfdpE

s∪{e}≤B,eis added toEsand it is continued with 2.

Then we distinguish two cases. Like for the RRDCST problem the two sets can be used to describe the upper bounds. Forup<0we get

L1 =bB−up· s

X

e∈Eh

2ec (4.9)

for the last layer in the layered graph that has to be considered. Similarly we get the bound L2=bB−up· not necessary but increases the performance.

Theorem 4.1 For a given instance of the SRDCST problem we have:

1. L1is an upper bound fordP of every feasible pathP ifup <0 2. L2is an upper bound fordP of every feasible pathP ifup ≥0

Due to the comparison with the robust approach this thesis focuses more on bad cases and therefore we will prove only the second part of Theorem 4.1.

Proof. Let us assume to the contrary that a feasible pathP with dP > L2 exists. Since dP has to be integer, it has to hold that dP > B −up ·

Letf be the edge with the highest standard deviation inEs. We can subtract all common terms from both sum of squares which excludes the edges fromP ∩Es. This leaves only edges with a standard deviation of at leastdˇf in the sum of squares ofP.

If the sum of squares of the larger values is smaller, then this has also to hold for the sum of the values.

Then, an upper bound ofdP can be determined which contradicts the assumption.

dP ≤X

CHAPTER 5

Preprocessing

In complexity theory the runtime of an algorithm is always determined with respect to the size of the instance. The size is usually defined as the length in bits which is needed to encode the instance. More fine-grained runtime analyses on graphs often define the size of a graph as the number of its nodes or edges. This is mainly done if it is a goal to determine differences between sparse and dense graphs in the runtime complexity. We know that the higher the complexity, the higher the difference in the runtime for two similar instance sizes. This already motivates a preprocessing step. If it is possible to reduce the number of edges of the instance without a high computational effort, the worst-case runtime will be reduced even to a higher extent which should also decrease the actual runtime. But it should also be noted that the actual runtime of a program also depends on the structure of the whole instance. A good example for this dependence is the quicksort algorithm [28]. There are two different terms for the complexity, one for the average and one for the worst case. The actual runtime then depends not only on the instance size, but also on the value of the pivot elements. This means that if an element of the list is deleted, the choice of the pivot elements may be worse for the shorter list. The impact on the runtime can be hard to predict, though a drastic increase is rather unlikely. Similarly it could be argued for the RDCST problem that a preprocessing may only delete edges which would have a very small impact on the actual runtime of a program. So it can be said that a fast preprocessing should either decrease the overall runtime, maybe even drastically, or have no great impact on it.

It depends largely on the instance how many parts of the graph are not needed to find at least one optimal solution. Especially properties like density of the graph, the number of valid triangle inequalities and the delay bound have a great influence. The preprocessing for the RDCST problem was already discussed in [44].

5.1 Comparison with Paths

If there is an edge{u, v}and a pathP(u, v)⊆E\ {{u, v}}with smaller or equal weight and for all cases also smaller or equal delay, the edge can be safely deleted. Then there is no reason

to prefer the edge over the path, and thus it will be still possible to find an optimal solution. The rule will be applicable more often if the triangle inequality does not hold for the weights and edge delays of the instance. But even otherwise it may be possible to delete edges with this rule.

Let us consider the simpler case where the triangle inequality holds only for the weights. This means thatwuv≤wP(u,v), so it is still possible that both are equal.

For the deterministic problem there is only condition (5.1) to verify before deleting an edge.

This preprocessing step is more difficult for the RRDCST and the SRDCST problem and there are again some differences between them.

RRDCST Let us assume that there is a pathP in a solution of the RRDCST problem. This path contains a subpathPru fromr tou and a subpathPvt from vto a terminal nodet. The remaining part fromutoveither consists of the edge{u, v}or the pathP(u, v). Let us further assume that for both possibilities the highestdΓevalues of the delay variations lie inPru∪Pvt. Then the part betweenuandvwould not influence the additional delay dˆΓP. This gives us the result that we still have to check the expected delays with condition (5.1).

Let us consider another scenario next where the path P only consists of either {u, v} or P(u, v), becauseu=randvis a terminal node. This means that condition (5.2) would have to be checked.

duv+ min(1,Γ)·dˆuv≥ X

e∈P(u,v)

de+ ˆdΓP(u,v) (5.2)

These are only two possible scenarios, but it is sufficient to check only conditions (5.1) and (5.2).

Theorem 5.1 An edge{u, v}cannot be part of every optimal solution of a given instance of the RRDCST problem if (5.1)and(5.2)holds.

Proof. Let us consider an arbitrary pathP2fromrto a terminal nodetwhich containsP(u, v).

We define the edge setF =P2\P(u, v)and pathP1=F ∪ {{u, v}}. We have

By subtracting the common term we get 38

duv+ ˆdΓP1 ≥ X

1, (5.2) implies (5.3). So we assume that such a delay variationdˆeexists.

Since the highestdΓe −1delay variations fromF influencedˆΓP1, there can be at most one such edge. As a consequence, no delay variation fromP(u, v)can influencedˆΓP

2. Butdˆe

It can be observed, that for theα-RRDCST problem condition (5.1) implies condition (5.2).

This can be shown the following way:

duv≥ X

The first implication follows directly from the definition of the factorα. For the second implication there are two different cases. ForΓ<1there can only be one edge where the delay variation is counted. But the delay variation of one edge in the path cannot be larger thandˆuv. ForΓ≥1we would already consider the worst case for the path only consisting of edge{u, v}.

This cannot be smaller than the worst case for P(u, v) which corresponds to Γ ≥ |P(u, v)|.

Thus only (5.1) has to be checked for theα-RRDCST problem.

SRDCST We will again consider the two extreme cases but now for the SRDCST problem.

Let us assume that there occurs a pathP in a solution. This path contains a subpathPru from r to uand a subpathPvt fromv to a terminal nodet. The remaining part from u tov either consists of the edge{u, v}or the pathP(u, v). Let us further assume that there is an edge in Pru∪Pvtwith a much higher standard deviation than all edges in{u, v} ∪P(u, v). The standard

deviations of the part betweenuandvcould have an arbitrarily small impact ondpP. This gives us the result that we still have to check the expected delays with condition (5.1).

In the other scenario the pathPonly consists of either{u, v}orP(u, v), becauseu=rand vis a terminal node. This means that condition (5.4) would have to be checked.

duv+up·dˇuv ≥dP(u,v)+up·

s X

e∈P(u,v)

2e (5.4)

Similarly as for the RRDCST problem it can be shown that it is sufficient to check these two conditions.

Theorem 5.2 An edge{u, v}cannot be part of every optimal solution of a given instance of the SRDCST problem if (5.1)and(5.4)holds.

Proof. Let us consider an arbitrary pathP2fromrto a terminal nodetwhich containsP(u, v).

We define the edge setF =P2\P(u, v)and pathP1=F ∪ {{u, v}}. We have

We assume that conditions (5.1) and (5.4) hold. We have to show thatdpP

1 ≥ dpP

2 follows.

By subtracting the common term we get (5.5).

duv+up·

This can also we written as duv+up·

Sincec0≥0, the difference of the standard deviations can only decrease for the longer paths.

But this means that inequality (5.7) implies (5.6), sincec≥0.

Thus, (5.1)∧(5.4) implies (5.5).

Furthermore, it can be observed, that for the α-SRDCST problem with up ≥ 0 condi-tion (5.1) implies condicondi-tion (5.4). So for this special case of the problem, only (5.1) has to be checked.

5.1.1 Computational Issues

The paths which are used in the comparison can be found by solving a resource constrained shortest path problem. But this is known to be N P-hard already for the deterministic case.

There are pseudo-polynomial algorithms which could be used to find paths for the RDCST and the RRDCST problem, but for the SRDCST problem there may be no such algorithm.

The preprocessing should not be very time consuming. It is desirable that the sum of processing and optimization time is smaller than the time needed for optimization, if the pre-processing phase is skipped. The comparison can be accelerated by only considering paths of length two. This could be done in polynomial time by iterating over all triangles in the graph.