Graafin 3-värittyvyyden tutkinta T-79.165 Graafiteoria, projektityö (eksakti algoritmi), kevät 2005 Mikko Malinen, 36474R 29. maaliskuuta, 2005 Tiivistelmä Artikkelissa käydään läpi teoriaa, jonka avulla graafin 3-värittyvyyttä voidaan tutkia sekä esitetään algoritmi, jonka avulla voidaan löytää graafin 3-väritys tai todeta, että graafi ei ole 3-värittyvä. Teoreettisella tarkastelulla ja algoritmilla saadaan 3-väritys ratkaistua vain osasta graafeista. 1 Johdanto Graafin G = (V, E) solmuväritys on kuvaus c : V S niin että c(v) c(w) kun v ja w ovat vierekkäiset. Joukon S alkioita sanotaan käytettävissä oleviksi väreiksi. Meitä kiinnostaa S:n koko: tyypillisesti kysytään mikä on pienin kokonaisluku k niin että G:llä on k-väritys, solmuväritys C : V {1,..., k}. Tämä k on G:n kromaattinen luku; sitä merkitään χ(g):llä. Jos χ(g) k, sanotaan graafia G k-värittyväksi [Diestel]. 2 Kirjallisuuskatsaus 2.1 Graafin kaksijakoisuus 2-värittyvyys on sama asia kuin kaksijakoisuus [West]. Lause 2.1.1 Graafi G on kaksijakoinen jos ja vain jos G ei sisällä yhtään parittoman pituista sykliä [Jungnickel]. Modifioitua leveyshaku (Breadth-first search) -algoritmia voidaan käyttää graafin kaksijakoisuuden tutkintaan. Tällainen algoritmi tarkistaa onko annettu yhtenäinen graafi kaksijakoinen vai ei, ja jos se on, löytää sen solmujoukon kaksijaon [Jungnickel]. 1
2.2 Graafin kriittisyys Jos χ(h) < χ(g) = k kaikille aidoille G:n aligraafeille H, niin G on k-kriittinen [West]. Graafi G on 4-kriittinen, jos se on 4-värittyvä ja poistamalla mikä tahansa sen kaarista tai solmuista saadaan 3-värittyvä graafi [Pyatkin]. Parittomat syklit ovat 3-kriittisiä graafeja [West]. 2.3 Ahne väritys Ahne väritys suhteessa V (G):n solmujen järjestykseen v 1,..., v n saadaan värittämallä solmut järjestyksessä v 1,..., v n antamalla v i :lle pienin väri-indeksi jota ei ole vielä käytetty sen pienempi-indeksoiduissa naapureissa [West]. Lause 2.3.1 χ(g) (G) + 1 [West]. (G)+1 on huonoin yläraja mitä ahne väritys voi tuottaa. Valitsemalla solmujen järjestys huolellisesti saadaan parannuksia [West]. Propositio 2.3.1 Jos graafilla G on astejärjestys d 1... d n, niin χ(g) 1+max i min {d i, i 1} [West]. χ(g) = 1 + (G) täydellisillä graafeilla sekä parittomilla sykleillä [West]. Lause 2.3.2 Jos G on yhtenäinen graafi, joka ei ole täydellinen graafi tai pariton sykli, niin χ(g) (G) [West]. 2.4 Muuta teoriaa Lause 2.4.1 Jokainen tasograafi, jossa ei ole kolmiota on 3-värittyvä. [Diestel] Seuraavassa lauseita, joiden avulla voidaan havaita, ettei annettu graafi ole 3- värittyvä: Lause 2.4.2 Graafi, jossa on silmukka, ei ole 3-värittyvä. Todistus. Tulos on ilmeinen. Lause 2.4.3 Graafi, jonka aligraafina on K 4 tai suurempi klikki, ei ole 3-värittyvä. Todistus. Vastaoletus: K 4 on 3-värittyvä. K 4 :ssä solmun naapureista vähintään kahdella täytyy olla sama väri, koska käytettäviä värejä on vain kolme kappaletta. Näiden kahden solmun välillä on kuitenkin kaari, joten tästä seuraa ristiriita. Suurempien klikkien kuin K 4 aligraafina on K 4, joten ne eivät ole 3-värittyviä. Maksimiklikin löytämistä graafista käsitellään artikkelissa [Babel]. 2
3 Laskennallisesta vaativuudesta Hyvää karakterisointia 4-kriittisille graafeille tai testiä 3-värittyvyydelle ei tunneta. Hyvä karakterisointi tarkoittaa karakterisointia ehdolla, joka voidaan tarkastaa polynomisessa ajassa. [West]. P-ongelmia NP-täydellisiä ongelmia 2-VÄRITTYVYYS k-värittyvyys (k 3) TASOMAISUUS Taulukko 1. Eräiden ongelmien vaativuusluokkia [West]. 4 Algoritmi Tehtävänä oli kehittää algoritmi, joka etsii graafille 3-väritystä ja pysähtyy kun 3-väritys on löytynyt tai kun on selvää ettei graafi ole 3-värittyvä. Kehitetty algoritmi käy läpi kaikki värivaihtoehdot ja tutkii onko graafi 3- värittyvä. Alussa kaikille solmuille annetaan väri 0: solmujen värejä voidaan kuvata tällöin 3-järjestelmän luvulla 0...000. Jos graafi ei ole värittyvä näillä väreillä, kasvatetaan lukua yhdellä. Luku on nyt 0...001. Seuraavaksi tutkitaan väritystä luvuilla 0...002 ja 0...010 jne. kunnes väritys löytyy tai kaikki värivaihtoehdot on käyty läpi. Eri värivaihtoehtoja on 3 n(g) kappaletta. Ensimmäisen solmun väri voidaan kuitenkin kiinnittää 0:ksi ilman että menetetään 3-värityksen löytymismahdollisuuksia. Eri värivaihtoehtoja on siten 3 n(g) 1 = 1 3 3n(G) kappaletta. Tutkittavassa matriisissa on alkioita n(g) n(g) kappaletta. Algoritmin suorituskykyä tutkittiin eri astetta olevilla graafeilla, joiden viimeisessä solmussa on silmukka ja joissa ei ole muita kaaria. Näin algoritmi huomaa mahdollisimman myöhäisessä vaiheessa, että graafi ei ole 3-värittyvä (tutkiminen etenee naapuruusmatriisin vasemmasta yläkulmasta alkaen rivi riviltä vasemmalta oikealle). 3
18 solmun kokoisen tutkittavan graafin naapuruusmatriisi on G = 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 Tarvittava (lähes pahimman tapauksen) laskenta-aika näkyy kuvasta 1 (Prosessori Intel Celeron 2.4 GHz). Kuva 1. Lähes pahimman tapauksen laskenta-ajat eri kokoisille tutkittaville graafeille. 4
Kuvasta nähdään, että algoritmi soveltuu käytännössä vain graafeille, joiden solmumäärä on alle 20. 5 Yhteenveto Projektityöohjeen mukaan algoritmia pitäisi testata graafeilla, jotka löytyvät Pyatkinin artikkelista [Pyatkin]. Näistä toinen, asteeltaan pienempi, on 157- solmuinen eräs ns. circulant. Sitä merkitään merkinnällä G = (157; 8, 14). Todetaan tässä, että graafi G on 6-säännöllinen 4-kriittinen graafi. Graafi on asteeltaan aivan liian suuri tutkittavaksi tässä artikkelissa esitetyllä algoritmilla. Samoin tässä artikkelissa esitetyn teorian perusteella ei voida löytää G:n 4-kriittisyyttä eli mm. sitä, että kun siitä poistetaan mikä tahansa kaari, niin syntynyt graafi on 3-värittyvä. Kuvassa 2 kuvataan niiden graafien joukot, joiden 3-väritys voidaan tutkia tässä artikkelissa esitellyllä algoritmilla tai toisaalta tässä artikkelissa esitellyllä teorialla. Nämä joukot menevät osittain päällekkäin. Kuvasta nähdään, että on joukko graafeja, joiden 3-värittyvyyttä ei voida tutkia kummallakaan tavalla. Tähän joukkoon kuuluu myös graafi G. Ei 3 värittyvät 3 värittyvät A B C D algoritmilla lauseilla algoritmilla lauseilla G = (157;8,14) Kuva 2. A,C : Graafit, joiden 3-väritys voidaan käytännössä tutkia tässä artikkelissa esitellyllä algoritmilla. B,D : Graafit, joiden 3-väritys voidaan tutkia tässä artikkelissa esitellyllä teorialla. 5
6 Viitteet [Babel] Luitpold Babel, Finding Maximum Cliques in Arbitrary and in Special Graphs, Computing,46:321-341,1991 [Diestel] R.Diestel, Graph Theory, 2nd ed., Springer, New York NY, 2000 [Jungnickel] Dieter Jungnickel, Graphs, Networks and Algorithms, Springer- Verlag, 2002 [Pyatkin] A.V. Pyatkin, 6-regular 4-critical Graph, J Graph Theory 41: 286-291, 2002 [West] Douglas B. West, Introduction to graph theory, Second Edition, Prentice- Hall, 2001 6