Az Informatika Elméleti Alapjai

Hasonló dokumentumok
Az Informatika Elméleti Alapjai

Az Informatika Elméleti Alapjai

Informatikai Rendszerek Alapjai

Az Informatika Elméleti Alapjai

Informatikai Rendszerek Alapjai

Zárthelyi dolgozat feladatainak megoldása õsz

Nagy Gábor compalg.inf.elte.hu/ nagy

Nagy Gábor compalg.inf.elte.hu/ nagy

A továbbiakban Y = {0, 1}, azaz minden szóhoz egy bináris sorozatot rendelünk

H=0 H=1. Legyen m pozitív egészre {a 1, a 2,, a m } különböző üzenetek halmaza. Ha az a i üzenetet k i -szer fordul elő az adásban,

Diszkrét matematika 2.C szakirány

Shannon és Huffman kód konstrukció tetszőleges. véges test felett

ű É ő ő ű ő Ü ő ű É ő ő ő ő ő ű ő ő ű É ű ő ű ő ő ű ő ő ő ő É ű ű

Algoritmusok és adatszerkezetek 2.

Az informatika az elektronikus információfeldolgozással, az erre szolgáló rendszerek tervezésével, szervezésével, működésével foglalkozik.

Á Ü É Ü Ú Ü É

Ó Ó ö ú ö ö ö ö ü ú ú ö ö ö ú ú ö ö ö ú ú ú ű ö ö ú ö ü ö ö ö ö ü ú Á ö ü Á ö ö ö ö ö ö

ú Ó ú ú ú ú ú ú ú É Á

Á Ö Ö Ö Ö ú ú Ö Ö Ó Ó ú ú Ü ú Ó Ö Ö Ü Ó Ö Ö Á Ó ú ú ú ű Ö Ö Ö Ö Á Ó Ö Ó ú ú Ö

ű Ú ű ű É Ú ű ű

ó ő ő ó ő ö ő ő ó ó ó ö ő ó ó ó ö ő ó ő ő ö Ö ő ö ó ő ö ő ő ú ö ö ü ö ó ö ö ö ő ö ö Ö ú ü ó ü ő ő ő ő ó ő ü ó ü ö ő ö ó ő ö ő ö ü ö ü ő ö ö ó ö ő ő ö

Á ó ó ó Ü Ü ó ó Ü ó ó ú ú ó ó Ü ó ó ó Ü ó ó

Á Á ő ő Ö ő ő ö É ö ő ö ő ő ö ő ő ö ő ő ü ö

Ó é é Ó Ó ő ű Ó Ö ü Ó é Ó ő Ó Á Ö é Ö Ó Ó é Ó Ó Ó Ó ú Ó Ó Ó Ó ű Ö Ó Ó Ó é Ó Ó ö Ö Ó Ö Ö Ó Ó Ó é ö Ö é é Ü Ó Ö Ó é Ó é ö Ó Ú Ó ő Ö Ó é é Ö ú Ó Ö ö ű ő

ö ö Á Á Ó Á ö ö ö ö ö ú ű ö ö Á Á ű ű ö ö ö ö ű

ü ü Ü ü ü ü ü ü ü ü ü ü ü ü ü ü ü ü ü ü ü É ü ü

Ú ű É ű ű Ü Ü ű ű Ú É ű ű Ü ű ű ű ű ű ű ű Ú ű ű

Á Ó ű ű Á É ű ű ű ű Ú Ú

ű Ö ű Ú ű ű ű Á ű

ű ű ű Ú Ú Á ű Ö ű ű Ú Ő É

ú ö ö ö ö ö ö Á ö ö ö á á á ű Ü ű ö ö Á á Á

ű ő ő ő

ü ú ú ü ú ú ú ú

Á ű ó ó

É É Ö

ö ő ü ö ő ő ü ü ő ő ő ü ö ü ü ő ú ő ő ő ü ő ő ő ő ő ú ő ő ü ő ő ő ü ö ü ú ő ő ő ő ü ü ő ő ú

É Á Á Ö Á

ű ó Ó é é é é ó ő ü é é ü ú é é é é Ú ő ú é é é ú é é é ő Ö é ó é Ö ó é ő é é ü ő é ú é é ő é ü é é é é ó é ü ű é ó é ű é é Ö é ű é ó é é ű é é ó ő é

é ü ó ö é Ö é ü é é ó ö é ü ü é é ó ó ó é Á é é ü ó é ó ó é ö ö ö é é ü é ü é é ö ü ü é ó é é é é é é ö é é é é é é ö é ó ö ü é é é ü é é ó é ü ó ö é

ó Ó ú ó ó ó Á ó ó ó Á ó ó ó ó Á ó ú ó ó ó

Ó Ó ó ö ó

Í Ó É É É É Ó Ó ú ú Ó Ő Í Ó Ö Ó

Az Informatika Elméleti Alapjai

É ú ö ö ü ü ö ö ö ü ö ö ö ü ü ü ü

Az Informatika Elméleti Alapjai

ó ó é é é ó ü é é Í ő ő ó ó é ö é ó é ő ü é é ó í é é é ű ő ő ő é é ő í é í é é é ú é é é ó í é ö é ő ö é é é ö ü í é é ő é é ü é é í Ú ő ó ö é ő ö ö

Á í í í í í í í í í ű í í í í í í í í í í í í í ű í í í í í ű ű É É í ú

Nagy Gábor compalg.inf.elte.hu/ nagy

KÓDOLÁSTECHNIKA PZH december 18.

É ú É ö ö ű ö ö ö ú ú ú ű ű ú ö ű ö ű ű ü ö ö ü ű ö ü ö ö ö ö ú ü ö ö ö ú ö ö ú ö ö ú ü ú ú ú ű ü ö ö ű ú ű ű ü ö ű ö ö ö ű ú ö ö ü ú ü ö ö ö ü ú ö ű

É Ö Á Í Á Ó Ö ü

Hibajavító kódolás (előadásvázlat, november 14.) Maróti Miklós

ú ú ö ö ü ü ü ü ű ü ü

ű ú Í Ó Á ú Ű ű Ő Ö Á ú Ű Ü ú ú Á ú ű

ú ű ú ú ű ú ű ű ú ű ú ű Á ű ű Á ű ű ú ú ú ú ú ú ű ú ú ú ú ú ú ú ú

Ö Ö ű ű ű Ú Ú ű ű ű Ú ű

ő ő ő ő ú É ü ú ú ű ú ű ő ő ő ő Á Á ü ő É É É É É É Á Ú Á Á ő ő ő ő ő É Á Á Á ő ő ő Á ü ő ő ü

Á Á Ö Ö Ü É Ö É É Á Ú É É É É Á Á Ö Ö Ő

Ö Ö Ú Ó Ö ű Ő Ő ű ű Ü Ő Ó Ő

Ó ű ű Á ú ű ű ú ú ú ű ű É ú É Á Á ú ű Ü Á Ü Á ű Ö Ú É Ó É Á Á Á Ű Á úá Á Ö É Ö É Ü

é ú é é é é é é é é é é é é ú é ö é é é ö Ő é é é ú é é é é é é é é ö é é é ö é Ö é é ö é ö é é é ű é ö ö é ö é é ö ö é é ö ö é ö é Ö é ú é é é é é é

Feladat: Indítsd el a Jegyzettömböt (vagy Word programot)! Alt + számok a numerikus billentyűzeten!

ő ö ő ú ő ö ö ő ó ő ö ü ú ö ö ó ő ö ü ó ó ó ó ő ő ő ó ó ú ő ü ő ö ö ó ü ö ö ő ű ö ö ő ú ú ó ö ő ű ö ó

ú ú ü ü Á ú ú ü ű ű ú ü ü ü ü

ó ú ú ü ú ő ó ő ő ó ó ó ö ó ü ő ó ő ö ü ü ó ö ő É ó ö ö ö ó ó ö ü ü ö ü ó ó ő ó ü ó ü ü ö ö É ú ó ó ö ú ö ü ü ó ó ó ü Á ö ö ü ó ö ó ö ö ö ö ó ó ö ó ó

É ö Ű ő ű ő ő ű ű

ö ö ö ö ö ö ö ü ö ü ö ű ö ú ü ű ö ü Í ö ú ü ü ű ö ú ü Á ü

ú Ü Í ú ú ú ú ú ú

ü ö ú ö ú ü ö ü Á Ó ö ö ö ö ú ü ú ü ü ú ú ö ö ü ü ú ü ü ö ö ű ö ü ü ü ü ö ö

Ö ő ü Ö Ö Ő ü ő Ö Ö ü ű Á Í Ö ű ü ő ő ő Ö ü ü ő ő ő Ü ü ő ő ő ü ő ő ü ü

ő ő Ű ü ú ú Ú ü ű ő ő ő ő Á Á Í ü É ő ő ő ő ő É ő ú ú ú ő Á Ö ő

É ő ő ű ú Á ő Á ő ű ő ő ő ő ő ő ő ő ű ú ű ű ő ő ő ű

Ü ü Ü Ö Ó ö ü ö Ó Ú Ó ü Ó ö ö Á ö ö ö ö ü

ö ö ó ú ö ö ú ü ó ö ö Í ö ö ö ü ó ö ö ú ú ö ü ó ü ó ü ö ú ü ó ü ö ó Á Á ö ü ú ó ö ü ü ö ó ü ü Á ü ö ü ö ü ö ö ö ü ö ú ö ö ö ü ú ö ú ö ű ú ú ü ö ó ö ö

Í Ú É ő ő ú ö Ö ú ú ú ö ö ú ö ö ű ö ő ö ö ú ö ő ő ö ö ö ő ő ú ő ú ö ö ö ú ö ö ú ő ö ú ö ű ö ő Ó ő Á ö ő ö ö

É Í ü ú É ü ő ő ő ő ú ő ú ü ü ő ü ú ü ű ú ú ü ü Í ü ű ő ő É ő

ő ő ő ő ő ő ú ő ü Á ü ü ő ő ő ő ő ő ő ő ő ő Ö Ó ő ő ő Ö ő ő ő

é ö é Ö é é ő í ó í é ő ö ú é ó é ő ü ü é ó ö é é ó é é ö é ő í é é ő é é ö é ű ö é í ó é é í ö í ó í ó é é ö ó í ó ó í ó é é ö ő í ó ó í ó ü é í ü

ó ó ö é í ó Ö é é í ó ö é é ü é é ó ó ó é ö é é ú ó é í é é é é í é ő é é ő é é í é í é ó ú ó é ó ü ö Ö é Ő í ő ó é í ó ő í é ö ő é í ó é é ú ó é í é


Ö Ö ö Ó Ó Ó Ó Ü ú ü Ű Ö Ö Ö ö Ü ö Í ü ű

Ü ű ö Á Ü ü ö ö

í ó ő í é ö ő é í ó é é ó é í é é í é í íí é é é í é ö é ő é ó ő ő é ö é Ö ü é ó ö ü ö ö é é é ő í ő í ő ö é ő ú é ö é é é í é é í é é ü é é ö é ó í é

ú ü ü ú Ö ú ü ü ü ü ü ú ü ú ü ű Í ü ü ű ü ű Ó ü Ü ű ú ú Á ü ű ű ü ü Ö ü ű ü Í ü ü

í é ó í ö ö ő é é é é é é í é é é é í ő é é é é é ó í é é é é é é é ö ö é é é é é é é é é ö é é ó é ú é í í í é ö í é í ö é ő ú í ö é ö ú é í ö ő ú é

ű í ú ü ü ü ü ü Ó í ü í í í É Á

ű ű ű ű Ü ű ű ű Ó ű Á ű Á Ö É É É Á É É É É Ü Á Á Á ű

ö ö Ö ó ó ö ó ó ó ü ö í ü ú ó ó í ö ö ö ó ö ü ú ó ü ö ü ö ö Ö ü ö ö Ö ó

Í Í Ó ű Ü Ó Ó Ü ü Ö Í Ü Í Í ú Ö Ó Í ú ú Ö Ó É Í ű ú

ő ö ő ű ó ö ó ű Í Ö Ö Á Í Ó Ö Ü É Ö Ö Ö Á Á Ö É Á Ö

Í Í Í Ü Ó Ó Ö Á Ü Ü Ó Ü Ü Ó Ö Í É Ö

ű ú ú Ö ó Ö ó ó ó Ö ű ó ű ű ü Á ó ó ó ó ü ó ü Ö ó ó ó Ö ű ű ü Ö ű Á ú ú ú ó ű í í Ő ú Á É Ö í ó ü ű í ó ű ó Ö ú Ő ú ó í ú ó

ö ü ü ú ó í ó ü ú ö ó ű ö ó ö í ó ö í ö ű ö ó Ú ú ö ü É ó í ö Ó Á í ó í í Ú ö ú ö ű ü ó

í Ó ó ó í ó ó ó ő í ó ó ó ó

ö Ó ű ö ó í ó ü ö Ó ó í ö ö ó Ö ó ö í ó í ó Á í ó Á Á Ő ú ü ó Í ü ú ü

Ö Ö ú

Í ö ö ű ú ö ö Í ö ü ö ü

Ü


Kvantumcsatorna tulajdonságai

Átírás:

Az Informatika Elméleti Alapjai Dr. Kutor László Az üzenet információ-tartalma és redundanciája Minimális redundanciájú kódok Statisztika alapú tömörítő algoritmusok http://mobil.nik.bmf.hu/tantargyak/iea.html Felhasználónév: iea Jelszó: IEA07 OE NIK Dr. Kutor László IEA 8/1 C. E. Shannon és N.Wiener információ értelmezése Kérdés: Véges számú közleményből véletlenszerűen kiválasztunk ki egyet, és ebből milyen következtetést vonhatunk le az egész közlemény bizonytalanságára? Hány bit szükséges egy üzenet továbbításához?! Legyen: x 1,x 2,x 3,.x i, x n = az egyedi közlemények S = x 1 +x 2 +x 3 + +x i +.. x n (Az összes üzenet) H(S) = a közlemény információ tartalma P{x 1 }, P{x 2 }, P{x 3 }, P{x i }, P{x n } = az üzenetek előfordulási valószínűsége OE NIK Dr. Kutor László IEA 8/2

A Shannon összefüggés magyarázata Ha a kibocsátott üzenetek száma: M, akkor X i előfordulásának száma: g i = M * p(x i ) I M = g 1 *I(x 1 ) + g i *I(x i ) + g n *I(X n ) I(x i ) = az i-ik üzenet információ tartalma = -log 2 p(x i ) I M = - M* p( x i }ó)* log 2 p(x i ) H(S) = - p( x i )* log 2 p(x i )?! OE NIK Dr. Kutor László IEA 8/3 Az információ redundanciája 1. Redundancia köznapi értelmezése: terjengősség A redundancia információ elméleti értelmezése: n H S = - p{ x i }* log 2 p{x i } (Shannon) i=1 n H max = - 1/n * log (1/n)= - log (1/n) = log (n) i=1 (Hartley) H relatív = H S H max = az információ-forrás jósága OE NIK Dr. Kutor László IEA 8/4

Az információ redundanciája 2. H S = a hírforrás információ tartalma (entrópiája) H max = a hírforrás maximális információ tartalma H relatív = H S H max = az információ forrás jósága H R S = 1 - S A hírforrás által közölt információ * 100 H hány százaléka felesleges max Példa: H S = 1.684 H max = 2 Hr = 1.684 = 0.842 2 R S = (1 0.842) * 100 = 15.8 ~ 16% OE NIK Dr. Kutor László IEA 8/5 Példa az írott szöveg redundancájára 1 ( a szöveg minden 3 karakteréből 2 elhagyva) A programozók (minden ellenkező híresztelés ellenére) emberek, akik éjnek éjjelén, teljesen alkalmatlan fejlesztőprogramokkal, hibáktól hemzsegő hardverek egymáshoz nem illeszthető konglomerátumán megkísérlik, hogy a feladatra alkalmatlan megbízóik megrendelésére megbízóik egymásnak ellentmondó kívánságait olyan programokká alakítsák át, amelyeket aztán a végén, senki sem fog használni. OE NIK Dr. Kutor László IEA 8/6

Példa az írott szöveg redundancájára 2 ( a szöveg minden 3 karakteréből 1 elhagyva) A programozók (minden ellenkező híresztelés ellenére) emberek, akik éjnek éjjelén, teljesen alkalmatlan fejlesztőprogramokkal, hibáktól hemzsegő hardverek egymáshoz nem illeszthető konglomerátumán megkísérlik, hogy a feladatra alkalmatlan megbízóik megrendelésére megbízóik egymásnak ellentmondó kívánságait olyan programokká alakítsák át, amelyeket aztán a végén, senki sem fog használni. OE NIK Dr. Kutor László IEA 8/7 Példa az írott szöveg redundancájára 1 ( a szöveg minden karaktere kiírva) A programozók (minden ellenkező híresztelés ellenére) emberek, akik éjnek éjjelén, teljesen alkalmatlan fejlesztőprogramokkal, hibáktól hemzsegő hardverek egymáshoz nem illeszthető konglomerátumán megkísérlik, hogy a feladatra alkalmatlan megbízóik megrendelésére megbízóik egymásnak ellentmondó kívánságait olyan programokká alakítsák át, amelyeket aztán a végén, senki sem fog használni. OE NIK Dr. Kutor László IEA 8/8

A magyar nyelv betűgyakorisága és információ tartalma 10 000 szavas újságszöveg alapján Gyakoriság Információ (% ) tartalom (bit) Fülöp Géza Gyakoriság Információ (% ) tartalom (bit) http://www.mek.oszk.hu/03100/03118/html/#5 Gyakoriság Információ (% ) tartalom (bit) A 9,35 3,43 Á 3,72 4,77 B 1,72 5,87 C 0,60 7,40 D 1,71 5,90 E 9,71 3,37 É 3,87 4,71 F 0,88 6,87 G 3,55 4,83 H 1,23 6,37 I 4,39 4,53 J 1,21 6,39 K 5,35 4,24 L 6,30 4,00 M 3,92 4,69 N 5,47 4,21 O 4,47 4,50 Ö 2,14 5,57 P 1,04 6,61 R 4,22 4,58 S 6,57 3,94 T 7,87 3,68 U 1,29 6,30 Ü 0,93 6,77 V 1,81 5,81 X 0,01 13,33 Y 2,21 5,52 Z 4,46 4,50 I átlag = 4.44 bit OE NIK Dr. Kutor László IEA 8/9 Az angol nyelv betűgyakorisága Betű Betű Információ [bit] gyakoriság A 8,4966% 3,5570 B 2,0720% 5,5928 C 4,5388% 4,4615 D 3,3844% 4,8850 E 11,1607% 3,1635 F 1,8121% 5,7862 G 2,4705% 5,3391 H 3,0034% 5,0573 I 7,5448% 3,7284 J 0,1965% 8,9913 K 1,1016% 6,5043 L 5,4893% 4,1872 M 3,0129% 5,0527 Betű Betű Információ[bit] gyakoriság N 6,6544% 3,9095 O 7,1635% 3,8032 P 3,1671% 4,9807 Q 0,1961% 8,9942 R 7,5809% 3,7215 S 5,7351% 4,1240 T 6,9509% 3,8467 U 3,6308% 4,7836 V 1,0074% 6,6332 W 1,2899% 6,2766 X 0,2902% 8,4287 Y 1,7779% 5,8137 Z 0,2722% 8,5211 I átlag = 4.22 bit OE NIK Dr. Kutor László IEA 8/10

Tömörítő programok hatékonysága A kiinduló fájl típusa:.exe.img.txt A kiinduló fájl mérete: 277 766 168 974 151 579 Huffman 103 408 57 383 42 576 LZW 117 811 55 108 48 322 Aritmetikai 177 042 79 870 101 322 PKZIP 96 525 56 380 39 953 ARJ 92 560 50 236 36 913 Koschek Vilmos OE NIK Dr. Kutor László IEA 8/11 Tömörítő programok tesztje 1. Szövegfájlok méret szerint Kiinduló fájlok mérete: 1.22 MBájt OE NIK Dr. Kutor László IEA 8/12

Tömörítő programok tesztje 2. Szövegfájlok idő szerint Kiinduló fájlok mérete: 1.22 MBájt OE NIK Dr. Kutor László IEA 8/13 Tömörítő programok tesztje 3..doc fájlok méret szerint Kiinduló fájl mérete: 12.34 MBájt OE NIK Dr. Kutor László IEA 8/14

Tömörítő programok tesztje 4..doc fájlok idő szerint Kiinduló fájl mérete: 12.34 MBájt OE NIK Dr. Kutor László IEA 8/15 Tömörítő programok tesztje 2.. exe fájlok méret szerint Kiinduló fájl mérete: 8.47 MBájt OE NIK Dr. Kutor László IEA 8/16

Tömörítő programok tesztje 6.. exe fájlok Kiinduló fájl mérete: 8.47 MBájt OE NIK Dr. Kutor László IEA 8/17 Tömörítő programok tesztje 7. kép fájlok (.png) méret szerint Kiinduló fájl mérete: 70.62 MBájt OE NIK Dr. Kutor László IEA 8/18

Tömörítő programok tesztje 8. kép fájlok (.png) idő szerint Kiinduló fájl mérete: 70.62 MBájt OE NIK Dr. Kutor László IEA 8/19 Tömörítő programok tesztje 9. hang fájlok (.wav) méret szerint Kiinduló fájl mérete: 15.66 MBájt OE NIK Dr. Kutor László IEA 8/20

Tömörítő programok tesztje 10. hang fájlok (.wav) idő szerint Kiinduló fájl mérete: 15.66 MBájt OE NIK Dr. Kutor László IEA 8/21 Tömörítő programok tesztje 11. Tömörítvények (.zip) méret szerint Kiinduló fájl mérete: 6.61 MBájt OE NIK Dr. Kutor László IEA 8/22

Tömörítő programok tesztje 12. Tömörítvények (.zip) idő szerint Kiinduló fájl mérete: 6.61 MBájt OE NIK Dr. Kutor László IEA 8/23 A kódolás folyamata és fogalmai U A A* U* Forrás Kódoló Csatorna Dekódoló Vevő A kódolás céljai: U-nak A-ba történő leképezése minimális redundancia létrehozásával Forrás kódolás U-nak A-ba történő leképezése növelt redundancia létrehozásával Csatorna kódolás U-nak A-ba történő leképezése a kódrendszer titkos megváltoztatásával Titkosító kódolás OE NIK Dr. Kutor László IEA 8/24

A kódolással szemben támasztott követelmények 1. Egyértelmű dekódolhatóság: nem redukálható = irreducibilis kód! Feltétele: hogy egyik kódszó sem lehet a másik kódszó része 2. Forráskódolásnál a minimális szóhossz 3. Csatornakódolásnál a hibák észlelése és javítása 4. Titkosító kódolásnál a megfelelően nehéz dekódolhatóság OE NIK Dr. Kutor László IEA 8/25 Morse kód A.- J.--- B -... K -.- C -.-. L.-.. D -.. M -- E. N -. F..-. O --- G --. P.--. H... Q --.- I.. R.-. (redukálható) S... T - U..- V...- W.-- X -..- Y -.-- Z --.. 0 ----- 1.---- 2..--- 3...-- 4...- 5... 6 -... 7 --... 8 ---.. 9 ----. Fullstop.-.-.- Comma --..-- Query..--.. OE NIK Dr. Kutor László IEA 8/26

Statisztikára épülő adattömörítés Forrás Kódoló Csatorna Dekódoló Vevő Statisztika Statisztika Előnye: biztosítja a minimális átlagos szóhosszat (minimum redundanciát) Hátránya: a statisztikát is továbbítani kell OE NIK Dr. Kutor László IEA 8/27 Minimum redundanciájú kódok 1. Shannon-Fano kód Claude Shannon Bell Lab. ~1950 R.M. Fano M.I.T. Az üzenetek (szimbólumok) előfordulási gyakoriságának (valószínűségének) ismeretében létrehozható olyan kód amely egyértelműen dekódolható változó (szó) hosszúságú a kódszavak hossza a kódolt szimbólumok előfordulási valószínűségétől függ Gyakori szimbólum Ritka szimbólum rövid kód hosszú kód OE NIK Dr. Kutor László IEA 8/28

A Shannon-Fano algoritmus 1. Az üzenetekben előforduló szimbólumok előfordulási gyakoriságának meghatározása 2. A szimbólumok gyakoriság szerinti csökkenő sorrendbe rendezése 3. A lista két részre osztása úgy, hogy a két részben lévő szimbólumok összesített gyakorisága (közel) egyenlő legyen 4. A lista felső részéhez 0 -át, az alsó részéhez 1 -et rendelünk (vagy fordítva) 5. A 3.-ik és 4.-ik eljárást addig ismételjük, amíg a kettéosztott lista mindkét részében csak 1-1 szimbólum található OE NIK Dr. Kutor László IEA 8/29 Példa a Shannon Fano algoritmusra Szimbólumok Előfordulások Információ Bitek száma száma tartalom A 15 1.38 20.68 B 7 2.48 17.35 C 6 2.7 16.2 D 6 2.7 16.2 E 5 2.96 14.82 A (15) B (7) C (6) D (6) E (5) (22) 0 (17) 1 A (15) B (7) C (6) D (6) E (5) 0 1 0 0 1 D (6) E (5) 1 A = 00 B = 01 C = 10 D = 110 E = 111 ASCII 39* 8 = 312 Shannon-Fano 89? OE NIK Dr. Kutor László IEA 8/30

Minimum redundanciájú kódok 2. Huffman kód D.A. Huffmann (1952) 1. Az üzenetekben előforduló szimbólumok előfordulási gyakoriságának meghatározása 2. A szimbólumok gyakoriság szerinti csökkenő sorrendbe rendezése 3. A két legkevésbé gyakori szimbólumot összevonjuk és beírjuk a szimbólumok közé a gyakorisági sorba 4. A 3.-ik pontot addig ismételjük, amíg 2 elemű lesz a lista. Ekkor az egyik elemhez 0 -át a másikhoz 1 -et rendelünk. 5. Visszalépünk az előző összevont szimbólumhoz, és az előbbivel azonos sorrendben a két szimbólumhoz 0 -át és 1 -etrendelünk, mindaddig, míg vissza nem jutunk az egyes szimbólumokhoz OE NIK Dr. Kutor László IEA 8/31 Példa a Huffman algoritmusra Szimbólumok Előfordulások Információ Bitek száma száma tartalom A 15 1.38 20.68 B 7 2.48 17.35 C 6 2.7 16.2 D 6 2.7 16.2 E 5 2.96 14.82 A (15) B (7) C (6) D (6) E (5) A (15) DE (11) B (7) 1 1 C (6) 0 0 A (15) BC(13) 1 DE (11) 0 BCDE(24) A (15) 1 0 A = 0 B = 111 C = 110 D = 101 E = 100 ASCII 39* 8 = 312 Huffmann 87? OE NIK Dr. Kutor László IEA 8/32

1/2 példa a Huffman algoritmusra: Dekódolás Dekódolandó üzenet: 1101001010111101000110 Kódtábla: A = 0 B = 111 C = 110 D = 101 E = 100 C E D A B D AAAC Visszafejtett kód: CEDABDAAAC OE NIK Dr. Kutor László IEA 8/33 A kódolási példa fa szerkezete BCDE 1 0 DE 1 0 BC D 1 0 E B 1 0 C A gyökér A = 0 B = 111 C = 110 D = 101 E = 100 D E B C A levelek OE NIK Dr. Kutor László IEA 8/34

2. példa a Huffman algoritmusra: Kódolandó szöveg: Semmi nem olyan egyszerű, mint amilyennek látszik 1. A karakterek gyakoriságának meghatározása = 2, S=1, e=6, m=5, i=4, _=6, n=5, o=1, l=3, y=3, a=2, g=1, s=2, z=2, r=1, ű=1,,=1, t=2, k=2 =50 2. Gyakoriság szerinti rendezés 3. A kevésbé gyakori karaktereket kettesével összevonjuk és beírjuk a gyakorisági sorba, ami két elemű lesz a lista 4. A lista elemekhez rendre 0-át és 1-et rendelve létrehozzuk, majd kiolvassuk a kódot e(6) (6) m(5) n(5) i(4) l(3) y(3) (2) a(2) s(2) z(2) t(2) k(2) o(1) r(1) ű(1) g(1),(1) OE NIK Dr. Kutor László IEA 8/35 FAX gépek adattömörítése CCITT szerint G1, G2, G3 (G4?) A4-es oldal felbontás átvitel továbbításához (vonal/mm) szükséges idő: vivő G1 6 perc 3.85 analóg (1300.1700 Hz) G2 3 perc 3.85 analóg (2100) G3 40-60 s 3.85(7.7) CCITT (2400 bit/s) A 215 mm hosszú sor 1728 pontból áll Egydimenziós kódolás Kétdimenziós kódolás (15 20 mp) OE NIK Dr. Kutor László IEA 8/36

Minimum redundanciájú kódok 3. Aritmetikai kód (1952) US Pat. #: 4,905,297 Az egész üzenetet egy számmal helyettesítjük Például: BILL GATES 0.2572167752 OE NIK Dr. Kutor László IEA 8/37 Az aritmetikai kódolás algoritmusa 1. Az üzenetekben előforduló szimbólumok előfordulási gyakoriságának meghatározása 2. Minden szimbólumhoz hozzárendelünk egy 0 1 közé eső számtartományt. A számtartomány nagysága arányos a szimbólum relatív gyakoriságával 3. A teljes karaktersorozatot egy számmá alakítjuk. Az átalakítást úgy végezzük, hogy az üzenetben egymás után következő karakterek által kijelölt számtartományt lépésről lépésre beszűkítjük, míg végül egy számhoz jutunk OE NIK Dr. Kutor László IEA 8/38

1. példa az aritmetikai kódolásra Kódolandó szöveg: ALMA Szimbólumok Előfordulások Relatív Számtartomány száma gyakoriság A 2 2/4 0 <=t A < 0.5 L 1 1/4 0.5 <=t L < 0.75 M 1 1/4 0.75<=t M < 1 A L M 0 <= t A < 0. 5 0.25 <= t AL < 0.375 0. <= t ALM < 0.. 0. <= t ALMA < 0.. OE NIK Dr. Kutor László IEA 8/39 2. példa az aritmetikai kódolásra Data Compression book Kódolandó szöveg: BILL_GATES Mark Nelson 1991 Szimbólumok Előfordulások Relatív Számtartomány száma gyakoriság -_ 1 1/10 0.00 <= t _ < 0.10 A 1 1/10 0.10 <= t A < 0.20 B 1 1/10 0.20 <= t B < 0.30 E 1 1/10 0.30 <= t E < 0.40 G 1 1/10 0.40 <= t G < 0.50 I 1 1/10 0.50 <= t I < 0.60 L 2 2/10 0.60 <= t L < 0.80 S 1 1/10 0.80 <= t S < 0.90 T 1 1/10 0.90 <= t T < 1.00 OE NIK Dr. Kutor László IEA 8/40

2/2. példa az aritmetikai kódolásra Kódolt szöveg: BILL_GATES 0.2572167752 Kódtáblázat 0.00 <= < 0.10 0.10 <= A < 0.20 0.20 <= B < 0.30 0.30 <= E < 0.40 0.40 <= G < 0.50 0.50 <= I < 0.60 0.60 <= L < 0.80 0.80 <= S < 0.90 0.90 <= T < 1.00 Számtartomány alsó érték felső érték B 0.2 0.3 I 0.25 0.26 L 0.256 0.258 L 0.2572 0.2576-0.25720 0.25724 G 0.257216 0.2572220 A 0.2572164 0.2572168 T 0.257216772 0.257216776 E 0.257216772 0.257216776 S 0.2572167752 0.2572167756 OE NIK Dr. Kutor László IEA 8/41 2/3. példa az aritmetikai kódolásra: Dekódolás Kiinduló kód: 0.2572167752 Kódtáblázat 0.00 <= < 0.10 0.10 <= A < 0.20 0.20 <= B < 0.30 0.30 <= E < 0.40 0.40 <= G < 0.50 0.50 <= I < 0.60 0.60 <= L < 0.80 0.80 <= S < 0.90 0.90 <= T < 1.00 1. 0.2572167752 B 0.2572167752 a 0.2 (a tartomány alsó értéke) b 0.0572167752 /0.1=0.57216 2. 0.572167752 I tartomány a 0.5 b 0.072167752 /0.1=0.7216. 3. 0.72167752 L a 0.6 b 0.12167752/0.2= 0.6083876 4. 0.6083876 L a 0.6 b 0.0083876/0.2=0.041938 5. 0.041938 _ a 0.0 b 0.041938/0.1=0.41938 6. 0.41938 G... OE NIK Dr. Kutor László IEA 8/42