INFORMACIOELMELET_7 - Széchenyi István Egyetem

Download Report

Transcript INFORMACIOELMELET_7 - Széchenyi István Egyetem

Információelmélet
Nagy Szilvia
7. Lineáris blokk-kódok
2005.
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Lineáris blokk-kódok
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Blokk-kódok: a tömörített üzenet k
hosszúságú blokkjaihoz rendelnek egyegy n hosszúságú kódszót. (n>k)
Lineáris blokk-kódok olyan blokk-kódok,
melyekre a kódszavak halmaza lineáris
tér: K altere Cn-nek.
Ha K lineáris tér (k dimenziós), akkor
 { g0, g1, …, gk1 } bázisrendszere, és
minden ci kódszó kifejthető e
bázisrendszer szerint:
k 1
ci    i j g j
j 0
2
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Lineáris blokk-kódok
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Minden ci kódszó kifejthető a bázisrendszer
szerint:
k 1
ci    i j g j
j 0
Ha a gj-k adottak, akkor a ci-ket jól leírják
a kifejtési együtthatóikból álló
sorvektorok:

 i   i 0  i1   in 
A bázisrendszer választása még adott K
mellett sem egyértelmű. Más-más
bázisrendszerhez más és más
együtthatók tartoznak.
3
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Lineáris blokk-kódok
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Minden K kódra van egy olyan bázisrendszer,
amelyben a bi=(bi0, bi1, …, bi k−1)
üzenetekhez rendelt kódszó:
k 1
ci   bi j g j
j 0
Példa: legyen a kódszavak K tere az
ötdimenziós térnek egy háromdimenziós
altere, amelyet a
g0=(1 0 0 1 0)
g1=(0 1 0 0 1)
g2=(0 0 1 1 0)
vektorok határoznak meg. Adjuk meg a
b=(0 1 1) üzenethez rendelt kódszót.
4
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Lineáris blokk-kódok
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
g0=(1 0 0 1 0), g1=(0 1 0 0 1), g2=(0 0 1 1 0)
A b=(0 1 1) üzenethez rendelt kódszó:
2
c   b j g j  0  1 0 0 1 0  
j 0
 1 0 1 0 0 1 
 1 0 0 1 1 0  
 0 1 1 1 1.
Szisztematikus
kódok – HT
Mellékosztályok
5
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Generátormátrix
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A { g0, g1, …, gk1 } bázisvektorokból az alábbi
szabály szerint épített G mátrix a kód
generátormátrixa:
 g0   g00

 
 g1   g10
G







g   g
 k 1   k 1 0
g01
g11

gk 11
g0 n1 

 g1n1 




 gk 1n1 

Az üzenet bi 0 bi1  bi k 1 együtthatóiból a
G mátrix segítségével megkapható a
kódszó:
ci  bi  G
6
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Matematikai kitérő – Mátrixszorzásról
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Egy sorvektor és egy oszlopvektor skaláris
szorzata:
 b0 
 
 b1 
a  b  a0 a1  a j     

 
b 
 j
 a0  b0  a1  b1    aj  b j
A mátrixszorzás: legyen az A mátrixnak
ugyanannyi oszlopa, mint amennyi sora
van B-nek (j+1 db):
 a00

 a10
A


a
 i0
a01  a0 j 

a11  a1j 
,
   

ai1  aij 
 b00

 b10
B


b
 j0
b01  b0 k 

b11  b1k 
   

b j1  b jk 
7
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Matematikai kitérő – Mátrixszorzásról
Lineáris blokkkódok
Definíció
Generátormátrix
Az A mátrixnak a B-vel vett szorzata:
Az A∙B m-edik sorának n-edik eleme az A
m-edik sorvektorának és B n-edik
oszlopvektorának a skalárszorzata.
Mátrixszorzás







Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok –aHT a
 00
Mellék- a
10
A
B  
osztályok


a
 i0
01
a11

ai1
 a0 j 

 a1j 
  

 aij 
b00
b01

b10
b11




bj 0
b j1

 a00 b00  a01b10    a0 j b j 0  a0  b0

 a10 b00  a11b10    a1j b j 0  a1  b0



 a b  a b  a b  a b
i1 10
ij j 0
i
0
 i 0 00
b0 k 

b1k 
 

b jk 

a0  b1  a0  b k 

a1  b1  a1  b k 


 

ai  b1  ai  b k 
8
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Matematikai kitérő – Mátrixszorzásról
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Ha A sorainak a száma nem azonos B
oszlopainak a számával, akkor B∙A nem
értelmezett.
Ha B∙A értelmezett, többnyire akkor is
A∙B≠ B∙A.
A mátrixszorzás nem kommutatív – nem
felcserélhető.
Megjegyzés: diadikus szorzat: a b oszlopvektor és a
sorvektor diadikus szorzata egy j × j -s mátrix:
 b0 
 
 b1 
ba   
 
b 
 j
(a0
a1
 a0  b0 a1  b0

 a0  b1 a1  b1
 


a b a b
1
j
 0 j

aj )
 aj  b0 

 aj  b1 

 

 a j  b j 
9
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Matematikai kitérő – Mátrixszorzásról
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Egységmátrix: minden A-ra I∙A=A∙I=A
1

0
I


0

0  0

1  0
  

0  1 
a diagonálisban 1-esek vannak,
mindenhol máshol 0-k
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
10
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Generátormátrix
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A K kód G generátormátrixa:
 g0   g00

 
 g1   g10
G





 
g   g
 k 1   k 1 0
g01
g11

gk 11
g0 n1 

 g1n1 




 gk 1n1 

Összesen k darab bázisvektort választottunk
(g0, g1, …, gk1-et), ezek jelölik ki a K
alteret a Cn téren belül: G generálja a
kódszavak alterét.
11
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Generátormátrix
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A k darab választott bázisvektor mindegyike
n hosszúságú, ugyanakkor egy kdimenziós teret írnak le (ehhez k
komponens is elég lenne): n−k
szimbólum felesleges, redundáns.
Ezek a szimbólumok nem tartalmaznak új
információt, őket használjuk fel arra,
hogy a kódszavak Hamming-távolsága
nagy legyen, ők teszik lehetővé a
hibajelzést és -javítást.
Csatornakódolás során az entrópia csökken.
12
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Generátormátrix
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Példa: legyen a kódszavak K tere az
ötdimenziós térnek egy háromdimenziós
altere, amelyet a g0=(1 0 0 1 0);
g1=(0 1 0 0 1) és g2=(0 0 1 1 0) vektorok
határoznak meg. Adjuk meg a
generátormátrixsszal a b=(0 1 1)
üzenethez rendelt kódszót.
 1 0 0 1 0


c  b  G  0 1 1   0 1 0 0 1  
0 0 1 1 0


 0 1 1 1 1
13
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Szisztematikus kódok generátormátrixa
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A szisztematikus kód olyan (n,k) paraméterű
kód, amelynek minden kódszavának az
első k karaktere megegyezik az
üzenettel.
 c0 c1  ck1 ck  cn1
üzenetszegmens
paritásszegmens
A szisztematikus kódok generátormátrixa:
Gkn 
Ikk
Pkn k 
14
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Paritásmátrix, szindróma
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A csatorna kimenetén kapott v vektorról el
kell dönteni, hogy kódszó-e. Ha a v
vektor paritásellenőrző HT mátrixszal
(paritásmátrixszal) vett szorzata 0, akkor v
kódszó, ha nem, akkor vK.
A v vektor HT paritásmátrixszal vett
szorzata a vektor szindrómája:
0, ha v  K

T
s  v H  
 nem 0, ha v  K
A ci  bi  G kódszavakra tehát:
0  s  ci  HT  bi G  HT
i - re, így G  HT  0.
Ezt használják fel HT előállítására.
15
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Szisztematikus kódok paritásmátrixa
Lineáris blokkkódok
Definíció
Generátormátrix
A szisztematikus
kódok
generátormátrixa
egyszerű szerkezetű:
Paritásmátrixuk
szintén egyszerű és a
G mátrixból könnyen
előállítható:
PknPijk 
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Gkn 
Ikk
0  0 1 00 00
Pkn k 
HT nnk  
In k n k 
Belátható, hogy P=P’: 0  G  HT i-edik sorának
j-edik eleme: G i-edik sorának első k eleme I-ből származik, így közülük az i-edik
elem 1, a többi 0. Ez a szakasz P’ j-edik
oszlopával szorzódik, az eredmény P’ij.
16
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Szisztematikus kódok paritásmátrixa
Lineáris blokkkódok
Definíció
Generátormátrix
A szisztematikus
kódok
generátormátrixa
egyszerű szerkezetű:
Paritásmátrixuk
szintén egyszerű és a
G mátrixból könnyen
előállítható:
PknPijk 
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Gkn 
Ikk
0  0 1 00 00
Pkn k 
Pij
HT nnk  
0

0
0
1
n k
0

0
In k 

G i-edik sorának utolsó nk eleme a HT egységmátrix-részével szorzódik, ahonnan
csak a j-edik elem 1, a többi nulla- az
eredmény Pij .
A teljes eredmény P’ij + Pij, ami 0, így P’ij = Pij17
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Hibavektorok és mellékosztályaik
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Legyen a vett v vektorunk
v  c  c
ahol Δc a hibavektor. A v szindrómája ekkor
s  v  HT  c  c  HT  0  c  HT
ami pont a Δc szindrómája.
A Δci hibavektor által a K kódból generált Mi
mellékosztály azon vk vektorok halmaza,
amelyek a ck  K kódszavakból jönnek
létre. Az Mi mellékosztály összes
elemének a szindrómája azonos:
megegyezik Δci szindrómájával.
18
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Hibavektorok és mellékosztályaik
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A Δci hibavektorok egy része előáll egy
másik Δcj hibavektorból egy kódszó
hozzáadásával:
ci  ck  c j
Ezeknek a szindrómája és egyben a
mellékosztálya azonos lesz.
Mivel a mellékosztályok elemei egy
hibavektorból a kódszavak
hozzáadásával állnak elő, a
mellékosztályok tartalmazzák az összes
azonos szindrómájú hibamintázatot.
19
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Hibavektorok és mellékosztályaik
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
ci  ci 0
ci  c1
ci  c2
 v0
ci  c1
 v1
ci  c1  c1
 v2
 ci1
ci  c2
 vj
ci  c2  c1
 ci 2

ci  ck 1
Szisztematikus
kódok – HT
Mellékosztályok
A mellékosztályok tartalmazzák az összes
azonos szindrómájú hibamintázatot.
 ci k 1
ci 1
 vl

ci  ck 1
 v k 1


mivel K lineáris tér, c1  c1 is kódszó : c j
c1  c2 
is kódszó : cl
20
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Hibavektorok és mellékosztályaik
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A v vektorok tehát több Δcij-ből is előállnak,
más és más cj kódszóból.
(Mindig csak egy mellékosztály Δcij-iből!
A szindróma azonos.)
El kell dönteni, melyik kódszóba javítsuk
őket. Abba a kódszóba javítjuk v-t,
amelyiktől a legkisebb a Hammingtávolsága.
Egy a=(a0, a1, …, an1) vektor w(a) súlya a
nem nulla ai komponenseinek a száma.
A legkisebb súlyú Δcij hibamintázat
eredményezi az eredeti c vektortól a
legkisebb Hamming-távolságbeli
eltérést.
21
Széchenyi Információelmélet – Lineáris blokk-kódok
István
Egyetem
Hibavektorok és mellékosztályaik
Lineáris blokkkódok
Definíció
Generátormátrix
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
A legkisebb súlyú Δcij hibamintázat
eredményezi az eredeti c vektortól a
legkisebb Hamming-távolságbeli
eltérést.
A v vektor szindrómájához tartozó
mellékosztályból a legkisebb súlyút,
Δcij0t, vesszük hibavektornak, ezzel
javítjuk ki v-t: cbecsült=v Δcij0
A mellékosztályok legkisebb súlyú elemeit a
mellékosztályok vezető elemeinek
nevezik.
22