Shortest Path Problem
Shortest Path Problem
6
4
3
v
n = v ) that over all possible n minimizes the sum
n1
i=1 f (ei,i+1 ). When each edge in the graph has unit
weight or f : E {1} , this is equivalent to nding the
path with fewest edges.
In graph theory, the shortest path problem is the problem of nding a path between two vertices (or nodes) in
a graph such that the sum of the weights of its constituent
edges is minimized.
These generalizations have signicantly more ecient algorithms than the simplistic approach of running a singlepair shortest path algorithm on all relevant pairs of vertices.
2 Algorithms
1
Denition
5 APPLICATIONS
A* search algorithm solves for single pair shortest
path using heuristics to try to speed up the search.
Undirected graph
3
3.1
5 Applications
Shortest path algorithms are applied to automatically nd
directions between physical locations, such as driving
directions on web mapping websites like MapQuest or
Google Maps. For this application fast specialized algorithms are available.[1]
3.2
Unweighted graphs
weights
3.5
3.6
3.7
A more lighthearted application is the games of "six degrees of separation" that try to nd the shortest path in
graphs like movie stars appearing in the same lm.
3
erty has been formalized using the notion of highway
dimension.[3] There are a great number of algorithms that
exploit this property and are therefore able to compute
the shortest path a lot quicker than would be possible on
general graphs.
All of these algorithms work in two phases. In the
rst phase, the graph is preprocessed without knowing
the source or target node. The second phase is the
query phase. In this phase, source and target node are
known.The idea is that the road network is static, so the
preprocessing phase can be done once and used for a large
number of queries on the same road network.
The algorithm with the fastest known query time is called
hub labeling and is able to compute shortest path on the
road networks of Europe or the USA in a fraction of a
microsecond.[4] Other techniques that have been used are:
ALT
Arc Flags
Contraction hierarchies
Transit Node Routing
Reach based Pruning
Labeling
Related problems
minimize
ijA wij
xij subjectto x
0 and for all i,
j xji
j xij
ifi = s;
1,
1, ifi = t;
0,
otherwise.
6.1
Strategic shortest-paths
10
Many problems can be framed as a form of the shortest path for some suitably substituted notions of addition along a path and taking the minimum. The general approach to these is to consider the two operations to
be those of a semiring. Semiring multiplication is done
along the path, and the addition is between paths. This
general framework is known as the algebraic path problem.[7][8][9]
Most of the classic shortest-path algorithms (and new
ones) can be formulated as solving linear systems over
such algebraic structures.[10]
More recently, an even more general framework for solving these (and much less obviously related problems)
has been developed under the banner of valuation algebras.[11]
See also
Pathnding
IEEE 802.1aq
Flow network
Shortest path tree
Euclidean shortest path
Min-plus matrix multiplication
Bidirectional search, an algorithm that nds the
shortest path between two vertices on a directed
graph
10
10.1
References
Notes
REFERENCES
[3] Abraham, Ittai; Fiat, Amos; Goldberg, Andrew V.; Werneck, Renato F. Highway Dimension, Shortest Paths,
and Provably Ecient Algorithms. ACM-SIAM Symposium on Discrete Algorithms, pages 782-793, 2010.
[4] Abraham, Ittai; Delling, Daniel; Goldberg, Andrew
V.; Werneck, Renato F. research.microsoft.com/pubs/
142356/HL-TR.pdf A Hub-Based Labeling Algorithm
for Shortest Paths on Road Networks. Symposium on
Experimental Algorithms, pages 230-241, 2011.
[5] Kroger, Martin (2005). Shortest multiple disconnected path for the analysis of entanglements in twoand three-dimensional polymeric systems.
Computer Physics Communications 168 (168): 209232.
doi:10.1016/j.cpc.2005.01.020.
[6] Ravindra K. Ahuja, Thomas L. Magnanti, and James B.
Orlin (1993). Network Flows: Theory, Algorithms and
Applications. Prentice Hall. ISBN 0-13-617549-X.
[7] John Baras; George Theodorakopoulos (4 April 2010).
Path Problems in Networks. Morgan & Claypool Publishers. pp. 9. ISBN 978-1-59829-924-3.
[8] Mehryar Mohri, "Semiring frameworks and algorithms
for shortest-distance problems", Journal of Automata,
Languages and Combinatorics, Volume 7 Issue 3, January
2002, Pages 321 - 350
[9] http://www.iam.unibe.ch/~{}run/talks/
2008-06-05-Bern-Jonczy.pdf
[10] Michel Gondran; Michel Minoux (2008). Graphs, Dioids
and Semirings: New Models and Algorithms. Springer Science & Business Media. chapter 4. ISBN 978-0-38775450-5.
[11] Marc Pouly; Jrg Kohlas (2011). Generic Inference: A
Unifying Theory for Automated Reasoning. John Wiley &
Sons. Chapter 6. Valuation Algebras for Path Problems.
ISBN 978-1-118-01086-0.
10.2 Bibliography
Ahuja, Ravindra K.; Mehlhorn, Kurt; Orlin, James;
Tarjan, Robert E. (April 1990). Faster algorithms
for the shortest path problem. Journal of the ACM
(ACM) 37 (2): 213223.
Bellman, Richard (1958). On a routing problem.
Quarterly of Applied Mathematics 16: 8790. MR
0102435.
Cherkassky, Boris V.; Goldberg, Andrew V.;
Radzik, Tomasz (1996). Shortest paths algorithms: theory and experimental evaluation. Mathematical Programming. Ser. A 73 (2): 129
174. doi:10.1016/0025-5610(95)00021-6. MR
1392160.
Cormen, Thomas H.; Leiserson, Charles E.; Rivest,
Ronald L.; Stein, Cliord (2001) [1990]. SingleSource Shortest Paths and All-Pairs Shortest Paths.
10.3
Missing references
Introduction to Algorithms (2nd ed.). MIT Press and
McGraw-Hill. pp. 580642. ISBN 0-262-03293-7.
5
Study of Model Techniques for Communication Systems. Cleveland, Ohio: Case Institute of Technology.
Moore, E. F. (1959). The shortest path through
a maze. Proceedings of an International Symposium on the Theory of Switching (Cambridge, Massachusetts, 25 April 1957). Cambridge: Harvard
University Press. pp. 285292.
Pettie, Seth; Ramachandran, Vijaya (2002).
Computing shortest paths with comparisons and
additions. Proceedings of the thirteenth annual
ACM-SIAM symposium on Discrete algorithms. pp.
267276. ISBN 0-89871-513-X.
Pettie, Seth (26 January 2004). A new approach
to all-pairs shortest paths on real-weighted graphs.
Theoretical Computer Science 312 (1): 4774.
Pollack, M.; Wiebenson, W. (MarchApril 1960).
Solution of the Shortest-Route ProblemA Review. Op. Res. 8 (2): 224230.
Schrijver, Alexander (2004). Combinatorial Optimization Polyhedra and Eciency. Algorithms
and Combinatorics 24. Springer. ISBN 3-54020456-3. Here: vol.A, sect.7.5b, p.103
Shimbel, Alfonso (1953).
Structural parameters of communication networks.
Bulletin
of Mathematical Biophysics 15 (4): 501507.
doi:10.1007/BF02476438.
Thorup, Mikkel (1999). Undirected single-source
shortest paths with positive integer weights in linear
time. Journal of the ACM (JACM) 46 (3): 362394.
Retrieved 28 November 2014.
Thorup, Mikkel (2004). Integer priority queues
with decrease key in constant time and the single source shortest paths problem. Journal of
Computer and System Sciences 69 (3): 330353.
doi:10.1016/j.jcss.2004.04.003.
Whiting, P. D.; Hillier, J. A. (MarchJune 1960).
A Method for Finding the Shortest Route through
a Road Network. Operational Research Quarterly
11 (1/2): 3740.
Williams, Ryan (2014). Faster all-pairs shortest
paths via circuit complexity. Proceedings of the
46th Annual ACM Symposium on Theory of Computing (STOC '14). New York: ACM. pp. 664673.
arXiv:1312.6680. doi:10.1145/2591796.2591811.
MR 3238994.
11 FURTHER READING
11
Further reading
12
12.1
Shortest path problem Source: https://en.wikipedia.org/wiki/Shortest_path_problem?oldid=713149547 Contributors: AxelBoldt, General Wesc, LC~enwiki, The Anome, Shd~enwiki, JeLuF, B4hand, Michael Hardy, Booyabazooka, Ijon, Dcoetzee, Dysprosia, Pigorsch,
Altenmann, Lzur, Sho Uemura, Giftlite, Wolfkeeper, BenFrantzDale, Andris, Lqs, OverlordQ, Andreas Kaufmann, Rich Farmbrough,
Rasmusdf, DcoetzeeBot~enwiki, ESkog, TerraFrost, Brian0918, MisterSheik, Caesura, Oleg Alexandrov, Nuno Tavares, Mindmatrix,
Camw, Oliphaunt, Ruud Koot, BD2412, Qwertyus, Rjwilmsi, Xperimental~enwiki, Mathbot, Mathiastck, Choess, Kri, Cthe, Chobot,
Phelanpt, Chris Capoccia, Gaius Cornelius, Anomie, Nethgirb, Lt-wiki-bot, Cedar101, Treesmill, SmackBot, Mcld, Ohnoitsjamie, DHNbot~enwiki, Tommyjb, Lpgeen, RomanSpa, MadScientistVX, Optakeover, Graph Theory page blanker, Devis, Headbomb, Squire55,
David Eppstein, Kope, Glrx, R'n'B, Edepot, Essess, Dmforcier, Alcidesfonseca, Aaron Rotenberg, Alfredo J. Herrera Lago, Kbrose, SieBot,
Taemyr, Lourakis, Jdaloner, Hariva, Denisarona, Justin W Smith, Metaprimer, Cairomax, Daveagp, Marc van Leeuwen, C. lorenz, Addbot,
Fgnievinski, Jason.surratt, Download, Delaszk, Cipher1024, WikiDreamer Bot, Jarble, Luckas-bot, Yobot, AnomieBOT, Erel Segal, Materialscientist, Citation bot, Xqbot, Alexander Anoprienko, Pmlineditor, Suzhouwuyue, Captain-n00dle, Deanphd, Citation bot 1, RedBot,
Serols, Robert Geisberger, RobinK, Mjs1991, Trappist the monk, MoreNet, Horcrux92, ToneDaBass, John of Reading, WikitanvirBot,
Super48paul, Hari6389, F, Mkroeger, Templatetypedef, ClueBot NG, MiroBrada, Nullzero, BG19bot, Marcelkcs, Happyuk, BattyBot,
Jochen Burghardt, Simonpratt, Amine.marref, HoboMcJoe, Ginsuloft, Robmccoll, Artyom Kalinin, Yacs, Monkbot, JMP EAX, Boky90,
KasparBot, Danieloliveira56, Mikkel2thorup and Anonymous: 118
12.2
Images
12.3
Content license