Signale und Codes Vorlesung 4
Signale und Codes Vorlesung 4 Nico Döttling
December 6, 2013
1 / 18
Signale und Codes Vorlesung 4
2 / 18
Signale und Codes Vorlesung 4
Letztes Mal I
Allgemeine Hamming Codes als Beispiel linearer Codes
I
Hamming Schranke: Obere Schranke für k bei gegebenem d bzw. für d bei gegebenem k.
I
Das ist sog. Kugelpackungsbedingung: Wieviele Hammingkurgeln lassen sich maximal in einen Raum packen sodass sich keine Kugeln überlappen
I
Es gibt Codes welche die Hamming Schranke exakt erfüllen: Perfekte Codes
I
Hamming Codes sind perfekt!
I
Durch hinzufügen eines Paritätsbits läßt sich die Minimaldistanz eines Codes um eins vergrößern. 3 / 18
Signale und Codes Vorlesung 4
Heute: Shannon Theorie I
Bisher: Hamming-Theorie. Fehler haben haben ein festes Gewicht.
I
Analyse der Korrekturleistung eines Codes ist Worst-Case Betrachtung. Nur der schlimmst mögliche Fehler von Gewicht d wird betrachtet und führt zum Begriff der Minimaldistanz.
I
Andere Sichtweise: Hamming-Theorie geht davon aus dass Fehler maximal bösartig gewählt werden.
I
Frage: Wie häufig/selten tritt in natürlichen Kanälen der schlimmstmögliche Fall ein?
4 / 18
Signale und Codes Vorlesung 4
Shannon Theorie I
Probabilistisches Kanal/Kommunikationsmodell
I
Kommunikationssystem besteht aus drei Komponenten
I
Quellen/Sender: Erzeugt eine Nachricht, also Bit oder Symbolfolge anhand eines stochastischen Prozesses S
I
Kanal: Überträgt Nachricht an Empfänger. Führt möglicherweise Fehler in die Nachricht ein. Fehlerfolge F ist auch stochastischer Prozess.
I
Empfänger: Empfängt eine gestörte Nachricht vom Kanal. Kennt Prozesse S und F (Verteilungen!) und möchte ursprüngliche Nachricht errechnen.
5 / 18
Signale und Codes Vorlesung 4
Entropie einer Quelle I
Sei S eine Zufallsvariable auf einer endlichen P Menge S mit Verteilung D(x) = Pr[S = x] (Es gilt also x∈S D(x) = 1).
I
Die Entropie P von S ist definiert durch H(S) = x∈S −D(x) log2 (D(x)) = ES [− log2 (D(S))].
I
Falls S ein p-gebiastes Bit ist, also D(0) = 1 − p und D(1) = p, dann setzen wir H2 (p) = H(S) = −p · log2 (p) − (1 − p) log2 (1 − p).
I
Entropie gibt an wieviel Zufall in einer Verteilung steckt.
I
Grundlegender Begriff der Informationstheorie.
6 / 18
Signale und Codes Vorlesung 4
Zur binären Entropiefunktion H2 (p)
I
Sei Bn (0, r ) = {x ∈ Fn2 |d (x, 0) ≤ r } die binäre Hammingkugel mit Radius r um den Punkt 0 und Voln (r ) = |Bn (0, r )| ihre Mächtigkeit.
I
Dann gilt Voln (p · n) = 2(H2 (p)+o(1))·n 7 / 18
Signale und Codes Vorlesung 4
Binärer symmetrischer Kanal I I
I
I
Quelle S produziert Gleichverteilung auf {0, 1} Kanal: Jedes übertragene Bit wird mit Wahrscheinlichkeit p geflippt und mit Wahrscheinlichtkeit 1 − p korrekt übertragen (unabhängig von der Vorgeschichte). Dieser Kanal heißt binärer symmetrischer Kanal mit Fehlerwahrscheinlichkeit p, kurz BSCp . Wir können den Fehler welchen BSCp erzeugt additiv darstellen: Für y ∈ Fn2 ist BSCp (y ) = y + η, wobei η ∼ Berp (n) (jede Komponente von eta 0 mit Wkt 1 − p und 1 mit Wkt p). Frage: Wieviele Bits können durch n Kanalanwendungen übertragen werden? I I
Wir erlauben Rekonstruktionsfehler Rekonstruktionsfehler sollte klein sein 8 / 18
Signale und Codes Vorlesung 4
Noisy Channel Coding Theorem Theorem Informell Über den BSCp lassen sich bei n Kanalbenutzungen (1 − H2 (p)) · n Bits übertragen wobei die Wahrscheinlichkeit eines Rekonstruktionsfehlers exponentiell klein in n ist, Formal Für alle > 0 existiert ein δ > 0 sodass wenn k < (1 − H2 (p) − )n und n hinreichend groß, dann existieren Funktionen Encode : Fk2 → Fn2 und Decode : Fn2 → Fk2 sodass Pr [Decode(Encode(x) + η) 6= x] ≤ e −δn
x,η
wobei x gleichverteilt zufällg gezogen und η p-biased ist.
9 / 18
Signale und Codes Vorlesung 4
Noisy Channel Coding Theorem: Konzeptionelle Ideen
I
Die Codierungsabbildung (der Code) Encode wird gleichverteilt zufällig aus allen Funktionen Fk2 → Fn2 gezogen.
I
Die Decodierungsabbildung Decode is ein Brute-Force Algorithmus: Für y ∈ Fn2 ist Decode(y ) = minx∈Fk d (Encode(x), y ).
I
Der Beweis ist nicht konstruktiv!
I
Beweisprinzip der sog. probabilistischen Methode.
2
10 / 18
Signale und Codes Vorlesung 4
Beweis (1) I
Fixiere zunächst x und Encode(x) und ziehe einen Fehler η ∈ Fn2 zufällig.
I
Ziehe danach den Rest der Abbildung Encode zufällig.
I
Sei 0 Konstante (wird später festgelegt)
I
Nenne η schlecht falls wgt(η) > (p + 0 ) · n
I
η ∈ Fn2 Bernoulli-verteilt (jedes ηi ist p-biased coin) ⇒ wgt(η) ∈ N ist binomialverteilt.
I
Es gilt E [wgt(η)] = E [
η1 + · · · + ηn {z } |
rechne Summe nicht
] = n · E [η1 ] =
mod 2!
n · ((1 − p) · 0 + p · 1) = n · p.
11 / 18
Signale und Codes Vorlesung 4
Beweis (2)
I
Chernoff-Schranke: Wenn X ∼ Bin(p, n) (binomialverteilt), 2 dann ist Pr[X > (1 + γ)E [X ]] ≤ e −E [X ]·γ /3 .
I
Es gilt E [X ] = p · n.
I
Finde γ sodass (1 + γ)p · n = (p + 0 ) · n ⇒ γ = 0 /p.
I
Damit: Pr[η schlecht] = Pr[wgt(η) > (p + 0 ) · n] ≤ e
02
− 3p n
12 / 18
Signale und Codes Vorlesung 4
Beweis (3)
I
Nenne x 0 schlecht für x, η gdw. d (Encode(x 0 ), Encode(x) + η) ≤ (p + 0 )n.
I
Das ist genau dann der Fall wenn Encode(x 0 ) ∈ Bn (Encode(x) + η, (p + 0 )n).
I
Es gilt |Bn (Encode(x) + η, (p + )n)| = Voln ((p + 0 )n)
I
Encode(x 0 ) wird für alle x 0 6= x gleichverteilt zufällig gezogen.
I
Fixiere ein x 0 .
13 / 18
Signale und Codes Vorlesung 4
Beweis (4) Dann gilt Pr [x 0 schlecht für x, η]
Encode
= Pr [Encode(x 0 ) ∈ Bn (Encode(x) + η, (p + 0 )n)] Encode
0
2H(p+ )n Voln ((p + 0 ) · n) 0 ≤ = 2H(p+ )n−n = n n 2 2 Mit einer Union-Bound gilt Pr[∃x 0 : x 0 schlecht für x, η] ≤
X
Pr[x 0 schlecht für x, η]
E x0 k+H(p+0 )n−n
≤2
14 / 18
Signale und Codes Vorlesung 4
Beweis (5) I
Da H stetig ist gibt es für jedes ∗ > 0 (neue Konstante) ein 0 > 0 sodass H(p + 0 ) < H(p) + ∗ .
I
Also Pr[∃x 0 : x 0 schlecht für x, η] ≤ 2k+H(p)n−n+
I
Fall η nicht schlecht ist und kein x 0 6= x schlecht für x, η ist, dann gilt Decode(Encode(x) + η) = x.
I
Die Wahrscheinlichkeit dass η schlecht ist oder eine x 0 existiert welches schlecht ist für x, η ist höchstens (Union-Bound)
∗
2
e I
− 3p n
∗n
+ 2k+H(p)n−n+
2
=e
− 3p n
∗ )n−k)
+ 2−((1−H(p)−
Falls (1 − H(p) − ∗ )n − k für wachsendes n wächst, dann konvergiert dieser Ausruck gegen 0 .
15 / 18
Signale und Codes Vorlesung 4
Beweis (6)
I
Wir wissen das k ≤ (1 − H(p) − ∗ ).
I
Setze ∗ = /2.
I
Dann gilt (1 − H(p) − ∗ )n − k = (1 − H(p) − /2)n − k ≥
2
·n
I
Damit: Wahrscheinlichkeit dass ein Decodierfehler auftritt konvergiert gegen 0 für wachsendes n.
I
.
16 / 18
Signale und Codes Vorlesung 4
Allgemeines Coding Theorem I
Shannon Theorem gilt allgemeiner als in der Hier gezeigten Form.
I
Jedem Kanal K läßt sich eine Kapazität zuordnen: CK = maxX I (K (X ); X ) = maxX (H(X ) − H(X |K (X ))). ˜ ) ≤ CK − (für beliebig Shannon konnte zeigen dass Falls H(X ˜ kleines ), dann lässt sich Quelle X so codieren dass die Ausgaben der Quelle fehlerfrei über den Kanal übertragen werden können.
I
I
Anders: Jede Übertragungsrate < CK ist erreichbar.
I
Shannon’s Beweis ist konzeptionell der selbe wie der hier gezeigte, ist technisch aber etwas anspruchsvoller. 17 / 18
Signale und Codes Vorlesung 4
Converse Coding Theorem
I
Dieses Ergebnis ist tight
I
Die Rate 1 − H(p) ist für diesen Kanal die bestmögliche.
I
Egal wie Encode und Decode gewählt sind, falls k ≥ (1 − H(p) + ) (für bel. kleines ), dann ist die Wahrscheinlichtkeit dass ein Decodierfehler auftritt ≈ 1.
18 / 18