An Addendum on Postoptimality of Maximally Reliable Path

This paper studies one aspect of the robustness of optimal solutions to the maximally reliable path and investigates the infimum and supremum multiplicative perturbations each individual arc can tolerate preserving the optimality of a given optimal path. When such marginal values are to be determined simultaneously for all arcs in a network, considerable duplication of effort can be avoided through the use of our proposed approach.


Introduction
Path finding problems have many applications in various domains of engineering and operations research, such as transportation, traffic cybernetics, disaster management, message routing in communication systems, and production-distribution systems (Ahuja et al, 1993;Hosseini et al, 2014Hosseini et al, , 2016;;Hosseini, 2015;Ji et al, 2011;Ma et al, 2008;Petrovic and Jovanovic, 1979;Xing and Zhou, 2011).In network optimization, the maximally reliable path (MRP) problem asks for the least risky path from a source node s to a sink node t, where each arc has some fixed probability of operationality.The standard reliability problem is one of the essential topics in communication-telecommunication systems, traffic cybernetics, and control theory.For example, in traffic cybernetics and communication networks, reliability is an essential measure of the quality of service for transportation, avoiding traffic congestion, and an important attribute in travelers' route and departure time scheduling (Xing and Zhou, 2011).In disaster management, system reliability is the first issue to address by disaster managers for transmitting relief materials to the affected areas, and so a reliable path may ensure the arrival of these supplies (Xing and Zhou, 2011).
In addition to finding the optimal path, one is in many situations also interested in studying how changes in input data affect the optimal path.Postoptimality analysis (PA) is an important element in making decisions and investigates the effect of such changes on a given optimal solution to a problem.The term "postoptimality" is generally used for the phase of an algorithm at which a solution of the problem has been found and additional calculations are performed in order to investigate how this solution depends on changes in the problem data (Gal, 1995).PA was conceived in 1980 as a pragmatic approach to characterize a parametric region (tolerance region) over which coefficients or terms could vary simultaneously and independently from their estimated values, while maintaining the same optimal basis.Such a study can be useful when assessing the 'robustness' of an optimal solution with respect to inaccuracies or variability in the given input data.It can also offer insights regarding the nature of the problem itself.Important postoptimality analysis applications have first been investigated for the case of transportation problems by, for example, Elmaghraby (1964) and Srinivasan and Thompson (1972).It has turned out that PA can also generate rather useful tools for creating heuristics and exact algorithms for combinatorial optimization problems.During the last decades, PA has been widely studied and applied to a vast range of combinatorial optimization problems (Gusfield, 1983;Shier andWitzgall, 1980;Sotskov, 1991;Tarjan, 1982;Van Hoesel and Wagelmans, 1993;Van Hoesel et al, 1989).The basic topic in such study is when the weight (or cost) of some element is subject to change.The goal of such perturbation is to determine the tolerance, which is defined as the maximum change of a given individual weight such that a given solution is optimal also for the perturbed problem.
This paper addresses the issue of postoptimality analysis of the MRP problem.The technical contribution is that we present exact formulas for computing each arc's infimum and supremum tolerances.In addition, we propose a simple algorithm to do the postoptimality analysis for given MRPs restricted to the case when a single arc is changed by a multiplicative factor.We show that, given an MRP P * consisting of |P * | arcs, the algorithms compute all sup tolerances in O(m) operations and all inf tolerances in O(|P * |m) operations for undirected networks with m arcs.If the network is directed with m arcs and n nodes, the complexities for computing the sup and inf tolerances are O(m + n log n) and O(|P * |(m + n log n)), respectively.

Preliminaries and Problem Definitions
Let N = (V, A) describe a network, either directed or undirected, with V and A ⊆ V × V representing the set of nodes and arcs, respectively.We let n = |V| and m = |A| denote the number of nodes and arcs, respectively.Further, we designate two special nodes, the source node s ∈ V and the sink node t ∈ V.Each arc (i, j) ∈ A has a positive rational reliability r i j ∈ (0, 1] associated with it.The reliability of an arc measures the probability that the arc will be operational.A path P from v 1 to v k is defined by a sequence of nodes v 1 , v 2 , . . ., v k−1 , v k with the property that every consecutive pair of nodes v i and v i+1 in the sequence is connected by an arc, more precisely, ).The reliability R(P) of a path P is the product of the reliabilities of arcs in that path; i.e., where x i j = 1 if arc (i, j) belongs to path P and zero otherwise, and M is a constant such that M ≥ max (i, j)∈A {c i j }.We remark that Relation (1) is not only valid for any path P, but also for any subset of arcs P ⊆ A.
The MRP problem is dealing with the maximization of the functions given in Relation (1) over the feasible set P. Here, P = {P k } denotes the set of all s-t-paths in N, that is, all paths from source s to sink t.We are specifically interested in two subsets P + (i, j) and P − (i, j) .The former comprises all s-t-paths in N that include arc (i, j), and the latter comprises all s-t-paths not containing (i, j).We extend the definition of the functions R and C for any P ⊆ P as follows: Therefore, R(P) denotes the optimal objective function value for the MRP problem.From the above definitions, we have that R ) represent the reliability of an MRP in P + (i, j) and P − (i, j) , respectively.We let N ×λ (i, j) denote the network (V, A ′ ), where the reliability of arc (i, j) are replaced by λr i j , while all other reliabilities are unchanged.Further, we let N −λ (i, j) denote the network in which the reliability of arc (i, j) is replaced by r i j − λ, with all other reliabilities unchanged.Analogously, we let N +λ (i, j) denote the network N in which the reliability of arc (i, j) is replaced by r i j + λ, and all other reliabilities remains unchanged.
Throughout this paper, we assume that the network is s-t-connected and that an MRP is already given/obtained and we are asked to investigate the postoptimality analysis issue with respect to it.Note that, to obtain an MRP, an MRP algorithm may be developed by exploiting Dijkstra's algorithm.Assuming that d(•) represents the distance label function, the MRP algorithm is similar to Dijkstra's algorithm except that d(s) is initialized to 1 for source node s, and other nodes to zero.Further, the label of a node j is updated only if for some node i ∈ V, (i, j) ∈ A and d( j

}
. This algorithm can run in O(m + n log n) for directed networks using a Fibonacci heap or hollow heap (Ahuja et al, 1993) and in O(m) for undirected networks using Thorup's algorithm (Thorup, 1997).

Maximally Reliable Path Problem
This section considers the multiplicative tolerances for the MRP problem on N = (V, A) with a given MRP P * .The multiplicative tolerances can be seen as a measure of when the MRP is altered by multiplicative changes of arcs' reliabilities.We remark that multiplying the reliability r i j by some constant λ ≤ 1 does not increase the reliability of any path.Similarly, multiplying reliability r i j by λ ≥ 1 does not decrease the reliability of any path.The reliability of an s-t-path P decreases if the path contains arc (i, j) and λ < 1.
Definition 1 Let N = (V, A) be an MRP network instance and P * be an MRP in N. The multiplicative inf tolerance I P * (i, j) of an arc (i, j) with respect to P * is defined as the infimum factor that the reliability of arc (i, j) can be multiplied by so that P * remains an MRP, provided that the other reliabilities remain unchanged.That is The multiplicative sup tolerance S P * (i, j) of an arc (i, j) with respect to P * is defined as the supremum factor that the reliability of (i, j) can be multiplied by so that P * remains an MRP, provided that the other reliabilities remain unchanged.That is Property 1 Let N = (V, A) be an MRP network instance and P 1 , P 2 two paths in N such that arc (i, j) ∈ P 1 ∩ P 2 .Then, for any value of λ for which λr i j ∈ (0, 1] we have (a) if R(P 1 ) = R(P 2 ) in N, then R(P 1 ) = R(P 2 ) in N ×λ (i, j) , and (b) if R(P 1 ) ≤ R(P 2 ) in N, then R(P 1 ) ≤ R(P 2 ) in N ×λ (i, j) .If we let P * be an MRP in N, then I P * (i, j) = 0 for any (i, j) P * , and S P * (i, j) = 1/r i j for any (i, j) ∈ P * .Property 1 reveals that we do not need to compute the inf tolerances for those arcs not belonging to at least one MRP and the sup tolerances for arcs belonging to any MRP, as these arcs receive the extreme values 0 and 1/r i j as their tolerances.It also follows from the definitions of tolerances that the multiplicative inf tolerance of an arc (i, j) belonging to each MRP, and multiplicative sup tolerance of an arc (i, j) belonging to no MRP do not depend on a particular MRP.Rather, they only depend on the network topology and the individual arc weights.In other words, if P * and P * * are two MRPs, then for each (i, j) ∈ P * ∩ P * * it holds that I P * (i, j) = I P * * (i, j).Moreover, for any (i, j) P * ∪ P * * , we have that S P * (i, j) = S P * * (i, j).
Lemma 2 Let N = (V, A) be an MRP network instance, P * an MRP, and (i, j) ∈ A, then we get (a) (i, j) ∈ ∩ k P k ⇔ I(i, j) = 0, and (b) (i, j) Let some arc (i, j) ∈ A be included in any s-t-path.Then multiplying r i j by any allowed value of λ will change the reliability of all paths by the same amount, and thus I(i, j) = 0. Now, let I(i, j) = 0. Assume that there is at least one s-t-path that does not contain (i, j).Then, at least one of these paths not containing (i, j) would become optimum if r i j is multiplied with a sufficiently small positive number.This contradicts I(i, j) = 0 and thus (i, j) appears in all s-t-paths.
(b) If (i, j) is not contained in any path, any perturbation in r i j will not effect the reliability of any path, and thus S (i, j) = 1/r i j .
Note that only the direction "⇒" of Lemma 2(b) holds in general, but not the reverse direction "⇐".This can be seen by the MRP network instance depicted in Figure .Here, three s-t-paths exist from source node s = 1 to sink node t = 6 among which the path P * = P 1−2−4−6 is the unique MRP whose reliability is R(P * ) = 0.81.It is easy to see that S (5, 6) = 1/r 56 = 5, but (5, 6) ∈ ∪ k P k .Lemma 3 Let N = (V, A) be an MRP network instance, P * an MRP, and (i, j) ∈ A. It follows that (a) if (i, j) ∈ P * , then Proof (a) Employing the definition of multiplicative inf tolerance (2), we get for (i, j) ∈ P * that (b) Employing the definition of multiplicative sup tolerance (3), for (i, j) P * we have that In fact, Property 1 and Lemma 3 provide methods to calculate the multiplicative inf and sup tolerances of an arc (i, j) with respect to a given MRP.It follows that for any (i, j), the exact values of tolerances can be computed by using the solutions to at most two MRP problems.This means that we can find all the arcs' tolerances by solving at most 2m MRP problems.Thus, the total computational effort of this naive approach is O(m 2 + mn log n) for directed networks and O(m 2 ) for undirected networks.To improve this naive approach and develop our algorithm, we need the following concepts.
By Lemma 3 and Equation ( 6), we get that the sup tolerance for any arc (i, j) ∈ A \ P * is In the case when we are dealing with a directed network, an s-t-MRP containing arc (i, j) can be obtained by concatenating {P * s→i , (i, j), P * j→t }.We thus have that and Theorem 5 For an undirected network, the complexity of Algorithm 1 is O(m) for the sup tolerances and O(|P * |m) for the inf tolerances.For a directed network, the complexity for computing the inf and sup tolerances is , respectively.
proof The problem of computing all tolerances mainly boils down with obtaining the MRP trees N s and N t .The MRP-IST algorithm computes these trees in O(m) time, as this requires only two MRP computations, which takes O(m) time on undirected networks using Thorup's heuristics (Thorup, 1997)., as discussed in Section .Computing S (i, j) for all (i, j) ∈ A \ P * requires only that we compute R(P * s→i ) for all i and R(P * j→t ) for all j, which are previously given in Phase 1. Consequently, for the sup tolerances on undirected networks it can be implemented to run in O(m) time, and for inf tolerances in O(|P * |m).As shown in Equation ( 9), for a directed network, it suffices to replace any "max" term simply by R(P * s→i )R(P * j→t ).For the directed case, the algorithm also needs to mainly perform two MRP computations.Therefore, with the use of a Fibonacci heap or hollow heap (Ahuja et al, 1993), it can run in O(m + n log n) for sup tolerances and in for inf tolerances.
Since the network is undirected, the sup tolerances for all arcs are set according to Lines 5 and 11 of the algorithm.For all of these arcs, except arc (5,8), we are in the case where any feasible increment of the arc's weight does not affect the optimality of P * .(That is, for these arcs we have that R(P) > max{R(P * s→i )R(P * j→t ), R(P * s→ j )R(P * i→t )}).Thus

Figure 2 .
Figure 2.An MRP undirected network instance demonstrating how to implement MRP-IST Algorithm.Example 1 In the MRP undirected network instance presented in Figure there are several feasible s-t-paths from s = 1 to t = 9 among which the path P * = P 1−5−7−9 is an MRP.For this path we have R(P) = R(P * ) = R (P 1−5−7−9 ) = 0.54.We show the steps taken by Algorithm 1. First, the algorithm constructs the MRP trees N s and N t illustrated in Figure3.These trees can be easily obtained by two applications of the MRP algorithm.
The MRP tree N t .

Figure 3 .
Figure 3.The MRP trees corresponding to the instance of Figure 2