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, …, gk1 } 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, …, gk1 } 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
gk 11
g0 n1
g1n1
gk 1n1
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
ba
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
gk 11
g0 n1
g1n1
gk 1n1
Összesen k darab bázisvektort választottunk
(g0, g1, …, gk1-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 ck1 ck cn1
üzenetszegmens
paritásszegmens
A szisztematikus kódok generátormátrixa:
Gkn
Ikk
Pkn 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 vK.
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ó:
PknPijk
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Gkn
Ikk
0 0 1 00 00
Pkn k
HT nnk
In 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ó:
PknPijk
Mátrixszorzás
Szisztematikus
kódok – G
Paritásmátrix,
szindróma
Szisztematikus
kódok – HT
Mellékosztályok
Gkn
Ikk
0 0 1 00 00
Pkn k
Pij
HT nnk
0
0
0
1
n k
0
0
In k
G i-edik sorának utolsó nk 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, …, an1) 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