22.12.2013 Views

Slajdy

Slajdy

Slajdy

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Plan na dziś<br />

1. O problemie<br />

2. Algorytm aproskymacyjny<br />

3. Zastosowania<br />

4. Dodatki<br />

. – p.1/10


O problemie<br />

Definicja<br />

Ograniczenia algorytmów aproksymacyjnych<br />

Poprzednie algorytmy<br />

. – p.2/10


Algorytm - rozkady<br />

Algorytm LZ77<br />

. – p.3/10


Algorytm - rozkady<br />

Algorytm LZ77<br />

Rozkład LZ<br />

. – p.3/10


Algorytm - rozkady<br />

Algorytm LZ77<br />

Rozkład LZ<br />

Rozkład względem gramatyki<br />

. – p.3/10


Algorytm - rozkady<br />

Algorytm LZ77<br />

Rozkład LZ<br />

Rozkład względem gramatyki<br />

Ograniczenie dolne na wielkość gramatyki<br />

. – p.3/10


Algorytm - rozkady<br />

Algorytm LZ77<br />

Rozkład LZ<br />

Rozkład względem gramatyki<br />

Ograniczenie dolne na wielkość gramatyki<br />

Komentarz o kompresji<br />

. – p.3/10


Algorytm - balansowanie<br />

Gramatyki AVL<br />

. – p.4/10


Algorytm - balansowanie<br />

Gramatyki AVL<br />

Wysokość drzewa wyprowadzenia<br />

. – p.4/10


Algorytm - balansowanie<br />

Gramatyki AVL<br />

Wysokość drzewa wyprowadzenia<br />

Operacja konkatenaji gramatyk<br />

Koszt O(height(A) - height(B))<br />

. – p.4/10


Algorytm - balansowanie<br />

Gramatyki AVL<br />

Wysokość drzewa wyprowadzenia<br />

Operacja konkatenaji gramatyk<br />

Koszt O(height(A) - height(B))<br />

Rozkad czynnika LZ f i w gramatyce<br />

f i =val(S 1 )val(S 2 )...val(S t(i) ) gdzie t(i) = O(log(|f i |)<br />

. – p.4/10


Algorytm - pseudokod<br />

Construct-Grammar(w) |w| = n;<br />

1. wywoaj algorytm LZ, otrzymucjac ˛ rozkład f 1 , f 2 , ...f k<br />

2. jeśli k > n to zwróć trywialny rozkad<br />

log(n)<br />

3. w przeciwnym przypadku dla i od 1 do k wykonaj<br />

a) Niech S 1 , S 2 , ..., S t(i) będzie rozkładem czynnika f i w G<br />

b) H := Concat(S 1 ,S 2 ,..., S t(i) )<br />

c) G := Concat(G,H)<br />

4. zwróć G<br />

. – p.5/10


Algorytm - analiza<br />

Poszczególne kroki algorytmu<br />

. – p.6/10


Algorytm - analiza<br />

Poszczególne kroki algorytmu<br />

Czas dziłania Concat z ciagniem ˛ bitionicznym<br />

. – p.6/10


Algorytm - analiza<br />

Poszczególne kroki algorytmu<br />

Czas dziłania Concat z ciagniem ˛ bitionicznym<br />

Czas dziłania i stopień aproksymacji<br />

. – p.6/10


Algorytm - analiza<br />

Poszczególne kroki algorytmu<br />

Czas dziłania Concat z ciagniem ˛ bitionicznym<br />

Czas dziłania i stopień aproksymacji<br />

Czas dziłania LZ77 - przy użyciu drzew<br />

sufiksowych O(n log(|Σ|))<br />

. – p.6/10


Zastosowania<br />

Wyszukiwanie wzorca<br />

. – p.7/10


Zastosowania<br />

Wyszukiwanie wzorca<br />

Problem łańcucha<br />

. – p.7/10


Zastosowania<br />

Wyszukiwanie wzorca<br />

Problem łańcucha<br />

Modyfikacja złożoności Komogorowa<br />

. – p.7/10


Dodatki<br />

Algorytmy globalne (re-pair)<br />

. – p.8/10


Dodatki<br />

Algorytmy globalne (re-pair)<br />

Blisko optymalnoci<br />

. – p.8/10


Dodatki<br />

Algorytmy globalne (re-pair)<br />

Blisko optymalnoci<br />

Niech σ = x k 1<br />

|...|x k q<br />

, przy czym k 1 jest największe z k i<br />

. – p.8/10


Dodatki<br />

Algorytmy globalne (re-pair)<br />

Blisko optymalnoci<br />

Niech σ = x k 1<br />

|...|x k q<br />

, przy czym k 1 jest największe z k i<br />

Rozkład LZ<br />

λ = x(1, 1)(1, 2)(1, 4)...(1, k 1 − 2 j )|(1, k 2 )|...|(1, k q )<br />

gdzie j = |(log(k 1 ))|<br />

. – p.8/10


Dodatki<br />

Algorytmy globalne (re-pair)<br />

Blisko optymalnoci<br />

Niech σ = x k 1<br />

|...|x k q<br />

, przy czym k 1 jest największe z k i<br />

Rozkład LZ<br />

λ = x(1, 1)(1, 2)(1, 4)...(1, k 1 − 2 j )|(1, k 2 )|...|(1, k q )<br />

gdzie j = |(log(k 1 ))|<br />

Dla q = Θ(log(k 1 ))|λ| = O(log(k 1 ))<br />

. – p.8/10


Dodatki- fina<br />

Dla L-dugość najkrótszego łańcucha i R-<br />

rozmiar najmniejszej gramatyki mamy<br />

L ≤ R ≤ 4 ∗ L<br />

. – p.9/10


Dodatki- fina<br />

Dla L-dugość najkrótszego łańcucha i R-<br />

rozmiar najmniejszej gramatyki mamy<br />

L ≤ R ≤ 4 ∗ L<br />

Twierdzenie o problemie łańcucha Istniej liczby<br />

k 1 , k 2 ..., k q takie, że dugość najkrótszego łańcucha<br />

wynosi Ω(log(k 1 ) + q ∗<br />

log(k 1 )<br />

loglog(k 1 )+log(q) )<br />

. – p.9/10


Dodatki- fina<br />

Dla L-dugość najkrótszego łańcucha i R-<br />

rozmiar najmniejszej gramatyki mamy<br />

L ≤ R ≤ 4 ∗ L<br />

Twierdzenie o problemie łańcucha Istniej liczby<br />

k 1 , k 2 ..., k q takie, że dugość najkrótszego łańcucha<br />

wynosi Ω(log(k 1 ) + q ∗<br />

log(k 1 )<br />

loglog(k 1 )+log(q) )<br />

Zatem, dla naszego q, rozmiar najmniejszej gramatyki<br />

wynosi Ω( log2 (k 1 )<br />

loglog(k 1 ) )<br />

. – p.9/10


Koniec<br />

Dziękuję za uwagę<br />

. – p.10/10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!