Shortest
with
Paths
Vector
in Networks
Weights
H. w. CORLEYI AND I. D. MOON2
Communicated by C. T. Leondes
Abstract. For a directed network in which vector weights are assigned
to arcs, the Pareto analog to the shortest path problem is analyzed. An
algorithm is presented for obtaining all Pareto shortest paths from a
specified node to every other node.
Key Words. Networks, graphs, shortest paths, vector minima, Pareto
optima, algorithms.
I. Introduction
Consider a directed network (N, A), where N = {1, ..., n} is the set of
n nodes, A c: N x N is the set of arcs, and associated with each arc ( s, t) E A
is a vector weight
dst=(dstl,.
.., dstrn)E Rrn.
For the case m = I various shortest distance problems involving (N, A) have
been studied extensively. Standard results are summarized in Christofides
(Ref. I), Deo (Ref. 2), Hu (Ref. 3), Johnson and Johnson (Ref. 4), and
Phillips and Garcia-Diaz (Ref. 5). For general m, however, such problems
have not been analyzed. In this paper, the general case is considered using
the notion of Pareto minimization (or efficiency or vector minimization)
defined as follows. The point
X *--XI,(
*
...,X,"
*)E
X c:
I Professor, Department of Industrial
R rn
Engineering, University of Texas at Arlington,
Texas.
2 Professor, Graduate School of Management,
Rutgers University,
Arlington,
Newark, New Jersey.
is a Pareto minimum ( or efficient point or vector minimum) of X if x* is
nondominated from below' on X, i.e., if there does not exist
x=(x\,...,xm)eX
for which
xi~x1,i=I,...,m,
xi<xi,forsomeje{I,...,m}.
We write
x* e vmin X.
We present here an algorithm for finding all Pareto shortest paths in (N, A)
between nodes I and i, i = I, ..., n, i.e., for obtaining
vmin{
L dst:pePj},
(s.t)ep
i=I,...,n,
(1)
where Pi is the set of paths from node I to node i in (N, A) and the
summation in ( I) is a vector sum.
Problem ( I) reduces to the standard shortest path problem when m = I.
Excellent surveys of such shortest path algorithms can be found in Hitchener
(Ref. 6), Dreyfus (Ref. 7), Gilsinn and Witzgall (Ref. 8), Golden (Ref. 9),
and Denardo and.Fox (Ref. 10). Recent work includes that of Bloniarz
(Ref. II ). Approaches for solving the standard problem generally fall into
two categories: (a) for each node i, finding the length of the shortest path
from node 1 to node i containing k or fewer arcs, and (b) finding the kth
closest node to node 1. Ford (Ref. 12), Moore (Ref. 13), Bellman (Ref. 14),
and Floyd (Ref. 15) utilize approach (a), as does Dantzig (Ref. 16) with a
minor alteration. Dijkstra (Ref. 17) uses approach (b ).
The algorithm presented here is a modification of approach (a) to the
case of general m. Approach (b) is not applied, since the notion of a kth
closest node is somewhat nebulous for m ~ 2. We assume that A contains
no loops, since a loop either is not part of a Pareto shortest path or is part
of an infinite number. We also assume that
dst # (0, ...,0),
for (s, t) e A,
to avoid degenerate circuits. No restrictions are made on the signs of the
components of the dst. Our algorithm applies to undirected graphs by
replacing each undirected arc with two directed ones.
2. Algorithm
In Algorithm 2.1 below for solving (I), the label L~ is the set of lengths
of all Pareto paths from node I to node i containing k or fewer arcs. Unlike
some labelling procedures, no node labels are considered final until all are.
Algorithm 2.1 requires a procedure for computing vmin in Step 2. Such a
method is presented in Algorithm 2.2.
Algorithm 2.1
Step I.
Set
d;i=(0,...,O),
i=I,...,n,
and
d;j=(00,...,00),
i~j,
if there is no arc from i to j. Set k = I and
L:={d1i},
Step 2.
i=I,...,n.
For i = I, ...,
L~+l
= vmin
I
n, set
n
U
[ d..
JI + L~
J ],
j=1
where
dj;+Lf={dji+lf:
Step
3.
IfeLf}.
If
L k+l
i = L ki,
I. =
I
, n,
stop; otherwise, go to Step 4.
Step 4. If k = n -I, stop. A negative circuit
k = k + I and go to Step 2.
exists. Otherwise, set
Proof. To verify the algorithm, it suffices, first, to show that L~ is the
set of vector sums of arc weights of all Pareto paths from node I to node
i containing k or fewer arcs and, second, to validate the termination criteria
in Steps 3 and 4. We establish the role of L~ by induction on k. The
proposition is obviously true for k = I for each i. Suppose that it is true for
k = r for each i. To prove the induction step by contradiction, assume that,
for some node t, L~+l is not the set of vector sums of arc weights of all
Pareto paths from node I to node t containing r + lor fewer arcs. There
are two cases to consider.
In case (i), there is a Pareto path of vector length u from I to t containing
r+ lor fewer arcs for which u e L~+I. It follows that there exists
seA(t)={i:
(i, t)eA}
in this path such that
u =ds,+ v,
where v is the vector length of this path from 1 to s. But then v E L:.
Otherwise, if v were dominated by, say, w E L:, then ds,+ w would dominate
ds, + v = u, in contradiction to the definition of u. Thus, u E L~+l as a
consequence of Step 2 and the fact that v E L:, so a contradiction is reached
in case (i).
In case (ii), L~+l contains some u which is not the vector length of a
Pareto path but is by construction associated with a path from I to t
containing r+ lor fewer arcs. Hence, there exists (from the finiteness of
the sets involved) a Pareto path of vector length v from I to t containing
r+ lor fewer arcs such that v dominates u. But it then follows as in case
(i) that v E L~+]. Thus, u e L~+l in Step 2, and a contradiction is reached to
complete the induction.
To justify the termination criteria in Steps 3 and 4, first suppose that
termination occurs in Step 4 with k = n -I, i.e.,
L "-J:
L "-1
i -r- i,
I"
.
lor some ,.
Then, there is a Pareto path from 1 to i containing a circuit with a negative
component of vector length. Otherwise, since any path to i without a circuit
contains at most n -I arcs,
L?
, = L"-l
,
must hold. There will be no Pareto paths from 1 to i if all components of
the circuit length are nonpositive or an infinite number if some components
are also positive. Next, suppose that
L k+]
i = L ki,
I. = 1 , ...,
n,
in Step 3 for some k ~ n -1. Termination occurs since all subsequent labels
would not change. In this case, none of the Pareto paths from 1 to any i
contains more than k arcs, and none contains a circuit.
D
Once the final L~ are obtained at termination,
can be obtained by a recursive application of
Ik+l=d.+lk
,
:I'
J,
the paths themselves
(2)
where I; E L; .That is, for any node i in a Pareto path, a node j E A( i) in
the path is found as one satisfying (2).
Algorithm 2.2 is presented next as a method for computing vmin in
Step 2 of Algorithm 2.1. Since it simply involves multidimensional comparisons, a proof is omitted. Algorithm 2.2 computes vmin V; where
V={Vl,...'Vr}
and
Vi=(Vil'...'Vim)ERm,
i=I,...,r.
We write
V.~V.
I
},
if
Vik~Vjk,
k=I,...,m.
It is obvious that a maximum of m one-dimensional
to determine if Vi ~ Vj in Steps 2 and 6 below.
comparisons is needed
Algorithm 2.2
Step 1.
Seti=l,j=2.
Step 2.
If i = r- 1, go to Step 6. If Vj ~ Vi, go to Step 3. If Vi ~ Vj, go
to Step 4. Otherwise, go to Step 5.
Step 3.
Set i = i + I, j = i + I; go to Step 2.
Step 4.
Set Vj = Vr, r = r- 1 ; go to Step 2.
Step 5.
j=j+l,
If j = r, put Vi E vmin \I; and go to Step 3. Otherwise, set
and go to Step 2.
Step 6. If Vj ~ Vi, put Vj E vmin \I; and stop. If Vi ~ Vj, put Vi E vmin V,
and stop. Otherwise, put Vi, Vj E vmin \I; and stop.
3. Computational Efficiency
The maximum number of elementary operations (additions and onedimensional comparisons) required by Algorithm 2.1 in conjunction with
Algorithm 2.2 is next computed. This worst case occurs when (i,j) E A for
each i, j E N, i ~ j, and all new lengths calculated in Step 2 of Algorithm 2.1
are Pareto minima. In Algorithm 2.1 only Step 2 need be considered, since
Step 3 can be accomplished with the results of Step 2.
Algorithm 2.2 takes a maximum of
r. -I
m
L i=(m/2)rk(rk-l)
i=1
(3)
one-dimensional comparisons to obtain vmin{vl, ..., Vr.} at iteration k of
Algorithm 2.1. We obtain rk by noting that, in the worst case described
above, for i = I, ...,
n the number of elements IL~I in L~ satisfies
IL~+'I=(n-2)L~,
k=l,...,n-l,
with
IL:I= I,
i.e.,
]L~I=(n-2)k-l,
k=l,...,n.
(4)
Upon letting
rk = nIL~I,
it follows from (3) and (4) that at most
(mn/2)(n
-2)k-I[(n
-2)k-l-l]
one-dimensional comparisons are required by Algorithm
of Algorithm 2.1. It also follows from (4) that at most
mn2lL~1 = mn\n
(5) .
2.2 at iteration k
-2)k-1
(6)
one-dimensional additions are needed at iteration k. Adding (5) and (6)
gives the maximum number of elementary operations ak at Step 2 of
Algorithm 2.1 for k=1,...,n-1
to be o(mnk+l+mn2k-I).
The total
maximum number of such operations is thus
(
o "Ii ak
k=1
) = o(mn2"-3+
mn").
(7)
4. Remarks
The combinatorial difficulties of the Pareto problem are significantly
more severe than the one-dimensional situation. For example, the algorithm
for m = 1 of Refs. 12-14 is o(n3) as compared to (7). Dijkstra's algorithm
for m = 1 when all dsl ~ O is o(n2) ; see Ref. 5. The magnitude of (7) is due
to the fact that, for m ~ 2, the labels L~ are sets and not simply numbers.
In the worst case, the cardinality of these sets increases according to (4),
because of the nature of Pareto optimization.
As a consequence of (7), as well as the large number of Pareto paths
that can exist from node 1 to any node i, one might be interested in obtaining
a single or only several Pareto paths. It is easily shown from results in, say,
Geoffrion ( Ref. 18) that a standard shortest path ( m = I) with respect to
any single component of the vector weights is a Pareto path.
Algorithm
2.1 can undoubtedly
be improved
slightly
with some minor
modifications,
as can Algorithm
2.2 through
more sophisticated
sorting
procedures. A substantial
improvement,
however, will probably require a
somewhat different approach. When the components
of the vector weights
are all nonnegative,
it is conceivable that an algorithm
closer to approach
(a) of Section I might produce significant
computational
savings. Such a
method
would
probably
require
more than the usual two classes of labels.
References
1. CHRISTOFIDES, N., Graph Theory: An Algorithm
2.
3.
4.
5.
Approach, Academic Press,
New York, New York, 1975.
DEO, N., Graph Theory with Applications to Engineering and Computer Science,
Prentice-Hall, Englewood Cliffs, New Jersey, 1974.
Hu, T. C., Integer Programming and Network Flows, Addison-Wesley, Reading,
Massachusetts, 1969.
JOHNSON, D. E., and JOHNSON, J. E., Graph Theory with Engineering Applications, Ronald Press, New York, New York, 1972.
PHILLIPS, D., and GARCIA-DIAZ, A., Fundamentals of Network Analysis, Pren-
tice-Hall, Englewood Cliffs, New Jersey, 1981.
6. HITCHNER, L. E., A Comparative Investigation of the Computational Efficiency
of Shortest Path Algorithms, University of California, Berkeley, Operations
Research Center, Report No. ORC 68-17, 1968.
7. DREYFUS, S. E., An Appraisal of Some Shortest-Path Algorithms, Operations
Research, Vol. 17, pp. 395-412,1969.
8. GILSINN, J., and WITZGALL, C., A Performance Comparison of Labelling
Algorithms for Calculating Shortest Path Trees, National Bureau of Standards,
Washington, DC, NBS Technical Note No.777, 1973.
9. GOLDEN, B., Shortest-Path Algorithms: A Comparison, Operations Research,
Vol. 24, pp. 1164-1168,1976.
10. DENARDO, E., and Fox, B., Shortest-Route Methods, 1: Reaching, Pruning, and
Buckets, Operations Research, Vol. 27, pp. 161-186, 1979.
11. BLONIARZ, P., A Shortest-Path Algorithm with Expected Time O(n2log n log* n),
SlAM Journal on Computing, Vol. 12, pp. 588-600, 1983.
12. FORD, L. R., Network Flow Theory, The Rand Corporation, Report No. P-923,
1956.
13. MOORE, E. F., The Shortest Path through a Maze, Proceedings of the International Symposium on the Theory of Switching, Part II, pp. 285-292, 1957;
Annals of the Computation Laboratory of Harvard University, Harvard University Press, Cambridge, Massachusetts, Vol. 30, 1959.
14. BELLMAN, R. E., On a Routing Problem, Quarterly of Applied Mathematics,
Vol. 16, pp. 87-90, 1958.
15. FLOYD, R. W., Algorithm 97, Shortest Path, Communications of the ACM, Vol.
5, p.345, 1962.
16. DANTZIG, G. B., On the Shortest Route through a Network, Management Science,
Vol. 2, pp. 187-190, 1960.
17. DIJKSTRA, E. W., A Note on Two Problems in Connection with Graphs,
Numeri~che Mathematik, Vol. 1, pp. 269-271, 1959.
18. GEOFFRION, A. M., Proper Efficiency and the Theory of Vector Maximization,
Journal of Mathematical Analysis and Applications, Vol.22, pp. 618-630,1968.
© Copyright 2026 Paperzz