Zur Verdeutlichung der grafischen Faltung

From LNTwww
Revision as of 13:58, 27 June 2019 by Guenter (talk | contribs)

Open Applet in a new tab

Programmbeschreibung


Dieses Applet verdeutlicht die Quellencodierverfahren nach Huffman bzw. Shannon–Fano. Diese Verfahren komprimieren redundante wertdiskrete Quellen ohne Gedächtnis mit Stufenzahl  M, dem Symbolvorrat  {qμ}={A,B, ...} und den Symbolwahrscheinlichkeiten  pA,pB, ... .

Ziel der Quellencodierung und insbesondere der Klasse der Entropiecodierung – zu der „Huffman” und „Shannon–Fano” gehören – ist, dass die mittlere Codewortlänge  LM  des binären Codes – darstellbar durch unterschiedlich lange Folgen von Nullen und Einsen – möglichst nahe an die Quellenentropie

H=Mμ=1Pr(qμ)log21Pr(qμ)=Mμ=1Pr(qμ)log2Pr(qμ)[Einheit:bit/Quellensymbol]

heranreicht. Allgemein gilt  LMH, wobei das Gleichheitszeichen nicht für alle Symbolwahrscheinlichkeiten erreicht werden kann.

Dargestellt werden jeweils

  • das Baumdiagramm zur Herleitung des jeweiligen Binärcodes, und
  • eine simulierte Quellensymbolfolge der Länge  N=10000  (Entropie  HH)  und die dazugehörige Codesymbolfolge der Länge  LMN.


Auf die Einheiten „bit/Quellensymbol” für die Entropie und die mittlere Codewortlänge wird im Programm verzichtet.


Theoretischer Hintergrund


Der Huffman–Algorithmus

Versuchsdurchführung

Exercises Entropie.png
  • Wählen Sie zunächst die Aufgabennummer.
  • Eine Aufgabenbeschreibung wird angezeigt.
  • Alle Parameter sind angepasst.
  • Alle Grafiken und Ergebniswerte sind aktualisiert.
  • Musterlösung nach Drücken von „Hide solution”.
  • Nummer „0”:   Gleiche Einstellung wie beim Programmstart.


(1)   Wählen Sie die Parameter gemäß Voreinstellung  (Gaußimpuls: Ax=1, Δtx=1, τx=1; Impulsantwort gemäß Tiefpass 2. Ordnung: Δth=1).
         Interpretieren Sie die dargestellten Grafiken. Wie groß ist der maximale Ausgangswert  ymax? Zu welcher Zeit  tmax  tritt dieser auf?

  •  Dargestellt sind nach Umbenennung:  Eingangssignal  x(τ)   ⇒   rote Kurve,  Impulsantwort  h(τ)   ⇒   blaue Kurve, nach Spiegelung  h(τ)   ⇒   grüne Kurve.
  •  Verschiebt man die grüne Kurve um  t  nach rechts, so erhält man h(tτ). Der Ausgangswert  y(t)  ergibt sich durch Multiplikation und Integration bzgl. τ:
y(t)=+x(τ)h(tτ)dτ=tx(τ)h(tτ)dτ.
  •  Der Ausgangsimpuls  ymax  ist im vorliegenden Fall unsymmetrisch; der maximale Ausgangswert  ymax0.67  tritt bei  tmax1.5  auf.

(2)   Was ändert sich, wenn man die äquivalente Impulsdauer von  h(t)  auf  Δth=1.5  erhöht?

  •  Der maximale Ausgangswert  ymax0.53  tritt nun bei  tmax1.75  auf. Durch die ungünstigere Impulsantwort wird der Eingangsimpuls stärker verformt.
  •  Bei einem Nachrichtenübertragungssystem hätte dies stärkere Verzerrungen (Intersymbol Interference ) zur Folge.

(3)   Wählen Sie nun den symetrischen  Rechteckimpuls: Ax=1, Δtx=1, τx=0  und die  Impulsantwort gemäß Spalt–Tiefpass: Δth=1.
         Interpretieren Sie das Faltungsergebnis. Wie groß ist der maximale Ausgangswert  ymax? Zu welchen Zeiten ist  y(t)>0? Beschreibt  h(t)  ein kausales System?

  •  Die Faltung zweier Rechtecke mit jeweiliger Dauer  1  ergibt ein Dreieck mit absoluter Dauer  2  ⇒   äquivalente Impulsdauer  Δty=1.
  •  y(t)  ist im Bereich von  0.5  bis  +1.5  von Null verschieden. Impulsmaximum  ymax=1  bei  tmax=+0.5.
  •  h(t)  beschreibt ein kausales System, da  h(t)0  für  t<0  ⇒   die „Wirkung”  y(t)  kommt nicht vor der „Ursache”  x(t).

(4)   Was ändert sich, wenn man die äquivalente Impulsdauer von  h(t)  auf  Δth=2  erhöht?

  •  Die Faltung zweier unterschiedlich breiten Rechtecke ergibt ein Trapez, im vorliegenden Fall zwischen  0.5  und  +2.5 ⇒   äquivalente Impulsdauer  Δty=2.
  •  Das Maximum  ymax=0.5  tritt im Bereich  0.5t1.5 auf. Bezüglich der Kausalität ändert sich nichts.

(5)   Wählen Sie nun den (unsymetrischen)  Rechteckimpuls: Ax=1, Δtx=1, τx=0.5  und die   Impulsantwort eines Tiefpasses 1. Ordnung: Δth=1.
         Interpretieren Sie die Ergebnisse. Wie groß ist der maximale Ausgangswert  ymax? Zu welchen Zeiten ist  y(t)>0? Beschreibt  h(t)  ein kausales System?

  •  Die Impulsantwort  h(t)  hat für  t>0  einen exponentiell abfallenden Verlauf. Füt  t>0  gilt stets  y(t)>0, aber die Signalwerte können sehr klein werden.
  •  Das Impulsmaximum  ymax=0.63  tritt bei  tmax=+1 auf. Für  t<tmax ist der Verlauf exponentiell ansteigend, für  t>tmax  exponentiell abfallend.
  •  Der Tiefpass 1. Ordnung kann mit einem Widerstand und einer Kapazität realisiert werden. Jedes realisierbare System ist per se kausal.

(6)   Wählen Sie wie in  (3)  die rechteckförmige Impulsantwort  (Spalt–Tiefpass; Δth=1). Mit welchem Eingang  x(t)  ergibt sich das gleiche  y(t)  wie bei  (5)?

  •  Das Signal  y(t)  in  (5)  ergab sich als Faltung zwischen dem rechteckigen Eingang  x(t)  und der Exponentialfunktion  h(t).
  •  Da die Faltungsoperation kommutativ ist, ergibt sich das gleiche Ergebnis mit der Exponentialfunktion  x(t) und der Rechteckfunktion  h(t).
  •  Die richtige Einstellung für das Eingangssignal  x(t)  ist  Gaußimpuls: Ax=1, Δtx=1, τx=0 .

(7)   Für den Rest dieser Versuchsdurchführung betrachten wir stets den Gauß–Tiefpass; äquivalente Dauer der Impulsantwort  h(t):  Δth=1.
         Analsyieren und interpretieren Sie dieses „System” im Hinblick auf Kausalität und.

  •  Die Ternärquelle ist nahezu redundanzfrei:  Hlog2 31.585. Mit   A 0B 10C 11  ist LM=1.66>H.
  •  „Günstige Wahrscheinlichkeiten” wären zum Beispiel  pA=0.5, pB=pC=0.25  wie bei „Quelle 1”. Dann ist  LM=H=1.5  (bit/Quellensymbol).

(8)   Wählen Sie „Huffman” und die „Quelle 5”  (M=6, pA=pB=0.25, pC=pD=pE=pF=0.125). Sind dies „günstige Wahrscheinlichkeiten”?

  •  JA. Alle Wahrscheinlichkeiten sind  22  oder  23   ⇒   Symbole werden mit zwei oder drei Bit dargestellt   ⇒   LM=H=2.5  (bit/Quellensymbol).

(9)   Wie unterscheiden sich demgegenüber die Ergebnisse für „Quelle 6”  (M=6, pA=0.26, pB=0.24, pC=pD=0.13, pE=pF=0.12)?

  •  Bereits durch geringfügige Wahrscheinlichkeitsabweichungen ergeben sich ein anderer Baum und damit auch andere Symbolzuordnungen.
  •  A  und  B  werden mit zwei Bit codiert, die anderen mit drei Bit.  LM=[pA+pB]2+[pC+pD+pE+pF]3=2.5  (bit/Quellensymbol).
  •  Die geänderten  pA, ...   verändern hier nicht die mittlere Codewortlänge, aber  H=2.499 wird (geringfügig) kleiner   ⇒   LM>H  (bit/Quellensymbol).

(10)   Betrachten Sie die „Quelle 9”  (M=8, pA=0.8, pB=pC=pD=0.02, pE=0.01,  ...  , pH=0.01)  ⇒   H=0.741  (bit/Quellensymbol). Interpretation.

  •  Es ergibt sich mit  LM=1.28  ein sehr viel größerer Wert als  H=0.741  – sowohl für „Huffman” als auch für „Shannon–Fano”.
  •  Beide Verfahren sind also zur Quellenkomprimierung nicht geeignet, wenn eine Symbolwahrscheinlichkeit deutlich größer ist als 50%.

(11)   Die Komprimierung der „Quelle 9”  (M=8,H=2.481)  mit „Huffman” ergibt  LM=2.58. Welches Ergebnis liefert „Shannon–Fano”?  Interpretation.

  •  Bei „Huffman” wird ein Symbol mit einem Bit codiert, zwei mit drei Bit, drei mit vier Bit und zwei mit fünf Bit   ⇒   LM=2.58  (bit/Quellensymbol).
  •  Entsprechend gilt für „Shannon–Fano”:  zweimal zwei Bit, dreimal drei Bit, einmal vier Bit, zweimal fünf Bit   ⇒   LM=2.61  (bit/Quellensymbol).
  •  Fazit:  „Huffman” ist die optimale Entropiecodierung. „Shannon–Fano” erreicht meist das gleiche Ergebnis.  Aber nicht immer!


Zur Handhabung des Applets

Anleitung Entropie.png


    (A)     Auswahl:   Gedächtnislose Quelle / Markovquelle

    (B)     Parametereingabe per Slider (Beispiel Markovquelle)

    (C)     Markovdiagramm (falls Markovquelle)

    (D)     Eingabe der Folgenlänge  N  zur Berechnung der  ˆHk

    (E)     Ausgabe einer simulierten Symbolfolge

    (F)     Ausgabe des Entropiewertes  H

    (G)     Ausgabe der Entropienäherungen  Hk

    (H)     Ausgabe der numerisch ermittelten Entropienäherungen  ˆHk

    (I)     Grafikfeld zur Darstellung der Funktion  H(pA)  bzw.  H(pA|pB)

    (J)     Bereich für die Versuchsdurchführung:   Aufgabenauswahl

    (K)     Bereich für die Versuchsdurchführung:   Aufgabenstellung

    (L)     Bereich für die Versuchsdurchführung:   Musterlösung

Über die Autoren

Dieses interaktive Applet wurde am Lehrstuhl für Nachrichtentechnik der Technischen Universität München konzipiert und realisiert.

Nochmalige Aufrufmöglichkeit des Applets in neuem Fenster

Open Applet in a new tab