Remove ads
From Wikipedia, the free encyclopedia
A matematika, azon belül a gráfelmélet területén a gráfok színezése a gráfcímkézés speciális esete: bizonyos megszorítások mentén „színeket” (vagy számokat) rendelünk hozzá egy gráf valamilyen alkotóelemeihez. A leggyakoribb formájában a gráf csúcsaihoz történik a hozzárendelés, ez csúcsszínezés vagy egyszerűen színezés. Ha a gráf éleihez rendelünk színeket, az a gráf élszínezése, ha pedig a csúcsok és az élek is színezésre kerülnek, totális színezésről beszélhetünk. Síkbarajzolható gráf tartományszínezésénél pedig a lerajzolás tartományaihoz rendelünk színeket.
A gráfszínezéseknél jó színezésnek azt tekintjük, ha a szomszédos elemek (csúcsszínezésnél az egymással összekötött csúcsok, élszínezésnél az egy csúcsból kiinduló élek, tartományszínezésnél a közös határral rendelkező területek) különböző színűek. Színezés alatt külön jelző nélkül is általában jó színezés értendő.
A gráfok színezése területének kiindulópontjában a csúcsszínezés áll, és a többi színezési probléma is visszavezethető csúcsszínezésre: például egy gráf élszínezése megegyezik élgráfjának, totális színezése totális gráfjának, síkgráf tartományszínezése pedig duálisának csúcsszínezésével. Mégis, a nem-csúcsszínezési problémákat gyakran eredeti változatukban vizsgálják – ennek oka a perspektíva, egyes problémák, mint az élszínezés, egyszerűen jobban átláthatók, jobban kezelhetők eredeti formájukban.
A színek hozzárendelésének hagyománya a térképek országainak színezéséből ered, ahol a tartományokat szó szerint kiszínezték. Ezt általánosították a síkba ágyazott gráf tartományainak színezésére. A dualitás miatt ebből csúcsok színezése lett, amit aztán minden gráfra általánosítottak. A matematikai és számítógépes megvalósításokban jellemzően az első néhány pozitív vagy nemnegatív számot használják „színekként”. Bármilyen véges halmaz alkalmas lehet „színhalmaznak” – a színezési probléma természete csak a színek számosságán múlik, nem a minőségükön.
A gráfszínezés területén számos gyakorlati alkalmazással, még több elméleti kihívással lehet találkozni. A klasszikusnak mondható problémák mellett különböző korlátok állíthatók fel a szóba jövő gráfra, a szín hozzárendelésének módjára vagy a színre magára. Jelenleg is igen aktívan kutatott terület.
Az első gráfszínezési eredmények síkbarajzolható gráfokkal voltak kapcsolatosak, a legfontosabb feladat térképek színezése volt. Amíg Anglia megyéit próbálták meg színekkel ellátni, Francis Guthrie megfogalmazta a négyszín-sejtést, miszerint 4 szín elegendő a különböző tartományok megfestéséhez, ha szomszédos tartományok különböző színeket kapnak. Guthrie testvére továbbította ezt a kérdést a matematikatanára, Augustus De Morgan felé, aki szintén megosztotta a sejtést William Rowan Hamiltonnal. Arthur Cayley 1879-ben vetette fel a problémát a London Mathematical Society egy találkozóján. Még ebben az évben Alfred Kempe nyilvánosságra hozta bizonyítását, és egy évtizeden át helyesnek ítélték. Ennek köszönhetően elismerésben is részesült, a Royal Society tagjává választották, és később ő vált a London Mathematical Society elnökévé is.
1890-ben Heawood belátta, hogy Kempe bizonyítása hibás volt. Bár jó megoldást ő nem talált a problémára, az ötszín-tételt sikerült belátnia, vagyis bármilyen síktérkép kiszínezhető 5-nél nem több színnel. Ehhez Kempe ötleteit használta fel. A következő évszázadban rengeteg ötlet merült fel, hogy sikerüljön ezt a számot 4-re leszorítani, végül csak 1976-ban sikerül Kenneth Appelnek és Wolfgang Hakennek helyes bizonyítást adnia. Meglepetésre Heawoord és Kempe elgondolásait használták fel, számottevő kiterjesztés nélkül. A négyszín-tétel bizonyítása volt az első számítógépre alapozott bizonyítás.
1912-ben George David Birkhoff vezette be a kromatikus polinomot a színezési problémák megsegítésére, amit Tutte általánosított Tutte-polinom néven. Kempe már 1879-ben felhívta a figyelmet a nem síkbeli esetre, és a 20. század elején több eredmény is napvilágot látott magasabb dimenziójú felületek kiszínezésének terén.
1960-ban Claude Berge megfogalmazott egy másik gráfszínezéssel kapcsolatos sejtést, az erős perfekt gráf tételt, ami Shannon információ-elméleti munkásságából eredeztethető. A sejtés 40 évig megoldatlan maradt, 2002-ben sikerült a Chudnovsky, Robertson, Seymour, Thomas által alkotott csoportnak belátnia.
A gráfszínezést az 1970-es évek óta tanulmányozták algoritmuselméleti problémaként. A kromatikus szám problémája egyike Karp 21 NP-teljes problémájának 1972-ből, nagyjából ebben az időben jelent meg több exponenciális-idejű algoritmus is, mely a Zykov-kontrakción alapszik. Az egyik legjelentősebb alkalmazási terület, a fordítóprogramok regiszter-allokációja 1981-ben került bevezetésre.
Ha egyéb jelző nélkül egy gráf színezését említjük, csaknem mindig a gráf jó csúcsszínezése értendő alatta, tehát a gráf csúcsainak színekkel való olyan címkézése, melyben ugyanazon éllel érintkező két csúcs színe mindig különböző. Ha egy csúcsból hurokél indulna ki, a gráfnak nem létezhetne jó csúcsszínezése, ezért ebben a szakaszban csak hurokmentes gráfokat veszünk figyelembe.
A csúcsok címkézésénél a színek használata a térképek színezésére vezethető vissza. Ha csak 2-3 szín fordul elő, piros, kék stb. címkéket használnak, de általában úgy tekintik, hogy a címkék az {1, 2, 3, ...} egész számok közül kerülnek ki.
Az olyan színezést, ami legfeljebb k színt használ, (jó) k-színezésnek neveznek. Az a legkisebb k szám, amire a G gráfnak van jó k-színezése, a gráf kromatikus száma (színezési száma), amit általában χ(G)-vel jelölnek. Néha az γ(G) jelölést is használatos, mivel a χ(G) a gráf karakterisztikáját is jelöli. Az olyan gráf, amihez tartozik (jó) k-színezés, k-színezhető, továbbá k-kromatikus, amennyiben kromatikus száma pontosan k.
A színezésnél azonos színt kapott csúcsok halmazát színosztálynak neveznek. Minden színosztály független csúcshalmazt alkot, tehát egy gráf k-színezése ugyanazt jelenti, mint csúcsainak k független csúcshalmazba való osztása, ezért a k-színezhető és a k-részes gráf fogalmak ugyanazt jelentik.
Egy gráf kromatikus polinomja megszámolja a gráf adott számú színnel történő csúcsszínezéseinek lehetőségét. Például a jobb oldalon látható gráfot három színnel tizenkétféleképpen lehet kiszínezni, két színnel egyáltalán nem lehetséges a színezés, négy színnel pedig 24 + 4⋅12 = 72-féleképpen lehetséges a színezés: mind a négy színt felhasználva 4! = 24 érvényes színezés lehetséges (bármely 4 csúcsú gráfban egy mind a 4 színt felhasználó színezés jó színezés); a négy színből hármat választva pedig 12 érvényes 3 színezés található. Így tehát a példagráf lehetséges színezések számának táblázata így kezdődik:
Felhasználható színek száma | 1 | 2 | 3 | 4 | … |
Színezések száma | 0 | 0 | 12 | 72 | … |
A kromatikus polinom olyan P(G, t) függvény, ami G t-színezéseit számolja meg. Ahogy a neve is mutatja, adott G esetén a függvény valóban t polinomja. A példagráf esetén P(G, t) = t(t − 1)2(t − 2), és valóban, P(G, 4) = 72.
A kromatikus polinom minimálisan annyi információt hordoz G gráf színezhetőségéről, mint a kromatikus szám. Valójában χ az a legkisebb pozitív egész szám, ami nem gyöke a kromatikus polinomnak:
Az n csúcsú egyszerű gráf kromatikus polinomja n-edfokú, egész együtthatós, az együtthatók pedig váltakozó előjelűek (a 0 megengedett az együtthatók között), főegyütthatója 1, konstans tagja zérus.
háromszög | |
teljes gráf | |
n csúcsú fagráf | |
körgráf | |
Petersen-gráf |
Egy gráf élszínezése alatt éleinek jó színezése értendő, olyan színezés tehát, ahol egyetlen csúcs sem illeszkedik két azonos színű élre. A k színnel történő jó élszínezést k-élszínezésnek nevezik, és ekvivalens az élhalmaz k párosításra történő szétosztásával (particionálásával). Az a legkisebb k szám, amire a G gráfnak van jó k-élszínezése, a gráf élkromatikus száma vagy kromatikus indexe, amit χ′(G)-vel jelölnek. Tait-színezésnek a 3-reguláris gráfok 3-élszínezését nevezik. A négyszín-tétel azzal az állítással ekvivalens, miszerint minden síkbarajzolható 3-reguláris hídmentes gráfnak létezik Tait-színezése.
Az élkromatikus szám megegyezik a gráf élgráfjának kromatikus számával. Nyilvánvaló, hogy az élkromatikus szám nem lehet kisebb a maximális fokszámnál, hiszen az egy pontra illeszkedő éleket mind különböző színekre kell színezni. Viszont egyszerű gráfokra az élkromatikus szám ennél legfeljebb eggyel lehet nagyobb.
A totális színezés során a gráf csúcsaihoz és éleihez is színeket rendelnek. Ha külön nem jelölik, általában jó totális színezésről van szó, amikor a gráfnak sem érintkező élei, sem valamely élének végpontjai nem lehetnek azonos színűek. A χ″(G) totális kromatikus szám a G totális színezéséhez szükséges legkevesebb szín száma.
Ha minden csúcsot különbözőre színezünk, az mindig jó színezés, ezért:
Az 1-színezhető gráfok – – pontosan megegyeznek az élmentes gráfokkal, a 2-színezhetőek – – pedig az éllel rendelkező páros gráfokkal (köztük a fákkal, illetve erdőkkel). ha tartalmaz páratlan kört. Az n csúcsú teljes gráfok színezéséhez színre van szükség. Egy optimális színezésben a gráf m' éle közül legalább egy él húzódik minden színosztály-pár között, ezért:
Ha G tartalmaz k méretű klikket, annak színezéséhez legalább k színre van szükség – a kromatikus szám tehát legalább akkora, mint az klikkszám:
Ez az egyenlőtlenség perfekt gráfokra (így teljes gráfokra is) éles – ugyanis ha a gráf perfekt = minden feszített részgráfjára – néhány gráfra viszont nagyon rossz becslést ad.
A négyszín-tétel alapján minden síkbarajzolható gráf 4-színezhető – .
Mohó színezéssel megmutatható, hogy minden gráf kiszínezhető maximális fokszámánál legfeljebb 1-gyel több színnel:
Teljes gráfok esetében és , páratlan körökre pedig és , tehát ezekre a gráfokra a korlát a lehető legjobb. Más esetekben kissé javítható; a Brooks-tétel[1] szerint:
Az évek során a kromatikus szám több alsó korlátját felfedezték:
Hoffman-féle korlát: Legyen valós szimmetrikus mátrix, melyben akkor áll fenn, ha nem egy él -ben. Definiáljuk -t, ahol a legnagyobb, illetve legkisebb sajátértékei. Legyen továbbá , ahol az előbbi definíció szerinti. Ekkor:
Vektorkromatikus szám: Legyen pozitív szemidefinit mátrix, melyben , amennyiben egy él -ben. Legyen továbbá a legkisebb olyan k, melyre ez a mátrix létezik. Ekkor:
Lovász-szám: A komplementer gráf Lovász-száma a kromatikus szám alsó korlátja egyben:
Frakcionális kromatikus szám: a gráf frakcionális kromatikus száma a kromatikus szám alsó korlátja is:
Ezeket a korlátokat így lehet sorba rendezni:
A nagy klikkekkel rendelkező gráfok kromatikus száma mindig magas, de ennek a megfordítása nem általánosan igaz. A Grötzsch-gráf egy háromszöggel nem rendelkező 4-kromatikus gráf, és a példa a Mycielski-konstrukció segítségével általánosítható.
A Brooks-tétel alapján a magas kromatikus számú gráfoknak magas maximális fokszámmal kell rendelkezniük. További lokális tulajdonság, ami magas kromatikus számhoz vezet, a nagy klikkek jelenléte. A színezhetőség azonban nem teljes mértékben lokális jelenség: egy magas girthű gráf lokálisan úgy néz ki, mint egy fa, hiszen az összes kör hosszú, kromatikus száma azonban mégsem feltétlenül 2:
A G gráf élszínezése megegyezik élgráfjának csúcsszínezésével és viszont. Ezért:
Szoros összefüggés van az élszínezhetőség és a gráf maximális fokszáma között. Mivel az ugyanabból a csúcsból kiinduló összes élnek különböző színűnek kell lennie, ezért:
Továbbá,
Általában véve a kapcsolat még erősebb, mint ami a csúcsszínezésre vonatkozó Brooks-tételnél tapasztalható:
Egy gráfnak pontosan akkor van k-színezése, ha létezik olyan körmentes irányítása, melyben a leghosszabb út hossza legfeljebb k; ez a Gallai–Hasse–Roy–Vitaver-tétel (Nešetřil & Ossona de Mendez 2012).
Síkbarajzolható gráfok esetén a csúcsszínezések lényegében a sehol sem nulla folyamok duálisai.
Végtelen gráfokról jóval kevesebbet lehet elmondani – néhány eredmény a végtelen gráfok színezésével kapcsolatban:
A fentiek alapján Reed egy 1998-as sejtése szerint a kromatikus szám lényegében az alsó korláthoz esik közelebb:
A sík kromatikus száma, ahol két pont akkor van összekötve, ha éppen egység távolságra vannak, ismeretlen, mindenesetre a 4, 5, 6 és 7 számok valamelyike. További, kromatikus számmal kapcsolatos megoldatlan kérdések közé tartozik a Hadwiger-sejtés, ami szerint a k kromatikus számú gráfok mindig tartalmazzák a k csúcsú teljes gráfot gráfminorként, az Erdős–Faber–Lovász-sejtés ami a teljes gráfok páronként pontosan egy közös csúcsot tartalmazó uniójának kromatikus számára állít fel korlátot, valamint az Albertson-sejtés, ami szerint a k-kromatikus gráfok között a teljes gráfoknak a legalacsonyabb a metszési száma.
Amikor Birkhoff és Lewis a négyszínsejtés megoldásának céljából bevezették a kromatikus polinomot, azt a sejtést fogalmazták meg, hogy G síkbarajzolható gráfok polinomja nem tartalmaz zérushelyet a régióban. Bár azt már sikerült igazolni, hogy ezen kromatikus polinomoknak nincs zérushelye az régióban és hogy , a sejtés mégis bizonyítatlan. További nyitott kérdés az azonos kromatikus polinommal rendelkező gráfok karakterizációja, valamit annak meghatározása, hogy melyik polinomok lehetnek gráfok kromatikus polinomjai.
Annak meghatározása, hogy egy gráf két színnel színezhető-e, ekvivalens a gráf párosságának tesztelésével, így akár szélességi, akár mélységi kereséssel lineáris időben számítható. Általánosabban, a perfekt gráfok kromatikus száma és az ahhoz tartozó színezés szemidefinit programozással polinom időben meghatározható. A kromatikus polinom zárt alakban is előállítható sok gráftípus esetén, például erdőkre, merev körű gráfokra, körökre, kerékgráfokra és létragráfokra, ezeket így polinom időben ki lehet értékelni.
Ha a gráf síkba rajzolható, és alacsony a fafelbontásuk szélessége (vagy nem síkba rajzolható, de fafelbontásuk ismert), akkor dinamikus programozással szintén polinom időben színezhetők. Általánosan elmondható, hogy a szükséges idő a gráf méretének polinom, a fafelbontás szélességének viszont exponenciális függvénye.
Egy k-színezés brute-force keresése a k szín n csúcshoz való hozzárendelésének érvényességét vizsgálja. A kromatikus szám, illetve kromatikus polinom kiszámításánál ezt a módszert alkalmazzák minden értékre, ami csak a legkisebb bemeneti gráfoknál használható a gyakorlatban.
Dinamikus programozást használva, és a maximális független csúcshalmazok számának korlátját feltételezve a k-színezhetőség időben és térben eldönthető.[3] A tartalmazás és kizárás elvének, illetve Yates gyors zéta-transzformációs algoritmusának felhasználásával a k-színezhetőség [4] időben eldönthető tetszőleges k-ra. Ennél gyorsabb algoritmusok ismertek a 3- és 4-színezhetőségre, melyek ,[5] illetve [6] időben eldönthetők.
Egy G gráf élösszehúzása vagy kontrakciója a G-hez egy olyan gráfot rendel, melyben az és közötti éleket elhagyjuk és a két csúcsot egy darab csúcsban egyesítjük, ami az összes, korábban -ban vagy -ben végződő él végpontja lesz. Ez a művelet fontos szerepet játszik a gráfok színezésének vizsgálatában.
A kromatikus szám (Zykov 1949) alapján kielégíti az alábbi rekurrencia-relációt:
ahol u és v nem szomszédos csúcsok, pedig az a gráf, ahol és közé egy él be van húzva. Több algoritmus is ennek a rekurziónak a kiszámításán alapszik. A számítás eredményével kapott számítási fát néha Zykov-fának nevezik. A futási idő és megválasztásától függ.
A kromatikus polinom az alábbi rekurzív formulát elégíti ki:
ahol és szomszédos csúcsok az a gráf, amit az él elhagyásával kapunk. az összes lehetséges színezését adja a gráfnak, ahol egy színt használhatunk többször is. A jó színezések száma ezen a módon két gráf színezésének összegeként áll elő: ha és különböző színűek, akkor nyugodtan vizsgálhatjuk azt a gráfot, ahol és szomszédosak, ha pedig és azonos színűek, akkor azt a gráfot vizsgáljuk, ahol az és csúcsokat egyesítettük.
Tuttét az iránti érdeklődése, hogy milyen egyéb gráftulajdonságok elégítenek ki hasonló rekurrenciákat, vezette el a kromatikus polinom kétváltozós általánosításának, a Tutte-polinomnak a felfedezéséhez.
Ezek a kifejezések adtak teret a deletion–contraction, avagy törlés-összevonás algoritmusnak, ami számos gráfszínezési algoritmus alapját képezi. A futásidő megegyezik a Fibonacci-számok rekurziójának felel meg, így a legrosszabb futási idő esetén az algoritmus polinom faktorában fut, ahol n a csúcsok, m az élek száma.[7] Az analízis javítható a bemeneti gráf feszítőfáinak számának polinom faktoráig.<[8] A gyakorlatban branch and bound („korlátozás és elágazás”) heurisztikák és az izomorfizmusok kiküszöbölése segítségével néhány rekurzív hívás kiküszöbölhető. A futásidő a csúcspár kiválasztásának stratégiáján múlik.
A színezés mohó algoritmusa a csúcsokat specifikus, ,…, sorrendben veszi figyelembe, és -hez azt a legkisebb elérhető színt rendeli hozzá, amit szomszédai ,…, között még nem használtak el. Ha nincs ilyen szín, akkor egy új színt rendel hozzá. A kapott színezés minősége a választott sorrendtől függ. Mindig létezik olyan sorrend, ami az optimális, azaz színt használó mohó színezéshez vezet. Másrészt a mohó színezéssel nagyon rossz eredmények is kijöhetnek. Például a két színnel színezhető, n csúcsú koronagráfok esetében a mohó színezés akár színt is felhasználhat.
Merev körű gráfok, és annak speciális esetei, az intervallumgráfok és egység-intervallumgráfok esetében a mohó algoritmussal polinom időben megtalálható az optimális színezés, a csúcsok sorrendjét a gráf perfekt eliminációs rendezésének fordítottjának választva. A perfekt rendezhető gráfok általánosítják ezt a tulajdonságot, de NP-nehéz ezen gráfok perfekt eliminációs rendezését megtalálni.
Ha a csúcsok fokszám szerint csökkenő sorrendben szerepelnek, a mohó színezés legfeljebb a gráf maximális fokszámánál 1-gyel több színt használ. Ezt a heurisztikát szokták Welsh–Powell-algoritmusnak nevezni.[9] A Brélaz által alkalmazott heurisztika a sorrendet dinamikusan választja meg, az algoritmus futása közben. Ebben a soron következő lépésnek mindig azt a csúcsot választja, aminek a szomszédai közt a legtöbb fajta szín szerepel.[10] Ezeket az algoritmusokat gyűjtőnevükön szekvenciális színező algoritmusoknak nevezik.
Adott gráf mohó színezése során (a csúcsok sorrendjének legrosszabb megválasztásával) elérhető maximális számú színt a gráf Grundy-szám-nak nevezik.
Az elosztott algoritmusok területén a gráfszínezés szorosan kapcsolódik a szimmetriasértés problémájához. Elegendően nagy Δ maximális fokszámú gráfokon a legkorszerűbb véletlen algoritmusok gyorsabban végeznek a determinisztikus algoritmusoknál. A leggyorsabb véletlen algoritmusok a Schneider et al. által kifejlesztett multi-trials technikát („többszörös próba”) használják.[11]
Szimmetrikus gráfban determinisztikus algoritmus nem képes a jó csúcsszínezést megtalálni. Szükség van valamilyen segédinformációra a szimmetria elrontásához. Egy általános megoldás szerint minden csúcs eredetileg rendelkezik egyedi azonosítóval, például az {1, 2, ..., n} halmazból. Más megközelítésben, feltehetjük, hogy egy n-színezésből indulunk ki. A feladat a szükséges színek számának csökkentése n-ről például Δ + 1-re. Minél több felhasználható szín van, például használható fel, például Δ + 1 helyett O(Δ), annál kevesebb kommunikációs körre van szükség.[11]
A (Δ + 1)-színezés mohó algoritmusának kézenfekvő elosztott változata legrosszabb esetben Θ(n) kommunikációs kört igényel − az információnak el kell jutnia a hálózat egyik oldaláról a másikig.
A legegyszerűbb érdekes eset az n-kör. Richard Cole és Uzi Vishkin[12] megmutatja, hogy létezik olyan elosztott algoritmus, ami a felhasznált színek számát n-ről O(log n)-re csökkenti egyetlen szinkron kommunikációs lépésben. Ugyanezt a műveletet ismételgetve az n-kör 3-színezését O(log* n) kommunikációs lépésben el lehet végezni (feltéve, hogy egyedi csomóponti azonosítók vannak).
A log* művelet, avagy az iterált logaritmus (a tetráció inverz művelete) egy rendkívül lassan növekvő függvény, „szinte konstans”. Ezért Cole és Vishkin eredménye kapcsán felmerült a kérdés, hogy létezik-e konstans idejű elosztott algoritmus egy n-kör 3-színezésére. (Linial 1992) megmutatta, hogy ez nem lehetséges: bármely determinisztikus elosztott algoritmusnak Ω(log* n) kommunikációs lépésre van szüksége az n-kör n-színezésének 3-színezésre való redukálásához.
Cole és Vishkin technikáját tetszőleges, korlátos fokszámú gráfokra is alkalmazni lehet; a futási idő poly(Δ) + O(log* n).[13] A technikát Schneider et al. terjesztette ki egységkörgráfokra[14] A leggyorsabb, kis Δ értékre (Δ + 1)-színezést végző determinisztikus algoritmust Leonid Barenboim, Michael Elkin és Fabian Kuhn jegyzi.[15] Barenboim et al. algoritmusa O(Δ) + log*(n)/2 időben fut, ami n tekintetében optimális, mivel az ½ konstans faktor nem javítható Linial alsó korlátja miatt. (Panconesi & Srinivasan 1996) hálózati dekompozíciók segítségével talál Δ+1-színezést időben.
Az élszínezés elosztott modellű problémáját szintén megvizsgálták. (Panconesi & Rizzi 2001) (2Δ − 1)-színezést végzett O(Δ + log* n) időben ezzel a modellel. Az elosztott csúcsszínezés (Linial 1992)-féle alsó korlátja az elosztott élszínezési problémára is érvényes.
A decentralizált algoritmusokban az üzenetküldés sem megengedett (ellentétben az elosztott algoritmusokkal, ahol a helyi üzenetküldés fontos szerepet kap). Léteznek hatékony decentralizált algoritmusok, melyek képesek egy gráf jó színezését megtalálni, ha az létezik. Ezek felteszik, hogy egy csúcs képes annak érzékelésére, ha bármelyik szomszédja vele megegyező színt használna, azaz ha egy helyi konfliktus történik. Ez egy több alkalmazásnál előforduló enyhe feltételezés, például a vezeték nélküli hálózatok kiosztásánál általában észszerű feltételezni, hogy egy bázisállomás észreveszi, hogy egy vele interferáló adó ugyanazt a csatornát használja (pl. a SINR, azaz „jel-zaj+interferencia viszony” mérésével). Ez az érzékelési képesség már elegendő ahhoz, hogy a tanuló gépeken alapuló algoritmusok 1 valószínűséggel rátaláljanak egy jó gráfszínezésre.[16]
A gráfszínezés egy bonyolult számítási művelet. NP-teljes nehézségű annak eldöntése, hogy adott gráfnak adott k értékre létezik-e jó k-csúcsszínezése, kivéve a k ∈ {0,1,2} eseteket. NP-nehéz feladat a gráf kromatikus számának kiszámítása.[17] A 3-színezési probléma NP-teljes még 4-reguláris síkbarajzolható gráfok esetében is.[18] Mindazonáltal a k > 3 értékekre a síkbarajzolható gráfoknak mindig létezik k-színezése, a négyszín-tétel értelmében, ami polinom időben meg is található.
A legjobb ismert approximációs algoritmus a kromatikus szám O(n(log log n)2(log n)−3) faktorában számol színezést.[19] Tetszőleges ε > 0-ra a kromatikus szám n1−ε-n belüli approximációja NP-nehéz.[20]
Szintén NP-nehéz egy 3-színezhető gráf 4-színezését megtalálni,[21] vagy egy k-színezhető gráfot k(log k ) / 25 színnel kiszínezni elegendően nagy k konstansra.[22]
A kromatikus polinom együtthatóinak kiszámítása #P-nehéz. Valójában még a értékének kiszámítása bármely k racionális ponton is #P-nehéz, kivéve a k = 1 és k = 2 esetet.[23] Nem létezik FPRAS (teljesen polinom idejű randomizált approximációs séma) a kromatikus polinom kiszámítására bármely k ≥ 1,5 racionális ponton, a k = 2 esetet kivéve – hacsak nem igaz az, hogy NP = RP.[24]
Élszínezés Vizing eredményének bizonyítása meg is ad egy legfeljebb Δ+1 színt használó algoritmust. Annak eldöntése azonban, hogy az élkromatikus szám a két szóba jövő érték közül melyik, NP-teljes.[25] Approximációs algoritmusok tekintetében a Vizing-féle algoritmusból látható, hogy az élkromatikus szám 4/3-ra közelíthető, és a bonyolultsági eredmények azt mutatják, hogy semmilyen ε > 0 értékre nem létezik (4/3 − ε )-algoritmus, kivéve, ha P = NP. Ezek az approximációs algoritmusok között a legrégebbi eredmények közé tartoznak, bár egyik cikkben sem jelennek meg explicit módon.[26]
A csúcsszínezés több ütemezési probléma modelljének tekinthető.[27] Legtisztább formájában feladatok adott halmazához időréseket kell rendelni, minden feladat egy időrést foglal el. A feladatok tetszőleges sorrendben végrehajthatók, de egyes feladatpárok konfliktusban lehetnek egymással, például mert ugyanazt a közös erőforrást (munkaerőt, helyiséget stb.) használják. Az ennek megfelelő gráf minden csúcsa egy-egy feladatnak felel meg, a konfliktusban lévő feladatok között húzódik él. A gráf kromatikus száma megegyezik a minimális teljes átfutási idővel, a feladatok konfliktusmentes végrehajtásának optimális idejével.
Az ütemezési probléma részletei határozzák meg a gráf szerkezetét. Ha például az egyes járatokhoz kell hozzárendelni repülőgépeket, a kapott konfliktusgráf egy intervallumgráf, aminek a színezése hatékonyan megoldható. Ha rádióállomások sávszélesség-kiosztását tekintjük, a kapott konfliktusgráf egységkörgráf, melynek színezése 3-approximálható.
A fordítóprogramok olyan számítógépes programok, melyek az egyik számítógépes nyelvről a másikra fordítanak. Az eredményül kapott kód futási idejének javítására szolgáló optimalizálási technikák egyike a regiszterallokáció, ahol a lefordított program leggyakrabban használt értékeit a processzor által gyorsan elérhető regiszterekben tárolják. Ideális esetben az értékadások és az értékekkel való műveletek is a (korlátozott számú) regiszterek valamelyikében történnek.
A tankönyvi megoldás a probléma gráfszínezésként történő modellezése.[28] A fordító ún. interferenciagráfot (interference graph) konstruál, melynek csúcsai a változók, és két csúcsot akkor köt össze él, ha a hozzájuk tartozó változókra azonos időben van szükség. Ha a gráf k színnel színezhető, akkor azokat a változókat, amikre a programnak azonos időben van szüksége, k regiszterben el lehet tárolni.
A gráfszínezés problémája számos gyakorlati területen felmerül, ilyenek például a mintaillesztés, sportesemények lebonyolítási rendjének meghatározása, ülésrendek, vizsgák időbeosztásának, taxik menetrendjének összeállítása, szúdoku rejtvények megoldása.[29]
A „nem megfelelő színezések” egy fontos területét a Ramsey-elmélet tanulmányozza. A Ramsey-elmélet Frank Plumpton Ramsey matematikus–közgazdász harmincas években publikált eredménye által elindított igen fontos ága a kombinatorikának és a gráfelméletnek. Az elméletet összefűző filozófiát nagyon egyszerűen meg lehet fogalmazni: Ha egy struktúra hatalmas, akkor az nem kerülheti el az igen szabályos nagy részstruktúrákat.
Ennek egyik része, hogy a gráf éleihez rendelünk színeket és nincs megkötés a közös csúcsban találkozó élek színére. A Ramsey-tétel legegyszerűbb esete: a éleit tetszőlegesen megszínezve két színnel biztosan keletkezik benne egyszínű háromszög.
|
|
A színezési probléma előjeles gráfokra is értelmezhető.
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.