Prim algoritmusa Gubicza József (GUJQAAI.ELTE). Jellemzők Cél: Adott egyszerű gráfban a min. költségű feszítőfa meghatározása. Algoritmikus szinten: 3.

Slides:



Advertisements
Hasonló előadás
A Floyd-Warshall algoritmus
Advertisements

A Dijkstra algoritmus.
Készítette: Major Máté
Készítette: Mester Tamás METRABI.ELTE.  Adott egy G irányított vagy irányítás nélküli, véges gráf. Az eljárás célja a G gráf összes csúcsának bejárása.
Készítette: Hanics Anikó. Az algoritmus ADT szintű leírása: A d[1..n] és P[1..n] tömböket, a korábban ismertetett módon, a távolság és a megelőző csúcs.
Gubicza József (GUJQAAI.ELTE)
Dijkstra algoritmus Irányított gráfban.
Dijkstra algoritmus Baranyás Bence. Feladat Adott egy G=(V,E) élsúlyozott, irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges.
Gráf Szélességi bejárás
Készítette Schlezák Márton
Ág és korlát algoritmus
Van-e Euler vonal az alábbi gráfban?
Gráf szélességi bejárása. Alapfogalmak G = (V,E)irányított, véges, nem üres gráf d (s,u)két csúcs távolsága lút hossza, élek száma Qsor adatszerkezet.
Prím algoritmus.
Dijkstra algoritmus. Kiválasszuk a legkisebb csúcsot, ez lesz a kezdőcsúcs, amit 0-val címkézünk és megjelöljük sárgaszínnel. Szomszédjai átcímkézése.
1 Györgyi Tamás – GYTNAAI.ELTE 2007 Április 03 Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus Bellman-Ford Algoritmusa S a b d e
„Országos” feladat. Feladat: Egy tetszőleges, színes országokat tartalmazó térképen akar eljutni egy kommandós csapat egy országból egy másikba. Viszont.
Dijkstra algoritmus Algoritmusok és adatszerkezetek 2. Újvári Zsuzsanna.
Dijkstra algoritmusa Egy csúcsból a többibe vezető legkisebb költségű út megkeresése Az algoritmus működésének leírása és bemutatása LL.
Szélességi bejárás A szélességi bejárással egy irányított vagy irányítás nélküli véges gráfot járhatunk be a kezdőcsúcstól való távolságuk növekvő sorrendjében.
Gráf szélességi bejárása
Dijkstra algoritmus. Az algoritmus elve Kezdésnél a start csúcson kívül minden csúcs távolsága legyen ∞. (A start csúcs távolsága 0) Feltételes minimum.
Készítette: Lakos Péter.  Adott egy élsúlyozott, véges gráf  Negatív élsúlyokat nem tartalmaz  Lehet irányított vagy irányítatlan  Továbbá adott egy.
Készítette: Lakos Péter.  Adott egy irányított vagy irányítatlan, véges gráf.  Írjuk ki a csúcsokat egy kezdőcsúcstól való távolságuk növekvő sorrendjében.
Dijkstra-algoritmus ismertetése
Algoritmusok II. Gyakorlat 3. Feladat Pup Márton.
Lénárt Szabolcs Páll Boglárka
Gráf Szélességi bejárás/keresés algoritmusa
Fák.
A Dijkstra algoritmus.
Gráf szélességi bejárása SzB(G,p). Tetszőleges gráf, melyben a p csúcsot választottam kiindulónak: A gráfnak megfelelő fa:
Készítette: Hanics Anikó. Az algoritmus elve: Kezdetben legyen n db kék fa, azaz a gráf minden csúcsa egy-egy (egy pontból álló) kék fa, és legyen minden.
Dijkstra algoritmusa Gubicza József (GUJQAAI.ELTE)
1 Szélességi Bejárás Györgyi Tamás – GYTNAAI.ELTE 2007 Március 22 Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus S b a d e f h g c.
1 Dijkstra Algoritmusa Györgyi Tamás – GYTNAAI.ELTE 2007 Április 02 Algoritmusok És Adatszerkezetek 2 Gráfalgoritmus S a b c d e
Az ábrán az inicializáló blokk lefutása utáni állapotot láthatjuk. A KÉSZ halmazhoz való tartozást színezéssel valósítjuk meg. A nem KÉSZ csúcsok fehérek,
Mélységi bejárás Az algoritmus elve: Egy kezdőpontból kiindulva addig megyünk egy él mentén, ameddig el nem jutunk egy olyan csúcsba, amelyből már nem.
DAG topologikus rendezése
Dijkstra-algoritmus. A Dijkstra-algoritmus egy mohó algoritmus, amivel irányított gráfokban lehet megkeresni a legrövidebb utakat egy adott csúcspontból.
Kruskal-algoritmus.
Készítette Schlezák Márton
Bellmann-Ford Algoritmus
Horváth Bettina VZSRA6.  Célja: Az eljárás célja egy véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő sorrendben.
Útkeresések.
Diszjunkt halmazok adatszerkezete A diszjunkt halmaz adatszerkezet diszjunkt dinamikus halmazok S={S 1,…,S n } halmaza. Egy halmazt egy képviselője azonosít.
Morvai Mária-Júlia F3D3D4.  Adott egy G=(V,E)élsúlyozott, irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó,véges gráf. Továbbá adott.
Gráf szélességi bejárása. Cél Az algoritmus célja az, hogy bejárjuk egy véges gráf összes csúcsát és kiírjuk őket a kezdőcsúcstól való távolságuk szerint.
DIJKSTRA- ALGORITMUS. A Dijkstra-algoritmus egy mohó algoritmus, amivel irányított vagy irányítás nélküli, negatív élsúlyokat nem tartalmazó, véges gráfokban.
Szállításszervezés.
Szélességi bejárás Gráf-algoritmusok Algoritmusok és adatszerkezetek II. Gergály Gábor WZBNCH1.
Készítette : Giligor Dávid Neptun : HSYGGS
Prim algoritmus Algoritmusok és adatszerkezetek 2. Újvári Zsuzsanna.
Szélességi bejárás. Véges gráf összes csúcsának bejárása a kezdőcsúcstól való távolságuk szerinti növekvő sorrendben Egy csúcsot egyszer járunk be Egyenlő.
Dijkstra algoritmus. Egy minimális költségű utat keres élsúlyozott gráfban A gráf lehet irányított vagy irányítás nélküli Feltétele, hogy pozitív élsúlyok.
Dijkstra algoritmus. Az algoritmus működése  Kezdésnél a kezdő csúcson kívül minden csúcs távolsága legyen ∞, a kezdő csúcs távolsága 0.  Feltételes.
Gráf Szélességi bejárás Készítette: Giligor Dávid Neptun : HSYGGS.
Dijkstra algoritmus Gráf-algoritmusok Algoritmusok és adatszerkezetek II. Gergály Gábor WZBNCH1.
Algoritmus DAG = irányított körmentes gráf. Először ezt a tulajdonságot ellenőrizzük (mélységi bejárással), aztán rendezzük: Q: Sor adatszerkezet, kezdetben.
V 1.0 Szabó Zsolt, Óbudai Egyetem, Programozás II. Gráfok Dijkstra algoritmus Kruskal algoritmus.
Szélességi bejárás Pátyerkó Dorina (VTYX9O). Szélességi bejárás algoritmusa Kijelölünk egy kezdőcsúcsot. A csúcs szomszédjait megkeressük, majd betesszük.
Kvantitatív módszerek
A Dijkstra algoritmus.
Gráfok szélességi bejárása Dijkstra algoritmus
Mesterséges intelligencia
Lineáris keresés Keresés (N,A,sorszam) i := 1
Készítette Tácsik Attila
Gráfalgoritmusok G=(V,E) gráf ábrázolása
Dijkstra algoritmusa: legrövidebb utak
Dijkstra algoritmusa: legrövidebb utak
Dijkstra algoritmusa: legrövidebb utak
Előadás másolata:

Prim algoritmusa Gubicza József (GUJQAAI.ELTE)

Jellemzők Cél: Adott egyszerű gráfban a min. költségű feszítőfa meghatározása. Algoritmikus szinten: 3 tömb feltöltése; - d[1..n] a csúcsokhoz tartozó min. költségek ill. - π (parent) a csúcsokhoz tartozó szülők meghat. - a kész[1..n] segédtömb segítségével, amely azt mutatja, vizsgáltuk-e már az adott csúcsot. A gráf élcímkéi pozitív értékeket vehetnek fel, a csúcscímkék pozitív, ill. végtelent.

Az algoritmus A minimum keresés a d tömbbeli min. értékre vonatkozik  a legkisebb költségű csúcs, ami még nincs kész. A fő változás a Dijkstra algoritmushoz képest, hogy itt csak az adott él hosszát (ellenőrizzük) tároljuk le, nem pedig a d[u] –val vett összegét.

d∞∞∞∞∞∞∞ π∕∕∕∕∕∕∕ Kész ∞ ∞∞ ∞ ∞ ∞∞ Kezdőállapot: minden csúcsot ∞-el címkézünk, szüleiket NIL- re állítjuk, valamint a Kész értékeket 0-kra, és kijelöljük a kezdőcsúcsot. s =

d0∞∞∞∞∞∞ π∕∕∕∕∕∕∕ Kész ∞ 0∞ ∞ ∞ ∞∞ A kezdőcsúcs értékét 0-ra állítjuk, így a FeltMinker(d[1..n], u, Kész[j] = 0) őt fogja megtalálni először. Ezt a csúcsot készre állítjuk. s =

d05∞∞∞∞∞ π∕1∕∕∕∕∕ Kész ∞ ∞ ∞ ∞∞ A csúcs minden szomszédjára megnézzük (amelyek még nincsenek Kész, 5 és 3), hogy: c(u,v) < d[v] Tehát az él, javít-e a költségen? Ha igen, d[v] = c(u,v) és π[v] := u szülő jelölése s =

d058∞∞∞∞ π∕11∕∕∕∕ Kész ∞ ∞ ∞ ∞ 8 Ha végeztünk az összes szomszéd vizsgálatával…. s =

d058∞∞8∞ π∕11∕∕2∕ Kész ∞ 8 ∞ ∞8 Iterálunk még egyet, a legkisebb költségű még nem kész elem a 2-es csúcs (d{5}), még nem kész szomszédai: 6, 4, 3 s =

d0584∞8∞ π∕112∕2∕ Kész ∞ ∞8 Mivel a 3-as csúcsba érés nem javítana a költségen 7 HAMIS, így tovább iterálunk. s =

d0584∞8∞ π∕112∕2∕ Kész ∞ ∞8 Tovább iterálunk a 4-esre, és elkezdjük vizsgálni a 6, 5 csúcsokkal s =

d058452∞ π∕11244∕ Kész ∞ 5 8 A 6-os csúcs költségén javít, így a 6-os szülője mostantól ő lesz (felülírás!), ill. az 5-ös költségén is. s =

d058452∞ π∕11244∕ Kész ∞ 58 Tovább iterálunk a 6-osra, vizsgálandó szomszédai: 7, 5 s =

d π∕ Kész A 7-es költségén javít, azonban az 5-ösön nem, mivel 8<5 hamis. s =

d π∕ Kész Tovább iterálunk a 5-ösre, ami a 7-essel nem ér el javulást, többre nem is vizsgáljuk. s =

d π∕ Kész A 7-esen nincs mit vizsgálni, csak készre jelöljük. s =

d π∕ Kész Tovább iterálunk a 3-asra, készre jelöljük, és mivel nincs nem kész szomszédja, így… s =

d π∕ Kész végeztünk. Ezzel megkaptuk eredményül a min. költségű feszítőfát a gráfunkban. s =