13.06.2014 Views

Biljeske 04 - Tehnički fakultet u Rijeci

Biljeske 04 - Tehnički fakultet u Rijeci

Biljeske 04 - Tehnički fakultet u Rijeci

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

TEORIJA INFORMACIJE<br />

Željko Jeričević, dr. sc.<br />

Zavod za računarstvo, Tehnički <strong>fakultet</strong> &<br />

Zavod za biologiju i medicinsku genetiku, Medicinski <strong>fakultet</strong><br />

51000 Rijeka, Croatia<br />

Phone: (+385) 51-651 594<br />

E-mail: zeljko.jericevic@riteh.hr<br />

http://www.riteh.uniri.hr/~zeljkoj/Zeljko_Jericevic.html


Information theory<br />

Iz dosadašnjeg gradiva znamo da se informacija prije slanja kroz<br />

kanal treba prirediti. To se postiže pretvorbom informacije u<br />

formu koja ima entropiju blisku maksimalnoj čime se efikasnost<br />

prenosa približava maksimalnoj. Ovo se može postići<br />

kompresijom bez gubitaka informacije (lossless compression),<br />

napr. Huffmanovim kodiranjem.<br />

Druga pretvorba odnosi se na sigurnost prenosa pri čemu se<br />

informacija prevodi u formu gdje je za određeni tip pogrešaka<br />

moguća automatska korekcija (napr. Hamming-ovim<br />

kodiranjem).<br />

10 February 2012 zeljko.jericevic@riteh.hr 2


Information theory history<br />

1950 Richard Wesley Hamming (1915-1998) prvi<br />

specificirao kodiranje koje omogućuje automatsku<br />

korekciju nekih grešaka<br />

10 February 2012 zeljko.jericevic@riteh.hr 3


Information theory<br />

Parity checking<br />

11010110010<br />

Neparni broj grešaka se može ovako detektirati, ali ne i<br />

parni<br />

11110110011<br />

Problemi:<br />

Što ako je greška u parity bit?<br />

Metoda ništa ne govori o lokaciji greške<br />

10 February 2012 zeljko.jericevic@riteh.hr 4


Information theory<br />

Parity checking<br />

Podaci se organiziraju<br />

kao u 2D polju<br />

Na kraju svakog retka je<br />

parity bit za redak, a<br />

zadnji redak sadrži<br />

parity bits za stupce.<br />

Pogreška bi aktivirala<br />

parity bit za red i<br />

stupac. Parity check za<br />

cijelu poruku je u<br />

donjem desnom uglu.<br />

zeljko.jericevic@riteh.hr 5


Information theory<br />

Parity checking<br />

Redundancy R<br />

R =<br />

sveukupni broj bitova<br />

broj bitova u poruci<br />

10 February 2012 zeljko.jericevic@riteh.hr 6


Parity checking<br />

Redundancy R za 2D<br />

polje.<br />

Za koji oblik polja je R<br />

minimalan?<br />

Information theory<br />

R<br />

=<br />

=<br />

sveukupni broj bitova<br />

broj bitova u poruci<br />

mn<br />

( m−1)( n−1)<br />

zeljko.jericevic@riteh.hr 7


Information theory<br />

Hamming-ova ideja<br />

za korekciju jedne pogreške i detekciju dvije pogreške.<br />

Koliko kontrolnih bitova je potrebno za detekciju i<br />

korekciju pogeške?<br />

Podjelimo poruku u subporuke (koje nisu neovisne) i<br />

provedimo kontrolu pariteta za svaku subporuku.<br />

Rezultati kontrole pariteta na subsekvencama daju<br />

takozvani “sindrom”, binarni broj koji daje lokaciju<br />

pogreške. Ako je sindrom 0 (nula) nema pogreške, sve<br />

kontrole pariteta su u redu. Sindrom 00110 znači<br />

pogreška je u 6-tom bitu poruke.


Information theory<br />

Implementacija Hamming-ove ideje:<br />

Ako je n bitova dužina poruke, a m bitova dužina<br />

sindroma onda vrijedi sljedeća nejednakost:<br />

(2 m –1) ≥ (n + m)<br />

Sindrom dužine m može pohraniti (2 m –1) adresa pogreške<br />

(-1 u nejednadžbi je za pohranu vrijednosti 0)<br />

Sljedi:<br />

n ≤ (2 m – m –1)


Information theory<br />

Implementacija Hamming-ove ideje:<br />

Efikasnost 11 = 11/15 = 73.33%<br />

Efikasnost 1013 = 1013/1023 = 99.02%<br />

n m<br />

1 2<br />

2 3<br />

3 3<br />

4 3<br />

5 4<br />

12 5<br />

27 6<br />

58 7<br />

121 8<br />

248 9<br />

503 10<br />

1014 11


Information theory<br />

Implementacija Hamming-ove ideje:<br />

Poruka 11 bitova + 4 kontrolana bita<br />

Pretpostavimo da je krajnja desna<br />

kontrola pariteta 1, znači pogreška je<br />

u jednom od neparnih bitova poruke:<br />

1, 3, 5, 7, 9, 11, 13, 15<br />

1 0001<br />

2 0010<br />

3 0011<br />

4 0100<br />

5 0101<br />

6 0110<br />

7 0111<br />

8 1000<br />

9 1001<br />

10 1010<br />

11 1011<br />

12 1100<br />

13 1101<br />

14 1110<br />

15 1111


Information theory<br />

Implementacija Hamming-ove ideje:<br />

Poruka 11 bitova + 4 kontrolana bita<br />

10111011011 + abcd<br />

Lokacija kontrolnih bitova (a, b, c, d) je proizvoljna ali<br />

kodiranje je jednostavnije s određenim izborima<br />

pozicija (naprimjer 1, 2, 4, 8)<br />

kod a b 1 c 0 1 1 d 1 0 1 1 0 1 1<br />

pozicija<br />

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15


Information theory<br />

Implementacija Hamming-ove ideje:<br />

Poruka 11 bitova + 4 kontrolana bita<br />

10111011011 + abcd<br />

a = paritet neparnih pozicija: 1, 3, 5, 7, 9, 11, 13, 15 =5%2=1<br />

b = paritet pozicija: 2, 3, 6, 7, 10, 11, 14, 15 = 6%2 = 0<br />

c = paritet pozicija: 4, 5, 6, 7, 12, 13, 14, 15 = 5%2 = 1<br />

d = paritet pozicija: 8, 9, 10, 11, 12, 13, 14, 15 = 5%2 = 1<br />

Svaki kontrolni bit se pojavljuje samo u jednom subsetu!<br />

kod a b 1 c 0 1 1 d 1 0 1 1 0 1 1<br />

pozicija 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15


Information theory<br />

Implementacija Hamming-ove ideje:<br />

izvor 1 0 1 1 0 1 1 1 1 0 1 1 0 1 1<br />

odrediste 1 0 1 1 0 1 0 1 1 0 1 1 0 1 1<br />

Na odredištu:<br />

a = paritet neparnih pozicija: 1, 3, 5, 7, 9, 11, 13, 15 =5%2=1<br />

b = paritet pozicija: 2, 3, 6, 7, 10, 11, 14, 15 = 5%2 = 1<br />

c = paritet pozicija: 4, 5, 6, 7, 12, 13, 14, 15 = 5%2 = 1<br />

d = paritet pozicija: 8, 9, 10, 11, 12, 13, 14, 15 = 6%2 = 0<br />

Sindrom dcba je 0111, pogreška je na poziciji 7<br />

% je znak za modulo


Information theory<br />

Implementacija Hamming-ove ideje:<br />

Poruka i kontrole pariteta se jednako tretiraju<br />

Za detekciju dvije pogreške u poruci dodamo ekstra bit za<br />

kontrolu pariteta cijele poruke<br />

Ako je jedna pogreška u poruci paritet cijele poruke ćebiti<br />

pogrešan, za dvije pogreške ćebititočan ali paritet<br />

subporuka nećebititočan


Information theory<br />

Hamming-ovo kodiranje i memorija računala:<br />

Kod paralelnog procesiranja i velikih problema potrebno<br />

je problem segmentirati – raspodjeliti među procesore i<br />

čvrste diskove, a međurezultate treba s vremena na<br />

vrijeme sihnhronizirati.<br />

Haming-ovo kodiranje se koristi za simultano testiranje<br />

diskova: ako se tokom testiranja utvrdi da dva diska<br />

imaju pogreške na istoj lokaciji, onda ih uklanjamo iz<br />

sustava.


Information theory<br />

Koliko daleko ima smisla ići s korekcijama?<br />

Možemo li konstruirati kod koji korigira 1, 2, 3, ...<br />

pogreške, sve do neke po volji malene vjerojatnosti<br />

pogreške?<br />

Zamislimo da šaljemo poruku duljine M c (poruka duljine<br />

M + kontrolni kod). Shannon je definirao odnos između<br />

M i M c ako je vjerojatnost jedne pogreške jednaka q:<br />

M ⎡ 1 1 ⎤<br />

≤ f ( q ) = 1− q log ( 1 q )<br />

⎢ + − log<br />

2 2 ⎥<br />

M q 1 − q<br />

c<br />

⎣<br />


Information theory<br />

Koliko daleko ima smisla ićis<br />

korekcijama?<br />

Ako nema ograničenja<br />

(kapacitet kanala!!) na<br />

duljinu M c , vjerojatnost<br />

pogreške se može učiniti po<br />

volji malena.<br />

Shannon-ov teorem govori da<br />

se to može učiniti, ali ne<br />

govori kako!<br />

Tablica gornje granice<br />

efikasnosti kodiranja <br />

q M / M M / M<br />

0.5 0<br />

1<br />

3<br />

0.082 12.2<br />

0.25 0.19 5.3<br />

0.1 0.53 1.9<br />

0.01 0.919 1.09<br />

0.001 0.988 1.012<br />

c<br />

c<br />


Information theory<br />

Prostorna reprezentacija poruke<br />

Prostor poruke je skup poruka<br />

koje želimo prenjeti – tj<br />

diskretni, multidimenzionalni<br />

prostor čije (sve) točke<br />

predstavljaju poruke.<br />

Naprimjer 3-bitni kod ima<br />

sljedeće prihvatljive poruke:<br />

000, 001, 010, 011, 100, 101, 110,<br />

111


Information theory<br />

Prostorna reprezentacija<br />

poruke<br />

U ovom slučaju prostor<br />

poruke je gusto pakiran:<br />

promjenimo li jedan bit,<br />

dobivamo drugu<br />

prihvatljivu poruku.<br />

m-bitna poruka daje 2 m<br />

dimenzionalni prostor


Information theory<br />

Prostorna reprezentacija poruke<br />

Pogreška u poruci pomiče nasu<br />

neku drugu točku prostora.<br />

Možemo pretpostaviti da što je<br />

više pogrešaka, sve smo “dalje”<br />

u prostoru od izvorne poruke.<br />

Hamming-ova distanca je<br />

udaljenost dvaju točaka<br />

prostora, a predstavlja broj<br />

bitova koji treba promijeniti da<br />

se dođe od jedne do druge točke.


Information theory<br />

Prostorna reprezentacija<br />

poruke<br />

Hamming-ova distanca je od<br />

000 do 111 je 3, od 000 do<br />

010 je 1<br />

Jedna pogreška (e=1) u<br />

poruci odgovara<br />

Hamming-ovoj distanci od<br />

d=1, dvije (e=2) pogreške<br />

distanci od d=2, itd


Prostorna reprezentacija<br />

poruke<br />

Kodirati poruku M unutar<br />

većeporukeM c tako da e<br />

pogrešaka mogu biti<br />

jednoznačno korigirane.<br />

To znači da su prihvatljive<br />

poruke u prostoru M c<br />

međusobno udaljene za ne<br />

manje od:<br />

d = 2e + 1<br />

Information theory


Information theory<br />

Prostorna reprezentacija poruke<br />

Nema prekrivanja među sferama u prostoru M c znači da<br />

možemo korigirati e pogrešaka i detektirati 2e<br />

pogrešaka.


Information theory<br />

Primjer detekcije pogreške – kontrolni bit je desno<br />

M<br />

M c<br />

Poruka:<br />

000, 011, 101, 110<br />

Pogreške:<br />

001, 010, 100, 111


Hvala na pažnji<br />

Željko Jeričević, dr. sc.<br />

Zavod za računarstvo, Tehnički <strong>fakultet</strong> &<br />

Zavod za biologiju i medicinsku genetiku, Medicinski <strong>fakultet</strong><br />

51000 Rijeka, Croatia<br />

Phone: (+385) 51-651 594<br />

E-mail: zeljko.jericevic@riteh.hr<br />

http://www.riteh.uniri.hr/~zeljkoj/Zeljko_Jericevic.html<br />

10 February 2012 zeljko.jericevic@riteh.hr 26

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!