Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Készítette: Kosztyán Zsolt Tibor

Hasonló előadás


Az előadások a következő témára: "Készítette: Kosztyán Zsolt Tibor"— Előadás másolata:

1 Készítette: Kosztyán Zsolt Tibor
Hálótervezés Készítette: Kosztyán Zsolt Tibor 2.

2 Módszerek lefutási ideje
P osztályúak NP osztályúak NP teljesek Lefutási idő: O(f(n))=g(n) n1>n, c>0 cf(n)>=g(n) n1<n

3 Alapvető gráfelméleti algoritmusok
BFS (Breath First Search) O(n2)

4 Alapvető gráfelméleti algoritmusok
DFS (Depth First Search) O(n2)

5 Minimális költségű feszítőfa keresése
Minimális költségű feszítőfa: Egy súlyozott gráf részgráfja minimális költségű feszítőfa (minimal spanning tree) ha: Feszítőfa (a gráf valamennyi csúcsát tartalmazza összefüggő körmentes) és a lehetséges feszítőfák közül minimális költségű.

6 Kruskál algoritmus O(n2), O(m+n·log(n))

7 Prim algoritmus O(n2), O(m+n·log(n))

8 Sollin algoritmus O(m.log(n))

9 Minimális költségű feszítőfák - esettanulmány

10 Legrövidebb út keresése – Dijkstra algoritmussal O(n2)

11 Legrövidebb út keresése - esettanulmány

12 Negatív összegű körök ERROR

13 Bellman – Ford algoritmus O(n3)

14 Izomorfia, automorfizmus
Egy G1=(N1,A1) gráf izomorf egy G2=(N2,A2) gráffal, ha létezik j:N1N2 , és f:A1A2 kölcsönösen egyértelmű függvény. Egy gráf önmagával vett izomorf leképzését automorfizmusnak nevezzük.

15 Topológikus rendezés Egy G=(N,A) irányított körmentes gráf topologikus rendezésén a csúcsainak egy olyan sorba rendezését értjük, melyre teljesül, hogy ha N1,N2N és (N1,N2)A akkor N1,N2 –t előzze meg a listában.

16 Topológikus rendezés – szintekre bontás
Első szintbe rendezzük azokat a csúcsokat, amelyeknek csak kimenő élük van. (források) Ezekből a csúcsokból kimenő éleket töröljük. Majd a következő szintbe rendezzük azokat a csúcsokat, amelyek a módosított gráfban források. 2. addig ismételjük, ameddig az összes csúcsot szintekbe nem soroltuk. Összekötjük a csúcsokat az eredeti gráfnak megfelelően.

17 Topológikus rendezés – szintekre bontás

18 Minimális út keresése – topologikus rendezéssel O(n+m)

19 Legrövidebb út számítása minden csúcspontból
Legrövidebb utat számoló algoritmusok alkalmazása minden pontra Legrövidebb utak számítása mátrixokkal Egyéb módszerek

20 Mátrixok használata legrövidebb utak számítására - fogalmak
Szomszédsági mátrix Legyen G egy irányított gráf, melynek n csúcsa van, akkor a G szomszédsági mátrixa, A , n x n -es mátrix a következő módon definiálható : Ai,j=1, ha i csúcsból él vezet j-be, különben Ai,j=0. Ha G irányítatlan gráf, akkor a szomszédsági mátrixa szimmetrikus! A=

21 Mátrixok használata legrövidebb utak számítására - fogalmak
Elérhetőségi mátrix Legyen A a G gráf szomszédsági mátrixa, akkor K = Ak, azaz A k-adik hatványaként kapott mátrix. Ki,j eleme, az i csúcsból a j csúcsba vezető k hosszúságú utak számát adja. Pl. k=2, k=3, k=4 hosszúságú utak: A2= A3= A4=

22 Mátrixok használata legrövidebb utak számítására - fogalmak
Elérhetőségi mátrix Definiáljunk egy Br mátrixot akkor ennek a mátrixnak az i,j eleme az i-ből j-be vezető r vagy ennél rövidebb utak számát adja. Ha i-ből létezik út j-be akkor ez maximum n hosszú vagy rövidebb út. Ebből következik, hogyha az útmátrixok valamelyikének 1<=k<=n esetén i,j -edik eleme nem zérus, azaz a mátrix i,j eleme nem zérus, akkor j elérhető i-ből. Ennek megfelelően definiálhatunk egy ún. elérhetőségi mátrixot: A G gráf útmátrix elérhetőségi mátrixa legyen egy P mátrix. Pi,j=1, ha i-ből létezik valamilyen út j-be, különben Pi,j=0

23 Mátrixok használata legrövidebb utak számítására - fogalmak
Elérhetőségi, szomszédsági mátrixok - példa

24 Floyd-Warshall algoritmus O(n3)
Legyen adva a következő gráf: Legyen 1~R, 2~S, 3~T és 4~U. Legyen W a gráf súlymátrixa. Írjunk a 0-ák helyébe -t és nevezzük ezt a mátrixot A-nak

25 Floyd-Warshall algoritmus O(n3)
Ennek megfelelő útmátrix: Vezessük be a következő mátrix műveletet: ahol a Ak k=1..n -ig számítandó, n a A mérete (n*n) , és A0=A. A kapott eredmény mátrix An a legrövidebb utakat adja!

26 Floyd-Warshall algoritmus O(n3)
Esetünkben n=4. Az első menetben k=1-re a kapott mátrix: A megfelelő útmátrix: ahol pl. URS = UR+RS ami megfelel a (4,1)+(1,2) útnak.

27 Floyd-Warshall algoritmus O(n3)
A k = 4 -re a végeredmény, a legrövidebb utak hossza és a megfelelő útmátrix a legrövidebb utakkal:

28 Szorgalmi feladatok Pásztor, a farkas, a kecske és a káposzta
A pásztor, a farkas, a kecske, és a káposzta a folyó egyik oldalán vannak. A pásztor feladata, hogy átvigye a társaságot a túlsó partra. Ehhez egy kétszemélyes csónak áll rendelkezésre, amelyben a pásztoron kívül még egy utas elfér, a kecske vagy a farkas, vagy a káposzta. (10p) Minimális költségű legrövidebb út keresése (5-15p p)

29 Szorgalmi feladatok Arbitrázs
Az arbitrázs a valuta árfolyamokban rejlő egyenetlenségnek olyan hasznosítását jelenti, amikor egy valuta egy egységét ugyanazon valuta egy egységnél nagyobb értékére váltjuk át. Pl. tfh. 1USD=0,7GDP, 1GDP=9,5DKK és 1DKK=0,16USD. Ekkor az a pénzváltó aki 1USD-t fektet be a valuta konverzió során 0,7x9,5x0,16 USD-t vásárol, ezzel 6,4% haszonra tesz szert.

30 Szorgalmi feladatok Arbitrázs
Tfh. Adott n különböző (c1,c2,..,cn) valutanem és a valutaárfolyamok egy n x n-es R táblázata, amely azt mutatja, hogy a ci valuta egy egységéért Ri,j egységnyi cj valuta vásárolható. Adjunk hatékony algoritmust, amely meghatározza, hogy létezik-e a valutanemeknek olyan (ci1,ci2,..,cik) sorozata, amelyre Ri1,i2xRi2,i3x..xRik-1,ikxRik,1>1. Elemezzük az algoritmus futási idejét. (30p)

31 2.


Letölteni ppt "Készítette: Kosztyán Zsolt Tibor"

Hasonló előadás


Google Hirdetések