GRÁFELMÉLET. 1. Alapfogalmak, fák Definíciók: - irányítatlan és irányított gráf, csúcshalmaz, élhalmaz, szomszédsági reláció

Hasonló dokumentumok
GRÁFELMÉLET. 1. Alapfogalmak Definíciók: - irányítatlan és irányított gráf, csúcshalmaz, élhalmaz, szomszédsági reláció

Diszkrét matematika 2.

Diszkrét matematika 2.C szakirány

Gráfelméleti feladatok programozóknak

Diszkrét matematika 2.C szakirány

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

Diszkrét matematika 2.

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

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

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

Diszkrét matematika 2.C szakirány

Diszkrét matematika II. gyakorlat

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

Diszkrét matematika 2.C szakirány

Gráfelméleti alapfogalmak

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

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

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

Diszkrét matematika 2.C szakirány

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

Gráfelmélet. I. Előadás jegyzet (2010.szeptember 9.) 1.A gráf fogalma

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

1. tétel - Gráfok alapfogalmai

SzA X/XI. gyakorlat, november 14/19.

Gráfelmélet jegyzet 2. előadás

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

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

SzA II. gyakorlat, szeptember 18.

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.

Alapfogalmak a Diszkrét matematika II. tárgyból

Sali Attila Budapest Műszaki és Gazdaságtudományi Egyetem. I. B. 137/b március 16.

Gráfok csúcsszínezései

Gráf csúcsainak színezése. The Four-Color Theorem 4 szín tétel Appel és Haken bebizonyították, hogy minden térkép legfeljebb 4 színnel kiszínezhető.

Algoritmuselmélet 11. előadás

Diszkrét matematika 2 (C) vizsgaanyag, 2012 tavasz

1. zárthelyi,

Síkbarajzolható gráfok, duális gráf

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

ELTE IK Esti képzés tavaszi félév. Tartalom

Diszkrét matematika 2.C szakirány

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

Diszkrét matematika 2.

DISZKRÉT MATEMATIKA 2 KIDOLGOZOTT TÉTELSOR 1. RÉSZ

Gráfalgoritmusok ismétlés ősz

Ramsey-féle problémák

Szimmetrikus kombinatorikus struktúrák MSc hallgatók számára. Ramsey-gráfok

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

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

Megoldások 7. gyakorlat Síkgráfok, dualitás, gyenge izomorfia, Whitney-tételei

Diszkrét Matematika GYAKORLAT, Levelező MSc hallgatók számára. 3. Feladatsor

Diszkrét matematika 2.

É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)

Kombinatorika és gráfelmélet

Algoritmuselmélet 18. előadás

III. Gráfok. 1. Irányítatlan gráfok:

Gráfok színezése Diszkrét matematika 2009/10 sz, 9. el adás

Gráfelméleti feladatok. c f

Algoritmusok bonyolultsága

KOMBINATORIKA ElŐADÁS Matematika BSc hallgatók számára. Klikkek gráfokban-1. Definíció. Egy G gráfban egy K V(G) csúcshalmazt klikknek nevezünk, ha K

Szociális hálózatok Gráf alapú módszerek. Adatbányászat. Klaszterezés Szociális hálózatok. Szegedi Tudományegyetem. Adatbányászat

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:

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

A számítástudomány alapjai

Diszkrét matematika 2.

Adatszerkezetek 2. Dr. Iványi Péter

10. Előadás P[M E ] = H

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

Logika és számításelmélet. 11. előadás

22. GRÁFOK ÁBRÁZOLÁSA

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

Síkgráfok (négyszín-tétel, Kuratowski-tétel, Euler-formula)

Bevezetés a számításelméletbe II. Zárthelyi feladatok április 23.

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

Szalai Péter. April 17, Szalai Péter April 17, / 36

Kiegészítő részelőadás 1. Az algoritmusok hatékonyságának mérése

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

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

Síkbarajzolható gráfok Április 26.

Gráfelméleti alapfogalmak-1

Síkgráfok. 1. Részgráfok, topológikus részgráfok, minorok

EGYSZERŰ, NEM IRÁNYÍTOTT (IRÁNYÍTATLAN) GRÁF

KOMBINATORIKA ELŐADÁS osztatlan matematikatanár hallgatók számára

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

(6) (4) (2) (3) (11) (3) (5) (21) (9) (7) (3) (4) (4) (7) (4)

1. Szerencsére elmúlt a veszély, pánikra semmi ok. Luke Skywalker ugyan kivont lézerkarddal ment órára a jediképzőben, de a birodalmi gárda

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

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

Feladatok. 7. Tíz rabló a kincseit egy több lakattal lezárható ládában gyűjti. Az egyes lakatokat egy-egy

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:

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.

Diszkrét Matematika MSc hallgatók számára. 11. Előadás. Előadó: Hajnal Péter Jegyzetelő: Szarvák Gábor november 29.

Számítógép hálózatok, osztott rendszerek 2009

1. Gráfmodellek. 1.1 Königsbergi hidak (Euler, 1736)

Modern irányzatok a bonyolultságelméletben: éles korlátok és dichotómia tételek

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

Az R halmazt a valós számok halmazának nevezzük, ha teljesíti az alábbi 3 axiómacsoport axiómáit.

Nagy Gábor compalg.inf.elte.hu/ nagy

Gráfok, definíciók. Gráfok ábrázolása. Az adott probléma megoldásához ténylegesen mely műveletek szükségesek. Ábrázolások. Példa:

Bevezetés a számításelméletbe II. 1. zh,

Átírás:

GRÁFELMÉLET ALAPVETŐ FOGALMAK ÉS TÉTELEK 1. Alapfogalmak, fák Definíciók: - irányítatlan és irányított gráf, csúcshalmaz, élhalmaz, szomszédsági reláció - gráfok reprezentációi: szomszédsági mátrix, illeszkedési mátrix, pont-szomszédság lista, él lista,... - hurokél, párhuzamos él, egyszerű gráf, séta, út, kör - üres gráf, teljes gráf, páros gráf, hiperkocka, Petersen-gráf - Fokszámsorozat: d 1, d 2,..., d n a G gráf fokszámsorozata, ha G fokainak nem csökkenő sorozata. Ekkor tehát v(g) = V (G) = n és d 1 d 2... d n. Állítás: 2e(G) = n i=1 d i Kérdés: Mikor valósítható meg (másképpen mondva: realizálható) egy fokszámsorozat valamely G gráffal? (i) {d i } n i=1 pontosan akkor valósítható meg, ha n i=1 d i páros (ii) {d i } n i=1 pontosan akkor valósítható meg hurokél nélküli gráffal, ha (a) d i páros és (b) d n d 1 +... + d n 1 (iii) {d i } n i=1 pontosan akkor valósítható meg egyszerű gráffal, ha a d 1,..., d n dn 1, d n dn 1,..., d n 1 1 (nem feltétlenül nem csökkenően felírt) sorozat is megvalósítható egyszerű gráffal Definíció: Fa: egyszerű, körmentes összefüggő gráf. Ághajtás operáció. Nagyon könnyű: Állítás: Legyen T fa n csúcson. Ekkor e(t ) = n 1. Nehezebb: Tétel: Tfh. n 2. A {d i } n i=1 természetes számokból álló sorozat pontosan akkor valósítható meg fával, ha d 1 > 0 és d i = 2n 2. 1

2 ALAPVETŐ FOGALMAK ÉS TÉTELEK Tétel: Tfh. n 2. Legyen {d i } n i=1 olyan természetes számokból álló sorozat, melyre d 1 > 0 és d i = 2n 2. Ekkor a {d i } n i=1 sorozatot megvalósító fák száma n 1 (n 2)! (d i 1)!. i=1 Cayley-tétel: K n címkézett feszítőfáinak száma n n 2. A Cayley-tételt bebizonyíthatjuk például az előző tétel segítségével, leszummálva az ott adott értéket minden feszítőfához tartozó {d i } n i=1 fokszámsorozatra. Megjegyzés: Nem izomorf feszítőfákból jóval kevesebb van, hiszen pl. egy tetszőleges feszítőfából könnyen kaphatunk akár nagyon sok különböző címkézett fát, ha minden lehetséges módon átcímkézzük a pontjait. Ezzel együtt K n nem izomorf feszítőfáinak száma még mindig óriási! Algoritmus: Prüfer-kódolás 1 és visszafejtése. Az algoritmus elemzése alternatív bizonyítást ad a Cayley-tételre, hiszen az összes lehetséges n n 2 különböző n 2 hosszú kódsorozathoz egyértelműen rendelhetjük hozzá K n feszítőfáit. 2. Éltesztelés Kezdetek, motiváció: Kombinatorikus csoport tesztelési módszer fertőző beteg megtalálására; N elemű csoportra 1 + log 2 N teszt elegendő (ennél kevesebb pedig nem is lehet elég, ez az úgynevezett információelméleti alsó korlát). Szorosan kapcsolódó mérnöki probléma: hibakeresés optikai hálózatokban. Feltevések: (1) összefüggő részgráfok gyorsan tesztelhetők úgynevezett monitorozó fényutakkal; (2) egyszerre legfeljebb egy meghibásodott él van. Feladat: egyértelműen azonosítani a hibás élt, ha van hiba, méghozzá minél kevesebb összefüggő részgráfhoz tartozó monitorozó fényúttal (a fényút nem feltétlenül jelent gráfelméleti értelemben vett utat, de mindenképpen séta). Ha nincs hibás él, arról is tudnunk kell. Könnyű látni: Ha a teszteknek nem kellene összefüggő részgráfoknak lenniük, akkor egy G gráfhoz elég lenne 1 + log 2 e(g) teszt (ennél kevesebb pedig nem is lehet elég, ld. fent). Ehhez a bináris kódkiosztó módszert használhatjuk, mely a következő: az éleket megszámozzuk 1-től e(g)-ig, majd ezeknek a számoknak a bináris alakját tekintjük. Az i-edik tesztben azok az élek szerepelnek, amiknek a bináris sorszámában az i-edik helyiértéken 1-es van. Ezekkel a tesztekkel valóban egyértelműen azonosíthatjuk az éleket. A baj az, hogy általában az így megadott tesztek nem adnak összefüggő részgráfot, lásd pl. P n -et, az n pontú utat. Az út esetében mindegy, hogyan számozzuk meg az éleket, a bináris kódkiosztó módszerrel kapott élhalmazok java része nem lesz összefüggő, ha n > 3 azaz a módszer utakra nem segít. 1 Vegyük le a legkisebb indexű levelet, és írjuk a már meglévő kódhoz hozzá a szomszédja indexét, amíg legalább három pontja van a fának. Ha már csak két pont maradt, megállunk, kész a fa Prüfer-kódja.

GRÁFELMÉLET 3 Van azért olyan viszonylag általános eset, amikor a bináris kódkiosztás kicsit megváltoztatva majdnem optimális megoldást ad: Tétel: Tfh. G olyan gráf, mely tartalmaz két éldiszjunkt feszítőfát, legyenek ezek T 1 és T 2. Ekkor 2 + 2 log 2 e(g)/2 összefüggő teszt elég G éleinek teszteléséhez. Bizonyítás: Először vágjuk két egyforma (vagy majdnem egyforma, ha paritás miatt egyformák nem lehetnek) méretű részre az E(G) E(T 1 ) E(T 2 ) élhalmazt. Jelölje a két részt E 1 és E 2. Most legyen E 1 = E 1 E(T 1 ) és E 2 = E 2 E(T 2 ). Ezekután E 1 -re és E 2 -re külön adjuk meg az összefüggő teszteket. Azzal kezdjük, hogy E 1 élei között tetszőlegesen kiosztjuk a bináris kódokat (a már korábban említett megszámozást használjuk). Majd ugyanezt végrehajtjuk E 2 -re is, binárisan megszámozzuk az éleit. Fontos: a T 1 és T 2 éleinek egyike se kapja a csupa 1-es kódot, különben a fák meghibásodásánál nem sikerül az egyértelmű azonosítás (miért is?). Az E 1 éleire a tesztek a következők: az i-edik teszt E 1 azon éleit tartalmazza, melyek kódjának az i-edik helyiértékén 1-es található, és emellett a T 2 fa minden élét. Mivel T 2 feszítőfa, így minden teszt összefüggő lesz, mivel mind tartalmazza T 2 -t. Hasonlóan teszünk E 2 -vel, csak itt az egyes helyiértékek által kijelölt élhalmazokhoz mindig T 1 -et vesszük hozzá. Külön-külön mindkét élhalmazt tudjuk így tesztelni (miért?), mindkét teszthalmaz 1 + log 2 e(g)/2 összefüggő tesztet tartalmaz, ahonnan már jön a tétel. Megjegyzés: Ha G 4-szeresen összefüggő 2, akkor biztosan van benne két éldiszjunkt feszítőfa. Ez elégséges, de nem szükséges feltétel. 3. Folyamok Definíció: Legyen G = G(V, E) irányított gráf, s és t két kitüntetett csúcsa, s t, és legyen c : E R + egy függvény. A H(G, s, t, c) hálózat ezek összessége, melyben s a forrás, t a nyelő, c pedig az élek kapacitását adja meg. Legyen f : E R egy függvény. Az f függvény folyam, ha teljesülnek a következők: Megengedettségi feltételek: minden e E(G)-re 0 f(e) c(e). Megmaradási törvények: minden v V {s, t}-re f(e) = f(e) e:vbe e:vke Az f folyam értéke é(f) = e:ske f(e) e:sbe f(e). {S, T }-vágás: S V, s S és T V, t T úgy, hogy S T = V és S T =. A vágás élhalmaza az E({S, T }) halmaz, mely azokat az éleket tartalmazza, amiknek egyik 2 A folyamok tárgyalásánál megtalálható a többszörös összefüggőség definíciója.

4 ALAPVETŐ FOGALMAK ÉS TÉTELEK végpontja S-be, a másik pedig T -be tartozik. E({S, T }) éleit két részre bontjuk: E = ST azokat az éleket tartalmazza, amik S-ből T -be mutatnak, míg E = T S azokat, amik T -ből S-be irányulnak. Lemma: é(s, T ) = e:e ST f(e) e:e T S f(e) = é(f). Definíció: Az {S, T } vágás kapacitása az S-ből T -be menő élek (tehát ST élei) kapacitásainak összege. Jele: c(s, T ). Könnyen látható: max é(f) min c(s, T ). f folyam {S,T } vágás Ennél több is igaz, ahogy az alább is látható. (biz. később) Maximális folyam - minimális vágás tétel (MFMV): Legyen H(G, s, t, c) egy hálózat. Ekkor max é(f) = min c(s, T ) f folyam {S,T } vágás (erre a fontos tételre angolul MFMC (max flow - min cut) néven hivatkoznak). Megjegyzés: Egyenlőségnél az S-ből T -be menő élek teljesen ki vannak használva, és T -ből S-be egyetlen élen át sem megy pozitív folyam. Definíció: Legyen P egy irányítatlan s t út (azaz olyan út, mely az irányítások törlésével kapott G-ben s-ből t-be vezet), és legyen f egy folyam a H( G, s, t, c) hálózatban. Az e E( G) E(P ) él az E elore (P ) halmazba tartozik, ha e-t P az irányításának megfelelően járja be. Ha az e élt az irányításával ellenkező irányban járja be P, akkor e E hátra (P ). A P út javító út az f folyamra nézve, ha - minden e E elore (P )-re f(e) < c(e) és - minden e E hátra (P )-re f(e) > 0. Legyen végül δ elore := min{c(e) f(e) : e E elore (P )}, δ hátra := min{f(e) : e E hátra (P )}, δ := min{δ elore, δ hátra }. Lemma: Legyen f egy folyam a H(G, s, t, c) hálózatban. Ha van P javító út f-re nézve, akkor az f folyam nem maximális értékű, van olyan f folyam a hálózatban, melyre é(f) + δ = é(f ).

GRÁFELMÉLET 5 Megjegyzés: Elsőre elképzelhetőnek tűnhet, hogy egy f folyam nem maximális értékű egy H(G, s, t, c) hálózatban, de a hálózatban mégsincs rá nézve javító út. Ahogy a következő tétel mutatja, ez szerencsére nincs így. Tétel: Legyen f folyam a H(G, s, t, c) hálózatban. A következők ekvivalensek: (1) f maximális folyam (2) létezik olyan {S, T }-vágás, melyre é(f) = c(s, T ) (3) nincs javító út H(G, s, t, c)-ben f-re nézve A fenti tétel bizonyításánál használjuk a következő fogalmat és az utána következő lemmát: Definíció: Az irányítások törlésével kapott P út javító út kezdemény H(G, s, t, c)-ben f-re nézve, ha P (i) s-ből indul és (ii) minden e E elore (P )-re f(e) < c(e) és (iii) minden e E hátra (P )-re f(e) > 0. Lemma: Legyen f maximális folyam H(G, s, t, c)-ben. Legyen S azon csúcsok halmaza, melyek elérhetők s-ből valamely javító út kezdeménnyel, és legyen T = V S. Ekkor {S, T } egy s-et és t-t elválasztó vágás (tehát t T ), és kapacitása, c(s, T ) = é(f). A fentiek már kiadják az MFMV tételt, a folyamok alaptételét. 3.1. Maximális folyam keresése algoritmussal. A Ford-Fulkerson-algoritmus a maximális folyamot keresi egy H(G, s, t, c) hálózatban. Leírása: Ford-Fulkerson-algoritmus (1) legyen f 0 (ez biztosan megengedett folyam; ha van más megengedett folyamunk, indulhatunk abból is) (2) S := {s}, B elore :=, B hátra := (3) Legyen és B elore = {x V S : y S úgy, hogy yx E és f( yx) < c( yx)} B hátra = {x V S : y S úgy, hogy xy E és f( xy) > 0} (4) Ha t (B elore B hátra ), akkor t-ből visszafelé menve találhatunk egy s t javító utat. Ennek mentén növeljük meg f-et, majd folytassuk a (2)-es lépéssel. (5) Ha t (B elore B hátra ), de B elore B hátra (a) Legyen x B elore B hátra tetszőleges (b) S := S + x, és folytassuk a (3)-as lépéssel

6 ALAPVETŐ FOGALMAK ÉS TÉTELEK (6) Ha B elore B hátra =, akkor megállunk f maximális folyam 3 Megjegyzés: Ha minden kapacitás egész szám (vagy azzá tehető felszorzással), akkor a fenti algoritmus biztosan véges sok lépésben megáll, hiszen minden javítás legalább egységnyivel növeli a folyam értékét. Ha valós aritmetikát feltételezünk, akkor lehetséges olyan hálózatot megadni, melyen a Ford-Fulkerson algoritmus nem áll meg véges időben, sőt, még az is lehetséges, hogy a kiszámolt folyamértékek nem konvergálnak az optimális megoldáshoz. Edmonds-Karp változat: használjunk mindig minimális hosszúságú javító utat (azaz olyat, ami a legkevesebb élt tartalmazza); ezt szélességi kereséssel meg lehet valósítani. Ekkor az így módosított algoritmus O(v(G) 4 ) lépésben biztosan megáll. (ha megáll, már nincsen javító út, tehát gyorsan megtalálhatjuk az optimális megoldást) Definíció: A H( G, s, t, c) hálózat uniform hálózat, ha minden G-beli él kapacitása egységnyi, azaz c 1. Legyen F E( G). Ekkor d ki F (x) = {e F : xke} és dbe F (x) = {e F : xbe}. Az az f függvény, mely F élein 1, másutt 0, pontosan akkor teljesíti a megmaradási törvényt, ha minden x V {s, t}-re d ki F (x) = dbe F (x). Állítás: Legyen F egy élhalmaz G-ben. Ekkor a következők ekvivalensek: (1) F folyamot határoz meg (2) ha x s, t, akkor d ki F (x) = dbe F (x) (3) F felírható a következő alakban: F = i P i j Q j k C k, ahol a P i, Q j és C k élhalmazok mind diszjunktak (tehát F tetszőleges éle pontosan egyben bukkan fel), és minden P i egy irányított s t út élhalmaza, minden Q j egy irányított t s út élhalmaza, végezetül minden C k egy irányított kör élhalmaza. Egy élhalmaz egyszerű, ha nincs benne irányított kör. Könnyű látni, hogy minden irányított kör kiiktatható F -ből úgy, hogy a megmaradt élhalmaz folyamot határoz meg, ha F is folyamot határozott meg. Ráadásul a két folyam értéke megegyezik. F -et egyszerűnek hívjuk, ha nincs benne irányított kör. Állítás: Legyen H(G, s, t, c) egy uniform hálózat. Ekkor van benne olyan f optimális folyam, melyet egy F egyszerű élhalmaz határoz meg, és a maximális folyamérték éppen az s t utak száma a fenti egyszerű dekompozícióban, Definíció: Egy L élhalmaz elvágó élhalmaz G-ben, ha elhagyása után nincs G-ben irányított s t út. 3 Ilyenkor ugyanis nincs javító út.

GRÁFELMÉLET 7 Állítás: Minden {S, T }-vágás élhalmaza (S-ből T -be mutató élek) egyben elvágó halmaz. Megfordítva, minden L elvágó élhalmaznak van olyan részhalmaza, mely egy {S, T }-vágás élhalmaza. Menger-tétel: Legyen G egy irányított gráf, és s, t V ( G), s t. Ekkor max{k : P 1,..., P k éldiszjunkt s t utak} = min{ L : L E( G), G L ben nincs s t út}. 1. Következmény: (Menger-tétel irányítatlan gráfokban éldiszjunkt utakra) Legyen G egy irányítatlan gráf, és s, t két pontja. Ekkor max{k : P 1,..., P k éldiszjunkt s t utak} = min{ L : L E(G), G L ben nincs s t út}. 2. Következmény: (Menger-tétel irányított gráfokban pontdiszjunkt utakra) Legyen G egy irányított gráf, és s, t két pontja. Tfh. nincs st irányított él a gráfban. Ekkor max{k : P 1,..., P k pontdiszjunkt s t utak} = min{ U : U V (G) {s, t}, G U ban nincs s t út}. 3. Következmény: (Menger-tétel irányítatlan gráfokban pontdiszjunkt utakra) Legyen G egy irányítatlan gráf, és s, t két pontja, melyek nem szomszédosak. Ekkor max{k : P 1,..., P k pontdiszjunkt s t utak} = min{ U : U V (G) {s, t}, G U ban nincs s t út}. Definíció: Legyen k N. A G gráf k-szorosan élösszefüggő, ha tetszőlegesen elhagyva belőle legfeljebb k 1 élt, az így kapott gráf még összefüggő. Úgy is mondjuk, hogy G k-élösszefüggő. Hasonlóan, a G gráf k-szorosan pontösszefüggő, ha tetszőlegesen elhagyva belőle legfeljebb k 1 csúcsot az így kapott gráf még összefüggő. Ilyenkor G-t k-összefüggőnek is hívjuk. Tétel: Legyen G egy gráf és k N. 1. G pontosan akkor k-élösszefüggő, ha bármely x, y V (G)-re létezik k darab páronként éldiszjunkt xy út G-ben. 2. G pontosan akkor k-összefüggő, ha v(g) > k +1 és bármely x, y V (G)-re létezik k darab páronként pontdiszjunkt xy út G-ben (itt természetesen az utak belső pontjai nem lehetnek közösek)

8 ALAPVETŐ FOGALMAK ÉS TÉTELEK Jelölés: Legyen G egy gráf. Ha G összefüggő, akkor κ e (G) = a legnagyobb k, amire G k-élösszefüggő és κ(g) = a legnagyobb k, amire G k-összefüggő. Ha G nem összefüggő, akkor κ e (G) = κ(g) = 0. Trivi: κ e (G) κ(g) minden G gráfra. Egy fontos alkalmazás: Projektkiválasztás folyamok segítségével. 4. Párosítások Definíciók: Legyen G egy gráf. M E(G) párosítás, ha az M-beli éleknek nincs közös végpontja (tehát v(m) = 2 M, úgy is mondjuk, hogy M élei függetlenek - emiatt hurokél nem lehet benne egy párosításban sem). Teljes párosítás: M = v(g)/2, tehát ekkor G páros sok csúcsú gráf. Maximális párosítás: ν(g) = max{ M : M párositás G ben}. Mohó párosítási algoritmus (1) E = {e 1, e 2,..., e m }, M :=, i := 1 (2) Ha M e i párosítás, akkor M := M e i (3) Ha i < m akkor i := i + 1 és folytassuk a 2-es lépéssel (4) Megállunk, a megtalált M élhalmaz a párosításunk Legyen π egy permutáció [m]-en. Ha a fenti 1-es lépésben π szerinti sorrendben vesszük az éleket, a megtalált párosítás méretét ν π (G)-vel jelöljük. Állítás: ν(g)/2 ν π (G) ν(g). 4.1. Véletlen algoritmus teljes párosítás létezésére páros gráfokban. Definíció: Legyen G egy A és F csúcsosztályokkal rendelkező páros gráf (A az alsó, F a felső csúcsok halmaza). A B G páros szomszédsági mátrix a következőképpen épül fel: a sorai A elemeivel, az oszlopai F elemeivel vannak megcímkézve. A a-adik sor f-edik eleme pontosan akkor 1-es, ha a és f szomszédosak, különben 0. Észrevétel: Ha det(b G ) 0, akkor van legalább egy nemnulla kifejtési tagja a determinánsnak, annak elemei mind 1-esek, ez tehát azt jelenti, hogy ekkor G-ben van teljes párosítás. Ez megfordítva már nem igaz: lehet úgy nulla a determináns, hogy legyen nemnulla kifejtési tagja B G -nek. Azaz ha det(b G ) = 0, attól még lehet teljes párosítás G-ben. Definíció: Legyen B egy n n-es mátrix. Ekkor B permanense a következő képlettel van meghatározva: n per(b) = B i,π(i). π permutáció i=1 Látható, hogy per(b G ) értéke éppen G teljes párosításainak száma. Sajnos a permanens jelenlegi tudásunk szerint nagyon időigényesen számolható csak ki, így visszatérünk a determináns felhasználására.

GRÁFELMÉLET 9 Definíció: Az X G egy e(g) változós polinom, melyet úgy kapunk, hogy B G -ben az 1-eseket kicseréljük különböző változókra, majd a kapott mátrixnak vesszük a formális kifejtését. Tétel: Az X G polinom pontosan akkor azonosan nulla, ha G-ben nincs teljes párosítás. Bár X G kifejtésében a nemnulla tagok száma kezelhetetlen lehet már kis v(g)-re is, de ha det(x G )-ben konkrét értékeket adunk a változóknak, az így kapott determináns már gyorsan kiszámolható. Most megadunk egy véletlen módszert: Véletlen algoritmus teljes párosítás létezésének eldöntésére (1) Minden e E(G)-re véletlenül, egyenletes eloszlással kiveszünk egy r e számot az {1, 2,..., N} halmazból, a választások függetlenek egymástól (itt N egy nagy egész szám). (2) Számoljuk ki a det(x G ) xe=r e értéket, azaz az x e változó helyébe helyettesítsük be az r e számot minden e E(G)-re, majd vegyük a determinánst. (3) Ha a kapott determináns nem nulla, akkor a kimenet: biztosan van teljes párosítás G-ben. Ha nullát kaptunk, akkor a kimenet: valószínűleg nincs teljes párosítás G-ben. Miért működik a fenti módszer? Hasznos intuíció a következő: ha veszünk egy k-adfokú egyváltozós valós polinomot, akkor annak legfeljebb k különböző gyöke lehet, így ha pl. egy 1 és N közti véletlen egész számot helyettesítenénk be a változó helyébe, kicsi eséllyel, k/n valószínűséggel kapnánk nullát - hacsak nem volna a polinom azonosan nulla. A mi esetünkben det(x G ) egy e(g) változós polinom, tehát jóval bonyolultabb viselkedést is elvárhatnánk, de szerencsére a fenti gondolatmenet általánosítható. Schwartz-lemma: Legyen p(x 1,..., x k ) R[x 1,..., x k ] egy nem azonosan nulla polinom, és legyenek az r i számok egyenletes eloszlású független véletlen változók az {1,..., N} halmazból. Ekkor P (p(r 1,..., r k ) = 0) deg(p) N, ahol deg(p) a p polinom foka. 4.2. Javító utas módszerek. Definíció: Legyen G egy gráf, M egy párosítása, P pedig egy P = v 0 e 1 v 1 e 2... v k 1 e k v k út G-ben. P javító út M-re, ha v 0 és v k párosítatlan csúcsok és P minden páros indexű éle M-be tartozik. (ekkor persze k páratlan) Triviális: Ha létezik P javító út M-re, akkor G-ben van M-nél több élű párosítás. Ennél több is igaz: Berge-tétel: Pontosan akkor nincs nincs javító út M-re, ha M optimális. néhány gyakorlaton tárgyalt feladatból következik) Észrevétel: A mohó algoritmus egy triviális javító utat keres minden lépésében. (a bizonyítás Definíció: Adva van a G gráf és egy M párosítása. P = v 0 e 1 v 1 e 2... v k 1 e k v k javító út kezdemény M-re, ha v 0 párosítatlan, és minden páros indexű él M-beli. Javító út kezdeményes párosítási algoritmus Adva van G és benne egy M párosítás.

10 ALAPVETŐ FOGALMAK ÉS TÉTELEK (1) Legyen R V V (M), K := R; B :=, C := K B (2) AMÍG találunk k K pontot, melynek van s C (azaz címkézetlen) szomszédja 2.1 Ha s V (M), akkor találtunk egy javító utat s-be, a k-ba vezető javító út kezdeményt meghosszabbítva. Ebben az esetben Sikeres a keresés. 2.2 Ha létezik t V úgy, hogy st M, akkor mohó címkenövelés: K := K t, B := B s és C := C {s, t}. (3) Ha az AMÍG ciklusból nem Sikeres kereséssel jöttünk ki, akkor Sikertelen a keresés. Megjegyzés: A fenti (2)-es pont alá tartozó részre mint Mohó Címkenövelésre fogunk a továbbiakban hivatkozni. Észrevétel: az algoritmus folyamán végig K B = R. Magyar módszer (Harold Kuhn 1955-ben, König Dénes és Egerváry Jenő eredményeit felhasználva): Legyen G(A, F ) egy páros gráf, M pedig egy párosítása. M pontosan akkor maximális, ha a Javító út kezdeményes párosítási algoritmus az R = A (V V (M)) indulással 4 nem talál javító utat, azaz Sikertelen kereséssel ér véget. Definíció: Legyen G(A, F ) páros gráf. A H A halmaz König-akadály az A halmazban, ha N(H) < H. 1. Következmény: A G(A, F ) páros gráfban pontosan akkor van A-t lefedő párosítás, ha A-ban nincs König-akadály. 2. Következmény: A G(A, F ) páros gráfban pontosan akkor van teljes párosítás, ha A = F és A-ban nincs König-akadály. Definíció: L V lefogó ponthalmaz, ha minden e E élnek van L-beli végpontja. Könnyű, de fontos: Ha L lefogó ponthalmaz és M párosítás, akkor L M. Ennek következménye: ha L = M, akkor L minimális, míg M maximális méretű. Edmonds-algoritmus: Bármilyen G gráfban (tehát ha G nem páros, akkor is) ezzel a módszerrel kereshetünk G-ben maximális párosítást. Kiindulás: adva van G és benne egy M párosítás. Javító utat keresünk M-re. (1) Legyen R = V V (M), K := R; B :=, C := K B (2) Mohó címkenövelés elakadásig (ezzel felépítünk egy F keresőerdőt). (3) AMÍG találunk k, k K pontot, melyek szomszédosak - legyenek r és r azok az R-beli csúcsok, melyekből indulva címkéztük meg k-t illetve k -t 3.1 Ha r r, akkor találtunk egy javító utat: az r-ből induló, k-ba vezető javító út kezdeményből a kk élen át eljuthatunk r -be. Ebben az esetben Sikeres a keresés. 3.2 Ha r = r, akkor Edmonds-eset. (Ezt külön írjuk le.) (4) Ha az AMÍG ciklusból nem Sikeres kereséssel jöttünk ki, akkor Sikertelen a keresés. 4 Tehát R az összes párosítatlan alsó pont halmaza.

GRÁFELMÉLET 11 Edmonds-eset: Az e = kk él a kereső erdő r-ben gyökerező részfájában meghatároz egy C e kört. A C e kört összezsugorítjuk, az így kapott gráfot G-vel jelöljük. Ezzel egyben kaptunk egy F keresőerdőt és egy M párosítást. Ezután folytassuk a 2-es (Mohó címkenövelés) lépéssel. Az újabb és újabb zsugorításokkal gráfsorozatot kapunk: G = G 0, G 1,..., G v. Itt G v az utolsó gráf, melyet az algoritmus konstruál. Definíció: Legyen R V (G) és β(r) = c 1 (G R) R, ahol c 1 (G R) a G R páratlan csúcsszámú komponenseinek száma. R Tutte-akadály, ha β(r) > 0. Könnyű: Ha M párosítás, akkor β(r) n 2 M =: δ(m); δ(m) a párosítatlan csúcsok száma. Megjegyzés: Ha az Edmonds-algoritmus Sikertelen kereséssel áll meg, akkor a K halmaz az utolsó G v gráfban független halmaz, és ekkor β(b) = c 1 (G v B) B = K B, ami éppen a fák száma a kereső erdőben. Pontosan ennyi csúcs marad párosítatlan G-ben. Tutte-tétel: G-ben pontosan akkor van teljes párosítás, ha nincs benne Tutte-akadály. Berge-formula: max{β(t ) : T V (G)} = min{δ(m) : M párosítás} Petersen-tétel: 5 Minden kétszeresen élösszefüggő 3-reguláris gráfban van teljes párosítás. Egyéb párosítással kapcsolatos optimalizálási kérdések: G éleit súlyozzuk keressünk maximális súlyú párosítást, keressünk minimális súlyú teljes párosítást! 5. A kínai postás problémája Definíció: Legyen G összefüggő, legyen l : E(G) R + élsúly függvény. Egy S = x 0 e 1 x 1 e 2 x 2... x s 1 e s x s sétára l(s) = e S l(e). A célunk megoldani az alábbi minimalizálási feladatot, és megtalálni az optimális S sétát: min{l(s) : S zárt séta, melyre E(S) = E(G)}. A probléma Mei-ko Kwan kínai matematikus után kapta a nevét. Ha van Euler-kör G-ben, a megoldás trivin az Euler-kör maga. Általában a következő algoritmust használhatjuk (Edmonds): Kínai postás probléma megoldása (1) G-ben meghatározzuk a páratlan fokú pontok Q halmazát. 5 Nem vettük a bizonyítását, bár nem nehéz.

12 ALAPVETŐ FOGALMAK ÉS TÉTELEK (2) Q összes u, v pontpárjára meghatározzuk a P (u, v) legrövidebb utat (pl. a Dijkstraalgoritmussal). (3) Készítünk egy F segédgráfot Q-n: ebben minden lehetséges él szerepel, az uv él súlya l(uv) = l(p (u, v)). (4) Vesszük F legkisebb súlyú teljes párosítását, legyen ez M. (5) M éleit hozzáadjuk G-hez, majd az így kapott gráfban Euler-kört keresünk. Ez lesz a probléma optimális megoldása. Állítás: Az optimális körséta minden élen legfeljebb kétszer halad át. 6. Hamilton-kör, Hamilton-út Definíció: Egy G gráf Hamilton-köre olyan kör, mely G minden csúcsán pontosan egyszer halad át. A Hamilton-út olyan út, mely G minden csúcsát tartalmazza. Néhány szükséges feltétel: (nem elégségesek!) Ha G-nek van Hamilton-köre, akkor 2-összefüggő. Ha G-nek van Hamilton-köre, akkor a következő teljesül minden S V (G)-re: c(g S) S. Könnyű: Ha G egyszerű gráf, akkor van benne δ(g) hosszú út és δ(g) + 1 hosszú kör. Ha δ(g) elég nagy, sokkal többet állíthatunk. Dirac-tétel: Legyen G egyszerű, legalább 3 pontú gráf. Ha G minimális foka, δ(g) n/2, akkor G-ben van Hamilton-kör. Ore-tétel: Legyen G egyszerű gráf legalább három ponton. Tegyük fel, hogy ha x és y különböző csúcsok G-ben, melyek nem szomszédosak, akkor d(x) + d(y) v(g). Ekkor G-ben van Hamilton-kör. (ezt is bizonyítottuk, jön belőle a Dirac-tétel) Fontos fogalom a bizonyításban: Dirac-csavar (vagy Dirac-transzformáció). Az ábrán látható a kilenc csúcsú, fekete élekből álló P út. Ha léteznek a kékkel jelölt x 1 x 6 és x 5 x 9 élek E(G)- ben, akkor találhatunk egy kilenc hosszú kört (pirossal jelölve), mely P minden csúcsát tartalmazza. Definíció: Legyen α(g) = max{ I : I V (G), e(g[i]) = 0} a legnagyobb független halmaz mérete G-ben. Chvátal-Erdős-tétel: 6 Legyen G egyszerű gráf legalább 3 csúcson. Ha κ(g) α(g), akkor G-ben van Hamilton-kör. Megjegyzés: Bár a Dirac-tétel vagy a Chvátal-Erdős-tétel megad egy-egy elégséges feltételt Hamilton-kör létezésére, nem ismert egyszerű (polinom időben ellenőrizhető) szükséges és elégséges feltétel Hamilton-körökre. Ráadásul a Hamilton-kör probléma NP-teljes. 6 Ez nem hangzott el előadáson, itt csak érdekességként szerepel.

GRÁFELMÉLET 13 Figure 1. Dirac-csavar 7. Gráfok színezése Definíció: Legyen G egy gráf. Az s : V (G) N függvény jó csúcsszínezése G-nek, ha minden xy E(G)-re s(x) s(y). (Ha G-nek van hurokéle, nem lehet jó csúcsszínezése.) Jelölés: χ(g) = min{k : s : V (G) [k] jó csúcsszinezés}, tehát a legkisebb szín szám, ami szükséges. χ(g)-t G kromatikus számának is mondjuk. Egy lehetséges alkalmazás: Legyen V feladatok halmaza. Bizonyos feladatokat végre tudunk hajtani egyszerre, más feladatok kizárják a párhuzamos végrehajtást. Készítünk egy G gráfot, pontjai a feladatok. Ha két feladatot nem tudunk egy időben végrehajtani, akkor a megfelelő két pontot összekötjük éllel G-ben. Ekkor a feladatok végrehajtásához szükséges lépések száma éppen χ(g). Észrevétel: χ(g) = 1 akkor és csak akkor, ha e(g) = 0. Ha T fa, akkor 2 szín elég, így χ(t ) = 2. Ha G-ben van páratlan kör, akkor χ(g) 3. Állítás: χ(g) = 2 pontosan akkor, ha G páros gráf. Mohó színezési algoritmus: Egy π permutáció szerinti sorrendben vesszük G csúcsait. Az i-edik csúcsot azzal a legkisebb színnel színezzük, melyet a már színezett szomszédai nem foglaltak még le. Állítás: Bármely hurokél mentes G gráfot tudunk a mohó algoritmussal legfeljebb (G)+1 színt felhasználva színezni (itt (G) a G maximális foka). Brooks-tétel: Legyen G összefüggő, hurokél mentes gráf. Ha G nem teljes gráf vagy páratlan kör, akkor χ(g) (G). (nem bizonyítottuk, de az állítást magát tudni kell!) Megjegyzés: Az optimális számú színnel való színezés nagyon nehéz algoritmikus probléma, nem ismert rá hatékony módszer (éppúgy NP-teljes, mint a Hamilton-kör probléma). Brooks tétele általában nem éles, sokszor a maximális foknál jóval kevesebb szín elég.

14 ALAPVETŐ FOGALMAK ÉS TÉTELEK Gyengített Brooks-tétel: Legyen G egy összefüggő, hurokél mentes gráf, mely nem reguláris. Ekkor χ(g) (G). A gyengített Brooks-tétel bizonyítása sugall egy színezési heurisztikát: a fokszámok szerint rendezzük a csúcsokat, és kezdjük a mohó színezést a nagy fokúakkal, egyre kisebb fokúak felé haladva. Gallai-Roy-Vitaver-tétel: Legyen G egy hurokél mentes gráf, és legyen D a G éleinek valamely irányításával kapott gráf. Ekkor χ(g) l(d) + 1, ahol l(d) jelöli D leghosszabb irányított útjának hosszát. Megfordítva, bármely G-hez tartozik olyan irányítás, melyre χ(g) = l(g) + 1. Definíció: Legyen G egy gráf. Az s : E(G) N függvény jó élszínezése G-nek, ha minden xy, xz E(G)-re s(xy) s(xz) (azaz közös végponttal rendelkező élek színe különböző; mivel akár párhuzamos élek is lehetnek G-ben, a közös pontok száma 2 is lehet). Jelölés: χ e (G) = min{k : s : E(G) [k] jó élszinezés}, tehát a legkisebb szín szám, ami szükséges. χ e (G)-t G élkromatikus számának is mondjuk. Könnyű: (G) χ e (G). Tétel (König): Legyen G páros gráf. Ekkor χ e (G) = (G). Vizing-tétel: ( (G) ) χ e (G) (G) + 1. (nem bizonyítottuk) Színezéssel kapcsolatos 7 : Hadwiger-sejtés, Kuratowski-tétel, Wagner-tétel. 7.1. Röviden síkgráfokról. 8 Definíció: Síkbarajzolás, síkgráf. Tartomány. Síkgráf duálisa. Euler-formula: Minden G síkgráfra t + c = e + 2, ahol t jelöli G tartományainak számát, c a pontjainak száma és e az éleinek száma. 1. Következmény: (1) Ha G egyszerű síkgráf legalább 3 ponton, akkor e(g) 3 v(g) 6. (2) Ha G egyszerű páros síkgráf legalább 3 ponton, akkor e(g) 2 v(g) 4. 2. Következmény: (1) miatt K 5 nem síkgráf, míg (2)-ből következik, hogy K 3,3 (a három ház - három kút gráf) sem síkgráf. 3. Következmény: Minden G egyszerű síkgráfnak van olyan pontja, melynek foka legfeljebb 5. Emiatt minden egyszerű síkgráfot lehet 6 színnel színezni. Híres kérdés volt: Lehet-e minden síkgráf pontjait 4 színnel jól színezni? Eredetileg a tartományokra vonatkozott a kérdés (térkép országainak színezése 4 színnel), de a duálisra áttérve már pontszínezési kérdés lesz belőle. Az 1850-es években vetette fel Francis Guthrie. Az évek során egy hasznos hibás megoldás is született: Kempe hibás bizonyítása, de jó módszere vezetett el az Ötszín-tételhez, amit Heawood bizonyított. Végül 1976-ban oldotta meg Appel és Haken, részben számítógep felhasználásával ez a Négyszín-tétel. Robertson, 7 Nem kell tudni! 8 A megcsillagozott részek BSc-s anyagba tartoznak, itt csak emlékeztetőül szerepelnek. A Négyszín-tétel története pedig érdekes.

GRÁFELMÉLET 15 Sanders, Seymour és Thomas nagyban egyszerűsítette a bizonyítást, de a még így is sok megvizsgálandó eset miatt nekik sem sikerült elkerülni a számítógépek használatát. 8. Extremális gráfelmélet 8.1. Független halmazok, klikkek. Definíció: Legyen G egyszerű gráf. H V (G) független halmaz, ha e(g[h]) = 0, azaz H-beli csúcsok között nem megy él G-ben. Jelölés: α(g) = max{ H : e(g[h]) = 0}. H V (G) klikk, ha e(g[h]) = ( ) H 2, azaz bármely két H-beli csúcs között megy él G-ben. Jelölés: { ( )} H ω(g) = max H : e(g[h]) =. 2 Könnyű látni: α(g) = ω(g). Mohó algoritmus α(g) becslésére (1) F :=, T := V (G) (2) AMÍG T (a) Legyen x T tetszőleges. (b) Legyen F = F + x és T = T x N(x) (3) Kimenet: az F független halmaz Könnyű látni az algoritmusból: α(g) v(g)/( (G) + 1). Ennél több is igaz általában: Caro-Wei-tétel: α(g) v V (G) 1 d(v) + 1. 8.2. Turán-típusú extremális kérdések. Definíció: Legyen k, n N úgy, hogy 2 k n. A T n,k Turán-gráf csúcshalmaza k diszjunkt osztályból áll: A 1,..., A k, ahol A i A j 1 (ha k n, akkor minden osztály ugyanakkora). T n,k élei: ha 1 i j k, akkor minden x A i szomszédos minden y A j -vel, más élek nincsenek. Definíció: Legyen G és F két gráf. Azt mondjuk, hogy F részgráfja G-nek, ha megkaphatjuk F -et G-ből csúcsok és élek elhagyásával. Jele: F G. A G gráf F -mentes, ha F G. Trivi: T n,r nem tartalmaz K r+1 -et, azaz K r+1 -mentes. Turán-tétel: Legyen 3 r N és G egy n csúcsú egyszerű gráf, mely K r -mentes. Ekkor e(g) e(t n,r 1 ).

16 ALAPVETŐ FOGALMAK ÉS TÉTELEK 8.3. Ramsey-elmélet. Definíció: Legyen G egyszerű gráf. Ekkor Ramsey(G) = R(G) = max{α(g), ω(g)}. Másképpen nézve: G éleit színezzük zöldre, és amik nincsenek benne G-ben, azokat pirosra. Így beszíneztük az n = v(g) csúcsú K n éleit. Homogén halmaznak hívjuk azt a H V (G) csúcshalmazt, melyen belül K n -nek minden éle ugyanolyan színű vagy mind piros, vagy mind zöld. Tehát minél nagyobb homogén klikket keresünk. Ramsey-tétel: Legyen k N. Ha n 4 k, akkor akárhogyan is színezzük két színnel K n éleit, találunk k méretű homogén halmazt. Másképpen megfogalmazva: ha G egy n csúcsú egyszerű gráf, akkor R(G) 1 2 log 2 n. 9. Röviden expander gráfokról Rendezés: adaptív és nem adaptív módszerek. Utóbbira példa a rendező hálózat. Alekszejev tétele: Már egy felező hálózathoz is kell legalább n 2 log n 2 összehasonlító kapu. Ajtai-Komlós-Szemerédi: Létezik rendező hálózat, mely O(n log n) kapuval bármely n elemű bemenetet jól rendez. A bizonyításuk (azaz rendező algoritmusuk) fontos építőköve az expander gráf. Sok többé-kevésbé különböző definíciója ismert, attól függően, hogy mire akarjuk alkalmazni. Egy lehetőség az alábbi. Definíció: Legyen c (0, 1) és d N. Egy G(A, F ) páros gráfot, ahol A = F = N, (c, d)-expandernek hívunk, ha (G) d, és minden H A, H N/2 halmazra N(H) (1 + c) H. Hasonló igaz F részhalmazaira is. Nem különösebben nehéz belátni, hogy egy korlátos fokú véletlen gráf 9 pozitív valószínűséggel expander gráf lesz, már d = 3 esetén is. Sokkal nehezebb algoritmikusan megadni ilyen gráfokat. Az első konstrukció Marguliszé volt a 80-as évek elején. Látható: ha G expander, akkor az átmérője 10 O(log N). Ilyen kis átmérőjű gráf volt a hiperkocka is, de abban a pontok foka nem konstans, hanem a pontok számával logaritmikusan növő függvény. Ez számít egyes alkalmazásoknál. Triviális: szükséges, hogy d 3 legyen, hiszen d = 1, 2 esetén G nem lehet expander (miért is?). Könnyű azt is látni, hogy páros expander gráfban mindig van teljes párosítás. Az Ajtai-Komlós-Szemerédi-féle rendező hálózat összehasonlításai menetekre oszthatók fel, ahol egy menet egy expander gráf egyik teljes párosításának felel meg, azaz ha pl. xy egy ilyen párosításbeli él, akkor az x-edik és az y-odik drótokat összehasonlítjuk egy kapuval. Mivel minden menetben párosításbeli élek szerepelnek, így minden drót tartalmát csak egyetlen másikéval hasonlítjuk össze, és ezek az összehasonlítások párhuzamosan is elvégezhetőek. Egy másik alkalmazás 11, melyet szintén Ajtai Miklós, Komlós János és Szemerédi Endre vett észre, a véletlenszám generálás. Itt a következő tulajdonságot kell kihasználni: 9 Kicsit később jön egy kevés véletlen gráfokról. 10 Azaz a két egymástól legmesszebbre lévő pontjának távolsága. 11 Órán erről nem esett szó.

GRÁFELMÉLET 17 ha O(log N) hosszú véletlen" sétát teszünk egy expander gráfban, akkor megálláskor a gráf bármely pontjában lényegében ugyanakkora valószín séggel tartózkodhatunk. Tehát kis költséggel O(log d log N) bittel közel egyenletes eloszlást tudunk adni [N]-en. 12 10. Kisvilág gráfok Erre lényegében nem jutott idő, de talán lesz, aki érdekes olvasnivalónak találja. Előzmények, példák: Karinthy Frigyes egy novellája és Stanley Milgram híres csomagküldési kísérlete. A Hollywood-gráf. Ismeretségi hálózatok, akár irodalmi művekben is (pl. Homérosz: Íliász, Hugo: Nyomorultak). Telefonhívások gráfja. Anyagcsere gráfja. Az agy neuronhálózata. Idegrendszer. Táplálékláncok. Általános tulajdonságok: - Kicsi átmérő ( Milyen kicsi a világ?! ), de legalábbis kicsi átlagos átmérő (azaz a legtöbb pontpár közel van egymáshoz). - A fokszámeloszlás hatványtörvényt követ: a k fokúak aránya C/k s, ahol C és s állandók (ezek a skálafüggetlen gráfok) - Viszonylag kevés él, és mégis sok háromszög, amin a következő értendő: ha x-nek y és z is szomszédja, akkor nagyobb arányban lesz y és z szomszédos, mint ami az élek számából egyenletes élelosztás esetén következne. - A véletlen támadásoknak jól ellenállnak, a célzott támadások ellen jóformán védtelenek 10.1. Az Albert-Barabási-modell egy skálafüggetlen gráftípus generálására. A kisvilág gráfok megértéséhez fontos ilyen gráfokat generálni. A most tárgyalandó módszert Albert Réka és Barabási Albert-László dolgozta ki. Induljunk ki egy élből, majd lépésenként egy új pontot és egy rá illeszkedő új élt adunk a gráfhoz. A következő szabály szerint építkezünk: ha már van n csúcsom, x 1,..., x n, és x n+1 az új csúcs, akkor x n+1 -et d(x i ) n j=1 d(x j) valószínűséggel kössük össze az x j csúccsal. A valószínűségek összege 1, tehát mindig lesz x n+1 -nek szomszédja az első n csúcs közül. Az eredmény minden lépésben egy fa lesz, melynek fokszámeloszlása hatványtörvényt követ s = 3 kitevővel 13. Kiválóan ír le egyes fizikai vagy kémiai folyamatokat, pl. a polimerizációt. Ha az új pontot több már meglévő ponttal is összeköthetem a fenti szabállyal analóg módon, akkor persze már nem fát kapunk, pl. háromszögek is lehetnek a keletkező gráfban. 12 Fontos, de nem jelent igazi korlátot, hogy páros gráfban páratlan hosszú séta mindig az ellenkező színosztályba visz, páros hosszú pedig a kiindulásiba. Sokszor egyébként nem páros expander gráffal dolgozunk, de ilyet nem adtunk meg órán. 13 Ez Bollobás, Riordan, Spencer és Tusnády eredménye.

18 ALAPVETŐ FOGALMAK ÉS TÉTELEK 10.2. A Girvan-Newman-algoritmus közösségek megkeresésére. Az adatbányászati alkalmazásoknál az egyik fő cél a közösségek 14 kimutatása. A közösség fogalmára többféle definíció is ismert, mi a következőt használjuk: egy gráfban közösségnek tekintjük a csúcsoknak egy K részhalmazát, ha igaz, hogy K-n belül nagyobb az élsűrűség, mint K és a komplementere között. Ha egy gráf nem összefüggő, akkor komponensei nyilvánvalóan közösségeknek tarthatók. De persze a komponenseket belülről is tagolhatják további közösségek. A közösségek kimutatására szolgáló sok módszerből egyet ismertetünk, melyet Michelle Girvan és Mark Newman adott meg. Legyen G egy gráf és tfh. e = uv E(G). Definiáljuk a p(x, y) függvényt minden x, y V (G), x y pontpárra: P (x, y) = az x-et y-nal összekötő minimális hosszú utak halmaza, és legyen p(x, y) = P (x, y). Most legyen p(e; x, y) = {P : P P (x, y) és e P}, tehát azon minimális hosszú, x-et y-nal összekötő utak száma, amik tartalmazzák az e élt. Végül a fogalom, amiért az előző jelöléseket bevezettük: b(e) = (x,y) ( V (G) 2 ) p(e; x, y) p(x, y). A b(e) függvény 15 annál nagyobb, minél többször szerepel e minimális hosszú utakban. Bevezetését a következő megfontolás indokolja: ha e az egyetlen él, mely két részgráfot összeköt G-ben, akkor a két részgráf pontjai között menő minimális hosszú utak mindegyike tartalmazni fogja e-t, tehát b(e) szükségképpen nagy lesz. Ha viszonylag kevés él köt össze két részt, az összekötő élek között még mindig lesz olyan, ami sok minimális hosszú útban szerepel, hisz az átlag még mindig nagy szám lesz. Tehát ha a gráf jól szétválasztható pontdiszjunkt közösségekre, akkor néhány nagy b(.) értékű él elhagyása után szét fog esni komponensekre. Az algoritmus itt sem áll meg: rögzítjük a pillanatnyi állást, majd tovább dobáljuk el az éleket a b(.) szerint, hogy a komponensek/közösségek belső szerkezetét is megismerjük. Pontos leírás: Girvan-Newman-algoritmus (1) Minden e E(G)-re kiszámoljuk b(e) értékét. (2) Legyen e a legnagyobb b(.) értékű él. Az e élt töröljük a gráfból: G := G e. (3) Ha E(G), akkor folytassuk az (1)-es lépéssel. Nyomon követve az éltörlésekkel kapott gráfsorozatot, képet kapunk a közösségekről. 10.3. Kevés szó véletlen gráfokról. 16 Az Albert-Barabási-modell egy véletlenül felépülő gráfot ad. Az első véletlen gráfokat Gilbert illetve Erdős Pál és Rényi Alfréd definiálta jóval a kisvilág gráfokat megelőzően, 14 Sok a hasonlóság klaszterezéssel. 15 Angol neve edge betweenness, azaz él köztesség. 16 Érdekesség bár nagyon fontos akár algoritmusoknál, nem része a tananyagnak.

GRÁFELMÉLET 19 nagyjából 50 évvel ezelőtt. Az ún. Erdős-Rényi-modellben a G(n, p) véletlen gráf tulajdonságait vizsgáljuk. Egy G(n, p) gráf a következőképpen épül fel: minden különböző pontokból álló pontpárra a többi választástól függetlenül p valószínűséggel behúzzuk a pontpárt összekötő élt, míg (1 p)-vel a pontok nem lesznek szomszédosak. Néhány érdekes p érték (a felsorolt tulajdonságok mind nagy, n-ben 1-hez tartó valószínűséggel teljesülnek) - p = 0-nál nincs egyetlen élünk sem - p = 1/n-nél lesz kb. log n méretű komponens a gráfban - ha p = K/n, ahol K egy nagy rögzített szám, akkor bár a gráf nem lesz összefüggő, de lesz egy nagy komponense, ami a pontok túlnyomó részét tartalmazza (érdekes, hogy pl. már K = 2 ad egy viszonylag nagy komponenst!) - ha p = log n log log n n, akkor a gráf összefüggő lesz, sőt, egész kicsivel, log n -nel megnövelve ezt a p-t, már Hamilton-kör is lesz - ha p = 1/ n, akkor sok háromszög lesz - p = 1/2-nél α(g), ω(g) log n (Erdős Pál ezt használta ki, hogy a Ramseyszámokra megadja híressé vált korlátját) - p = 1-nél a gráf éppen K n Alkalmazásuk: A matematikának szinte minden területén előfordulnak, algoritmusok kidolgozásánál, elemzésénél is fontosak. A kisvilág gráfok közösségei sokszor ilyen véletlen gráfok tulajdonságaival rendelkeznek, így az egyes közösségekre sokszor akár Erdős-Rényiféle véletlen gráfként is érdemes lehet tekinteni.