Temat: Algorytmy aproksymacyjne (przyblione) cz. I. Majc do rozwizania trudny obliczeniowo problem, moemy wybra jedno z dwóch nastpujcych podej:

Podobne dokumenty
Temat: Algorytmy aproksymacyjne dla wybranych NP-trudnych problemów grafowych

Temat: Problem minimalnego drzewa Steinera. Definicja problemu. Zastosowania. Algorytm dokładny Hakimi. Algorytmy aproksymacyjne.

Temat: Problem najkrótszych cieek w grafach waonych, cz. I: Algorytmy typu label - setting.

1) Grafy eulerowskie własnoci algorytmy. 2) Problem chiskiego listonosza

Problem decyzyjny naley do klasy NP. (Polynomial), jeeli moe by rozwizany w czasie conajwyej wielomianowym przez algorytm A dla DTM.

Temat: Technika zachłanna. Przykłady zastosowania. Własno wyboru zachłannego i optymalnej podstruktury.

Wstp. Warto przepływu to

Skojarzenia. Najliczniejsze skojarzenia: Dokładne skojarzenia o maksymalnej sumie wag w obcionych pełnych grafach dwudzielnych.

Kolorowanie wierzchołków

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA. W obu podpunktach zakªadamy,»e kolejno± ta«ców jest wa»na.

oraz spełnia warunki: (*) dla wszystkich wierzchołków

Temat: Struktury danych do reprezentacji grafów. Wybrane algorytmy grafowe.

Szukanie najkrótszych dróg z jednym ródłem

Wektor o pocztku i kocu odpowiednio w punktach. Prosta zawierajca punkty p i q: pq Półprosta zaczynajca si w punkcie p i zawierajca punkt q:.

Problemy optymalizacyjne - zastosowania

Struktury danych i złożoność obliczeniowa Wykład 7. Prof. dr hab. inż. Jan Magott

Temat: Geometria obliczeniowa cz II. Para najmniej odległych punktów. Sprawdzenie, czy istnieje para przecinajcych si odcinków.

Kolorowanie wierzchołków grafu

Matematyka dyskretna. Andrzej Łachwa, UJ, B/14

Temat: Algorytmy zachłanne

Algorytmika Problemów Trudnych

Temat: Liniowe uporzdkowane struktury danych: stos, kolejka. Specyfikacja, przykładowe implementacje i zastosowania. Struktura słownika.

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Projektowanie i analiza zadaniowa interfejsu na przykładzie okna dialogowego.

a) 7 b) 19 c) 21 d) 34

Bazy danych. Plan wykładu. Zalenoci funkcyjne. Wykład 4: Relacyjny model danych - zalenoci funkcyjne. SQL - podzapytania A B

Gramatyki regularne i automaty skoczone

I Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 10 kwietnia 2013 grupa elektryczno-elektroniczna

Sposoby przekazywania parametrów w metodach.

Przykłady grafów. Graf prosty, to graf bez pętli i bez krawędzi wielokrotnych.

Optymalizacja. Przeszukiwanie lokalne

Plan wykładu. Przykład. Przykład 3/19/2011. Przykład zagadnienia transportowego. Optymalizacja w procesach biznesowych Wykład 2 DECYZJA?

Metody Informatyczne w Budownictwie Metoda Elementów Skoczonych ZADANIE NR 1

Kolorowanie wierzchołków Kolorowanie krawędzi Kolorowanie regionów i map. Wykład 8. Kolorowanie

Teoria obliczeń i złożoność obliczeniowa

Teoria grafów i jej zastosowania. 1 / 126

EGZAMIN - Wersja A. ALGORYTMY I STRUKTURY DANYCH Lisek89 opracowanie kartki od Pani dr E. Koszelew

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

Kombinatoryczne problemy optymalizacyjne to problemy wyboru najlepszego rozwiązania z pewnego zbioru rozwiązań

Pojcie grafu. { {v 1, v 2 }, {v 2, v 3 }, {v 3, v 4 }, {v 4, v 1 },{v 2, v 4 } } )

Algorytmiczna teoria grafów Przepływy w sieciach.

PRAWIDŁOWE ODPOWIEDZI DO ZADA ZAMKNITYCH

Przykªady problemów optymalizacji kombinatorycznej

Szeregowanie zada« Wykªad nr 6. dr Hanna Furma«czyk. 11 kwietnia 2013

Grafem nazywamy strukturę G = (V, E): V zbiór węzłów lub wierzchołków, Grafy dzielimy na grafy skierowane i nieskierowane:

Ustalenie optymalnego układu lokalizacyjnodystrybucyjnego

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Granular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY

Matematyczne Podstawy Informatyki

Znajdowanie skojarzeń na maszynie równoległej

9. Schematy aproksymacyjne

Algorytmiczna teoria grafów

Struktury danych i złożoność obliczeniowa Wykład 5. Prof. dr hab. inż. Jan Magott

Algorytmy kodowania predykcyjnego

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

6.2. Baza i wymiar. V nazywamy baz-

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15

Minimalne drzewa rozpinaj ce

WYKŁAD 4 PLAN WYKŁADU. Sieci neuronowe: Algorytmy uczenia & Dalsze zastosowania. Metody uczenia sieci: Zastosowania

Wybrane podstawowe rodzaje algorytmów

Planowanie adresacji IP dla przedsibiorstwa.

PREZENTACJA DZIAŁANIA KLASYCZNEGO ALGORYTMU GENETYCZNEGO

Ekonometria - wykªad 8

TEORIA GRAFÓW I SIECI

Funkcje, wielomiany. Informacje pomocnicze

Metodydowodzenia twierdzeń

Podstawowe własności grafów. Wykład 3. Własności grafów

TEORETYCZNE PODSTAWY INFORMATYKI

Lab. 02: Algorytm Schrage

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Złożoność obliczeniowa klasycznych problemów grafowych

Matematyka dyskretna

ZAGADNIENIE TRANSPORTOWE

Zagadnienie transportowe

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

stopie szaro ci piksela ( x, y)

c Marcin Sydow Wst p Grafy i Zastosowania Wierzchoªki 8: Kolorowanie Grafów Mapy Kraw dzie Zliczanie Podsumowanie

Zastosowanie programu Microsoft Excel do analizy wyników nauczania

E ' E G nazywamy krawędziowym zbiorem

Poprawa efektywnoci metody wstecznej propagacji bdu. Jacek Bartman

ZAGADNIENIE TRANSPORTOWE(ZT)

Sortowanie topologiczne skierowanych grafów acyklicznych

Ukªady równa«liniowych

IV Powiatowy Konkurs Matematyka, Fizyka i Informatyka w Technice Etap finałowy 1 kwietnia 2016

TEORIA GRAFÓW I SIECI

Metody komputerowe i obliczeniowe Metoda Elementów Skoczonych. Element dwuwymiarowy liniowy : belka

Grafy i Zastosowania. 5: Drzewa Rozpinające. c Marcin Sydow. Drzewa rozpinające. Cykle i rozcięcia fundamentalne. Zastosowania

KONKURS PRZEDMIOTOWY MATEMATYCZNY DLA UCZNIÓW GIMNAZJUM

Podejście zachłanne, a programowanie dynamiczne

SKOJARZENIA i ZBIORY WEWN. STABILNE WIERZCH. Skojarzeniem w grafie G nazywamy dowolny podzbiór krawędzi parami niezależnych.

Wykład 8. Drzewo rozpinające (minimum spanning tree)

Interpolacja funkcjami sklejanymi

1 Bª dy i arytmetyka zmiennopozycyjna

KLUCZ PUNKTOWANIA ODPOWIEDZI

10. Kolorowanie wierzchołków grafu

Struktury danych i złozoność obliczeniowa. Prof. dr hab. inż. Jan Magott

Bazy danych Podstawy teoretyczne

Bash i algorytmy. Elwira Wachowicz. 20 lutego

Transkrypt:

Temat: Algorytmy aproksymacyjne (przyblione) cz. I. 1. Algorytmy aproksymacyjne Majc do rozwizania trudny obliczeniowo problem, moemy wybra jedno z dwóch nastpujcych podej: Zastosowa technik algorytmów z powrotami, która znacznie redukuje nieefektywno pełnego przegldu. Taka ulepszona technika przeszukiwania przestrzeni rozwiza gwarantuj, i otrzymujemy rozwizanie dokładne (optymalne), ale w najmniej korzystnym przypadku danych algorytmy takie mog wykonywa liczb operacji elementarnych rosnc wykładniczo. Staj si wówczas nieuyteczne dla rzeczywistych danych. Zastosowa przyblion, ale szybk (czyli działajc w czasie wielomianowym) metod, która nie we wszystkich przypadkach generuje rozwizanie optymalne, jednake dla wikszoci danych dostarcza rozwizania przyblione, które le do blisko rozwiza optymalnych. Algorytm umoliwiajcy otrzymanie prawie optymalnego rozwizania jest nazywany algorytmem aproksymacyjnym (przyblionym). 2. Oszacowanie jakoci algorytmów aproksymacyjnych a) Ograniczenie wzgldne Załómy, e mamy do czynienia z problemem optymalizacyjnym, w którym kade potencjalne rozwizanie ma dodatni koszt i chcemy znale rozwizanie prawie 1

optymalne. Zalenie od problemu rozwizanie optymalne moe by zdefiniowane jako to o maksymalnym moliwym koszcie lub o minimalnym. Zadanie polega wic na maksymalizacji albo na minimalizacji. Mówimy, e algorytm aproksymacyjny dla danego problemu ma ograniczenie wzgldne ρ ( n), jeli dla dowolnych danych wejciowych rozmiaru n koszt C otrzymany jako rozwizanie konstruowane przez ów algorytm, ρ n przez koszt szacuje si z dokładnoci do czynnika ( ) C rozwizania optymalnego: max C C, ρ( n) C C Dla problemu maksymalizacji 0 < C C, a współczynnik C /C okrela, ile razy koszt rozwizania optymalnego jest wikszy od kosztu rozwizania przyblionego. Dla problemu minimalizacji 0 < C C, a współczynnik C /C okrela, ile razy koszt rozwizania przyblionego jest wikszy od kosztu rozwizania optymalnego. Ograniczenie wzgldne algorytmu aproksymacyjnego nigdy nie jest mniejsze ni 1, poniewa nierówno C / C < 1 implikuje C / C > 1. Ograniczeniem wzgldnym algorytmu optymalnego jest 1, a algorytm o duym ograniczeniu wzgldnym moe da rozwizanie znacznie gorsze ni optymalne. 2

b) Ograniczenie błdu wzgldnego Czasami wygodniej jest operowa pojciem błdu wzgldnego. Dla dowolnych danych wejciowych błd wzgldny definiuje si jako C C C Błd wzgldny jest zawsze nieujemny. Dla algorytmu aproksymacyjnego ε ( n) jest ograniczeniem błdu wzgldnego, jeli C C ε( n) C Dla problemu minimalizacyjnego prawdziwa jest równo: ( n) = ( ρ( n) 1) ρ( n) ε / Dla problemu maksymalizacyjnego prawdziwa jest nierówno: ε ( n) ρ( n) 1 (poniewa ( n) 1 ρ ) Dla wielu problemów skonstruowano algorytmy aproksymacyjne o stałym, niezalenym od n ograniczeniu wzgldnym. Dla innych problemów informatykom nie udało si zaprojektowa adnego wielomianowego algorytmu aproksymacyjnego o stałym ograniczeniu wzgldnym. Ograniczenie wzgldne jest wówczas funkcj rosnc wraz z rozmiarem danych wejciowych n. c) Schemat aproksymacji Dla niektórych problemów NP-zupełnych istniej algorytmy aproksymacyjne, za pomoc których mona uzyskiwa coraz mniejsze ograniczenie wzgldne kosztem duego czasu 3

oblicze. Schemat aproksymacji dla problemu optymalizacyjnego to algorytm aproksymacyjny, który pobiera na wejciu nie tylko dane opisujce problem, ale take warto ε>0 tak, e dla kadego ustalonego ε schemat ten jest algorytmem aproksymacji o ograniczeniu błdu wzgldnego równym ε. 3. Algorytm aproksymacyjny dla problemu komiwojaera oparty na technice włczania WP: Graf G = V, E, w - pełny, zorientowany z dodatnimi wagami; V - zbiór wierzchołków, E - zbiór krawdzi, w - funkcja wag grafu. WK: Najtaszy w sensie łcznej sumy wag cykl Hamiltona w grafie. Idea Wybieramy wierzchołek pocztkowy cyklu s. Nastpny wierzchołek cyklu wybieramy sporód n-1 pozostałych wierzchołków, zgodnie z nastpujcym kryterium: () Wybieramy wierzchołek nie odwiedzony, połoony najdalej od cyklu (tzn. od wszystkich wierzchołków, które ju s w cyklu). Oznaczmy wybrany wierzchołek przez p. Otrzymujemy w ten sposób cykl złoony z dwóch wierzchołków: (s, p, s). Nastpnie jest wybierany kolejny wierzchołek, spełniajcy kryterium (). Do biecego rozwizania włczamy albo cykl (s, p, q, s) albo (s, q, p, s) w zalenoci od tego, który jest taszy. Kontynuujemy krok wybierania wierzchołka i włczania go do cyklu czciowego a do momentu uzyskania pełnego cyklu. 4

Oznaczmy przez VT zbiór wierzchołków nalecych do biecego cyklu, a E T zbiór krawdzi tego cyklu. I krok: Wybieranie wierzchołka Aby efektywnie wyznaczy wierzchołek nie odwiedzony, lecy najdalej od wierzchołków biecego cyklu, zastosujemy tablic jednowymiarow odległoci dist, tak, e dist[v] zapamituje najmniejsz odległo wierzchołków cyklu od v. Jeeli wierzchołek f jest włczany do cyklu jako nastpny, to ma najwiksz warto w tablicy dist. Po włczeniu f do cyklu tablica dist jest uaktualniana i kady jej element staje si równy minimum sporód biecej wartoci w tablicy dist i odpowiedniej wartoci w wierszu f macierzy wag W. II krok: Włczanie wierzchołka do cyklu Załómy, e biecy cykl zawiera k wierzchołków i nastpnym do włczenia wierzchołkiem jest f. Badamy kady łuk (i, j) cyklu i okrelamy koszt włczenia f midzy i oraz j, który jest równy: c = w + w w ij if Wród k łuków cyklu wybieramy łuk (t, h) o najmniejszym koszcie c th. Wierzchołek f włczamy do cyklu midzy t i h, uaktualniamy długo cyklu i wartoci elementów w tablicy dist. fj ij 5

Pseudokod algorytmu włczania // Inicjalizacja V T ={s}; E T ={(s, s)}; w ss =0; koszt =0; for u V \ {s} dist[u]=w su ; // Iteracja while ( V T < n) { f= wierzchołek ze zbioru V \ V T o najwikszej wartoci dist; for (i, j) E T cij = wif + wfj wij ; (t, h)=łuk z E T o najmniejszym koszcie c th ; E = E { ( t, f ), ( f, h) } {( t, h) }; } V T T = V T T { f }; koszt=koszt + c th ; for x V \ V T dist[x]=min{dist[x], w fx }; Wierzchołki V T i łuki E T, tworzce biecy cykl, s reprezentowane w tablicy cycle, w której element cycle[i] przyjmuje warto j, gdy krawd (i, j) naley do biecego cyklu i 0 w przeciwnym przypadku. 6

Przykład 4 W 1 0 2 4 345 = 439 528 6 3 1 3 0 17 90 46 88 2 93 77 0 80 88 18 3 13 42 36 0 33 46 4 33 21 16 56 0 92 5 9 16 28 7 25 0 6 Inicjalizacja: s = 1 dist: -, 3, 93, 13, 33, 9, cycle : 1, 0, 0, 0, 0, 0 koszt: 0 Iteracja: I krok f = 3 - wierzchołek o maksymalnej wartoci dist koszt:= koszt + c 11 =koszt + w 13 +w 31 =0 + 93 + 45 =138 dist: -, 3, -, 13, 16, 9, cycle: 3, 0, 1, 0, 0, 0, cykl: 1-3-1 II krok f = 5 koszt:= koszt + min{c 13, c 31 }= = koszt +min{w 15 +w 53 - w 13, w 35 +w 51 - w 31 }= = 138 + min{33+88-93, 16 + 28-45}= = 138 + min{28, -1}=137 dist: -, 3, -, 13, -, 9, cycle: 3, 0, 5, 0, 1,0, cykl: 1-3-5-1 7

1 0 3 93 13 33 9 2 4 0 77 42 21 16 345 17 0 36 16 28 W = 439 90 80 0 56 7 528 46 88 33 0 25 6 3 88 18 46 92 0 1 2 3 4 5 6 III krok f = 4 koszt:= koszt +min{c 13, c 35, c 51 }= = koszt + min{w 14 +w 43 - w 13, w 34 +w 45 - w 35, w 54 +w 41 - w 51 }= = 137 + min{0, 76, 44}=137 + 0 =137 dist: -, 3, -, -, -, 7 cycle: 4, 0, 5, 3, 1, 0, cykl: 1-4-3-5-1 IV krok f = 6 koszt:= koszt + min{c 14, c 43, c 35, c 51 }= =137+ min{42, -55, 104, 0 }= 137-55 = 82 dist: -, 3, -, -, -, - cycle: 4, 0, 5, 6, 1, 3, cykl: 1-4-6-3-5-1 V krok f = 2 koszt:= koszt + min{c 14, c 46, c 63, c 35, c 51 }= = 82+ min{32, 99, 147, 22, 22}= 82 +22 = 104 Mamy tym razem dwie moliwoci włczenia z najmniejszym kosztem. Wybieramy c 35 i otrzymujemy ostatecznie rozwizanie cycle: 1, 4, 6, 3, 2, 5, 1 o całkowitym koszcie 104. Otrzymane rozwizanie jest jedn z dwóch optymalnych tras komiwojaera dla tego przykładu. W ogólnym przypadku nie mona jednak oczekiwa, e zawsze bdziemy mieli tyle 8

szczcia, aby algorytm przybliony generował rozwizanie optymalne. Zaleca si, aby algorytm przybliony zastosowa n razy dla danego przypadku danych i wybra rozwizanie o najniszym koszcie całkowitym. Złoono czasowa algorytmu przyblionego Przy jednym uruchomieniu : O(n 2 ). Przy n uruchomieniach: O(n 3 ) Twierdzenie Algorytm aproksymacyjny dla problemu komiwojaera zrealizowany metod przez włczanie jest algorytmem aproksymacyjnym z ograniczeniem wzgldnym równym 2. C Czyli 2 C, gdzie C jest optymalnym cyklem dla danego grafu, a C jest cyklem wyznaczonym przez algorytm przybliony. 9

5. Algorytmy aproksymacyjne dla problemu kolorowania grafu Pojcia: Przypisanie kolorów wierzchołkom grafu G, po jednym kolorze dla kadego wierzchołka, tak, aby ssiednie wierzchołki otrzymały róne kolory nazywamy pokolorowaniem grafu G. Pokolorowanie k kolorami nazywamy k- pokolorowaniem. Graf jest k - barwny, jeli istnieje l- pokolorowanie grafu G, gdzie l k. Najmniejsz warto k, dla której graf G jest k - barwny nazywamy liczb chromatyczn grafu G. Zbiór wierzchołków tego samego koloru nazywamy klas barwliwoci. Takie dwa podzbiory, w których adne dwa wierzchołki nie ssiaduj ze sob nazywamy podzbiorami niezalenymi. Podzbiór W nazywamy maksymalnym zbiorem niezalenym, jeli nie istnieje zbiór zawierajcy W i róny od W, który jest niezaleny. Najwikszy zbiór niezaleny to taki maksymalny zbiór niezaleny, który ma najwicej wierzchołków sporód wszystkich zbiorów maksymalnych. Oznaczenia: G /W - podgraf grafu G indukowany przez zbiór W V, tzn. G /W = <W, E'>, gdzie E' zawiera te krawdzie grafu G, których oba koce nale do W. 10

Przykład 5 1[1] 6[1] 2[2] 5[3] 3[3] 4[2] Liczby w nawiasach kwadratowych oznaczaj numer koloru przyporzdkowanego wierzchołkowi w procesie kolorowania. Graf jest 3-barwny. Na rysunku wyej przykład 3-pokolorowania. Liczb chromatyczn grafu 3. {1, 6}, {2, 4}, {3, 5} - klasy barwliwoci Przykłady podzbiorów niezalenych: {1, 6}, {2, 4}. S to jednoczenie przykłady maksymalnych zbiorów niezalenych i najwikszych zbiorów niezalenych 11

Problem kolorowaniu grafu WP: G - graf nieskierowany, bez wag. WK: Liczba chromatyczna grafu. Problem kolorowania grafu jest równowany problemowi podziału zbioru wierzchołków grafu na minimaln liczb podzbiorów niezalenych: WP: Graf nieskierowany, bez wag WK: Wyznaczenie takiej minimalnej liczby k, dla której istnieje podział zbioru V wierzchołków grafu na k zbiorów niezalenych V 1, V 2,..., V k takich, e : V V = dla i j, i, j = 1,2,..., k oraz k V i i V i j =1 =. a) Algorytm najwikszych zbiorów niezalenych Idea Tworzony jest cig klas barwliwoci, które s najwikszymi zbiorami niezalenymi w podgrafach wyznaczonymi przez wierzchołki niepokolorowane. 12

Algorytm najwikszych zbiorów niezalenych U =V; k=0; while (U ) { k=k +1; ()MAXIND(U, W);// znale najliczniejszy zbiór niezaleny // W w pografie G /U for u W f[u]=k; // f - funkcja kolorujca graf U=U \ W; } () Znajdowanie przyblionego najliczniejszego podzbioru niezalenego w grafie G MAXIND(U, W) U 1 =U; W = ; while (U 1 ) { znale wierzchołek u o minimalnym stopniu w G /U1 ; W =W {u}; U 1 =U 1 \ {u}\{v U 1 : (v, u) E}; } Poczynajc od W=, zbiór W jest powikszany w kadym kroku o wierzchołek majcy najmniejszy stopie w podgrafie utworzonym przez wierzchołki nie ssiadujce z elementami zbioru W. 13

Przykład 6 1(2)[1] 6(2)[1] 2(3)[2] 5(4)[3] Algorytm dokładny daje wynik k = 3. Podział:{1, 6}, {2, 4}, {3, 5} (pokolorowanie zaznaczone w[]) Algorytm przybliony daje wynik k = 4. Podział:{3, 4}, {1, 6}, {2}, {5} (pokolorowanie zaznaczone w ( )) Złoono czasowa algorytmu najwikszych zbiorów niezalenych, wykorzystujcego przyblione generowanie najliczniejszego podzbioru niezalenego. Mona pokaza, e algorytm ten ma złoono O(n 3 ). Twierdzenie Algorytm aproksymacyjny najwikszych zbiorów niezalenych dla problemu kolorowaniu grafu jest algorytmem aproksymacyjnym z ograniczeniem wzgldnym O(n/logn). C C 4(1)[2] ( / logn) O n 3(1)[3] 14

b) Prosty algorytm sekwencyjny dla problemu kolorowania grafu (algorytm Welsha-Powella) W algorytmie tym bdziemy zakładali, e wierzchołki zostały ponumerowane w kolejnoci nierosncych stopni. Idea Wierzchołek v i jest dodawany do podgrafu indukowanego przez ju pomalowane wierzchołki v 1, v 2,..., v i-1, po czym okrela si nowe pokolorowanie wierzchołków v 1, v 2,..., v i-1, v i. Krok ten jest powtarzany dla i=1, 2,..., n, przy czym dla i=1 podgraf jest pusty. W kadym kroku staramy si uy moliwie najmniej kolorów. W algorytmie tym wierzchołek v i otrzymuje kolor o najniszym numerze. Algorytm f[v 1 ]=1; for (i= 2; i<=n; i++) f[v i ]=min{k: k 1 i f[v j ] k dla kadego v j (1 j i) ssiadujcego z v i }; Zauwamy, e w prostym algorytmie sekwencyjnym, w momencie kolorowania wierzchołka v i, wierzchołki poprzedzajce v i zachowuj swoje kolory. 15

Przykład 7 3[3] 4[3] 1[1] 2[2] 5[2] Wierzchołki grafu s ponumerowane w kolejnoci nierosncych stopni. Prosty algorytm sekwencyjny daje 3-pokolorowanie (zaznaczone w []): Złoono czasowa prostego algorytmu sekwencyjnego O(n 2 ). Twierdzenie Prosty algorytm sekwencyjny z załoenie uporzdkowania wierzchołków w kolejnoci nierosncych stopni jest algorytmem aproksymacyjnym z ograniczeniem wzgldnym nie przekraczajcym wartoci 1+ max{ deg( vi )}. C Czyli + max{ deg( v i )} C 1 i n 6[1] 1 i n 1 (deg(v i ) - stopie wierzchołka v i ) 16