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 3.

2 Szeparáló halmazok Egy egyszerű, összefüggő gráf éleinek F részhalmazát szeparáló él halmaznak mondjuk, ha F éleket a gráfból elhagyva a gráf nem lesz összefüggő. Egy egyszerű, összefüggő gráf csúcsainak V részhalmazát szeparáló csúcspont halmaznak mondjuk, ha a V csúcsokat elhagyva a gráfból a gráf nem lesz összefüggő.

3 Vágás, összefüggőség Egy G gráf F szeparáló él halmazát vágásnak nevezzük, ha F-nek nincs olyan valódi F' részhalmaza, amely szintén G szeparáló él halmaza volna. Egy G gráf él szerinti összefüggősége e(G) az a legkisebb szám, amelyre teljesül, hogy létezik G-nek e(G) darab olyan éle, amelyeket törölve G-ből a megmaradt gráf már nem összefüggő vagy a megmaradt gráf a triviális gráf. (pl. itt e(G)=1)

4 Páros gráfok Azt mondjuk, hogy egy G=(N,A) gráf páros gráf, ha N1,N2 halmaz, melyre N1N2=N, N1N2=, és (n1,n2)A esetén ha n1  N1 , akkor n2  N2 ha n1  N2 , akkor n2  N1

5 Párosítás - fogalmak A G páros gráf éleinek M részhalmazát párosításnak mondjuk, ha M bármely élének nincs közös végpontja. Más szóval, M elemei párosítják (egymáshoz rendelik) a G páros gráf csúcspontjait. M-t teljesnek mondjuk ha M lefedi G csúcsait, s maximálisnak, ha nem létezik M-nél nagyobb elem számú M' párosítása G-nek. A G gráf éleinek M halmazát függetlennek mondjuk, ha M bármely két élének nincs közös végpontja. Az M független él halmazt teljesnek mondjuk, ha M végpontjai között G minden pontja szerepel. Az M elemei két azonos számosságu részhalmazra bontják G pontjait, ezért nyilván igaz a következő állítás.

6 Párosítás – a Magyar módszer
Tegyük fel hogy a páros gráfunk csúcsai N1 ill. N2 nem üres diszjunkt halmazoknak. Legyen adott G-nek egy M párosítása (M lehet üres is). G-nek valamely e1,e2,e3,e4,...,ek útját alternáló útnak fogjuk nevezni, ha az élek felváltva elemei M-nek illetve (A\M)-nek, például e1M, e2M, e3M, e4M,...., N1 N2 Legyen M’ a G=(N,A) gráf egy párosítása. Ekkor egy olyan M’-alternáló út, amelynek mindkét végpontja párosítatlan, M’-re nézve javító út, vagy röviden M’-javító út.

7 Párosítás – a Magyar módszer
N1’,N2’ jelöli N1 ill. N2 M által le nem fedett pontjait. Ha találunk olyan alternáló e1,e2,e3,e4,...,ek utat, mely N2’-ből indul és N1’-ben végződik, akkor az e1,e2,e3,e4,...,ek út M-ben lévő páros indexű éleit cseréljük ki a nem M-ben lévő páratlan indexűekre. Az így nyert új M' párosítása G-nek és M'-nek eggyel több eleme van mint M-nek. A következő lépésben meghatározzuk az M'-höz tartozó N1’’,N2’’ halmazokat és keressünk olyan alternáló utat, mely N2’’-ből indul és N1’’-ben végződik.

8 Párosítás – a Magyar módszer
Az alternáló út páros indexű éleit M'-ből törölve, s M'-höz csatolva az út páratlan indexű éleit a G-nek egy M'' párosítását kapjuk, melynek eggyel több eleme van, mint M'-nek. Az algoritmust addig lehet folytatni amíg találunk a fent említett típusú alternáló utakat. Meg lehet mutatni, hogy mikor már nem lelünk alkalmas alternáló utat az utolsó lépésben kapott M(n) párosítás maximális párosítás.

9 Párosítás – a Magyar módszer

10 Maximális folyamok - fogalmak
Adott egy G=(N,A) súlyozott, irányított gráf és ennek két különböző pontja, s és t, melyeket forrásnak és nyelőnek nevezünk. (A forrásból csak kiinduló, a nyelőbe csak bejövő élek mennek). Adott még egy az éleken értelmezett c:AR+ pozitív értékű kapacitásfüggvény. Ekkor G=(N,A) gráfot hálózatnak nevezzük. Az f:N2 R függvényt folyamnak hívjuk, ha teljesülnek a következők: f(n1,n2)=-f(n2,n1) (n1,n2)A, n1,n2N f(n1,n2)c(n1,n2), n1,n2N

11 Maximális folyamok - fogalmak
Ha f(n1,n2)=c(n1,n2) akkor az (n1,n2) párat telitettnek nevezzük. Az f folyam értéke, melyet |f|-fel jelölünk, az s-ből kimenő összes folyam, azaz Legyen G=(N,A) egy hálózat. Legyen adott a hálózatban egy s forrás és egy t nyelő. Legyen N1,N2N egy partícója N-nek, vagyis N1N2=N, és N1N2 =. Legyen továbbá sN1, tN2. Ekkor N1,N2 halmazt s,t-vágásnak hívjuk. Az N1,N2 kapacitásán mennyiséget értjük.

12 Maximális folyamok - fogalmak
Ha f egy folyam G-hálózaton, akkor definiáljuk az N1,N2 vágáson áthaladó folyamot. Ezt jelöljük f(N1,N2)-vel. ahol Tetszőleges N1,N2,s,t - vágásra igazak a következők: |f|=f(N1,N2) |f|  c(N1,N2) és az egyenlőség elérhető

13 Maximális folyamok - fogalmak
Adott egy G=(N,A) hálózat egy s forrás, és egy t nyelő. Adott továbbá egy c:AR+ pozitív értékű kapacitásfüggvény. Jelölje r:AR maradék kapacitás függvényt, ahol n1,n2N esetén r(n1,n2):=c(n1,n2)- -f(n1,n2). Az f folyamhoz tartozó javító gráf a Gf=(N,Af) az élein értelmezett r kapacitás függvénnyel, ahol Af ={(n1,n2)| n1,n2N, r(n1,n2)>0}.

14 Maximális folyamok - fogalmak
Adott egy G=(N,A) hálózat egy s forrás, és egy t nyelő. Adott továbbá egy c:AR+ pozitív értékű kapacitásfüggvény. Legyen továbbá f egy folyam G-n. A Gf-beli irányított s,t utakat növelő utaknak hívjuk. Egy növelő úton szereplő élek maradék kapacitásainak minimumát az úthoz tartozó kritikus kapacitásnak az úthoz tartozó éleket kritikus éleknek nevezzük.

15 Maximális folyamok – a probléma
Adott egy G=(N,A) hálózat egy s forrás, és egy t nyelő. Adott továbbá egy c:AR+ pozitív értékű kapacitásfüggvény. Keressünk a hálózathoz f:N2R maximális folyamot.

16 Ford-Fulkerson algoritmus
f0,f1,..,fk=f* folyamok sorozatát konstruáljuk a következő képpen: f0 folyam a azonosan nulla folyam. Az fi birtokában fi+1–et úgy kapjuk, hogy Gfi javító gráfban keresünk egy javító utat az út mentén a di kapacitással növelve kapjuk az fi+1–folyamot. Érvényes tehát az |fi+1|=|fi|+di összefüggés. Akkor álunk meg, ha a folyamhoz már nem létezik növelő út.

17 Ford-Fulkerson algoritmus - példák

18 Ford-Fulkerson algoritmus - példák

19 Edmondson – Karp heurisztika O(m2n)
A folyam növelésére mindig a legrövidebb, vagy a legkevesebb élből álló növelő utak egyikét válasszuk.

20 Hálózatok alsó korlátokkal
Adott egy G=(N,A) hálózat egy s forrás, és egy t nyelő. Adott továbbá egy c:AR+ pozitív értékű kapacitásfüggvény. Keressünk a hálózathoz f:N2R maximális folyamot, úgy hogy adott egy k:AR+ függvény, melyre teljesül: k(n1,n2)f(n1,n2)c(n1,n2) (n1,n2)A, n1,n2N Ekkor a feladat visszavezethető az előző feladatra.

21 Hálózatok alsó korlátokkal – megengedett megoldás keresése
Tegyük fel, hogy G hálózatban s,t között nincs él. Ha van, akkor konstruáljunk egy olyan G’ hálózatot, melyben s,t-között nincs él: iktassunk be egy plusz csúcsot s, és t közé.

22 Hálózatok alsó korlátokkal – megengedett megoldás keresése
Készítsünk G” alsó korlátok nélküli hálózatot a következőképpen: Vegyünk fel a G=(N,A) pontjai mellé egy új forrást és egy új nyelőt; legyenek ezek S és T. G”=(N”,A”), N”=N{S,T}. A”-t úgy képezzük, hogy A éleit megtartjuk, S-ből valamennyi csúcsba (T-n kívül) élet húzunk, valamint valamennyi csúcsból (S-en kívül) T-be húzunk élet, valamint t-ből s-be végtelen kapacitással élet húzunk.

23 Hálózatok alsó korlátokkal – megengedett megoldás keresése
(n1,n2)A esetén c”(n1,n2):=c(n1,n2)-k(n1,n2) (n1,n2)A” esetén

24 Hálózatok alsó korlátokkal – megengedett megoldás keresése
G hálózatban akkor és csak akkor van megengedett megoldás, ha G” hálózatban maximális folyamának értéke: Ha létezik megengedett megoldás, akkor ebből a minimális folyamból kiindulva konstruálható maximális folyam.

25 3.


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

Hasonló előadás


Google Hirdetések