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

Gráf csúcsainak színezése

Hasonló előadás


Az előadások a következő témára: "Gráf csúcsainak színezése"— Előadás másolata:

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

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

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

4 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?

5 Térképek színezése

6 Térképek színezése

7 Térképek színezése

8 Térképek színezése

9 Térképek színezése

10 Térképek színezése

11 Térképek színezése

12 Térképek színezése

13 Térképek színezése

14 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 órás futási idővel (1976), 2000 esetet vizsgáltak meg szisztematikusan, ami ellenpélda lehetett volna Újabb biz.: (?) (The Four Color Theorem)

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

16 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:

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

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

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

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

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

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

23 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).

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

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

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

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

28 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: , , , , , , , , , Assume that in all other pairs there are students.

29 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

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

31 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

32 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

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

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

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

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

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

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

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

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

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

42 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

43 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

74 Alkalmazások: DNA www.cs.unc.edu/~isenburg/slides/cpmcddp.ppt

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

76 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!

77 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

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

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

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

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

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

83

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


Letölteni ppt "Gráf csúcsainak színezése"

Hasonló előadás


Google Hirdetések