Komplementäre Gaußsche Fehlerfunktionen

Aus LNTwww
Wechseln zu:Navigation, Suche

Applet in neuem Tab öffnen   Open English Version

Applet in neuem Tab öffnen         Englisches Applet mit englischer WIKI–Beschreibung



Programmbeschreibung


Dieses Applet ermöglicht die Berechnung und graphische Darstellung der (komplementären) Gaußschen Fehlerfunktionen  ${\rm Q}(x)$  und  $1/2\cdot {\rm erfc}(x)$, die für die Fehlerwahrscheinlichkeitsberechnung von großer Bedeutung sind.

  • Sowohl die Abszisse als auch der Funktionswert können entweder linear oder logarithmisch dargestellt werden.
  • Für beide Funktionen wird jeweils eine obere Schranke $($englisch:  Upper Bound,  $\rm UB)$  und eine untere Schranke $($englisch:  Lower Bound,  $\rm LB)$  angegeben.


Theoretischer Hintergrund


Bei der Untersuchung digitaler Übertragungssysteme muss oft die Wahrscheinlichkeit bestimmt werden, dass eine (mittelwertfreie) gaußverteilte Zufallsgröße  $x$  mit der Varianz  $σ^2$  einen vorgegebenen Wert  $x_0$  überschreitet. Für diese Wahrscheinlichkeit gilt:

$${\rm Pr}(x > x_0)={\rm Q}(\frac{x_0}{\sigma}) = 1/2 \cdot {\rm erfc}(\frac{x_0}{\sqrt{2} \cdot \sigma}).$$


Die Funktion ${\rm Q}(x )$

Die Funktion  ${\rm Q}(x)$  bezeichnet man als das Komplementäre Gaußsche Fehlerintegral. Es gilt folgende Berechnungsvorschrift:

$${\rm Q}(x ) = \frac{1}{\sqrt{2\pi}}\int_{x}^{ +\infty}\hspace{-0.2cm}{\rm e}^{-u^{2}/\hspace{0.05cm} 2}\,{\rm d} u .$$
  • Dieses Integral ist nicht analytisch lösbar und muss – wenn man dieses Applet nicht zur Verfügung hat – aus Tabellen entnommen werden.
  • Speziell für größere  $x$–Werte (also für kleine Fehlerwahrscheinlichkeiten) liefern die nachfolgend angegebenen Schranken eine brauchbare Abschätzung für das Komplementäre Gaußsche Fehlerintegral, die auch ohne Tabellen berechnet werden können.
  • Eine obere Schranke (englisch:  Upper Bound ) des Komplementären Gaußschen Fehlerintegrals lautet:
$${\rm Q}_{\rm UB}(x )=\text{Upper Bound }\big [{\rm Q}(x ) \big ] = \frac{ 1}{\sqrt{2\pi}\cdot x}\cdot {\rm e}^{- x^{2}/\hspace{0.05cm}2} > {\rm Q}(x).$$
  • Entsprechend gilt für die untere Schranke (englisch:  Lower Bound ):
$${\rm Q}_{\rm LB}(x )=\text{Lower Bound }\big [{\rm Q}(x ) \big ] =\frac{1-1/x^2}{\sqrt{2\pi}\cdot x}\cdot {\rm e}^{-x^ 2/\hspace{0.05cm}2} ={\rm Q}_{\rm UB}(x ) \cdot (1-1/x^2)< {\rm Q}(x).$$

In vielen Programmbibliotheken findet man allerdings die Funktion  ${\rm Q}(x )$  nicht.


Die Funktion $1/2 \cdot {\rm erfc}(x )$

In fast allen Programmbibliotheken findet man dagegen die Komplementäre Gaußsche Fehlerfunktion (englisch:  Complementary Gaussian Error Function)

$${\rm erfc}(x) = \frac{2}{\sqrt{\pi}}\int_{x}^{ +\infty}\hspace{-0.2cm}{\rm e}^{-u^{2}}\,{\rm d} u .$$

die mit  ${\rm Q}(x)$  wie folgt zusammenhängt:   ${\rm Q}(x)=1/2\cdot {\rm erfc}(x/{\sqrt{2}}).$

  • Da bei fast allen Anwendungen diese Funktion mit dem Faktor  $1/2$  verwendet wird, wurde in diesem Applet genau diese Funktion realisiert:
$$1/2 \cdot{\rm erfc}(x) = \frac{1}{\sqrt{\pi}}\int_{x}^{ +\infty}\hspace{-0.2cm}{\rm e}^{-u^{2}}\,{\rm d} u .$$
  • Auch für diese Funktion kann wieder eine obere und eine untere Schranke angegeben werden:
$$\text{Upper Bound }\big [1/2 \cdot{\rm erfc}(x) \big ] = \frac{ 1}{\sqrt{\pi}\cdot 2x}\cdot {\rm e}^{- x^{2}} ,$$
$$\text{Lower Bound }\big [1/2 \cdot{\rm erfc}(x) \big ] = \frac{ {1-1/(2x^2)}}{\sqrt{\pi}\cdot 2x}\cdot {\rm e}^{- x^{2}} .$$


Wann bietet welche Funktion Vorteile?

$\text{Beispiel 1:}$  Wir betrachten die binäre Basisbandübertragung. Hier lautet die Bitfehlerwahrscheinlichkeit  $p_{\rm B} = {\rm Q}({s_0}/{\sigma_d})$, wobei das Nutzsignal die Werte  $\pm s_0$  annehmen kann und der Rauscheffektivwert  $\sigma_d$  ist.

Es wird vorausgesetzt, dass Tabellen zur Verfügung stehen, in denen das Argument der Gaußschen Fehlerfunktionen im Abstand  $0.1$  aufgelistet sind. Mit  $s_0/\sigma_d = 4$  erhält man für die Bitfehlerwahrscheinlichkeit gemäß der Q–Funktion:

$$p_{\rm B} = {\rm Q} (4) \approx 0.317 \cdot 10^{-4}\hspace{0.05cm}.$$

Nach der zweiten Gleichung ergibt sich:

$$p_{\rm B} = {1}/{2} \cdot {\rm erfc} ( {4}/{\sqrt{2} })= {1}/{2} \cdot {\rm erfc} ( 2.828)\approx {1}/{2} \cdot {\rm erfc} ( 2.8)= 0.375 \cdot 10^{-4}\hspace{0.05cm}.$$
  • Richtiger ist der erste Wert. Bei der zweiten Berechnungsart muss man runden oder – noch besser – interpolieren, was aufgrund der starken Nichtlinearität dieser Funktion sehr schwierig ist.
  • Bei den gegebenen Zahlenwerten ist demnach Q–Funktion besser geeignet. Außerhalb von Übungsbeispielen wird allerdings  $s_0/\sigma_d$  in der Regel einen „krummen” Wert besitzen. In diesem Fall bietet  ${\rm Q}(x)$  natürlich keinen Vorteil gegenüber  $1/2 \cdot{\rm erfc}(x)$.


$\text{Beispiel 2:}$  Mit der Energie pro Bit  $(E_{\rm B})$  und der Rauschleistungsdichte  $(N_0)$  gilt für die Bitfehlerwahrscheinlichkeit von Binary Phase Shift Keying  (BPSK):

$$p_{\rm B} = {\rm Q} \left ( \sqrt{ {2 E_{\rm B} }/{N_0} }\right ) = {1}/{2} \cdot {\rm erfc} \left ( \sqrt{ {E_{\rm B} }/{N_0} }\right ) \hspace{0.05cm}.$$

Für die Zahlenwerte  $E_{\rm B} = 16 \ \rm mWs$  und  $N_0 = 1 \ \rm mW/Hz$  erhält man:

$$p_{\rm B} = {\rm Q} \left (4 \cdot \sqrt{ 2} \right ) = {1}/{2} \cdot {\rm erfc} \left ( 4\right ) \hspace{0.05cm}.$$
  • Der erste Weg führt zum Ergebnis  $p_{\rm B} = {\rm Q} (5.657) \approx {\rm Q} (5.7) = 0.6 \cdot 10^{-8}\hspace{0.05cm}$, während  $1/2 \cdot{\rm erfc}(x)$  hier den richtigeren Wert  $p_{\rm B} \approx 0.771 \cdot 10^{-8}$  liefert.
  • Wie im ersten Beispiel erkennt man aber auch hier:   Die Funktionen  ${\rm Q}(x)$  und  $1/2 \cdot{\rm erfc}(x)$  sind grundsätzlich gleich gut geeignet.
  • Vor– oder Nachteile der einen oder anderen Funktion ergeben sich nur bei konkreten Zahlenwerten.



Versuchsdurchführung

  • Wählen Sie zunächst die Nummer  $(1,\ 2$, ... $)$  der zu bearbeitenden Aufgabe.  Die Nummer  $0$  entspricht einem „Reset”:  Einstellung wie beim Programmstart.
  • Eine Aufgabenbeschreibung wird angezeigt.  Parameterwerte sind angepasst.  Lösung nach Drücken von „Musterlösung”.


(1)   Ermitteln Sie die Werte der Funktion  ${\rm Q}(x)$  für  $x=1$,  $x=2$,  $x=4$  und  $x=6$.  Interpretieren Sie die Grafiken bei linearer und logarithmischer Ordinate.

  • Das Applet liefert die Werte  ${\rm Q}(1)=1.5866 \cdot 10^{-1}$,  ${\rm Q}(2)=2.275 \cdot 10^{-2}$,  ${\rm Q}(4)=3.1671 \cdot 10^{-5}$  und  ${\rm Q}(6)=9.8659 \cdot 10^{-10}$.
  • Bei linearer Ordinate sind die Werte für  $x>3$  nicht von der Nulllinie zu unterscheiden.  Interessanter ist die Darstellung mit logarithmischer Ordinate.


(2)   Bewerten Sie die beiden Schranken  ${\rm UB}(x )=\text{Upper Bound }\big [{\rm Q}(x ) \big ]$  und  ${\rm LB}(x )=\text{Lower Bound }\big [{\rm Q}(x ) \big ]$  für die  ${\rm Q}$–Funktion.

  • Für  $x\ge 2$  liegt die obere Schranke nur geringfügig oberhalb von  ${\rm Q}(x)$  und die untere Schranke nur geringfügig unterhalb von  ${\rm Q}(x)$. 
  • Zum Beispiel:  ${\rm Q}(x=4)=3.1671 \cdot 10^{-5}$   ⇒   ${\rm LB}(x=4)=3.1366 \cdot 10^{-5}$,   ${\rm UB}(x=4)=3.3458 \cdot 10^{-5}$.
  • Die „Upper Bound” hat eine größere Bedeutung zur Beurteilung eines Nachrichtensystems als „LB”, da dies einer „Worst Case”–Betrachtung entspricht.


(3)   Versuchen Sie, mit der App den Funktionswert  ${\rm Q}(x=2 \cdot \sqrt{2} \approx 2.828)$  trotz der Quantisierung des Eingabeparameters möglichst exakt zu bestimmen.

  • Das Programm liefert für  $x=2.8$  das zu große Ergebnis  $2.5551 \cdot 10^{-3}$  und für  $x=2.85$  das Ergebnis  $2.186 \cdot 10^{-3}$.  Der exakte Wert liegt dazwischen.
  • Es gilt aber auch:  ${\rm Q}(x=2 \cdot \sqrt{2})=0.5 \cdot {\rm erfc}(x=2)$.  Damit erhält man den exakten Wert  ${\rm Q}(x=2 \cdot \sqrt{2})=2.3389 \cdot 10^{-3}$.


(4)   Ermitteln Sie die Werte der Funktion  $0.5 \cdot {\rm erfc}(x)$  für  $x=1$,  $x=2$,  $x=3$  und  $x=4$.  Interpretieren Sie die die exakten Ergebnisse und die Schranken.

  • Das Applet liefert:  $0.5 \cdot {\rm erfc}(1)=7.865 \cdot 10^{-2}$,  $0.5 \cdot {\rm erfc}(2)=2.3389 \cdot 10^{-3}$,  $0.5 \cdot {\rm erfc}(3)=1.1045 \cdot 10^{-5}$  und  $0.5 \cdot {\rm erfc}(4)=7.7086 \cdot 10^{-9}$.
  • Alle obigen Aussagen zur  ${\rm Q}$–Funktion bezüglich geeigneter Darstellungsart sowie oberer und unterer Schranke gelten auch für die Funktion  $0.5 \cdot {\rm erfc}(x)$.


(5)   Die Ergbnisse von  (4)  sollen nun für den Fall einer logarithmischen Abszisse umgerechnet werden.  Die Umrechnung erfolgt entsprechend  $\rho\big[{\rm dB}\big ] = 20 \cdot \lg(x)$.

  • Der lineare Abszissenwert  $x=1$  führt zum logarithmischen Abszissenwert  $\rho=0\ \rm dB$   ⇒   $0.5 \cdot {\rm erfc}(\rho=0\ {\rm dB})={0.5 \cdot \rm erfc}(x=1)=7.865 \cdot 10^{-2}$.
  • Entsprechend gilt auch  $0.5 \cdot {\rm erfc}(\rho=6.021\ {\rm dB}) =0.5 \cdot {\rm erfc}(x=2)=2.3389 \cdot 10^{-3}$,     $0.5 \cdot {\rm erfc}(\rho=9.542\ {\rm dB})= 0.5 \cdot {\rm erfc}(3)=1.1045 \cdot 10^{-5}$,   
  • $0.5 \cdot {\rm erfc}(\rho=12.041\ {\rm dB})= 0.5 \cdot {\rm erfc}(4)=7.7086 \cdot 10^{-9}$.
  • Laut rechtem Diagramm:  $0.5 \cdot {\rm erfc}(\rho=6\ {\rm dB}) =2.3883 \cdot 10^{-3}$,     $0.5 \cdot {\rm erfc}(\rho=9.5\ {\rm dB}) =1.2109 \cdot 10^{-5}$,     $0.5 \cdot {\rm erfc}(\rho=12\ {\rm dB}) =9.006 \cdot 10^{-9}$.


(6)   Ermitteln Sie  ${\rm Q}(\rho=0\ {\rm dB})$,  ${\rm Q}(\rho=5\ {\rm dB})$  und  ${\rm Q}(\rho=10\ {\rm dB})$,  und stellen Sie den Zusammenhang zwischen linearer und logarithmischer Abszisse her.

  • Das Programm liefert für logarithmische Abszisse die Werte  ${\rm Q}(\rho=0\ {\rm dB})=1.5866 \cdot 10^{-1}$,  ${\rm Q}(\rho=5\ {\rm dB})=3.7679 \cdot 10^{-2}$,  ${\rm Q}(\rho=10\ {\rm dB})=7.827 \cdot 10^{-4}$.
  • Die Umrechnung erfolgt gemäß der Gleichung  $x=10^{\hspace{0.05cm}0.05\hspace{0.05cm} \cdot\hspace{0.05cm} \rho[{\rm dB}]}$.  Für  $\rho=0\ {\rm dB}$  ergibt sich  $x=1$   ⇒   ${\rm Q}(\rho=0\ {\rm dB})={\rm Q}(x=1) =1.5866 \cdot 10^{-1}$.
  • Für  $\rho=5\ {\rm dB}$  ergibt sich  $x=1.1778$   ⇒   ${\rm Q}(\rho=5\ {\rm dB})={\rm Q}(x=1.778) =3.7679 \cdot 10^{-2}$.  Aus dem linken Diagramm:  ${\rm Q}(x=1.8) =3.593 \cdot 10^{-2}$.
  • Für  $\rho=10\ {\rm dB}$  ergibt sich  $x=3.162$   ⇒   ${\rm Q}(\rho=10\ {\rm dB})={\rm Q}(x=3.162) =7.827 \cdot 10^{-4}$.  Nach „Quantisierung”:  ${\rm Q}(x=3.15) =8.1635 \cdot 10^{-4}$.

Zur Handhabung des Applets


Qfunction bedienung.png

    (A)     Verwendete Gleichungen am Beispiel  ${\rm Q}(x)$

    (B)     Auswahloption für  ${\rm Q}(x)$  oder  ${\rm 0.5 \cdot erfc}(x)$

    (C)     Schranken  ${\rm LB}$  und  ${\rm UB}$  werden gezeichnet

    (D)     Auswahl, ob Abszisse linear  $\rm (lin)$  oder logarithmisch  $\rm (log)$ 

    (E)     Auswahl, ob Ordinate linear  $\rm (lin)$  oder logarithmisch  $\rm (log)$ 

    (F)     Numerikausgabe am Beispiel  ${\rm Q}(x)$  bei linearer Abszisse

    (G)     Slidereingabe des Abszissenwertes  $x$  für lineare Abszisse

    (H)     Slidereingabe des Abszissenwertes  $\rho \ \rm [dB]$  für logarithmische Abszisse

    (I)     Grafikausgabe der Funktion  ${\rm Q}(x)$  – hier:  lineare Abszisse

    (J)     Grafikausgabe der Funktion  ${\rm 0.5 \cdot erfc}(x)$  – hier:  lineare Abszisse

    (K)     Variationsmöglichkeit für die graphischen Darstellungen

$\hspace{1.5cm}$„$+$” (Vergrößern),

$\hspace{1.5cm}$ „$-$” (Verkleinern)

$\hspace{1.5cm}$ „$\rm o$” (Zurücksetzen)

$\hspace{1.5cm}$ „$\leftarrow$” (Verschieben nach links), usw.

Über die Autoren

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

  • Die erste Version wurde 2007 von  Thomas Großer  im Rahmen seiner Diplomarbeit mit „FlashMX–Actionscript” erstellt (Betreuer:  Günter Söder).
  • 2018/2019 wurde das Programm von  Marwen Ben Ammar  und  Xiaohan Liu  (Bachelorarbeit, Betreuer:  Tasnád Kernetzky ) auf „HTML5” umgesetzt und neu gestaltet.


Die Umsetzung dieses Applets auf HTML 5 wurde durch  Studienzuschüsse  der Fakultät EI der TU München finanziell unterstützt. Wir bedanken uns.


Nochmalige Aufrufmöglichkeit des Applets in neuem Fenster


Applet in neuem Tab öffnen   Open English Version