• Nie Znaleziono Wyników

Algorytmika Problemów Trudnych Wykªad 11

N/A
N/A
Protected

Academic year: 2021

Share "Algorytmika Problemów Trudnych Wykªad 11"

Copied!
23
0
0

Pełen tekst

(1)

Algorytmika Problemów Trudnych

Wykªad 11 Tomasz Krawczyk

krawczyk@tcs.uj.edu.pl

Kraków, semestr letni 2020/21

(2)

plan wykªadu

I Programowanie Liniowe.

I Nierówno±ci Chernoa.

I Rutowanie pakietów w sieciach.

I Wa»ony SAT.

(3)

Programowanie Liniowe

Zadanie Programowania Liniowego deniujemy nast¦puj¡co:

zminimalizuj: P

n j=1

c

j

x

j

przy warunkach: P

nj=1

a

ij

x

j

≥ b

i

i = 1, . . . , m

x

j

≥ 0 j = 1, . . . , n.

(4)

nierówno±¢ Chernoa dla sumy prób Poissona

Twierdzenie

Niech X

1

, . . . , X

n

b¦d¡ niezale»nymi próbami Poissona takimi, »e P(X

i

= 1) = p

i

. Niech X = P

ni=1

X

i

i niech µ = E[X ]. Wtedy, prawdziwe s¡ nast¦puj¡ce nierówno±ci

(1) dla dowolnego δ > 0

P(X ≥ (1 + δ)µ) 6

 e

δ

( 1 + δ)

(1+δ)



µ

,

(2) dla 0 < δ 6 1

P(X ≥ (1 + δ)µ) 6 e

−µδ2/3

, (3) dla R ≥ 6µ

P(X ≥ R) 6 2

R

.

Nierówno±ci te zwane s¡ nierówno±ciami Chernoa dla prób Poissona.

(5)

nierówno±¢ Chernoa dla sumy prób Poissona

Twierdzenie

Niech X

1

, . . . , X

n

b¦d¡ niezale»nymi próbami Poissona takimi, »e P(X

i

= 1) = p

i

. Niech X = P

ni=1

X

i

i niech µ = E[X ]. Wtedy, dla 0 < δ 6 1 prawdziwe s¡

nast¦puj¡ce nierówno±ci:

(4)

P(X 6 (1 − δ)µ) 6

 e

−δ

( 1 − δ)

(1−δ)



µ

,

(5)

P(X 6 (1 − δ)µ) 6 e

−µδ2/2

. Nierówno±ci te zwane s¡ nierówno±ciami Chernoa dla prób Poissona.

Wniosek: Dla 0 < δ < 1 mamy

P(|X − µ| ≥ δµ) 6 2e

−µδ2/3

.

(6)

LP-rounding - schemat

Schemat algorytmów probabilistycznych opartych na (losowym) zaokr¡glaniu rozwi¡za« LP:

I Wyra¹ problem za pomoc¡ problemu programowania liniowego, caªkowitoliczbowego (zazwyczaj NPC).

I Rozwi¡» problem wielomianowo dopuszczaj¡c rozwi¡zania b¦d¡ce liczbami rzeczywistymi (wielomianowo).

I Zaokr¡glij (losowo) rozwi¡zanie rzeczywiste do rozwi¡zania

caªkowitoliczbowego i udowodnij, »e nie jest du»o gorsze od

optymalnego.

(7)

rutowanie - minimalizacja przeci¡»enia

I D = (V , E) - graf skierowany, {(s i , t i ) : i = 1, . . . , k} - zbiór par wierzchoªków.

I Naszym celem jest wybranie ±cie»ki p i z s i do t i dla ka»dej pary (s i , t i ) tak, aby zminimalizowa¢ warto±¢ przeci¡»enia

congestion(e) = |i : e ∈ p i |

po wszystkich kraw¦dziach sieci. ‘cie»k¦ p i wybieramy ze zbioru danych na wej±ciu ±cie»ek dopuszczalnych P i .

I Przyjmujemy P = S k i=1 P i .

(8)

randomized LP-rounding - programowanie caªkowitoliczbowe

Równowa»ny problem programowania caªkowitoliczbowego.

Warunki:

I f

p

∈ {0, 1} - dla ka»dej ±cie»ki p ∈ P

i

zmienna f

p

oznacza, czy pakiety z s

i

do t

i

przesyªamy wzdªu» ±cie»ki p,

I z ka»dego P

i

wybieramy dokªadnie jedn¡ ±cie»k¦:

X

p∈Pi

f

p

= 1 dla ka»dego i = 1, . . . , k.

I warto±¢ przeci¡»enia dla ka»dej kraw¦dzi e jest ograniczona przez C:

X

wszystkie ±cie»ki p zawieraj¡ce e

f

p

6 C dla ka»dej kraw¦dzi e.

Minimalizujemy:

I C.

Przez OPT oznaczamy optymalne rozwi¡zanie powy»szego programowania

caªkowitoliczbowego.

(9)

randomized LP-rounding - relaksacja problemu

Zezwalamy, aby zmienne f p przyjmowaªy warto±ci z przedziaªu [0, 1]. W wyniku powy»szej relaksacji otrzymujemy problem programowania liniowego.

Warunki:

I f p ∈ [ 0, 1] dla ka»dej ±cie»ki p,

I P

p∈P

i

f p = 1 dla ka»dego i = 1, . . . , k,

I P

p∈P:e∈p f p 6 C dla ka»dej kraw¦dzi e.

Funkcja celu:

I minimalizacja C.

Rozwi¡zanie programowania liniowego: C , f p . Oczywi±cie

C 6 OPT .

(10)

randomized rounding

Interpretujemy zmienne f p dla p ∈ P i jako rozkªad prawdopodobie«stwa wyboru ±cie»ki z s i do t i .

Wybieramy losowo ±cie»k¦ p i zgodnie z rozkªadem f p dla p ∈ P i , dla i = 1, . . . , k.

Chcemy wykaza¢, »e z du»ym prawdopodobie«stwem warto±¢

max e∈E | X e | , gdzie

X e = liczba wybranych ±cie»ek z kraw¦dzi¡ e

jest nie wiele wi¦ksze od C (a wi¦c tak»e od OPT ).

(11)

randomized rounding: analiza

Ustalmy kraw¦d¹ e i rozwa»my zmienn¡ losow¡ X e . Dla ka»dego i = 1, . . . , k deniujemy zmienn¡ losow¡ Y i

zdeniowan¡ nast¦puj¡co:

Y i =

 1 wybrana z P i ±cie»ka przechodzi przez e, 0 w przeciwnym przypadku.

Wtedy:

E(Y i ) = X

p∈P

i

: e∈p

f p i ostatecznie

E[X e ] = E[ X k

i=1

Y i ] = X

e∈p

f p 6 C 6 OPT .

(12)

nierówno±¢ Chernoa raz jeszcze

Twierdzenie

Niech X = P n i=1 X i , gdzie X i jest niezale»n¡ zmienn¡ losow¡

zero-jedynkow¡. Niech µ = E[X ]. Niech µ H b¦dzie takie, »e µ 6 µ H . Wtedy, dla dowolnego δ > 0,

P(X ≥ (1 + δ)µ H ) 6

 e δ

(1 + δ) ( 1+δ)

 µ

H

.

(13)

randomized rounding: analiza

Z nierówno±ci Chernoa mamy:

P(X e ≥ ( 1 + δ)OPT ) 6

 e δ

( 1 + δ) ( 1+δ)

 OPT

.

Sieci z maksymalnym przeci¡»eniem OPT = ω(log n).

Oznacza to, »e dla ka»dego q > 0 istnieje n

0

takie, »e dla ka»dej instancji wej±ciowej rozmiaru n koszt optymalny wynosi co najmniej q · log n.

Ustalmy δ > 0. Dobierzmy q tak, aby (

(1+δ)eδ(1+δ)

)

q

=

12

. Je»eli

OPT > 3 · q · log n (tak jest dla odpowiednio du»ych n), to prawa strona

powy»szej nierówno±ci b¦dzie mniejsza od n

3

. St¡d, maksymalne przeci¡»enie

po wszystkich kraw¦dziach odchyla si¦ od OPT o wi¦cej ni» (1 + δ)OPT z

prawdopodobie«stwem nie wi¦kszym ni» 1/n (sumujemy bª¦dy po wszystkich

n

2

mo»liwych kraw¦dziach w sieci).

(14)

randomized rounding: analiza

Z nierówno±ci Chernoa mamy:

P(X

e

≥ (1 + δ)OPT ) 6  e

δ

( 1 + δ)

(1+δ)



OPT

. Rozwa»my sieci z dowolnym przeci¡»eniem. Mamy wówczas:

P(X

e

≥ (1 + δ)OPT ) 6 e

δ

(1 + δ)

(1+δ)

6

 e

( 1 + δ)



(1+δ)

.

Skorzystamy z faktu, »e rozwi¡zaniem równania x

x

= n jest x =

log log ncnlog n

= γ( n) dla pewnego c

n

∈ [1, 2].

 e

( 1 + δ)



(1+δ)

=

 e 1 + δ



(1+δe )·e

=

 1 γ( n)



γ(n)·e

= 1 n

e

,

gdzie γ(n) =

log log nc log n

=

(1+δ)e

. A zatem, z prawdopodobie«stwem przynajmniej (1 −

n0.721

) nasz algorytm zwróci rozwi¡zanie ze wspóªczynnikiem aproksymacji ( 1 + δ) = O 

log n log log n

.

(15)

rozwi¡zanie x x = n

Mamy równo±¢:

x

x

= n.

Logarytmuj¡c dwukrotnie stronami otrzymujemy:

x log x = log n (1) oraz log x + log log x = log log n (2).

Dziel¡c (1) przez nierówno±¢ 2 log x ≥ log log n otrzymujemy x 6

log log n2 log n

. Mno»¡c (2) przez x otrzymujemy x log x + x log log x = x log log n, co jest równowa»ne:

log n = x(log log n − log log x) 6 x · log log n,

co implikuje x ≥

log log nlog n

.

(16)

wa»ony sat

Denicja problemu:

I Φ  zbiór m klauzul nad zmiennymi x 1 , . . . , x n , ka»da jest alternatyw¡ i-literaªów (i = 1, 2, 3, . . .),

I w i  waga i-tej klauzuli,

I chcemy znale¹¢ warto±ciowanie, które speªni klauzule o najwi¦kszej sumarycznej wadze.

Poka»emy algorytm probabilistyczny, który w oczekiwaniu speªni klauzule o sumarycznej wadze co najmniej 3 4 OPT .

Proste, je»eli ka»da klauzula ma co najmniej dwa literaªy!

(17)

problem równowa»ny

Szukamy:

I x i ∈ { 0, 1}  wartosciowanie literaªu,

I z i ∈ { 0, 1}  warto±ciowanie i-tej klauzuli, je»eli:

I

P(i) - zbiór niezanegowanych literaªów i-tej klauzuli,

I

N(i) - zbiór zanegowanych literaªów i-tej klauzuli, to z i musi speªnia¢ równanie:

z i 6 ( X

j∈P(i)

x j ) + X

j∈N(i)

( 1 − x j ).

I chcemy zmaksymalizowa¢ P m i=1 w i z i .

Dla przykªadu: dla klauzuli z i ≡ ( x 1 ∨ x 2 ∨ x 3 ∨ ¬ x 4 ∨ ¬ x 5 ) dostajemy równanie

z i 6 x 1 + x 2 + x 3 + (1 − x 4 ) + (1 − x 5 ).

(18)

relaksacja problemu: programowanie liniowe

Maksymalizujemy:

I P m

i=1 w i z i przy warunkach:

I x i ∈ [ 0, 1], z i ∈ [ 0, 1],

I dla ka»dej klauzuli:

z i 6 ( X

j∈P(i)

x j ) + X

j∈N(i)

( 1 − x j ).

Rozwi¡zanie LP: x i , z i . Oczywi±cie y = P m

i=1 w i z i jest

ograniczeniem górnym na OPT .

(19)

algorytm

Algorytm 1:

Z prawdopodobie«stwem x i ustaw x i = 1; w.p.p. ustaw x i = 0.

(20)

pojedyncza klauzula

i ta klauzula: z i ≡ ( x 1 ∨ x 2 ∨ x 3 ∨ ¬ x 4 ∨ ¬ x 5 ) ,

Mamy równanie: z i 6 x 1 + x 2 + x 3 + ( 1 − x 4 ) + ( 1 − x 5 ) = z (mo»e by¢ nierówno±¢, gdy suma > 1).

Prawdopodobie«stwo, »e klauzula z i nie jest speªniona:

P(z i nie jest speªniona ) = (1 − x 1 )( 1 − x 2 )( 1 − x 3 )( x 4 )( x 5 ) 6 (1 − z 5 )(1 − z 5 ) . . . (1 − z 5 )

= ( 1 − z 5 ) 5 6 (1 − z

i∗

5 ) 5

Ogólnie, prawdopodobie«stwo, »e klauzula z i jest speªniona jest wi¦ksze b¡d¹ równe:

1 − (1 − z i

| z i | ) | z

i

| ,

gdzie |z i | to liczba literaªów w klauzuli z i . Liczba ta mo»e by¢

bliska 1 − 1 e < 3 4 .

(21)

algorytm - drugie podej±cie

Algorytm 2:

Rzu¢ monet¡,

I je»eli wypadª orzeª, dla ka»dego x i wylosuj warto±ciowanie z jednostajnym prawdopodobie«stwem,

I je»eli wypadªa reszka, zastosuj losowe zaokr¡glanie.

(22)

analiza algorytmu

P(z i jest speªniona) ≥ ((1 − 2

|

1

zi |

) + ( 1 − (1 − | z z

ii

| ) | z

i

| ))/ 2

= 1 − (2 −| z

i

| + ( 1 − | z z

ii

| ) | z

i

| )/ 2

≥ 3/4z i

Poka»emy, »e dla ka»dego l = 1, 2, . . . mamy f (l, x) = 1 − (2 l + ( 1 − x

l ) l )/ 2 − 3

4 x ≥ 0.

(23)

analiza algorytmu

Poka»emy, »e:

f (l, x) = 1 − (2 l + ( 1 − x

l ) l )/ 2 − 3 4 x ≥ 0.

I f 0 ( l, x) = (−l ·(1− x l ) l−1 ·(− 1 l ))/ 2− 3 4 = ( 1− x l ) l−1 / 2− 3 4 6 − 1 4

I f (1, 1) = 0,

I f (2, 1) = 0,

I f (l, 1) > 0 dla l > 2,

co ko«czy dowód.

Cytaty

Powiązane dokumenty

[r]

Zakªada si¦ przy tym, »e ze wzgl¦du na peªn¡ symetri¦, betonowy blok dziaªa z takim samym obci¡»eniem na ka»d¡ z dwóch belek...

[r]

Ogólnie, i-t¡ warstw¡ grafu G nazywamy pierwsz¡ warstw¦ grafu planarnego powstaªego z G przez usuni¦cie wierzchoªków z warstw od 1 do i −

krawczyk@tcs.uj.edu.pl Kraków, semestr letni 2020/21.. Algorytmy wykªadnicze dla SAT

Algorytm A dla problemu P jest algorytmem pseudowielomianowym je»eli czas jego dziaªania jest wielomianowy w zale»no±ci od rozmiaru wej±cia przy zaªo»eniu, »e liczby na

Nietrudno jest zauwa»y¢, »e odwzorowanie tak okre±lone jest bijekcj¡ ze zbioru wszystkich kraw¦dzi wstecznych w zbiór wszystkich trójk¡tów T dla których X T

Trasa komiwoja»era jest unormowana je»eli wchodzi i wychodzi do ka»dego kwadratu podziaªu tylko i wyª¡cznie przez przej±cia tego kwadratu.. Niestety, istniej¡ takie zbiory punktów