THE k SHORTEST ROUTES AND THE k SHORTEST CHAINS IN A GRAPH. Michel Sakorovitch

Similar documents
S 3 j ESD-TR W OS VL, t-i 1 TRADE-OFFS BETWEEN PARTS OF THE OBJECTIVE FUNCTION OF A LINEAR PROGRAM

THE STÄTIONARITY OF AN ESTIMATED AUTOREGRESSIVE PROCESS BY T. W. ANDERSON TECHNICAL REPORT NO. 7 NOVEMBER 15, 1971

NOL UNITED STATES NAVAL ORDNANCE LABORATORY, WHITE OAK, MARYLAND NOLTR ^-z ^ /

UNCLASSIFIED AD NUMBER LIMITATION CHANGES

THE MINIMUM NUMBER OF LINEAR DECISION FUNCTIONS TO IMPLEMENT A DECISION PROCESS DECEMBER H. Joksch D. Liss. Prepared for

cot* SEPTEMBER 1965 a CC 0^\ 0 «*«***

NOLTR UNITED STATES NAVAL ORDNANCE LABORATORY, WHITE OAK,, MARYLAND 1

St>-T*-4*-te.» ESD RECORD COPY. ,om*' ESD ACCESSION LIST ESTI Call M - 4H THIRD QUARTERLY TECHNICAL REPORT October to 30 December 1967

GENERAL INSTRUCTIONS FOR COMPLETING SF 298

FINAL EXAM PRACTICE PROBLEMS CMSC 451 (Spring 2016)

SHORTEST PATH, ASSIGNMENT AND TRANSPORTATION PROBLEMS. The purpose of this note is to add some insight into the

Technical Note

Definition: A binary relation R from a set A to a set B is a subset R A B. Example:

Technical Note

ARCHIVE COPY DO NOT LOAN

IfliiieflibUTribl A COMPARISON OF THE FALLOUT MASS-SIZE DISTRIBUTIONS CALCULATED BY L06N0RMAL AND POWER-LAW MODELS

ON THE SIMPLE TENSILE DEFORMATION OF AN INCOMPRESSIBLE RUBBER MATRIX FILLED WITH NON-ADHERENT RIGID SPHERES OF UNIFORM SIZE DISTRIBUTION

Section Summary. Relations and Functions Properties of Relations. Combining Relations

ON ANALOGUES OF POINCARE-LYAPUNOV THEORY FOR MULTIPOINT BOUNDARY-VALUE PROBLEMS

Stochastic Shortest Path Problems

RD-R14i 390 A LIMIT THEOREM ON CHARACTERISTIC FUNCTIONS VIA RN ini EXTREMAL PRINCIPLE(U) TEXAS UNIV AT AUSTIN CENTER FOR CYBERNETIC STUDIES A BEN-TAL

2. A vertex in G is central if its greatest distance from any other vertex is as small as possible. This distance is the radius of G.

Criteria for existence of semigroup homomorphisms and projective rank functions. George M. Bergman

INSULATIVE PERFORMANCE OF SELECTED ABLATIVE MATERIALS IN A LOW ENTHALPY HYPERSONIC AIRSTREAM. May 1966

THE GRAM-CHARLIER APPROXIMATION" OF THE NORMAL LAW AND THE STATISTICAL DESCRIPTION OF A HOMOGENEOUS TURBULENT FLOW NEAR STATISTICAL EQUILIBRIUM

UNCLASSIFIED AD NUMBER LIMITATION CHANGES

Hamiltonian cycles in circulant digraphs with jumps 2, 3, c [We need a real title???]

A0A TEXAS UNIV AT AUSTIN DEPT OF CHEMISTRY F/G 7/5 PHOTOASSISTED WATER-GAS SHIFT REACTION ON PLATINIZED T7TANIAI T--ETCIUI

Management Science Research Report #MSRR-570. Decomposition of Balanced Matrices. Part II: Wheel-and-Parachute-Free Graphs

Even Pairs and Prism Corners in Square-Free Berge Graphs

A MAXIMUM UTILITY SOLUTION TO A VEHICLE CONSTRAINED TANKER SCHEDULING PROBLEM

April Distribution of this document is unlimited.

NORWEGIAN SEISMIC ARRAY NORSAR ESD ACCESSION LIST, Approv. Royal Norwegian Council for Scientific and Industrial Research. Copy No.

Central Groupoids, Central Digraphs, and Zero-One Matrices A Satisfying A 2 = J

EUROPEAN COMMISSION. Brussels, XXX [ ](2015) XXX draft ANNEX 1 ANNEX

Knü. ADOAOll 835 ON PACKING SQUARES WITH EQUAL SQUARES. P. Erdos, et al. Stanford University. Prepared for:

6.046 Recitation 11 Handout

A MARTINGALE INEQUALITY FOR THE SQUARE AND MAXIMAL FUNCTIONS LOUIS H.Y. CHEN TECHNICAL REPORT NO. 31 MARCH 15, 1979

Generalized Pigeonhole Properties of Graphs and Oriented Graphs

Mathematics Masters Examination

mmi N N OPERATIONS RESEARCH CENTER /y-f MULTI-TERMINAL SHORTEST PATHS : i UNIVERSITY OF CALIFORNIA- BERKELEY / 6 O T. C. Hu ORC APRIL 1965

2 Generating Functions

AD-A ROCHESTER UNIV NY GRADUATE SCHOOL OF MANAGEMENT F/B 12/1. j FEB 82.J KEILSON F C-0003 UNCLASSIFIED AFGL-TR NL

UNCLASSIFIED. .n ARMED SERVICES TECHNICAL INFORMATION AGENCY ARLINGTON HALL STATION ARLINGTON 12, VIRGINIA UNCLASSIFIED

AD-AISS "3 IMPACT OF DETECTOR LOCATION AND ORIENTATION ERRORS ON in THE PERPENDICULAR METHOD AN INTRODUCTION(U) JET PROPULSION LAB PASADENA CA 03 OCT

PROPAGATION OF CYLINDRICAL SHEAR WAVES IN NONHOMOGENEOUS ELASTIC MEDIA,. Pei Chi Chou Professor of Aerospace Engineering

Two Applications of Maximum Flow

Running Time. Assumption. All capacities are integers between 1 and C.

TO Approved for public release, distribution unlimited

Week 4. (1) 0 f ij u ij.

CEOCKKMISTRY OF THE CARBONATK CYCLE IN THE MAR INK HNV1R0NMENT. Keith E. Chave Professor of Oceanography University of Hawaii Honolulu, Hawaii 96822

Kruskal s Theorem Rebecca Robinson May 29, 2007

10. The GNFA method is used to show that

AFRL-RW-EG-TP

Sponsored Financial Services. How We Get Our Funds

Algorithms: COMP3121/3821/9101/9801

1 The independent set problem

32 Divisibility Theory in Integral Domains

Parity Versions of 2-Connectedness

UNIVERSITY OF NORTH CAROLINA Department of Statistics Chapel Hill, N. C.

Counting independent sets of a fixed size in graphs with a given minimum degree

Aperiodic languages and generalizations

Reverse mathematics of some topics from algorithmic graph theory

SUBPART MULTIYEAR CONTRACTING (Revised December 19, 2006)

A MODEL-THEORETIC PROOF OF HILBERT S NULLSTELLENSATZ

Shortest paths with negative lengths

Advanced Linear Programming: The Exercises

Eulerian Subgraphs in Graphs with Short Cycles

On the Derivation of Lattice Structured Information Flow Policies

Bounds on parameters of minimally non-linear patterns

EUROPEAN COMMISSION. Brussels, XXX D046374/04 [ ](2016) XXX draft ANNEX 1 ANNEX

System Reliability Simulation and Optimization by Component Reliability Allocation

The edge-density for K 2,t minors

The Econometric Society is collaborating with JSTOR to digitize, preserve and extend access to Econometrica.

Mh -ILE CPYl. Caregi Mello University PITBRH ENYVNA123AS1718. Carnegi Melo Unovrsity reecs ~ 8

Lecture 2: Divide and conquer and Dynamic programming

Topics in Graph Theory

The Impossibility of Certain Types of Carmichael Numbers

Chapter 7 Network Flow Problems, I

Integrity in Graphs: Bounds and Basics

OF NAVAL RESEARCH. Technical Report No. 87. Prepared for Publication. in the.. v.. il and/or -- c Spocial Journal of Elactroanalytical Chemistry it

Manual Railway Industry Substance List. Version: March 2011

("-1/' .. f/ L) I LOCAL BOUNDEDNESS OF NONLINEAR, MONOTONE OPERA TORS. R. T. Rockafellar. MICHIGAN MATHEMATICAL vol. 16 (1969) pp.

Sums of the Thue Morse sequence over arithmetic progressions

In N we can do addition, but in order to do subtraction we need to extend N to the integers

Introduction to Integer Programming

(q 1)p q. = 1 (p 1)(q 1).

Algorithms and Theory of Computation. Lecture 11: Network Flow

ELE539A: Optimization of Communication Systems Lecture 16: Pareto Optimization and Nonconvex Optimization

ASYMPTOTIC EVALUATION OF THE PROBABILITIES OF MISCLASSIFICATION BY LINEAR DISCRIMINANT FUNCTIONS T. W. ANDERSON

UNCLASSIFIED Reptoduced. if ike ARMED SERVICES TECHNICAL INFORMATION AGENCY ARLINGTON HALL STATION ARLINGTON 12, VIRGINIA UNCLASSIFIED

Course 311: Michaelmas Term 2005 Part III: Topics in Commutative Algebra

Topological properties

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time

AD FIXED POINTS OF ANALYTIC FUNCTIONS Peter Henrici Stanford University Stanford, California July 1969

HW 4 SOLUTIONS. , x + x x 1 ) 2

NEGLIGIBLE SETS FOR REAL

MA103 Introduction to Abstract Mathematics Second part, Analysis and Algebra

ON DIVISION ALGEBRAS*

Disjoint paths in tournaments

Transcription:

ORC 66-32 October 1966 30 00 THE k SHORTEST ROUTES AND THE k SHORTEST CHAINS IN A GRAPH by Michel Sakorovitch C L A R I N G H 0 U S E! FOR FEDERAL SCIENTIFIC AND» TECHNICAL INFORMATION Hardoopy m D D C DEC? 1966 OPERATIONS RESEARCH CENTER COLLEGE OF ENGINEERING UNIVERSITY OF C A L I F 0 R Nl A - B E R K E L E Y

THE k SHORTEST ROUTES AND THE k SHORTEST CHAINS IN A GRAPH by Michel Sakarovitch Operations Research Center University of California, Berkeley October 1966 ORC 66-32 This research has been partially supported by the Office of Naval Research under Contract Nonr-222(83), the National Science Foundation under Grant GP-4593, and the National Bureau of Standards, Contract CST-136 with the University of California. Reproduction in whole or in part is permitted for any purpose of the United States Government..

THE k SHORTEST ROUTES AND THE k SHORTEST CHAINS IN A GRAPH by Michel Sakarovltch 1. Introduction In a given graph G = (N,A) where N represents the set of nodes and A the set of directed arcs, a length a(x,y) Is associated to every arc (x,y) E A. A route from x to x Is a seuence of nodes and arcs on P= [x o,(x o,x 1 ),x 1,(x 1,x 2 ) X n-l^xn-l,x n^* X n^ such that x. e N 1 = 0,n (x...x.) e A 1 = 1,n A route P will also be considered as a partial subgraph (see [21 ) of G containing nodes x,..,x and arcs (x,x,),..., (x,,x ). The length of a on N o 1 n-1 n route P Is: n Ä(P) = I a(x,x,) 1=1 1 " i 1 A chain Is a route In which no node Is repeated. A cycle Is a route In which no node Is repeated except that x = x. 0 and D wll] be two particular nodes. P (P 1 ) will denote the shortest route (chain) from 0 to D and: G n = (N,A ) = U P jssl j will be the partial subgraph of G defined by: x e N If f x e P for some j <. (x,y) e A iff (x,y) e P for some j <. Ä n = A - A n

In a similar way G', A', A 1 and N' are defined, k is the number of routes in G which we need to generate as P,-..., P.. i.e. k is the min of +1 ' ' +k (k - ) and (max number of routes in G - ), Our central problem will be the construction of the k shortest routes (k shortest chains) from 0 to D. In this form, the problem is slightly more general than the one dealt with in [1], [6] and [3] and reviewed in [7] in two respects: - Negative lengths are allowed, provided that no: "negative cycle" (a cycle along which a(x,y) < 0) exist. - Attention is not restricted to chains. Moreover, this paper is based on the following simple idea: At any stage of the algorithm, suppose we know the ( < k) shortest routes from 0 to D and P +1 P +k which are the (+l) St (+k ) th - shortest routes in G ordered according to increasing lengths. P is a shortest st route from 0 to D which has at least one arc in A. The (+1) shortest route is obtained by: +1 ^+1 if ^l) 1 ^l) f +l if ^+l) < ^P+l) G and the list P. is updated and the process begins again. The algorithm is initiated by finding the shortest routes from 0 to every node using an algorithm such as the one in [4] if all lengths are nonnegative and the one. in [5] if there are negative lengths. In the next section an algorithm to construct the k shortest routes from 0 to D is described and it is justified in Section 3. Since the problem of finding the k shortest chains is of interest in many applications, a variant of the algorithm presented in Section 2 which exhibits the k shortest chains is described

in Section A. Attention is drawn to the fact that minor modifications of these two algorithms allow to find the routes (chains) shorter than a given length. If capacities were to be considered, an immediate application of this last problem could be: what uantity can be shipped from 0 to D if we demand that the maximum time of travel be less than or eual to a certain given number. 2. Algorithm For Finding The k Shortest Routes Step 0. - Find all the shortest routes from 0 to D : P P If ^ k, terminate. Determine for all x e N : TTCX) = shortest distance from 0 to x. n(x) = shortest distance from x to D. Note that P^ does not exist (the length of a route which does Step 1. - Let: not exist is taken as infinite), k = 0. (1) C (x) = / Min, v 7 {T(y)+a(y,x)} for x c N (y,x) e A w Tr(x) for x «! N (2) E = {x e N C (x) + n(x) = Min [c (y) + n(y)3 = ^ } yen l If ir =» and k + < k : terminate, the problem is infeasible, Determine m by:

Let: P + i =P +i i= l...- G B = G +m p tüx- = p L x- i =! ( k - m ) +m+i +m+i ' H = +m j = 0 For each x e E generate all the routes R,. from 0 to (ox) x, the last arc of which belongs to Ä, and, the length of which is ^ (x) ; this is easily done by backtracking in the definition of C (x) and n(x). Similarly generate all the chains C, n v from x to D of length n(x). By combining a route R. * with a chain C, n v and repeating the operation for all x e E, all the routes from 0 to D of length u can be generated. Lets call them P.,..., P.. We +1 * +n need only to generate at most k - of them. If n 21 k - let P... ^ P.. j = 1 k - ; terminate, solution has been obtained. Go to Step 2. Step 2. - Let j = j + 1 If j > n go to Step 1. P = P +1 +j G _= G U?\. +1 +j

If the set of arcs in G,. - G is empty let: +i P +l+i!l = P^. +i 1 < i < k = + 1 Go to Step 2. If the set of arcs in G.. - G is not empty, they form a simple route C,, from 0. to D. (0., D. e G ) (of Lemma 5). j 3 J J J Let R = (I^,..,^), S = (S 1,... J S s ), T = (T^..,^) be respectively a set cf routes from 0 to 0., from D, to 0. J J J and from D. to D, obtained by considering parts of: - Those, routes from 0 to D which contain 0. ; J - Those routes from 0 to D which contain D. and then J V - Those routes from 0 to D which contain D. Generate new routes in G, according to increasing lengths, by taking the union of a part of a route in R, from 0 to 0., route C. and a part of a route in T from D to D. Insert those newly created routes in the seuence P^ so that the new seuence is still ordered according to increasing lengths. Generate new routes until exhaustion of possibilities or until the p =k--n + i-l first, elements of this new seuence have been created. If S = 0 go to Step 4. Let u = 1. We will call route of order u a route which contains (u+1) times route C, (and u times an element of S ). For instance a route of order 1 is the union of a route in R, route

C., a route in S, route C., a route in T. Go to Step 3. Step 3. - Generate routes of order u according to increasing lengths and their elements in the seuence just generated in such a position that the seuence is still ordered according to increasing lengths either until exhaustion oi possibilities or until the p first elements of the seuence have been generated. If the first route of order u is among the p first elements let u = u + 1 and go to Step 3. If not, go to Step 4. Step 4. - Let = + 1 Denote by P, the elements of the seuence just generated and by k their number. Go to Step 2. 3. Justification Of The Algorithm Let A = {(x.y) e A Tr(y) - Tr(x) = a(x,y)} G = (N,A) Lemma 1. - A necessary and sufficient condition for a cycle to be of 0 length (0-cycle) is that it be contained in G. Proof: (1) If a cycle [x»x. x -,x = x ] belongs 0 to G, it is a 0 cycle, J ' o 1 n-1' n o 7i(x ) - 7i(x ) - a(y,x ),1,0 (c 1 i i t * i nx ) - Tr(x ) = a(x,,x ) o n-i n-i o i = I " a ( x i_ 1» x i) v -.-. 1

(ii) Let C be a 0 cycle. For all the arcs (x.y) e C we have by definition of i\ : Ti(y) - TT(X) <_ a(x,y) If for one arc we had strict ineuality by adding these relations for all arcs of C, we would obtain 0 < Ü(C) which contradicts the assumption..e.d. Lenuna 2. - All routes in G from 0 to a given node z have the same length: TI(Z). Any route not completely included in G has a larger length. Proof; Obvious, since along any route of G TT(y) - Tr(x) = a(x,y) and for a route not completely included in G, we would have on at least one arc: Tr(y) - TT(X) < a(x,y)..e.d. Lemma 3. - A necessary and sufficient condition for n to be finite at the end of Step 1 is that P,. do not contain a 0-cycle. +j " Proof; Suppose P contains a 0-cycle, then the routes obtained by the union of P and i times this 0-cycle are of same length TT for any positive integer i. If there is an infinite number of routes of length ir, there, is an infinite subset of these routes the elements of v;hich differ from one another by the addition of a cycle a certain number of times since the number of chains from 0

to D is finite. The length of this cycle is thus 0..e.d. Lemma 4. - IT, as defined in (2), is the shortest length of all routes not completely Included in G. Proof; * It is sufficient to show that for each route P which contains at least an arc (x,y) in A, 2,(P ) > TT ' ' ' From the definition of TT and n we have: (3) )t(p*) >. TT(X) + a(x,y) + n(y) But from (1) : IT(X) + acx.y) >_ C (y) and the property of shortest distances that: Tt(y) 1 ^(x) + a(x,y) Then, from (2) : C (y) + n(y) >. n which together with (3) implies; A(P*) > * -.e.d. Lemma 5. - In Step 2 the set of arcs in G., - G is either empty or forms a ^ +1 simple route C^ from (K to D. (0., D, E G ). This route is either a chain j j j J J or a simple cycle in which case D. - 0,. J J

D Figure 1 Proof: If the set of arcs in G +1 G Is not empty, * J, P,. includes successive +J 5^ seuences of arcs of A ; let C be the last of these seuences when P.. is j +3 described from 0 to D. C. forms a route from 0. (e G ) to D. (e G ) since J J J C. is a subset of P... j +j The part of P,. from 0 to 0. is included in G for if it were not, it +J J would be possible, frrm Lemma 2, to construct another route shorter than TT and which would have the arcs of C, outside of G thus contradicting Lemma 4 and j b similarily for D to D, proving 3 a single path C.. Suppose that a proper subset of C forms a cycle. If this cycle was a 0-cycle from Lemma 3, n would be infinite and the algorithm would have been terminated at the end of Step 1. If this cycle had a positive length, it would be possible by deleting it from P, to construct a route not completely included in G and of length < tr, thus J r J e» contradicting Lemma 4 again. Thus if there is a cycle, it can only be simple. The following lemma is not crucial for the proof of the theorem, however, it helps understanding of the algorithm..e.d. Lemma 6. -i Proof: s It is impossible that TT < ^ _, since?.. is not among the shortest +j

10 routes. Suppose ir = Ti,. Then 3 ix t y) e A 0 P,. for which r (y) + n(y) = -1 * >" ^^ v = v. but then P., would have been discovered at a previous passage and -1 +1 r r & (x,y) would have been added to A, thus a contradiction..e.d. Theorem The algorithm leads to a solution in a finite number of steps, or shows that no solution exists. Proof; In Steps 2 and 3 the seuence P,.., P, v. is generated so that this seuence is at hand at beginning of Step 1. Then P.. Is either the shortest route completely included in G, P., or the shortest route containing some arc in Ä, P., (Lemma 4). +1 If the number of routes in G. (k + ), is less then k and- if there does not exist routes outside those in G (n =») the problem is infeasible. Each time Step 1 is described, some arcs are added to G so that we can only go a finite number of times through Step 1. We cannot cycle indefinitely in Step 3 since each time we go through Step 3, at least, a new route is added to the updated seuence and we do not want more than p routes. Now we can go only a finite number of times through Step 2 since at each passage the index j is increased by one unit and when j > n we go to Step 1..e.d. 4. Variant Of The Preceding Algorithm To Find The k Shortest Chains The basic idea of this variant is to perform the algorithm of Section 2 and to keep the routes thus generated only if they are chains. Two main differences

11 with the initial algorithtri justify a rewriting of the algorithm: - When a 0-cycle is met, no new chain will ever be constructed. - Routes of order u jl 1 will not give rise to any chain and Step 3 can be skipped. Step 0'. - Find all the shortest chains from 0 to D : P',., P'. 1 Step 1'. - Define: If fl k, terminate. Determine for all x e N : ii(x) = shortest distance from 0 to x. n(x) = shortest distance from x to D. k' = 0. {Min. v - {Tr(y) + a(y,x)} for x N (y.x) e A ' w ' IT(X) for x jf N (2) E = {x e N C a (x) + n(x) = Min U (y)+n(y)] - *) yen If Tf = oo an d k' + < k : terminate, the problem is infeasible. Determine m by: Let: P' = P, i = 1 m +i +i X L m G' = G' +m P'f^. = P'^,. i = l,..ak' -m) +rrrf-i +:.;fi = + m j = o

12 For each x e E generate the routes R,. from 0 to x, (ox) the last arc of which belongs to Ä and the length of which is C (x) ; this is easily done by backtracking in the definition of C (x) and TI(X). Similarly generate all the chains C, x from (xd) x to D of length n(x). By combining a route R,. which a chain C, ^ (ox) (xd) in such a way that no newly constructed route from 0 to D contains a cycle counted more than once, a finite number n of routes from 0 to D of length TT, P,.., P are generated. Among those are all the chains of length TT and having a nonempty inter- section with Ä. Go to Step 2'. Step 2\ - j = j + 1 If j > n go to Step 1'. If P^, is a chain, let P',, = P i. +J +1 +j Let ( + 1 if P, Is a chain +j therwise G', = G' U P** +j If the set of arcs in G', - G' is empty, let k', = k' p'?' = p, i < i < k 1 '+i +i = ' Go to Step 2'.

T 13 If the set of arcs in G', - G' is not empty, it forms a simple route C, from 0, to D,. Let Cl be the subset of C. which J j J 1 J is a chain from 0. to D.. J j Let R 1 = (R].. R'), T 1 = (T 1.. T 1 ) be respectively a set of chains from 0 to 0., from D, to D J J obtained by taking parts of: - Those chains from 0 to D which contain 0,. J - Those chains from 0 to D which contain D,. J Generate new routes in G',, according to increasing lengths, by routes taking union of a chain in R', chain C', and a chain in T'. Keep only those routes which are chains and insert them in the seuence P'TJ SO that the new seuence be still ordered according to increasing lengths. Generate new chains until exhaustion of possibilities or until the k - + j - 1 first elements of the new seuence have been generated. Let = ' Denote by?'_, the elements of the seuence just generated and by k 1 their number. Go to Step 2'. This algorithm, as well as algorithm of Section 2, can be slightly modified in order to produce, respectively all the chains (routes) which are shorter than a given length L (or within x% of the length of the shortest chain (route)).

14 5. Examples Suppose we want to find the four shortest routes and the four shortest chains In the following graph: a) Four Shortest Routes 1) Step 0. - The shortest route is uniue P = [0, 1, 2, D] A = {(01), (12), (2D)} UP-P = 6 2) Step 1. - Nodes TT(X) n(x) ^(x) n(x)+c 1 (x) 0 0 6 3 9 1 1 5 00 00 2 4 2 00 00 3 6 2 6 8 D 6 0 8 8 E - {3, D} u «= 8 P' does not exist P^ = [0, 1, 2, 3, D] n = 1

15 3) Step 2. - j = 1 P 2 = P' r 2 G n = G 1 UP 2 i.e. : There is no other route in G than P and P, i.e. P does not exist, k = 0. Go to Step 2. ^) Step 2. - j = 2 > n : go to Step 1. 5) Step 1. - Nodes n(x) ; 2 (x) n(x)+c 2 (x) 0 6 3 9 1 5 CO 00 2 2 00 00 3 2 8 10 E = {0} TI 2 = 9 D 0 00 00 Since P does not exist m = 0 P^ = [0, 1, 2, 0, 1, 2, D] n - 1 Go to Step 2.

16 6) Step 2. - j = 1 P 3 = ^3 G = G 2 UP2 i.e, C3 = (2, 0) P^ = [0-1-2-0-1-2-3-D] Wp = n If we go to Step 3 and generate the shortest route of order 1, we find P^ = [0-1-2-U-1-2-0-1-2-D] A(P^) = 12 and we insert it in the seuence after P, Go to Step 2. 7) Step 2. -j=2>n-l,goto Step 1. 8) Step 1. -

17 Nodes n(x) C 3 (x) n(x)+c 3 (x) 0 6 00 00 1 5 oo oo 2 2 CO 00 3 2 8 10 E = {3} ^ = 11 D 0 00 00 and P 4 = p3 = [o-3-d] terminate. b) Four Shortest Chains Up to stage (6) the two algorithms give the same result i.e. Pj = [0, 1, 2, D] P^ = [0, 1, 2, 3, D] 6') Step 2'. - j " 1 ' = - 2 G' = G' U P 2 3 2 No new chain in G' ; P' does not exist, k' -- 0 Go to Step 2'.

.18 7') Step 2'. -j=2>n=l go to Step I 1 8') Step 1'. - Nodes n(x) C 2 (x) n(x)+c 2 (x) 0 6 00 00 1 5 00 00 2 2 00 00 3 2 8 10 D 0 00 oo E - {3} "3 =10 2 P' does not exist so m = 0 P3 = [0, 3, D] n = 1 Go to Step 2'. 9') Step 2'. - j = 1 P^ is a chain: P^ = P^ = [0, 3, D] G' ^ U P* = G There is no chain outside P' P' P' in G' ; i.e., Pi,3 12 3 3 4 does riot exist, k' = 0. Go to Step 1'. 10») Step 1'. - Nodes n(x) c 3 (x) n(x)+; 3(x) 0 6 00 CO 1 5 ^n 00 2 2 3: CO 3 2 00 00 D 0 '., cc

.19 k^ + 3 = 0 + 3<4 Problem is Infeaslble. "T

20 REFERENCES [1] Bellman, R., and R. Kalaba, "On k Best Policies," Journal of SIAM. Vol. 8, pp 582-588, (1960). [2] Berge, C, "Theorie des Graphes et Applications," Dunod, (1962). [3] Clarke, S., Krikorian, A., and J. Rausen, "Computing the N Best Loopless Paths in a Network." Journal of SIAM. Vol. 11, No. 4, pp 1096-1102. [4] Dantzig, G. B., "The Shortest Route Problem," Operations Research Journal, Vol. 5, pp 2 70-273, (1951). [5] Ford, L., and R. Fulkerson, "Flows in Networks," Princeton University Press, pp 130-134. [6] Hoffman, W., and R. Parley, "A Method for the Solution of the U 1 Best Path Problem," Journal of Association Computing Machinery, Vol. 6, pp 506-514. [7] Pollack, M., "Solution of the k Best Route Through a Network," A Review, Journal of Mathematical Analysis andapplication. Vol. 3, pp 547-559, (1961).

Unclassified Security Classification DOCUMENT CONTROL DATA R&D (Security clasaitieation ol title, body ol.ibstr.id and indrxiti/! uniiolnliou must IT etitrred wlirn Iho ovatull rc/iorl is cinssilied) I. ORIGINATING ACTIVITY (Corpora(o outho/j University of California, Berkeley 2/1 RCPOPT StCUFil TY CLASSIFICATION Unclassified Zl> CROUP 3. REPORT TITLE THE k SHORTEST ROUTES AND THE k SHORTEST CHAINS IN A GRAPH 4 DESCRIPTIVE NOTES (Type ol report and Inclusive dates) Research Report 5- A\JTHOH(S) (Last name, first naine, initial) Sakarovitch, Michel 6 REPORT DATE October 1966 8a. CONTRACT OR GRANT NO. Nonr-222(83) 6. PROJEC T NO. NR 047 033 c. RR 003 07 01 70 TOTAL NO. OF PAGES 24 9a. ORIGINATOR'S REPORT NUMBERfS; ORC 66-32 76. NO. OF REFS 9b. OTHER REPORT NOfS.) (A ny other numbers that may be as at ned this report) 10. AVAILABILITY/LIMITATION NOTICES Available without limitation on dissemination. It. SUPPLEMENTARY NOTES»2- SPONSORING MILITARY ACTIVITY Mathematical Science Division 13. ABSTRACT DD 1^1473 Unclassified Security Classitication

14. Unc]HBsifled Security Clf.ssificfition. Atjanrtvzmm. KEY WORDS ROLE «OLE ROLL LINK C WT k Shortest Routes k Shortest Chains 1. ORIGINATING ACTIVITY: Enter the name ond nddress of tlic contractor, subcontractor, grantee, Deiuirtmcnt of Defense octivity or other orgr.nizf.tion fcor;)or.we author) issuinc the report. 2«. REPORT SECUKTTY CLASSIFICATION: Enter the overall security classification of the report. Indicate v/liether "Rc&tiicted Data" is included Marking is to be in accirdance with appropriate security regulations, 2b. GROUP: Automatic downgrading is specified in DoD Directive 5200.10 and Armed Forces Industrial Manual, Enter the t^011!' number. Also, when applicable, show that optional markidüs have been used for Group 3 and Group 4 as authorized. 3. REPORT TITLE: Enter the complete report title in all capital letters. Titles in all cases should be unclassified. If a nieaningful title cannot bo selected without classification, show title classification in all capitals in parenthesis immediately following the title. 4. DESCRIPTIVE NOTES: If appropriate, enter the type of report, e.g., interim, progress, summary, amual, or final. Give the inclusive dates when a specific reporting period is covered. 5. AUTIIOR(S): Enter the name(s) of author(s) as shown on or in the report. Entei tast name, first name, middle initial. If xilitary, show rank end branch of service. The name of the principal..;uhor is an absolute minimum reuirement. 6. REPORT DATE; Enter the date of the report as day, month, year; or month, year. If more than one date appears on the report, use date of publication. 7a. TOTAL NUMBER OF PAGES: The total page count should follow normal pagination procedures, i.e., enter the number of pages containing information. 7b. NUMBER OF REFERENCES: Enter the total number of references cited in the report. 8a. CONTRACT OR GRANT NUMBER: If appropriate, enter the applicable number of the contract or grant under which the report was written. 86, Be, &, Bd. PROJECT NUMBER: Enter the appiopriatc military department identification, such as project number, subproject number, system numbers, task number, etc. 9a. ORIGINATOR'S REPORT NUMBER(S): Enter the official report number by which the document will be identified and controlled by the originating activity. This number must be uniue to this report. 0/., OTUF.R RKPÜKT NU.V.UF.R(S): If the rcpott l; be«. r)ssi -.,-i'-;l.-tiy other report nuiiibetr. (oil'it r b}' th' nr;,;'. i '.'or or by the f;jon.t'jr}, f(lr.o eater thin r.u..i'.rr(r). 10. AVAILABILITY/LIMITATION NOTICES: Enter any limitations on further dissemination of the report, other than those INSTRUCTIONS imposed by security classification, using standard statements auch as: (1) (2) (3) (4) (5) "Qualified reuesters may obtain copies of this report from DDC" "Foreign announcement and dissemination of this report by DDC is not authorized." "U. S. Government agencies may obtain copies of this report directly from DDC. Other ualified DDC users shall reuest through "U. S. military agencies may obtain copies of this report directly from DDC Other ualified users shall reuest through "All distribution of this report is controlled. Qualified DDC users shall reuest through If the report has been furnished to the Office of Technical Services, Department of Commerce, for sale to the public, indicate this fact and enter the price, if known. 11. SUPPLEMENTARY NOTES: Use for additional explanatory notes. 12. SPONSORING MILITARY ACTIVITY: Enter the name of the departmental project office or laboratory sponsoring fpaj" in^ tor) the research and development. Include address. 13- ABSTRACT: Enter an abstract giving a brief and factual summary of the document indicative of the report, even though it may also appear elsewhere in the body of the technical report. If additional space is reuired, a continuation sheet shall' be attached. It is highly desirable that the abstract of classified reports be unclassified. Each paragraph of the abstract shall end with an indication of the military security classification of the information in the paragraph, represented as fts.). (S), <C), or (U). There is no limitation on the length of the abstract. However, the suggested length is from 150 to 225 words. 14. KEY WORDS: Key words are technically meaningful terms or short phrases that characterize a report and may be used as index entries for cataloging the report. Key words must be selected so that no security classification is reuired. Identifiers, such as euipment model designation, trade name, military project code name, f,eoj»taphic location, may be used us key word'; ft x but will be ft 'Hie assigm lie d by link an injicntion roles ti of technir.il conif.hts is opti'mal DD FORM 1 JAN 64 1473 (BACK) Und ass i fled Security Classification