Vous êtes sur la page 1sur 96

Cours de Théorie de

l’information
Par Dr BINELE Alphonse
Objectif
• Etude de la mesure de l’information selon les théories de Claude
Shannon et ses applications dans la compression de données et la
détection et correction d’erreurs.
Projet
1ere Partie
 Produire une interface Matlab permettant:
 D’implémenter le codage d’une source par l’algorithme de Huffman (code de
Huffman) connaissant les probabilités des éléments de son alphabet
 De calculer son efficacité
 De vérifier l’optimalité du code
 Faire de même pour l’algorithme de Huffmann dynamique
Bibliographie
• codage, cryptologie et applications - Bruno Martin - Presses
polytechniques et universitaires romandes - collection technique et
scientifiques des télécommunications - 2004 - www.ppur.org
• théorie des Codes - Dumas, Roch, Tannier, Varrette - DUNOD -
Sciences Sup - 2007 - www.dunod.com
• théorie de l'Information et du Codage - Olivier Rioul - Hermes Science
- Lavoisier - 2007
• the mathematics of coding theory - Paul Garett - Pearson Prentice Hall
- 2004
Plan du cours
• Partie B Mesure de l'information
• Chap I Introduction à la théorie de
• *Incertitudes et Information
l'information
• *Information mutuelle/Information propre
• * Définition
• *Entropie/Information mutuelle moyenne
• * Historique
• * Modèle proposé • Chap III Codage des sources discrètes
• Chap II Mesure de l'information • *Definition des sources sans mémoires
• *Inegalité de Kraft Mac-Millan
• Partie A: Rappels sur la théorie des
probabilités • *Premier théorème de Shannon

• *Généralités • *Codage de Huffman


• *Calcul de probabilités • Chap IV Codage Canal
• *Probabilité totale
• *Introduction au codage canal
• *Probabilités conditionnelles
• *Code conventionnels
• *Notion de variables aléatoires
• *Les codes en blocs linéaires

• Chap V Application dans l’industrie


Chap I Généralités
Définition
• Dans le langage courant, «information» est utilisé dans 
divers contexte: actualités, renseignements, etc.
• Dans le domaine des télécommunications, la notion  d’information est
liée à l’efficacité des systèmes de  communication.
• Shannon montre que l’information contenue dans un 
message est une grandeur mesurable.
• La théorie de l’information touche plusieurs domaines
• le codage,
• la compression de données, 
• la cryptographie. 
Aperçu historique
• La théorie de l'information est liée aux communications numériques.
Elle a été utilisée pendant la 2ème guerre mondiale
• Claude Shannon est le père de cette théorie; il a longtemps travaillé
dans Bell's Labs.
• Il a été le 1er à formuler le problème de transmission en des formes
statistiques et modèle probabilistique.
• Un impact modeste de cette théorie dans les années 40 a été enregistré
vu les limitations technologiques
• A l'heure actuelle, les résultats théoriques servent de référence pour
mesurer les performances des modèles (information numérique)
Modèle proposé
Source Codage source Codage Canal Bruit

Canal

Destinataire Décodage source Décodage Canal

• La source est l'organe qui génère les message voix, image, son,
données... (Le faite d'envoyer un bit "0" ou "1" dans un canal de
transmission bruité est une expérience aléatoire puisque le résultat
n'est pas connu d'avance)
• Le codeur source convertit efficacement le message source en
séquences binaires de façon que le code soit concis (représente le
maximum d'information avec un minimum de bits). Avoir un code
uniquement décodable
• Codeur canal: dans le codage canal, on ajoute des bits de redondance
à l'information utile (sortie du codage source), ces bits peuvent
détecter et/ou corriger les erreurs introduites lors du passage de
l'information à travers le canal bruité.
• Le canal est un système de transmission de l’information (CD, Câble
coaxial, fibre optique, Faisceaux hertziens…)
Chap II Mesure de
l’information
Partie A: Notions fondamentales sur la théorie des probabilités discrètes
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•  1. Espace probabilisé discret
• a) Expérience aléatoire
• Une expérience est dite aléatoire si elle n'est pas prévue d'avance. Ex:
lancer un dé, envoyer un bit ("0" ou "1") sur un canal de transmission
bruité.
• b)Espace des épreuves
• Quand on réalise une expérience aléatoire, l'ensemble des résultats
possibles (ou épreuves ou issues ou éventualités) constitue les
espaces des épreuves .
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•• Exemple
 
Le jet d'un dé peut être représenté par les nombres 1,2,3,4,5,6 correspondants à chacune des phases.
Pour représenter le jet du dé précisé de 2 cas: {les 2 dés sont identiques} ou {les 2 dés sont différents}
Pour le 1er cas
est composé de 21 éléments
Les éléments de sont:
(1 1), (2 2), (3 3), (4 4), (5 5), (6 6)
(1 2), (2 3), (3 4), (4 5), (5 6)
(1 3), (2 4), (3 5), (4 6)
(1 4), (2 5), (3 6)
(1 5), (2 6)
(1 6)
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•Pour
  le 2e cas

est composé de 36 éléments.


c) Evènement
Définir un évènement lié à une expérience aléatoire consiste à donner une règle pour
chaque épreuve si l’évènement en question est en réalité ou non.
Exemple : jeter un dé et voir si le résultat est supérieur à 4
 Ce n’est pas une épreuve puisqu’il n’y a pas de face de dé où il est inscrit « plus grand
que 4 » mais pour chaque épreuve, si le résultat est supérieur à 4 ou ne les pas.
 Diviser sur 4
 Diviser sur 2 parties
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•Il y  a des épreuves où est supérieur ou égal à 4 ou autres
 Mesurer l’importance/ la certitude d’un évènement c’est déterminer la
probabilité des ses réalisations. On a:

Évènement impossible Évènement certain

 Exemple: dé non truqué


 Évènements élémentaires:

 ++=0,5
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•d)  Espace probabilisé
• Il est défini par le triplet avec:
• : espace des épreuves (l’ensemble des résultats possibles)
• : l’ensemble des assertions logiques possibles relatives au résultat de
l’expérience
• loi de probabilité qui associe à chaque assertion logique un nombre
e) Opération sur les évènements / opération sur les ensembles
Il s’agit de relier les opérations logiques concernant les évènements et les
opérations logiques concernant les parties d’ (la réunion, l’intersection,
passage par valeur).
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
Terminologie probabiliste Terminologie ensembliste Notation et symbole
Evènement
Evènement certain
certain Espace
Espace tout
tout entier
entier (l’évènement qui est toujours
réalisé)
Evènement Partie de
Evènement
Evènement contrôlé Partie complémentaire ( se réalise lorsque A ne l’est pas)
Evènement contrôlé Partie complémentaire
Évènement impossible Partie vide
Conjonction « et »  de A et B intersection A l’évènement se réalise par
Évènement impossible Partie vide connexion si
Évènements incompatibles
Conjonction « et »  de A et B Partie disjointe
intersection A=
Disjonction « ou » réunion
Ou exclusif (pour
Évènements des évènements
incompatibles Somme
Partie disjointe
incompatibles)
Disjonction « ou » réunion
implication Inclusion
Ou exclusif (pour des évènements Somme Si
incompatibles) Implique A

implication Inclusion
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•  Système complet d’évènement
f)
L’ensemble

 Si
 On dit que les forment une partition de
 Un système complet d’évènements correspond à une variable aléatoire discrète
g) Algèbre des évènements
On a des identités suivantes:
,
,
, ,
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•f) Probabilité des évènements
• Axiome 1:
• Axiome 2:
• Axiome 3: si
Avec ces axiomes, on peur déduire quelques propriétés
,
,
=
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•• 2.
  Notion de probabilités conditionnelles
Cette notion s’introduit à chaque fois que pendant le déroulement d’expériences aléatoires une
information partielle est fournie
Exemple
On lance 2 dés truqués et distincts; il y a résultats possibles
On cherche la probabilité de l’évènement « avoir une somme supérieure ou égale 10 ».
Possibilités: (4,6), (6,4), (5,5), (5,6), (6,5), (6,6)

Si on ajoute l’information B « obtenir 2 »


: probabilité de A sachant B
Si on ajoute l’évènement « le 1er dé affiche 6 »
: probabilité de A sachant C
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•  Définition
• On définit la probabilité conditionnelle de A sachant que B est réalisé
par:
avec

Implique
1er formule de Bays
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•  Evènements indépendants
3.
• Deux évènements A et B sont statiquement indépendants si:
et
Donc la probabilité conjointe (A
4. Théorème de probabilité totale
Soit A formé par un système complet d’évènements. Soit B un évènement quelconque
de , on définit la probabilité totale de B par:
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•• On
  peut déduire que

• Le théorème de probabilité totale permet de décomposer les problèmes en sous


problèmes
• Exemple
Soient la population de tricheurs et non tricheurs. Soit P la probabilité d’avoir un tricheur.
Un individu choisi au hasard tire une carte, s’il est tricheur il tire un As.
On définit par:
A l’évènement tirer un AS
l’évènement l’individu est un tricheur
l’évènement l’individu est un non tricheur
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•• ; 

• Réponse

• et

5. Notion de variable aléatoire


Soit un espace probabilisé et un univers de destination, muni d’un algèbre d’évènements . Une
fonction de dans est une variable aléatoire si elle possède la propriété suivante:
,
(Faire correspondre à la réalisation d’un évènement une grande
Numérique)
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•• Dans
  notre cas, une v.a est discrète, si l’ensemble de ses valeurs possibles est fini.
• Exemple
• Soit une source qui génère l’alphabet de sortie avec les probabilités suivantes: p(A)=1/2,
p(B)=1/4, p(C)=1/8, p(D)=p(e)=1/16
• On définit le code binaire suivant:
• A:0, B:11, C:011, D:0001, E:1111
• Soit X la variable aléatoire qui représente la longueur du flot binaire (mot de code). Les valeurs
prises par X sont 1, 2, 3 , 4
• P(X=1)=p(A)=1/2
• P(X=2)=p(B)=1/4
• P(X=3)=p(C)=1/8
• P(X=4)=p(E)+p(D)=1/16+1/16=1/8
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
• Moyenne
6.   statistique
A/ Moyenne/Espérance mathématique
• Pour une v.a discrète X, on définit par espérance mathématique par:

Propriétés

•a
• Lorsque X et Y sont indépendants,

B/ Variance – Ecart-type
Lorsque la variance existe, elle est définit par:
avec et : écart-type
Partie A: Notions fondamentales sur la
théorie des probabilités discrètes
•• Exemple
  précédent

+2. +4. =
Autre exemple
La v.a X a pour valeur « 0 » et « 1 » avec les probabilités respectives
Calculer

()=()
)
Chap II Mesure de
l’information
Partie B
I. Contenu informatif d’un message
• Pour un codage efficace d’un message en une suite de 0 et de 1, il est
nécessaire de déterminer son contenu informatif
Exemple
• La source transmet toujours le même message, consistant en la lettre A: le  
contenu informatif de ce message est nul, car le récepteur n’apprend rien en le recevant.
• La source émet soit oui, soit non : le récepteur reçoit une information binaire. 
• La source émet le temps qu’il fera demain : le contenu informatif est très riche, et
l'information transmise est m‐aire s’il y a m possibilités de temps.
• Un message est «riche» en information si sa connaissance mène à un système peu «
prévisible ».
• Cas d’un message qui peut prendre beaucoup de valeurs différentes
En télécommunication, on veut toujours économiser le nombre de bits
transmis pour:
• Gagner du temps (ex. : téléchargement rapide d’une page web sur Internet)
• Faire passer le plus de messages possibles sur un même support (ex.
plusieurs utilisateurs sur la même fibre optique).
• Influence directe sur le coût des transmissions…!
• Ainsi, on souhaiterait coder l’information pertinente du message et elle
seule!
• Mais comment mesurer le contenu informatif d’un message ? La Théorie
de l’Information fournit une mesure de la quantité d’information.
Partie B
•II)  Incertitude et l’information
1- Définitions
• Source discrète : système émettant régulièrement des symboles issus d’un
alphabet fini.
• Alphabet : ensemble fini des symboles de la source.

• Source aléatoire : les symboles sont émis aléatoirement suivant les


probabilités : ; avec
• Source sans mémoire : source aléatoire dont les symboles émis sont
statistiquement indépendants.
Partie B
•• 2-
  Description qualitative et quantitative de l’information
• La façon la plus appropriée de créer un système de communication est de donner un
modèle probabilisé (source modélisée avec une variable aléatoire v.a)
• Qualitativement fournir une information consiste à lever une incertitude sur l’issue
d’une expérience aléatoire.
• La notion d’information est liée à celle de probabilité conditionnelle
• La modification apportée à la probabilité de l’évènement (incertitude de réalisation
de ), lorsqu’on reçoit l’information que l’évènement est réalisé) est le passage de à
• implique devient moins probable
• L’incertitude sur croit avec la connaissance de
• implique la connaissance sur décroit l’incertitude sur
Partie B
•  Pour mesurer la variation de l’incertitude et décrire l’information
d’une manière quantitative, on cherche une fonction décroissante de
probabilité telle que:
Quand la probabilité de l’évènement croit alors la fonction (de
l’évènement) décroit
• Le log permet d’exprimer les variations de l’incertitude; on note
l’incertitude sur
• avec la probabilité de réaliser
Partie B
•3)  Rappels sur les formules log
implique ;
;)
ssi ;
c’est la formule pratique pour le calcule.
Partie B
•III.  Information propre/ information mutuelle
1) Information propre
L’information propre est la quantité d’information fournie par la réalisation de
l’évènement:

implique
Si alors évènement déterministe
 La réalisation d’un évènement certain n’apporte aucune information
 Plus un évènement est improbable ( est faible) plus son information propre
est grande.
•Remarque
 
Il existe d’autres définitions de l’information utilisant différentes base b
pour le log:
Quand b=2, l’unité est « Binary Unit » (bit) ou « Shannon »
Quand b=10, l’unité est le « Hartley » ou le « dit »
Quand b=e, l’unité est « Natural Unit » ou « Nat »
Exemple
Soit une source qui émet un alphabet de sortie
La source est équiprobable donc
Partie B
•  Information mutuelle
2)
Définition
On veut mesurer la quantité d’information qu’apporte la réalisation d’un
évènement (recevoir ayant transmit ). On a:

Propriété
Par définition de la probabilité conditionnelle,
implique
Donc la définition est symétrique
Si et sont indépendants alors
Partie B
• Si
  alors donc on retrouve l’information propre.
 Si implique si l’un des 2 évènements se réalise alors la probabilité d’occurrence de
l’autre est croissante.
 implique si l’un des 2 évènements se réalise alors la probabilité d’occurrence de l’autre
est décroissante.
• implique la réalisation de l’un des 2 évènements n’influe en aucun cas la réalisation de
l’autre. Dans ce cas, on dit que les 2 évènements sont indépendants.
Exemple
• On considère le canal binaire symétrique de probabilité de transition avec des entrées
et équiprobables.

Canal binaire symétrique


Partie B
•Remarque
  (suite de l’exemple)
• Le canal binaire symétrique est un canal discret sans mémoire dont l’alphabet
d’entrée et l’alphabet de sortie sont égaux tous deux à .
• La probabilité pour qu’un symbole soit inchangé est
• La probabilité pour qu’un symbole soit transformé en son opposé est
(probabilité de transition)
• Le canal binaire symétrique est défini par les probabilités conditionnelles et
• ==
• =+
• 1-
Partie B
• 


Interprétation:
• Si alors
Lorsqu’on observe la lettre , la probabilité pour que ait émise est
croissante et au contraire si la lettre est observée, la probabilité pour que
la lettre soit émise est décroissante.
Partie B
•• Si
  alors
Lorsqu’on observe la lettre à la sortie du canal, la probabilité pour que ait été émise est
décroissante.
• Si alors sont nulles donc les alphabets d’entrée sortie sont statiquement indépendants, ce qui
n’est pas évidement souhaitable.
3) Information propre conditionnelle
• L’information propre conditionnelle de l’évènement x/y est définie par:


Partie B
• 
• L’information mutuelle entre égale à quantité d’information fournie
par soustraite à la quantité d’informations que fournit lorsqueest
réalisé.
Partie B
•IV  Information mutuelle moyenne – Entropie
1) Définition: Entropie d’une variable aléatoire
• C’est la quantité d’information moyenne véhiculée par une source sans
mémoire associée à chaque symbole de la source.

• c’est l’espérance mathématique de l’information fournie par l’observation


chacun des symboles possibles.

• impliqu’il existe un symbole tel que


• implique c’est un cas déterministe donc moins d’incertitude.
Partie B
•2) Propriété d’entropie
Soit une source discrète sans mémoire. M est la taille de l’alphabet avec les
probabilités , ,…,
On a :
 L’entropie ne peut pas dépasser
est maximale ;
Dans le cas où la source est équiprobable, avec
 L’entropie est maximale lorsque les symboles sont équiprobables
Partie B
• 
Exemples
 Entropie d’une source binaire équiprobable.
La source est binaire donc elle émet les 2 symboles 0 et 1; donc

=0). )

• Entropie d’une source binaire biaisée.


;;
Partie B
• Soit
  une source qui émet 4 symboles
Calculer
1- si la source est équiprobable
2- si , , ,
Réponse
1- car la source est équiprobable
2-
). ) )

+=1+
Partie B
• Combien
  de symboles binaires faut-il pour coder les 4 symboles de la
source? 2bits
• Cette relation donne une borne inférieure, un nombre minimum de
symboles binaires à utiliser pour coder une source discrète à l’aide d’un
code de taille fixe. Cette borne sera égale au plus petit entier supérieur à
3) Débit de l’information
Soit le débit temporel auquel la source X émet les symboles (symboles/s).
Le débit d’information de la source est donné par:
il est exprimé en bits/s

bits/s bits/symbole
Symboles/s
Partie B
4) Représentation d’un canal (de communication) discret sans mémoire
A) Canal discret sans mémoire
Un canal de communication est la voix ou le médium sur lequel transite
le symbole vers le récepteur.
Le canal de communication discret sans mémoire est un model
statistique avec une entrée X et une source Y.
Partie B
• Un
  canal est discret quand les alphabets de x et y sont tous les deux finis;
il est sans mémoire quand la sortie courante dépend seulement de
l’entrée courante et non des entrées précédentes.
• Chaque lien E/S est indiqué par une probabilité conditionnelle
(probabilité de transition d’un canal)
B) Matrice d’un canal de communication
Le canal précédent est spécifié par la matrice de probabilités de
transmission

 𝑥1 (0)
1−
  𝜀
est la matrice du canal de communication.  𝑦 1 (0)

Application  𝜀
 𝜀
 𝑥2 (1)  𝑦 2 (1)
Partie B
• 
Remarques
Étant donné que chaque entrée du canal de communication se trouve dans les sorties:
 Chaque ligne de la matrice doit avoir une somme égale 1

Les matrices des probabilités d’entrées et des probabilités de sorties sont données par:

Donc
 Si est donnée par une matrice diagonale
Alors nous pouvons écrire:
avec la matrice de probabilités conjointes
Partie B
• L’élément
  de la matrice est de la forme
est la probabilité de transmettre et de recevoir
Exemple  𝑥1 (0)
  p
 𝑦 1 (0)
 𝑝
p
 𝑥2 (1)  𝑦 2 (1)
  p
Donc
=
Partie B
• 
Application
• Considérons le canal binaire donné par la figure suivante
a) Donner
b) Calculer  𝑥1 (0)
0,9
 
 𝑦 1 (0)
c) Calculer et
0,1
 
Le canal n’est pas symétrique car 𝑃(𝑥¿¿1)=0,3¿
  𝑃(𝑥¿¿1)=0,7¿
 
0,2
Et
 𝑥2 (1)  𝑦 2 (1)
Réponse 0,8
 
d)
e)
f) ==
Donc et
Partie B
•C)  Capacité d’un canal
La capacité d’un canal est le taux de transmission d’un signal de code à
utiliser pour transmettre de l’information dans des bonnes conditions.
Exemple
 Canal binaire symétrique précédent
La capacité du canal par symbole est :
bit/symbole
La capacité du canal s’exprime en bits par seconde est exprimée par:
le nombre de symboles transmis par seconde
Partie B
•D)  Entropies conjointes et conditionnelles d’un canal de
communication/Information mutuelle moyenne du canal
m entrées
X Y
est la probabilité d’entrée CANAL

est la probabilité de sortie


est la probabilité conjointe
est la probabilité de transition
Nous pourrons définir les différentes fonctions d’entropie pour un canal de
communication à m entrées et n sorties
l’incertitude moyenne des entrées du canal.
l’incertitude moyenne des sorties du canal.
Partie B
•   entropie conditionnelle qui représente l’incertitude moyenne des
données du canal, les sorties ayant été observées.
• : entropie conjointe représente l’incertitude moyenne du canal
comme un tout.

• Pour un canal de communication, on a les relation suivantes:



Partie B
•  On définit l’information mutuelle d’un canal de communication
comme étant l’incertitude des entrées du canal en réalisant une
observation des sorties.

• On a les propriétés suivantes:


Chap III codage des sources
discrètes sans mémoire
1) Introduction (1)
• Maintenant que nous savons mesurer l’information contenue dans un
message, nous pouvons le coder. 

Source Codage source Codage Canal Bruit

Canal

Destinataire Décodage source Décodage Canal

• Le codage de source représente le message sous la forme la plus économique


possible en terme de nombre de bits
• Le codage de canal ajoute des informations permettant au récepteur de
reconstituer le message malgré les erreurs éventuellement apparues à
cause du bruit sur le canal.
1) Introduction (2)
• On s’intéresse dans ce chapitre au codage de la sortie d’une source
discrète sans mémoire.
• Ce codage devra permettre de retrouver la séquence de lettre de
sortie à partir du codage binaire (code uniquement décodable).
• Un objectif du codage de la source est de minimiser le débit moyen
en bits nécessaire pour représenter l’information émise par la source
en diminuant la redondance.
2) Source discrète sans mémoire (DMS)
•  On considère une source discrète dont l’alphabet est fini et dont la loi de
probabilité , …, est donnée.
• On a:
• La probabilité que la source délivre ne dépend pas du passé (Probabilité
simplification):
• C’est difficilement réalisable; en effet, on ne prend pas en compte la
corrélation existant entre le symbole et ses précédents.
3) Différents types de codages source
• 
Définition 1
Un code d’une source discrète est une procédure qui associe à chaque lettre de la source une
séquence binaire appelée mot de code.
Définition 2 : code régulier
Un code sera dit régulier si deux lettres distinctes de la source sont codées par deux mots de
code distincts.
Dans toute la suite, on considère que les codes sont réguliers.
Définition 3: longueur moyenne du code .
La longueur moyenne du mot de code est le nombre moyen de symboles binaires utilisés par
lettre de la source et est définie par :
est la longueur du mot de code associé à
Définition 4 efficacité du code
L’efficacité d’un code d’une source d’entropie de longueur moyenne de mot de code est
définie par:
3) Différents types de codages source
•   Codes de longueur fixe
a)
Définition 5
Un code de longueur fixe est un code dont tout les mots de code ont la même longueur. Si
cette longueur est on dit que le code est de longueur .
Proposition 1
Soit une source X dont l’alphabet a pour cardinalité M, il existe un code régulier de la source X
de longueur tel que de plus, il n’existe aucun code régulier de longueur .
Exemple
Soit une source dont l’alphabet est l’ensemble de chiffres décimaux
Le code de longueur fixe d’une telle source a une longueur vérifiant

Les codes
Lettrespossibles
0 à cette
1 séquence
2 3 sont:4 5 6 7 8 9
Mots de 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001
code
3) Différents types de codages source
• 
Remarque: avec 4 bits on peut coder 16 symboles donc il reste 6 codes non utilisés; ce qui constitue
un gaspillage dans le codage.

donc le code de longueur fixe n’est pas optimal puisque 6 mots binaires de longueur 4 sont non
utilisés.
b) Code de longueur variable
Soit la longueur du mot de code associé à ; coder n’est pas une simple conversion. On comprime
aussi, on veut que la longueur moyenne du code soit la plus faible possible
doit être le plus faible possible
Si élevé (symbole fréquent) alors doit être faible.
Il faut donc coder les symboles fréquents avec des codes courts.
D’autre part, le décodeur doit pouvoir décoder d’une manière unique sans aucune ambiguïté le code
reçu.
• Remarque
 
Il peut avoir une ambiguïté dans le décodage.
Ambiguïté

Ce n’est pas un code décodable de manière unique.


Définition 5
• Un code est uniquement décodable, uniquement déchiffrable si toute séquence
de mot de code est traitable de manière unique. Une condition suffisante pour
que le code soit uniquement décodable est qu’il vérifie la condition du préfix.
Définition 6
• Un code vérifie la condition du préfix si aucun mot de code n’est le début d’un autre mots de
code.
Définition 7
• Un code est dit irréductible s’il vérifie la condition du préfix. Le code préfix est un code
irréductible ; il encore appelé code instantané.
Proposition 2
• Tout code irréductible est déchiffrable. Pour tout code préfix, il existe un arbre (arbre de décision)
dont les mots de code sont les feuilles (condition nécessaire et suffisante).
Proposition 3
• Un code est irréductible si et seulement si les feuilles de son arbre sont exactement le mot de
code .
• Si code préfixe (irréductible)
• Il est uniquement décodable (décodable de façon unique)
• Aucun mot de code n’est le début d’un autre mot de code
•Preuve
 
Dire qu’un mot de code est une feuille est équivalent à dire qu’il n’est
pas le préfixe d’un autre mot de code.
Explication
Considérons une séquence de source d’alphabet et les trois codages
suivants:
Arbre de code 1 Arbre de code 2 Arbre de code 3
Code 1 Code 2 Code 3 𝑚
𝑚 𝑚 1 0  1
0  1 0 1 𝑚
0
𝑚
  2 0 1 𝑚 0  2 𝑚
1 1  3 1 0  3
𝑚
  2 1
0 𝑚 𝑚 4
1  3 1 𝑚
1 𝑚  4
 4
•• Nous
  constatons que pour les codes 1 et 3 qui sont irréductibles les mots de code sont
exactement les feuilles de l’arbre alors que pour le code 2 qui n’est pas irréductible les mots
de code et sont à l’intérieur de l’arbre.
• qui est égale à 00 est le début de qui est égale à 001 et qui est égale à 01 est le début de
qui est égale à 011.
Remarque
la condition du préfixe n’est pas nécessaire pour avoir un code UD (uniquement
déchiffrable).
Exemple
Tout les mots de code commencerons par 0: code truqué
Code truqué: ; ; ; 𝑚
0  1
Code non irréductible mais uniquement déchiffrable. 0 𝑚
1   2
1 𝑚  3
1 𝑚
 4
•  Inégalité de Kraft-Mc-Milan
Il existe un code Uniquement déchiffrable, il existe un code préfixe dont
les M mots ont pour longueur si et seulement si
Remarque
Tout code uniquement déchiffrable peut se ramener à un code préfixe
de même destination de long.
Tout code préfixe et tout code uniquement déchiffrable doit vérifier
l’inégalité de Kraft.
• Devoir
  (vérification de l’inégalité de Kraft)
1) Soit la source d’alphabet défini ainsi qu’il suit:

A partir de l’inégalité de Kraft peut-on conclure s’il le code est préfixe et


uniquement déchiffrable?
2) Même question pour une source d’alphabet donné ci-dessous:
•   l’inégalité de raft est vérifiée, on ne peut pas dire que le code est préfixe , ni qu’il est
Quand
uniquement déchiffrable; il se peut qu’il ne soit ni préfixe ou qu’il ne soit pas uniquement
déchiffrable.
1er théorème de Shannon
Soit une source discrète sans mémoire munie d’une loi de probabilité
Théorème
1) Pour toute source d’entropie H, codée en moyen d’un code déchiffrable de longueur
moyenne , on a
2) Pour toute source d'entropie , il existe un code irréductible dont la longueur moyenne est
telle que
Remarque
L’inégalité est obtenue ( lorsque
•  On voit donc que toutes les sources ne peuvent pas atteindre cette
borne inférieure car les probabilités ne sont pas toujours des
puissances négatives de 2.
 L’entropie d’un code irréductible dont la longueur moyenne vérifie
sera telle que
• Devoir
 
Considérons une source binaire sans mémoire
Code A Code B Code C Code D
00 0 0 0
01
01 10
10 11
11 100
100
10 11 100 110
10 11 100 110
11 110 110 111
11 110 110 111

1) Montrer que tous ces codes, excepté le code B satisfont l’inégalité de Karft.
2) Montrer que les codes A et D sont codables de façon unique contrairement
aux codes B et C.
4) Extension de source
• Définition
 
• On appelle extension de source d’ordre , la source qui s’obtient en regroupant
les symboles de cette source par paquets de symboles consécutifs, chaque
paquet présente une variable aléatoire dans

𝑋
 
[𝑘 ]
𝑋
 
[𝑘 ]
𝑋
 
[𝑘 ]
𝑋
 
[𝑘 ]

Si S est une source discrète sans mémoire, on a:


avec
est l’ordre de la source et est l’ordre du paquet.
On peut vérifier que:
4) Extension de source
•Devoir
 
Soit une source ayant pour alphabet et dont la loi de probabilité et
l’incertitude sont contenues dans le tableau ci-dessous.

0,45 1,156
0,35 1,520
0,20 2,330

Déterminer H(S) et
4) Extension de source
• Solution
4) Extension de source
•  L‘intérêt de l’extension de source

On remarque que si on code l’extension de source d’ordre avec élevé,


le nombre de bit/symbole tendra vers avec H(S) égale au nombre
minimum de symboles pour coder une source discrète.
Comment trouver ce code?
Tout les théorèmes donnent l’existence du code mais sans le spécifier.
4) Extension de source
•   Huffman (1951-52) – Codage entropique
Code
La conception d’un code à longueur variable de tel façon que sa longueur moyenne
s’approche de l’entropie d’une source discrète sans mémoire se réfère à un codage
entropique.
Le codage de Hoffman conduit à un code optimum ainsi c’est un code qui possède la plus
haute efficacité.
a) Arbre de Huffman
L’arbre de Hoffman est la structure de données qui permettent de donner un code en
fonction de sa fréquence.
La procédure du codage de Hoffman suit les étapes suivantes:
 Étape 1: Ranger les symboles dans l’ordre croissant de probabilité
 Étape 2: Combiner successivement 2 à 2 les symboles de plus faible probabilité
 Étape 3: Former un nouveau nœud dont la probabilité est la somme des deux
 Étape 4: Revenir à la première étape. Test d’arrêt: plus de nœud dans l’arbre; la racine de
l’arbre a une probabilité de 1.
• Étape
  5: Supprimer toutes les probabilités et donner des étiquettes des branches de
droite avec et des branches de gauche avec
 Étape 6: Pour déterminer le mot de code à chaque symbole source, écrire la séquence
binaire rencontrée en lisant à partir de l’arbre jusqu' aux symboles sources.
Exemple
Soit la source à coder sur
Symbole Probabilité
Les étapes successives de l’algorithme sont décrites a 0,35
ci-dessous: B 0,10
c 0,19
d 0,25
e 0,06
f 0,05
Le code de Huffman construit est alors :

Symbole Code
a 11
b 010
c 00
d 10
e 0111
f 0110
• Devoir
Soit une source dont les éléments de l’alphabet ont les probabilités contenues dans le
tableau ci-dessous.
Symbole Probabilité
0,35
0,10
0,19

Déterminer le code de Huffman résultant


Calculer la longueur moyenne de ce code et son efficacité et conclure.
Devoir
Exercices 2.2 et 2.3 page 114 (livre « Théorie des codes _ Compression, cryptage,
correction-Dunod (2006) »)
•   code de Hoffman est optimal
b)Le
Définition
Un code déchiffrable de longueur moyenne d’une source est dit
optimal s’il n’existe aucun code déchiffrable de cette source dont la
longueur moyenne des mots de code est inférieure à
Lemme
Il existe un code préfixe optimal dans lequel les 2 lettres les moins
probables sont codées par des mots de longueur maximale.
Proposition
Le code Huffman d’une source est optimal.
•  Code arithmétique
c)
Le codage arithmétique est une méthode statistique souvent meilleure que le codage de
Huffman ! Or nous avons vu que Huffman était optimal, quelle optimisation est donc
possible ? En codage arithmétique, chaque caractère peut être codé sur un nombre non
entier de bits : des chaînes entières de caractères plus ou moins longues sont encodées
sur un seul entier ou réel machine.
Par exemple, si un caractère apparaît avec une probabilité de 0.9, la taille optimale du
codage de ce caractère pourrait être de:
soit environ 0.14 bits alors qu’un algorithme de
type Huffman utiliserait sûrement 1 bit entier. Nous allons donc voir comment le
codage arithmétique permet de faire mieux.
Devoir : produire un programme du codage arithmétique.
Chap IV Codage canal
Codes correcteur d’erreurs
I. Introduction
• Dans le chapitre on va étudier la conception de code permettant de
réaliser des transmissions fiables en présence du bruit dans un canal.
• Le codage du canal de communication introduit systématiquement
une redondance, et donc une croissance du flux de données en
ajoutant des bits au message initiale de telle façon que la détection et
la correction du bit erroné soit possible.
Rôle du décodage canal
• Le décodeur canal utilise la redondance du code pour connaitre les
bits du message transmis.
II. Décodage et correction d’erreurs
1) Principe
Données originales 01011001100
Mauvaises contions de réception
Données avant utilisation 010011011100
Résultats
• Les données qui vont être utilisées sont différentes des originales. Pour lutter
contre les erreurs, on va:
• étudier le code correcteur d’erreur;
• Rajouter les bits de redondance au bits d’information
Codage k bits n bits
Block de k bits en entrée
Bock de n bits en sortie
• 
Décodage
Code à répétition Données émises
01001011 000 111 000 000 111 000 111 111
Codeur canal
0 1 0 0 1 0 1 1

Code à répétition:
Les seuls blocks de trois bits autorisés sont 000 et 111
0 donne 000
1 donne 111

Bruit
Canal discret sans 000 110 000 001 111 000 111 111
Décodage canal 01001011
mémoire 0 ? 0 ? 1 0 1 1
Inconvénients
L’ajout de redondance consomme de la bande passante pour la même quantité d’information; il y a
plus de bits à transmettre par unité de temps.
III. Définition liée aux performances de codes
•a)  Rendement
• Soit la longueur du mot de code et la longueur du mot
d’information.
k bits n bits
Mots de code Mots d’information
• Le rendement est encore appelé taux de codage.
b) Poids de Hamming
• Le poids de Hamming est le nombre nominal que le code contient.
Exp: P(010010)=2.
•c)  Distance Hamming
• La distance de Hamming entre 2 mots de code de même longueur au
sens de Hamming c’est le nombre de positions où les symboles sont
différents dans les mots.
Exp: et
• Quand on parle de la somme de 2 mots de code c’est l’opérateur ou
exclusif (XOR). On a:
a b Exp:
0 0 0 •

0 1 1
1 0 1
1 1 0
•   Distance minimale d’un code
d)
• C’est la plus petite distance que l’on peut trouver entre tous les mots de
codes différents pris deux à deux.
• Exp:

d) Poids minimal d’un code


• Le poids minimal du code c’est le poids du mot le plus léger que l’on puisse
y trouver, le mot nul mis à part.
Remarque
• La distance mininale est égale au poids minimal.
•Notion
  de bit de parité
• La plus part du code utilise la notion de bit de parité; prenons un code
quelconque et ajoutons à chaque mot un bit supplémentaire dit bit
de parité formé de la somme des autres bits d’un mot.
Exemple
Nbr de 1 impaire
Nbr de 1 paire
Nbr de 1 paire
• Chaque mot de code obtenu contiendra un nombre paire de 1.
• Pour détecter une erreur ou exactement un nombre paire d’erreur, il
suffira de vérifier la parité de la réception; c’est-à-dire effectuer la
somme de tous les bits reçus, y compris le bit de parité.
• Cette méthode est incapable de détecter un nombre paire d’erreurs.
•Exemple
 
*/
Si le décodeur reçoit

Parité impaire
*/
Si le décodeur reçoit
Le décodeur ne détecte pas l’erreur.
IV. Code en blocks linéaires
• 
Introduction
• On peut considérer les codes linéaires comme une généralité de la notion de bit de
parité. Le bit de parité classique est calculé sur l’ensemble des bits d’information.
• Les bits de parité s’appellent aussi bits de contrôle (bits de contrôle de parité) en
anglais « parity check bits).
• Des codes linéaires sont des codes où les bits de mots de code dépendent
linéairement (selon l’opérateur ou exclusif et l’opérateur AND) des bits d’information .
avec est le mot d’information
avec est le mot de code
• On notera l’association de mots de code de bits aux mots d’information de bits.
  mots d’information de bits

  mots d’information de bits


𝒄𝒐𝒅𝒂𝒈𝒆
  𝑪 (𝒏 , 𝒌 )   mots d’information de bits

  : application linéaire   : longueur du mot d’information


  : longueur du mot de code
:  nombre de bits de redondance de parité
ou de contrôle

  Avec mots différents


•• Le
  codage forme un espace vectoriel de dimension .
• Les mots de code linéaire forment un sous espace vectoriel de dimension .
• Comme c’est un espace vectoriel:
• Le mot nul est toujours un mot de code
• La somme de 2 mots de code est un mot de code.

Matrice génératrice d’un code linéaire


Dans un code linéaire par block nous pouvons définir un vecteur et un vecteur la matrice de dimension est
appelée matrice génératrice telle que et . est l’opérateur concaténation
Donc

k lignes k colonnes k lignes (m-k) colonnes


•Codage
 

Exemple
• Soit le code linéaire de matrice génératrice: