Slajdy
Slajdy
Slajdy
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