Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Enseignantes:
Sameh NAJEH , email: sameh.najeh@supcom.tn
Fatma ABDELKEFI, email: fatma.abdelkefi@supcom.tn
Distorsion
Bruit aléatoire
Canal de transmission
N
X
k k
pi,j = Pr {Yk = yj /Xk = xi }, avec: pi,j = 1, ∀i∀k (5)
j=1
q=1−p
0 0
p
p
1 1
q=1−p
moyenne.
La notion d’information est liée à celle de probabilité
conditionnelle. Considérons deux variables aléatoires X et Y.
La probabilité conditionnelle prob(X = x/Y = y ) peut être
définie comme la modification apportée à la probabilité
prob(X = x) lorsqu’on reçoit l’information que l’évènement
{Y = y } est réalisé, c’est à dire cette information modifie
l’incertitude sur la réalisation de X: de prob(X = x) à
prob(X = x/Y = y ) :
• si prob(X = x/Y = y ) ≤ prob(x), alors l’incertitude sur X
augmente,
• si prob(X = x/Y = y ) ≥ prob(x), alors l’incertitude sur X
diminue.
Pour mesurer la variation de l’incertitude, il faut choisir une
fonction décroissante de la probabilité, tel que le Logarithme
qui permet d’exprimer parfaitement les variations d’incertitude.
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
log (x)
Q(X = x) = −log2 (prob(X = x)), où log2 (x) = (9)
log (2)
R = Rs H(X ) (bits/sec).
0.9
0.8
0.7
0.6
H(X)
0.5
0.4
0.3
0.2
0.1
0
0 0.2 0.4 0.6 0.8 1
p
Donc, on a:
M
X 1
H(X ) − log2 (M) = pk log2 ( ) (11)
k=1
Mpk
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
On obtient:
M M
X 1 X 1
H(X )−log2 (M) ≤ pk ( −1)log2 (e) ≤ log2 (e) ( −pk )
k=1
Mpk k=1
M
(13)
Finalement, on a:
X 1
pX ,Y (x/y )log2 ( ) cas discret
H(X /Y = y ) = x
pX ,Y =y (x/y )
p (x/y )log2 ( pX ,Y =y1 (x/y ) ) dx cas continu
R
x X ,Y
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Ainsi, on a:
X
H(X /Y ) = − PX ,Y (x, y )log2 P(x/y ) (16)
x,y
définie par:
Preuve: en exercice.
On peut aussi dire que : l’information mutuelle I (X , Y ) mesure
la quantité d’information commune à X et Y, ce qui donne
aussi une idée sur le degré de dépendance entre X et Y.
Remarques:
1. Si X et Y sont indépendants alors H(X /Y ) = H(X ),
ainsi: I (X , Y ) = 0: résultat prévu.
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Illustration graphique de I (X , Y ).
X
Y
H(X/Y)
I(X;Y) H(Y/X)
Indépendance
H(Y)
H(X)
Proposition
1. I (X , Y ) ≥ 0 et s’annule si et seulement si X et Y sont
indépendants.
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Définitions:
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
I Méthdode de l’arbre:
I Un code préfixe sur l’alphabet binaire {0, 1} peut être
représenté par un trie qui est en fait, un arbre binaire où tous
les nœuds internes ont exactement deux successeurs.
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
L L
X qi X qi
pi log2 ≤ pi ( − 1)log2 e = 0 (34)
i=1
pi i=1
pi
Preuve: Puisque
PM −ltout code instantané doit vérifier l’inégalité
de Kraft: i=1 2 i ≤ 1. On considère la distribution de
probabilité qi définie par: qi = a2−li , avec a ≥ 1. Ainsi, on a:
M
X M
X M
X
qi = 1 = a2−li = a 2−li (37)
i=1 i=1 i=1
Alors:
−li ≤ log2 Pi (42)
Donc:
2−li ≤ Pi (43)
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Ainsi, M −li
≤ M
P P
i=1 2 i=1 pi = 1. On déduit l’existence d’un
code ayant cette distribution des longueurs. A partir de
l’inégalité (41), on obtient:
M
X M
X M
X
− pi log2 pi ≤ pi li ≤ − Pi log2 Pi + 1 (44)
i=1 i=1 i=1
Finalement, on a le résultat.
Pour toute source discrète sans mémoire X , il existe un code
instantané représentant exactement cette source et (ud),
vérifiant la proposition suivante:
Proposition 4:
pi li ci
1
2
1 0
1
4
2 10
1
8
3 110
1
8
3 111
H(X )
D’une façon générale, li ∈
/ N, un code ud vérifie Rs ≥ log2 (M)
.
On comprend le sens de ”codage entropique”: on cherche une
technique de codage sans pertes qui permet de s’approcher au
mieux de la borne inférieure de Rs qui est l’entropie.
• Inconvénient : La méthode de Fano-Shannon nécessite la
minimisation de Rs en tenant compte du fait que les longueurs
li doivent être des entiers !!
• L’algorithme d’Huffman (1952) est un algorithme itératif qui
permet de constuire un code optimal et instantané.
Codes de Huffman
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
M
X M−2
X
Rs log2 (M) = pk lk = pk lk + pM−1 lM−1 + pM lM
k=1 k=1
M−2
0
X
= pk lk + (pM + pM−1 )(lM−1 + 1)
k=1
M−2
0 0 0 0
X
= pk lk + pM−1 (lM−1 + 1)
k=1
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Donc, on a
0 0
Rs log2 (M) = Rs log2 (M − 1) + pM−1
0 0
Comme Rs est minimal et pM−1 est un terme constant alors Rs
est minimal.
L’algorithme de Huffman contient les étapes suivantes :
1. ordonner les probabilités : pM ≤ . . . ≤ p1 ,
2. réduire la recherche du code optimal à celle à l’ordre
M − 1,
3. réordonner les probabilités: il faut connaı̂tre les deux
symboles les moins probables,
4. refaire plusieurs réduction jusqu’à arriver à l’ordre M = 2,
le code {0, 1} est optimal.
k n
Source Codeur source Codeur canal Modulateur
Canal
Composite Milieu de transmission
Définitions
k
Rc = (51)
n
E X Y Ê
Codage Canal Canal Décodage Codage
k n=k+r
n
Donc
H(Y /X = 0) = h(p) (56)
De même on a
H(Y /X = 1) = h(p) (57)
Ainsi, on
Or
X
H(Y ) = − P(Y = y )log2 P(Y = y ) = −h( − 2p + p)
y ∈{0,1}
(59)
Donc
I (X , Y ) = h( − 2p + p) − h(p) (60)
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Finalement,
CCBS (p) = maxp(X ) I (X , Y ) = max h(−2p+p)−h(p) = 1−h(p)
(61)
La capacité CCBS (p) est atteinte pour = 12 , X une source
uniforme.
1
h(p)
0.9 CCBS
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0
0 0.2 0.4 0.6 0.8 1
p
Codes Correcteurs
Définitons
AND XCOR
0x0=0 0+0=0
0x1=0 0+1=1
1x0=0 1+0=1
1x1=1 1+1=0
k symboles (n − k) symboles
information redondance
g : F2k → F2n
(63)
m 7→ c , g (m)
avec: m = (m1 , ..mk ) est un vecteur ligne représentant un
bloc de k éléments binaires d’information et c = (c1 , ..cn )
le mot du code qui lui est associé.
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
k
X
m= αi ei (65)
i=1
Xk k
X
c = g (m) = g ( αi ei ) = αi g (ei ) (66)
i=1 i=1
GH T = 0 (74)
Ce qui donne
1 1 0 ... 0
1 0 1 ... 0
H=
...
(84)
... ... ... ...
1 0 0 ... 1
La distance minimale est égale 2M + 1. Le pouvoir de
détection vaut 2M et celui de correction vaut M.
3. Code de Hamming: Pour un code de Hamming, les colonnes
de la matrice H sont les représentations binaires des nombres
de 1 à n. chaque colonne étant constituée de r = n − k
éléments binaires, les paramètres du code de Hamming sont
n = 2r − 1, k = 2r − r − 1 (85)
Gain de Codage
Codes Cycliques
Les codes cycliques constituent l’une des classes les plus
importantes des codes linéaires. Leur mise en oeuvre
relativement aisée, à partir de registres à décalage logiques
combinatoires simples, en a fait des codes très attractifs et
très utilisés dans les systèmes de transmission.
I Définitions et représentation polynômiale:
I Un code C (n, k) est dit cyclique s’il est linéaire et s’il vérifie la
propriété suivante
c = (c0 , ...cn−1 ) ∈ C ⇔ c1 = (c1 , ...cn−1 , c0 ) ∈ C (89)
Ainsi, l’ensemble des mots du code est stable par décalage
circulaire.
On peut dire que c1 est le shift de c.
I Il est commode d’utiliser la représentation polynômiale suivante
c = (c0 , ...cn−1 ) ⇔ c(x) = c0 + c1 x + ... + cn−1 x n−1 , cj ∈ F2 ,
(90)
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
g (x)h(x) = x n + 1 (96)
g (x) = (1 + x + x 3 )
→ [1 1 0 1 0 0 0]
xg (x) = (x + x 2 + x 4 ) → [0 1 1 0 1 0 0]
2 (102)
x g (x) = (x 2 + x 3 + x 5 ) → [0 0 1 1 0 1 0]
x 3 g (x) = (x 3 + x 4 + x 6 ) → [0 0 0 1 1 0 1]
x 3 m(x) = x 6 + x 5 + x 3 = (x 3 + x + 1)(x 3 + x 2 + x + 1) + 1
(107)
Ainsi: c(x) = 1 + x 3 + x 5 + x 6 .
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
e(x) = x j , 0 ≤ j ≤ n − 1 (109)
g1 (x) = 1 + x + x 5 + x 6 + x 7 + x 9 + x 11
(116)
g2 (x) = 1 + x 2 + x 4 + x 5 + x 6 + x 10 + x 11
Ce type de code permet de corriger jusqu’ 3 erreurs tout
en ayant un rendement élevé.
3. Codes Reed-Solomon (RS): Ils représentent une
sous-classe importante des codes BCH non binaires.
Un code RS : C(n,k) est un code BCH, telque:
I ses symboles sont dans GF (p m ), avec p est un nombre premier
I sa longueur n = p m − 1
I k = n − 2t, t est le pouvoir de correction
I sa distance minimale dmin = n − k + 1 = 2t + 1
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Codes convolutifs
5. un multiplexeur.
Entrée
Registre à (m +1)k
étages
Boloc de k
bits
Convertisseur
Logique Sortie
combinatoire
à base de porte
Parallèle Série
XOR Boloc de n
bits
I Rendement du code: R = kn .
I Si les k e.b. d’entrée se retrouvent explicitement dans le bloc
de n e.b, en sortie le code est dit systématique.
I Le codage convolutif est utilisé lorsque le train binaire d’entrée
n’est pas séparé en blocs à l’issue du codage de source.
I Le qualificatif convolutif provient du fait que la sortie du
codeur est le produit de convolution entre la séquence binaire
à coder et la réponse du codeur définie par ses séquences
génératrices. Ces séquences sont au nombre de n et sont
définies comme suit:
(m+1)k−1
X
νli = gij ul−j , (119)
j=0
3. Diagramme en treillis
suit
Z
Pdc = P(ν̂ = ν) = P(ν̂ = ν/Y = y )P(Y = y )dy
(122)
Le mot décodé est donné par
ν̂ = argmaxν P(ν̂ = ν) = argmaxν P(ν/Y = y ) (123)
Ce critère s’appelle le critère de Maximum A Postériori
(MAP). Sachant que:
P(A, B) = p(A/B)p(B) = p(B/A)p(A), alors on peut
écrire
P(Y = y /ν)P(ν)
ν̂ = argmaxν = argmaxν P(Y = y /ν)P(ν)
P(Y = y )
(124)
Si P(ν) = cst, alors ν̂ = argmaxν P(Y = y /ν): Ce critère
s’appelle le critère de Maximum Vraisemblance (MV).
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
A partir de ce graphe on a
c = D 2 Nae + Nb
b = Dc + Dd
d = DNc + DNd (129)
as = D 2 b
D5N
= +∞ k k+5 k+1
P
=⇒ T (D, N) = 1−2DN k=0 2 D N
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
Pd i i d−i
pd = i=(d+1)/2 Cd p (1 − p) , si d est impair
1 d/2 d/2 d/2 d
+ i=d/2+1 Cdi p i (1 − p)d−i ,
P
pd = 2 Cd p (1 − p) sinon
(130)
où, p étant la probabilité d’erreur binaire à l’entrée du
décodeur canal.
Pour un système de transmission utilisant une MDA-2 sur un
canal gaussien, on a:
r
2Eb Rc
p = Q( ) (131)
N0
I Décodeur à entrée souple: pour un système de transmission
utilisant une MDA − 2 sur un canal gaussien, la probabilité
qu’un chemin distant de d du chemin optimal soit sélectionné
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal
On montre que
Pd ≤ 2d [p(1 − p)]d/2 (135)
Enseignantes: Sameh NAJEH , email: sameh.najeh@supcom.tn Fatma
SupportABDELKEFI,
de Cours de email:
Théoriefatma.abdelkefi@supcom.tn
de l’information
Introduction
Notations
Chapitre1: Codage Entropique sans pertes
Chapitre2: Codage Détecteur et Correcteur d’erreurs: Codage Canal