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