Värityskaaviot

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 26. kesäkuuta 2019 tarkistetusta versiosta . tarkastukset vaativat 15 muokkausta .

Graafin väritys on graafiteoreettinen rakenne  , graafimerkinnän erikoistapaus. Väritettäessä kaavioelementeille annetaan tunnisteita tietyin rajoituksin; näitä etikettejä kutsutaan perinteisesti "väreiksi". Yksinkertaisimmassa tapauksessa sellaista tapaa värjätä graafin kärkipisteitä , joissa mitkä tahansa kaksi vierekkäistä kärkeä vastaavat eri värejä, kutsutaan vertex coloringiksi . Samoin reunan väritys määrittää värin jokaiselle reunalle siten, että kahdella vierekkäisellä reunalla on eri värit [1] . Lopuksi tasograafin alueiden väritys määrittää värin jokaiselle alueelle, jotta kahdella alueella, joilla on yhteinen reuna, ei voi olla samaa väriä.

Vertex-värjäys  on graafin värjäyksen pääongelma, kaikki muut tämän alueen ongelmat voidaan pelkistää siihen. Esimerkiksi graafin reunojen väritys on sen viivagraafin kärkien väritys ja tasograafin alueiden väritys sen kaksoisgraafin kärkien väritystä [1] . Muut graafin väritysongelmat kuitenkin usein asetetaan ja ratkaistaan ​​alkuperäisessä asetuksessa. Syynä tähän on osittain se, että se antaa paremman käsityksen siitä, mitä tapahtuu ja on paljastavampi, ja osittain siksi, että jotkut ongelmat on helpompi ratkaista tällä tavalla (esim. reunavärjäys).

Graafisten värjäystä voidaan käyttää monilla käytännön aloilla, ei vain teoreettisissa ongelmissa. Klassisten tehtävien lisäksi erilaisia ​​rajoituksia voidaan asettaa myös kuvaajalle, värien määrittelytavalle tai itse väreille. Tätä menetelmää käytetään esimerkiksi suositussa Sudoku -pulmapelissä . Tällä alueella on edelleen aktiivista tutkimusta.

Historia

Ensimmäiset tulokset saatiin karttaväritystehtävän tasokaavioista . Yrittäessään värittää Englannin kreivikuntien karttaa Francis Guthrie muotoili neliväriongelman huomauttaen, että neljä väriä riittää värittämään kartan niin, että kahdella vierekkäisellä alueella on eri värit. Hänen veljensä välitti kysymyksen matematiikan opettajalleen Augustus de Morganille , joka mainitsi sen kirjeessään William Hamiltonille vuonna 1852. Arthur Cayley otti tämän ongelman esiin Lontoon matemaattisen seuran kokouksessa vuonna 1878. Samana vuonna Tate ehdotti ensimmäistä ratkaisua tähän ongelmaan. Hän pelkisti alkuperäisen graafin kärkien värityksen kaksoisgraafin reunojen värjäykseen ja ehdotti, että tähän ongelmaan on aina ratkaisu [2] . Vuonna 1880 Alfred Kempe julkaisi artikkelin, jossa hän väitti onnistuneensa saamaan tuloksen, ja vuosikymmenen ajan neljän värin ongelmaa pidettiin ratkaistuna. Tästä saavutuksesta Kempe valittiin Lontoon kuninkaallisen seuran jäseneksi ja myöhemmin London Mathematical Societyn presidentiksi [3] .

Vuonna 1890 Heawood löysi virheen Kempen todistuksesta. Samassa artikkelissa hän todisti viiden värin lauseen osoittaen, että mikä tahansa tasainen kartta voidaan värittää enintään viidellä värillä. Näin tehdessään hän nojautui Kempen ideoihin. Seuraavalla vuosisadalla kehitettiin suuri määrä teorioita, joilla yritettiin vähentää värien vähimmäismäärää. Tiedemiehet Kenneth Appel Wolfgang Haken vahvistivat värin lauseen lopulta vuonna 1977 tietokoneella laskemalla. Ajatus todisteesta nojautui vahvasti Heawoodin ja Kempen ajatuksiin ja jätti huomiotta suurimman osan välitutkimuksista [4] . Neljän värin lauseen todistus on yksi ensimmäisistä todisteista, joissa käytettiin tietokonetta.

Vuonna 1912 George David Birkhoff ehdotti kromaattisen polynomin käyttöä , joka on tärkeä osa algebrallista graafiteoriaa, väritysongelmien tutkimiseen . Tämän jälkeen William Tutt ( Tuttin polynomi ) yleisti kromaattisen polynomin . Kempe jo vuonna 1879 kiinnitti huomion yleiseen tapaukseen, jolloin kuvaaja ei ollut tasomainen [5] . 1900-luvun alussa ilmestyi monia tuloksia korkeampien pintojen väritystasokaavioiden yleistyksistä.

Vuonna 1960 Claude Burge muotoili täydellisen graafisen olettamuksen informaatioteorian käsitteestä , nimittäin Shannonin esittämästä graafikapasiteetin nollavirheestä [6] . Väite pysyi vahvistamattomana 40 vuotta, kunnes matemaatikot Chudnovskaya , Robertson , Seymour ja Thomas osoittivat sen kuuluisaksi tiukan täydellisen graafin lauseeksi vuonna 2002.

Graafisten värjäystä algoritmisena ongelmana on tutkittu 1970-luvulta lähtien: kromaattisen luvun määrittäminen  on yksi Karpin 21 NP-täydestä tehtävästä (1972). Ja suunnilleen samaan aikaan kehitettiin erilaisia ​​algoritmeja, jotka perustuivat taaksepäin ja Zykovin rekursiiviseen poistoon ja supistukseen [7] . Vuodesta 1981 lähtien graafien väritystä on käytetty kääntäjien rekisterien allokoinnissa [8] .

Määritelmä ja terminologia

Vertex väritys

Kun ihmiset puhuvat graafien värittämisestä, he tarkoittavat melkein aina niiden kärkien värittämistä, toisin sanoen värimerkintöjen osoittamista graafin kärkipisteille siten, että kahdella pisteellä, joilla on yhteinen reuna, on eri värit. Koska silmukkakaavioita ei voi värjätä tällä tavalla, ne eivät tule kysymykseen.

Terminologia, jossa tarroja kutsutaan väreiksi, tulee poliittisten karttojen värityksestä. Tarroja, kuten punaista tai sinistä , käytetään vain, kun värejä on vähän, mutta tarrojen oletetaan yleensä olevan kokonaislukuja .

Värjäämistä väreillä kutsutaan -värjäytykseksi . Pienin määrä värejä, jotka tarvitaan graafin värittämiseen, kutsutaan sen kromaattiseksi numeroksi ja se kirjoitetaan usein nimellä . Joskus käytetään , koska se tarkoittaa Eulerin ominaisuutta . Yhdellä värillä korostettua kärkien osajoukkoa kutsutaan väriluokiksi , jokainen tällainen luokka muodostaa itsenäisen joukon . Siten -värjäys on sama kuin kärkien jakaminen itsenäisiksi joukoiksi [1] .

Kromaattinen luku Gromov-Hausdorffin etäisyydellä

Antaa olla mielivaltainen graafi, jonka kärkipiste on asetettu . Kiinnitämme kaksi positiivista reaalilukua , ja pidämme sitä metrianavaruutena, jossa vierekkäisten kärkien väliset etäisyydet ovat yhtä suuria kuin , ja kaikki muut nollasta poikkeavat etäisyydet ovat yhtä suuria kuin . Merkitään metriavaruudella, joka koostuu pisteistä, jotka on erotettu toisistaan ​​etäisyyden päässä . Lopuksi kahdelle metriselle välilyönnille ja merkitse Gromov -Hausdorffin välinen etäisyys ja . Sitten seuraava tulos pätee.

Lause (A.O. Ivanov, A.A. Tuzhilin) ​​[9] : Olkoon suurin luonnollinen luku, jolle (jos tällaisia ​​luonnollisia lukuja ei ole, asetamme ). Sitten .

Kommentti.

Kromaattinen polynomi

Kromaattinen polynomi  on funktio , joka laskee graafin t -väritysten määrän . Nimestä seuraa, että annetulle tämä funktio on polynomi , joka riippuu t :stä .

Tämän tosiasian löysivät Birkhoff ja Lewis yrittäessään todistaa neljän värin olettamusta [10] .

Esimerkiksi oikeanpuoleisen kuvan kaavio voidaan värittää 12 eri tavalla käyttämällä kolmea väriä. Periaatteessa sitä ei voi maalata kahdella värillä. 4 väriä käytettäessä saamme 24+4*12 = 72 väritysvaihtoehtoa: kun käytät kaikkia 4 väriä, niitä on 4! = 24 oikeaa tapaa ( jokainen 4 värin määritys mille tahansa 4 kärjen graafille on oikea); ja jokaista kolmea väriä kohden näistä neljästä on 12 erilaista väriä. Sitten esimerkin kaaviossa oikeiden värien lukumäärätaulukko alkaa seuraavasti:

Saatavilla useita värejä yksi 2 3 neljä
Väritapojen lukumäärä 0 0 12 72

Esimerkin kaaviolle ja tietysti .

Kromaattinen polynomi sisältää vähintään yhtä paljon väritystietoa kuin kromaattinen luku. Todellakin,  on pienin positiivinen kokonaisluku, joka ei ole kromaattisen polynomin juuri.

Joidenkin graafien kromaattiset polynomit
Kolmion muotoinen
Täydellinen kaavio
puu kylkiluilla _
Kierrä
Petersenin kreivi

Reunojen väritys

Graafin reunaväritys tarkoittaa värien osoittamista reunoihin siten, että kaksi samanväristä reunaa ei kuulu samaan kärkeen. Tämä ongelma vastaa kasvojen joukon jakamista itsenäisten kasvojen joukoiksi . Pienin graafin reunavärjäykseen tarvittava määrä värejä  on sen kromaattinen indeksi eli reunan kromaattinen luku .

Väritys yhteensä

Kokonaisvärjäys  on eräänlainen graafin kärkien ja reunojen värjäys. Sillä tarkoitetaan sellaista värien määritystä, että vierekkäisillä pisteillä, vierekkäisillä reunoilla tai niitä yhdistävillä pisteillä ja reunoilla ei ole samaa väriä. Kuvaajan kromaattinen kokonaislukumäärä  on pienin värien määrä, joka tarvitaan täydelliseen värjäämiseen.

Ominaisuudet

Kromaattisen polynomin ominaisuudet

Kromaattisten lukujen rajoitukset

Intervallikaavioille tämä rajoitus on tarkka. Graafi on kaksiosainen silloin ja vain, jos se ei sisällä parittoman pituisia syklejä [11] . yhdistetylle, yksinkertaiselle graafille if ei ole täydellinen kaavio eikä syklikaavio.

Kuvaajat, joissa on suuri kromaattinen luku

Mychelskin lause (Alexander Zykov 1949, Jan Mychelski 1955): On olemassa graafisia kolmioita , joissa on mielivaltaisen suuria kromaattisia lukuja. Erdősin lause : On graafia, joilla on mielivaltaisen suuri ympärysmitta ja kromaattinen luku [12] .

Kromaattisen indeksin rajoitukset

Königin lause : , jos on kaksiosainen. Visingin lause: Graafilla , jolla on maksimipisteaste, on reunan kromaattinen numero tai .

Muut ominaisuudet

  1. Jos kaikki äärettömän graafin äärelliset osagraafit ovat k -kromaattisia, niin on myös k -kromaattisia (todistettu valintaaksiooman oletuksen perusteella ). Tämä on de Bruijn-Erdősin lauseen [16] muotoilu .
  2. Jos graafi sallii täydellisen n -värityksen mille tahansa , niin se sallii äärettömän täydellisen värityksen [17] .

Avoimet kysymykset

Sen tason kromaattista lukua, jossa kaksi pistettä ovat vierekkäin, jos niiden välillä on yksikköetäisyys, ei tiedetä. Se voi olla 5, 6 tai 7. Muita avoimia kysymyksiä graafien kromaattisesta lukumäärästä ovat Hadwigerin arvelu , jonka mukaan minkä tahansa graafin, jonka kromaattinen luku on k , sivuna on täydellinen k pisteen graafi , Erdős-Faber-Lovas. oletus , joka rajoittaa täydellisten graafien kromaattista määrää, joilla on täsmälleen yksi yhteinen kärki jokaiselle graafiparille, ja Albertsonin olettamus, että k - kromaattisten graafien joukossa ne, joissa on vähiten leikkauskohtia, ovat täydellisiä .

Kun Birkov ja Lewis esittelivät kromaattisen polynomin yrittäessään ratkaista neljän värin lausetta, he väittivät, että tasograafien kohdalla polynomilla ei ole nollia alueella . Vaikka tiedetään, että sellaisella kromaattisella polynomilla ei ole nollia alueella , ja että , niiden väite jää todistamatta. Avoimeksi jää myös kysymys, kuinka erottaa graafit, joilla on sama kromaattinen polynomi, ja kuinka määrittää, että polynomi on kromaattinen.

Väritysalgoritmit

Polynomialgoritmit

Kaksiosaisessa graafissa väritysongelma lasketaan lineaarisessa ajassa käyttämällä leveyshakua . Täydellisten graafien tapauksessa kromaattinen luku ja sitä vastaava väritys voidaan löytää polynomiajassa käyttämällä puolimääräistä ohjelmointia . Tarkat kaavat kromaattisen luvun löytämiseksi tunnetaan monille graafiluokille (metsät, syklit , pyörät , sointukaaviot ) ja ne voidaan myös laskea polynomiajassa.

Tarkat algoritmit

Kattava hakualgoritmi k-värityksen tapauksessa ottaa huomioon kaikki väriasetelmien yhdistelmät graafissa, jossa on n kärkeä, ja tarkistaa niiden oikeellisuuden. Kromaattisen luvun ja kromaattisen polynomin laskemiseksi tämä algoritmi ottaa huomioon jokaisen k:n välillä 1 - n. Käytännössä tällaista algoritmia voidaan soveltaa vain pieniin kaavioihin.

Käyttämällä dynaamista ohjelmointia ja arvioimalla suurimman riippumattoman joukon kokoa k-värityksen mahdollisuus graafissa voidaan ratkaista ajassa [18] . Tunnetaan nopeammat algoritmit 3- ja 4-värityksille, jotka toimivat ajassa [19] ja [20] , vastaavasti.

Supistuminen

Vertex-supistus  on operaatio, joka  tekee graafista graafin tunnistamalla pisteet ja poistamalla niitä yhdistävät reunat ja korvaamalla ne yhdellä pisteellä, jossa kärkiin kohdistuvat reunat ohjataan uudelleen . Tällä toiminnolla on tärkeä rooli kuvaajan väritysanalyysissä.

Kromaattinen luku täyttää toistuvuussuhteen

,

missä ja ovat ei-viereisiä kärkipisteitä, on graafi, jossa on lisätty reuna . Jotkut algoritmit perustuvat tähän suhteeseen ja tuottavat tuloksena puun, jota joskus kutsutaan Zykov-puuksi. Suoritusaika riippuu kärjen valintamenetelmästä ja .

Kromaattinen polynomi täyttää toistuvuusrelaation

,

jossa ja ovat vierekkäisiä kärkipisteitä, on graafi, jonka reuna on poistettu . edustaa graafin mahdollisten oikeiden värjäysten määrää, kun pisteillä ja voi olla samat tai eri värit. Jos ja niillä on eri värit, voimme harkita kaaviota, jossa ja ovat vierekkäin. Jos ja niillä on samat värit, voimme harkita kaaviota, jossa ja ovat yhdistetty.

Yllä annetut lausekkeet johtavat rekursiiviseen menettelyyn, jota kutsutaan poista- ja sopimusalgoritmiksi , joka on muodostanut perustan monille graafin väritysalgoritmeille. Ajoaika täyttää saman toistuvuussuhteen kuin Fibonacci-luvut , joten pahimmassa tapauksessa algoritmi ajaa ajassa n kärkeä ja m reunaa [21] . Käytännössä haara- ja sidottumenetelmä sekä isomorfisten graafien hylkääminen välttävät joitain rekursiivisia kutsuja, ajoaika riippuu pisteparin valintamenetelmästä.

Ahne väritys

Ahne algoritmi lajittelee pisteet ,… ja antaa peräkkäin kärkipisteelle pienimmän saatavilla olevan värin, jota ei käytetty värjäämään naapureita joukossa ,…, tai lisää uuden. Tuloksena olevan värityksen laatu riippuu valitusta tilauksesta. Aina on järjestys, joka tuo ahneelle algoritmille optimaalisen värimäärän. Toisaalta ahne algoritmi voi olla mielivaltaisen huono; esimerkiksi kruunu , jossa on n kärkeä, voidaan värjätä kahdella värillä, mutta on olemassa kärkijärjestys, joka johtaa värien ahneeseen värjäämiseen.

Sointugraafille ja sen erikoistapauksille (kuten intervalligraafille ) ahneella väritysalgoritmilla voidaan löytää optimaalinen väritys polynomiajassa valitsemalla kärkien järjestys täydellisen eliminointijärjestyksen käänteiseksi . Tätä algoritmia voidaan soveltaa laajempaan graafiluokkaan (täysin järjestettävät graafit ), mutta tällaisen järjestyksen löytäminen tällaisille kaavioille on NP-kova ongelma.

Jos kärjet on järjestetty asteidensa mukaan, ahne väritysalgoritmi käyttää korkeintaan värejä, mikä on enintään 1 enemmän kuin (tässä  kärjen aste ). Tätä heuristista algoritmia kutsutaan joskus Welsh-Powell-algoritmiksi [22] . Toinen algoritmi asettaa järjestyksen dynaamisesti ja valitsee seuraavan huippupisteen siitä, jossa on eniten vierekkäisiä erivärisiä kärkipisteitä. Monet muut graafin väritysalgoritmit perustuvat ahneeseen värjäämiseen ja käyttävät staattisia tai dynaamisia huippupisteiden järjestysstrategioita.

Rinnakkais- ja hajautetut algoritmit

Samanlainen ongelma esiintyy hajautettujen algoritmien alalla. Oletetaan, että graafin kärjet ovat tietokoneita, jotka voivat kommunikoida keskenään, jos ne on yhdistetty reunalla. Tavoitteena on, että jokainen tietokone valitsee itselleen "värin", jotta naapuritietokoneet valitsevat eri värit. Tämä ongelma liittyy läheisesti symmetrian murtumisongelmaan . Kehitetyimmät todennäköisyysalgoritmit ovat nopeampia kuin deterministiset algoritmit graafiille, joissa on riittävän suuri maksimipisteaste . Nopeimmat todennäköisyysalgoritmit käyttävät useiden yritysten tekniikkaa [23] .

Symmetrisissä kaavioissa deterministiset hajautetut algoritmit eivät löydä optimaalista kärkiväriä. Lisää tietoa tarvitaan symmetrian välttämiseksi. Vakiooletuksena on, että aluksi jokaisella kärjellä on yksilöllinen tunniste, esimerkiksi joukosta . Toisin sanoen oletetaan, että meille annetaan n - väri. Tehtävänä on vähentää värien lukumäärä n :stä esimerkiksi arvoon . Mitä enemmän värejä käytetään (esimerkiksi : n sijaan ), sitä vähemmän sanomia tarvitaan [23] .

Yksinkertainen versio hajautetusta ahneesta -värjäysalgoritmistasta vaatii pahimmassa tapauksessa viestintäkierroksia – tiedot saattavat joutua kulkemaan verkon puolelta toiselle.

Yksinkertaisin mielenkiintoinen tapaus on n - sykli. Richard Cole ja Uzi Vishkin [24] ovat osoittaneet, että on olemassa hajautettu algoritmi, joka vähentää värien lukumäärän n :stä arvoon , käyttämällä vain yhtä naapuriviestintää. Toistamalla samaa menettelyä voidaan saada n -syklinen 3-värjäys yhteyskierroksilla (edellyttäen, että yksilölliset solmutunnisteet annetaan).

Funktio , iteroitu logaritmi , on erittäin hitaasti kasvava funktio, "melkein vakio". Siksi Colen ja Vishkinin tulokset herättävät kysymyksen, onko olemassa hajautettua n-syklistä 3-väritysalgoritmia, joka toimii vakioajassa. Nathan Linial osoitti, että tämä on mahdotonta: mikä tahansa deterministinen hajautettu algoritmi vaatii viestintäkierroksia vähentääkseen N -värin 3-väriseksi n-syklissä [25] .

Colen ja Vishkinin tekniikkaa voidaan soveltaa myös mielivaltaiseen graafiin, jossa on rajoitettu kärkiaste, jolloin suoritusaika on [26] . Schneider ym . [27] on yleistänyt tämän menetelmän yksikköympyräkaavioon .

Reunojen väritysongelmaa on tutkittu myös hajautetussa mallissa. Pansonezzi ja Rizzi saavuttivat -värjäyksen tässä mallissa [28] . Linialin saavuttama hajautettujen pistevärjäysten alaraja soveltuu myös hajautettujen reunaväritysten ongelmaan [25] .

Hajautetut algoritmit

Hajautettuja algoritmeja kutsutaan algoritmeiksi, joissa sisäinen viestien välittäminen ei ole sallittua (toisin kuin hajautetut algoritmit , joissa prosessit vaihtavat tietoja keskenään). On olemassa tehokkaita hajautettuja algoritmeja, jotka selviävät onnistuneesti graafien värittämisestä. Nämä algoritmit toimivat olettaen, että huippupiste pystyy "tuntemaan", että jollakin sen naapuripisteistä on sama väri kuin sillä. Toisin sanoen on mahdollista määritellä paikallinen konflikti. Tällainen ehto täyttyy varsin usein tosielämän sovelluksissa – esimerkiksi siirrettäessä dataa langattoman kanavan kautta lähettävällä asemalla on pääsääntöisesti kyky havaita, että toinen asema yrittää lähettää samanaikaisesti samalla kanavalla. Kyky hankkia tällaista tietoa riittää oppimisautomaatteihin perustuville algoritmeille ratkaisemaan oikein graafin väritysongelman [29] [30] todennäköisyydellä yksi .

Laskennallinen monimutkaisuus

Graafisten värjäys on laskennallisesti vaikea tehtävä. Sen selvittäminen, voiko graafi olla k - värinen tietylle k :lle,  on NP-täydellinen tehtävä, lukuun ottamatta tapauksia k = 1 ja k = 2. Erityisesti kromaattisen luvun laskentaongelma on NP-kova [31] . . Kolmiväritysongelma on NP-täydellinen jopa 4-asteisen tasograafin tapauksessa [32] .

On myös NP-kova ongelma värjätä 3-värjättävä graafi 4 värillä [33] ja k -väritettävä graafi riittävän suurille k :n arvoille [34] .

Kromaattisen polynomin kertoimien laskeminen on #P-kova ongelma. On todistettu, ettei ole olemassa FPRAS- algoritmia kromaattisen polynomin laskemiseksi millekään muulle rationaaliluvulle k ≥ 1,5 kuin k = 2, ellei NP = RP [35] .

Sovellus

Suunnittelu

Vertex väritys mallintaa monia suunnitteluongelmia [36] . Yksinkertaisimmassa asetuksessaan tietty joukko töitä tulisi jakaa aikaväleille, jokainen tällainen työ vie yhden segmentin. Ne voidaan suorittaa missä tahansa järjestyksessä, mutta nämä kaksi työtä voivat olla ristiriidassa siinä mielessä, että niitä ei voida tehdä samanaikaisesti, koska ne käyttävät esimerkiksi yhteisiä resursseja. Vastaava graafi sisältää kullekin työlle kärjen ja kullekin ristiriitaiselle parille reunan. Muodostetun graafin kromaattinen numero on vähimmäisaika kaikkien töiden suorittamiseen ilman ristiriitoja.

Ajoitusongelman yksityiskohdat määräävät kaavion rakenteen. Esimerkiksi kun lentokoneet jaetaan lentoihin, tuloksena oleva konfliktikaavio on intervallikaavio , joten väritysongelma voidaan ratkaista tehokkaasti. Radiotaajuuksia jaettaessa saadaan yksikkökonfliktiympyröiden kuvaaja , ja tällaiselle ongelmalle on olemassa 3-approksimaatioalgoritmi .

Rekisterin allokaatio

Kääntäjä  on tietokoneohjelma, joka kääntää yhden tietokonekielen toiseksi. Tuloksena olevan koodin suoritusajan parantamiseksi yksi kääntäjän optimointitekniikoista on rekisterin allokointi , jossa käännetyn ohjelman useimmin käytetyt muuttujat tallennetaan nopeiden prosessorien rekistereihin . Ihannetapauksessa muuttujat tallennetaan rekistereihin niin, että ne ovat kaikki rekistereissä niiden käyttöhetkellä.

Tavallinen lähestymistapa tähän ongelmaan on pelkistää se graafin väritysongelmaksi [8] . Kääntäjä rakentaa interferenssigraafin , jossa kärjet vastaavat muuttujia ja reuna yhdistää kaksi niistä, jos niitä tarvitaan samanaikaisesti. Jos tämä graafi on k -kromaattinen, muuttujat voidaan tallentaa k rekisteriin.

Digitaaliset vesileimat

Digitaalisten vesileimojen ( eng.  digital watermarking ) tekniikan avulla voit siirtää piiloviestejä tietojen (olipa ne mediatiedostot , suoritettavat tiedostot ja muut) mukana (" vesileima ", vesileima ). Tällaista piiloviestiä voidaan käyttää tekijänoikeussuojassa tietojen omistajan tunnistamiseen.

Tämä on tärkeää esimerkiksi niiden laittoman jakelun lähteen selvittämiseksi. Tai vahvistaa oikeudet tietoihin, esimerkiksi - ohjelmistojärjestelmät sirulle ( system-on-chip ).

Viesti voidaan myös koodata tapaan, jolla rekistereitä allokoidaan. Yhtä tällaista tekniikkaa ehdottivat Qu ja Potkonjak [37] (siksi sitä kutsutaan joskus QP-algoritmiksi).

Se koostuu seuraavista: olkoon  prosessorirekisterien jakauman yhteensopimattomuusgraafi (häiriögraafi), joka mainittiin edellä. Sen väritystä käytetään ohjelmassa - lisäksi sitä käytetään siten, että on sallittua muuttaa graafin sisältöä lisäämällä sen kromaattista numeroa hieman . Osoittautuu, että ohjelmistotuotteessa on mahdollista koodata viesti käyttämällä graafin väritystä eli rekisterien jakamista.

Voit purkaa tämän viestin vertaamalla rekisterien jakautumista alkuperäiseen väritykseen; [38] On myös tapoja tarkistaa, onko viesti koodattu ohjelmaan ilman alkuperäistä.

Myöhemmin useat kirjailijat kehittivät ja jalostivat Qun ja Potkonjakin ajatuksia [39] . [38] [40]

Muut käyttötarkoitukset

Kuvaajan väritysongelma on esitetty monissa muissa sovelluksissa, mukaan lukien kuvioiden sovittaminen .

Sudoku -pulman ratkaiseminen voidaan ajatella tietyn 81 pisteen graafin 9-värisen värjäyksenä.

Muistiinpanot

  1. 1 2 3 ( Molloy & Reed 2002 , Perusmääritelmät )
  2. ( Donets & Shor 1982 , Historiallinen tausta )
  3. ( Kubale 2004 , Graafisen värityksen historia )
  4. ( van Lint & Wilson 2001 , luku 33)
  5. ( Jensen & Toft 1995 , s. 2)
  6. CE Shannon, "kohinaisen kanavan nollavirhekapasiteetti", IEEE Trans. Tietoteoria , s. 8-19, 1956.
  7. ( Zykov 1949 )
  8. 1 2 ( Chaitin 1982 )
  9. AOIvanov, AATuzhilin (2019), Gromov-Hausdorff Distance between Simplexes and Two-Distance Spaces , < https://arxiv.org/pdf/1907.09942.pdf > Arkistoitu 29. heinäkuuta 2019 Wayback Machinessa 
  10. ( Birkhoff & Lewis 1946 )
  11. 1 2 3 4 ( Tutte 1984 , kromaattinen polynomi )
  12. 1 2 3 ( Diestel 2005 , Värityspisteet )
  13. ( Brooks & Tutte 1941 )
  14. 1 2 ( Diestel 2005 , Väritys reunat )
  15. ( Nesetřil & Ossona de Mendez 2012 )
  16. ( de Bruijn, Erdős 1951 )
  17. ( Fawcett 1978 )
  18. ( Lawler 1976 )
  19. ( Beigel & Eppstein 2005 )
  20. ( Fomin, Gaspers & Saurabh 2007 )
  21. ( Sekine, Imai & Tani 1995 )
  22. ( Welsh & Powell 1967 )
  23. 1 2 ( Schneider 2010 )
  24. ( Cole & Vishkin 1986 ), katso myös ( Cormen, Leiserson & Rivest 1990 , jakso 30.5)
  25. 1 2 ( Linial 1992 )
  26. ( Goldberg, Plotkin & Shannon 1988 )
  27. ( Schneider 2008 )
  28. ( Panconesi & Rizzi 2001 )
  29. ( Leith & Clifford 2006 )
  30. ( Duffy, O'Connell & Sapožnikov 2008 )
  31. ( Garey, Johnson & Stockmeyer 1974 ); ( Garey & Johnson 1979 ).
  32. ( Dailey 1980 )
  33. ( Guruswami & Khanna 2000 )
  34. ( Khot 2001 )
  35. ( Goldberg & Jerrum 2008 )
  36. ( Marx 2004 )
  37. ( Qu & Potkonjak 1998 )
  38. 1 2 ( Zhu & Thomborson 2006 )
  39. ( Collberg, Thomborson & Townsend 2004 )
  40. ( Myles & Collberg 2003 )

Kirjallisuus