Th orie d information
This presentation is the property of its rightful owner.
Sponsored Links
1 / 39

Théorie d’information PowerPoint PPT Presentation


  • 87 Views
  • Uploaded on
  • Presentation posted in: General

ELG3575 Introduction aux sys tèmes de télécommunication. Théorie d’information. Théorie d’information. Information est une quantité qu’on peut mésurer . On peut déterminer les limites d’information qu’on peut transmettre sur un lien.

Download Presentation

Théorie d’information

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Th orie d information

ELG3575 Introduction aux systèmes de télécommunication

Théoried’information


Th orie d information1

Théoried’information

  • Information estunequantitéqu’onpeutmésurer.

  • On peutdéterminer les limitesd’informationqu’onpeuttransmettresur un lien.

  • Théoried’informationestconçu par Claude Shannon en 1949.

  • EncodageHuffmann pour l’encodageefficace de la sortie d’une source.

  • Codes correcteurd’erreurs pour la correction des erreurs qui arrivent en communication.


Montant d information d un message

Montant d’information d’un message

  • Il y a une source qui, à chaque instant de signalisation, émet un message qui vient d’un ensemble de messages {m1, m2, …, mN}.

  • Supposonsque la source n’a pas de memoire, c’est-à-dire quel’émission de messages futurs ne depend pas des messages qui ontétéémisdans le passé.

  • Chaque message a une probabilité de transmission {p(m1), p(m2), … p(mN)}.

  • Le montant d’information de chaque message dépend de sa probabilité de transmission.

    • Exemple: m1 = il fait beau, m2 = il y a une tornade.

    • SI LA PROBABILITÉ D’ÉMISSION EST FAIBLE, LE MESSAGE CONTIENT BEAUCOUP D’INFORMATION!!!


Montant d information

Montant d’information

  • Ici p(m1)>p(m2) mais I(m1)<I(m2).

  • Supposons que m3= m1m2. Si on suppose que la source n’a pas de memoire, p(m3) = p(m1)p(m2), mais c’est claire que I(m3) = I(m1)+I(m2).

  • Alors I(mi) = logb(1/p(mi)) = -logb(p(mi)).

  • b = 2, I(mi) (bits)

  • b = 3, I(mi) (symbôles ternaires)

  • b= e, I(mi) (nats)

  • b =10, I(mi) (Hartleys)


Exemple

Exemple

  • M = {m1, m2, m3, m4} avec P = {0.35, 0.11, 0.45, 0.09}

  • I(m1) = 1.51 bits

  • I(m2) = 3.18 bits

  • I(m3) = 1.15 bits

  • I(m4) = 3.47 bits

  • La probabilité que la source émet le message m1 suivit par m2 est 0.35×0.11 = 0.0385. L’information dans cette séquence de messages est –log2(0.0385) = 4.69 bits = 1.51+3.18.


Entropie de la source

Entropie de la source

  • L’entropie de la source, H(M), est la valeur moyenne d’information par transmission.


Exemple1

Exemple

  • M = {m1, m2, m3, m4} et P = {0.35, 0.11, 0.45, 0.09}

  • I(m1) = 1.51 bits

  • I(m2) = 3.18 bits

  • I(m3) = 1.15 bits

  • I(m4) = 3.47 bits

  • H(M) = 0.35(1.51)+0.11(3.18)+0.45(1.15)+0.09(3.47) = 1.71 bits/message.


Encodage de source

Encodage de source

  • Prenons l’exempleprecedant.

  • H(M) = 1.71 bits/message.

  • Encodons les messages: m1= 00, m2 = 01, m3 = 10 et m4 = 11, la longueur de chaque message 2 bits. L= longueur moyenne.

  • On peut démontrer que H(M) ≤ L.

  • Maintenant utilisons ce code:

  • m1 = 01, m2 = 000, m3 = 1 and m4 = 001. L = 0.45(1)+0.35(2)+0.11(3)+0.09(3) = 1.75 bits/message.

  • Exemple: 010101000010010010010011 = m1, m1, m1, m2, m1, m4, m4, m4, m4, m3 : uniquement décodable


Encodage de source1

Encodage de source

  • Prenons ce code:

  • m1 = 10, m2 = 100, m3 = 1 and m4 = 010. L = 0.45(1)+0.35(2)+0.11(3)+0.09(3) = 1.75 bits/message.

  • Exemple: 1010 = m1, m1, ou m3, m4. ce n’est pas uniquement décodable.

  • Un code à longueur variable estuniquementdécodables’ilest un code à préfixeconditionné.

  • Efficacité de l’encodeurest H(M)/L. (dansnotreexempleeff = 1.71/1.75 = 0.977.


Codes huffmann

Codes Huffmann

  • L’algorithme Huffmann permet de concevoir des codes à préfixe conditionné.


Th orie d information

m3

m1

m2

m4

0.45

0.35

0.11

0.09

0.45

0.55

+

0.20

+


Th orie d information

m3

m1

m2

m4

0.45

0.35

0.11

0.09

0.45

0.55

+

0.20

+

1

01

0

001

m3 = 1, m1 = 01, m2 = 001

m4 = 000.

00

000


Codes c orrecteur d erreurs

Codes correcteur d’erreurs

  • Code bloc

    • Linéaire

      • Hamming, LDPC

    • Non-Linéaire

    • Cyclic

      • BCH, RS

  • Codes Convolutionnelles

  • Codes Turbo


Bits de parit

Bits de parité

  • Supposons qu’on veut transmettre le message m=[1001001].

  • Supposons que le deuxième bit est décodé en erreur, r = [1101001].

  • Le récepteur ne peut pas déterminer que r est en erreur.

  • Supposons, qu’avant la transmission, on ajoute un bit de parité paire au message mc= [10010011].

  • Maintenant, supposons que le deuxième bit est reçu en erreur, r = [11010011]. Il y a maintenant 5 1’s, ce qui n’est pas permis. Alors un erreur est détecté et le récepteur peut demander une nouvelle transmission.

  • La détection de cet erreur est possible en ajoutant le bit de parité.


Codes blocs

Codes Blocs

  • Les données sont regroupés en groupes de k bits.

  • Chaque « bloc » de k bits est encodé. L’encodage produit un nouveau bloc de n bits où n>k. Encodage produit de la redondance dans le message à transmettre.

  • Le taux du code est isr = k/n.

m

c

encodeur

1011100

1011


Addition et multiplication binaire

Addition et multiplication binaire

  • 0+0 = 0, 0+1 = 1, 1+0 = 1 et 1+1=0 (iln’y a pas de retenu).

  • 0x = 0 oùx = 0 ou1. 1x = x oùx = 0 ou1.

  • Exemples1010 + 1100 = 0110. 0(10010) = (00000).


Codes blocs lin aires

Codes Blocs Linéaires

  • Soit C est un code qui consiste de l’ensemble des vecteurs {c0, c1, … cM} où M = 2k-1 .

  • C est un code linéaire si pour ci et cjen C, ci+cj est aussi en C.

  • Exemple C = {c0= 0000, c1= 0110, c2= 1001, c3= 1111}.

  • c0+cx= cxfor x = 0, 1, 2ou 3.

  • cx+cx = c0.

  • c1+c2= c3, c2+c3= c1, c1+c3= c2.

  • C est linéaire.

  • C2 = {c0= 0001, c1= 0111, c2= 1000, c3= 1110}.

  • cx+cx = 0000 qui n’est pas en C2.

  • C2n’est pas linéaire.


Poids hamming

Poids Hamming

  • Pour un mot de code cx du code C, son poids Hamming égal le nombre d’elements en cx qui ne sont pas 0.

  • C = {0000 0110 1001 1111}

  • H.W{0000} = 0

  • H.W{0110} = 2

  • H.W{1001} = 2

  • H.W{1111} = 4


Distance hamming

Distance Hamming

  • La distance Hamming entre deux mots de codes ci et cjdu code C égal le nombre de position où les deux mots se diffèrent.

    0000 0110 1001 1111

    0000 0 2 2 4

    0110 2 0 4 2

    1001 2 4 0 2

    1111 4 2 2 0

  • ci+cj = 0 dans les positions où ils sont pareils et ci+cj = 1 dans les positions où ils se diffèrent. Donc HD{ci, cj} = HW{ci+cj}.


Distance minimum d un code bloc lin aire

Distance minimum d’un code bloc linéaire

  • Dans l’exemple précédant, dmin = 2.

  • Nous avons vu que HD{ci,cj} = HW{ci+cj} = HW{cx} où, dans le cas des codes blocs linéaires, cxest un autre mot de code en C excluant le mot de code entièrementzéro.

    • Donc, dmin = poids Hamming minimum du code C en excluant le mot de code entièrementzéro.

  • Dans notre exemple, en excluant 0000, les autres mots de code sont 0110, 1001 et 1111. Le poids Hamming minimum de ces trois mots de code est 2. Donc dmin = 2.


Base d un code bloc

Base d’un code bloc

  • C est un code bloc linéaire

  • Choissisons k mots de codes indépendants, c1, c2, …, ck. Aucun de ces mots de code peutêtreexprimécommeunecombinaisonlinéaire des autres.

  • Tous les 2k mots de codes en C peuventêtreexpriméscommeunecombinaisonlinéaire de ces k mots de codes.

    • On dit que ces k mots de code forment la base du code C.

  • cx = a1c1+a2c2+a3c3+…+akckoùai= 0 ou 1

  • Pour notre code on peut choisir comme base 0110 et 1111, ou 0110 et 1001 ou 1001 et 1111.

  • exemple, prenons c1= 0110 et c2 = 1111 comme la base du code.

    • 0000 = 0c1+0c2, 0110 = 1c1+0c2, 1001 = 1c1+1c2 et 1111 = 0c1+1c2.


Matrice g n ratrice

Matrice génératrice

Exemple

Les dimensions de la matriceGsontk×n.


Codes quivalents

Codes équivalents

  • Les codes générés par G1 et G2sont équivalents si les matrices génèrent les mêmes mots de codes (cependant les messages correspondants sont différents).

  • Exemple

m 00 0000 0000

01 1111 1111

10 0110 1001

11 1001 0110


Codes syst matiques

Codes systématiques

  • Un code est systématique si les bits du message se retrouvent au début des mots de codes.

  • c = [m|p].

  • Gsyst= [Ik|P].

  • Exemple

m 00 0000

01 0110

10 1001

11 1111


Code syst matique quivalent

Code systématiqueéquivalent

  • Pour n’importequel code, on peuttrouver la matricegénératrice de son code systématiqueéquivalent par transformation linéaire.

    • Exemple au tableau.

Lecture 6


Matrice de v rification de parit

Matrice de vérification de parité

  • La matrice de vérification de paritéH pour un code a la propriétécHT = 0, oùcestn’importequel mot de code du code C.

  • On peutécrirecHT = 0commemGHT = 0

  • Donc GHT = 0.

  • On peuttrouverH à partir da la matriceGsyst.

  • H= [PT|In-k].

  • Les dimensions de Hsont (n-k)×n.


Exemple code hamming 7 4

Exemple: Code Hamming (7,4)

Trouveztousses mots de codes ainsiquedmin, et trouvezH.

Solution au tableau.


Decodage

Decodage

  • Le mot reçu, r = c+e, où e = vecteurd’erreur.

  • Par exemple, sic = (1 1 0 0 1 1 0 1) et r = (1 0 0 0 1 1 0 1), donce = (0 1 0 0 0 0 0 0).

  • En supposantque les erreurs de détectionarrivent avec p < 0.5

    • Dans le casoù le mot reçucontient des erreurs, le vecteurd’erreur le plus probable estcelui avec le poids le plus faible.


Exemple2

Exemple

  • C = {(00000) (01011) (10110) (11101)}

  • r = (11111)

    • Si c = (00000), alorse = (11111) qui arrive avec probabilitép5.

    • Si c = (01011), alorse = (10100) qui arrive avec probabilitép2(1-p)3.

    • Si c = (10110), alorse = (01001) qui arrive avec probabilitép2(1-p)3.

    • Si c = (11101), alorse = (00010) qui arrive avec probabilitép(1-p)4 > p2(1-p)3 > p5.

  • Donc le décodeurchoisitc = (11101) comme le mot de code le plus probable et sa sortie est le message qui corréspond à ce mot de code.


Decodage par tableau standard

Decodage par tableau standard

  • Tableau qui donne la mise en corréspondance entre les mots reçus et le de code les plus probable.


Comment construire le tableau standard

Comment construire le tableau standard

  • Faitesuneliste de tous les mots possibles.

  • Enlever de la liste les mots de codes et les placer dans la première rangée avec le mot entièrementzéro à la gauche.

  • Prendre le mot avec le poids le plus faible et mettredans la colonne sous le mot entièrementzéro. Additionnercevecteur aux autres mots de code et placer le resultat sous ce mot de code.

    • Enlevertouscesrésultats de la liste.

  • Répeterjusqu’à la fin de la liste de mots.


Decodage par syndrome

Decodage par syndrome

  • S = rHT.

  • r=c+e, therefore S = (c+e)HT = cHT + eHT = eHT.

  • Tous les vecteursdans la mêmerangée du tableau standard produit le même syndrome.

  • Syndrome indique le vecteurd’erreur le plus probable et on produitc par c = r+e.


Exemple3

Exemple

  • Pour ce code:


Exemple4

Exemple

  • Supposonsr = (01001), alors

  • Ceciindiqueque le 4e bit est en erreur: e = (00010) doncc = (01011).


Capacit de correction ou d tection d erreur

Capacité de correction oudétectiond’erreur

  • t = tous les vecteurd’erreur de poids t oumoinspeuventêtrecorrigés.

  • J = tous les vecteurd’erreur de poids J oumonspeuventêtredétectés.

  • t = (dmin-1)/2 (dminestimpaire) or (dmin-2)/2 (dminestpaire).

  • J = dmin -1

  • Parfois on crée des codes qui tente de corriger les erreurs de poids t oumoinsmaisest capable de détecter des erreurs de poidssupérieur à t: t+J = dmin -1 oùJ > t.

    • Exemple un code qui corrige 2 erreursmaisdétecte 4 erreursdoitavoirdmin = 7 (ou plus).


Performance decoder failure

Performance: Decoder Failure

  • Probability of decoder failure = probability that decoder selects the incorrect codeword = probability that error pattern is not one of the error patterns that it can correct

    • In our example, the decoder can correct all 5 error patterns of weight 1 and 2 error patterns of weight two. The probability that the error pattern IS one of these is (1-p)5+5p(1-p)4 + 2p2(1-p)3. Therefore P(E) = 1- (1-p)5-5p(1-p)4 - 2p2(1-p)3

    • In many cases, the code has too many codewords to construct a standard array.

    • But we usually know dmin, therefore we know t.


Performance decoder failure1

Performance: Decoder Failure


Performance bit error rate

Performance: Bit Error Rate

  • (1/k)P(E) < Pb < P(E)


Performance probability undetected error

Performance: Probability Undetected Error

  • P(U) = probability that an error is undetected = probability that syndrome = 0 even if error pattern is not 0 = probability that error pattern is same as a codeword.

  • In our example P(U) = 2p3(1-p)2 + p4(1-p).

  • If we don’t know the codewords because code is too large, then P(U) < probability error pattern has weight greater than j = 1 – probability that error pattern has weight j or less


  • Login