Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Single-Source Shortest Path i ekstern hukommelse Jonas Thomsen Ph.d. studerende Kvalifikationseksamen 27. september 2004.

Lignende præsentationer


Præsentationer af emnet: "Single-Source Shortest Path i ekstern hukommelse Jonas Thomsen Ph.d. studerende Kvalifikationseksamen 27. september 2004."— Præsentationens transcript:

1 Single-Source Shortest Path i ekstern hukommelse Jonas Thomsen Ph.d. studerende Kvalifikationseksamen 27. september 2004

2 © Jonas Thomsen, 2004 2 Plan for foredraget Introduktion til problemet Overordnet gennemgang af K. Mehlhorn og U. Meyer’s løsning i ”External-Memory Breadth-First Search” Beskrivelse af forskelle til U. Meyer og N. Zeh’s løsning i ”I/O-Efficient Undirected Shortest Paths”

3 © Jonas Thomsen, 2004 3 Beskrivelse af problemet Single-Source Shortest Path (SSSP) –Ønsker at beregne den korteste afstand fra en given startknude i en graf, til en given endeknude. –Løses vha. Dijkstras algoritme i intern hukommelse. –Hvis Dijkstra benyttes i ekstern hukommelse, skal der O(V log 2 V + E) I/O operationer til.

4 © Jonas Thomsen, 2004 4 Mehlhorn et al.’s løsning De beskriver bredde-først algoritme Består af to faser: –Præproces –Bredde-først søgning / SSSP BFS i SSSP i

5 © Jonas Thomsen, 2004 5 Præproces Find sammenhængskomp. med s, C s Beregn min. udspænd. træ, T s af C s Euler-tur i T s giver en serialisering Klip serialisering i stykker af 1/μ, S i Fjern dubletter mellem S i og S j, i≠j Beregn kantlister til knuder i S i –Gem i F i : (v, w, S(w), F S(w) ) –Leksikografisk ordnet

6 © Jonas Thomsen, 2004 6 SSSP Definitioner: –H, Hot pool, ekstern sorteret fil med kantlister –L(t) er de knuder der er t væk fra s –L(t - W - 1), …, L(t + W - 1) spande –N(L(t)) er naboknuderne til L(t) Virker for heltals-kantvægte {1,…, W} Virker for små værdier af W

7 © Jonas Thomsen, 2004 7 SSSP algoritmen Initialiser L(0) med {(s, id s )} Konstruktion af L(t): –Naboer til L(t - 1) i L(t), …, L(t + W - 1) –Fjern dubletter fra L(t) –Sammenlign L(t) med L(t - W – 1), …, L(t - 1) og fjern knuder fra L(t) som også er i de forrige

8 © Jonas Thomsen, 2004 8 SSSP – hot pool (1/2) Problem: I/O for at hente kantlister –Vi bruger H til at lagre aktuelle kanter Initialiser H med F 0 Under beregning af N(L(t - 1)): –Parallelt scan af L(t - 1) og H: V 1  L(t - 1), v j  V 1  v j  L(t - 1)  v j  H –Skab V 2 = L(t - 1)\V 1 –Sorter og eliminer dubletter i V 2

9 © Jonas Thomsen, 2004 9 SSSP – hot pool (2/2) Beregning af N(L(t - 1)) fortsat: –Temp. fil F’ er concat. af F i fra V 2 –Parallelt scan af V 2 og F’ Merge resultat med H –N(L(t - 1) skabes ved scan af H –Sorter N(L(t - 1) –Fjern færdige kantlister fra H

10 © Jonas Thomsen, 2004 10 Meyer et al.’s Løsningen virker for vilkårlige uorienterede grafer, G –vilkårlige positive reelle kantvægte mellem w og W –non-deterministisk: –deterministisk:

11 © Jonas Thomsen, 2004 11 Overordnet idé To faser igen: præproces og SSSP Benytter en prioritetskø i stedet for spandene fra Mehlhorn et al. I/O effektiv udgave af Dijkstra Arbejder med et hierarki af hot pools –Sortering af kanter efter vægt –Kanter med stor vægt kan udskydes til senere

12 © Jonas Thomsen, 2004 12 Præproces (1/2) Beregn min. udspænd. træ, T, af G Delgrafer, T i, af T –alle knuder –kanter med vægte mellem 2 i-1 og 2 i (kaldes kategori-i-kanter) –r = ceil(log 2 W) delgrafer, T 0, …, T r Opdeling af sammenhængskomp. i T i i klynger, så træ-diameter højst er 2 i μ –V 1, …, V q

13 © Jonas Thomsen, 2004 13 Præproces (2/2) Lav klynge-træ som et indeks over kategorier af klynger. I træet er en kategori-i-klynge barn til en kategori- (i+1)-klynge Kantlister til hver klynge gemmes i filer F 1, …, F q, sorteret som Mehlhorn et al.

14 © Jonas Thomsen, 2004 14 SSSP (uddrag) Indlæs hele F i, når kanter skal bruges Benyt hierarki H 1, …, H r af hot pools –gem højst kategori-i kanter i H i –ser først på tunge kanter, når lettere kanter når ud til samme afstand –mindsker I/O ved opslag af kantlister –kanter i kategori-i klynger, bliver først behandlet, når den første knude bliver –lavere kategori kanter flytter nedad i H’er

15 Spørgsmål?

16 Tak!


Download ppt "Single-Source Shortest Path i ekstern hukommelse Jonas Thomsen Ph.d. studerende Kvalifikationseksamen 27. september 2004."

Lignende præsentationer


Annoncer fra Google