Title: Aucun titre de diapositive
1Fonctionnement de lalgorithme de Viterbi
J. Le Roux
leroux_at_essi.fr
http//www.essi.fr/leroux
2Émission des donnees dans un codeur
convolutionnel avec un registre a decalage et des
ou exclusifs
s (t)
1
xor
e(t-1)
e(t- 2)
e(t)
xor
s (t)
2
3Représentation de l émetteur sous la forme d un
automate
s
s
e 0 0 0
Les états sont les valeurs de et-1, et-2
2
1
s
s
e 1 1 1
2
1
10
00
s
s
e 1 0 0
2
1
s
s
e 0 1 1
2
1
s
s
e 1 0 1
2
1
s
s
e 0 1 0
2
1
01
11
s
s
e 0 0 1
2
1
s
s
e 1 1 0
2
1
4e vaut 0
e vaut 1
treillis de lalgorithme de décodage de Viterbi
s
s
0 0
2
1
00
00
00
00
00
11
10
11
10
10
10
10
10
État de lautomate
01
01
01
01
01
00
01
01
11
11
11
11
11
10
temps
5Correction des codes convolutionnels
Erreurs de transmission
Message à coder
Codeur de lémetteur
Message reçu
Comparaison
Message reconstitué
Codeur du récepteur
Critère réduction de l écart entre le
message reçu et le message reconstitué
Algorithme de génération de message
6idées sous jacentes
le récepteur génère un message e(t) de sorte que
la sortie que lautomate produit avec cette
entrée soit la plus proche possible de la
séquence bruitée quil a reçue
Message reçu
Message reconstitué
Codeur du récepteur
Comparaison
processus itératif à linstant t génération
des e(t) possibles et élimination des séquences
les plus pénalisées
Algorithme de génération de message
700
10
01
11
Éléments du treillis que va parcourir la
représentation du message en cours de décodage
800
0
calcul des sorties S1 et S2 pour cet état et e
0 calcul de la distance avec les données reçues
10
01
11
Choix dune première hypothèse et comparaison aux
données reçues
90
00
2
calcul des sorties S1 et S2 pour cet état et e
1 calcul de la distance avec les données reçues
10
01
11
Choix dune deuxième hypothèse et comparaison aux
données reçues
1000
0
1
2
nouveaux calcul de distance entre la chaîne reçue
et la chaîne générée
1
10
01
11
Itération du processus pour les deuxièmes données
1100
0
1
2
1
10
2
01
nouveaux calcul de distance entre la chaîne reçue
et la chaîne générée
4
11
Itération du processus pour les deuxièmes données
1200
1
3
10
2
01
2
11
Itération du processus pour les troisièmes données
1300
1
4
3
10
2
2
01
5
2
11
5
Itération du processus pour les troisièmes données
1400
1
4
En régime stationnaire il y a deux entrées par
nœud du treillis on choisit de retenir celle
qui correspond à la distance la plus faible au
message reçu pour chaque nœud, on naccepte
quune seule entrée
3
10
2
2
01
5
2
11
5
1500
1
4
3
10
2
2
01
5
2
11
5
Choix similaires pour tous les nœuds du treillis
1600
1
2
4
3
Itération en temps du processus calcul des
distances pour les différentes hypothèses à
partir de chacun des états puis sélection des
chemins entrants les moins coûteux pour les
nouveaux états
3
2
10
2
3
2
4
01
5
2
2
2
11
5
4
1700
1
2
3
4
3
3
3
2
3
10
2
3
3
2
4
4
01
5
2
2
2
2
2
11
5
4
4
Itération du processus calcul des distances
pour les différentes hypothèses à partir de
chacun des états puis sélection des chemins
entrants les moins coûteux pour les nouveaux états
1800
1
2
3
3
4
3
3
4
3
2
3
5
10
2
3
3
2
2
4
4
4
01
5
2
2
3
2
2
2
4
11
5
4
4
3
Itération du processus calcul des distances
pour les différentes hypothèses à partir de
chacun des états puis sélection des chemins
entrants les moins coûteux pour les nouveaux états
1900
1
2
3
4
4
4
3
3
3
4
3
2
3
5
4
10
2
3
3
2
4
2
4
4
4
2
01
5
2
2
3
5
2
2
2
3
4
11
5
4
4
4
3
Itération du processus calcul des distances
pour les différentes hypothèses à partir de
chacun des états puis sélection des chemins
entrants les moins coûteux pour les nouveaux états
2000
1
2
3
4
4
6
4
3
3
3
4
2
3
2
3
5
4
4
10
10
2
3
3
2
4
4
2
4
4
4
2
5
01
01
5
2
2
3
5
4
2
2
2
3
4
5
11
5
4
4
4
3
4
Itération du processus calcul des distances
pour les différentes hypothèses à partir de
chacun des états puis sélection des chemins
entrants les moins coûteux pour les nouveaux états
2100
1
2
3
4
4
6
2
4
3
3
3
4
2
4
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
Les deux dernières entrées sont telles que létat
final est bien défini (ici l état 00)
2200
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
Les deux dernières entrées sont telles que létat
final est bien défini (ici l état 00)
2300
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
Traits continus chemins autorisés traits
pointillés chemins interdits
2400
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
Parcours du graphe en remontant à partir de la fin
2500
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
il y a une seule entrée par nœud, il ny a quun
seul chemin
2600
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
2700
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
2800
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
3
2
3
5
4
4
10
2
3
3
2
4
4
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
2
2
2
3
4
5
11
5
4
4
4
3
4
29 message retrouvé 1 0 1 1 0 1 0 0 0 0
00
0
1
1
2
3
4
4
6
2
2
4
3
3
3
4
2
4
7
2
1
3
2
3
5
4
4
10
2
3
3
2
4
4
2
2
4
4
4
2
5
5
01
5
2
2
3
5
4
5
4
2
2
2
3
4
5
11
5
4
4
4
3
4
Malgré l erreur sur les deux premières données,
le chemin retrouvé correspond bien au message
émis (sil ny a pas trop derreurs)