Hálózati folyamok. A használt fogalmak definiálása

Hasonló dokumentumok
Hálózati folyamok. Tétel: A maximális folyam értéke megegyezik a minimális vágás értékével.

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. 3. Előadás

HÁLÓZAT Maximális folyam, minimális vágás

Gráfok 2. Legrövidebb utak, feszítőfák. Szoftvertervezés és -fejlesztés II. előadás. Szénási Sándor

Minimális feszítőfák Legyen G = (V,E,c), c : E R + egy súlyozott irányítatlan gráf. Terjesszük ki a súlyfüggvényt a T E élhalmazokra:

Hálózati Folyamok Alkalmazásai. Mályusz Levente BME Építéskivitelezési és Szervezési Tanszék

Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.

Algoritmusok bonyolultsága

Hibajavító kódok május 31. Hibajavító kódok 1. 1

Hálózati Folyamok Alkalmazásai. Mályusz Levente BME Építéskivitelezési és Szervezési Tanszék

Méretlánc átrendezés a gyakorlatban (Készítette: Andó Mátyás, a számonkérés az elıadás és a gyakorlat anyagára is kiterjed.)

GRÁFELMÉLET. 7. előadás. Javító utak, javító utak keresése, Edmonds-algoritmus

Algoritmuselmélet. Bonyolultságelmélet. Katona Gyula Y.

25. tétel: Bizonyítási módszerek és bemutatásuk tételek bizonyításában, tétel és megfordítása, szükséges és elégséges feltétel

Feladatok, amelyek gráfokkal oldhatók meg 1) A königsbergi hidak problémája (Euler-féle probléma) a

26. MINIMÁLIS KÖLTSÉGŰ UTAK MINDEN CSÚCSPÁRRA

Kereskedési rendszerek kétoldalú szerződésekkel

6. Függvények. 1. Az alábbi függvények közül melyik szigorúan monoton növekvő a 0;1 intervallumban?

Euler tétel következménye 1:ha G összefüggő síkgráf és legalább 3 pontja van, akkor: e 3

Minimális feszítőfák Legyen G = (V,E,c), c : E R + egy súlyozott irányítatlan gráf. Terjesszük ki a súlyfüggvényt a T E élhalmazokra:

1. zárthelyi,

Operációkutatás vizsga

Közösségek keresése nagy gráfokban

Kutatói pályára felkészítı akadémiai ismeretek modul

A számítástudomány alapjai

Minimális költségű folyam-algoritmusok összehasonlítása

Gráfelméleti feladatok. c f

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda IRT- 4. kurzus. 3. Előadás: A mohó algoritmus

Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 13.

További forgalomirányítási és szervezési játékok. 1. Nematomi forgalomirányítási játék

Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y.

Diszkrét matematika 2. estis képzés

bármely másikra el lehessen jutni. A vállalat tudja, hogy tetszőlegesen adott

DIFFERENCIAEGYENLETEK

A matematikai feladatok és megoldások konvenciói

Programozási segédlet

HAMILTON KÖR: minden csúcson PONTOSAN egyszer áthaladó kör. Forrás: (

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK

Dr. Walter Bitterlich

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y.

Javító és majdnem javító utak

Diszkrét Matematika MSc hallgatók számára 7. Előadás Párosítási tételek Előadó: Hajnal Péter Jegyzetelő: Kovácsházi Anna

út hosszát. Ha a két várost nem köti össze út, akkor legyen c ij = W, ahol W már az előzőekben is alkalmazott megfelelően nagy szám.

Közösség detektálás gráfokban

Régebbi Matek M1 zh-k. sztochasztikus folyamatokkal kapcsolatos feladatai.

Alhálózatok létrehozása

ELLENİRIZD, HOGY A MEGFELELİ ÉVFOLYAMÚ FELADATSORT KAPTAD-E!

Feladatunk, hogy az alábbiakban látható tízgépes elrendezésre meghatározzuk az operátorok optimális kiosztását a vevői igények függvényében.

Totális Unimodularitás és LP dualitás. Tapolcai János

2. Visszalépéses keresés

Egyes logisztikai feladatok megoldása lineáris programozás segítségével. - bútorgyári termelési probléma - szállítási probléma

Példa Hajtsuk végre az 1 pontból a Dijkstra algoritmust az alábbi gráfra. (A mátrixban a c i j érték az (i, j) él hossza, ha nincs él.

A gráffogalom fejlődése

GEOMETRIA 1, alapszint

JAVASLAT A TOP-K ELEMCSERÉK KERESÉSÉRE NAGY ONLINE KÖZÖSSÉGEKBEN

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

6. gyakorlat. Gelle Kitti. Csendes Tibor Somogyi Viktor. London András. jegyzetei alapján

Numerikus módszerek 1.

Gráfalgoritmusok és hatékony adatszerkezetek szemléltetése

Érdemes egy n*n-es táblázatban (sorok-lányok, oszlopok-fiúk) ábrázolni a két színnel, mely éleket húztuk be (pirossal, kékkel)

Csábítás Akadémia Online Tanfolyam 5. rész

Diszkrét matematika 2.C szakirány

Szakdolgozat. Pongor Gábor

Gráfalgoritmusok ismétlés ősz

HAMILTON ÚT: minden csúcson PONTOSAN egyszer áthaladó út

Számítógép és programozás 2

A relációelmélet alapjai

Speciális algoritmusok és adatstruktúrák ősz

A hagyományos kedvelt családi társasjátékoknál a csoportosulások mindig három azonos

Algoritmuselmélet 11. előadás

Eszközbeszerzés a Szépmővészeti Múzeum mőtárgy- és dokumentációs állományának védelmére címő, NKA 3505/02466 számú pályázat szakmai beszámolója

Név KP Blokk neve KP. Logisztika I. 6 LOG 12 Dr. Kovács Zoltán Logisztika II. 6 Logisztika Dr. Kovács Zoltán

HA8EV Antennaforgató vezérlı 6.0e

Algoritmuselmélet 7. előadás

Elmaradó óra. Az F = (V,T) gráf minimális feszitőfája G-nek, ha. F feszitőfája G-nek, és. C(T) minimális

3B SCIENTIFIC MEDICAL. BASIC Billy TM életmentési baba P72 [ ]

Branch-and-Bound. 1. Az egészértéketű programozás. a korlátozás és szétválasztás módszere Bevezető Definíció. 11.

AZ MS EXCEL TÁBLÁZATKEZELŐ ALKALMAZÁSA MAXIMÁLIS USING MS EXCEL SPREADSHEET APPLICATION IN SOLVING MAXIMUM FLOW PROBLEMS.

5/1. tétel: Optimalis feszítőfák, Prim és Kruskal algorithmusa. Legrövidebb utak graphokban, negatív súlyú élek, Dijkstra és Bellman Ford algorithmus.

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2010/2011 1/363

Bevezetés: Mi a CRM? A tervezési fázis helye és szerepe a CRM implementációs projektekben Jógyakorlatok: mire figyeljünk a CRM tervezés közben.

A tényekhez igazodó úthálózat-fejlesztésért III. dr. Rigó Mihály okl. erdımérnök okl. építımérnök

Adatstruktúrák, algoritmusok, objektumok

A lineáris algebrában központi szerepet betöltı vektortér fogalmát értelmezzük most, s megvizsgáljuk e struktúra legfontosabb egyszerő tulajdonságait.

1: Bevezetés: Internet, rétegmodell Alapok: aszimptótika, gráfok. HálózatokII, 2007

Algoritmuselmélet 18. előadás

Relációs adatbázisok tervezése 2.rész (dekompozíció)

Melykeres(G) for(u in V) {szin(u):=feher Apa(u):=0} for(u in V) {if szin(u)=feher then MBejar(u)}

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Gráfelmélet/Diszkrét Matematika MSc hallgatók számára. Párosítások

Társadalmi és gazdasági hálózatok modellezése

Dr. Gubán Miklós PhD * Gubán Dorottya ** Ifj. Gubán Miklós *** KÜLÖNBÖZİ MÉRİMŐSZEREK MÉRÉSI EREDMÉNYEINEK FELDOLGOZÁSA EGY ÚJ MÓDSZERREL

Az Ingatlanközvetítı szakképzés szakdolgozatának gyakran elıforduló hibái

Relációs adatbázisok tervezése 2.rész (dekompozíció)

22. GRÁFOK ÁBRÁZOLÁSA

Feladatok a MATEMATIKA. standardleírás 2. szintjéhez

Adott: VPN topológia tervezés. Költségmodell: fix szakaszköltség VPN végpontok

Navigáci. stervezés. Algoritmusok és alkalmazásaik. Osváth Róbert Sorbán Sámuel

SET. Például: SET mert: Szín: 3 egyforma. Alak: 3 egyforma. Darab: 3 egyforma. Telítettség: 3 különböző

Átírás:

Hálózati folyamok Hálózat A használt fogalmak definiálása Ez összesen 4 dologból áll: - Egy irányított G gráf - Ennek egy kitüntetett pontja, amit forrásnak hívunk és s-sel jelölünk - A gráf még egy kitüntetett pontja, amit nyelınek hívunk és t-vel jelölünk - Egy c függvény, ami minden élhez egy nemnegatív számot rendel. Ez az él kapacitása // c(e) Tehát a hálózat egy ilyen (G;s;t;c). Folyam Szemléletesen Adott hálózatban szeretnénk minél több mondjuk vizet eljuttatni s-bıl t-be. A szabályok: - minden élen legfeljebb annyi víz folyhat át, amennyi annak az élnek a kapacitása - minden csúcsba ugyanannyi víznek kell befolynia, mint amennyi onnan kifolyik. Ez alól a két kivétel a forrás (itt mennyiségő víz áll rendelkezésre) és a nyelı (itt mennyiségő víz tőnhet el). Formálisan Egy f függvény, ami minden élhez egy számot rendel úgy, hogy: 0 f(e i ) c(e i ) minden i-re, és v-be menı élek f(e) - v-bıl induló élek f(e) =0 minden v eleme V(G)\{s;t} Folyam értéke Amennyi víz eljutott s-bıl t-be, ha az adott folyam szerint áramoltattuk, tehát s-bıl induló élek f(e) Vágás jelölésben C Szemléletesen Úgy hagyunk el éleket a gráfból, hogy már ne lehessen eljutni s-bıl t-be. Ezeknek az éleknek a halmaza egy vágás. Formálisan A gráf csúcsait két halmazra osztjuk, s-nek és t-nek különbözı halmazban kell lennie. Az s-t tartalmazó halmazt jelöljük X-szel. Azoknak az éleknek a halmaza, amik az x halmazból a V(G)\X-be vezetnek egy vágást alkotnak. Vágás értéke c(c) A vágás élein a kapacitások összege. Ford-Fulkerson tétel A maximális folyam értéke egyenlı a minimális vágás értékével.

Ennek egyszerő következménye, hogy ha egy adott hálózatban találunk egy folyamot és egy vágást, amiknek az értéke egyenlı, akkor biztosak lehetünk abban, hogy egy maximális folyam ill. egy minimális vágás van a kezünkben. Maximális folyam keresése Gyakori probléma, hogy egy adott hálózatban meg kell találni a maximális folyamot. Erre alapvetıen két módszer létezik. 1. Hasraütés Ránézésre keresünk egy maximálisnak tőnı folyamot, majd errıl belátjuk, hogy tényleg az. Erre a Ford-Fulkerson tétel a legalkalmasabb, ami biztosítja, hogy ha találunk egy ugyanolyan értékő vágást, akkor a folyamunk maximális. Elınyök: - Gyors Hátrányok: - Ismerni kell a Ford-Fulkerson tételt - Gondolkodást igényel - Nem biztos, hogy mőködik - Nem használhatod, ha a feladat algoritmikus megoldást kér. 2. Segédgráfos-javítóutas algoritmus Pont úgy állunk neki, mint az elızı módszernek, veszünk egy szemre jónak tőnı folyamot. A különbség, hogy itt nem múlik a módszer sikere a jó választáson (legfeljebb az idıtartama). Ha nem vagyunk túl kreatívak, akár az azonosan 0 folyam is megteszi. Ezután kreálunk egy segédgráfot, amire a következı szabályaink vannak: - a pontjai ugyanazok, mint az eredetinek - berajzolunk minden irányított élt, ami nem telített - berajzolunk minden irányított élt fordított irányítással, amin a folyamérték nem 0. // az utolsó két szabály alapján egy élt lehet, hogy kétszer is be kell rajzolnunk, különbözı irányítással Most ebben a segédgráfban kell egy irányított utat találnunk s-bıl t-be. (Akár BFS-sel.) Ha ilyen nincs, akkor a folyamunk maximális. Ha van, akkor ez egy javítóút, vagyis az eredeti gráfban ezen az úton tudjuk növelni a folyamértéket. Ehhez az eredeti irányítású éleken növeljük, a fordított irányításúakon csökkentjük az f(e)-t, mindegyiken ugyanannyival. Ez az ugyanannyi legyen olyan nagy, amennyire csak lehet úgy, hogy egy él se lépje túl a kapacitását ill. egy f(e) se csökkenjen 0 alá. Ezután az új (immár nagyobb) folyamhoz új segédgráfot készítünk. Elınyök: - Nem kell ismerni a Ford-Fulkerson tételt (ez csak vicc, természetesen ismerni kell) - Nem igényel gondolkodást - Biztos, hogy mőködik - Használható, ha a feladat algoritmikus megoldást kér Hátrányok - Lassú

Példa: Szemre keresünk egy folyamot, pl.: Ehhez elkészítjük a segédgráfot. Feketével jelöltem az eredeti, zölddel a fordított irányítású éleket (ennek a megkülönböztetésnek gyakorlati jelentısége nincs, csak a szemléltetést szolgálják).

A piros kiemelés egy irányított utat jelöl s-bıl t-be, ez lesz a javítóutunk. A legnagyobb javítás, amit itt elvégezhetünk 3 értékő (ez az eredeti gráfból látszik). Ha segít, akár rá is írhatjuk az élekre, hogy ott még mennyit vihetünk, ill. (fordított élek esetén) mennyivel vihetünk kevesebbet az eredeti gráf szerint. A javítással egy új, jobb folyamot kaptunk: Ehhez ismét segédgráfot készítünk. Most olyan javítóutat találtunk, ami fordított élt is használt. Ne feledjük, ezen az élen az eredeti gráfban majd csökkentjük az értéket. 1 egységnyit tudunk javítani: Ehhez ismét segédgráf:

Ismét javítás: Ismét segédgráf: Itt már nincs út s-bıl t-be, tehát megtaláltuk a maximális folyamot. Ennek értéke 8 (s-bıl induló éleken az f(e) összeg). Érdemes ellenırizni, hogy a kapott függvény tényleg folyam.

Minimális vágás keresése Elıfordulhat, hogy nem maximális folyamra van szükségünk, hanem minimális vágásra. Ennek megtalálására pont ugyanazt a két módszert fogjuk használni. 1. Ránézésre találunk egy folyamot és egy vágást, aminek az értéke egyforma, plusz megemlítjük, hogy van egy ilyen Ford-Fulkerson tétel. 2. A segédgráfos-javítóutas algoritmust használva megkeressük a maximális folyamot (vagy az egyik ilyet). Azt a segédgráfot használjuk, amiben már nem volt s-t út. Megkeressük azokat a pontokat, amik s-bıl elérhetık, ık alkotják az X halmazt. Ehhez a halmazhoz tartozó vágás minimális vágás lesz.