Algorytmy aproksymacyjne dla problemów stochastycznych

Podobne dokumenty
Algorytmy aproksymacyjne dla problemów stochastycznych

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

Algorytmy aproksymacyjne dla problemów stochastycznych

Algorytmy aproksymacyjne dla problemów stochastycznych

Algorytmika Problemów Trudnych

Sprzedaż online. Piotr Sankowski Uniwersytet Warszawski Warszawa p. 1/40

Programowanie liniowe

Algorytmiczna teoria grafów

Metody teorii gier. ALP520 - Wykład z Algorytmów Probabilistycznych p.2

Matematyka dyskretna

Algorytmy aproksymacyjne i parametryzowane

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

Algebrą nazywamy strukturę A = (A, {F i : i I }), gdzie A jest zbiorem zwanym uniwersum algebry, zaś F i : A F i

Metody Programowania

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Suma dwóch grafów. Zespolenie dwóch grafów

Sieć (graf skierowany)

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

Algorytm simplex i dualność

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

Drzewa. Jeżeli graf G jest lasem, który ma n wierzchołków i k składowych, to G ma n k krawędzi. Własności drzew

Wykład 9: Markov Chain Monte Carlo

Instytut Informatyki Uniwersytet Wrocławski. Dane w sieciach. (i inne historie) Marcin Bieńkowski

Matematyczne Podstawy Informatyki

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

Przykłady problemów optymalizacyjnych

MATEMATYKA DYSKRETNA - MATERIAŁY DO WYKŁADU GRAFY

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

Minimalne drzewa rozpinające

Metody Rozmyte i Algorytmy Ewolucyjne

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

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

A i. i=1. i=1. i=1. i=1. W dalszej części skryptu będziemy mieli najczęściej do czynienia z miarami określonymi na rodzinach, które są σ - algebrami.

Wstęp do sieci neuronowych, wykład 11 Łańcuchy Markova

dla t ściślejsze ograniczenie na prawdopodobieństwo otrzymujemy przyjmując k = 1, zaś dla t > t ściślejsze ograniczenie otrzymujemy przyjmując k = 2.

Zad. 1 Zad. 2 Zad. 3 Zad. 4 Zad. 5 SUMA

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

Harmonogramowanie przedsięwzięć

Sortowanie topologiczne skierowanych grafów acyklicznych

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

Dualność w programowaniu liniowym

Wykłady z Matematyki Dyskretnej

Problem straŝaka w drzewach. Agnieszka Skorupka Matematyka Stosowana FTiMS

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

Programowanie dynamiczne i algorytmy zachłanne

Drzewa decyzyjne i lasy losowe

Wstęp do sieci neuronowych, wykład 12 Wykorzystanie sieci rekurencyjnych w optymalizacji grafowej

Problemy Decyzyjne dla Systemów Nieskończonych

Wykład 21 Funkcje mierzalne. Kostrukcja i własności całki wzglȩdem miary przeliczalnie addytywnej

Wykład 4. Droga i cykl Eulera i Hamiltona

Weryfikacja hipotez statystycznych. KG (CC) Statystyka 26 V / 1

Elementy teorii grafów Elementy teorii grafów

3. Macierze i Układy Równań Liniowych

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

SPÓJNOŚĆ. ,...v k. }, E={v 1. v k. i v k. ,...,v k-1. }. Wierzchołki v 1. v 2. to końce ścieżki.

F t+ := s>t. F s = F t.

Iteracyjne rozwiązywanie równań

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Przestrzenie wektorowe

02DRAP - Aksjomatyczna definicja prawdopodobieństwa, zasada w-w

1 Wykład 3 Generatory liczb losowych o dowolnych rozkładach.

Przestrzenie liniowe

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

Algorytmy i Struktury Danych, 9. ćwiczenia

Algorytmy wyznaczania centralności w sieci Szymon Szylko

Układy liniowo niezależne

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

Graf. Definicja marca / 1

Matematyka dyskretna. Andrzej Łachwa, UJ, /15

Stopę zbieżności ciagu zmiennych losowych a n, takiego, że E (a n ) < oznaczamy jako a n = o p (1) prawdopodobieństwa szybciej niż n α.

Wybrane podstawowe rodzaje algorytmów

Modelowanie motywów łańcuchami Markowa wyższego rzędu

Matematyka dyskretna

System BCD z κ. Adam Slaski na podstawie wykładów, notatek i uwag Pawła Urzyczyna. Semestr letni 2009/10

Digraf. 13 maja 2017

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

Wstęp do Rachunku Prawdopodobieństwa, IIr. WMS

TEORETYCZNE PODSTAWY INFORMATYKI

Teoretyczne podstawy programowania liniowego

Opracowanie prof. J. Domsta 1

Programowanie liniowe

Przekształcenia liniowe

51. Wykorzystywanie sumy, iloczynu i różnicy zdarzeń do obliczania prawdopodobieństw zdarzeń.

Metody Numeryczne Wykład 4 Wykład 5. Interpolacja wielomianowa

Lista 0. Kamil Matuszewski 1 marca 2016

Wielokryteriowa optymalizacja liniowa

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane.

Lista 4. Kamil Matuszewski 22 marca 2016

Metody numeryczne w przykładach

Zadania z egzaminów z Algorytmiki

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

Weryfikacja hipotez statystycznych

Kolorowanie wierzchołków

(4) x (y z) = (x y) (x z), x (y z) = (x y) (x z), (3) x (x y) = x, x (x y) = x, (2) x 0 = x, x 1 = x

Droga i cykl Eulera Przykłady zastosowania drogi i cyku Eulera Droga i cykl Hamiltona. Wykład 4. Droga i cykl Eulera i Hamiltona

Rachunek podziałów i elementy teorii grafów będą stosowane w procedurach redukcji argumentów i dekompozycji funkcji boolowskich.

Metody Optymalizacji: Przeszukiwanie z listą tabu

Algorytmy grafowe. Wykład 1 Podstawy teorii grafów Reprezentacje grafów. Tomasz Tyksiński CDV

Wielokryteriowa optymalizacja liniowa cz.2

Transkrypt:

Algorytmy aproksymacyjne dla problemów stochastycznych Marcin Mucha Uniwersytet Warszawski Warszawa 29.04.2011 - p. 1/44

Plan - Wykład II Boosted sampling: drzewo Steinera, problemy addytywne: lokalizacja Fabryk, las Steinera. Metoda prymalnodualna: pokrycie wierzchołkowe. - p. 2/44

Boosted sampling Technika boosted sampling została zaproponowana przez Gupta e, Pál a, Ravi ego i Sinha e 04. Technika może zostać użyta do problemów addytywnych dla których istnieje aproksymacyjny algorytm deterministyczny spełniajacy pewne założenia o podziale kosztów. - p. 3/44

Stochastyczne drzewo Steinera Rozważać będziemy stochastyczny problem ukorzenionego drzewa Steinra, w którym: mamy dany graf G = (V, E) z zadanym korzeniu r, oraz rozkład prawdopodobieństwa na zbiorach terminali, możemy wykupić krawędzie w 1 wszym etapie płacac c e, badź po zrealizowaniu zbioru terminali A płacac ce A. Naszym celem jest połaczenie terminali z korzeniem. - p. 4/44

Stochastyczne drzewo Steinera Nie jest znany żaden algorytm zaakraglajacy dla tego problemu. Będziemy zakładać, że ce A całkowitego λ. = λc e, dla Co więcej zakładamy, że G jest pełny i metryczny. W przeciwnym przypadku możemy najpierw policzyć najkrótsze ścieżki między wszystkimi parami wierzchołków. - p. 5/44

Boosted sampling Algorytm boosted sampling jest bardzo prosty: 1. wylosuj λ próbek A 1,..., A λ możliwych scenariuszy, 2. rozwiazaniem dla 1 ego etapu będzie minimalne drzewo Steinera Alg I dla wierzchołków z S = i A i, 3. podłacz zrealizowany zbiór klientów T przy pomocy minimalnego drzewa rozpinajacego w G ze ściagniętym Alg I do wierzchołka. - p. 6/44

Boosted sampling Algorytm boosted sampling jest bardzo prosty: 1. wylosuj λ próbek A 1,..., A λ możliwych scenariuszy, 2. rozwiazaniem dla 1 ego etapu będzie minimalne drzewo rozpinajace Alg I dla wierzchołków z S = i A i, 3. podłacz zrealizowany zbiór klientów T przy pomocy minimalnego drzewa rozpinajacego w G ze ściagniętym Alg I do wierzchołka. Minimalne drzewo rozpinaj ace jest 2 przybliżone względem drzewa Steinera. - p. 7/44

Boosted sampling Przejdźmy do analizy kosztu algorytmu. Dla zbioru F niech c(f) oznacza całkowity koszt e F c e. Niech Z będzie optymalnym kosztem algorytmu 2-etapowego. Z = c(opt I )+E T V [λc(opt II (T))], gdzie Opt I i Opt II to decyzje algorytmu optymalnego. - p. 8/44

Boosted sampling Zastanówmy się ile kosztuje połaczenie wierzchołków w S. Możemy je połaczyć używajac Opt I + λ i=1 Opt II (A i ). Ponieważ każde A i jest wygenerowane zgodnie z rozkładem, możemy zapisać wartość oczekiwana tego kosztu jako: c(opt I )+λe T V [c(opt II (T))], Ponieważ używamy algorytmu 2-aprosksymacyjnego to nasz koszt w 1 wszym etapie wynosi 2Z. - p. 9/44

Boosted sampling Zajmijmy się teraz oszacowaniem kosztu drugiego etapu. Rozważmy minimalne drzewo rozpinajace dla S T. Skierujmy wszystkie krawędzie w tym drzewie do r. Dla każdego wierzchołka j niech e(j) będzie pierwsza krawędzia na ścieżce do korzenia (tzn. ścieżka do następnego wierzchołka). - p. 10/44

Boosted sampling Przypiszmy c(e(j))/2 do każdego wierzchołka j S T {r}. Całkowity przypisany w ten sposób koszt to połowa kosztu minimalnego drzewa rozpinajacego. Z drugiej strony koszt ten jest nie większy niż koszt optymalnego drzewa Steinera dla S T. - p. 11/44

Boosted sampling Algorytm w 2 gim etapie konstruuje drzewo Steinera dla T λ i=1 A i. Zauważmy, że między tymi λ+1 zbiorami jest pełna symetria. Możemy je wygenerować najpierw losuj ac λ+1 zbiorów a następnie wybrać losowo z rozkładem jednostajnym jeden aby był T. - p. 12/44

Boosted sampling Możemy teraz spojrzeć na całkowity koszt drzewa jako na sumę kosztów c(e(j)) dla wierzchołków wybranych w tych λ+1 drzewach. Niektóre wierzchołki moga być wybrane więcej niż raz i wtedy przypisujemy c(e(j)) do jednego z nich wybranego losowo. Możemy teraz zauważyć, że ze względu na losowy wybór T: j T S E[c(e(j))] 1 λ+1 j S T E[c(e(j))]. - p. 13/44

Boosted sampling Rozważmy teraz drzewo Steinera T dla T S uformowane przez krawędzie: Opt I Opt II λ i=1 Opt II (A i ). Z podobnych powodów co poprzednio otrzymujemy: E[c(T )] c(opt I )+(λ+1)e[c(opt II (T))] λ+1 λ Z. Tak więc optymalne drzewo Steinera na S T kosztuje nie więcej niż λ+1 λ Z. - p. 14/44

Boosted sampling Oczekiwany koszt 2 iego etapu wynosi: [ ] [ 1 E c(e(j)) E λ+1 j S T j T S c(e(j)) ] 2 2 E[c(T )] λ+1 λ+1 λ+1 λ Z = 2Z λ. Całkowity koszt algorytmu wynosi, więc 2Z + λ 2Z λ = 4Z. - p. 15/44

Boosted sampling Theorem 1 (Gupta, Pál, Ravi i Sinha 04) Algorytm boosted sampling jest 4-aproksymacyjnym algorytmem dla 2-etapowego problemu drzewa Steinera w modelu czarnej skrzynki. Idea tego algorytmu jest próbkowanie każdego scenariusza z prawdopodobieństwem λp A, po to aby wziać pod uwagę przyszły wzrost kosztów. Zaskakuj ace jest jednak to, że w tym celu potrzeba tylko λ próbek. - p. 16/44

Problemy addytywne Technika boosted sampling może zostać zastosowana do szerszej gamy problemów. Niech U będzie uniwersum żadań, oraz niech X będzie zbiorem elementów które możemy zakupić. Niech tak jak poprzednio c(f) dla F X oznacza sumaryczny koszt elementów w F. Niech Sol(S) 2 X oznacza zbór możliwych rozwiazań dla S. - p. 17/44

Problemy addytywne W przypadku deterministycznym naszym zadaniem jest dla danego S wybrać element Sol(S) o minimalnym koszcie; niech OPT(S) oznacza koszt tego optymalnego rozwiazania. Powiemy, że problem jest addytywny jeżeli dla dwóch danym zbiorów żadań S i S oraz rozwiazania dla nich F i F zbór S S definiuje poprawny zbiór żadań oraz F F jest dla niego poprawnym rozwiazaniem. - p. 18/44

Problemy addytywne W przypadku stochastycznego addytywnego problemu 2-etapowego: mamy dany rozkład prawdopodobieństwa na zbiorach żadań, możemy w 1 wszym etapie kupić elementy e X w cenie c e, po zrealizowaniu się scenariusza możemy wykupić elementy e X w cenie λc e. - p. 19/44

Problemy addytywne Powiemy, że α-aproksymacyjny algorytm A pozwala na β-ścisły mechanizm dzielenia kosztów jeżeli istnieje funkcja ξ : 2 U U R + taka, że dla każdego S, T U, S T = : ξ(s, u) = 0 dla u / S, u S ξ(s, u) c(opt(s)), istnieje procedura Aug A, która rozszerza rozwiazaniea(s) do rozwiazania z Sol(S T) generujac koszt c(aug A (S, T)) β u T ξ(s T, u). - p. 20/44

Problemy addytywne Łatwo jest zauważyć, że w przypadku drzewa Steinera minimalne drzewo rozpinajace pozwala na β-ścisły mechanizm dzielenia kosztów. Minimalne drzewo rozpinajace jest 2 przybliżone a więc α = 2. Koszty c(e(j))/2 jakie zdefiniowaliśmy dla drzewa daja mechanizm dla β = 2. - p. 21/44

Problemy addytywne Algorytm boosted sampling dla problemów addytywnych: 1. wylosuj λ próbek D 1,..., D λ możliwych scenariuszy, niech D = i D i, 2. używajac algorytmuaskonstruuj α-aproksymacyjne rozwiazanie pierwszego stopnia F 0 Sol(D), 3. podłacz zrealizowany zbiór klientów S używajac procedury Aug A. - p. 22/44

Problemy addytywne Theorem 2 (Gupta, Pál, Ravi i Sinha 04) Algorytm boosted sampling jest (α+ β)-aproksymacyjnym algorytmem dla 2-etapowych problemów addytywnych w modelu czarnej skrzynki. Dowód tego twierdzenia przeprowadzimy w analogiczny sposób jak to miało miejsce w przypadku drzewa Steinera. - p. 23/44

Problemy addytywne Niech F0 będzie rozwiazaniem optymalnym dla 1 ego etapu, oraz niech FS będzie rozwi azaniem optymalnym dla zrealizowanego zbioru żadań S w drugim etapie. Koszt optymalnego rozwiazania wynosi: Z = c(f 0)+ S p S λc(f S). Zdefiniujmy Z 0 = c(f 0 ) oraz Z r = S p S λc(f S ). - p. 24/44

Problemy addytywne Zdefiniujmy ˆF 1 = F0 F D 1 FD 2... FD λ. Jest to poprawne rozwiazanie dla D i: E D [c( ˆF 1 )] c(f 0)+E D [ = c(f 0)+ λ i=1 λ i=1 E Di [c(f D i )] = c(f D i ) = = c(f0)+λ p S c(fs) = Z. S Ponieważ używamy algorytmy α-aproksymacyjnego to c(f 0 ) αc( ˆF 1 ) αz. - p. 25/44

Problemy addytywne Zajmijmy się teraz drugim etapem. Niech S będzie zrealizowanym zbiorem żadań, oraz niech F S będzie wynikiem działania Aug A takim, że F 0 F S Sol(S). Potrzebujemy ograniczyć oczekiwany koszt λe[c(f S )]. Z istnienia β-ścisłej funkcji ξ wynika, że c(f S ) βξ(d S, S D). - p. 26/44

Problemy addytywne Wylosujmy λ+1 zbiorów ˆD 1,..., ˆD σ+1 zgodnie z rozkładem. Wybierzmy K z rozkładem jednostajnym z {1, 2,..., σ+1} i zdefinujmy: S = ˆD K oraz D = ˆD i. i =K Ten proces losowania jest zbiorów daje ten sam wynik, co wybór zbiorów w algorytmie, ponieważ każdy zbiór wybrany jest w sposób niezależny. - p. 27/44

Problemy addytywne Zdefiniujmy ˆD jako sumę wszystkich ˆD i oraz ˆD i jako sumę l =i ˆD l. Z własności funkcji ξ otrzymujemy: λ+1 i=1 ξ( ˆD, ˆD i ˆD i ) c(opt( ˆD)). Ponieważ K jest wybrane losowo to: E K [ξ( ˆD, ˆD K ˆD K )] 1 λ+1 c(opt( ˆD)). - p. 28/44

Problemy addytywne Ponieważ ten dwa procesy generowania zbiorów sa identyczne to: E D,S [ξ(d S, S D)] = E ˆD,K [ξ( ˆD, ˆD K ˆD K )] 1 λ+1 E ˆD [c(opt( ˆD))]. Aby zakończyć dowód pokażemy ograniczenie: E ˆD [c(opt( ˆD))] λ+1 λ Z. - p. 29/44

Problemy addytywne Poprawne rozwiazanie do ˆD może być ze względu na addytywność otrzymane jako: Mamy więc: ˆF 2 = F 0 F ˆD 1 F ˆD 2... F ˆD λ+1. E ˆD [c(opt( ˆD))] c(f 0)+ λ+1 i=1 E ˆD i [c(f ˆD i )] Z 0 +(λ+1) Z r λ λ+1 λ (Z 0 + Z r) = λ+1 λ Z. - p. 30/44

Problemy addytywne Otrzymaliśmy więc nierówność: E D,S [ξ(d S, S D)] λ+1 λ Z. Ponieważ nasz algorytm Aug A jest β-ścisły to: E S [c(f S )] βe D,S [ξ(d S, S D)] β λ Z. Ponieważ w 2 gim etapie płacimy λ razy więcej to nasz koszt wynosi βz. Sumaryczny koszt wynosi więc (α+ β)z. - p. 31/44

Problemy addytywne Theorem 3 (Pál i Tardos 03, Mettu i Plaxton 00) Istnieje 3-aproksymacyjny 5.45-ścisły algorytm dla problemu lokalizacji fabryk. Corollary 4 Istnieje 8.45-aproksymacyjny algorytm dla sotchastycznego problemu lokalizacji fabryk w modelu czarnej skrzynki. - p. 32/44

Pokrycie wierzchołkowe Theorem 5 (Gupta, Pál, Ravi i Sinha 04) Istnieje 2-aproksymacyjny 6-ścisły algorytm dla problemu pokrycia wierzchołkowego. Corollary 6 Istnieje 8-aproksymacyjny algorytm dla sotchastycznego problemu pokrycia wierzchołkowego w modelu czarnej skrzynki. - p. 33/44

Las Steinera Theorem 7 (Gupta, Kumar, Pál i Roughgarden 03) Istnieje 2-aproksymacyjny 3-ścisły algorytm dla problemu lasu Steinera. Corollary 8 Istnieje 5-aproksymacyjny algorytm dla sotchastycznego problemu lasu Steinera w modelu czarnej skrzynki. - p. 34/44

Metoda prymalnodualna Primal Dual min c T x max y T b Ax b y T A c T x 0 y 0 Theorem 9 (Słaba dualność) Dla dowolnej pary rozwiązań (x, y), mamy y T b c T x. Theorem 10 (Silna dualność) Jeżeli istnieje jedno rozwiązania optymalne to istnieje drugie i (y ) T b = c T x. - p. 35/44

Metoda prymalnodualna Rozważmy problem pokrycia wierzchołkowego w grafie G = (V, E). Możemy dla niego zapisać relaksacje programu liniowego: min v V c v x v, v e x v 1 e E, x v 0 v V. - p. 36/44

Metoda prymalnodualna Program dualny ma postać: e δ(v) max e E y e, y e c v v V, y e 0 e E. Jeżeli uda nam się ograniczyć v x v przez ρ e y e to: v x v ρ e y e ρvc LP OPT ρvc OPT. - p. 37/44

Metoda prymalnodualna W metodzie prymalnodualnej zaczynamy od x = 0 i y = 0. Zwiększamy powoli y eki aż jakaś nierówność jest spełniona z równościa. Dla tej spełnionej nierówności zwiększamy wartość x. Można rozumieć ten schemat jako kupowanie x ów za y ki. - p. 38/44

Metoda prymalnodualna Algorytm: zainicjalizuj x = 0, y =, dopóki E = wybierz dowolny niepusty zbiór E, podnieś y e dla każdego e E do osiagnięcia jakiejś równości, niech S będzie zbiorem wierzchołków dla równych nierówności, przypisz x v = 1 dla każdego v S oraz usuń krawędzie sasiednie z S z E. zwróć A = {v : x v = 1}. - p. 39/44

Metoda prymalnodualna Rozwiazania prymalne x jest poprawne. Każda krawędź zostanie usunięta a więc dla każdej z nich istnieje sasiedni wierzchołek o x v = 1. Rozwiazanie dualne y jest poprawne. Żadne ograniczenie nie jest przekroczone, bo w momencie otrzymania równości usuwamy krawędzie należace do tego ograniczenia. - p. 40/44

Metoda prymalnodualna Mamy teraz: c T x = v A c v = v A ( e δ(v) y e ) = Jak ustaliliśmy c v to mieliśmy równość. ( ) = e E v A e 1 y e 2 e y e. Ostatnia nierówność wynika z tego, że krawędź ma dwa końce. - p. 41/44

Metoda prymalnodualna Ćwiczenie... Uogólnić t a metodę do stochastycznego pokrycia wierzchołkami w modelu wielomianowym. - p. 42/44

Metoda prymalnodualna Rozważmy problem pokrycia wierzchołkowego w grafie G = (V, E). Możemy dla niego zapisać relaksacje programu liniowego: min v V c v x v + k p k v V c k vx k,v, v e x v + v e x k,v 1 k, e E k, x v, x k,v 0 k, v V. - p. 43/44

Metoda prymalnodualna Program dualny ma postać: max k y k,e, e E k y k,e p k c k v k, v V, e δ(v),e E k k y k,e c v v V, e δ(v),e E k y k,e 0 k, e E k. - p. 44/44