CANAUX DISCRETS Marc URO TABLE DES MATIERES CAPACITE D'UN CANAL DISCRET ......................................................................................3 CODAGE DE CANAL.............................................................................................................16 3 CANAUX DISCRETS CAPACITÉ D'UN CANAL DISCRET Un canal est un dispositif permettant d'acheminer un message entre deux points distants. Comme nous allons le voir sur l'exemple ci-après, les modèles de canaux, en théorie de l'information, résultent de la mise en cascade du canal de transmission et du récepteur. EXEMPLE D'UNE CHAÎNE DE TRANSMISION NUMÉRIQUE EN BANDE DE BASE On considère une source binaire S. Les symboles ak issus de S sont "mis en forme" par un filtre de réponse impulsionnelle g( t ) de telle sorte que le signal à la sortie de ce filtre a pour +∞ 1 expression ∑ ak g(t − kT ) où représente le débit binaire de la source. À l'extrémité du T k =− ∞ canal de transmission sont disposés: - un filtre adapté de réponse impulsionnelle g( −t ) (sa présence contribue à minimiser la probabilité d'erreur), - un échantillonneur, - un comparateur à seuil. Formant Source g(t) Filtre réception Comparateur à seuil Canal de transmission Echantillonneur g(-t) ak Plusieurs modèles peuvent être élaborés à partir de la chaîne de transmission; - un premier modèle est obtenu en englobant le formant, le canal de transmission, le filtre réception et l'échantillonneur 4 _____________________________________________________________ canaux discrets 0 Formant Filtre réception Canal de transmission Echantillonneur g(t) 1 g(-t) On obtient un canal à deux entrées ("0" et "1"), la variable de sortie est continue. - si on connecte un comparateur à seuil après l'échantillonneur de telle sorte la valeur échantillonnée est interprétée en "0" (resp. en "1") si elle est négative (resp. positive) (cette structure de récepteur est justifiée lorsque les éléments binaires sont codés en des valeurs symétriques -V et +V et lorsque le canal de transmission est assimilé à un canal à bruit additif gaussien), on obtient un canal à deux entrées (les éléments binaires) et deux sorties (les éléments binaires estimés); 0 1 Comparateur à seuil Filtre réception à un niveau Formant Echantillonneur Canal de transmission g(t) g(-t) 0 estimé 1 estimé Le canal est caractérisé par les correspondances probabilistes (probabilités de transition) entre les symboles d'entrée et les symboles de sortie. Ainsi pour le récepteur décrit ci-dessus, les zones de décision des symboles estimés peuvent être représentées comme suit; densité de probabilité de l’échantillon si “0” émis densité de probabilité de l’échantillon si “1” émis P{“0” décidé / “1” émis} on décide “0” émis P{“1” décidé / “0” émis} -V 0 V on décide “1” émis canaux discrets _____________________________________________________________5 Le modèle de canal associé peut être représenté de la façon suivante; 0 0 Sortie Entrée 1 1 Dans le cadre du codage de source, nous avons étudié comment utiliser les redondances d'une source pour diminuer son débit binaire tout en conservant sa quantité d'information. Pour faire parvenir à un destinataire la nouvelle source X ainsi obtenue, on va utiliser un canal de transmission. La variable Y reçue à la sortie du récepteur comportera des différences avec la variable X initialement émise dues aux perturbations (le bruit) agissant sur le support de transmission. PERTURBATIONS X CANAL DE TRANSMISSION ET RECEPTEUR Y Du point de vue de la théorie de l'information, les imperfections du canal peuvent être traduites en termes d'information qu'apporte la variable de sortie Y sur la variable d'entrée X. I( X; Y ) = H( X ) − H( X / Y ) . Le terme H(X / Y ) s'appelle l'ambiguïté, il correspond à l'incertitude qui reste sur X lorsque Y est connue: Il sera d'autant plus grand que le canal sera perturbé. On modélisera un canal par deux alphabets (un alphabet d'entrée correspondant aux valeurs possibles pour X et un alphabet de sortie constitué des valeurs prises par Y) et une matrice de transition Q dont le terme Qij situé à la iième ligne et jième colonne représente la probabilité pour que la iième valeur de l'alphabet d'entrée soit transformée en la jième valeur de l'alphabet de sortie. 6 _____________________________________________________________ canaux discrets La quantité I( X;Y ) = H( X ) − H( X / Y ) ne permet pas de caractériser un canal de façon intrinsèque en ce sens qu'elle est fonction de la loi de probabilité de X. C'est pourquoi on définit la capacité d'un canal par le maximum de I( X;Y ) en prenant en compte toutes les lois de probabilité possibles sur X. En d'autres termes: C = Max I ( X;Y) avec C exprimée en bits. les lois de X C correspond au maximum d'information que peut apporter le canal de transmission. On notera que cette quantité C existe car nous avons montré que I( X;Y ) est une fonction ∩ convexe de la loi de X. Un canal est discret si les alphabets d'entrée et de sortie sont finis. Il est dit à temps discret si l'échelle des temps est discrète. En pratique on omettra souvent de préciser "à temps discret". Remarque Bien que la transformation de X en Y s'accompagne forcément d'un retard, on notera Yn la réponse du canal à Xn (au lieu de Yn+τ où τ serait le retard), ceci pour alléger la notation. Un canal sans mémoire est un canal pour lequel on a la relation: n n n P {Yi = yi } / {Xi = xi } = ∏ P{Yi = yi / Xi = xi } ∀n ∀xi ∀yi i =1 i =1 i =1 En d'autres termes, cela signifie que la sortie à un instant donné ne dépend statistiquement que de l'entrée correspondante. Un canal est symétrique si l'ensemble des valeurs constituant l'alphabet de sortie peut être partitionné en sous-ensembles de telle sorte que pour chacun de ces sous-ensembles, la sousmatrice de transition possède les propriétés suivantes: - Toutes les lignes sont identiques (à des permutations près). - Toutes les colonnes (s'il y en a au moins deux) sont identiques (à des permutations près). canaux discrets _____________________________________________________________7 Exemple: Soient {0,1} (resp {0,1,2}) l'alphabet d'entrée (resp de sortie) et Q la matrice de transition. 0 1 2 ← alphabet de Y 0 0,7 0,2 0,1 1 0,1 0,2 0,7 ↑ alphabet de X On peut partitionner l'alphabet de sortie en {0,2} et {1}. Les deux sous-matrices de transition sont alors respectivement: 0 0 1 2 1 0, 7 0,1 et 0 0,2 1 0,2 0,1 0,7 Ces deux matrices possèdent bien les propriétés requises, donc le canal est symétrique. En général, le calcul direct de la capacité d'un canal s'avère difficile et nécessite l'utilisation d'algorithmes. Cependant, lorsque le canal est décomposable en canaux élémentaires de capacités connues, un raisonnement habile peut permettre d'aboutir au résultat. Dans le cas particulier d'un canal symétrique, nous allons montrer que le calcul s'effectue simplement. Théorème Pour un canal symétrique, la capacité est atteinte pour une loi uniforme sur l'alphabet d'entrée. Précisons tout d'abord les notations: X (resp. Y) est la variable d'entrée (resp. de sortie). {x1, x2 ,..., x K } (resp. {y1 , y2 ,..., yL }) est l'alphabet d'entrée (resp. de sortie). pi = P {X = x i} q j = P{Y = y j } Qj / i = P{Y = y j / X = xi } 8 _____________________________________________________________ canaux discrets D'autre part, le canal étant symétrique, on suppose que l'alphabet de sortie peut être { }{ } { partitionné en r sous-ensembles y1 , y2 ,...,y k1 , yk1 +1 , yk1 + 2 ,..., yk2 , ..., yk r−1 +1 ,y kr−1 + 2 ,..., ykr } de telle sorte que les sous-matrices de transition possèdent les propriétés requises (lignes et colonnes identiques à des permutations près). On recherche alors une loi sur X qui permet de rendre maximum I( X;Y ) = H(Y ) − H(Y / X ) . K L i =1 j =1 − H(Y / X ) = ∑ pi ∑ Qj / i logQj / i , soit encore en décomposant sur la partition: k2 kr K k1 H Y / X p Q log Q Q log Q Q log Qj /i − ( ) = ∑ i ∑ j / i j/i + ∑ j/i j /i +...+ ∑ j / i i =1 j =k1 +1 j = kr− 1 +1 j =1 Les sommes apparaîssant dans l'accolade ne dépendent pas de l'indice i (propriété des sousmatrices de transition). k1 Notons α 1 = ∑ Qj /i log Qj /i , α 2 = j =1 k2 ∑ Qj /i log Qj /i ,..., αr = j =k1 +1 K r i =1 i =1 kr ∑Q j = kr −1 +1 j /i log Qj /i On a alors: − H(Y / X ) = ∑ pi {α 1 + α 2 +...+ α r }= ∑ αi et par conséquent cette quantité ne dépend pas de p1 , p2 ,..., pK . Comme I( X; Y ) est une fonction ∩ convexe de p1 , p2 ,..., pK , cela signifie que H(Y ) est une fonction ∩ convexe de p1 , p2 ,..., pK . Le problème se résume donc à trouver une loi pour X qui rende H(Y ) maximum. k1 En remarquant que l'on peut écrire H(Y ) = − ∑ q j log q j − j= 1 k2 ∑ q j log q j −...− j =k 1 +1 kr ∑ q log q , on va j j j = kr−1 +1 montrer que l'on peut maximiser chacun des r termes de cette expression en prenant pour X une loi uniforme. canaux discrets _____________________________________________________________9 k1 Intéressons-nous au premier terme − ∑ q j log q j (la démonstration est identique pour les r-1 j =1 autres termes). Les propriétés de la sous-matrice de transition se traduisent par une contrainte sur les q j . En effet: Les variables q j vérifient les équations: q1 = p1Q1/ 1 + p2 Q1/ 2 +...+ pK Q1/ K q2 = p1Q2/ 1 + p2 Q2 / 2 +...+ pK Q2/ K ... qk1 = p1Qk1 /1 + p2 Qk1 / 2 +...+ pK Qk1 / K En sommant les termes du membre de gauche et ceux du membre de droite, on obtient: k1 k1 k1 k1 j =1 j =1 j =1 j =1 ∑ qj = p1∑ Qj /1 + p2 ∑ Qj / 2 +...+ pK ∑ Qj / K . De plus, compte tenu des propriétés de symétrie de la k1 sous-matrice k1 K ∑ q = ∑ p ∑Q j =1 j i =1 i j =1 de transition, les K sommes sont identiques et on a: k1 j/i = ∑ Qj /i . j= 1 k1 Disposant de la contrainte sur les q j , dérivons − ∑ q j log q j par rapport à q j . On j =1 k1 obtient:− log q j − 1 . La recherche du maximum − ∑ q j log q j conduit donc à k1 équations j =1 identiques en q1 ,q2 ,...,qk1 . Par conséquent, les q j sont égales. L'utilisation de la contrainte k1 k1 Q q = ∑=1 j ∑=1 Qj / i = Q1 permet de déduire ∀j ∈{1,2,...,k1} qj = k 1 . j j 1 Un moyen simple d'obtenir l'égalité entre les q j consiste à choisir pour X une loi uniforme Q (grâce à la forme particulière de la sous-matrice de transition). Mais a-t-on alors q j = 1 ? k1 Le fait de prendre pour X une loi uniforme permet d'obtenir l'égalité entre les q j et on a alors: K 1 q j = ∑ Qj / i . i=1 K 10 ____________________________________________________________ canaux discrets De plus on peut écrire de deux manières différentes la somme de tous les termes de la sousK matrice de transition: k1 i =1 j =1 K qj = ∑ i=1 K k1 i =1 j =1 ∑ ∑ Qj / i = k1∑ Qj / i = K ∑ Qj /i et par conséquent on a Q 1 1 k1 Qj / i = ∑ Qj /i = 1 (cqfd). K k1 j=1 k1 Le même raisonnement peut être tenu pour chacun des r-1 sous-ensembles restant. Remarques - Si la capacité C a été calculée en considérant des mots de n symboles, on exprimera la C capacité par symbole par le rapport . n - La capacité d'un canal correspondant à l'aptitude du dispositif à transmettre de l'information, on sera amené à utiliser la capacité par unité de temps (en général la seconde). Cette grandeur, exprimée en bits par seconde, est obtenue en divisant la capacité par symbole par l'inverse du débit symbole. Généralement cette quantité est notée C' . - La remarque précédente conduit naturellement à définir l'entropie d'une source par unité de temps, notée H' , correspondant au rapport de l'entropie par symbole par l'inverse du débit symbole. - Lorsque se posera le problème de la connexion d'une source à un canal, on aura à comparer H' et C' . L'objet du deuxième théorème de Shannon consistera à montrer que la transmission de l'information pourra s'effectuer dans les meilleures conditions dès lors que H' < C' . Dans tout ce qui suit, on notera log2 le logarithme en base 2. EXEMPLES DE CALCULS DE CAPACITÉS 1er exemple 0 1 0 1 1 1 canaux discrets ____________________________________________________________11 La capacité de ce canal est de 1 bit.. En effet: I( X;Y ) = H( X ) − H( X / Y ) = H( X ) . La capacité =0 est atteinte pour une loi uniforme sur l'entrée. La connaissance de Y entraîne la connaissance de X. L'information de Y sur X valant H(X ) , elle permet de lever l'incertitude sur X. C'est un cas très favorable en ce sens que la transmission n'est affectée par aucun défaut. 2ième exemple 0 1 0 1 1 Dans ce cas, la capacité est nulle et est atteinte quelle que soit la loi de probabilité à l'entrée. I( X;Y ) = H(Y ) − H(Y / X ) = 0. =0 =0 C'est un cas très défavorable. 3ième exemple (canal binaire symétrique) 0 1-p 0 p 1 p 1 1-p 0 1 p et par conséquent le canal est symétrique. La matrice de transition s'écrit 0 1 − p 1 p 1 − p La capacité est atteinte pour une loi uniforme sur l'alphabet d'entrée. On a donc 1 P{X = 0} = P{X = 1} = . 2 12 ____________________________________________________________ canaux discrets Pour calculer la capacité C, on va utiliser la relation I( X;Y ) = H(Y ) − H(Y / X ) car on connaît la loi de Y sachant X. Calculons la loi de Y. P{Y = 0} = P{Y = 0 ∩ X = 0} + P{Y = 0 ∩ X = 1} soit: P{Y = 0} = P{X = 0}P{Y = 0 / X = 0} + P {X = 1}P{Y = 0 / X = 1} = On a donc P{Y = 1} = 1 1 1 (1 − p) + p = 2 2 2 1 . 2 1 1 H(Y ) = −2 log2 = 1 2 2 H(Y / X ) = P{X = 0}H(Y / X = 0 ) + P {X = 1}H(Y / X = 1) = 1 (H(Y / X = 0) + H (Y / X = 1)) 2 H(Y / X = 0 ) = − {P{Y = 0 / X = 0}log2 P {Y = 0 / X = 0} + P {Y = 1 / X = 0}log2 P{Y = 1 / X = 0}} H(Y / X = 0 ) = − (1 − p)log2 (1 − p) − plog2 p = H2 (p) et de obtiendrait: H(Y / X = 1) = − (1 − p)log2 (1 − p) − plog2 p = H2 (p) On a donc: 1 H(Y / X ) = 2 H2 (p) = H2 (p) soit finalement: C = 1 − H2 (p) 2 1 1-H2(p) H2(p) 0 0,5 1 p la même façon on canaux discrets ____________________________________________________________13 Commentaires - Notons que H2 ( p) représente l'entropie d'une variable aléatoire de Bernoulli de paramètre p. 1 Cette entropie est maximum et vaut 1 bit pour p = , donc la capacité est nulle: C'est le cas le 2 plus défavorable car X et Y sont indépendantes. La sortie n'apporte aucune information sur l'entrée. - Lorsque p = 0 , il n'y a jamais d'erreur de transmission: Y coïncide avec X et la capacité est maximum. - Pour p = 1, il y a erreur systématique. On sait qu'à Y = 0 (resp Y = 1) correspond X = 1 (resp X = 0 ). La connaissance de Y permet de déterminer X. La capacité est maximum. 4ième exemple (canal binaire à effacement) 0 1-q 0 q ε q 1 1 1-q L'alphabet d'entrée est binaire {0,1} tandis que l'alphabet de sortie est ternaire {0, ε ,1}. Le symbole ε est appelé symbole d'effacement. Il est introduit de manière naturelle pour modéliser un récepteur fonctionnant sur le principe de soft décision par opposition à hard décision. Si on suppose que les deux symboles 0 et 1 sont codés respectivement en -V et +V avant d'être transmis, les perturbations agissant sur le canal de transmission vont modifier ces valeurs. L'existence d'un seuil de décision (0 si les symboles sont équiprobables) conduit à une hard décision: 0 si le niveau reçu est négatif et 1 sinon. On peut affiner cette structure de réception en définissant deux seuils de décision D1 et D2 (avec D1>D2). Si le niveau reçu est supérieur à D1, on décide que 1 a été émis, s'il est inférieur à D2 on décide que 0 a été émis et s'il se situe entre D1 et D2 on peut imaginer deux façons de gérer cette situation; - utiliser une voie de retour pour demander la réémission du symbole, 14 ____________________________________________________________ canaux discrets - utiliser un code correcteur d'erreurs pour "remplir" les effacements, c'est-à-dire remplacer le symbole d'effacement par l'élément binaire effectivement émis. La première procédure permet d'obtenir une probabilité d'erreur nulle mais elle s'accompagne d'une réduction du débit de la source (si la voie de retour est reliée à la source) ou d'une augmentation du débit du canal (si la voie de retour commande une mémoire) nécessitant une mémoire de taille infinie si on ne veut pas perdre d'information. La réduction (resp.augmentation) du débit de la source (resp. du canal) sera d'autant plus importante que D1 et D2 seront grands en valeur absolue. Concernant la seconde procédure, le code correcteur d'erreurs ne pourra remplir les effacements que si ceux-ci n'apparaîssent pas trop souvent, c'est-à-dire si D1 et D2 ne sont pas trop grands en valeur absolue. On constate donc que les deux procédés décrits s'accompagnent d'une contrepartie incontournable. densité de probabilité de l'échantillon si "0" émis densité de probabilité de l'échantillon si "1" émis -V V D2 on décide "0" émis 0 zone de non décision D1 on décide "1" émis Ainsi ces procédures permettent de réduire la probabilité d'erreur et le symbole de réception attribué à un niveau reçu entre D1 et D2 est appelé symbole d'effacement. canaux discrets ____________________________________________________________15 La matrice de transition s'écrit: 0 0 1 − q 10 1 ε 0 1− q q q 0 1 − q q Les deux sous-matrices de transition et possèdent les propriétés requises 1 − q 0 q pour que le canal soit symétrique. La capacité est donc atteinte pour une loi uniforme sur l'entrée. Le calcul de la loi de probabilité de sortie conduit à: P{Y = 0} = P{Y = 0 ∩ X = 0} = P{X = 0}P{Y = 0 / X = 0} = P{Y = 1} = P{Y = 1 ∩ X = 1} = P{X = 1}P{Y = 1 / X = 1} = P{Y = ε } = P{Y = ε ∩ X = 0} + P {Y = ε ∩ X = 1} = 1 (1 − q ) 2 1 (1 − q ) 2 1 1 q+ q = q 2 2 On a donc: 1 1−q H(Y ) = − 2 (1 − q )log2 + qlog 2 q 2 2 H(Y ) = − ((1− q )log2 (1− q ) + q log2 q − (1 − q )log2 2) H(Y ) = H2 (q) + 1 − q H(Y / X = 0 ) = − {(1 − q )log2 (1− q ) + q log2 q}= H2 (q) . On obtient de même: H(Y / X = 1) = − {(1 − q )log2 (1− q ) + q log2 q}= H2 (q) soit finalement: H(Y / X ) = 1 1 H2 (q) + H2 (q ) = H2 (q ) c'est-à-dire C = H2 (q ) + 1 − q − H2 (q) = 1 − q . 2 2 Tout se passe comme si la fraction q de l'information correspondant aux symboles effacés était perdue. 16 ____________________________________________________________ canaux discrets CODAGE DE CANAL Après avoir caractérisé un canal du point de vue de la théorie de l'information en introduisant sa capacité, nous allons maintenant nous intéresser à la qualité de la transmission en termes de probabilité d'erreur. Cette analyse nous conduira à énoncer deux théorèmes fondamentaux: - Le deuxième théorème de Shannon qui énonce une condition d'adéquation entre la source et le canal pour obtenir un taux d'erreur aussi faible que souhaité. - Le théorème réciproque du deuxième théorème de Shannon qui fournira un minorant de la probabilité d'erreur lorsque la condition d'adéquation source canal n'est pas satisfaite. Dans un premier temps nous nous intéresserons au théorème réciproque en montrant auparavant l'inégalité de Fano. Revenant à la définition de la capacité d'un canal, on peut interpréter l'ambiguïté H(X / Y ) comme l'information perdue par le canal de transmission. Considérons alors un canal possédant un alphabet de sortie identique à l'alphabet d'entrée et comportant m symboles. Notons {x1 , x2 ,..., x m } l'alphabet commun à l'entrée et à la sortie. Soient Pij = P {X = x i ∩ Y = y j } Qij = P {Y = x j / X = xi } et pe la probabilité d'erreur par symbole. m m On a pe = P (X = xi ∩ Y ≠ xi ) soit pe = ∑ P{X = x i ∩ Y ≠ x i } mais on a: i =1 i =1 {Y ≠ xi } = {Y = x j }. Donc j ≠i m m m pe = ∑ P X = xi ∩ Y = x j = ∑ P {Y = x j ∩ X = x i } = ∑ ∑ Pij . i =1 j≠i i =1 j ≠i i =1 j ≠ i L'inégalité de Fano fournit un majorant de l'ambiguïté H(X / Y ) qui peut être déduit d'un raisonnement heuristique. L'incertitude qui subsiste sur X lorsque Y est connue peut être divisée en deux termes: Un premier terme qui correspond à l'incertitude liée à la question de savoir si oui ou non une erreur a été commise et un second terme relatif à l'incertitude sur le symbole qui a été effectivement émis lorsque l'on commet une erreur (cette incertitude concerne les m-1 symboles autres que celui reçu et ceci avec la probabilité pe ) canaux discrets ____________________________________________________________17 On devrait donc avoir: H(X / Y ) ≤ H2 (pe ) + pe log2 (m − 1) inégalité de Fano Montrons cette inégalité. H(X / Y ) = ∑ P{Y = x j }H(X / Y = x j ) m j =1 m H(X / Y ) = ∑ P{Y = x j }∑ − P{X = xi / Y = x j }log2 P{X = xi / Y = x j } j =1 m m i =1 H(X / Y ) = − ∑ ∑ Pij log2 P{X = xi / Y = x j } m j =1 i=1 m m j =1 i ≠ j j =1 H(X / Y ) = − ∑ ∑ Pij log2 P{X = xi / Y = x j }− ∑ Pjj log2 P{X = x j / Y = x j } Calculons la quantité A = H (X / Y ) − H2 (pe ) − pe log2 (m − 1) m Comme − H2 ( pe ) = pe log2 pe + (1 − pe )log2 (1 − pe ) et pe = ∑ ∑ Pij , on a: i =1 j ≠ i m m − H2 ( pe ) = ∑ ∑ Pij log2 pe + (1 − pe )log2 (1 − pe ) mais 1 − pe = ∑ Pjj donc j =1 i ≠ j m j =1 m − H2 ( pe ) = ∑ ∑ Pij log2 pe + ∑ Pjj log2 (1 − pe ) et comme j =1 i ≠ j j =1 m − pe log2 ( m − 1) = ∑ ∑ Pij log2 j =1 i ≠ j 1 m −1 On a donc m A = ∑ ∑ Pij log2 j =1 i ≠ j m m 1 1 + ∑ Pjj log2 + ∑ ∑ Pij log2 pe + P{X = xi / Y = x j } j =1 P{X = x j / Y = x j } j =1 i ≠ j m m j =1 j =1 i ≠ j ∑ Pjj log2(1 − pe ) +∑ ∑ Pij log2 m A = ∑ ∑ Pij log2 j =1 i ≠ j 1 m −1 m pe 1 − pe + ∑ Pjj log2 P{X = x j / Y = x j } (m − 1)P{X = xi / Y = x j } j =1 Soit: 18 ____________________________________________________________ canaux discrets 1 (x − 1), on obtient: Ln 2 m pe 1 m 1 − pe A≤ P P 1 1 − + − ∑ ∑ ∑ Ln 2 j =1 i ≠ j ij (m − 1)P {X = x i / y = x j } j =1 jj P {X = x j / y = x j } En utilisant la majoration Ln x ≤ x − 1 c' est - à - dire log2 x ≤ soit encore: m m m 1 pe 1 = − + ( − ) = − A≤ P Y x p p P Y x P { } { } ∑∑ ∑=1 jj j e e ∑ j Ln 2 ( m − 1) j =1 i ≠ j j =1 j =1 =1− pe = −1 ( ) m A≤ 1 {pe − pe + 1 − pe − (1 − pe )}= 0 (cqfd). Ln 2 Corollaire de l'inégalité de Fano En permutant les rôles de X et Y dans l'inégalité de Fano, on obtient: H(Y / X ) ≤ H2 (pe ) + pe log2 (m − 1) Remarque Si on utilise un code bloc de longueur n (un mot correspond à la concaténation de n lettres code), on peut appliquer le corollaire aux vecteurs X n = ( X1 , X 2 ,..., Xn ) et Y n = (Y1 ,Y2 ,...,Yn ). On obtient alors H(Y / X n n ) ≤ H ( p ) + p log (m 2 e e 2 n − 1) . Dans cette expression, pe représente la probabilité d'erreur sur les mots code de longueur n. Énonçons un dernier résultat nécessaire à la démonstration du théorème réciproque du deuxième théorème de Shannon: canaux discrets ____________________________________________________________19 Théorème Soit un canal discret sans mémoire utilisé pour transmettre des mots code de longueur n. On désigne par X n = ( X1 , X 2 ,..., Xn ) (resp Y n = (Y1 ,Y2 ,...,Yn )) l'entrée (resp la sortie) du n n n canal. Alors I(X ;Y ) ≤ ∑ I (Xl ;Yl ) l =1 n On a I(X n ,Y n ) = H (Y n )− H(Y n / X n ). Et on sait que H(Y n ) ≤ ∑ H(Yl ) (l'égalité ayant lieu l=1 lorsque les variables sont indépendantes). En outre on a: H(Y1 ,...,Yn / X1 ,..., X n ) = H(Y1 / X1 ,..., X n ) + H(Y2 / Y1 , X1 ,..., X n )+...+ H(Yn / Yn −1 ,...Y1 , X1 ,..., Xn ) Mais le canal étant sans mémoire et causal (la sortie à un instant donné ne dépend pas de l'entrée aux instants ultérieurs), on peut écrire: H(Y1 ,...,Yn / X1 ,..., X n ) = H(Y1 / X1 ) + H(Y2 / Y1 , X 2 )+...+ H(Yn / Yn −1 ,...,Y1 ,X n ) Soit, en appliquant à nouveau le caractère sans mémoire (la sortie Yi n'est fonction que de Xi ): n H(Y1 ,...,Yn / X1 ,..., X n ) = ∑ H(Yl / Xl ) l =1 On a donc: n n n n l =1 l =1 l =1 l =1 I(X n ;Y n ) ≤ ∑ H(Yl ) − ∑ H(Yl / X l ) = ∑ H (Yl ) − H(Yl / Xl ) = ∑ I(Yl ; Xl ) cqfd. Théorème réciproque du deuxième théorème de Shannon Soit un canal discret sans mémoire de capacité C sur lequel on transmet des mots code de longueur n. On note H∞ ( X ) l'entropie par lettre code. Si m désigne la taille de l'alphabet code et pe la probabilité d'erreur par mot code, on a la relation: pe ≥ 1 1 H ∞ (X ) − C − log2 m n 20 ____________________________________________________________ canaux discrets On a H(Y n / X n ) = H(X n )− I(X n ; Y n ). D'autre part, on sait que pour une source discrète stationnaire, la suite Hn ( X ) = une suite décroissante dont la limite est H∞ ( X ) . 1 n Cela signifie que ∀ n H (X ) ≥ H∞ ( X ) soit ∀ n n H(X n )≥ n H ∞ 1 n H(X ) est n (X ). De plus on a n établi dans le théorème précédent que: I(X n ;Y n ) ≤ ∑ I (Xl ;Yl ) . l =1 Mais, de par la définition de la capacité, on a aussi: I( Xl ;Yl ) ≤ C . D'où: I(X ;Y ) ≤ nC . On obtient alors: H(Y / X ) ≥ n H ( X ) − nC = n(H ( X ) − C ). n n n n ∞ ∞ En utilisant l'inégalité de Fano appliquée aux codes bloc, on a: H(Y n / X n ) ≤ H2 ( pe ) + pe log 2 (mn − 1) donc H(Y n / X n ) ≤ H2 ( pe ) + pe log 2 mn = H2 ( pe ) + n pe log2 m .Finalement: H2 ( pe ) + n pe log2 m ≥ H(Y n / X n ) ≥ n (H∞ ( X ) − C) soit encore: n pe log2 m ≥ n (H∞ ( X ) − C ) − H2 ( pe ). Mais H2 ( pe ) correspond à l'entropie d'une variable aléatoire à deux valeurs et est majorée par l'entropie égale à 1 obtenue lorsque les deux valeurs ont même probabilité. On a donc: n pe log2 m ≥ n (H∞ (X ) − C ) − 1 soit pe ≥ 1 1 H ∞ (X ) − C − (cqfd). log2 m n Commentaire Ce théorème s'applique lorsque l'entropie de la source H∞ ( X ) est plus grande que la capacité du canal C auquel on la connecte. On ne peut alors transmettre le contenu de la source avec une probabilité d'erreur inférieure à la borne donnée par le théorème. Si on se place maintenant sous l'hypothèse suivant laquelle l'entropie de la source est inférieure à la capacité du canal, alors le deuxième théorème de Shannon nous permet d'affirmer que la transmission du contenu de la source peut s'effectuer dans les meilleures conditions. Avant de montrer ce théorème fondamental, nous énoncerons le théorème de Shannon-MacMillan pour les couples de variables aléatoires. canaux discrets ____________________________________________________________21 Théorème de Shannon-Mac-Millan pour les couples de variables aléatoires Soit ( X,Y ) un couple dépendant de sources discrètes sans mémoire. Alors ∀ ε > 0, on peut choisir n suffisamment grand pour que les séquences de longueur n constituées de paires {(x1 , y1 ), (x2 , y2 ),..., (xn , yn )} puissent être classées en deux catégories: Les suites typiques formées des suites typiques de X et de Y pour ε et constituant l'ensemble TX ,Y (ε ) et les suites atypiques correspondant au complémentaire du précédent ensemble TXc,Y (ε ) de telle sorte que: c 1. P{une suite ∈TX,Y (ε )}< ε 2. Pour les éléments t n de TX ,Y (ε ) , on a − log(P(t n )) n − − H( X,Y ) < ε soit P(t n ) ≈ a n H ( X,Y ) (où a désigne la base du logarithme pour calculer les entropies). 3. Si une séquence t n = (x n , y n ) est dans TX ,Y (ε ) et x est fixé, alors n − ( )− H(Y / X) < 2 ε soit P(y log P(y n / x n ) n n /x n )≈ a 4. Le nombre d'éléments de TX ,Y (ε ) est au plus de a −n H (Y / X ) n (H ( X,Y ) + ε ) Les points 1, 2 et 4 sont la conséquence directe du théorème de Shannon-Mac-Millan en dimension 1 en assimilant le couple ( X , Y ) à une variable aléatoire Z. Pour le point 3 on utilise la formule du 2 en remarquant que: P(t n ) = P (x , y n ( n ) = P(y / x )P(x n n ) et H(X , Y ) = H(X ) + H(Y / X ) . On obtient alors: ) + H (X) + H(Y / X) < ε log P(y n / x n )P(x n ) n n 22 ____________________________________________________________ canaux discrets Mais on a: ( ) + H (X ) + H(Y / X ) ≥ log P (y log P(y n / x n )P(x n ) n (car n n / xn ) + H(Y / X ) − log P(x n ) n + H(X ) a +b ≥ a − b) En remarquant alors que x n est une suite typique (pour ε), de par la définition des suites typiques associées aux couples de variables aléatoires, on déduit: log P(y n / x n ) n + H(Y / X ) ≤ ( )+ H (X) + H(Y / X) + log P(x ) + H(X ) < 2 ε log P(y n / x n )P(x n ) n n n (cqfd). Remarque En permutant X et Y et en désignant par X (resp Y) l'entrée (resp la sortie) d'un canal, le point 3 du théorème peut être interprété comme suit: Si n est suffisamment grand, alors à chacune des a nH(Y ) sorties hautement probables du canal, il correspond a nH( X/ Y ) entrées hautement probables, car si y est une suite typique, alors on sait que les suites typiques (x, y ) sont telles que P{X = x / Y = y} ≈ a −nH (X /Y ) . Cette propriété nous sera utile pour montrer le deuxième théorème de Shannon. Deuxième théorème de Shannon Soient un canal discret sans mémoire de capacité C et une source discrète stationnaire d'entropie R. Alors si R < C, ∀ ε > 0 il existe un code bloc de longueur n tel que la probabilité d'erreur pe après le décodeur soit inférieure à ε si le code bloc est utilisé sur le canal. canaux discrets ____________________________________________________________23 La démonstration ne consiste pas à exhiber un code optimum qui possèderait les propriétés énoncées par le théorème. Elle repose sur un principe original appelé codage aléatoire selon lequel le code utilisé pour la transmission des messages sur le canal sera choisi de façon aléatoire dans une classe de codes. On calculera alors la probabilité d'erreur moyenne (la moyenne étant effectuée sur la classe de codes déterminée au préalable et par rapport à la loi de probabilité que l'on aura choisi sur cette classe pour choisir le code à utiliser). On montrera que cette erreur moyenne peut être rendue aussi petite que souhaitée et on en déduira qu'il existe un code dont la probabilité d'erreur est aussi petite que l'on veut. On note X la source à présenter à l'entrée du canal pour atteindre sa capacité et Y la sortie correspondante. On a bien sûr C = H(X ) − H( X / Y ) . Soit S la source d'entropie R dont on souhaite transmettre le contenu. On choisit n suffisamment grand pour que les suites atypiques issues de S, X et Y aient une probabilité d'apparition négligeable. Les codes seront alors déterminés en faisant correspondre à chaque suite typique de S une suite typique de X. Cette association est rendue possible car R < C = H( X ) − H( X / Y ) entraîne R < H (X ) donc nR nH ( X ) . Un code est donc une application injective d'un ensemble à a nR éléments a <a (appelés "messages") vers un ensemble à a nH( X ) (appelés "points"). La loi de probabilité définie sur cette classe de codes est la loi uniforme (tous les codes ont la même probabilité d'être choisis). On se propose tout d'abord de calculer la probabilité pour qu'un point particulier corresponde à un message. La loi de probabilité définie sur les codes étant uniforme, le problème consiste à dénombrer les cas favorables et les cas possibles. Le nombre de cas possibles est le nombre d'injections (ou d'arrangements) d'un ensemble à nR nR nH X a éléments vers un ensemble à a ( ) éléments, soit AaanH( X) . Le nombre de cas favorables est le produit du nombre d'antécédents possibles pour le point choisi (a nR ) par le nombre d'injections d'un ensemble à a nR − 1 vers un ensemble à a nH( X ) − 1, −1 c'est-à-dire: a nR AaanH( X ) −1 . nR La probabilité qu'un point particulier soit un message est donc: a nR AaanH ( −1 X) −1 nR p= a nR Aa nH( X) (a ( ) − 1)! (a ( ) − a )! = a (a ( ) − a )! (a ( ) )! a ( nH X =a nR nH X nH X nR nH X nR nR nH X ) =a n (R− H ( X ) ) . 24 ____________________________________________________________ canaux discrets On se place sous l'hypothèse suivant laquelle la suite typique y a été reçue à la sortie du canal. D'après la remarque concernant le théorème précédent, on sait qu'à y correspond a nH( X/ Y ) antécédents possibles. Par conséquent on ne commettra pas d'erreur si, parmi les a nH( X/ Y ) antécédents possibles, un seul est l'image d'un message. anH(X) anR anH(X/Y) y canal messages points De plus le fait de savoir que y a été reçu implique qu'au moins un des a nH( X/ Y ) points provient du message émis par S (sinon on n'aurait pas reçu y). Par conséquent, si on note: e = {pas d' erreur} { E0 = aucun point parmi les a nH ( X / Y ) n' est l' image d' un message } { } { } E1 = exactement un point parmi les a nH ( X / Y ) est l' image d' un message E>1 = au moins un point parmi les anH (X/ Y ) est l' image d' un message On a alors: P{pas d' erreur / y reçu } = P{E1 / E >1 } = P{pas d' erreur / y reçu } = P{E1 } P{E >1 } P{E1 ∩ E >1 } P{E >1 } car E1 ⊂ E >1 Mais: soit: canaux discrets ____________________________________________________________25 P{E1 } = a nH ( X / Y )p(1− p ) a nH ( X/ Y ) −1 (le nombre de points image d' un message suit une loi binômiale de paramètres (a En outre P{E>1 } = 1− P{E0 } = 1− (1 − p) a nH ( X / Y ) nH( X / Y ) )) ,p . La condition R < C se traduit par R < H( X ) − H ( X / Y) soit encore: R − H( X ) < − H( X / Y ) . Donc il existe η > 0 tel que R − H(X ) = − η − H( X / Y ) . On a donc p = a −n η −nH (X /Y ) et: P{E1 } = a nH ( X / Y ) − nη − nH ( X /Y ) P{E1 } = a − nη a (a nH( X /Y ) e ( P{E>1 } = 1− 1 − a (1 − a − nη − nH ( X / Y ) ) (( −1 Ln 1− a −n η−nH ( X /Y ) ) −n η − nH ( X /Y ) a nH ( X /Y ) ) nH( X / Y ) a −1 =a −n η (1 − a − nη − nH ( X /Y ) ) a nH ( X /Y ) −1 soit encore )) = 1− e a nH ( X /Y ) ( n nH X/ Y Ln 1 − a − η− ( ) ) Exprimons maintenant P{E1 } et P{E>1 } pour n grand. (a P{E1 } ≈ a −n η e P{E>1 } ≈ 1− e a nH ( X /Y ) nH ( X /Y ) ) −1 ( − ) a − (−a nη − nH( X / Y ) − n η− nH ( X /Y ) ) − nη −a − =a = 1− e −nη a − nη e −a e a Donc P(e / y reçu ) ≈ −n η a e − a− nη nη ea − n η− nH( X/ Y ) − nη ≈a −nη −nH( X/ Y ) =e − a −n η a −n η−nH ( X /Y ) e ( − η −n η −nH ( X/ Y ) ≈ (1− a n ) 1 + a ) On constate que P{pas d' erreur / y reçu } + ∞→1 soit: n→ P{erreur / y reçu} → 0 cqfd. n → +∞ Remarque Pour compléter la démonstration, il faudrait montrer que le nombre de points est suffisant pour que les sous-ensembles de points de taille a n H (X / Y ) ne contiennent qu'un point image par le codage d'un message. En d'autres termes, il faudrait établir la relation a n H (X ) ≥ a nH ( X / Y )a n R . Ce résultat, long et difficile à montrer, est l'objet du lemme de Feinstein. 26 ____________________________________________________________ canaux discrets Commentaires - Ce théorème donne tout son sens à la notion de capacité que l'on peut interpréter comme la quantité maximum d'information qui peut être transmise sans erreur. - Le résultat énoncé par ce théorème est surprenant, en ce sens qu'a priori, on ne pouvait envisager d'effectuer une transmission sur un canal bruité, avec un taux d'erreur aussi faible que souhaité. - Contrairement au théorème de codage de source, le deuxième théorème de Shannon n'indique pas comment construire le code bloc optimum. Toutefois, il existe une catégorie de codes, les codes correcteurs d'erreurs, qui permettent de réduire la probabilité d'erreur sur un canal. Cette réduction sera obtenue en ajoutant de la redondance aux messages à transmettre. - En pratique, il n'est pas nécessaire qu'à une utilisation de la source il corresponde une utilisation du canal: Les débits source et canal peuvent être différents. Il suffit que la condition Entropie < Capacité soit vérifiée sur un même laps de temps. Ainsi en notant 1 1 Ds = resp Dc = le débit source (resp le débit canal), on devra vérifier Ts Tc entropie capacité H(X ) C < , soit < . unité de temps unité de temps Ts Tc