• Keine Ergebnisse gefunden

1. Bin ¨arb ¨aume

N/A
N/A
Protected

Academic year: 2022

Aktie "1. Bin ¨arb ¨aume"

Copied!
40
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Vorlesung 14a

Quellencodieren und Entropie

(2)

1. Bin ¨arb ¨aume

als gerichtete Graphen

und

die gew ¨ohnliche Irrfahrt

von der Wurzel zu den Bl ¨attern

(3)

Wir betrachten planare (d.h. in die Ebene gezeichnete), verwurzelte Bin ¨arb ¨aume

(4)

Ihre Merkmale sind:

Ein Knoten ist ausgezeichnet als Wurzel.

Jeder Knoten (außer der Wurzel) hat genau einen Vorg ¨anger.

Jeder Knoten hat zwei, einen oder keinen Nachfolger.

Die Knoten ohne Nachfolger heißen Bl ¨atter, die mit Nachfolger heißen innere Knoten.

(5)

Wir sprechen von einem vollen Bin ¨arbaum, wenn jeder innere Knoten zwei Nachfolger hat.

Der obige Bin ¨arbaum ist nicht voll.

(6)

T

Wir sprechen von einem vollen Bin ¨arbaum, wenn jeder innere Knoten zwei Nachfolger hat.

Jeder Bin ¨arbaum T l ¨asst sich “auf minimale Weise”

zu einem vollen Bin ¨arbaum T erg ¨anzen.

Wir nennen T die Vervollst ¨andigung von T.

(7)

T

Wir sprechen von einem vollen Bin ¨arbaum, wenn jeder innere Knoten zwei Nachfolger hat.

Jeder Bin ¨arbaum T l ¨asst sich “auf minimale Weise”

zu einem vollen Bin ¨arbaum T erg ¨anzen.

Wir nennen T die Vervollst ¨andigung von T.

(8)

Sei T ein Bin ¨arbaum.

Die gew ¨ohnliche Irrfahrt auf T

- macht von jedem inneren Knoten einen Schritt zu einem zuf ¨allig gew ¨ahlten seiner Nachfolger (davon gibt’s 1 oder 2)

- und endet in einem der Bl ¨atter.

Wenn nicht anderes vermerkt, nehmen wir immer an, dass die Irrfahrt in der Wurzel startet.

(9)

Sei T ein voller Bin ¨arbaum auf T und Y die gew ¨ohnliche Irrfahrt auf T

Dann gilt f ¨ur jedes Blatt b von T mit Tiefe ℓ(b):

P(Y endet in b) = 2ℓ(b)

(denn auf dem Weg von der Wurzel zu b muss ℓ(b)-mal das “richtige” M ¨unzwurfergebnis kommen)

(10)

Folgerung:

F ¨ur jeden vollen Bin ¨arbaum T mit Blattmenge B gilt:

X

bB

2ℓ(b) = 1.

Ist T nicht voll, dann gilt die entsprechende Gleichheit f ¨ur die Vervollst ¨andigung T von T.

T hat dann mehr Bl ¨atter als T, also ist dann

X

bB

2−ℓ(b) < 1.

(11)

Dies fassen wir zusammen in der Bemerkung:

F ¨ur jeden Bin ¨arbaum T

mit Blattmenge B und Blatttiefen ℓ(b) gilt:

X

bB

2ℓ(b) ≤ 1,

mit Gleichheit genau dann wenn T voll ist.

(12)

Wir fragen:

Welche Bedingung an nat ¨urliche Zahlen t1, . . . , tm ist notwendig und hinreichend daf ¨ur,

dass diese Zahlen

als Blatttiefen eines bin ¨aren Baumes auftreten?

Die Antwort gibt die

(13)

Fano-Kraft Ungleichung f ¨ur bin ¨are B ¨aume:

t1, . . . , tm seien nat ¨urliche Zahlen.

Genau dann gibt es einen bin ¨aren Baum T,

f ¨ur den die t1, . . . , tm die Tiefen seiner Bl ¨atter sind, wenn gilt:

(∗)

m

X

i=1

2ti ≤ 1.

(14)

Beweis:

“ =⇒′′ siehe die Bemerkung auf Folie 11.

“ ⇐=′′: mit Induktion: F ¨ur m = 1 ist die Behauptung klar.

Schritt vom m zu m + 1:

Seien t1 ≤ t2 ≤ · · · ≤ tm+1 nat ¨urliche Zahlen mit

m+1

X

i=1

2ti ≤ 1. Dann gilt

m

X

i=1

2ti < 1.

(15)

Nach Induktionsvoraussetzung gibt es

einen Bin ¨arbaum Tm mit Blatttiefen t1, . . . , tm. Nach der Bemerkung auf Folie 11 ist Tm nicht voll,

besitzt also einen inneren Knoten (in Tiefe < tm) mit nur einem Nachfolger.

Zu diesem Knoten f ¨ugen wir einen zweiten Nachfolger hinzu und setzen (falls tm+1 > tm) seine “Nachkommenslinie” fort,

bis wir bei der Tiefe tm+1 angelangt sind.

Damit ist ein Bin ¨arbaum mit den Blatttiefen t1, . . . , tm+1 konstruiert. 2

(16)

Die Ungleichung von Fano und Kraft, formuliert f ¨ur

das bijektive Beschriften der Blattmenge eines Bin ¨arbaums:

S sei eine endliche oder abz ¨ahlbar unendliche Menge und t(a), a ∈ S, seien nat ¨urliche Zahlen.

Genau dann gibt es einen Bin ¨arbaum, dessen Bl ¨atter bijektiv mit den Elementen a ∈ S beschriftet sind

und Tiefen t(a) haben,

wenn X

aS

2t(a) ≤ 1 gilt.

Die Aussage folgt sofort mit dem vorher gegebenen Induktionsargument, wenn man die t(a) der Gr ¨oße nach absteigend ordnet.

(17)

2. Bin ¨are Pr ¨afixcodes

als Blattbeschriftungen von Bin ¨arb ¨aumen

(18)

S sei eine endliche (oder abz ¨ahlbar unendliche) Menge (ein “Alphabet”).

Die Elemente von S nennen wir Buchstaben.

Wir wollen die Buchstaben a, a, . . . durch 01-Folgen k(a), k(a), . . . codieren.

Dabei soll so etwas wie

k(a) = 001, k(a) = 00101 ausgeschlossen sein.

(19)

Definition:

Eine Abbildung k : S → [

t1

{0, 1}t

heißt bin ¨arer Pr ¨afixcode,

wenn kein k(a) Anfangsst ¨uck irgendeines k(a), a 6= a, ist.

Ist k(a) = k1(a) . . . kt(a), dann nennt man ℓ(a) := t

die L ¨ange (oder auch die Anzahl der Bits) des Codeworts k(a).

(20)

Bin ¨are Pr ¨afixcodes kann man sich auch als (planare (d.h. “in die Ebene gezeichnete”))

Bin ¨arb ¨aume vorstellen, deren Bl ¨atter bijektiv

mit den Buchstaben des Alphabets beschriftet sind.

(21)

Beispiel: S = {a1, a2, a3, a4}

k(a1) := 00, k(a2) := 01, k(a3) := 10, k(a4) := 11.

a1 a2 a3 a4

(22)

Beispiel: S = {a1, a2, a3, a4}

k(a1) := 00, k(a2) := 011, k(a3) := 010, k(a4) := 10.

a1

a2 a3

a4

(23)

Beispiel: S = {a1, a2, a3, a4}

k(a1) := 00, k(a2) := 011, k(a3) := 010, k(a4) := 1.

a1

a2 a3

a4

(24)

Regeln f ¨ur die Beschriftung der Knoten mit 01-W ¨ortern:

Die Wurzel tr ¨agt das Wort der L ¨ange 0 (das “leere Wort”).

Das Wort an einem Knoten (außer der Wurzel) setzt das Wort am Vorg ¨angerknoten um ein Bit fort (die W ¨orter in der Tiefe t haben somit die L ¨ange t).

Verschiedene Knoten tragen verschiedene W ¨orter.

(25)

Beispiel:

00

010 011

10

0 1

01

(26)

Wir formulieren die (bereits oben bewiesenen) zwei Aussagen um die Fano-Kraft-Ungleichung

jetzt noch einmal f ¨ur bin ¨are Pr ¨afixcodes:

(27)

Die Fano-Kraft-Ungleichung f ¨ur bin ¨are Pr ¨afixcodes:

(Teil 1) F ¨ur jeden bin ¨aren Pr ¨afixcode k gilt:

X

aS

2ℓ(a) ≤ 1 .

“Je mehr Buchstaben man codieren will, um so l ¨anger m ¨ussen die Codew ¨orter sein.”

(Teil 2) Ist ℓ : S → N eine Abbildung mit X

aS

2ℓ(a) ≤ 1 ,

dann gibt es einen bin ¨aren Pr ¨afixcode,

f ¨ur den ℓ(a) die L ¨ange von k(a) ist f ¨ur alle a ∈ S.

“Jede nicht allzu kurzwertige Abbildung tritt als Codewortl ¨angenabbildung auf.”

(28)

3. Sparsames Codieren zuf ¨alliger Buchstaben.

(29)

Sei X eine S-wertige Zufallsvariable (ein “zuf ¨alliger Buchstabe”)

mit Verteilungsgewichten ρ(a) = P(X = a).

Gefragt ist nach einem bin ¨aren Pr ¨afixcode f ¨ur S, der in dem Sinn m ¨oglichst g ¨unstig ist,

dass die erwartete Codel ¨ange von X, E[ℓ(X)] = X

aS

ℓ(a)ρ(a, ) m ¨oglichst klein ist.

(30)

Beispiel: Beispiel: S = {a1, a2, a3, a4}. Sind die vier Ausg ¨ange gleich wahrscheinlich, dann ist der Code links g ¨unstiger als der rechts.

a1 a2 a3 a4

a1

a2 a3

a4

(31)

F ¨ur jedes t ∈ N ist glaubhaft

(und in der Tat auch eine Folgerung des in Abschnitt 4.

formulierten und bewiesenen Quellencodierungssatzes):

Gilt #S = 2t mit ρ(a) = 2t, a ∈ S,

dann ist es am g ¨unstigsten, alle 2t Buchstaben mit den 01-Folgen der L ¨ange t zu codieren.

In diesem Fall gilt

ℓ(a) = t = − log2 ρ(a) f ¨ur alle a ∈ S.

(32)

4. Shannon-Codes und der Quellencodierungssatz

Gegeben seien

eine (endliche oder abz ¨ahlbar unendliche) Menge S und Verteilungsgewichte ρ(a) auf S.

Wir denken uns

eine S-wertige Zufallsvariablle X mit Verteilung ρ.

(33)

Ein Shannon-Code f ¨ur (S, ρ) ist ein Pr ¨afixcode, bei dem jeder Buchstabe a ∈ S mit einer 01-Folge codiert wird,

deren L ¨ange ℓ(a) durch Aufrunden von − log2 ρ(a) auf die n ¨achste ganze Zahl entsteht, also

− log2 ρ(a) ≤ ℓ(a) < − log2 ρ(a) + 1 . Solche Codes gibt es immer,

denn f ¨ur die so festgelegten ℓ(a) folgt

X

aS

2ℓ(a)X

aS

ρ(a) = 1 ,

die Fano-Kraft Bedingung ist also erf ¨ullt.

(34)

Wir werden zeigen:

Shannon-Codes

verfehlen die minimal m ¨ogliche erwartete Codel ¨ange um h ¨ochstens ein Bit.

Sei dazu

H2[X] := − X

a∈S

ρ(a) log2 ρ(a),

mit 0 log 0 := 0.

(35)

Satz

(Quellencodierungssatz von Shannon)

a) F ¨ur jeden bin ¨aren Pr ¨afixcode gilt E[ℓ(X)] H2[X].

b) F ¨ur bin ¨are Shannon-Codes gilt außerdem E[ℓ(X)] < H2[X] + 1.

(36)

Beweis:

F ¨ur Shannon-Codes gilt ℓ(a) < − log2 ρ(a) + 1

und folglich E[ℓ(X)] < X

a ρ(a)(− log2 ρ(a) + 1) = H2[X] + 1.

Dies beweist erst einmal Teil b) des Satzes.

Jetzt zu Teil a):

(37)

F ¨ur beliebige Codes gilt H2[X] − E[ℓ(X)] = X

a:ρ(a)>0

ρ(a) log2 2ℓ(a) ρ(a) Nun ist die Logarithmusfunktion konkav

und liegt unterhalb ihrer Tangente im Punkt 1.

Folglich gilt log2 x ≤ c · (x − 1) mit geeignetem c > 0, und H2[X] − E[ℓ(X)] c X

a:ρ(a)>0

ρ(a)

2−ℓ(a)

ρ(a) − 1

≤ c ·

X

a 2ℓ(a) − 1

.

Nach Fano-Kraft ist die rechte Seite ≤ 0, also H2[X] − E[ℓ(X)] 0. 2

(38)

5. Die Entropie

(39)

Die im Quellencodierungssatz auftretende Gr ¨oße H2[X] := − X

aS

ρ(a) log2 ρ(a)

heißt die Entropie von X (zur Basis 2).

(40)

Die Entropie ist der fundamentale Begriff der Informationstheorie.

Nach dem Quellenkodierungssatz gibt die Entropie fast genau die mittlere Anzahl von Ja-Nein Fragen an,

die notwendig und

- bei guter Wahl des Codes - auch hinreichend ist,

um den unbekannten Wert von X von jemandem zu erfragen, der X beobachten kann.

Dies ist gemeint, wenn man die Entropie beschreibt als den Grad von Unbestimmtheit oder Ungewissheit

¨uber den Wert, den X annimmt.

Referenzen

ÄHNLICHE DOKUMENTE

B-B¨aume verallgemeinern bin¨are Suchb¨aume dahingehend, dass in einem Knoten mehrere Schl¨ ussel stehen und ein Knoten mehrere Kinder hat.. (Typischerweise

Rot-Schwarz-B¨ aume: bin¨ are Suchb¨ aume mit zus¨ atzlicher Struktur, die daf¨ ur sorgt, dass diese balanciert sind, also die H¨ ohe h¨ ochstens O(log n) ist.. Jeder Knoten wird

Besprechung Blatt 10 Binary Search Hashing Vorbereitung Blatt 11 Bin¨ are Suchb¨ aume (Binary Search

Ziel dieser Aufgabe ist die Entwicklung eines einfachen bin¨ aren Baums, der in seinen Knoten je ein int und ein char-Wert aufnehmen kann. Die Sortierung soll dabei nach

Bei einem L-K-R Baum gilt, dass alle Knoten des linken Teilbaums kleinere Werte als der betrachtete Knoten haben und der rechte Teilbaum nur gr¨ oßere?. Dadurch weiß man beim

( Hinweis : In einem echten Bin¨arbaum hat jeder Knoten entweder genau zwei Kinder (innere Knoten) oder ist ein Blatt.).. Aufgabe 2

[r]

Sami sagt über sich: „Ich habe viele Seiten, die mich ausmachen, ich möchte nicht reduziert werden.“. Katia: „Ich kann nicht auf etwas stolz sein, zu dem ich nichts