9. Schematy aproksymacyjne

Podobne dokumenty
Algorytmika Problemów Trudnych

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

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

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

Temat: Algorytmy zachłanne

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

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

Algorytmy i struktury danych.

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

Projektowanie i analiza algorytmów

Matematyczne Podstawy Informatyki

Metody optymalizacji dyskretnej. Metody przybliżone

Schemat programowania dynamicznego (ang. dynamic programming)

PROBLEM: SORTOWANIE PRZEZ ODWRÓCENIA METODA: ALGORYTMY ZACHŁANNE

Algorytmy i Struktury Danych

1. Analiza algorytmów przypomnienie

Algorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne

Analiza algorytmów zadania podstawowe

Zasada indukcji matematycznej

Programowanie liniowe

IX. Rachunek różniczkowy funkcji wielu zmiennych. 1. Funkcja dwóch i trzech zmiennych - pojęcia podstawowe. - funkcja dwóch zmiennych,

Wykład 9: Markov Chain Monte Carlo

Sortowanie topologiczne skierowanych grafów acyklicznych

Szeregowanie zadań. Wykład nr 3. dr Hanna Furmańczyk

Indukcja matematyczna. Zasada minimum. Zastosowania.

PRZEWODNIK PO PRZEDMIOCIE

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

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

Kolorowanie wierzchołków grafu

Algorytmy zachłanne. dr inż. Urszula Gałązka

Korzystając z własności metryki łatwo wykazać, że dla dowolnych x, y, z X zachodzi

Dystrybucje, wiadomości wstępne (I)

Ciągłość funkcji f : R R

Jeśli czas działania algorytmu zależy nie tylko od rozmiaru danych wejściowych i przyjmuje różne wartości dla różnych danych o tym samym rozmiarze,

Analiza algorytmów zadania podstawowe

Matematyka dyskretna Literatura Podstawowa: 1. K.A. Ross, C.R.B. Wright: Matematyka Dyskretna, PWN, 1996 (2006) 2. J. Jaworski, Z. Palka, J.

0 + 0 = 0, = 1, = 1, = 0.

Algorytmy i Struktury Danych, 2. ćwiczenia

Analiza Algorytmów 2018/2019 (zadania na laboratorium)

1 Działania na zbiorach

Programowanie dynamiczne i algorytmy zachłanne

Rekurencje. Jeśli algorytm zawiera wywołanie samego siebie, jego czas działania moŝe być określony rekurencją. Przykład: sortowanie przez scalanie:

Załóżmy, że musimy zapakować plecak na wycieczkę. Plecak ma pojemność S. Przedmioty mają objętości,,...,, których suma jest większa od S.

Krzysztof Gniłka. Twierdzenie o rekurencji uniwersalnej

WYKŁAD Z ANALIZY MATEMATYCZNEJ I. dr. Elżbieta Kotlicka. Centrum Nauczania Matematyki i Fizyki

Układy równań i nierówności liniowych

jest ciągiem elementów z przestrzeni B(R, R)

Porównanie czasów działania algorytmów sortowania przez wstawianie i scalanie

Indukcja. Materiały pomocnicze do wykładu. wykładowca: dr Magdalena Kacprzak

Algorytm simplex i dualność

Optymalizacja. Wybrane algorytmy

Algorytmy aproksymacyjne i parametryzowane

1 Metody rozwiązywania równań nieliniowych. Postawienie problemu

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

7. Algorytmy aproksymacyjne

Matematyka dyskretna - wykład - część Podstawowe algorytmy kombinatoryczne

Programowanie proceduralne INP001210WL rok akademicki 2017/18 semestr letni. Wykład 3. Karol Tarnowski A-1 p.

Optymalizacja. Przeszukiwanie lokalne

Analiza matematyczna. 1. Ciągi

2 Rodziny zbiorów. 2.1 Algebry i σ - algebry zbiorów. M. Beśka, Wstęp do teorii miary, rozdz. 2 11

Uwaga: Funkcja zamień(a[j],a[j+s]) zamienia miejscami wartości A[j] oraz A[j+s].

INTERPOLACJA I APROKSYMACJA FUNKCJI

Zaawansowane algorytmy i struktury danych

Matematyka i Statystyka w Finansach. Rachunek Różniczkowy

Wykład 10. Stwierdzenie 1. X spełnia warunek Borela wtedy i tylko wtedy, gdy każda scentrowana rodzina zbiorów domkniętych ma niepusty przekrój.

Ciągi liczbowe wykład 3

Programowanie dynamiczne

19 marzec, Łańcuchy Markowa z czasem dyskretnym. Procesy Stochastyczne, wykład 6, T. Byczkowski, Procesy Stochastyczne, PPT, Matematyka MAP1136

Programowanie dynamiczne cz. 2

Efektywność Procedur Obliczeniowych. wykład 5

Teoretyczne podstawy informatyki

n=0 Dla zbioru Cantora prawdziwe są wersje lematu 3.6 oraz lematu 3.8 przy założeniu α = :

Wykład 6. Wyszukiwanie wzorca w tekście

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

Projekt Era inżyniera pewna lokata na przyszłość jest współfinansowany przez Unię Europejską w ramach Europejskiego Funduszu Społecznego

Szeregi o wyrazach dodatnich. Kryteria zbieżności d'alemberta i Cauchy'ego

Przykłady problemów optymalizacyjnych

Uzupełnienia dotyczące zbiorów uporządkowanych (3 lutego 2011).

Programowanie celowe #1

zbiorów domkniętych i tak otrzymane zbiory domknięte ustawiamy w ciąg. Oznaczamy

Algorytmy i Struktury Danych.

Wykład z równań różnicowych

Minimalne drzewa rozpinające

II. FUNKCJE WIELU ZMIENNYCH

macierze jednostkowe (identyczności) macierze diagonalne, które na przekątnej mają same

Matematyka Dyskretna 2/2008 rozwiązania. x 2 = 5x 6 (1) s 1 = Aα 1 + Bβ 1. A + B = c 2 A + 3 B = d

Metody numeryczne. dr Artur Woike. Ćwiczenia nr 2. Rozwiązywanie równań nieliniowych metody połowienia, regula falsi i siecznych.

Aproksymacja diofantyczna

Zdzisław Dzedzej. Politechnika Gdańska. Gdańsk, 2013

Wstęp do programowania

1 Funkcje uniwersalne

Prawa wielkich liczb, centralne twierdzenia graniczne

Problemy optymalizacyjne - zastosowania

Algorytmy Grafowe. dr hab. Bożena Woźna-Szcześniak, prof. UJD. Wykład 5 i 6. Uniwersytet Humanistyczno-Przyrodniczy im. Jana Długosza w Częstochowie

Wykład 8. Informatyka Stosowana. 26 listopada 2018 Magdalena Alama-Bućko. Informatyka Stosowana Wykład , M.A-B 1 / 31

Zadanie 1 Przygotuj algorytm programu - sortowanie przez wstawianie.

Teoretyczne podstawy programowania liniowego

Przykładami ciągów, które Czytelnik dobrze zna (a jeśli nie, to niniejszym poznaje), jest ciąg arytmetyczny:

VII. Elementy teorii stabilności. Funkcja Lapunowa. 1. Stabilność w sensie Lapunowa.

Transkrypt:

9. Schematy aproksymacyjne T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein Wprowadzenie do algorytmów, WNT (2004) O.H. Ibarra, C.E. Kim Fast approximation algorithms for the knapsack and sum of subset problems Journal of the Association for Computing Machinery, 22(4), 463-468 (1975) V.V. Vazirani Algorytmy aproksymacyjne (Polish Edition: M. Mucha), WNT (2005) Definicja. Niech Π będzie NP-trudnym problemem optymalizacyjnym z funkcją celu f. Mówimy, że algorytm A jest schematem aproksymacyjnym dla Π, jeżeli dla wejścia (I,ε) gdzie I jest instancją dla Π (wejściem), a ε > 0 jest parametrem opisującym dopuszczalny błąd algorytm ten zwraca rozwiązanie S takie, że: f(i, S) (1 + ε) OPT, jeśli Π jest problemem minimalizacji; f(i, S) (1 ε) OPT, jeśli Π jest problemem maksymalizacji. A zatem, o ile P NP, to z teoretycznego punktu widzenia istnienie wielomianowego schematu aproksymacyjnego jest w wypadku NP-trudnych problemów optymalizacyjnych najlepszą możliwą sytuacją.

Definicja. Mówimy, że schemat aproksymacyjny A jest wielomianowym schematem aproksymacyjnym, w skrócie PTAS, jeżeli dla dowolnego ustalonego ε > 0 czas działania algorytmu A jest wielomianowy ze względu na rozmiar wejścia I. W przypadku, jeśli czas działania A jest wielomianowy zarówno ze względu na rozmiar wejścia I jak i 1/ε, algorytm A nazywamy w pełni wielomianowym schematem aproksymacyjnym, w skrócie FPTAS. Skrót (F)PTAS pochodzi od angielskiego terminu (fully) polynomial time approximation scheme. Np. schemat aproksymacyjny o czasie działania O(n 1/ε ) jest PTAS, podczas gdy schemat o czasie O(1/ε n ) już nie; analogicznie, PTAS z czasem działania O(n 1/ε ) nie jest FPTAS, podczas gdy PTAS o czasie O(n 2 /ε 2 ) już jest. Problem plecakowy Problem sumy zbioru Najwiekszy zbiór niezależny w grafach UDG...

9.1 Problem plecakowy Dany jest zbiór przedmiotów X = {a 1,...,a n }, gdzie przedmiot a i X ma rozmiar s(a i ) Z + oraz wartość v(a i ) Z +. Przedmiot a i Rozmiar s(a i ) Wartość v(a i ) 1 6 5 2 3 1 3 4 4 4 2 2 Ograniczenie S = 10. Problem. (Problem plecakowy) Dla danej liczby S Z +, zwanej pojemnością plecaka, wyznacz najbardziej wartościowy zbiór przedmiotów o łącznym rozmiarze nie przekraczającym S. Zachłanne podejście Wybierając przedmioty w kolejności malejącego stosunku wartości do rozmiaru, możemy otrzymać rozwiązanie dowolnie odległe od optymalnego. Przedmiot a i Rozmiar s(a i ) Wartość v(a i ) v(a i )/s(a i ) 1 1 2 2 2 x x 1 Ograniczenie S = x.

Programowanie dynamiczne /najmniejszy rozmiar plecaka/ Dla1 i n oraz0 v V = n i=1 v(a i), niecha(i,v) oznacza najmniejszy rozmiar tego spośród wszystkich podzbiorów zbioru{a 1,...,a i }, którego wartość elementów wynosi v; jeśli taki podzbiór nie istnieje, A(i,v) :=. A(i,v) = min { a X s(a) : a X v(a) = v oraz X {a 1,...,a i } } Wartość A(i,0) = 0 dla i 1. Wartość A(1, ) można określić z definicji: { s(a 1 ) dla v(a 1 ) = v; A(1,v) = w przeciwnym wypadku.

Programowanie dynamiczne /najmniejszy rozmiar plecaka/ Dla1 i n oraz0 v V = n i=1 v(a i), niecha(i,v) oznacza najmniejszy rozmiar tego spośród wszystkich podzbiorów zbioru{a 1,...,a i }, którego wartość elementów wynosi v; jeśli taki podzbiór nie istnieje, A(i,v) :=. A(i,v) = min { a X s(a) : a X v(a) = v oraz X {a 1,...,a i } } Wartość A(i,v), i 2, można określić rekurencyjnie następująco: Jeśli wartość v(a i ) jest za duża, to nie możemy włożyć a i : A(i 1,v). możliwe elementy a 1,a 2,...,a i możliwe elementy a 1,a 2,...,a i 1, wartość v: A(i 1,v) a i dopuszczalna suma wartości v A(i 1, v) Jeśli wartość v(a i ) v, to wybieramy lepsze z rozwiązań: z lub bez a i. możliwe elementy a 1,a 2,...,a i możliwe elementy a 1,a 2,...,a i 1, wartość v: A(i 1,v) a i dopuszczalna suma wartości v A(i 1, v) możliwe elementy a 1,a 2,...,a i możliwe elementy a 1,a 2,...,a i 1, wartość v: A(i 1,v v(a i )) a i dopuszczalna suma wartości v A(i 1,v v(a i ))+s(a i )

Programowanie dynamiczne /najmniejszy rozmiar plecaka/ Dla1 i n oraz0 v V = n i=1 v(a i), niecha(i,v) oznacza najmniejszy rozmiar tego spośród wszystkich podzbiorów zbioru{a 1,...,a i }, którego wartość elementów wynosi v; jeśli taki podzbiór nie istnieje, A(i,v) :=. A(i,v) = min { a X s(a) : a X v(a) = v oraz X {a 1,...,a i } } Wartość A(i,0) = 0 dla i 1. Wartość A(1, ) można określić z definicji: { s(a 1 ) dla v(a 1 ) = v; A(1,v) = w przeciwnym wypadku. Wartość A(i,v), i 2, można określić rekurencyjnie następująco: A(i,v) = A(i 1,v) jeśli v < v(a i ); min { A(i 1,v),A(i 1,v v(a i ))+s(a i ) } w przeciwnym wypadku. Rozwiązaniem jest największe v takie, że A(n, v) S; złożoność O(nV).

Algorytm KnapsackFPTAS(X, S, ε) 1. Dla danego ε > 0, niech K = εp n. 2. Dla każdego przedmiotu a i, niech v (a i ) := v(a i) K. 3. Korzystając z programowania dynamicznego, znajdź najwartościowszy zbiór C dla problemu plecakowego z wartościami v (a i ). 4. return C. Idea rozwiązania Gdyby zyski odpowiadające przedmiotom były małe, tzn. ograniczone były przez wielomianową funkcję rozmiaru n, to algorytm oparty na programowaniu dynamicznym byłby algorytmem wielomianowym. Ignorujemy zatem końcowe bity liczbv(a i ), a liczba ignorowanych bitów zależy od ε. Dzięki temu rozmiar nowych wartości jest wielomianowy ze względu na n i 1/ε, a znalezione rozwiązanie w czasie wielomianowym ze względu na n i 1/ε jest o wartości co najmniej (1 ε) OPT. Zauważmy, że jeśli dla jakiegoś elementu a X zachodzi s(a) > S, wówczas element ten nie może tworzyć rozwiązania optymalnego, a zatem możemy założyć, że dla każdego elementu a X zachodzi s(a) S, a w konsekwencji OPT P = max a X v(a).

Lemat 9.1. Zachodzi zysk(c) = a Cv(a) (1 ε) OPT. Dowód. Niech C OPT będzie optymalnym zbiorem przedmiotów dla problemu plecakowego z wartościami v(a i ). Zauważmy, że K v(a) K v(a) K v(a) K v (a), a zatem K v (a) v(a) K. W konsekwencji K v (a) v(a) C OPT K v(a) nk a C OPT a C OPT a C OPT co implikuje, że zysk(c) = a Cv(a) K a C v (a) K a C OPT v (a) a C OPT v(a) nk = OPT εp (1 ε) OPT, gdzie ostatnia nierówność wynika z tego, że OPT P. Twierdzenie 9.2. [Ibarra, Kim 1975] Algorytm KnapsackFPTAS jest w pełni wielomianowym schematem aproksymacyjnym dla problemu plecakowego. Dowód. Z lematu 9.1 wynika, że rozwiązanie znajdowane przez algorytm jest odpowiedniej wartości. Algorytm działa w czasie O(n 2 P K ) = O(n2 n ε ), czyli w czasie wielomianowym ze względu na n i 1/ε.

9.2 Problem sumy zbioru Problem. Dla danego zbioru S = {x 1,...,x n } liczb naturalnych i całkowitej liczby t znaleźć podzbiór zbioru S o jak największej sumie nie przekraczającej t. Problem sumy zbioru może być zredukowany do problemu pakowania plecaka. Wartośćv(a i ) przedmiotua i oraz jego rozmiars(a i ) ustalone zostają jakox i. Ograniczeniem na rozmiar S plecaka jest t. Optymalne rozwiązanie tak sformułowanego problemu plecakowego stanowi optymalne rozwiązanie problemu sumy zbioru Problem sumy zbioru jest problemem NP-trudnym. NP-trudność sumy zbioru nie wynika z NP-trudności problemu plecakowego, gdyż powyższa redukcja redukuje problem sumy zbioru do problemu plecakowego, a nie na odwrót. A zatem to NP-trudność problemu plecakowego wynika z NP-trudności sumy zbioru. Na mocy powyżej redukcji możemy zastosować schemat aproksymacyjny dla problemu plecakowego.

9.3 Problem sumy zbioru [2] Idea FPTAS oparta jest na konstruowaniu przybliżonych sum częściowych, Dla danej listy L oraz liczby x, lista L x jest listą powstałą przez dodanie do każdego elementu listy L liczby x. Scal(L,L ) scala dwie posortowane listy w czasieθ( L + L ) w posortowaną listę długości L + L i usuwa powtórzenia. Algorytm ExactSubsetSum 1.L 0 := {0}; 2. for i := 1 to n do aaa L i := Scal(L i 1,L i 1 x i ); aaa usuń z listy L i elementy większe od t; 3. return maxl n. Zauważmy, że rozmiar listy L n może wynieść 2 n. Zatem czas działania algorytmu jest w ogólnym przypadku wykładniczy, chociaż w szczególnych przypadkach wielomianowy: np. gdy t lub wszystkie elementy zbioru S są wielomianowe ze względu na n. Poprawność algorytmu wynika bezpośrednio z konstrukcji, tj. łatwo zauważyć, że zachodzi L i P i, gdzie P i jest zbiorem wszystkich możliwych sum podzbiorów zbioru {x 1,...,x i }.

FPTAS dla problemu sumy zbioru opiera się na skracaniu listy przez ustalony parametr δ, tj. usuwaniu elementów z listy tak, aby w otrzymanej liście dla każdego usuniętego y istniało jego tzw. δ-przybliżenie. Definicja. Dla dwóch dodatnich liczb rzeczywistych y i z mówimy, że z jest δ-przybliżeniem y, jeśli (1 δ) y z y (równoważne: z y oraz y z y δ). Niech L = {y 1,...,y m } będzie posortowaną listą, a δ zadanym parametrem. Poniższa procedura Trim(L, δ) usuwa z listy L kolejne elementy, które mogą być δ-przybliżone przez pozostałe. Procedura Trim(L,δ) 1.L out := {y 1 }; 2.tmp := y 1 ; 3. for i := 2 to m do aaa if (tmp < (1 δ) y i ) then aaaaaaaaa dołącz y i na koniec L out ; aaaaaaaaa tmp := y i ; 4. return L out.

Rozważmy teraz zmodyfikowany algorytm ExactSubsetSum. Algorytm SubsetSumFPTAS Zakładamy, że zbiór S = {x 1,x 2,...,x n } jest posortowany. 1.δ := ε n ; L 0 := {0}; 2. for i := 1 to n do aaa E i := Scal(L i 1,L i 1 x i ); aaa L i := Trim(E i,δ); aaa usuń z listy L i elementy większe od t; 3. return maxl n. Twierdzenie 9.3. [???] Algorytm SubsetSumFPTAS jest w pełni wielomianowym schematem aproksymacyjnym dla problemu sumy zbioru.

Dowód. Niech P i będzie zbiorem wszystkich możliwych sum podzbiorów zbioru {x 1,...,x i }. Zauważmy, że z definicji listy L i zachodzi L i P i. Zatem wartość zwracana w kroku 3 jest sumą pewnego podzbioru zbioru S. Pozostaje pokazać, że (1 ε) OPT max L n, tzn. że zwracane rozwiązanie jest dostatecznie bliskie optymalnego, oraz że czas działania jest wielomianowy ze względu na n, logt oraz 1/ε. Jeśli y E i oraz y t, to istnieje z L i takie, że (1 δ) y z y. Zatem dla każdego y P i takiego, że y t, istnieje z L i takie, że (1 δ) i y z y. Niech zatem OPT t będzie optymalnym rozwiązaniem problemu sumy zbioru. Z powyższej zależności otrzymujemy, że istnieje z L n takie, że (1 ε/n) n OPT z OPT. Ponieważ dla funkcjif(x) = (1 ε/x) x zachodzif (x) > 0, funkcja(1 ε/n) n rośnie wraz z n, a zatem dla n 1 mamy (1 ε) (1 ε/n) n, a stąd (1 ε) OPT z OPT. Złożoność czasowa jest rzędu O( n2 logt ε ), ponieważ zachodzi L i nlnt ε.

9.4 Największy zbiór niezależny w grafach UD Definicja. Mówimy, że graf G = (V,E) jest unit disk grafem, ozn. UDG, wtedy i tylko wtedy, kiedy istnieje odwzorowanie g: V R 2, zwane reprezentacją geometryczną, takie, że {u,v} E dist E (g(u),g(v)) 2. Znaczna część prac dotyczących problemów optymalizacyjnych w grafach UDG dotyczy przypadku, kiedy dana jest reprezentacja geometryczna. Jednakże sam problem wyznaczenia reprezentacji geometrycznej danego grafu UDG jest problemem NP-trudnym [Breu, Kirkpatrick 1998], a tym samym wariant problemu, w którym graf UDG zadany jest bez reprezentacji, różni się zasadniczo od tego, w którym jest ona dana. Przypomnijmy, że podzbiór S V grafu G = (V,E) jest zbiorem niezależnym wtedy i tylko wtedy, gdy żadne dwa wierzchołki z S nie są sąsiednie w G. Problem. Dla danego grafu UDG wyznaczyć największy zbiór niezależny.

9.4 Największy zbiór niezależny w grafach UD Twierdzenie 9.4. [Nieberg al. 03] Istnieje PTAS rozwiązujący problem największego zbioru niezależnego w grafach UD bez danej reprezentacji na płaszczyźnie. N r (v) = {w V : dist G (v,u) r} I r największy zbiór niezależny w G[N r (v)] v I 1 < (1 ε) I 2 I 2 < (1 ε) I 3 I r (1 ε) I r+1, r = const(ε) graf G I := (1 ε)-przybliżenie OPT w G[V \N r+1 (v)] Rozwiązanie: I = I r I

9.4 Największy zbiór niezależny w grafach UD Twierdzenie 9.4. [Nieberg al. 03] Istnieje PTAS rozwiązujący problem największego zbioru niezależnego w grafach UD bez danej reprezentacji na płaszczyźnie. N r (v) = {w V : dist G (v,u) r} I r największy zbiór niezależny w G[N r (v)] v I 1 < (1 ε) I 2 I 2 < (1 ε) I 3 I r (1 ε) I r+1, r = const(ε) N r N r+1 G\N r+1 N 1 N 2 graf G I := (1 ε)-przybliżenie OPT w G[V \N r+1 (v)] Rozwiązanie: I = I r I

9.4 Największy zbiór niezależny w grafach UD Twierdzenie 9.4. [Nieberg al. 03] Istnieje PTAS rozwiązujący problem największego zbioru niezależnego w grafach UD bez danej reprezentacji na płaszczyźnie. N r (v) = {w V : dist G (v,u) r} I r największy zbiór niezależny w G[N r (v)] v I 1 < (1 ε) I 2 I 2 < (1 ε) I 3 I r (1 ε) I r+1, r = const(ε) N r N r+1 G\N r+1 N 1 N 2 graf G I := (1 ε)-przybliżenie OPT w G[V \N r+1 (v)] Rozwiązanie: I = I r I

9.4 Największy zbiór niezależny w grafach UD Twierdzenie 9.4. [Nieberg al. 03] Istnieje PTAS rozwiązujący problem największego zbioru niezależnego w grafach UD bez danej reprezentacji na płaszczyźnie. OPT OPT(G[N r+1 ])+OPT(G[V \N r+1 ]) N r (v) = {w V : dist G (v,u) r} I r+1 + 1 1 ε I I r największy 1 zbiór niezależny w G[N r (v)] 1 ε I r + 1 1 ε I I 1 < = (1 ε) I 1 I, 2 a I zatem 2 < (1 ε) I (1 ε) OPT 3 I. I r (1 ε) I r+1, r = const(ε) N r+1 G\N r+1 v graf G I := (1 ε)-przybliżenie OPT w G[V \N r+1 (v)] Rozwiązanie: I = I r I