Samoopravné kódy. Katedra matematiky a Institut teoretické informatiky Západočeská univerzita



Podobné dokumenty
Teorie informace a kódování (KMI/TIK) Reed-Mullerovy kódy

Hammingův odhad. perfektní kódy. koule, objem koule perfektní kód. triviální, Hammingův, Golayův váhový polynom. výpočet. příklad

[1] samoopravné kódy: terminologie, princip

Odpřednesenou látku naleznete v dodatku A skript Abstraktní a konkrétní lineární algebra.

Hammingovy kódy. dekódování H.kódů. konstrukce. šifrování. Fanova rovina charakteristický vektor. princip generující a prověrková matice

Odpřednesenou látku naleznete v kapitole 3.3 skript Diskrétní matematika.

1 Co jsou lineární kódy

Teorie kódování aneb jak zhustit informaci

Informatika Kódování. Obsah. Kód. Radim Farana Podklady předmětu Informatika pro akademický rok 2007/2008

BCH kódy. Alena Gollová, TIK BCH kódy 1/27

Matematika IV 10. týden Kódování

Lineární algebra nad obecným Z m, lineární kódy

8 Kořeny cyklických kódů, BCH-kódy

Soustavy lineárních rovnic

Teorie informace a kódování (KMI/TIK)

Samoopravné kódy, k čemu to je

[1] samoopravné kódy: terminologie, princip

Maticí typu (m, n), kde m, n jsou přirozená čísla, se rozumí soubor mn veličin a jk zapsaných do m řádků a n sloupců tvaru:

(Cramerovo pravidlo, determinanty, inverzní matice)

Hammingův kód. Vladislav Kosejk. České vysoké učení technické v Praze Fakulta jaderná a fyzikálně inženýrská Detašované pracoviště Děčín

0.1 Úvod do lineární algebry

Matematika 1 MA1. 2 Determinant. 3 Adjungovaná matice. 4 Cramerovo pravidlo. 11. přednáška ( ) Matematika 1 1 / 29

V předchozí kapitole jsme podstatným způsobem rozšířili naši představu o tom, co je to číslo. Nadále jsou pro nás důležité především vlastnosti

Teorie informace: řešené příklady 2014 Tomáš Kroupa

Matematika (CŽV Kadaň) aneb Úvod do lineární algebry Matice a soustavy rovnic

Kódování signálu. Problémy při návrhu linkové úrovně. Úvod do počítačových sítí. Linková úroveň

1 Řešení soustav lineárních rovnic

Teorie kódování se zabývá tím, jak rychle a spolehlivě přenášet informace z jednoho místa na druhé. Mezi její aplikace patří například minimalizace

MATICE. a 11 a 12 a 1n a 21 a 22 a 2n A = = [a ij]

3 Lineární kombinace vektorů. Lineární závislost a nezávislost

Matice lineárních zobrazení

Symetrické a kvadratické formy

a počtem sloupců druhé matice. Spočítejme součin A.B. Označme matici A.B = M, pro její prvky platí:

IB112 Základy matematiky

Kódováni dat. Kódy používané pro strojové operace

Kapitola 11: Vektory a matice:

Základní pojmy teorie množin Vektorové prostory

0.1 Úvod do lineární algebry

Vektory a matice. Obsah. Aplikovaná matematika I. Carl Friedrich Gauss. Základní pojmy a operace

1 Vektorové prostory.

KOMPRESE OBRAZŮ. Václav Hlaváč. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání. hlavac@fel.cvut.

Soustava m lineárních rovnic o n neznámých je systém

Vektorové podprostory, lineární nezávislost, báze, dimenze a souřadnice

2.6. Vlastní čísla a vlastní vektory matice

Matice. a m1 a m2... a mn

Generující kořeny cyklických kódů. Generující kořeny. Alena Gollová, TIK Generující kořeny 1/30

Kapitola 11: Vektory a matice 1/19

Obsah. Lineární rovnice. Definice 7.9. a i x i = a 1 x a n x n = b,

KOMPRESE OBRAZŮ. Václav Hlaváč, Jan Kybic. Fakulta elektrotechnická ČVUT v Praze katedra kybernetiky, Centrum strojového vnímání.

Kolik existuje různých stromů na pevně dané n-prvkové množině vrcholů?


příkladů do cvičení. V textu se objeví i pár detailů, které jsem nestihl (na které jsem zapomněl) a(b u) = (ab) u, u + ( u) = 0 = ( u) + u.

Kódování Obsah. Reedovy-Solomonovy kódy. Radim Farana Podklady pro výuku. Cyklické kódy.

Soustavy lineárních rovnic a determinanty

Soustavy. Terminologie. Dva pohledy na soustavu lin. rovnic. Definice: Necht A = (a i,j ) R m,n je matice, b R m,1 je jednosloupcová.

FAKULTA STROJNíHO INŽENÝRSTVí ÚSTAV MATEMATIKY

Lineární algebra : Metrická geometrie

ALGEBRA. Téma 4: Grupy, okruhy a pole

1 Linearní prostory nad komplexními čísly

VI. Maticový počet. VI.1. Základní operace s maticemi. Definice. Tabulku

Učební texty k státní bakalářské zkoušce Matematika Základy lineárního programování. študenti MFF 15. augusta 2008

A0M15EZS Elektrické zdroje a soustavy ZS 2011/2012 cvičení 1. Jednotková matice na hlavní diagonále jsou jedničky, všude jinde nuly

AVDAT Klasický lineární model, metoda nejmenších

VĚTY Z LINEÁRNÍ ALGEBRY

Afinita je stručný název pro afinní transformaci prostoru, tj.vzájemně jednoznačné afinní zobrazení bodového prostoru A n na sebe.

10. Soustavy lineárních rovnic, determinanty, Cramerovo pravidlo

Učební texty k státní bakalářské zkoušce Matematika Vlastní čísla a vlastní hodnoty. študenti MFF 15. augusta 2008

Matematika B101MA1, B101MA2

Uspořádanou n-tici reálných čísel nazveme aritmetický vektor (vektor), ā = (a 1, a 2,..., a n ). Čísla a 1, a 2,..., a n se nazývají složky vektoru

9. přednáška 26. listopadu f(a)h < 0 a pro h (0, δ) máme f(a 1 + h, a 2,..., a m ) f(a) > 1 2 x 1

Dosud jsme se zabývali pouze soustavami lineárních rovnic s reálnými koeficienty.

l, l 2, l 3, l 4, ω 21 = konst. Proved te kinematické řešení zadaného čtyřkloubového mechanismu, tj. analyticky

cv3.tex. Vzorec pro úplnou pravděpodobnost

α 1 α 2 + α 3 = 0 2α 1 + α 2 + α 3 = 0

Kódy pro detekci a opravu chyb. INP 2008 FIT VUT v Brně

Řekněme nejprve, jaké kódování nás v tomto textu bude zajímat a jaké ne. K. Komprese dat, tedy kódování dat s cílem zmenšit jejich objem.

1 Projekce a projektory

1 Soustavy lineárních rovnic

Úvod do teorie informace

Součin matice A a čísla α definujeme jako matici αa = (d ij ) typu m n, kde d ij = αa ij pro libovolné indexy i, j.

a + b + c = 2 b + c = 1 a b = a 1 2a 1 + a a 3 + a 5 + 2a 2 + a 2 + a

2.6. VLASTNÍ ČÍSLA A VEKTORY MATIC

ANTAGONISTICKE HRY 172

Kód vzdělávacího materiálu: Název vzdělávacího materiálu: Datum vytvoření: Jméno autora: Předmět: Ročník: 1 a 2

Definice. Vektorový prostor V nad tělesem T je množina s operacemi + : V V V, tj. u, v V : u + v V : T V V, tj. ( u V )( a T ) : a u V které splňují

INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ. Modernizace studijního programu Matematika na PřF Univerzity Palackého v Olomouci CZ.1.07/2.2.00/28.

Cyklické kódy. Definujeme-li na F [x] n sčítání a násobení jako. a + b = π n (a + b) a b = π n (a b)

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ

7. Důležité pojmy ve vektorových prostorech

Derivace funkcí více proměnných

kryptosystémy obecně další zajímavé substituční šifry klíčové hospodářství kryptografická pravidla Hillova šifra Vernamova šifra Knižní šifra

Regulární matice. Věnujeme dále pozornost zejména čtvercovým maticím.

1. Jordanův kanonický tvar

Algebra v informatice

Drsná matematika III 1. přednáška Funkce více proměnných: křivky, směrové derivace, diferenciál

Lenka Zalabová. Ústav matematiky a biomatematiky, Přírodovědecká fakulta, Jihočeská univerzita. zima 2012

Golayův kód 23,12,7 -kód G 23. rozšířený Golayův kód 24,12,8 -kód G 24. ternární Golayův kód 11,6,5 -kód G 11

Eukleidovský prostor a KSS Eukleidovský prostor je bodový prostor, ve kterém je definována vzdálenost dvou bodů (metrika)

Matematika. Kamila Hasilová. Matematika 1/34

12. Determinanty. 12. Determinanty p. 1/25

Transkript:

Katedra matematiky a Institut teoretické informatiky Západočeská univerzita Seminář pro učitele středních a vysokých škol, Plzeň, 30. března 2012

jsou všude Některé oblasti využití: CD přehrávače mobilní sítě paměti a pevné disky čárové kódy čipové karty kosmický výzkum

jsou všude Některé oblasti využití: CD přehrávače mobilní sítě paměti a pevné disky čárové kódy čipové karty kosmický výzkum

Otcové zakladatelé Richard Hamming (1915 1998) 1950: Error detecting and error correcting codes Claude Shannon (1916 2001) 1948: A mathematical theory of communication

Detekce chyb rodné číslo čísla bankovních účtů a kreditních karet IČO síťové protokoly některé paměti RAM

Ilustrační příklad obrázek v 16 stupních šedi, každý bod reprezentován 4 bity například 0000 = černá, 1101 = světle šedá přenos faxem po nekvalitní lince, každý jednotlivý bit se poruší s pravděpodobností p obrazový bod bude přijat správně s pravděpodobností (1 p) 4 takže pro p = 0, 001 bude v průměru 19% bodů chybných Jak zvýšit spolehlivost přenosu? např.: každý bit zopakovat třikrát, přijatou trojici dekódovat podle většiny jen necelé 1% bodů bude chybných, ale cenou je trojnásobný objem dat

Ilustrační příklad obrázek v 16 stupních šedi, každý bod reprezentován 4 bity například 0000 = černá, 1101 = světle šedá přenos faxem po nekvalitní lince, každý jednotlivý bit se poruší s pravděpodobností p obrazový bod bude přijat správně s pravděpodobností (1 p) 4 takže pro p = 0, 001 bude v průměru 19% bodů chybných Jak zvýšit spolehlivost přenosu? např.: každý bit zopakovat třikrát, přijatou trojici dekódovat podle většiny jen necelé 1% bodů bude chybných, ale cenou je trojnásobný objem dat

Hammingův kód obrazový bod (a 1, a 2, a 3, a 4 ) zakódujeme do 7-bitového slova (x 1,..., x 7 ) bity x 1, x 2, x 4 jsou kontrolní, ostatní jsou informační do informačních souřadnic zapíšeme a 1,..., a 4 kontrolní souřadnice dopočítáme (modulo 2) podle rovnic: x 4 + x 5 + x 6 + x 7 = 0, x 2 + x 3 + x 6 + x 7 = 0, x 1 + x 3 + x 5 + x 7 = 0. (v i-té rovnici se objevuje x k, pokud i-tý bit v binárním zápisu čísla k je 1) pro každou čtveřici (a 1,..., a 4 ) obdržíme kódové slovo: (0 1 1 1) (0 0 0 1 1 1 1)

Hammingův kód obrazový bod (a 1, a 2, a 3, a 4 ) zakódujeme do 7-bitového slova (x 1,..., x 7 ) bity x 1, x 2, x 4 jsou kontrolní, ostatní jsou informační do informačních souřadnic zapíšeme a 1,..., a 4 kontrolní souřadnice dopočítáme (modulo 2) podle rovnic: x 4 + x 5 + x 6 + x 7 = 0, x 2 + x 3 + x 6 + x 7 = 0, x 1 + x 3 + x 5 + x 7 = 0. (v i-té rovnici se objevuje x k, pokud i-tý bit v binárním zápisu čísla k je 1) pro každou čtveřici (a 1,..., a 4 ) obdržíme kódové slovo: (0 1 1 1) (0 0 0 1 1 1 1)

Vlastnosti Hammingova kódu máme tedy 16 kódových slov délky 7 každá dvě se liší alespoň ve 3 souřadnicích neboli: Hammingova vzdálenost každých dvou slov je 3) poruší-li se tedy při přenosu nejvýše jeden bit, dokážeme odeslané kódové slovo správně rekonstruovat kód opravuje jednu chybu

Maticová formulace Soustavu rovnic, podle které se dopočítávají kontrolní bity, lze zapsat ve tvaru: kde x 1 x 2 x 3 0 A x 4 = 0, x 5 0 x 6 x 7 0 0 0 1 1 1 1 A = 0 1 1 0 0 1 1. 1 0 1 0 1 0 1

Dekódování Hammingova kódu Dejme tomu, že přijaté slovo je y = (y 1,..., y 7 ). Postup dekódování: Příklad: pokud Ay T je nulový vektor, ponecháme y beze změny, jinak přečteme Ay T jako binární zápis čísla od 1 do 7 a změníme bit na příslušné souřadnici. zdrojová data jsou (0 1 1 1) zakódovali jsme je slovem (0 0 0 1 1 1 1) při přenosu se porušil předposlední bit, výsledkem je slovo (0 0 0 1 1 0 1) součin s maticí A je (1 1 0) T, takže opravíme šestou souřadnici

Dekódování Hammingova kódu Dejme tomu, že přijaté slovo je y = (y 1,..., y 7 ). Postup dekódování: Příklad: pokud Ay T je nulový vektor, ponecháme y beze změny, jinak přečteme Ay T jako binární zápis čísla od 1 do 7 a změníme bit na příslušné souřadnici. zdrojová data jsou (0 1 1 1) zakódovali jsme je slovem (0 0 0 1 1 1 1) při přenosu se porušil předposlední bit, výsledkem je slovo (0 0 0 1 1 0 1) součin s maticí A je (1 1 0) T, takže opravíme šestou souřadnici

Ještě k příkladu Při použití Hammingova kódu pro kódování faxové zprávy bude chybných jen 5% bodů (bez kódování to bylo 18%). Jiná situace: Potom: je třeba, aby výsledný obrázek byl bezchybný, rozměry jsou 16 16 bodů, pravděpodobnost chyby v jednotlivém bitu je 0,1%. při použití Hammingova kódu (i při ztrojování bitů) je pravděpodobnost úspěchu přes 99%, bez kódování pouze 36%.

Ještě k příkladu Při použití Hammingova kódu pro kódování faxové zprávy bude chybných jen 5% bodů (bez kódování to bylo 18%). Jiná situace: Potom: je třeba, aby výsledný obrázek byl bezchybný, rozměry jsou 16 16 bodů, pravděpodobnost chyby v jednotlivém bitu je 0,1%. při použití Hammingova kódu (i při ztrojování bitů) je pravděpodobnost úspěchu přes 99%, bez kódování pouze 36%.

Obecné Hammingovy kódy analogickou konstrukci lze provést pro každou délku n = 2 k 1 (k 2) dostáváme kódy délky 2 k 1 s k kontrolními bity a minimální vzdáleností dvou slov 3 jde o lineární kódy (kódová slova tvoří lineární prostor nad dvouprvkovým tělesem)

Hustota Hammingových kódů Hustota kódu délky n s K slovy: h = log 2 K n udává zhruba poměr počtu informačních bitů k délce slova hustoty Hammingových kódů: H(3, 1) 0, 333 H(7, 4) 0, 571 H(15, 11) 0, 733 H(31, 26) 0, 839 hustota se blíží jedné jako 1 log n n

Hammingovy kódy jsou perfektní Pro kód s délkou 7 a minimální vzdáleností dvou slov 3 má Hammingův (7, 4)-kód maximální možný počet kódových slov: pro kódové slovo c nechť B(c) je množina všech slov o vzdálenosti 1 od c pro různá kódová slova c jsou množiny B(c) disjunktní (protože vzdálenost dvou kódových slov je 3) v každé množině B(c) je 8 slov velikost sjednocení množin B(c) je tedy 8 16 = 128, což je přesně počet všech slov délky 7 Podobné kódy se nazývají perfektní, patří mezi ně mj. všechny Hammingovy kódy.

Aplikace Hammingových kódů: disková pole diskové pole RAID: zařízení obsahující několik synchronizovaných pevných disků řada typů, v původní specifikaci označení Level 0 6 RAID Level 2: ochrana proti výpadku 1 disku pomocí Hammingova kódu příklad konfigurace: 7 disků, z toho 4 informační a 3 kontrolní slovo o 4 bitech se převede na slovo kódu H(7, 4) (délky 7), na každý disk se uloží 1 bit

Hadamardovy kódy a Mariner 9 Mariner 9, první sonda na oběžné dráze kolem jiné planety (Mars, 1971):

Přenos obrázků z Mariner 9 černobílé snímky Marsu s 64 úrovněmi šedi v rozlišení 832 700 vlivem kosmického záření a šumu zesilovače mnoho chyb nutnost kódování za daných podmínek by bylo možné navýšit objem přenášených dat zhruba na pětinásobek (hustota kódu by měla být zhruba 0, 2 nebo více) při odeslání každého bitu 5 : možnost opravy 2 chyb Hadamardův (32, 6)-kód umožnil opravu 7 chyb

Hadamardovy matice Hadamard (1893): Pokud pro prvky komplexní čtvercové matice řádu n platí a ij 1, pak det A n n/2. Hadamardova matice: čtvercová matice H s prvky ±1, kde každé dva řádky se shodují přesně v polovině prvků pro H platí v Hadamardově větě rovnost není těžké dokázat: je-li H řádu n, pak n = 1, 2 nebo násobek 4 Hadamardova hypotéza: pro každý z těchto řádů Hadamardova matice existuje hypotéza dokázána pro n < 668

Hadamardovy matice Hadamard (1893): Pokud pro prvky komplexní čtvercové matice řádu n platí a ij 1, pak det A n n/2. Hadamardova matice: čtvercová matice H s prvky ±1, kde každé dva řádky se shodují přesně v polovině prvků pro H platí v Hadamardově větě rovnost není těžké dokázat: je-li H řádu n, pak n = 1, 2 nebo násobek 4 Hadamardova hypotéza: pro každý z těchto řádů Hadamardova matice existuje hypotéza dokázána pro n < 668

Sylvesterova konstrukce Konstrukce Hadamardových matic řádu 2 k : H 1 = ( + ) ( ) + + H 2 = + + + + + H 4 = + + + + + + ( ) Hi H H i+1 = i H i H i

Hadamardův (32, 6)-kód Kód použitý pro Mariner 9: H 32 = Hadamardova matice řádu 32 (získaná pomocí Sylvesterovy konstrukce) pro každý řádek r provedeme záměnu ve vektorech r a r + 0 1 dostaneme 64 slov délky 32, každé dvě se liší v 16 souřadnicích výsledný kód opravuje 7 chyb, hustota 6/32 = 0, 188 dostatečná

Reed-Solomonovy kódy Nechť p je prvočíslo: počítáme modulo p s čísly z množiny F p = {0,..., p 1} výsledná algebraická struktura je těleso velikosti p pro polynom f (x) s koeficienty z F p uvažme vektor (evaluace polynomu f ) [f ] = (f (1), f (2),..., f (p 1)) Reed-Solomonův kód RS(p, k) je tvořen všemi slovy [f ], kde f probíhá polynomy stupně < k

Vlastnosti Reed-Solomonových kódů Kód RS(p, k): délka p 1 p k kódových slov minimální vzdálenost p k Použití: přehrávače CD a DVD disků (jako součást komplikovanějšího schématu) čtečky čárových kódů dekodéry satelitního vysílání kosmické sondy (Voyager 2 snímky Saturnu, Uranu a Neptuna)

Vlastnosti Reed-Solomonových kódů Kód RS(p, k): délka p 1 p k kódových slov minimální vzdálenost p k Použití: přehrávače CD a DVD disků (jako součást komplikovanějšího schématu) čtečky čárových kódů dekodéry satelitního vysílání kosmické sondy (Voyager 2 snímky Saturnu, Uranu a Neptuna)

Shannonova věta viděli jsme, že Hammingovy kódy mají sice hustotu rostoucí k 1, ale pravděpodobnost správného dekódování (spolehlivost) klesá k 0 je možné prodlužováním kódu zachovat hustotu a zvyšovat spolehlivost? Shannon (1948): Pro každé p < 1/2 a κ < 1 H(p) existují kódy s hustotou κ a spolehlivostí libovolně blízkou jedné. pro κ > 1 H(p) se naopak spolehlivost dlouhých kódů blíží k 0 důkazy nekonstruktivní, explicitní konstrukce obtížný problém Entropická funkce H(p).

Shannonova věta viděli jsme, že Hammingovy kódy mají sice hustotu rostoucí k 1, ale pravděpodobnost správného dekódování (spolehlivost) klesá k 0 je možné prodlužováním kódu zachovat hustotu a zvyšovat spolehlivost? Shannon (1948): Pro každé p < 1/2 a κ < 1 H(p) existují kódy s hustotou κ a spolehlivostí libovolně blízkou jedné. pro κ > 1 H(p) se naopak spolehlivost dlouhých kódů blíží k 0 důkazy nekonstruktivní, explicitní konstrukce obtížný problém Entropická funkce H(p).

Literatura W. Cary Huffman, V. Pless: Fundamentals of Error-Correcting Codes, Cambridge University Press, 2003. J. H. van Lint: Introduction to Coding Theory, Springer, 1998. M. Malek: Coding Theory, poznámky k přednášce na adrese http://www.mcs.csueastbay.edu/~malek/ Class/Hadamard.pdf Wikipedia, hesla Error detection and correction Forward error correction Hamming code

Děkuji za pozornost.