]> mj.ucw.cz Git - ga.git/commitdiff
APSP: Zminka o efektivnejsich algoritmech na (min,+)-souciny
authorMartin Mares <mj@ucw.cz>
Thu, 20 Jan 2011 23:16:36 +0000 (00:16 +0100)
committerMartin Mares <mj@ucw.cz>
Thu, 20 Jan 2011 23:16:36 +0000 (00:16 +0100)
14-floyd/14-floyd.tex
ga.bib

index c2b16b45acec9206d1657d847dc610c4cf6600e2..af0a867957798b10e646bf3218fd706c656f3346 100644 (file)
@@ -214,10 +214,20 @@ S~$(\lor,\land)$-sou
 (ka¾dý souèin pøitom mù¾eme provést jako násobení matic následované pøepsáním nenul na
 jednièky).
 
 (ka¾dý souèin pøitom mù¾eme provést jako násobení matic následované pøepsáním nenul na
 jednièky).
 
-Aplikujeme-li $(\min,+)$-souèiny na~matici délek hran doplnìnou nulami na~diagonále,
-získáme matici vzdálenosti. Jediný zádrhel bohu¾el je, ¾e zatím $(\min,+)$-souèiny
-neumíme poèítat rychleji ne¾ v~èase $\Theta(n^3)$.
-(XXX: Jde to v~$\O(n^3/\log n)$, popsat, jak.)
+Podobnì mù¾eme poèítat i matici vzdáleností: zaèneme s~maticí délek hran doplnìnou o~nuly na~diagonále
+a pou¾ijeme $(\min,+)$-souèiny. Tyto souèiny ale bohu¾el neumíme pøevést na klasické násobení matic.
+Pøesto je známo nìkolik algoritmù efektivnìj¹ích ne¾ $\Theta(n^3)$, by» pouze o~málo:
+napøíklad Zwickùv \cite{zwick:apsp} v~èase $\O(n^3\sqrt{\log\log n}/\log n)$
+(zalo¾ený na dekompozici a pøedpoèítání malých blokù) nebo Chanùv \cite{chan:apsp} v~$\O(n^3/\log n)$
+(pou¾ívající geometrické techniky). Abychom porazili Floydùv-Warshallùv algoritmus,
+potøebovali bychom ov¹em vìt¹í ne¾ logaritmické zrychlení, proto¾e souèinù potøebujeme
+vypoèítat logaritmicky mnoho.
+
+Dodejme je¹tì, ¾e pro grafy ohodnocené malými celými èísly je mo¾né vyu¾ít
+celou øadu dal¹ích trikù. Zájemce o~tento druh algoritmù odkazujeme na Zwickùv
+èlánek~\cite{zwick:apspint}.
+
+%% FIXME: Indexovat matice mno¾inami, ne èísly
 
 \h{Seidelùv algoritmus}
 
 
 \h{Seidelùv algoritmus}
 
diff --git a/ga.bib b/ga.bib
index 5985c58382213ac3f98e5c7f2cd15aa2c1d961e4..5a09f3a0096e4ec24c868a324d07ecf33888f39d 100644 (file)
--- a/ga.bib
+++ b/ga.bib
     url = {http://dx.doi.org/10.1109/SFCS.2005.39},
     year = {2005}
 }
     url = {http://dx.doi.org/10.1109/SFCS.2005.39},
     year = {2005}
 }
+
+@article{ zwick:apsp,
+    author = {Zwick, Uri},
+    citeulike-article-id = {1027459},
+    citeulike-linkout-0 = {http://dx.doi.org/10.1007/s00453-005-1199-1},
+    citeulike-linkout-1 = {http://www.ingentaconnect.com/content/klu/453/2006/00000046/00000002/00001199},
+    doi = {10.1007/s00453-005-1199-1},
+    issn = {0178-4617},
+    journal = {Algorithmica},
+    month = {October},
+    number = {2},
+    pages = {181--192},
+    posted-at = {2007-01-06 00:46:43},
+    publisher = {Springer},
+    title = {{A Slightly Improved Sub-Cubic Algorithm for the All Pairs Shortest Paths Problem with Real Edge Lengths}},
+    url = {http://dx.doi.org/10.1007/s00453-005-1199-1},
+    volume = {46},
+    year = {2006}
+}
+
+@article{ chan:apsp,
+    author = {Chan, Timothy},
+    citeulike-article-id = {2315328},
+    citeulike-linkout-0 = {http://dx.doi.org/10.1007/s00453-007-9062-1},
+    doi = {10.1007/s00453-007-9062-1},
+    journal = {Algorithmica},
+    keywords = {algorithms, graph},
+    month = {February},
+    number = {2},
+    pages = {236--243},
+    posted-at = {2008-01-31 15:49:43},
+    priority = {2},
+    title = {{All-Pairs Shortest Paths with Real Weights in $O(n^3/\log n)$ Time}},
+    url = {http://dx.doi.org/10.1007/s00453-007-9062-1},
+    volume = {50},
+    year = {2008}
+}
+
+@article{ fredman:apsp,
+  title={{New bounds on the complexity of the shortest path problem}},
+  author={Fredman, M.L.},
+  journal={SIAM Journal on Computing},
+  volume={5},
+  pages={83},
+  year={1976}
+}
+
+@article{ zwick:apspint,
+  title={{All pairs shortest paths using bridging sets and rectangular matrix multiplication}},
+  author={Zwick, U.},
+  journal={Journal of the ACM (JACM)},
+  volume={49},
+  number={3},
+  pages={289--317},
+  issn={0004-5411},
+  year={2002},
+  publisher={ACM}
+}