Gráf csúcsainak színezése

Slides:



Advertisements
Hasonló előadás
Síkbarajzolható gráfok
Advertisements

GRIN: Gráf alapú RDF index
A Dijkstra algoritmus.
Készítette: Kosztyán Zsolt Tibor
KÉSZÍTETTE: Takács Sándor
egy egyszerű példán keresztül
Matematika feladatlap a 8. évfolyamosok számára
GRÁFELMÉLET Alapfogalmak 2..
OKTV feladatok megoldása C#-ban
Dualitás.
Vektormező szinguláris pontjainak indexe
Illeszkedési mátrix Villamosságtani szempontból legfontosabb mátrixreprezentáció. Legyen G egy irányított gráf, n ponton e éllel. Az n x e –es B(G) mátrixot.
4. VÉGES HALMAZOK 4.1 Alaptulajdonságok
Streaming Algorithms for k-core Decomposition. K-mag dekompozíció Maximális részgráf, amiben minden csúcshoz legalább k részgráfbeli csúcs csatlakozik.
Dominók és kombinatorika
ELTE Matematikai Intézet
Grafika a programban Készítette: Pető László. Bevezetés Valójában nem a célobjektumra rajzolunk, hanem annak festővászon területére (canvas). Csak olyan.
Operációkutatás NYME Gazdaságinformatikus mesterképzés
Papp Róbert, Blaskovics Viktor, Hantos Norbert
A digitális számítás elmélete
1. Univerzális nyelő Csúcsmátrixos ábrázolás esetén a legtöbb gráfalgoritmus futási ideje O(n2) azonban van kivétel. Egy irányított gráf egy csúcsa univerzális.
Prím algoritmus.
„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.
Véges értékű függvények
Színes világban élünk.
Készítette: Kosztyán Zsolt Tibor
Gráfok Készítette: Dr. Ábrahám István.
Dijkstra-algoritmus ismertetése
Gyengén nemlineáris rendszerek modellezése és mérése Készítette: Kis Gergely Konzulens: Dobrowieczki Tadeusz (MIT)
GRÁFELMÉLET Alapfogalmak 1..
Lineáris programozás Elemi példa Alapfogalmak Általános vizsg.
Matematika felvételi feladatok 8. évfolyamosok számára
Matematika feladatlap a 8. évfolyamosok számára
GRÁFELMÉLET.
Nemdeterminisztikus tulajdonság tesztelés László Lovász Katalin Vesztergombi.
Euler gráf Euler, 1736 Königsbergi hidak
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.
Nevezetes algoritmusok: Fa megvalósítása Készítette: Várkonyi Tibor Zoltán.
Gráfok 1. Szlávi Péter ELTE IK Média- és Oktatásinformatika Tanszék
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,
GRÁFOK Definíció: Gráfnak nevezzük véges vagy megszámlálhatóan végtelen sok pont és azokat összekötő szintén véges vagy megszámlálhatóan végtelen sok.
Útkeresések.
Projektmenedzsment gráf általában súlyozott irányított
T.5. tétel (minimálpolinom egyértelmű létezése)
Algoritmusok és adatszerkezetek
E-HÓD HÓDítsd meg a biteket!.
HÁLÓZAT Maximális folyam, minimális vágás
Az Erős Perfekt Gráf Tétel
GRÁFOK Marczis Ádám és Tábori Ármin. Kőnig Dénes ( ) Magyar matematikus Az első tudományos színvonalú gráfelmélet könyv írója.
Gráfalgoritmusok Tassy Gergely Veres Péter Gimnázium, Budapest június 30.
PRÜFER KÓD. Fák kódolása számsorozatokkal Prüfer-kód: n csúcsú fa ↔ n-2 db szám Minden szám 1 és n közötti lehet Kölcsönösen egyértelmű: n csúcsú fák.
Lineáris programozás Elemi példa Alapfogalmak Általános vizsg.
HÓDítsd meg a biteket! 2. sorozat
Integrálszámítás.
BFák Kiegyensúlyozott keresőfák
HÁLÓZAT Maximális folyam, minimális vágás
Greedy heurisztikán alapuló közelítő algoritmusok
Piros-fekete fák Beszúrás, ill. törléskor a fa elveszítheti az egyensúlyát. A piros-fekete fák: az egyensúly megtartását biztosítják. +1 bit információ.
Hivatkozások beillesztése, animációk szerkesztése
Útravaló – Út a tudományhoz Egy gráfos feladat…
Mesterséges intelligencia
Számításelmélet 7.
Depth First Search Backtracking
Gráfalgoritmusok G=(V,E) gráf ábrázolása
Dijkstra algoritmusa: legrövidebb utak
Dijkstra algoritmusa: legrövidebb utak
Gráfok - 1 Definíció: Irányított gráf (digráf) G=(V,E) rendezett pár.
Dijkstra algoritmusa: legrövidebb utak
Gráfalgoritmusok G=(V,E) gráf ábrázolása
Előadás másolata:

Gráf csúcsainak színezése 2017. Április 26.

Kromatikus szám χ(G) az ún. kromatikus szám az a szám, ahány szín kell a G gráf csúcsainak olyan kiszínezéséhez, hogy a szomszédok más színűek legyenek.

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

Gráfok színezése Képzelt kontinens – hány színnel tudjuk úgy kiszínezni, hogy szomszédos országok más színűek legyenek?

Térképek színezése

Térképek színezése

Térképek színezése

Térképek színezése

Térképek színezése

Térképek színezése

Térképek színezése

Térképek színezése

Térképek színezése

4-szín tétel Minden térkép kiszínezhető 4 színnel úgy, hogy a szomszédos területek más színűek lesznek. Haaken és Appel bizonyította számítógép segítségével, kb. 1000 órás futási idővel (1976), 2000 esetet vizsgáltak meg szisztematikusan, ami ellenpélda lehetett volna Újabb biz.: (?) http://www.math.gatech.edu/~thomas/FC/fourcolor.html (The Four Color Theorem)

A térképszínezéstől a gráfszínezésig A probléma gráfelméleti megfogalmazása:

A térképszínezéstől a gráfszínezésig Duális gráf: Minden területhez egy pontot rendelünk, ezek lesznek a gráf csúcsai, élek: ha a területek szomszédosak voltak:

A térképszínezéstől a gráfszínezésig

A térképszínezéstől a gráfszínezésig Így kapjuk a duális gráfot:

A térképtől a duális gráfig 1) Minden terület belsejébe tegyünk egy pontot:

A térképtől a duális gráfig 2) A pontokat kössük össze a határt metsző vonallal:

A térképszínezéstől a gráfszínezésig Megrajzoljuk a duális gráfot:

A térképszínezéstől a gráfszínezésig A térkép országainak színezése ekvivalens a duális gráf csúcsainak színezésével.

Színezés DEF: Egy egyszerű gráf n-színezhető, ha minden csúcsához hozzárendelhető úgy egy szín hogy két szomszédos csúcshoz rendelt szín különböző. Az egyszerű gráf kromatikus száma az a legkisebb szám, ahány színnel kiszínezhető. Tétel: Valamely gráf akkor és csak akkor páros, ha kromatikus száma 2. Így pl.: (Kn,m)=2. Kn=? Teljes gráfra =? Formal definition: There is a function f : V  {1,2,3,…,n} such that for edges e with endpoints u,v (so e = {u,v}) f (u) is not equal to f (v).

Példa Ha a térkép nem színezhető ki két színnel, a duális gráfja sem:

Példa Ha a térkép nem színezhető ki 3 színnel, a duális gráf sem:

Példa A duális gráf 4 színnel kiszínezhető, a térkép is:

4-szín tétel gráfokra Minden sík gráf kiszínezhető négy színnel

Egy ütemezési feladat megoldása gráf színezéssel EG:Hány különböző alkalmat kell kiírni az első vizsgákra, ha a kurzusoknak van közös hallgatóik? A lehető legtöbb vizsgát egy alkalommal szeretnénk tartani, mert kevés a felügyelő tanár  Legyenek a tárgykódok pl: 1007, 3137, 3157, 3203, 3261, 4115, 4118, 4156 Tegyük fel, hogy az alábbi tárgyak esetében nincsenenek közös hallgatók: 1007-3137 1007-3157, 3137-3157 1007-3203 1007-3261, 3137-3261, 3203-3261 1007-4115, 3137-4115, 3203-4115, 3261-4115 1007-4118, 3137-4118 1007-4156, 3137-4156, 3157-4156 Assume that in all other pairs there are students.

Egy ütemezési feladat megoldása gráf színezéssel A probléma megoldása gráfszínezéssel: A csúcsok a kurzusok, az él pedig akkor legyen két kurzus között, ha van közös hallgató-ezeket nem lehet egyszerre tartani. 3203 3261 3137 4115 1007 4118 3157 4156

Egy ütemezési feladat megoldása gráf színezéssel 3203 3261 3137 4115 1007 4118 3157 4156

Gráf (csúcsainak) színezése Minden csúcshoz egy színt rendelünk Szomszédos csúcsok színe különböző Klasszikus probléma: NP komplett De vannak jó heurisztikák

Regiszter allokáció gráf színezéssel Minden változó egy regiszterhez (CPU) van hozzárendelve Minden csúcs kap egy színt HA 2 hely interferál, nem kaphat uo. regisztert,pl. ha egy ciklusban futnak Ha két csúcs között van él, akkor különböző színnel kell színezni s1 s2 s3 s4

Gráf színezése-példa

Gráf színezése-példa 1 egy színnel

Gráf színezése-példa

Gráf színezése-példa 2 színnel

Gráf színezése-példa

Gráf színezése-példa Még mindig 2 színnel

Gráf színezése-példa

Gráf színezése-példa 3 színnel

Kromatikus szám Kromatikus szám: az a legkisebb szám, ahány színnel a gráf kiszínezhető Jele:  Például páros körökre, páros gráfokra: (C2k)=2 Például páratlan körökre: (C2k+1)=3 Páros gráfra? (Tétel: G acsa páros, ha (G)=?) Teljes gráfra? Klikk (olyan részgráf, mely teljes gráf)

Heurisztika N színnel kiszínezni Ha fokszám < N=csúcsok száma A csúcsot mindig ki tudjuk színezni Minden csúcsot kiszínezünk, és a végén a kiindulásit Ha a fokszám >= N - lehet hogy ki lehet színezni N színnel

Regiszter allokáció gráf színezéssel Minden változót egy regiszterben tárolunk Minden csúcs kap egy színt HA 2 hely interferál, nem kaphat uo. regisztert Ha két csúcs között van él, akkor különböző színnel kell színezni-ennyi regiszter kell s1 s2 s3 s4

Heurisztika a regiszter allokációhoz A hurkok kiértékelése gyorsabb: változókat a CPU-ban tároljuk –ezek a csúcsok, él- ha egy időben kellenek-annyi regiszter kell, ahány színnel ez a gráf kiszínezhető Távolítsuk el az alacsony fokszámú < N csúcsokat egy verembe Ha mindegyik csúcs fokszáma >= N Kiválasztunk egy csúcsot-erre nem lesz szín ELtávolítjuk Ha üres, elkezdjük a színezést Kiveszünk egy csúcsot Olyan színűre színezzük, amilyen a szomszédaitól különbözik, ilyen van mert fokszám < N)

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s1 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s3 s0 s1 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s3 s0 s1 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s3 s0 s1 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s1 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s1 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s2 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s2 s0 s3 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s2 s0 s3 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s2 s0 s3 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s4 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4

Gráf színezése-példa N = 3 s1 s2 s0 s3 s4

Alkalmazások: DNA www.cs.unc.edu/~isenburg/slides/cpmcddp.ppt www.cs.purdue.edu/homes/dmdrake/cse397rna.ppt www.cs.unc.edu/~isenburg/slides/cpmcddp.ppt

5-szín tétel és bizonyítása Tétel: Ha G síkba rajzolható gráf, akkor (G)<=5 Biz. (1): Teljes ind. a gráf pontszámára Ha a gráfnak max 5 db csúcs van, akkor nyilvánvalóan kiszínezhető 5 színnel. TFH, n=k csúcsú gráf kiszínezhető 5 színnel N= k+1-re: VOLT: síkgráfokra: élek száma<=3n-6, következménye: van olyan csúcs, melynek fokszáma max 5. HA x foka=4, akkor x-et elhagyva a csúcsok száma eggyel csökken, tehát az ind. feltevés miatt ez kiszínezhető 5 színnel, visszavéve ezt a csúcsot, a szomszédait ki lehet színezni 4-gyel, +x, 5 szín! Ha x foka=5, akkor minden szomszédja nem lehet összekötve egymással, mert akkor K5 részgráf lenne:-nem sík! Legyen z, y az x olyan szomszédjai, melyek nincsenek összekötve, ezeket vonjuk össze egy ponttá, hagyjuk el x-et. Az ind. feltevés miatt a maradék kiszínezhető 5 színnel. Visszavéve és szétszedve x-y-z csúcsokat, ezek kiszínezhetők max 3 színnel, hiszen x-nek összesen 5 szomszédja van, az y és z-kívüli csúcsok 3 színt lefoglalnak, de y és z egyszínű (nem szomszédok), marad egy szín x-nek.

Ha a legkisebb fokszám 4 HA x foka=4, akkor x-et a rá illeszkedő élekkel együtt elhagyva a csúcsok száma eggyel csökken, tehát az ind. feltevés miatt ez kiszínezhető 5 színnel, visszavéve ezt a csúcsot, a szomszédait ki lehet színezni 4-gyel, +x, 5 szín!

Ha a legkisebb fokszám 5 Ha x foka=5, akkor x minden szomszédja nem lehet összekötve egymással, mert akkor K5 részgráf lenne:-nem sík! Merge

Ha a legkisebb fokszám 5 Ha x foka=5, akkor minden szomszédja nem lehet összekötve egymással, mert akkor K5 részgráfja lenne:-nem lehetne sík a gráf! x z yz egybe! y Legyen z, y az x olyan szomszédjai, melyek nincsenek összekötve, ezeket vonjuk majd össze egy ponttá, miután elhagytuk az x csúcsot az illeszkedő élekkel együtt.

Ha a legkisebb fokszám 5 (folyt.) Legyen z, y az x olyan szomszédjai, melyek nincsenek összekötve, ezeket vonjuk össze egy ponttá, hagyjuk el az x csúcsot az illeszkedő élekkel együtt. Ekkor az ind. feltevés miatt a maradék gráf kiszínezhető 5 színnel. Az xy összevont pont kap egy színt – amit meg is tartunk. (E pont fokszáma lehet nagyobb is az ábrán lévőnél, lényeg, hogy egy színe lesz!) x yz z y Visszavéve az x, és szétszedve az y-z csúcsokat, ezek kiszínezhetők max 3 színnel, hiszen x-nek összesen 5 szomszédja van, az y és z csúcsokon kívüli csúcsok 3 színt lefoglalnak, de y és z egyszínű (nem szomszédok), és még marad egy szín x-nek.

5 –szín tétel Biz. (2): Tekintsük a max ötödfokú csúcsot, P. Ezt elvéve a gráf az ind. feltevés szerint kiszínezhető 5 színnel. Visszavéve, ha a szomszédjai csak 4 színnel vannak kiszínezve, az ötödik szín elegendő.

5-szín tétel Ha a szomszédjai 5 színnel (piros: Pp, lila: Pl zöld: Pz, kék: Pk, sárga: Ps) vannak színezve, át kell színezni: - vizsgáljuk pl. a gráf piros-zöld színnel színezett csúcsai által meghatározott részgráfot. Ebben szerepelnek a P ötödfokú csúcs Pz és Pp szomszédjai is. Ha ezek két különböző összefüggő komponensben vannak, akkor pl. Pz zöld színe kicserélhető pirosra, ha a Pz-t tartalmazó részgráf színezésében megcseréljük a színeket. Ezzel P szomszédjai csak 4 színűek.

5-szín tétel Ha Pz és Pp egyazon összefüggő komponensben vannak, akkor nem cserélhető ki egyik színe sem a másikra. Azonban ez esetben van köztük alternáló Pp-z-p-z-p-Pz út, ami a pz-P-Pp úttal együtt KÖRT alkot. P minden szomszédja nem lehet e körön belül Válaszuk ki a azt a két csúcsot, melyek egyike a körön belül, másik a kívül van. E két szín által meghatározott részgráf nem lehet összefüggő, mert a p-z alternáló kört elvágná, ezért e két pont különböző komponensekben van: egyik színe kicserélhető a másikéra.

4 szín tétel Tétel: Ha G síkbarajzolható gráf, (G)4 APPEL és HAKEN, 1977