de l’algorithme de Viterbi

Slides:



Advertisements
Présentations similaires
Explorer un espace d’états
Advertisements

Architecture de machines Codage des informations
La théorie du monde est petit
Non linéarités liées à la thermique
La Couche Réseau.
Détecteurs de fautes pour réseaux dynamiques P. Sens, L. Arantes, M. Bouillaguet Projet REGAL.
Classification et prédiction
Classification et prédiction
Regroupement (clustering)
PRINCIPE SIMPLIFIE DE LA COMPRESSION MP3
RECONNAISSANCE DE FORMES
Sensibilisation à l’Algorithmique
Sensibilisation à l’Algorithmique et structure de données
D B C A commande optimale (critère quadratique) et filtrage de kalman
Systèmes en temps réel Modélisation du comportement en temps réel avec UML.
Problème de 8 dames: Sachant que dans un jeu des échecs, une dame peut pendre toute pièce se trouvant sur la colonne ou sur la ligne ou sur les diagonales.
Simplification et abstraction de dessins au trait
Dpt. Télécommunications, Services & Usages Théorie de l information H. Benoit-Cattin Introduction 2. Sources discrètes & Entropie 3. Canaux discrets.
La mesure d’une tension électrique
Recherche heuristique de similitudes dans les séquences dADN École Jeunes Chercheurs en Algorithmique et Calcul Formel Laurent Noé
Concepts avancés en mathématiques et informatique appliquées
MACHINE DE MOORE SYNCHRONE SIMPLIFIÉE Professeur à l'UHP / ESIAL
Python La structure alternative
Plus courts chemins On présente dans ce chapitre un problème typique de cheminement dans les graphes : la recherche d'un plus court chemin entre deux sommets.
UML : DIAGRAMME D’ACTIVITES
YASS : Recherche de similarités dans les séquences d'ADN
Révision des systèmes LIT, convolution et série de Fourier
Heuristiques A. Introduction B. Recherche d ’une branche
Décodage des informations
NOTE : Pour faire évoluer le diaporama, si le clic de souris ne fait rien utilisez les touches du clavier : Pg up Pg down.
TRANSMISSION DES DONNEES.
Théorie dinformation ELG3575 Introduction aux systèmes de télécommunication.
L’émetteur et le récepteur sont fixes
Benjamin Ivorra - Bijan Mohammmadi - (I3M – UM2)
Plan d’expérience dynamique pour la maximisation
Codage convolutif Les codeurs convolutifs génèrent un mot de code de longueur n à partir de plusieurs messages de longueurs k. La valeur du mot de code.
COMMUNICATION INTERPERSONNELLE
Alignement de séquences (suite)
LA STRUCTURE D'ARBRE-B Institut National des Sciences Appliquées – Rouen Département Architecture des Systèmes d’Information.
Algorithme de Bellman-Ford
Visualisation de surfaces décrites analytiquement
Génération d’un segment de droite
Mise en oeuvre des MMCs L'utilisation des MMCs en reconnaissance des formes s'effectue en trois étapes : définition de la topologie de la chaîne de Markov,
Standard Template Library
L’effet Doppler.
..2. En déduire si l’onde est transversale ou longitudinale.
Programmation dynamique
2. Optimisation sans contrainte Fonctions à une seule variable
La théorie de la communication de C. Shannon
Pour le chemin le plus court pour tous les couples
Heuristiques C. Recherche de la meilleure branche . Branch And Bound
TP 4: Ondes sonores - Echographie
Tutorat 7 - Introduction au Routage et OSPF
Calcul parallèle => partitionner les données en sous-groupes associés aux processeurs. P0 P2 P1.
Ranking the web frontier Nadav Eiron, Kevin S. McCurley, John A. Tomlin IBM Almaden Research Center Bah Thierno Madiou.
Arbres binaires et tables de hachage
I.A. Session 2009/2010 E.P.S.I. Bordeaux – C.S.I.I – 2 ème Année – Cours n°6.
Généralités sur les réseaux de transmission de données numériques
Recherches locales et méta-heuristiques
MODULATION I - Définitions et généralités s(t)
Commutation de circuits
Recherche de motifs par projections aléatoires
CPI/BTS 2 Algorithmique & Programmation La récursivité Algo – Prog CPI/BTS2 – M. Dravet – 14/09/2003 Dernière modification: 14/09/2003.
Cours 8 La transmission.
Dr. MOKEDDEM République Algérienne Démocratique et Populaire
ANNEE UNIVERSITAIRE :2010/2011
Structures de données avancées : Arbres B+ avec expansion partielle D. E ZEGOUR Institut National d ’Informatique.
Réseaux de Petri et suivi du joueur
Multiplexeurs A.Lebrun.
CentralWeb F. Playe1 Principes de base du routage IP Ce cours est la propriété de la société CentralWeb. Il peut être utilisé et diffusé librement.
Transcription de la présentation:

de l’algorithme de Viterbi Fonctionnement de l’algorithme de Viterbi J. Le Roux leroux@essi.fr http://www.essi.fr/~leroux

É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

Représentation de l ’émetteur sous la forme d ’un automate 0 0 0 s s Les états sont les valeurs de et-1, et-2 1 2 s s e 1 1 1 1 2 10 00 e 1 0 0 s s 1 2 e 0 1 1 s s 1 2 e 1 0 1 s s 1 2 e 0 1 0 s s 1 2 01 11 e 0 0 1 s s 1 2 s s e 1 1 0 1 2

s s e vaut 0 e vaut 1 treillis de l’algorithme de décodage de Viterbi 0 0 1 2 00 00 00 00 00 11 10 10 11 10 10 10 10 État de l’automate 01 01 01 01 01 00 01 01 11 11 11 11 11 10 temps

Correction 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

‘‘idées sous jacentes’’ le récepteur génère un message e(t) de sorte que la sortie que l’automate produit avec cette entrée soit la plus proche possible de la séquence bruitée qu’il a reçue Message reçu Message reconstitué Codeur du récepteur Comparaison processus itératif : à l’instant 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00, , , , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 00 10 01 11 Éléments du treillis que va parcourir la représentation du message en cours de décodage

calcul des sorties S1 et S2 pour cet état et e =0 Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00, , , , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 t=0, hypothèse : e=0 00 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 d’une première hypothèse et comparaison aux données reçues

calcul des sorties S1 et S2 pour cet état et e =1 Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00, , , , , , , , , s 1 2 États : 00 10 01 10 11 01 10 01 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 t=0, hypothèse e=1 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 d’une deuxième hypothèse et comparaison aux données reçues

distance entre la chaîne reçue et la chaîne générée Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10, , , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 incrémentation du temps : t=1 00 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

distance entre la chaîne reçue et la chaîne générée Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10, , , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 calculs similaires pour l’autre état atteint à t=0 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00, , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 incrémentation du temps t=2 4 00 1 3 10 2 01 2 11 Itération du processus pour les troisièmes données

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00, , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 calculs similaire pour tous les états atteints 4 00 1 4 3 10 2 2 01 5 2 11 5 Itération du processus pour les troisièmes données

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00, , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 4 00 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 n’accepte qu’une seule entrée 3 10 2 2 01 5 2 11 5

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00, , , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 choix similaire pour tous les nœuds 4 00 1 4 3 10 2 2 01 5 2 11 5 Choix similaires pour tous les nœuds du treillis

Itération en temps du processus : calcul des distances Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01, , , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01, , , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00, , , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10, , , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11, , s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00, s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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)

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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)

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

il y a une seule entrée par nœud, il n’y a qu’un seul chemin Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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 n’y a qu’un seul chemin

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 Choix de la séquence d ’entrée de l ’automate du récepteur (algorithme de Viterbi) 4 00 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

Émis :11,10,00,01,01,00,10,11,00,00 Reçus :00,10,00,01,01,00,10,11,00,00 s 1 2 États : 00 01 10 01 11 10 01 10 00 00 00 e : 1, 0, 1, 1, 0, 1, 0, 0, 0, 0 message retrouvé 1 0 1 1 0 1 0 0 0 0 00 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 (s’il n’y a pas trop d’erreurs)