Difference between revisions of "Aufgaben:Exercise 1.16: Block Error Probability Bounds for AWGN"
Line 1: | Line 1: | ||
{{quiz-Header|Buchseite=Channel_Coding/Limits_for_Block_Error_Probability}} | {{quiz-Header|Buchseite=Channel_Coding/Limits_for_Block_Error_Probability}} | ||
− | [[File:P_ID2414__KC_A_1_15.png|right|frame| | + | [[File:P_ID2414__KC_A_1_15.png|right|frame|Error function ${\rm Q}(x)$ and approximations ]] |
− | + | We assume the following constellation: | |
− | * | + | *a linear block code with code rate $R = k/n$ and distance spectrum $\{W_i\}, \ i = 1, \ \text{...} \ , n$, |
− | * | + | *an AWGN channel characterized by $E_{\rm B}/N_{0}$ ⇒ convertible to noise power $\sigma^2$, |
− | * | + | *a receiver based on ''soft decision'' as well as the ''maximum likelihood criterion''. |
− | + | Under the assumption valid for the entire exercise that always the null word $\underline{x}_{1} = (0, 0, \text{... } \ , 0)$ is sent, the [[Channel_Coding/Limits_for_Block_Error_Probability#Union_Bound_of_the_block_error_probability|"pairwise error probability"]] with a different codeword $\underline{x}_{l} (l = 2,\ \text{...} \ , 2^k)$: | |
:$$ {\rm Pr}[\hspace{0.05cm}\underline{x}_{\hspace{0.02cm}1} \hspace{-0.02cm}\mapsto \hspace{-0.02cm}\underline{x}_{\hspace{0.02cm}l}\hspace{0.05cm}] = {\rm Q}\left ( \sqrt{w_{\rm H}(\underline{x}_{\hspace{0.02cm}l})/\sigma^2} \right ) \hspace{0.05cm}.$$ | :$$ {\rm Pr}[\hspace{0.05cm}\underline{x}_{\hspace{0.02cm}1} \hspace{-0.02cm}\mapsto \hspace{-0.02cm}\underline{x}_{\hspace{0.02cm}l}\hspace{0.05cm}] = {\rm Q}\left ( \sqrt{w_{\rm H}(\underline{x}_{\hspace{0.02cm}l})/\sigma^2} \right ) \hspace{0.05cm}.$$ | ||
− | + | The derivation of this relation can be found in [Liv10]. Used in this equation are: | |
− | * | + | *the [[Theory_of_Stochastic_Signals/Gaussian_Distributed_Random_Variables#Exceedance_probability|complementary Gaussian error function]] ${\rm Q}(x)$, |
− | * | + | *the [[Channel_Coding/Objective_of_Channel_Coding#Important_definitions_for_block_coding|Hamming weight]] $w_{\rm H}(\underline{x}_{l})$ of the codeword $\underline{x}_{l}$, |
− | * | + | *the [[Digital_Signal_Transmission/Optimization_of_Baseband_Transmission_Systems#System_optimization_with_power_limitation|AWGN noise power]] $\sigma^2 = (2 - R - E_{\rm B}/N_{0})^{-1}.$ |
Damit lassen sich verschiedene Schranken für die Blockfehlerwahrscheinlichkeit angeben: | Damit lassen sich verschiedene Schranken für die Blockfehlerwahrscheinlichkeit angeben: | ||
− | * | + | *the so called [[Channel_Coding/Limits_for_Block_Error_Probability#Union_Bound_of_the_block_error_probability|Union Bound]] (UB): |
:$$p_1 = \sum_{l = 2}^{2^k}\hspace{0.05cm}{\rm Pr}[\hspace{0.05cm}\underline{x}_{\hspace{0.02cm}1} \hspace{-0.02cm}\mapsto \hspace{-0.02cm}\underline{x}_{\hspace{0.02cm}l}\hspace{0.05cm}] = \sum_{l \hspace{0.05cm}= \hspace{0.05cm}2}^{2^k}\hspace{0.05cm}{\rm Q}\left ( \sqrt{w_{\rm H}(\underline{x}_{\hspace{0.02cm}l})/\sigma^2} \right ) \hspace{0.05cm},$$ | :$$p_1 = \sum_{l = 2}^{2^k}\hspace{0.05cm}{\rm Pr}[\hspace{0.05cm}\underline{x}_{\hspace{0.02cm}1} \hspace{-0.02cm}\mapsto \hspace{-0.02cm}\underline{x}_{\hspace{0.02cm}l}\hspace{0.05cm}] = \sum_{l \hspace{0.05cm}= \hspace{0.05cm}2}^{2^k}\hspace{0.05cm}{\rm Q}\left ( \sqrt{w_{\rm H}(\underline{x}_{\hspace{0.02cm}l})/\sigma^2} \right ) \hspace{0.05cm},$$ | ||
− | * | + | *the so called [[Channel_Coding/Limits_for_Block_Error_Probability#Bounds_for_the_.287.2C_4.2C_3.29_Hamming_code_at_the_AWGN_channel|Truncated Union Bound]] (TUB): |
:$$p_2 = W_{d_{\rm min}} \cdot {\rm Q}\left ( \sqrt{d_{\rm min}/\sigma^2} \right ) \hspace{0.05cm},$$ | :$$p_2 = W_{d_{\rm min}} \cdot {\rm Q}\left ( \sqrt{d_{\rm min}/\sigma^2} \right ) \hspace{0.05cm},$$ | ||
− | * | + | *the [[Channel_Coding/Limits_for_Block_Error_Probability#The_upper_bound_according_to_Bhattacharyya|Bhattacharyya bound]]: |
:$$p_3 = W(\beta) - 1\hspace{0.05cm},\hspace{0.2cm} {\rm mit}\hspace{0.15cm} \beta = {\rm e}^{ - 1/(2\sigma^2) } \hspace{0.05cm}.$$ | :$$p_3 = W(\beta) - 1\hspace{0.05cm},\hspace{0.2cm} {\rm mit}\hspace{0.15cm} \beta = {\rm e}^{ - 1/(2\sigma^2) } \hspace{0.05cm}.$$ | ||
− | :In | + | :In this case, replace the distance spectrum $\{W_i\}$ with the weight enumerator function: |
:$$\left \{ \hspace{0.05cm} W_i \hspace{0.05cm} \right \} \hspace{0.3cm} \Leftrightarrow \hspace{0.3cm} W(X) = \sum_{i=0 }^{n} W_i \cdot X^{i} = W_0 + W_1 \cdot X + W_2 \cdot X^{2} + ... \hspace{0.05cm} + W_n \cdot X^{n}\hspace{0.05cm}.$$ | :$$\left \{ \hspace{0.05cm} W_i \hspace{0.05cm} \right \} \hspace{0.3cm} \Leftrightarrow \hspace{0.3cm} W(X) = \sum_{i=0 }^{n} W_i \cdot X^{i} = W_0 + W_1 \cdot X + W_2 \cdot X^{2} + ... \hspace{0.05cm} + W_n \cdot X^{n}\hspace{0.05cm}.$$ | ||
− | + | In the transition from the ''Union Bound'' $p_{1}$ to the more imprecise bound $p_{3}$ among others the function ${\rm Q}(x)$ is replaced by the [https://en.wikipedia.org/wiki/Chernoff_bound Chernoff-Rubin bound] ${\rm Q}_{\rm CR}(x)$ . Both functions are shown in the above graph (red and green curve, respectively). | |
− | In | + | In the [[Aufgaben:Exercise_1.16Z:_Bounds_for_the_Gaussian_Error_Function|Exercise 1.16Z]] the relationship between these functions is evaluated numerically and referenced to the bounds ${\rm Q}_{o}(x)$ and ${\rm Q}_{u}(x)$ which are also drawn in the above graph. |
− | + | Hints: | |
− | * | + | * This exercise belongs to the chapter [[Channel_Coding/Schranken_für_die_Blockfehlerwahrscheinlichkeit|Schranken für die Blockfehlerwahrscheinlichkeit]]. |
* Die oben zitierte Literaturstelle [Liv10] verweist auf das Vorlesungsmanuskript "Liva, G.: ''Channel Coding''. Lehrstuhl für Nachrichtentechnik, TU München und DLR Oberpfaffenhofen, 2010." | * Die oben zitierte Literaturstelle [Liv10] verweist auf das Vorlesungsmanuskript "Liva, G.: ''Channel Coding''. Lehrstuhl für Nachrichtentechnik, TU München und DLR Oberpfaffenhofen, 2010." | ||
* Weiter verweisen wir auf das interaktive Applet [[Applets:Komplementäre_Gaußsche_Fehlerfunktionen| Komplementäre Gaußsche Fehlerfunktionen]]. | * Weiter verweisen wir auf das interaktive Applet [[Applets:Komplementäre_Gaußsche_Fehlerfunktionen| Komplementäre Gaußsche Fehlerfunktionen]]. |
Revision as of 17:54, 30 July 2022
We assume the following constellation:
- a linear block code with code rate $R = k/n$ and distance spectrum $\{W_i\}, \ i = 1, \ \text{...} \ , n$,
- an AWGN channel characterized by $E_{\rm B}/N_{0}$ ⇒ convertible to noise power $\sigma^2$,
- a receiver based on soft decision as well as the maximum likelihood criterion.
Under the assumption valid for the entire exercise that always the null word $\underline{x}_{1} = (0, 0, \text{... } \ , 0)$ is sent, the "pairwise error probability" with a different codeword $\underline{x}_{l} (l = 2,\ \text{...} \ , 2^k)$:
- $$ {\rm Pr}[\hspace{0.05cm}\underline{x}_{\hspace{0.02cm}1} \hspace{-0.02cm}\mapsto \hspace{-0.02cm}\underline{x}_{\hspace{0.02cm}l}\hspace{0.05cm}] = {\rm Q}\left ( \sqrt{w_{\rm H}(\underline{x}_{\hspace{0.02cm}l})/\sigma^2} \right ) \hspace{0.05cm}.$$
The derivation of this relation can be found in [Liv10]. Used in this equation are:
- the complementary Gaussian error function ${\rm Q}(x)$,
- the Hamming weight $w_{\rm H}(\underline{x}_{l})$ of the codeword $\underline{x}_{l}$,
- the AWGN noise power $\sigma^2 = (2 - R - E_{\rm B}/N_{0})^{-1}.$
Damit lassen sich verschiedene Schranken für die Blockfehlerwahrscheinlichkeit angeben:
- the so called Union Bound (UB):
- $$p_1 = \sum_{l = 2}^{2^k}\hspace{0.05cm}{\rm Pr}[\hspace{0.05cm}\underline{x}_{\hspace{0.02cm}1} \hspace{-0.02cm}\mapsto \hspace{-0.02cm}\underline{x}_{\hspace{0.02cm}l}\hspace{0.05cm}] = \sum_{l \hspace{0.05cm}= \hspace{0.05cm}2}^{2^k}\hspace{0.05cm}{\rm Q}\left ( \sqrt{w_{\rm H}(\underline{x}_{\hspace{0.02cm}l})/\sigma^2} \right ) \hspace{0.05cm},$$
- the so called Truncated Union Bound (TUB):
- $$p_2 = W_{d_{\rm min}} \cdot {\rm Q}\left ( \sqrt{d_{\rm min}/\sigma^2} \right ) \hspace{0.05cm},$$
- the Bhattacharyya bound:
- $$p_3 = W(\beta) - 1\hspace{0.05cm},\hspace{0.2cm} {\rm mit}\hspace{0.15cm} \beta = {\rm e}^{ - 1/(2\sigma^2) } \hspace{0.05cm}.$$
- In this case, replace the distance spectrum $\{W_i\}$ with the weight enumerator function:
- $$\left \{ \hspace{0.05cm} W_i \hspace{0.05cm} \right \} \hspace{0.3cm} \Leftrightarrow \hspace{0.3cm} W(X) = \sum_{i=0 }^{n} W_i \cdot X^{i} = W_0 + W_1 \cdot X + W_2 \cdot X^{2} + ... \hspace{0.05cm} + W_n \cdot X^{n}\hspace{0.05cm}.$$
In the transition from the Union Bound $p_{1}$ to the more imprecise bound $p_{3}$ among others the function ${\rm Q}(x)$ is replaced by the Chernoff-Rubin bound ${\rm Q}_{\rm CR}(x)$ . Both functions are shown in the above graph (red and green curve, respectively).
In the Exercise 1.16Z the relationship between these functions is evaluated numerically and referenced to the bounds ${\rm Q}_{o}(x)$ and ${\rm Q}_{u}(x)$ which are also drawn in the above graph.
Hints:
- This exercise belongs to the chapter Schranken für die Blockfehlerwahrscheinlichkeit.
- Die oben zitierte Literaturstelle [Liv10] verweist auf das Vorlesungsmanuskript "Liva, G.: Channel Coding. Lehrstuhl für Nachrichtentechnik, TU München und DLR Oberpfaffenhofen, 2010."
- Weiter verweisen wir auf das interaktive Applet Komplementäre Gaußsche Fehlerfunktionen.
Fragebogen
Musterlösung
- $W_{1}$ gibt an, wie oft das Hamming–Gewicht $w_{\rm H}(\underline{x}_{i}) = 1$ auftritt.
- $W_{n}$ gibt an, wie oft das Hamming–Gewicht $w_{\rm H}(\underline{x}_{i}) = n$ auftritt.
Damit lautet die Union Bound:
- $$p_1 = {\rm Pr(Union \hspace{0.15cm}Bound)}= \sum_{i = 1}^{n}\hspace{0.05cm}W_i \cdot {\rm Q}\left ( \sqrt{i/\sigma^2} \right ) \hspace{0.05cm}.$$
(2) Das Distanzspektrum des $(8, 4, 4)$–Codes wurde mit $W_{0} = 1 , \ W_{4} = 14, \ W_{8} = 1$ angegeben. Somit erhält man für $\sigma = 1$:
- $$p_1 = W_4 \cdot {\rm Q}\left ( 2 \right ) + W_8 \cdot {\rm Q}\left ( 2 \cdot \sqrt{2} \right ) = 14 \cdot 2.28 \cdot 10^{-2}+ 1 \cdot 0.23 \cdot 10^{-2} \hspace{0.15cm}\underline{\approx 32.15\%}\hspace{0.05cm},$$
bzw. für $\sigma = 0.5$:
- $$p_1 = 14 \cdot {\rm Q}\left ( 4 \right ) + {\rm Q}\left ( 4 \cdot \sqrt{2} \right ) = 14 \cdot 3.17 \cdot 10^{-5}+ 1.1 \cdot 10^{-8} \hspace{0.15cm}\underline{\approx 0.0444 \%}\hspace{0.05cm}.$$
(3) Mit der Minimaldistanz $d_{\rm min} = 4$ erhält man:
- $$\sigma = 1.0\text{:} \hspace{0.4cm} p_2 \hspace{-0.15cm}\ = \ \hspace{-0.15cm} W_4 \cdot {\rm Q}\left ( 2 \right ) \hspace{0.15cm}\underline{= 31.92\%}\hspace{0.05cm},$$
- $$\sigma = 0.5\text{:} \hspace{0.4cm} p_2 \hspace{-0.15cm}\ = \ \hspace{-0.15cm}W_4 \cdot {\rm Q}\left ( 4 \right ) \approx p_1 \hspace{0.15cm}\underline{ = 0.0444 \%}\hspace{0.05cm}.$$
(4) Richtig ist der Lösungsvorschlag 1:
- Die Union Bound – hier mit $p_{1}$ bezeichnet – ist in jedem Fall eine obere Schranke für die Blockfehlerwahrscheinlichkeit.
- Für die Schranke $p_{2}$ (Truncated Union Bound) trifft das nicht immer zu.
- Beispielsweise erhält man beim $(7, 4, 3)$–Hamming–Code ⇒ $W_{3} = W_{4} = 7, \ W_{7} = 1$ mit der Streuung $\sigma = 1$:
- $$p_2 \hspace{-0.15cm}\ = \ \hspace{-0.15cm} 7 \cdot {\rm Q}\left ( \sqrt{3} \right ) = 7 \cdot 4.18 \cdot 10^{-2} \approx 0.293\hspace{0.05cm},$$
- $$p_1 \hspace{-0.15cm}\ = \ \hspace{-0.15cm} p_2 + 7 \cdot {\rm Q}\left ( \sqrt{4} \right )+ 1 \cdot {\rm Q}\left ( \sqrt{7} \right ) \approx 0.455 \hspace{0.05cm}.$$
Die tatsächliche Blockfehlerwahrscheinlichkeit wird wahrscheinlich zwischen $p_{2} = 29.3\%$ und $p_{1} = 45.5\%$ liegen (wurde allerdings nicht nachgeprüft).
Das heißt: $p_{2}$ ist keine obere Schranke.
(5) Richtig sind die Lösungsvorschläge 1 und 3, wie die folgende Rechnung für den $(8, 4, 4)$–Code zeigt:
- Es gilt ${\rm Q}(x) ≤ {\rm Q_{CR}}(x) = {\rm e}^{-x^2/2}$. Damit kann für die Union Bound
- $$p_1 = W_4 \cdot {\rm Q}\left ( \sqrt{4/\sigma^2} \right ) +W_8 \cdot {\rm Q}\left ( \sqrt{8/\sigma^2} \right )$$
- eine weitere obere Schranke angegeben werden:
- $$p_1 \le W_4 \cdot {\rm e}^{ - {4}/(2 \sigma^2) } +W_8 \cdot {\rm e}^{ - {8}/(2 \sigma^2) } \hspace{0.05cm}.$$
- Mit $\beta = {\rm e}^{–1/(2\sigma^2)}$ kann hierfür auch geschrieben werden (das vorgegebene $\beta = 1/\sigma$ ist also falsch):
- $$p_1 \le W_4 \cdot \beta^4 + W_8 \cdot \beta^8 \hspace{0.05cm}.$$
- Die Gewichtsfunktion des $(8, 4, 4)$–Codes lautet:
- $$W(X) = 1 + W_4 \cdot X^4 + W_8 \cdot X^8 \hspace{0.3cm} \Rightarrow \hspace{0.3cm} W(\beta) - 1 = W_4 \cdot \beta^4 + W_8 \cdot \beta^8\hspace{0.3cm} \Rightarrow \hspace{0.3cm} p_3 = W(\beta) - 1 \ge p_1\hspace{0.05cm}.$$
(6) Mit $\sigma = 1$ lautet der Bhattacharyya–Parameter $\beta = {\rm e}^{–0.5} = 0.6065$ und man erhält damit für die Bhattacharyya–Schranke:
- $$p_3 = 14 \cdot \beta^4 + \beta^8 = 14 \cdot 0.135 + 0.018= 1.913 \hspace{0.15cm}\underline{= 191.3%}\hspace{0.05cm}.$$
- Berücksichtigt man, dass $p_{3}$ (eine Schranke für) eine Wahrscheinlichkeit angibt, so ist $p_{3} = 1.913$ nur eine triviale Schranke.
- Für $\sigma = 0.5$ ergibt sich dagegen $\beta = {\rm e}^{–2} \approx 0.135.$ Dann gilt:
- $$p_3 = 14 \cdot \beta^4 + \beta^8 = 14 \cdot 3.35 \cdot 10^{-4} + 1.1 \cdot 10^{-7} \hspace{0.15cm}\underline{= 0.47 \%}\hspace{0.05cm}.$$
Ein Vergleich mit der Teilaufgabe (2) zeigt, dass im vorliegenden Beispiel die Bhattacharyya–Schranke $p_{3}$ um den Faktor $(0.47 · 10^{–2})/(0.044 · 10^{–2}) > 10$ oberhalb der Union Bound $p_{1}$ liegt.
- Der Grund für diese große Abweichung ist die Chernoff–Rubin–Schranke, die deutlich oberhalb der ${\rm Q}$–Funktion liegt.
- In der Aufgabe 1.16Z wird die Abweichung zwischen ${\rm Q}_{\rm CR}$ und ${\rm Q}(x)$ auch quantitativ berechnet:
- $${{\rm Q_{CR}}( x )}/{{\rm Q}( x )} \approx 2.5 \cdot x \hspace{0.3cm} \Rightarrow \hspace{0.3cm} {{\rm Q_{CR}}( x = 4 )}/{{\rm Q}( x = 4)} \approx 10 \hspace{0.05cm}.$$