Tartalmi kivonat
FileNév: InfotechnikaÚjJegyzet3.doc - 1/184 - Utoljára módosítva: 2001-11-05 Budapesti M szaki F iskola Kandó Kálmán Villamosmérnöki Kara Számítógéptechnikai Intézet INFORMÁCIÓTECHNIKA I. (Második, módosított változat els" rész – munkapéldány) F iskolai hallgatók számára írta Dr. Tóth Mihály f iskolai tanár Táskaszám: xxx/2002 2002 szeptember FileNév: InfotechnikaÚjJegyzet3.doc - 2/184 - Utoljára módosítva: 2001-11-05 1 1.1 El szó Ez a jegyzet fels"oktatási célra íródott és el"ször részletekben, f"iskolai jegyzetként jelent meg 1999-t"l a Budapesti M9szaki F"iskola Kandó Kálmán Villamosmérnöki Karán, s azon belül is az informatikus valamint a számítástechnika szakos villamosmérnökök számára oktatott Információtechnika c. tárgyhoz és annak az anyagát öleli fel azon a szinten, ahogyan az anyag fejlesztése az anyag szerkesztésének lezárásakor állt. (Az informatika szakos
hallgatóknál a Bevezetés az informatikába c tárgy része.) A tárgy célja az, hogy némi betekintést nyújtson a technikai értelemben vett információ forrásának, kezelésének és továbbításának fogalomkörébe s ezzel alapot adjon mind a hírközléselmélet és technika, mind a jelfeldolgozással és a számítógép hálózatokon való információtovábbítással, adatvédelemmel kapcsolatos további studiumokhoz. Az információtechnika c. tárgy f" fejezeteinek kapcsolódását a következ" blokkvázlat szemlélteti: ILLESZT1 KÓDOLÁS HIBAVÉDELMI KÓDOLÁS INFORMÁCIÓ FORRÁS Csatorna TÖMÖRÍTÉS Tárolás, vagy továbbítás INFORMÁCIÓVÉDELEM ÉS TITKOSÍTÁS Ennek az anyagnak a bevezetést követ" második fejezetében az információ forrásával, annak jellemz"ivel, a forrás és a vev" (az utóbbi a fenti blokkvázlaton nincs feltüntetve), mint egyetlen rendszer kapcsolatának elvi kérdéseivel valamint az u.n
illeszt" kódolással foglalkozunk Az utóbbi egyúttal egyfajta információ-tömörítést is jelent, így ezt a kérdéskört is érintjük. Az információelmélet alapfogalmai (különösen az illeszt" kódolás) nehezen választható el a tömörítési eljárásoktól. Az utóbbiaknak alapjait az információelméleti FileNév: InfotechnikaÚjJegyzet3.doc - 3/184 - Utoljára módosítva: 2001-11-05 bevezet"vel együtt a második fejezetben, részletesebb tárgyalásukat pedig a harmadik fejezetben írtuk le. Mind az „információ” fogalma, mind a „kód” ill. a „kódolás” fogalma olyan, hogy feltételezhet", hogy mindenki tudja, hogy mit értsen alatta. (A gond inkább az, hogy mindenki másképpen tudja, hogy mik ezek a fogalmak.) Az információ fogalma, mint alapfogalom kapcsán hasonló helyzetben vagyunk de itt (t.i a 2 fejezetben) az „információ” mennyiségi jellemz"ivel foglalkozunk és a szemantikai értelmezését
(szinte) teljesen figyelmen kívül hagyjuk. A „kód” és a „kódolás” fogalma nehezebb ügy, mert különböz" szakterületeken különböz" jelentéstartalommal használjuk ezeket a kifejezéseket. Hozzárendelhetünk pl. az ábécé egyes betüihez ill az írásjelekhez vagy a decimális számjegyekhez egyegy bináris1 „kódot” s az éppen aktuális hozzárendelésnek valamilyen nevet vagy sorszámot is adhatunk (pl. ASCII kód, a 852-es kódtáblázat NBCD kód, 3-többletes kód, stb.) Ez a „kódolás” kifejezés egyik szokásos értelmezése A 3. fejezetben az el"bbi bekezdésben említett problémakört követ"en részletesen tárgyalni fogjuk az un. „illeszt" kódolás” problémakörét, amely végeredményben azzal foglalkozik, hogy hogyan lehet valamely (szöveges, képi, hang vagy más –pl. grafikus-) információt a leggazdaságosabban kódolni.2 A negyedik fejezetben foglakozni fogunk az un. „hibavédelmi kódolással”
amely arra szolgál, hogy a tárolás, vagy a továbbítás során esetleg megsérül" információ bizonyos hibáit vagy jelezni, vagy javítani lehessen. Közismert alkalmazás pl a sugárlemezeken (CD-ken) tárolt hang-információ bizonyos hibáinak (pl. karcolás a lemezen) automatikus javíthatósága, vagy az 9rszondák által továbbított jelek hibáinak a javítása. A kódoláshoz kapcsolódik az információ tömörítésének a kérdése is. Ezzel az ötödik fejezetben foglalkozunk. Az „illeszt" kódolás” vagy a hibavédelmi kódolás” jelz"s szerkezetek eléggé egyértelm9en meghatározzák azt a problémakört, amellyel foglalkoznak. Használják azonban a „kódolás” kifejezést akkor is, amikor egy „közérthet"” információhoz valami olyan „kódot” rendelnek hozzá, amit csak a beavatottak érthetnek meg. Ez más szóval az információ titkosítását jelenti. A magyarban használják erre a cselekedetre az egyértelm9
„rejtjelzés” kifejezést is, de mind ehelyett, mind a „rejtjelzett szöveg” kifejezés helyett gyakran használják a „kódolás” ill. „kód” kifejezéseket is, s ezt mi sem tudjuk teljesen elkerülni ebben az anyagban. A titkosítás alapjait, történeti el"zményeit és a „generációit” a hatodik fejezetben tárgyaljuk. A hetedik és a nyolcadik fejezetet a ma használatos, kb az 1970-es évek közepén bevezetett korszer9 titkosítási rendszereknek szenteltük. A hetedik fejezetben az un szimmetrikus kriptorendszereket, a nyolcadikben pedig az aszimmetrikus, vagy –más néven- nyiltkulcsú kriptorendszereket tárgyaljuk. 1 Olyan jelsorozatról van szó, amely csak kétféle jelet (szimbólumot) tartalmaz, amelyeket akár „0”-val és „1”-gyel is jelölhetünk. Az ilyen sorozatokat nevezzük „bináris” kódoknak 2 Itt a gazdaságosság a tárolóhely, vagy az adott információt továbbító un. „csatorna” legjobb kihasználását
jelenti. FileNév: InfotechnikaÚjJegyzet3.doc - 4/184 - Utoljára módosítva: 2001-11-05 Az aszimmetrikus kriptorendszerek alkalmazásai manapság igen nagy fontosságúak, mert mind az üzleti, mind a kereskedelmi és banki alkalmazások, de még a közigazgatás is támaszkodik ezekre az alkalmazásokra, amelyeket e-alkalmazások néven is említhetünk és a kilencedik fejezetben szólunk róluk. A fejezetek közben és azok végén jónéhány kidolgozott példát és egy pár feladatot is talál az olvasó. Ezek az anyag jobb megértését és (ha a könyvet tankönyvként alkalmazzák, akkor ) a számonkérésre való felkészülést kívánják el"segíteni. A szakirodalom jegyzékben csak néhány válogatott forrást soroltunk fel, amelyek közül némelyik igen b" forrás-listát is tartalmaz. A webkiköt"k felsorolásával igyekeztünk igen mértéktartóan bánni, mert azok –természetüknél fogva- aránylag gyorsan és gyakran változnak ezért
el"fordulhat, hogy e könyv megjelenésekor néhány már nem lesz elérhet", néhány újabb webkiköt" meg még nem szerepel a felsorolásban. E sorok írója tudatában van annak, hogy e könyv anyaga rengeteg fogalmat vezet be és próbál meghatározni. Ezek visszakeresését kívánja el"segíteni a b" szószedet a könyv végén. A függelékekr l A „bedolgozókról” FileNév: InfotechnikaÚjJegyzet3.doc - 5/184 - Utoljára módosítva: 2001-11-05 2 Az információelméletet a legtágabb értelemben vett hírközlés általános elméletének részeként dolgozták ki. Az elmélet több kutató nevéhez f9zôdik Az általános elmélet kidolgozójának Norbert Wienert szokták tekinteni, de az elmélet alapjai Boltzmann statisztikus fizikai munkájáig (1894) és Szilárd Leó 1925-ben közzétett, a fizikai információ észlelésével kapcsolatos elméleti munkájáig vezethetôk vissza. Mindezen elôzmények után mindazt, amit ma
információelméletnek nevezünk, Claude Eiwood Shannon-nak [11] egy 1948-ban a Bell Laboratorium (ma: Lucent Technologies) közleményében megjelent munkája indította el. (Az 55 oldalas, kétrészes cikk letölthet" a web-r"l [10] 1998-ban, az alapcikk megjelenésének 50. évfordulója alkalmából világszerte információelméleti konferenciákat is tartottak.) Shannon a második világháború alatt a Bell Laboratoriumban üzenetek kódolásának, titkosításának és megfejtésének a módszereivel foglalkozott és itt írta meg “A hírközlés matematikai elmélete” c. fent említett cikkét3 Wiener korábbi javaslata alapján dolgozta ki Shannon a diszkrét információ u.n entropikus elméletét és vezette be ezzel közvetlen összefüggésben a (zajos) csatornán való információátvitelre vonatkozó tételeit, valamint a kódoláselmélet alapvetô felismeréseit. Az információelméleti entrópiát máig is Shannon-Wiener féle entrópia-fogalomnak
nevezik. Shannon, nagy elôdeitôl némileg eltérôen mérnöki szemlélettel közelítette az információelmélet alapproblémáit (és éppen ezért alkalmazta Hartleynek a szemantikától való elvonatkoztatásról mondott elvét. 3 A Bell Systems Laboratory az már 1920-ban elkezdett foglalkozni a kommunikáció elméletének kidolgozásával. El5ször a szabályozástechnikából ismert nev6 Harry Nyquist foglalkozott az „intelligencia” átviteli sebességének technikai kérdésével (1920). 9 kezdte el „információnak” nevezni azt, amit továbbítottak, ezért ma többször hivatkoznak arra, hogy az információelmélet tulajdonképpen Nyquisttal kezd5dött. 9t követte RVLHartley, aki kiterjesztette Nyquist „információ” fogalmát (1924) s tulajdonképpen 5 volt, aki hangsúlyozta, hogy ahhoz, hogy mértéket lehessen hozzérendelni ehhez a fogalomhoz, el kell tekinteni annak szemantikai tartalmától. T5le származik az a koncepció is, hogy az információ,
mint olyan egy véges üzenethalmazból való választást jelent, de sohasem dolgozta ki, hogy pontosan mit ért az általa bevezetett fogalmak alatt. Nyquist volt az, aki a logaritmusos mértéket el5ször javasolta, de az egész elméletet végül is Shannon „tette rendbe” a már hivatkozott alapcikkében (1948). FileNév: InfotechnikaÚjJegyzet3.doc - 6/184 - Utoljára módosítva: 2001-11-05 Jóllehet a legáltalánosabb értelemben vett információközlés (vagy kommunikáció) nemcsak az embertôl emberig valamilyen módon eljuttatott információra, hanem eszköz és ember (pl. egy m9szer által az emberrel közölt információ), vagy eszköz és eszköz közötti információközlésre is kiterjed, mi az alábbiakban nem általánosítunk ennyire. Sôt, még annyira sem, hogy a beszéden ill az írott szöveges –esetleg kódolt- és numerikus információn kívül másfajta (pl. zenei vagy képi) információra is kiterjesszük vizsgálatainkat. Ezek a
megszorítások azonban nem érintik a bemutatni kívánt alapvetô tételek általánosságát. Mindössze arról van szó, hogy így egyszer9bb példákon keresztül, induktív módon, racionális okoskodással lehet az információelmélet alapfogalmait bemutatni. Ez a megközelítés persze matematikailag nem feltétlenül precíz, de úgy gondoljuk, hogy az érthetôséget szolgálja. 2.1 Az információ fogalma a hírközléstechnikában Vannak olyan általános fogalmak, amelyekr"l „mindenki” tudja, hogy mit kell alattuk érteni. Ilyen pl az „információ” fogalma is A gond az hogy az ennyire általános fogalmakat igen nehéz jól definiálni, s ahány tudományterület, annyiféle értelmezése van. Az 12)A függelékben csatoltunk egy ilyen értelmezési táblázatot Hétköznapi értelemben az információhoz mindíg valamilyen jelentéstartalmat rendelünk hozzá, azaz az információnak szemantikai tartalma van. Hangsúlyozni kell, hogy a
hírközléstechnikában nem errôl az információfogalomról van szó.4 Mint Shannon kijelentette: “A hírközlés szemantikai vonatkozásai m9szaki szempontból teljesen közömbösek.” ( [2] p19) Warren Weaver a következôképp magyarázza ezt: “A hírközlés m9szaki elmélete pontosan olyan, mint egy nagyon illedelmes, diszkrét postáskisasszony, aki a táviratunkat a postán felveszi. Azaz nem szentel figyelmet a jelentésnek, azonban felkészültnek kell lennie, hogy minden, az asztalához érkezô üzenetet kezelni tudjon” ( [2] p.40) A fogalmak keveredésének elkerülése végett a továbbiakban a jelentéstartalommal rendelkezô, “hétköznapi értelemben vett” információt hírnek nevezzük, az információ megnevezést pedig a hírközléstechnikában használt információfogalomra alkalmazzuk. Az utóbbit technikai rendszerekben mindíg valamilyen fizikai dolog hordozza A hírközléstechnikának az a dolga, hogy közvetítse azt a hírt, azaz azt a
hétköznapi értelemben vett információt, amelynek a továbbítását elvárják tôle. Nem egyszer a hír küldôje valamilyen módszerrel el is rejti az információt vagy annak a jelentését, de a hírközlési rendszernek ettôl függetlenül minél pontosabban továbbítania kell az üzenetet. 4 Lényegében ez a tartalomtól való elvonatkoztatás teszi lehet5vé, hogy az információ mennyiségi mértékére valamilyen objektív vonatkoztatási alapot használjunk. Manapság több törekvés is van arra, hogy az információ jelentéstartalmához is hozzárendeljenek valamilyen mértéket, de valamennyi javaslat közös problémája, hogy a jelentéstartalom nagyon szubjektív dolog, s ezért mindeddig nem sikerült hozzá jól definiált vonatkoztatási alapot találni. E hozzárendelési kisérletekr5l némi fogalmat ad az A. függelék FileNév: InfotechnikaÚjJegyzet3.doc - 7/184 - Utoljára módosítva: 2001-11-05 A hírközlô rendszer számára tehát az
információ megjelenési formája a fontos, a tartalma, jelentése viszont nem.5 5 Ez persze csak elsô közelítésben igaz. Az üzenetnek ugyanis majdnem minden esetben valamilyen statisztikai szerkezete is van, ami a jelentéstartalommal is összefügghet, s ez a szerkezet bizony már érdekes a hírközlés számára is. Errôl késôbb még lesz szó Már itt megjegyezzük, hogy az un. rejtjelzett üzenetek megfejtésének legfontosabb támpontja éppen az itt említett statisztikai szerkezet, mint pl. a betügyakoriság egy szövegben FileNév: InfotechnikaÚjJegyzet3.doc - 8/184 - Utoljára módosítva: 2001-11-05 Álljunk meg egy szóra Az információ, mint olyan fogalmának pontosítása kedvéért. Bármit is értsünk információ alatt, annak a keletkezési helyét az információ forrásának, azaz információforrásnak nevezzük. Ha természetes forrásról van szó, akkor annak a vizsgálatára valamilyen matematikai modellt alkotunk Többféle modell
ismeretes Mi itt a továbbiakban az egyik legegyszerübb modellt, az un diszkrét valószín ségi modellt alkalmazzuk Modellünkr"l feltételezzük, hogy abban diszkrét, egymástól ekülönül" id"pillanatokban egyegy esemény történik, méghozzá végesszámú lehetséges esemény valamelyike. Az esemény megtörténtét az jelzi, hogy annak a hatására egy-egy szimbólumot (vagy betüt) produkál az információforrás Végeredményben tehát egy n elem9, véges ábécé valamelyik betüjét és a forrás kimenete végül is egy betüsorozat. Ez eddig kb. megfelel annak, ahogyan egy szöveges információ általában keletkezik A diszkrét valószín9ségi modellünk esetében azonban azt is feltételezzük, hogy a forrás egymást követ" eseményei egymástól független események s ez a szöveggel leírt információk esetében egyáltalán nem így van, mert egy érthet" szöveg semmi esetre sem véletlenszerüen el"állított betük és
írásjelek sorozata. E tekintetben tehát a diszkrét valószín9ségi modell messze áll a szemantikai tartalommal rendelkez" írott információtól. Mégis kíválóan megfelel arra, hogy a segítségével a diszkrét információ mennyiségi mértékének a fogalmát bevezessük. Jegyezzük meg tehát, hogy - a következ"kben tárgyalt információ-fogalmak alapja egy matematikai modell. Itt és most az a diszkrét valószín9ségi modell, amelyet leírtunk. Ezt a modellt aztán a továbbiakban finomítani fogjuk. - A (diszkrét) információ mennyiségi mértékének a meghatározásakor a forrás egyes eseményeit egymástól független eseményeknek tekintjük. Erre azért van szükség, mert az egyes eseményekhez véges valószín9ségeket rendelünk hozzá és az egymást követ" (független!) eseményekre alkalmazzuk majd a valószín9ségek szorzási szabályát (Bayes tétele), amely csakis független eseményekre igaz. - E közelít" modell
alkalmazásának az az ára, hogy a forrás által el"állított betüsorozat szemantikai tartalmát e modellel nem vizsgálhatjuk. - A közelítés további ára az, hogy –mint látni fogjuk- egy természetes nyelv kötöttségei (mint pl. az, hogy nem torlódhat egymás után akármennyi mássalhangzó), más szóval a szöveg statisztikai szerkezete bizony er"sen befolyásolja annak a tényleges információtartalmát, amit az els" közelítésben használt diszkrét valószín9ségi modell nem vesz figyelembe, nem tud kezelni. Van olyan nézet is, amely szerint egy valóságos forrás átlagos információmennyisége nem is ismerhet" meg, s a viselkedését leíró modell csak egy becslést ad a tényleges információmennyiségre. FileNév: InfotechnikaÚjJegyzet3.doc - 9/184 - 2.3 Utoljára módosítva: 2001-11-05 A folytonos és a diszkrét információ Valamilyen fizikai folyamatról, jelenségrôl, állapotról méréssel szerzett információ
alapvetôen kétféle lehet: folytonos (analóg), vagy számjegyes (digitális). Az “igazán” folytonos jel mind idôben, mind nagyságának eloszlásában (amplitúdójában) folytonos, azaz egy meghatározott tartományban bármilyen értéket felvehet. A gyakorlatban az idôbeli folytonossággal kapcsolatban korlátozást jelent, hogy a jel változási (vagy észlelési) sebessége mindíg korlátozott. Ismeretes, hogy az emberi fül pl. a 16 Hz-tôl 16 kHz-ig terjedô frekvenciatartományba esô hangokat képes érzékelni, de ehhez hasonló korlátozás érvényes bármilyen érzékelô m9szerünkre is Az ilyen korlátozott frekvenciatartományú jelek az általuk hordozott információ teljes megôrzésével idôben diszkrét jelekké alakíthatók. C E Shannon erre vonatkozóan állította fel az u.n mintavételi törvényét, de ezzel itt részleteiben nem foglalkozunk A Shannon-féle mintavételi törvény egyik lényeges megállapítása az, hogy ha egy folytonos jel
frekvenciaspektruma felülr"l határos, azaz egy fmax frekvenciánál magasabb frekvenciájú komponenseket már nem tartalmaz, akkor egy fs >2 fmax frekvenciájú. id"ben diszkrét mintasorozatból az eredeti, folytonos jel maradéktalanul visszaállítható, tehát a mintasorozat tartalmaz minden információt, ami a mintavételezés el"tti jelben megvolt. A mondott idôbeli átalakítás után a jelek amplitúdóeloszlása még mindíg folytonos, de a gyakorlatban mindíg véges érzékelési pontosság miatt az u.n kvantálási eljárással az amplitúdóeloszlás is diszkrétté tehetô Pontosan ilyen, kétlépcsôs analóg/digitális átalakítást végeznek el hangfelvételeken mielôtt CD-re rögzítik a hangfelvétel által hordozott információt. Lejátszáskor azután a fordított átalakítás történik meg. Mint tudjuk, a CD lejátszó jó hangtechnikai berendezéssel igen jó minôség9 hangot produkál, s ez nem lenne így, ha az eredeti
hanginformációból sok elveszne az átalakítások során A modern kommunikációs technológiára hivatkozva nagyon sok példát lehetne felsorolni arra, hogy mennyire sikeres a digitális technika és, hogy miért az. E felsorolástól eltekintve a továbbiakban figyelmünket a diszkrét információkra fordítjuk. 2.4 A diszkrét információ, mint választási lehetôség Vizsgáljunk meg egy olyan példát, amelyben latin betükkel írott szöveges információt közöl az információ forrása. Ebben az esetben az un jelkészlet az ábécé kis- és nagy betüibôl, számokból, írásjelekbôl, szóközbôl, az üzenet elejét és végét, valamint a lapdobást jelzô jelekbôl és hasonlókból áll. Mindezeket gy9jtônéven a forrás szimbólumkészletének, jelkészletének vagy ábécéjének nevezzük. Ez a szimbólumkészlet végesszámú elemet tartalmazó halmaz Egészen biztosan vannak benne elemek, tahát nem üres halmaz, azaz a forrás szimbólumkészlete véges,
nem üres halmaz, és egy szimbólum közlése felfogható úgy is, hogy ebbôl a halmazból kiválasztunk egy elemet, s azt továbbítjuk, mint információt. FileNév: InfotechnikaÚjJegyzet3.doc - 10/184 - Utoljára módosítva: 2001-11-05 Az ilyen véges szimbólumkészlettel rendelkezô információforrást diszkrét forrásnak nevezik. Ez a fajta felfogás (pontosabban az erre bevezetett diszkrét valószín9ségi modell – ehhel ld. az E Függeléket is) alkalmas arra, hogy segítségével mennyiségi mérôszámot rendeljünk az információhoz Mielôtt ezt megtennénk, vizsgáljunk meg még két példát: Milyen szimbólumkészletbôl választják ki az ötös lottó elsô nyerôszámát és hány elem9 ez a szimbólumkészlet? A válasz: Az 1-tôl 90-ig terjedô természetes számok készletébôl, tehát a szimbólumkészlet 90 elembôl áll. (Gondoljunk arra, hogy valóban 90 db számozott golyó halmazából választanak) Hányféle mérési eredmény olvasható le
arról a m9szerrôl, amelynek a kijelzôje 3 decimális számjegyet képes megjeleníteni? (És hányféle akkor, ha az elôjelet is képes kijelezni?) 2.5 A szimbólumkészlethez rendelt valószín ségi modell Az elôzô pontban említett, szöveges információt közlô forrást vizsgálva ha az pl. magyar szavakat közöl betürôl betüre, akkor eléggé nyilvánvaló, hogy a különbözô betük elôfordulási valószín9sége is különbözô A magyar nyelvben (és történetesen az angolban is) pl. az e betü fordul elô leggyakrabban (Ld az E Függeléket az írott magyar nyelv betügyakoriságairól.) A magánhangzók elôfordulási gyakorisága általában nagyobb, mint a mássalhangzóké. Sok szöveget megvizsgálva minden betühöz hozzárendelhetô egy-egy valószín9ség s ezek a valószín9ségek többnyire különbözôek Általánosítva az elmondottakat: Adjon hírt egy véges, diszkrét E eseményrendszer, azaz E1; E2; E3; Ek; En; eseményeinek
bekövetkeztér"l egy n elem9 véges szimbólumkészlet x1; x2; x3; xk; xn; amelynek minden egyes xk valószín9ség: eleméhez meghatározható egy-egy pk el"fordulási p1; p2; p3; pk; pn; úgy, hogy ezek egyike sem nulla, azaz pk > 0 minden egyes pk–ra, azaz nem lehet zérus valószín9ség9 esemény. és n k =1 pk = 1 ; FileNév: InfotechnikaÚjJegyzet3.doc - 11/184 - Utoljára módosítva: 2001-11-05 ami azt jelenti, hogy egészen biztos (biztos esemény), hogy amikor egy szimbólumot választani kell, akkor azt az adott szimbólumkészlet elemei közül választjuk ki. A pk = 1 valószín9ség9 esemény elvileg megengedett, de akkor –a fenti szumma miatt- e biztos eseményen kívül nem is fordulhat el" más esemény a rendszerben. Mivel bennünket az olyan információforrások érdekelnek, amelyek nem csak egyetlen egy hírt képesek generálni, ezért ezzel az esettel sem kell számolnunk. Az ilyen tulajdonságokkal rendelkezô
eseményrendszert határoz meg. valószín9ségi modell u.n teljes A véges szimbólumkészlet elemeihez rendelt valószín9ségek halmaza egyébként diszkrét valószín ségi modell. (Nem kell magyarázni, hogy miért) A diszkrét forráshoz tehát diszkrét valószín9ségi modell tartozik. Mind az E = {E1; E2; E3; Ek; En } eseményrendszer, mind az X = {x1; x2; x3; xk; xn } véges szimbólumkészlet, mind pedig a P = {p1; p2; p3; pk; pn } diszkrét valószín9ségi modell egy-egy halmazként értelmezhet" és a továbbiakban szemléletes lesz ezeket a halmazokat Venn diagramjaikkal ábrázolni: (Itt, és a továbbiakban a halmazok szokásos “krumplidiagramjai” helyett többnyire egy négyszög egyes szeletei ábrázolják a halmaz elemeit.) FileNév: InfotechnikaÚjJegyzet3.doc - 12/184 - Utoljára módosítva: 2001-11-05 Esemény - halmaz Szimbólum készlet Valószín9ségek E X P E1 x1 p1 E2 x2 p2 Ek xk pk En xn pn Természetesen
létezik leképezés az E eseményhalmaz és a P valószín9ségi modell között is, de ezt az ábrán nem jelöltük.6 Megjegyzés: Tekintettel arra, hogy több eseményhez is tartozhat ugyanolyan érték9 valószín9ség, ezért a szimbólumkészlet és a valószín9ségek halmaza (amit valószín9ségi térnek is neveznek) között egyértelm9 ugyan, de nem kölcsönösen egyértelm9 a leképezés. Ugyanez elmondható az eseménytér és a valószín9ségek halmaza közötti leképezésre is. 2.6 Az információ mértéke Említettük, hogy diszkrét forrás esetén egy-egy szimbólum által hordozott információ mennyisége valamilyen módon függ az adott szimbólum kiválasztásának valószín9ségétôl. ahol I k = f ( pk ) Ik a k-adik szimbólum által hordozott egyedi információ mértéke. Úgy is fogalmazhatjuk, hogy a k-adik (Ek) esemény bekövetkezésér"l szóló hír információtartalma. 6 Könnyen belátható, hogy ez a leképezés általános esetben
nem kölcsönösen egyértelm6, mert egynél több forrás-eseménynek is lehet ugyanolyan valószín6sége, tehát a valószín6ségek általában nem határozzák meg egyértelm6en a forrás-eseményt. FileNév: InfotechnikaÚjJegyzet3.doc - 13/184 - Utoljára módosítva: 2001-11-05 Spekulatív úton arra következtethetünk, hogy minél meglepôbb egy esemény, annál értékesebb az arról szóló hír. Ezt úgy is fogalmazhatjuk, hogy minél kisebb egy esemény bekövetkezési valószín9sége, annál nagyobb az arról szóló hír információtartalma. Vagyis az információtartalomnak nagyobbnak kell lennie, ha az esemény valószín9sége kisebb, és kisebb kell, hogy legyen az esemény hírértéke, ha a bekövetkezésének nagy a valószín9sége. Ezt minden ujságszerkesztô és minden szabadúszó újságíró tudja. Egy hír információtartalma tehát annak az eseménynek a bekövetkezési valószín&sége reciprokától függ, amely eseményrôl az adott hír
tudósít. Ez a megállapítás jól használható az (egyelôre még) ismeretlen f függvény meghatározásához, de még nem elegendô. Vizsgáljunk meg most egy olyan esetet, amelyben egy összetett esemény egymástól független rész-eseményekre bontható. Tegyük fel, hogy egy tetôcserép gyár úgy szerkeszti meg a katalógusát, hogy mindegyik cseréptipust külön-külön tünteti fel és mindegyik cseréptipusból ugyanolyan színválasztékot gyárt s a kapható színeket egy külön katalógusban sorolja fel. Valahogyan a következôképp: Tipusválaszték Színválaszték Sztenderd pT1 natúr pSz1 Hódfarkú pT2 piros pSz2 Alpesi pT3 barna pSz3 Kolostor pT4 szürke pSz4 A táblázatokba mindjárt beírtuk az egyes tipusok választásának pTi és az egyes színek választásának pSzj valószín9ségeit (amelyeket egy adott idôszak vásárlási szokásainak figyelésével pl. a gyártó marketing részlege határozott meg) Így egy adott tipus
(nevezetesen az i-edik) kiválasztásáról szóló hír információtartalma: 1 I Ti = f pTi Hasonlóan a j-edik szín kiválasztásáról szóló hír információtartalma: I Sz j = f 1 pSz j FileNév: InfotechnikaÚjJegyzet3.doc - 14/184 - Utoljára módosítva: 2001-11-05 Az a logikus, ha a tipus és a szín együttes kiválasztásának információtartalma a fenti két egyedi információ-mennyiség összege, azaz I együttes = ITi + I Sz j = = f 1 1 + f pTi pSz j Olyan katalógust is szerkeszthet azonban a gyártó, amelyben mindegyik tipusnál fel van sorolva valamennyi szín: Tipus Sztenderd Hódfarkú Alpesi Kolostor Szín Natúr pT1Sz1 Piros pT1Sz2 Barna pT1Sz3 Szürke pT1Sz4 Natúr pT2Sz1 Piros pT2Sz2 Barna pT2Sz3 Szürke pT2Sz4 Natúr pT3Sz1 Piros pT3Sz2 Barna pT3Sz3 Szürke pT3Sz4 Natúr pT4Sz1 Piros pT4Sz2 Barna pT4Sz3 Szürke pT4Sz4 Ebbôl az egyesített katalógusból választva az i-edik tipus és a j-edik szín együttes
kiválasztásának valószín9sége mert a valószín9ségek szorzási szabályát kell alkalmaznunk, ha a tipus és a szín pTi Sz j = pTi pSz j kiválasztásának eseményei egymástól függetlenek. FileNév: InfotechnikaÚjJegyzet3.doc - 15/184 - Utoljára módosítva: 2001-11-05 Így ennek a választásnak az egyedi információtartalma I Ti Sz j 1 = f pTi 1 p Sz j Logikus, hogy ennek az információtartalomnak ugyanannyinak kell lennie, mint az elôbb meghatározott információmennyiség, amibôl következik, hogy I együttes = f 1 1 1 1 = f +f pTi p Sz j pTi p Sz j Emlékeztetünk arra, hogy -heurisztikus módon- úgy jutottunk a leírt eredményekhez, hogy azt mondtuk, hogy 1. legyen egy hír információtartalma valamilyen -monoton- függvénye egy hír (pontosabban egy esemény) bekövetkezési valószín9sége reciprokának (a valószín9ség folytonos függvénye), és hogy 2. az együttes bekövetkezésr"l szóló hír információtartalma legyen az
egymástól független hírek információtartalmának összege (additivitás). Kérdés, hogy milyen függvény elégíti ki a fenti függvény-egyenletet. Több ilyen függvény is van, de a leginkább kézenfekvô megoldás a logaritmusfüggvény alkalmazása. Így – az indexeket is kissé egyszerüsítve – a következô összefüggést kapjuk: log a ( pi p j ) = log a pi + log a p j Nyitott kérdés még a logaritmus alapszáma, de a függvény-egyenletre sikerült megoldást találni. Persze a leírt példa nélkül is rájöhettünk volna, hogy független eseményekre a valószín9ségek szorzási szabálya érvényes, a valószín9ségek függvényeként meghatározott információtartalmakat pedig össze kell adni. Eléggé nyilvánvaló, hogy ezt a két m9veletet a logaritmusfüggvény kapcsolhatja össze. Mindenesetre emlékezzünk arra, hogy spekulatív (heurisztikus) úton jutottunk el ide abból kiindulva, hogy közönséges értelemben mit is tekintünk egy hír
mennyiségi értékének (t.i a valószín9sége reciprokától függ" valamit) és hogy hogyan is kellene “viselkednie” egy ilyen függvénynek, nevezetesen: az együttes hír információtartalmát lehessen kiszámítani az egyedi hírek összegzésével. Ténykérdés, hogy az információelmélet nagynev9 tudósai is úgy jutottak el az informácó fogalmához, hogy egy axiómarendszerben összefoglalták, hogy milyennek is kellene lennie az információmennyiséget meghatározó függvénynek, s olyan függvényeket kerestek, amelyek eleget tesznek egy ilyen axiómarendszernek. (Err"l kés"bb, az entrópiafüggvény kapcsán még említést teszünk.) FileNév: InfotechnikaÚjJegyzet3.doc - 16/184 - Utoljára módosítva: 2001-11-05 (Talán szükségtelen is megemlíteni, hogy e nagynev9 tudósok nem a tet"cserépmarketinggel foglalkoztak.) A fentieket figyelembe véve tehát diszkrét forrás esetén egy pk valószín9ség9 forrásszimbólum
kiválasztásának egyedi információtartalma7: I k = log a pk Néhány megjegyzést kell hozzáf9zni ehhez az összefüggéshez: A negatív elôjel azért szükséges, mert a valószín9ségek mind 1-nél kisebb számok, amelyek logaritmusa negatív szám. Éppen az összefüggésben szereplô mínusz jel miatt lesz az egyedi információ értéke mindíg pozitív. A logaritmusfüggvény folytonos és monoton függvénye az argumentumának. Így az információ mennyisége is folytonos függvénye az esemény valószín9ségének. Minél kisebb az esemény valószín9sége, annál nagyobb a hozzárendelhet" információ mértéke. Nulla valószín9ség9 esemény – többek között – azért sem fordulhat elô a diszkrét forráshoz rendelt valószín9ségi szkémában, mert a zérus logaritmusa nem értelmezhetô. Mivel a biztos esemény valószín9sége 1, és 1 akármilyen alapú logaritmusa 0, ezért a biztos esemény információtartalma nulla. Ez egybevág azzal a
korábbi megfontolásunkkal, hogy egy esemény hírértéke annál kisebb, minél biztosabb annak a bekövetkezése, és fordítva. Mint a következ"kben látni fogjuk, nagyon kézenfekv" választás, hogy egységnyinek tekintjük azt a hírt, amely két, egyenl"en valószín9 esemény közti választásról (alternatíváról) értesít bennünket. Foglalkozzunk most a fenti összefüggésben szereplô logaritmus alapszámmegválasztásának kérdésével! Ettôl mindössze az információ mennyiségének mérôszáma függ. 7 Van olyan szakirodalom, amely ezt a mennyiséget „öninformációnak” (self-information) nevezi. FileNév: InfotechnikaÚjJegyzet3.doc - 17/184 27 Utoljára módosítva: 2001-11-05 Az információ mennyiségi mérôszáma és egységei Az információ mennyiségi egységének számértéke attól függ, hogy milyen alapszámú logaritmussal számolunk. 10-es alapszám esetén: log 10 log 2-es alapszám esetén: 2 pk az
egység: pk az egység: hartley bit a természetes logaritmus alapszáma (e) esetén: ln pk az egység: nat Mivel a ugyanannak a számnak a különböz" alapú logaritmusai csak egy-egy szorzófaktorban különböznek, azért a fenti egységek között az alábbi váltószámok érvényesek: bit nat Hartley 1 bit = 1 0,693 0,301 1 nat = 1,443 1 0,434 1 Hartley= 3,322 2,302 1 (Tehát 1 bit = 0,301 Hartley és így tovább.) Gyakorlatilag az esetek túlnyomó többségéban a bit egységet használjuk, amelynek nagyon kézenfekv" jelentése is van: 1 bit információt hordoz egy elemi döntés (fej vagy írás, alternatíva), azaz két, 5050%-os valószín9ség9 esemény bekövetkezésér"l szóló hír. Ha egy bináris pozicióban (vagy helyértéken) két szimbólumnak (0 vagy 1; H vagy L; stb) azonos az el"fordulási valószín9sége, akkor akkor az a hír, hogy a két lehet"ség közül végül is melyik következett be, nos az a hír
éppen 1 bit információt hordoz. Tehát a bit, mint bináris számjegy információtartalma éppen 1 bit. (Szerencsére, különben nehezen lehetne megmagyarázni, hogy „ez a bit nem az a bit””) FileNév: InfotechnikaÚjJegyzet3.doc - 18/184 - Utoljára módosítva: 2001-11-05 Megjegyezzük, hogy ha egy logikai áramkörnek u.n three state, azaz háromállapotú kimenete van, akkor is 1 bit az információtartalma annak a hírnek, hogy a két meghatározott (magas vagy alacsony) logikai szint közül melyik következett be. A harmadik „lebeg"” logikai állapot ilyenkor azt jelenti, hogy nem történt logikai információt hordozó esemény. Ezért lehetséges az ilyen áramköröket a kétállapotú Boole algebrai modellekkel kezelni. Más a helyzet akkor, ha egy kétkarú mérleggel összehasonlító mérést végzünk. Ennek a mérésnek ugyanis háromféle eredménye lehet: Vagy a baloldali serpeny"be helyezett tömeg a nehezebb, Vagy a jobboldali
serpeny"be helyezett tömeg a nehezebb, Vagy egyforma a két tömeg. Ha egy adott esetben mindhárom mérési eredmény azonos valószín9séggel fordulhat el", akkor egy ilyen mérés eredményér"l szóló hír információtartalma: I= 2.8 log 2 3 = 0,477 hartley = 1,585 bit Az információelméleti entrópia Bármilyen gyakorlati hírközlési feladat esetén egyedí hírek egymásutáni, folyamatos, szekvenciális közlésér"l van szó. E folyamat id"beliségével majd csak kés"bb foglalkozunk. Eléggé kézenfekv" az is, hogy az ilyen hírközlés, mint folyamat szempontjából az egyes hírek információtartalma helyett magára a folyamatra inkább jellemz" a folyamat egyes híreinek átlagos információtartalma. Ezt úgy számíthatjuk ki, hogy képezzük az egyes hírek el"fordulási valószín9ségével súlyozott egyedi információinak összegét. Egy jelforrás n elem9 X szimbólumkészlete összes szimbólumának
átlagos információtartalma tehát: H (X ) = n i =1 pi log pi Ezt a mennyiséget információelméleti entrópiának8 nevezik. Az adott esetben ez a jelforráshoz tartozó u.n forrás-entrópia (V.ö azzal, amit korábban a diszkrét valószín9ségi modellr"l, mint a forrás egy egyszerü közelítésér"l mondtunk. Van szakirodalom, amely a fenti menynyiség, mint becslés jellegét hangsúlyozandó ezt az entrópia els" becslésének tekinti.) 8 Ez a Shannon és Wiener által bevezetett fogalom az információelmélet legfontosabb alapfogalma. Látni fogjuk, hogy összetett valószín6ségi modellek esetén az entrópia-fogalom általánosítható s többféle (információelméleti) entrópia is létezik, de mindegyik általánosításnak ez az alapja. FileNév: InfotechnikaÚjJegyzet3.doc - 19/184 - Utoljára módosítva: 2001-11-05 Mivel definiciója szerint az adott szimbólumkészlet egyes elemei átlagos információmennyiségét jelenti ezért
egysége a bit/szimbólum, bit/jel, bit/betü, stb aszerint, hogy szimbólumkészletre, jelkészletre, vagy a forrás ábécéjére vonatkoztatjuk. Természetesen ha a bit egység helyett nat-ot, vagy Hartley-t használunk, akkor az entrópiát is eszerint kell megadni. Az egyes eseményekhez tartozó valószín9ségek diszkrét eseményrendszer (következésképp diszkrét valószín9ségi modell) esetén is bármilyen értéket felvehetnek 0 és 1 között. A valószín9ségek tehát diszkrét modell esetén is folytonosan változhatnak ebben a tartományban. Ebb"l következik, hogy az entrópia a valószín ségek folytonos függvénye. Foglaljuk össze a fentiek alapján az entrópiafüggvény tulajdonságait: 1. Folytonosság A H( p1 ; p2 ; ; pk ; ; pn ) függvény folytonos minden pk változójában. A folytonosság más szóval azt jelenti, hogy ha bármelyik valószín9ség csak egy egészen kicsit változik, akkor az entrópia is csak egészen kicsivel változik meg.
2. Szimmetria Az entrópiafüggvény minden pk változójában szimmetrikus . Ez más szóval azt jelenti, hogy a valószín9ségek felcserélhet"k anélkül, hogy az entrópia megváltozna. (Pl. az i-edik és a j-edik eseményekhez tartozó valószín9ségek felcserélhet"ek anélkül, hogy az entrópia megváltozna.) Az entrópia kiszámításakor nem magukkal az eseményekkel, hanem csak a valószín9ségekkel számolunk s ezek sorrendje is közömbös. 3. Széls érték (maximum) tulajdonság Az entrópiafüggvénynek akkor van maximuma, amikor a diszkrét modell valószín&ségei mind egyenl k egymással a z a z valamennyi pk = 1/n . Ekkor Hmax = - n . 1/n log 1/n = log n > 0 Minél inkább egyformán valószín9ek egy eseményrendszer egyes eseményei, annál kevésbbé „tippelhetjük meg” egy esemény kimenetelét, annál nagyobb az esemény bekövetkezésének a bizonytalansága és annál nagyobb az eseményrendszer entrópiája. FileNév:
InfotechnikaÚjJegyzet3.doc - 20/184 - Utoljára módosítva: 2001-11-05 Ilyen értelemben mondhatjuk azt, hogy az entrópia a bizonytalanság mértéke.9 Furcsa, de úgy is mondhatjuk, hogy az entrópia azt mutatja meg, hogy mennyire nem tudjuk, hogy mi a kérdéses esemény kimenetele s annak a bekövetkezésér"l szóló hír éppen ezt e „nemtudást” szünteti meg, vagyis éppen annyi információt közöl, amennyi ennek a „nemtudásnak” a mértéke. 4. Additivitás Az eseményhalmaz egyes eseményeinek csoportosításával a bizonytalanság nem változik. Le gy en az E eseménytér k-adik eseménye Ek és legyen ennek a bekövetkezési valószín9sége pk. (Ezek pontosan az eddigiekben használt fogalmak és a követett jelölésmód.) Csoportosítsuk most az E eseménytér egyes eseményeit egymástól független csoportokba (=diszjunkt részhalmazokba). Mindegyik ilyen részhalmazhoz tartozik egy-egy valószín9ség, amely a beletartozó egyes események
valószín9ségeinek összege.10 Egy esemény bekövetkezése –mint korábban láttuk- úgy is értelmezhet", mint egy véges halmaz elemeib"l való választás. A csoportosítás azt jelenti, hogy el"ször azt a csoportot (=részhalmazt) választjuk ki, amelyben az esemény bekövetkezett. Ehhez a választáshoz tartozik egy részinformáció Ez után pedig a kiválasztott csoportba tartozó események közül azt, amelyik az adott esetben bekövetkezik, s ehhez a választáshoz is tartozik egy rész-információ. Végül is a csoportosítás miatti kett"s válsztás teljes információtartalma szükségképpen a két választás egyedi információinak összege (Lényegében ugyanazt a gondolatmenetet követjük itt, mint amit az információ kvantitatív mértékének bevezetésekor leírt áruválaszték és katalógusok kapcsán elmondtunk.) Az itt vázolt megfontolásból következik az entrópia(függvény) additivitása, amit a fenti 4. pontban
állítottunk A gondolatmenet meg is fordítható s az Ek eseményt feloszthatjuk m darab, egymástól független F1, F2, Fj, Fm, rész-eseményre úgy, hogy e rész-események valószín9ségeinek összege éppen pk legyen. Imígyen egy újabb F eseményrendszerrel helyettesítettük az el"bbi E eseményrendszer k-adik eseményét. Tehát ha az F eseményrendszer valamelyik eseménye bekövetkezik, akkor az a „saját” valószín9ségén kívül még pk val súlyozva járul hozzá az E eseménytér bizonytalanságához és -additív módon- a „saját” entrópiájával növeli az eredeti E eseménytér entrópiáját. 9 Ez a megfogalmazás Hincsint5l származik – legalább is, ami az információelméleti alkalmazását illeti. 10 Itt hallgatólagosan ismét feltételezzük, hogy független eseményekr"l van szó, mert csak ezekre érvényes a valószín9ségek összegezési szabálya. FileNév: InfotechnikaÚjJegyzet3.doc - 21/184 - Utoljára módosítva:
2001-11-05 Az itt alkalmazott eljárás igen hasznos relatív vonatkoztatási rendszert ad, t.i az Ek eseményre vonatkoztatott Fj, mint az el"bbi rész-eseménye fogalmát és az ezzel kapcsolatos u.n feltételes valószín9ségeket Ezekkel a fogalmakkal alább, a kétdimenziós eseményrendszerek és valószín9ségi modellek kapcsán foglalkozunk majd. ^ · ^ Az entrópiafüggvény felsorolt négy tulajdonságát à priori axiómáknak is lehet tekinteni, amelyekb"l levezethet", hogy milyen analítikus függvény-formula elégíti ki ezeket az axiómákat. Ilyen eljárásokat alkalmaznak pl Feinstein, Hincsin, Shannon, Schützenberger és mások különböz" munkáikban. Kiderül ezekb"l, hogy többféle olyan függvény is van, amely kielégíti a leírt négy axiómát, de mindezek közül a Shannon-Wiener féle formula a legegyszer9bb. Reza [1] szerint az információelmélet nem utolsó sorban éppen azért fejl"dhetett, mert olyan egyszer9
alapfogalomra épül, mint Shannon és Wiener formulája: H (X ) = n k =1 pk log pk 2 ahol – mint láttuk – az összegezést a véges, diszkrét forrás szimbólumkészletének (X) valamennyi (azaz összesen n) elemének valószín9ségeire el kell végezni és a kapott számérték a logaritmus alapszámának megválasztásától függ. Itt a képletben 2-es alapszámú logaritmust adtunk meg, amit a továbbiakban, az egyszer9bb irásmód kedvéért ld –vel jelölünk majd. 2.9 A jelforrás hatásfoka, a redundancia, a relevancia és az illeszt kódolás Egy jelforrás különböz" mennyiség9 információt ad, amikor jelkészlete különböz" szimbólumait (vagy ábécéje különböz" betüit) bocsájtja ki: A kis gyakoriságú betük esetén az átlagosnál nagyobb információt - de ritkán, a nagy valószín9ség9 jeleknél az átlagosnál jóval kisebb információt, de gyakran. Mindent összevetve az el"bbiekben láttuk, hogy a betünkénti
átlagos információmennyiség akkor lenne a legnagyobb, ha a jelforrás ábécéjében minden betünek ugyanakkora lenne a kibocsájtási valószín9sége. n betü esetén ez az érték: Hmax = log n Ez lenne a jelforrás által optimális esetben kiadható jelenkénti maximális információmennyiség. A gyakorlatban azonban rendszerint nem ez az optimum határozza meg a forrás-ábécét, hanem más szempontok, amelyek következtében a betük relatív gyakoriságai különböz"ek és ezért az egy betüre vonatkoztatott átlagos információmennyiség [ H(X)] is kisebb, mint a fenti optimum: H(X) < Hmax FileNév: InfotechnikaÚjJegyzet3.doc - 22/184 - Utoljára módosítva: 2001-11-05 A forrás hatásfokát íly módon az e= H H max hányados határozza meg, amit szokás százalékokban is megadni. Igen fontos fogalom az, hogy relatíve mennyi az az információmennyiség, amit az adott forrás "nem használ ki". Másképpen fogalmazva: igaz ugyan,
hogy adott esetben a forrásentrópia maximuma Hmax bit/betü lehetne, de ehelyett átlag csak H < Hmax bit/betü információt szállít a forrás. Ha ezt a "ki nem használt többletet" vonatkoztatjuk a maximális entrópiára, megkapjuk az u.n relatív redundanciát: H max H H R= =1 e H max H max [%] A redundancia a forrás adott, á priori statisztikus szerkezetének a következménye, A redundancia objektív, számértékkel jellemezhet mérték. Szok ás azt is mondani, hogy ez a forrás által szállított "felesleges információ-többlet", ez azonban félrevezet". amit, mint említettük más, nem az entrópia optimalizálásának szempontjai határoznak meg, azaz nem mondhatjuk, hogy a redundancia valamilyen felesleges információtöbblet mértéke. Többek között úgy is fogalmazhatunk, hogy a redundancia azt az „információtöbbletet” jelenti, amit a forrás nem használ ki. (Persze erre rendszerint jó oka van) Emlékezzünk arra,
hogy a 2. pontban – Shannon után szabadon fogalmazva – kijelentettük, hogy a hírközlô rendszer számára az információ megjelenési formája a fontos, a tartalma, jelentése viszont nem. Ezt aztán a diszkrét valószín9ségi modell bevezetésével pontosabban is megfogalmaztuk. Itt azért beszélhetünk egyáltalán redundanciáról, mert a diszkrét valószín9ségi modell megengedi, hogy a forrásábécé egyes betüihez különböz" valószín9ségek tartozzanak. Ezt fejezi ki az itt bevezetett redundanciafogalom. Ha további kötöttségek vannak az eseményrendszerben (pl ha az egymás után következ" betük között is van valamilyen valószín9ségi összefüggés), akkor az további redundanciát okoz, amit viszont az egyszerü diszkrét valószín9ségi modellel nem tudunk kezelni. Az ilyen problémák kezelésére rendszerint az un. Markov láncokat alkalmazzák, de az ilyen modellek tárgyalására itt nincs mód. (A tömörítési eljárásokhoz
használt modellek kialakításához alkalmazzák "ket.) Ténykérdés, hogy ha egyáltalán nem vagyunk tekintettel a forrásra, akkor az információ gazdaságos továbbítása szempontjából az lenne a jó, ha egy-egy FileNév: InfotechnikaÚjJegyzet3.doc - 23/184 - Utoljára módosítva: 2001-11-05 szimbólum – vagy a hozzárendelt kód – azt a maximális információt hordozná, amelyre optimális esetben egyáltalán képes. Az információforrás jelkészletének, ill. az abból egy egyértelm9 leképezéssel el"állítható forráskódnak11 tehát akkora a redundanciája, amekkorát a forrás statisztikai szerkezete meghatároz. Ha a gazdaságos információtovábbítás kedvéért ennél kevésbbé redundáns, s"t: a lehet" legkisebb redundanciával rendelkez" u.n csatornakódot szeretnénk el"állítani az információt továbbító csatorna számára, akkor ezt egy u.n illeszt kódolóval lehet megoldani Az itt elmondottakat
szemlélteti a következ" blokkvázlat: Illesztõ kódoló Forrás Forráskód A csatorna felé Csatornakód Itt úgy ábrázoltuk az információforrást, mint ami „egyb"l” kódolt információt (forráskódot) bocsájt ki. Feltételeztük ugyanis, hogy az à priori forrásszimbólumhoz a forráskód hozzárendelése már az információforráson belül megtörténik. (Ld a 11 lábjegyzetet is.) Shannon is és mások is kidolgoztak eljárásokat arra, hogy hogyan lehet ismert statisztikai szerkezet9 forráskódhoz olyan csatornakódot szerkeszteni, amelynek minimális (vagy, ha elérhet", akkor éppenséggel nulla) a redundanciája. Ezt a feladatot illeszt kódolásnak nevezik s egy kés"bbi fejezetben foglalkozunk vele. A „redundancia” szóhoz nagyon hasonló hangzású szó a „relevancia” szó, amit ugyancsak az információval kapcsolatban szokás használni. Amíg azonban a redundancia objektív fogalom, amely semmilyen összefüggésben nincs
a forrásinformáció jelentésével, addig a relevancia nagyon is szubjektív valami, ami éppen azt fejezi ki, hogy az adott információ valakinek vagy valaminek a szempontjából mennyire fontos, számára mennyire érdekes. A relevanciához nem is rendelhet" hozzá számszer9 mérték. 11 Emlékezzünk arra, hogy a forráshoz olyan diszkrét valószín6ségi modellt rendeltünk hozzá, amely szerint minden esetben, amikor egy esemény történik a forrásnál, az valamilyen szimbólummal jelzi ennek az eseménynek a bekövetkeztét. Szöveges forrásnál pl egy tág értelemben vett ábécé egy betüjével. Ha a forrás pl. egy mér5berendezés, akkor egy mérési adattal, amely nem csak egy számértéket jelenthet, hanem egységet, méréstartományt, a mérés id5pontját és más, a méréshez tartozó, többnyire numerikus adatot is. Akármilyen adatról vagy egy ábécé egy szimbólumáról van szó, manapság gyakori, hogy azt a forrás eleve egy bináris kód
formájában jeleníti meg s ilyenkor ezt a kódot nevezzük forráskódnak. Mindezekre a kérdésekre a kódolással foglalkozó fejezetben kés5bb visszatérünk majd. FileNév: InfotechnikaÚjJegyzet3.doc - 24/184 - Utoljára módosítva: 2001-11-05 Pl. egy meghatározott részvény tulajdonosa számára nagyon is releváns információ az a hír, amely közli annak a bizonyos részvénynek a t"zsdei ármozgásait. Valaki más számára, aki nem t"zsdézik, az el"bbi információ talán egyáltalán nem releváns (=irreleváns). A relevancia egy hír szemantikai tartalmának és a hír fogadója e tartalom iránti érdekl désének viszonyát fejezi ki, s nincs is számértéke, hanem csak határozókkal fejezik ki. Pl bizonyos hír számomra nagyon releváns, más valaki számára viszont egyáltalán nem az. Vagy: Egy bizonyos hír relevanciája számomra nagyobb, mint egy másik adott híré. Vagy: Egy bizonyos szónok beszéde számomra semmilyen releváns
információt nem közvetít. 2.10 Számítási példák és feladatok az entrópia, a hatásfok és a redundancia kiszámítására: 2.1 példa: Adott egy diszkrét információforrás, amelynek négyelem9 szimbólumkészlete van és a négy szimbólum kibocsájtásainak relatív gyakoriságai (határesetben a valószín9ségei) rendre a következ"k: 1/3;1/4; 1/4; 1/6; 12 Teljes-e a rendszer? 4/12+2.3/12+2/12= 12/12=1 tehát az eseményrendszer teljes. Az egyedi információk: -log1/3=log3=0,477 hartley 1,585 bit (szoroztuk 3,322-vel) -log1/4=log4= 2 -log1/6=log6=0,778 hartley 2,544 bit (szoroztuk 3,322-vel) bit Az entrópia H = 1/3.log3 + 21/4log4 + 1/6log6 = 1,585/3 + 1/22 + 1/62,585 = = 0,528 + 1 + 0,4308 = 1,959 bit/szimbólum Mekkora ennek a valószín9ségi modellnek a hatásfoka? e = H/Hmax.100 = 1,959 /2 100 = 97,95 % Mekkora a redundanciája? r = 1-e = 2,05 % Ez igen kis redundancia, s az az oka, hogy a négy szimbólum közül kett"nek éppen átlagos
(t.i ¼) a valószín9sége, s a másik kett"é sem sokkal tér el ett"l Más szóval az entrópiafüggvény maximumának a közelében járunk. 12 Nem adtuk meg, hogy melyik forrásszimbólumhoz melyik valószín6ség tartozik, mert az entrópiafüggvény szimmetriája miatt ez úgy sem lenne érdekes. Az egyedi információk számításához azonban tudni kell, hogy melyik valószín6ség6 eseményhez mekkora egyedi információ tartozik. FileNév: InfotechnikaÚjJegyzet3.doc - 25/184 - Utoljára módosítva: 2001-11-05 Mindezt azért érdemes megjegyezni, mert itt is, mint minden mérnöki számításnál, érdemes átgondolni, hogy a kapott eredmény valószer9-e. 2.2 példa Adott egy diszkrét információforrás, amelynek háromelem9 szimbólumkészlete (ábécéje) van és a három betü kibocsájtásainak a valószín9ségei rendre a következ"k: pA=0,7; pB=0,2; pC=0,1 A rendszer teljes, mert 0,7+0,2+0,1= 1 Az entrópia: H = -0,7.log0,7 + 0,2log5 +
0,1log10 = 0,70,155 + 0,20,699 + 0,11 = = 0,1085 + 0,1398 + 0,1 = 0,3483 hartley/betü A redundancia: Hmax = -log 1/3 = 0,477 hartley/betü r = (Hmax –H)/ Hmax .100= (0,129/0,477)100 = 27 % Megj: relatív értékr"l van szó, ergo nem kell bitre átszámolni. Számítsuk ki a forrásentrópia, a hatásfok és a relatív redundancia értékét annak a négy diszkrét információforrásnak az esetében, amelyeket rendre a következ" valószín9ségi modellek jellemeznek: 1 ;1 ;1 ;1 ; 2 4 8 8 b) 1 ; 1 ; 1 ; 1 ; 1 ; 1 ; 1 ; 1 ; 4 4 8 8 16 16 32 32 c) 1 ; 1 ; 1 ; 1 ; 1 ; 1 ; 2 4 8 16 32 32 d ) 0,4; 0,3; 0,2; 0,1; a) A feladatok megoldója ellen"rízze mindegyik esetben azt is, hogy teljes eseményrendszerr"l van-e szó és határozza meg az egyes eseményekr"l szóló hírek egyedi információtartalmait is. FileNév: InfotechnikaÚjJegyzet3.doc - 26/184 - Utoljára módosítva: 2001-11-05 Az eseménytér Nem mindíg nyilvánvaló, hogy mit tekintünk
egyetlen, egyedi eseménynek, mert az lehet több, bizonyos szempontból egy kalap alá vonható esemény-együttes (halmaz) is. Ilyen szempontból igen hasznos az eseményteret, az esemény bekövetkezésér"l hírt adó jelek halmazát és az eseménytérhez rendelhet" diszkrét valószín9ségi modellt, egyaránt halmazokként kezelni, halmazoknak tekinteni. 2.3 példa: Tekintsük egyetlen eseménynek két kockadobás együttes eredményét! Táblázatba rendezve a lehetséges eredményeket: Dobások az egyik kockával Dobások a másik kockával 1 2 3 4 5 6 1 2 3 4 5 6 7 2 3 4 5 6 7 8 3 4 5 6 7 8 9 4 5 6 7 8 9 10 5 6 7 8 9 10 11 6 7 8 9 10 11 12 Tekintsük most egyetlen eseménynek egy kett"s dobás eredményét, ami 2-t"l 12-ig bármi lehet, de az egyes eredmények korántsem azonos relatív gyakoriságúak. Ebben a felfogásban most az eseménytér elemei: {2,3,4,5,6,7,8,9,10,11,12} a hozzájuk rendelt
valószín9ségek pedig rendre: {1/36; 2/36; 3/36; 4/36; 5/36; 6/36; 5/36; 4/36; 3/36; 2/36; 1/36;} mert az összesen 36 lehetséges kett"s dobásból rendre ennyiszer jöhetnek ki a táblázatban feltüntetett pontszámok. Van tehát egy egydimenziós eseményrendszerünk ( a kett"s dobások, mint események), a kett"s dobások eredményét tartalmazó 11 elem9 halmaz és az ehhez rendelt valószín9ségi modell. Ellen"rizzük az eseményrendszer teljességét, számítsuk ki az entrópiáját, és a redundanciáját. A teljesség: ( Ha a diszkrét valószín9ségek összege =1) 2(1/36+2/36+3/36+4/36+5/36)+6/36 = 2.15/36+6/36 = 36/36 teljes Az eseményrendszer FileNév: InfotechnikaÚjJegyzet3.doc - 27/184 - Utoljára módosítva: 2001-11-05 Az entrópia: 2.[ 1/36log36+2/36log18+3/36log12+4/36log9+5/36(log36-log5)]+1/6log6 = = 1/18.[log36+2log18+3log12+4log9+5(log36-log15)] +1/6log6 = = 1/18.[2log18+3log12+4log9+6log36-5log5]+1/6log6 = =
1/18.[2,51+3,24+3,82+9,34-3,49]+0,13 = 1/18(18,91-3,49)+0,13 = =0,86+0,13 = 0,99 hartley/eredmény (mert 10-es alapú logaritmusokkal számoltunk) Az entrópia akkor lenne maximális, ha valamennyi (azaz mind a 36 féle) kett"s dobásnak ugyanakkora lenne a valószín9sége, azaz Hmax = -log1/36 = log 36 = 1,556 hartley/eredmény A hatásfok (%-ban): e = 100.H/ Hmax = 1000,99/1,556 = 63,6 % (Figyelem! Ha 100%-nál nagyobb eredményt kapnánk a hatásfokra, akkor egészen biztosan rosszul számoltunk!) A redundancia: r = 100 – e = 36,4% (Természetesen 100%-nál nagyobb (vagy éppenséggel negatív) redundancia is csak hibás számítás eredménye lehet 2.4 példa: Egy hatbetüs ábécé betüi a következ"k: A; B; C; D; E; F; A forrás, amely ezeket a betüket leadja a következ" valószín9ségekkel bocsájtja ki "ket: pA=1/2; pB=1/4; pC=1/8; pD=1/16; pE=1/32; pF=1/32; Az információforrást egy u.n illeszt" kódoló követi, amely a következ"
bináris kódokat rendeli hozzá a forrás-ábécé betüihez: A 0; B 10; C 110; D 1110; E 11110; F 111110; (Figyeljük meg, hogy egyetlen kódszónak sem prefixuma egy másik, (rövidebb) kódszó, tehát a 0 és 1 jelek tetsz"leges sorozatában azonosíthatók a kódszavak. Az ilyen, változó szóhosszúságú kódot egyértelm9en (elválasztó jelek nélkül is) megfejthet", idegen szóval irreducibilis kódnak nevezik.) A kódolás kapcsán még b"vebben szólunk róluk. FileNév: InfotechnikaÚjJegyzet3.doc - 28/184 - Utoljára módosítva: 2001-11-05 A feladathoz rendelhet" blokkvázlat: FORRÁS ILLESZT1 KÓDOLÓ Forrás-szimbólumok Forrás entrópia: H F Csatornakód Kód-entrópia: H K Számítsuk ki el"ször a forrás információelméleti jellemz"it! A forrásentrópia (Az adott valószín9ségek számértékeib"l látszik, hogy itt érdemes 2-es alapú logaritmusokkal számolni): HF =
½.ld2+1/4ld4+1/8ld8+1/16ld16+21/32ld32 = = ½.1 + ¼2 + 1/8 3 + 1/16 4 + 1/165= = ½ + ½ + 3/8 + ¼ + 5/16 = 1/16.(8+8+3+4+5) = 31/16 = = 1,9375 bit/betü A forrásentrópia maximális lehetne, ha a hatbetüs ábécé minden egyes betüjének ugyanakkora, azaz mindegyiknek 1/6 lenne a valószín9sége. Tehát HFmax = -ld1/6 = 3,32.lg6 = 3,322 0,778 = 2,58 bit/betü Ebb"l a forrás hatásfoka: eF = HF / HFmax .100 = 193,75/2,58 = 75 % A forrás redundanciája pedig rF = 100 - eF = 100- 75 = 25% A csatornakód átlagos szóhosszúságát a valószín9ségekkel súlyozott egyes szóhosszúságokból számítjuk ki: (Induljunk ki visszafelé, az „F” betüt"l.) Az „F” betühöz tartozó hatbites kódszó valószín9sége 1/32. Ugyanez a valószín9sége az „E” betühöz tartozó ötbites kódszónak is. A gondolatmenetet folytatva és kiterjesztve az összes betüre az átlagos szóhosszúság = 1/32.(6+5) + 1/16 4 +1/8 3 + ¼ 2 + ½ 1 = = 11/32 + 8/32 + 12/32 +
16/32 + 16/32 = 63/32 = = 1,9687 bin.szjegy/kódszó FileNév: InfotechnikaÚjJegyzet3.doc - 29/184 - Utoljára módosítva: 2001-11-05 Az adott esetben egy-egy forrásszimbólum átlagosan HF =1,9375 1,9375 bit információt közöl, s nyilván ugyanennyi a kódolt szimbólum információtartalma is. A binárisan kódolt szimbólum átlagos kódszóhosszúsága, mint az el"bb kiszámoltuk, 1,96875 bit. Így a csatornakód hatásfoka: eK = 1,9375/1,96875 . 100 = 98,41 % A csatornakód redundanciája pedig: rK = 100 – 98,41 = 1,59 % Az illeszt" kódolásnak pontosan az a szerepe, hogy csökkentse a forrás redundanciáját, s tegye ezt úgy, hogy megfelel" csatornakód-választással illeszti a forrás statisztikai szerkezetét a csatornához. Az adott irreducibilis kód ránézésre olyan, hogy sokkal több 1-es bit látszik benne, mint 0-ás bit. Márpedig, ha egy binárisan kódolt információban nem azonos a 0-ás és az 1-es szimbólumok el"fordulási
valószín9sége, akkor csökken az átlagos információtartalom (t.i az entrópiafüggvény széls"érték tulajdonsága miatt) Vizsgáljuk meg azt is, hogy az adott esetben mi a helyzet a 0-ás és az 1-es számjegyek gyakoriságával! A kódszavak gyakorisága ismert, tehát ebb"l indulunk ki. pi kódszó A 0-ák sz. Az 1-esek sz. 0 átl. 1 átl. A ½ 0 1 0 ½ 0 B ¼ 10 1 1 ¼ 1/4 C 1/8 110 1 2 1/8 2/8 D 1/16 1110 1 3 1/16 3/16 E 1/32 11110 1 4 1/32 4/32 F 1/32 111110 1 5 1/32 5/32 32/32=1 31/32=0,97 Betü Látható, hogy kódszavanként átlagosan 1-1 db 0-ás számjegy fordul el" (ezt számolni sem kellett, mert ránézésre látható, hogy mindegyik kódszóban 1-1 db 0-ás jegy van) az 1-es számjegyek átlagos el"fordulása pedig 0,97 azaz majdnem ugyanakkora mint a 0-ás számjegyeké. A választott kód tehát ebb"l a szempontból is nagyon jól kiegyenlített. FileNév:
InfotechnikaÚjJegyzet3.doc - 30/184 - Utoljára módosítva: 2001-11-05 2.5 példa: 12 pénzdarabunk van, amelyek közül 11 darabnak azonos a súlya, egyé pedig különbözik a többiét"l. Lehet könnyebb is, lehet nehezebb is, nem tudjuk Azt állítjuk, hogy egy mér"súlyok nélküli serpeny"s mérleg segítségével legfeljebb 3 méréssel meg lehet mondani, hogy melyik az a pénzdarab, amelynek a súlya különbözik a többiét"l és az is kiderül, hogy könnyebb-e vagy nehezebb-e a többinél. Információelméleti fogalmak segítségével meg lehet mondani, hogy ez a feladat megoldható-e, de azt nem, hogy milyen mérési stratégiát kell hozzá alkalmazni. Ha 12 pénzdarab közül egyet kell kiválasztani (t.i azt, amelyiknek a súlya különbözik a többiét"l) akkor ennek a választásnak az információtartalma: I1 = -log1/12 = log 12 = 1,079 hartley = 3,585 bit Az a döntés, amelyik arról informál, hogy könnyebb-e a keresett érme, vagy
nehezebb-e, mint a többi, nos ez éppen egy igen-nem döntés (elemi döntés), amelynek, mint tudjuk, éppen 1 bit az információtartalma. A feladat megoldásához tehát legalább 4,585 bit információra van szükségünk. Mennyi információt ad egy kétserpeny"s mérleggel való összehasonlító mérés? Nos egy ilyen mérésnek háromféle eredménye lehet: vagy a baloldali serpeny"be helyezett érme a nehezebb, vagy a jobboldaliba helyezett érme, vagy pedig egyforma súlyúak. Ha mindhárom eredmény ugyanolyan valószín9séggel fordulhat el", akkor egy mérés IM = 3,322. log3 = 1,585 bit információt adhat, három mérés pedig ennek a háromszorosát, azaz I = 4,755 bit információt. Ez több, mint a feladat megoldásához feltétlenül szükséges 4,585 bitnyi információ, tehát a feladat elvileg megoldható. Más kérdés, hogy sikerüle olyan mérési stratégiát kidolgozni, amely valóban megadja a megoldást (Minél kisebb az
információ-többlet, annál kevésbbé redundáns a megoldás és annál nehezebb a mérési stratégiát kitalálni. Az adott esetben azonban van ilyen stratégia) FileNév: InfotechnikaÚjJegyzet3.doc - 31/184 - Utoljára módosítva: 2001-11-05 2.11 Az adó és a vev statisztikai kapcsolata valamint a kétdimenziós valószín ségi modell Vizsgáljuk meg most a lehet" legegyszer9bb adó – vev" kapcsolatot egyetlen statisztikai rendszerként. Az egyszerüsítés abban áll, hogy nem alkalmazunk az adó oldalán semmiféle kódolót (és ennek párjaként dekódolót sem a vev" oldalon) és egyel"re nem számolunk az információt továbbitó csatorna saját statisztikai tulajdonságaival, zajkarakterisztikájával sem, bár a vev" oldalán figyelembe vesszük azt a tényt, hogy a vev" esetenként nem feltétlenül azt a jelet veszi, amit az adó oldalon elk9ldtünk neki. Ezekkel az egyszerüsítésekkel kapjuk a következ"
információ-továbbító blokkdiagramot: Adó E eseménytér X szimbólumkészlet P valószínûségi modell Vevõ F eseménytér Y szimbólumkészlet Q valószínûségi modell Ezt a modellt a következ"kben egyetlen rendszernek tekintjük, amely a külön-külön egydimenziós E ill. F eseményterek helyett egyetlen kétdimenziós eseménytérrel és egyetlen kétdimenziós valószín9ségi modellel rendelkezik. Tesszük mindezt azért, hogy megmutassuk, hogy ebben a rendszerben milyen külön-külön, együttes és u.n feltételes valószín9ségi modellek értelmezhet"k és ezekb"l hogyan vezethet"k le ill. származtathatók különböz" entrópia-fogalmak, mi ezek jelentése és hogyan függenek össze egymással. A kiindulás az eddigiekben már értelmezett egydimenziós eseménytér, szimbólumkészlet és valószín9ségi modell értelemszer9 alkalmazása mind az adó (forrás) oldalára, mind a vev" oldalára úgy, ahogyan ezt az
el"bbi blokkvázlat mutatja. Ez után a két oldal modelljeit egyesítve13 jutunk el a kétdimenziós modellhez úgy, ahogyan ezt a következ" oldal ábrája mutatja. 13 Az „egyesítés” során végzünk olyan m6veleteket, mint a halmazok direkt szorzása és olyanokat is, amelyek során az utóbbiak elemeit mátrixokba rendezzük. Enesemény. Híre: xn Valószínûsége: pn X Fmesemény. Híre: ym Valószínûsége: qm Bekövetkezik az Bekövetkezik az Ekesemény. Híre: xk Valószínûsége: pk Fjesemény. Híre: yj Valószínûsége: qj Bekövetkezik az Bekövetkezik az E2esemény. Híre: x2 Valószínûsége: p2 F2esemény. Híre: y2 Valószínûsége: q2 Bekövetkezik az Bekövetkezik az E1esemény. Híre: x1 Valószínûsége: p1 F1esemény. Híre: y1 Valószínûsége: q1 Bekövetkezik az Utoljára módosítva: 2001-11-05 Bekövetkezik az FileNév: InfotechnikaÚjJegyzet3.doc - 32/184 - F E j= k= 1 1 2 j m E1F1 E1F2 E1Fj E1Fm E2F1
E2F2 E2Fj E2Fm k EkF1 EkF2 EkFj EkFm n EnF1 EnF2 EnFj EnFm 2 Az Ek esemény, mint el5re kikötött feltétel mellett vizsgálja az F1, F2,Fj,Fm véletlen események beövetkezését. Lássuk be, hogy ez egy egydimenziós, véges, diszkrét eseményrendszer, ami persze az Ek esemény bekövetkezéséhez, mint feltételhez van kötve. Egydimenziós (valószín9ségi) sormátrix Az Fj esemény, mint el5re kikötött feltétel mellett vizsgálja az E1, E2,Ek,En véletlen események beövetkezését. Lássuk be, hogy ez is egy egydimenziós, véges, diszkrét eseményrendszer, ami persze az Fj esemény bekövetkezéséhez, mint feltételhez van kötve Egydimenziós (valószín9ségi) oszlopmátrix FileNév: InfotechnikaÚjJegyzet3.doc - 33/184 - Utoljára módosítva: 2001-11-05 Megjegyzések az ábrához: 1. Az E és F külön-külön egydimenziós eseményterek szorzattere az ExF kétdimenziós eseménytér, amelynek minden egyes sora külön-külön egydimenziós
eseménytérnek tekinthet" és ugyanez igaz az oszlopaira is. (Lásd még a következ"kben a 4. és az 5 pontot is!) 2. Az mxn méret9, kétdimenziós mátrix k,j index9 cellája az Ek és Fj események együttes bekövetkezését jelöli (de mást is jelölhet, mint alább látni fogjuk). Beírhatók tehát a cellába az Ek és Fj események, s így egy kétdimenziós eseményteret (eseménymátrixot) kapunk. 3. A mátrix mindegyik cellájába értelemszerüen beírhatók az adott eseményekhez tartozó valószín9ségek, azaz a p{xk yj} értékek. (Lássuk be, hogy e valószín9ségek összege =1, azaz a modell teljes.) Így megkapjuk az ExF kétdimenziós eseménytérhez tartozó (kétdimenziós,véges, diszkrét) valószín9ségi modellt (t.i mátrixot) 4. Ha az (adó-oldali) E eseménytérnek –mondjuk- a k-adik eseményét, mint beteljesült feltételt, rögzítjük, akkor ez kijelöli a mátrix k-adik sorát, és a mátrix e sorába beírhatjuk a p{yj|xk} feltételes
valszín9ségeket. Az így kapott feltételes valószín&ségmátrix k-adik sorára igaz, hogy m j =1 {y j | xk } = 1 és ez igaz a mátrix minden egyes sorára. (Összesen m oszlop van) A feltételes valószín9ség-mátrix minden egyes sora tehát egy-egy egydimenziós (véges diszkrét) valószín9ségi modell. Megfogalmazhatjuk ezt az esetet úgy is, hogy ha biztosan tudjuk, hogy a forrás az xk szimbólumot bocsájtotta ki akkor mi a valószín9sége annak, hogy a vev" oldalon az y1; y2; . yj; ym szimbólumok valamelyikét észleljük Az biztos, hogy ezek közül valamelyiket, tehát az xk rögzített feltétel melletti yj | xk feltételes valószín9ségek összege 1, ha j befutja valamennyi 1 n i =1 {x | y } = 1 k j 5. xk | y j Ugyanez értelemszer9en elmondható arra az esetre is, amikor az F eseménytérnek egyik –mondjuk a j-edik- eseményét rögzítjük mint beteljesült feltételt Ez a mátrix j-edik oszlopát jelöli ki és ennek az oszlopnak minden
egyes cellájába beírhatjuk a p{xk|yj} feltételes valószín9ségeket. Az így kapott feltételes valószín&ségmátrix j-edik oszlopára igaz, hogy és ez igaz a mátrix minden egyes oszlopára. (Összesen n sor van) A feltételes valószín9ség-mátrix minden egyes oszlopa tehát egy-egy egydimenziós (véges diszkrét) valószín9ségi modell. FileNév: InfotechnikaÚjJegyzet3.doc - 34/184 - Utoljára módosítva: 2001-11-05 6. Vegyük észre, hogy az el"z" két (ti az 4 és a 5) pontban leírt feltételes valószín9ségmátrixok egyáltalán nem azonosak egymással és nem azonosak a 3. pontban leírt együttes valószín9ségmátrixszal sem 7. A kétdimenziós eseménytér bevezetése után tehát összesen 5 olyan mátrixunk van, amelyekbe valószín9ségek vannak beírva. Ezek a következ"k: E F p{xk } p{y j } ahol xk yj p{X , Y } p{Y | X } p{X | Y } X = {x1 ; x2 ; L xk ; L xn ; } Y = {y1 ; y 2 ; L y j ; L y m ; } Az együttes
bekövetkezések valószín9ségmátrixa (kétdimenziós) Az xk feltételekhez kötött Y-beli események (kétdimenziós) valószín9ségmátrixa, miközben xk végigfut valamennyi X-beli eseményen Az yj feltételekhez kötött X-beli események (kétdimenziós) valószín9ségmátrixa, miközben yj végigfut valamennyi Y-beli eseményen 8. Az öt valószín9ségi mátrixnak megfelel"en ötféle entrópiát definiálhatunk a kétdimenziós, véges valószín9ségi modellel kapcsolatban. (Ezt alább meg is tesszük majd.) 9. Emlékezzünk rá, hogy a jelforrás és a vev" semmiféle kapcsolatát nem írtuk el" általában, hanem olyan modellt vezettünk be, amely az adó és a vev" kapcsolatát az éppen adott rendszert meghatározó valószín9ségmátrixokkal definiálja. Ez a modell csak azt tételezi fel, hogy valamilyen statisztikus kapcsolat azért létezik az adó és a vev" között. 10. Megjegyezzük továbbá, hogy ha olyan adó-vev"
kapcsolatról van szó, amelynél teljes bizonyossággal mindíg ugyanaz a jel tartozik mindegyik leadott szimbólumhoz, akkor az utóbbi három valószín9ségmátrix mindegyike n-ed rangú egységmátrix. FileNév: InfotechnikaÚjJegyzet3.doc - 35/184 212 Utoljára módosítva: 2001-11-05 A kétdimenziós modellhez rendelhet entrópiák A felsorolt öt valószín9ségi modellhez a következ" ötféle entrópia rendelhet" hozzá: H(X) A forrás átlagos, szimbólumonkénti entrópiája: a forrásentrópia H(Y) Átlagos szimbólumonkénti entrópia a rendeltetési helynél: a vev entrópiája H(X;Y) A forrás oldalon leadott és a vev" oldalon vett szimbólumpáronkénti átlagos információ, azaz az egész adó-vev rendszer bizonytalansága. H(Y|X) Egy meghatározott xk szimbólum forrás-oldali leadásakor teljes általánosságban minden lehetséges yj vételének lehet nullától különböz" valószín9sége. Az ehhez a feltételes, diszkrét
valószín9ségeloszláshoz tartozó H(Y|xk) entrópiák átlagértéke (amikor is az xk feltétel végigfutja az összes leadható szimbólumok X = { x1 ; x2 ; L L xk ; L L xn } halmazát), nos ez a H(Y|X) feltételes entrópia, ami nem más, mint a vev re vonatkozó bizonytalanság mértéke minden olyan esetben, amikor a leadott jel ismert. Szokás ezt a feltételes entrópiát az egybehangzás, latin eredet9 szóval ekvivokáció néven is nevezni azon az alapon, hogy megmutatja, hogy mennyire egybehangzó a vett információ a leadottal. Ha az egyezés tökéletes, akkor H(X|X)= H(X)14 H(X|Y) Egy meghatározott yj szimbólum vételének véges valószín9sége lehet bármelyik forrás-oldali xk szimbólum leadásakor. Az ehhez a feltételes, diszkrét valószín9ségeloszláshoz tartozó H(X|yj) entrópiák átlagértéke (amikor is az yj feltétel végigfutja az összes vev"-oldali szimbólumok { Y = y1 ; y2 ; L L y j ; L L ym } halmazát), nos ez a H(X|Y)
feltételes entrópia, ami nem más, mint a forrásra vonatkozó bizonytalanság mértéke minden olyan esetben, amikor a vev" oldalon észlelt jel ismert. Ügyeljünk arra, hogy a fenti kétféle feltételes entrópia nem azonos s"t: amíg H(Y|X) –ra az ekvivokáció (vagyis az egybehangzás) elnevezést alkalmaztuk, H(X|Y) éppen a többértelm9séget fejezi ki. 14 Az ekvivokációnak majd az információ titkosításával kapcsolatban lesz jelent"sége. FileNév: InfotechnikaÚjJegyzet3.doc - 36/184 - Utoljára módosítva: 2001-11-05 Itt jegyezzük meg, hogy a tárgyalt kétdimenziós modellhez még egy hatodik entrópiafogalom is hozzárendelhet": az u.n átvitt információ vagy –idegen szóvaltranzinformáció fogalma, amit kés"bb fogunk bevezetni és értelmezni Az entrópiák, mint a bizonytalanságok mértékei fogalomkörben érdemes még egyszer összefoglalni az el"bbieket némileg más fogalmazásban: H(X) a forrás
bizonytalanságát (vagy inkább: kiszámíthatatlanságát), H(Y) pedig a vev" statisztikai természetét jellemzi.15 H(X;Y) A forrás oldalon leadott és a vev" oldalon vett szimbólumpáronkénti átlagos információ, azaz az egész adó-vev" rendszer együttes bizonytalansága. H(Y|X) azt mutatja, hogy a jel továbbításakor milyen bizonytalanság lépett fel, tehát végeredményben a jeltovábbító csatornában lév" zajra utal. (A titkosításnál nem a csatornazajjal kapcsolatban, hanem más értelmezésben lesz majd jelent"sége.) H(X|Y) A többértelm9ség mértékét jelöli, vagyis azt, hogy milyen pontosan tudjuk meghatározni, hogy mi volt az input, ha az outputot ismerjük. Minél nagyobb H(X|Y), annál kevésbé lehet a leadott szöveget rekonstruálni. 2.13 Összefüggések az entrópiák között. Bizonyítás nélkül közöljük az el"z" pontban bevezetett entrópiák összefüggéseit: H(X;Y) = H(X|Y) + H(Y) H(X;Y) =
H(Y|X) + H(X) Érvényesek továbbá a következ" alapvet" egyenl"tlenségek, amelyeket Shannon bizonyított be el"ször: H(X ) H(X | Y) H (Y ) H (Y | X ) Az egyenl"ségek akkor és csakis akkor állnak fenn, ha az adó és a vev" oldal statisztikusan teljesen független egymástól. Minden más esetben a > jelek érvényesek. 15 Ebbe a Shannontól ered" modellbe egy nagyon érdekes koncepciót csempésztünk be, amely alább majd a csatornakapacitás kapcsán lesz igen fontos. Nevezetesen arról van szó, hogy a modell megengedi, hogy a vev" ne azt a szimbólumot vegye, amit az adó elküldött neki, de ezt a „tévesztést” nem a továbbítás során bekövetkez" okoknak, hanem a vev" bizonytalanságának tulajdonítja. (Ti Shannon és ez a kétdimenziós modell) Ezért van itt szó a vev" statisztikai természetér"l. FileNév: InfotechnikaÚjJegyzet3.doc - 37/184 - Utoljára módosítva: 2001-11-05 Az
összefüggések halmazokkal való szemléltetése megkönnyíti azok megértését. El"ször azt mutatjuk meg, hogy a forrás és a vev" szimbólumkészletei (ábécéi), mint halmazok, általános esetben milyen kapcsolatban vannak: Az ábrán nem jelöltük külön az X és az Y halmazok unióját, bár az alábbiakban erre is szükségünk lesz. A fenti ábrára tekintve persze azonnal felmerül az a nyilvánvaló gondolat, hogy hibátlan közvetítés esetén a vev"-oldali ábécé pontosan megegyezik az adó-oldali ábécével s ekkor az X és az Y halmazok egybeesnek. Ez persze így is van, de ez az eset (t.i a hibátlan jelátvitelé) az el"bbi ábrán szemléltetett esetnek csak egyik határesete. Alább, majd külön megvizsgáljuk ezt a határesetet is azzal a másik határesettel együtt, amikor a forrásnak és a vev"nek egyáltalán nincs is semmilyen kapcsolata azon kívül, hogy együtt egy statisztikai rendszert alkotnak. Az el"bbi
diagrammal analóg módon a következ" ábrán szemléltetjük azt, hogy az általános eset ötféle entrópiájához hogyan rendelhet"k hozzá halmazok, és azok milyen kapcsolatban vannak egymással16: 16 Az itt mintegy „kalapból el5varázsolt” analógia természetesen a rendszer valószín6ségi modelljei és az entrópia alapdefiniciójának alkalmazása ill. kiterjesztése segítségével matematikailag precíz módon is bizonyítható. Amint azonban a bevezet5ben állítottuk ebben az anyagban sokkal inkább a fogalmak bevezetése és az alapvet5 összefüggések bemutatása a cél, mintsem a bizonyításoké. Az érdekl5d5 olvasó a megadott szakirodalomban utánanézhet a bizonyításoknak FileNév: InfotechnikaÚjJegyzet3.doc - 38/184 - Utoljára módosítva: 2001-11-05 Itt a H(X;Y) entrópia az el"z" diagram az X és az Y halmazainak uniójához van hozzárendelve. A T(X;Y) entrópiával eddig még nem foglalkoztunk, de mindjárt
visszatérünk rá. Miel"tt az ábrázolás alapján az entrópiák közötti összefüggéseket felírnánk, foglalkozzunk az T(X;Y) –entrópia-jelleg9- összefüggéssel. 2.14 A tranzinformáció Az el"bbi fejezetekben tárgyalt egyszer9, adóból és vev"b"l álló, statisztikus jelleg9 hírközlési modell esetében végül is az érdekel bennünket, hogy egy I(xk) információtartalmú xk jel leadásakor yj jelet észlelve a vev" oldalon tulajdonképpen mennyi jutott át az adó oldalról a vev" oldalra az I(xk) (egyedi) információtartalomból. Természetesen –az entrópiákhoz hasonlóan- itt sem az egyedi információkra, hanem azoknak a valószín9ségekkel súlyozott átlagára vagyunk kiváncsiak, miközben yj befutja valamennyi y1 , y2 , yj , ym , értéket úgy, hogy yj minden egyes értékéhez xk is befutja valamennyi x1, x2, xk, xn, értéket. FileNév: InfotechnikaÚjJegyzet3.doc - 39/184 - Utoljára módosítva: 2001-11-05
Ennek a mennyiségnek a jellemzésére szolgál a T(X;Y) mennyiség, amit tranzinformációnak neveznek.17 Képlettel a következ"képp definiálható: T ( X , Y ) = log p{x k | y j } p{x k } = log p{x k ; y j } p{x k } p{y j } A kölcsönös információra és a tranzinformációra is igaz a 1. Folytonoság, azaz T(X;Y) folytonos függvénye p(xk|yj) –nek 2. Szimmetria, vagy reciprocitás, azaz az yj változó ugyanannyi információt tartalmaz az xk változóra vonatkozóan, mint az xk változó yj –re vonatkozóan, tehát I(xk , yj ) = I(yj , xk ) Eléggé nyílvánvaló a kölcsönös és az egyedi információ összefüggése: I ( x k ) = I ( x k , x k ) = log 1 p{x k } Nyilvánvaló, hogy általános esetben fennállnak a következ" egyenl"tlenségek: I ( xk ; y j ) I ( xk ; xk ) = I ( xk ) I ( xk ; y j ) I ( y j ; y j ) = I ( y j ) 17 Rezánál [1] –és másutt is- keveredik az egy meghatározott xk , yj jelpárra vonatkozó I(xk , yj )
kölcsönös információ és ennek a teljes, kétdimenziós valószín6ségi modellre átlagolt értéke: a T(X;Y) tranzinformáció fogalma és jelölése. Mi itt ezt a két fogalmat mind elnevezéseikben, mind jelöléseikben megkülönböztetjük. Ezt az indokolja, hogy ha az entrópiafogalom bevezetésekor megkülönböztettük az egy adott, xk forrásszimbólum I(xk ) [bit] egyedi információtartalmát valamint ezek átlagos H(X) [bit/szimbólum] információtartalmát, azaz a forrásentrópiát, akkor itt is indokolt megkülönböztetni azxk , yj jelpárokra vonatkozó I(xk , yj ) kölcsönös információkat és az ezek átlagát jelent5 T(X;Y) tranzinformációt. Hangsúlyozzuk azonban, hogy ezt a vonatkozó szakirodalom nem teszi. A kölcsönös információt és a tranzinformációt sem elnevezésében, sem jelölésében nem különbözteti meg, hanem a tranzinformációra az I(X;Y) jelölést használja. FileNév: InfotechnikaÚjJegyzet3.doc - 40/184 - Utoljára
módosítva: 2001-11-05 A jelpáronkénti kölcsönös információt átlagolva juthatunk el a tranzinformáció és a korábban definiált entrópiafogalmak összefüggéseihez, amelyek azonban könnyebben megérthet"ek, ha újra el"vesszük az entrópiafogalmak halmazokkal való ábrázolását. Megemlítjük, hogy a tranzinformáció fogalma nem csak diszkrét rendszerekre értelmezhet", hanem valószín9ség-sür9ségfüggvényeivel jellemezhet" kétdimenziós, folytonos valószín9ségi modellre is, és ekkor is mindíg pozitív. (Folytonos valószín9ség-eloszlás esetén a Shannon-Wiener féle entrópia nem értelmezhet", ha pedig mégis megpróbálnánk ilyen eloszlásokra „ráer"ltetni” negatív értéket is felvehetne.) 2.15 Összefüggések a tranzinformáció és az entrópiák között. Az el"z"ekben tárgyaltakból levezethet"k, de a fenti ábra alapján közvetlenül is beláthatók az entrópiák és a
tranzinformáció közötti alábbi összefüggések: H ( X , Y ) H ( X ) + H (Y ) H (X | Y ) H (X ) H (Y | X ) H (Y ) H ( X , Y ) = H ( X | Y ) + H (Y | X ) + T ( X ; Y ) FileNév: InfotechnikaÚjJegyzet3.doc - 41/184 - Utoljára módosítva: 2001-11-05 Vizsgáljunk meg most két határesetet: 1. Zajmentes csatorna esetén: a forrás és a vev" szimbólumkészlete között kölcsönösen egyértelm9 leképezés van, az X és az Y halmazok egybeesnek. Ekkor H(X) = H(Y) H(X;Y) = H(X) = H(Y) H(X|Y) = 0 H(Y|X) = 0 T(X;Y) = H(X) = H(Y) = H(X;Y) 2. Statisztikailag független adó és vev esetén: ha az adó lead egy bármilyen xk szimbólumot, akkor a vev" ugyan tudomást szerez (pl. egy szinkronjel által) arról, hogy neki fel kellene ismernie a k9ldött jelet. Az azonban, hogy erre milyen yj jelet vél felismerni, teljesen független attól, hogy mi volt a leadott jel. Ekkor H(X) és H(Y) diszjunkt halmazokkal reprezentálhatók (a + jel a halmazok H(X;Y) = H(X) + H(Y)
jelenti) H(X|Y) = H(X) H(Y|X) = H(Y) T(X;Y) = 0 unióját FileNév: InfotechnikaÚjJegyzet3.doc - 42/184 216 Utoljára módosítva: 2001-11-05 A csatornakapacitás fogalma és Shannon tétele. A redundancia fogalmának bevezetésekor (2.9 pont) láttuk, hogy a redundancát nem szabad károsnak tekinteni, mert segít a zajos környezet miatt elveszett információ visszaállításában. Így pl. ha elszórtan sajtóhibák vannak egy szövegben, a szövegkörnyezetb"l „ki tudjuk találni”, hogy melyik betü helyett áll valami más a szövegben s javítani is tudjuk. Ugyanez a helyzet a zajos helyiségben felében-harmadában hallott szövegekkel (bár ha tényleg csak a felét halljuk egy szövegnek, vagy még kevesebbet, akkor már nem igen lehet a hallottakból a hiányzó részeket „kitalálni”) Gyakorlati szempontból az volt Shannon elméletének [7] egyik legfontosabb következménye, hogy megmutatta, hogy a csatornazaj hatásainak „kivédése”
céljából nem célszer9 arra a redundanciára támaszkodnunk, amellyel többékevésbbé minden információforrás rendelkezik. Ugyanis az a gazdaságos, ha éppen olyan fajta redundanciát választunk, amelyik az adott csatorna zajhatásainak a semlegesítésére a leginkább alkalmas. (Err"l a kódolás ismertetése során majd sokkal b"vebben lesz szó.) A forrásinformációhoz „hozzákevert” redundáns információ megválasztásában tehát a közvetít" csatornának meghatározó szerepe kell, hogy legyen, s egyáltalán nem biztos, hogy egy véletlenszer9en kiválasztott forrás redundanciája éppen ilyen lesz. Ezért aztán Shannon azt javasolta, hogy el"ször egy u.n illeszt -kódolóval, el kell távolítani a forrás redundanciáját vagy, ha ez nem lehetséges, akkor az elérhet" legkisebbre kell azt csökkenteni, majd egy u.n csatorna-kódolóval az adott csatorna tulajdonságainak megfelel"en tervezett olyan célszer9 redundanciát
létrehozni, amely kezelni tudja az adott csatorna zaj-problémáit. Ezt az elvet a következ" ábra szemlélteti, (a hírközlési modellnek csak a forrás-oldali részét rajzoltuk fel, no meg a csatornát, amit –természetesen- nem valami elkülöníthet" zajforrás táplál): Forrás kódoló Forrás X (redundáns) szimbólumkészlet Csatorna kódoló Forráskód (minimális redundanciával) Csatorna Csatornakód (célszerû redundanciával) A vevõhöz Zaj forrás Ez az elrendezés feltétlenül javította az információátvitel min"ségét, de milyen árat kellett ezért fizetni? Korábban az adatátvitel min"ségi javításának a nagyobb távközlési teljesítmény és a kisebb adatátviteli sebesség volt az ára. FileNév: InfotechnikaÚjJegyzet3.doc - 43/184 - Utoljára módosítva: 2001-11-05 Az információelmélet eredményeinek alkalmazása óta mind az adó-oldali, mind a vev" oldali berendezések váltak sokkal
bonyolultabbakká, mint korábban voltak. Ezt a fejlettebb elektronikai technológia tette lehet"vé, de a berendezések komplexitásának növekedésével az áruk is megnövekedett. Az üzemeltetési költség nem, mert a fajlagos energiaigény és a karbantartási igény is lényegesen csökkent, a berendezések fizikai élettartama pedig megn"tt. A korábbinál jobb min"ség9 adatátvitelért azt az árat kellett megfizetnünk, hogy a végberendezések (és azok m9ködési algoritmusai) váltak a korábbinál sokkal komplexebbé. Az elmondott gondolatmenetb"l és az ábrából legalább két dolog következik: Az egyik az adó és a csatorna viszonyát abból a szempontból vizsgálja, hogy vajon a csatorna képes-e az adó által kiadott jeleket továbbítani. M9szaki szempontból ugyanis eléggé nyilvánvaló, hogy minden távközlési csatornának kell, hogy legyen valamilyen jel-átbocsájtási képessége. A Shannon-féle információelméleti entrópia,
mint mérték, segítségével mennyiségi mér"számot is rendelhetünk a hírközlési csatornának ehhez a tulajdonságához. Ez elvezet minket a csatorna átviteli képessége és sávszélessége kapcsolatához, amire ugyancsak Shannon adott meg összefüggést A másik dolog ugyancsak eléggé nyilvánvaló: egyetlen távközlési csatornán sem lehet több információt továbbítani, mint amennyire a csatorna képes, mint amennyit a csatorna átviteli képessége megenged. Ebb"l a két dologból Shannon alapcikkében egy definició és egy tétel következik: Az els"b"l a csatornakapacitás definiciója, a másodikból pedig egy tétel (vagy inkább egy korlát) a biztonsággal átvihet" információ mennyiségére. A következ"kben megkiséreljük ezeket spekulatív úton bevezetni ill. Shannon gondolatmenetét valamelyest interpretálni. El"ször is szóljunk a csatorna itt alkalmazott fogalmáról. A csatornakapacitást Shannon
tulajdonképpen empirikus módon definiálja s a „csatorna” mint olyan meglehet"sen elvonatkoztatott fogalom az elnevezéséb"l sejthet" fizikai megjelenését"l. A kétdimenziós valószín9ségi modellnél az adó kiad valamilyen információt, amelynek statisztikai szerkezetét vélhet"en ismerjük és az információelméleti jellemz"i is kiszámíthatók, vagy legalább is becsülhet"k a modell segítségével. Ennek az eseménynek a következményeként a vev" észlel valamilyen információt, amely nem feltétlenül azonos azzal, amit az adó elküldött. Az alábbi csatornakapacitás fogalmat Shannon lényegében úgy definiálja, hogy összeveti az adó által kibocsájtott s a vev" által észlelt információkat, pontosabban azok diszkrét valószín9ségi modelljeit18. Azért állítjuk, hogy empirikus fogalomként értelmezi, mert ezt az összevetést mérésként értelmezzük. Lényegében tehát egyáltalán nem
tör"dik azzal, hogy mi az a közeg, amelyen keresztül a kibocsájtott információ eljut a vev"ig s az egész folyamat id"viszonyaival sem. Ezért aztán az itt értelmezett „csatorna” akár egy digitális tárolóeszköz is lehet, amelyb"l a korábban beírt információt csak egy kés"bbi id"pontban olvassuk ki. 18 egyetlen kétdimenziós diszkrét valószín6ségi modellt használva FileNév: InfotechnikaÚjJegyzet3.doc - 44/184 - Utoljára módosítva: 2001-11-05 Ebb"l az empirikus, a „csatorna”, mint olyan fizikai megjelenését figyelembe nem vev" definicióból következik aztán olyasmi, hogy zajmentes csatorna esetén a relatív csatornakapacitás 100%-os, azaz az adó által kibocsájtott információ maradéktalanul eljut a vev"höz, bármennyi is az az információ. Nyilvánvaló, hogy az információközvetít" (vagy tároló) eszköz és környezete fizikai tulajdonságait figyelembe véve logikusan nem
juthatnánk ilyen következtetésre, mert mindíg léteznek fizikai korlátok. Ugyanakkor Shannon e csatornakapacitás fogalmának megvan az az el"nye (is), hogy az információtovábbító közeg és környezete fizikai tulajdonságaival külön képes foglalkozni. Vezessünk be tehát valamilyen mértéket a csatornakapacitás fogalmára! (Shannon is ezt tette a már sokszor hivatkozott alapcikkében.) A távközlési csatorna információ-átbocsájtási képességét megfogalmazhatjuk úgy is, hogy egy esemény bekövetkezésének tekintjük azt, amikor az adó egy szimbólumot bocsájt ki, és azt vizsgáljuk, hogy az ez által átlagosan hordozott információt vajon képes-e a csatorna továbbítani. Magyarán: a vonatkoztatási alap az említett esemény bekövetkezése. Shannon éppen erre fogalmazta meg a csatornakapacitás fogalmát. Szerinte a csatornakapacitás az az átlagos, maximális információmennyiség, amit a csatorna egy esemény bekövetkeztekor
továbbítani képes. Ennek a mennyiségi mértékére pedig nagyon jól felhasználható a tranzinformáció fogalma: C = max T(X;Y) [bit/esemény] Ez a csatornakapacitás Shannon által bevezetett fogalma és definiciója. A képletben T(X;Y) a tranzinformációt jelenti. Mivel T(X;Y) = H(X) – H(X|Y) ezért a csatornakapacitás C = max[H(X) – H(X|Y)] alakban is felírható. Úgy is mondhatjuk, hogy ez a definició feltételezi, hogy zajmentes esetben, a csatorna a forrás által leadott maximális információmennyiséget átviszi (bármennyi is legyen az), de a zaja „elrontja” ezt a jó tulajdonságát. Zajmentes csatorna esetén H(X|Y) = 0 tehát a csatornakapacitás C = max[H(X)] FileNév: InfotechnikaÚjJegyzet3.doc - 45/184 - Utoljára módosítva: 2001-11-05 A másik határesetben, vagyis amikor az adó és a vev" statisztikailag független H(X|Y) = H(X) tehát a csatornakapacitás C = max[H(X) – H(X)] = 0 mint ahogyan ekkor T(X;Y) =0 , vagyis
nincsen átvitt információ. A gyakorlatban a csatornán átvihet" maximális információnak a forráskódoló által kiadott redundancia-mentes jelet tekintjük, amikor már minden szimbólum maximális információt hordoz, tehát n szimbólum esetén C = max[H(X)] = -log 1/n = log n [bit/szimbólum] Az is fontos, hogy az ebben a fejezetben lerajzolt, a korábbinál részletesebb hírközl" modellben a forrás-kódoló „megszabadítja” a forrás els"dleges szimbólumait azok redundanciájától19. Ha most egy pillanatra eltekintünk attól, hogy a csatornakódolóval újabb, célszer9 redundanciát akarunk hozzáadni a forrás-információhoz, akkor a modellünk a következ" lesz: ADÓ Forrás Forrás kódoló VEVÕ Csatorna Redundancia mentes forrás információ Zaj forrás H(X) A komplex vevõhöz megérkezõ információ H(Y) Fontos, hogy sem az el"bbi „finomított” modellben, sem itt nem azért rajzoltuk be a „csatorna”
elnevezés9 blokkot mert annak fizikai lényegét akartuk ezzel szemléltetni,hanem csak azért, hogy valamilyen módon jelezni tudjuk, hogy oka van annak, hogy a vev" nem feltétlenül azt az információt észleli, amit az adó kibocsájtott. Ezt a modellt azért rajzoltuk fel, hogy szemléltessük, hogy a csatornakapacitás definiciójakor tulajdonképpen a redundanciamentes forrásentrópia és a komplex vev"höz megérkez" információ viszonyáról van szó, tehát a C = max[H(X) – H(X|Y)] definiciós képletben H(X) a redundanciamentes adó-oldali információt jelenti. 19 Feltéve, hogy tényleg sikerül a forrás-kódolóval minden redundanciájuktól „megszabadítani” az à priori forrás-szimbólumokat, ami bizony nem mindíg valósítható meg. FileNév: InfotechnikaÚjJegyzet3.doc - 46/184 - Utoljára módosítva: 2001-11-05 Végül megjegyezzük, hogy a csatornakapacitásra egy relatív jellemz"t is megadhatunk, ha a ténylegesen átvitt
információt (azaz a tranzinformációt) az otimális esetben átvihet" információ mennyiségére (azaz a forrásentrópiára) vonatkoztatjuk. Ezzel a relatív csatornakapacitás: c = 100. T(X,Y) / H(X) % Végül is a csatorna fizikai tulajdonságai szolgáltatják az okot arra, hogy a csatorna nem visz át minden információt, de Shannon a csatornakapacitást nem e fizikai tulajdonságokból vezeti le, hanem az adó és a vev" statisztikai kapcsolatából. (Ez mérhet", empirikus valami.) Ilyen értelemben mondhatjuk tehát, hogy a Shannon-féle csatornakapacitás-fogalom nincs közvetlen kapcsolatban a csatorna fizikai jellemz"ivel. FileNév: InfotechnikaÚjJegyzet3.doc - 47/184 217 Utoljára módosítva: 2001-11-05 A diszkrét valószín ség-eloszlások deduktív leírása, példák Az eddigiekben elmondott és bemutatott egydimenziós (és az ezt követ"en bemutatni kívánt kétdimenziós) eseményterek és minden, amit ezekkel kapcsolatban
elmondtunk és el fogunk mondani, a Shannon-féle hírközlési modellb"l indul ki. A diszkrét valószín9ségeloszlásoknak azonban volt ezt a modellt megel"z"en is deduktív leírásuk. Most ezt idézzük fel, hogy bemutassuk, hogy a dolog tökéletes analógiát mutat azzal, amit a Shannon-féle modellel kapcsolatban megmutattunk. Diszkrét valószín ségfüggvények és eloszlások Vizsgáljunk meg egy véletlen eseményhez tartozó E eseményteret. Ha egy véletlen esemény kimeneteleinek száma véges20, akkor diszkrét eseménytérr"l beszélünk. A diszkrét eseménytér eseményeihez egy X diszkrét valószín9ségi változót rendelünk hozzá, amely minden egyes kisérleti eredményhez (t.i egy-egy kisérlet lehetséges kimeneteleihez) egy-egy [x1, x2, . ,xk,] értéket rendel hozzá, azaz az X (diszkrét) valószín9ségi változó ezeket az értékeket, és csakis ezeket veheti fel, akkor egy f(X) diszkrét valószín9ség függvényt
definiálhatunk úgy, hogy f(xk) = P (X= xk) = pk ahol pk =1 (a szumma k-ra vonatkozik.) Kétdimenziós diszkrét eloszlások Az egydimenziós eseménytér, és az ahhoz rendelt valószín9ségi változó, valamint valószín9ségfüggvény fogalma többféleképpen is kiterjeszthet". Tekintsünk most egy olyan eseményteret, amelyhez két valószín9ségi változó (X és Y) tartozhat és ezek közül X rendre felveheti az [x1, x2, . ,xk,] értékeket, Y pedig rendre az [y1, y2, . ,yj,] értékeket a) Az egyik lehetséges kiterjesztés az, hogy az X és az Y valószín9ségi változók egymástól függetlenül felvehetik bármelyik lehetséges értéküket. Az ehhez a kiterjesztéshez tartozó valószín9ségfüggvény: f(xk, yj) = P(X= xk, Y= yj) = pk ,qj ahol a kétdimenziós f(x, y) valószín9ségfüggvény értékei a p ,q valószín9ségpárok. b) Lehetséges kiterjesztés az is, hogy megvizsgáljuk, hogy ha az Y valószín9ségi változó értéke valamely rögzített
Y= yj érték, akkor az X valószín9ségi változó 20 Ez és a következ5 megállapítások megszámlálhatóan véges elem6 eseménytérre is érvényesek, de az utóbbiakat –az egyszer6bb érthet5ség kedvéért- itt és a következ5kben nem említjük FileNév: InfotechnikaÚjJegyzet3.doc - 48/184 - Utoljára módosítva: 2001-11-05 milyen valószín9ségekkel veheti fel az x értékeket. Ilyenkor beszélünk a (most ismét egyváltozós) f(x yj) = P(X= x, Y= yj) = P(x yj) valószín9ségfüggvényr"l, ami az el"bbi egyik u.n vetületi valószín9ségfüggvénye Itt jelenik meg a korábban már bevezetett feltételes valószín9ség fogalma is. A definicióból nyilvánvaló kell, hogy legyen, hogy (pk yj) = 1 (ahol a szumma k-ra vonatkozik.) c) a harmadik lehetséges kiterjesztés az el"bbi párja, csak ekkor az X valószín9ségi változó értéke valamely rögzített X= xk érték és ekkor az egyváltozós valószín9ségfüggvény f(y xk) = P(Y=
y, X= xj) = P(y xk) és (qj xk) = 1 (ahol a szumma j-re vonatkozik.) Természetesen ez is vetületi valószín9ségfüggvény, mint az el"bbi és a feltételes valószín9ség fogalma itt is el"fordul. Vegyük észre, hogy a kétdimenziós, diszkrét eseményrendszerhez három újabb valószín9ség mátrix tartozik: 1) Az együttes el"fordulások valószín9ség-párjainak mátrixa, valamint 2) Az egyik valószín9ségi változó, mint rögzített feltétel melletti feltételes valószín9ségek mátrixa, továbbá 3) Ugyanez a másik valószín9ségi változóra, mint feltételre nézve. FileNév: InfotechnikaÚjJegyzet3.doc - 49/184 26 Utoljára módosítva: 2001-11-05 példa. Tekintsük két dobókocka ( X és Y) egyidej9 feldobását egyetlen eseménynek. Kérdés, hogy mi lesz annak az együttes valószín9sége, hogy az X kockával 3,4 vagy 5-öt dobunk, s ugyanakkor az Y kockával 2 vagy 3-at? X Y 1 2 3 4 5 6 1 1/36 1/36 1/36 1/36 1/36 1/36 1/6
2 1/36 1/36 1/36 1/36 1/36 1/36 1/6 3 1/36 1/36 1/36 1/36 1/36 1/36 1/6 4 1/36 1/36 1/36 1/36 1/36 1/36 1/6 5 1/36 1/36 1/36 1/36 1/36 1/36 1/6 6 1/36 1/36 1/36 1/36 1/36 1/36 1/6 1/6 1/6 1/6 1/6 1/6 1/6 A keresett megoldás (valószín9ség) 6/36 = 1/6 2.7 példa Egy zajos átviteli csatornával összekötött adó – vev" rendszer forrás ábécéje öt szimbólumot tartalmaz: A, B, C, D, E, A vev" oldal azonban csak négyet: a, b, c, d, A csatornazaj ellenére igaz pl. hogy egy „A” szimbólum adásakor a vev" csakis a „a” szimbólumot észlelheti, de a „a” szimbólum észlelését kiválthatja az is, ha az adó a „B” szimbólumot adja le. Természetesen ezeknek az eseményeknek különböz" valószín9ségei vannak. FileNév: InfotechnikaÚjJegyzet3.doc - 50/184 - Utoljára módosítva: 2001-11-05 Az egész kétdimenziós modell összefüggéseit (ennél az egyszerü példánál) egy kapcsolat-gráffal
szemléltethetjük, amelyben mindegyik élhez tartozik egy-egy valószín9ség: A a 0,25 0,1 B b 0,30 C 0,05 c 0,10 D 0,05 0,10 d 0 05 E A valószín9ségeket persze „tisztább” dolog egy mátrixban ábrázolni. Ebben mindjárt megadhatjuk a sorok és az oszlopok összegeit is, amelyekb"l a forrás- és a vev"oldali (az el"bb bevezetett fogalmakkal: vetületi) entrópiák kiszámolhatók: Az itt következ" mátrix az együttes eseményrendszer egy-egy eseménypárjának bekövetkezési valószín9ségeit tünteti fel, tehát ez az adott példa rendszerének együttes valószín9ségmátrixa, amelyb"l várhatóan meghatározható a H(X,Y) együttes entrópia. b c d 0 0 0 0,25 0 0 0,4 0 0,15 A A 0,25 B 0,10 0,30 C 0 0,05 0,10 D 0 0 0,05 0,10 0,15 E 0 0 0,05 0 Az A, B, C, D, E forrás-szimbólumok egyedi el5fordulási valószín6ségei 0,05 0,35 0,35 0,20 0,10 1,00 Az {a,b,c,d} vev5 oldali ábécé egyes betüinek
el5fordulási valószín6ségei Látható, hogy a valószín9ségi modell teljes, mert mind a forrásszimbólumok, mind a vev" oldali szimbólumok valószín9ségeinek összege 1. FileNév: InfotechnikaÚjJegyzet3.doc - 51/184 - Utoljára módosítva: 2001-11-05 A forrás-ábécé: {A, B, C, D, E}; Az ehhez tartozó (egydimenziós) valószín9ségi modell: {0,25; 0,4; 0,15; 0,05} és ezzel a forrásentrópia: H(X) = 0,25 x lg4 + 0,4 x lg2,5 + 2 x 0,15 x lg 1/0,15 + 0,05 x lg 20 = 0,150 + 0,159 + 0,247 + 0,065 = 0,621 Hartley = 2,06 bit/szimbólum A forrásentrópia elvi maximuma: H(X)max = log5 = 0,699 Hartley A forrás relatív redundanciája: rf = 100. (1 – H(X)/H(X)max) = 11,2 % Hasonlóan a vev"-oldali entrópia: H(Y) = 2 x 0,35 x log 1/0,35 + 0,20 x log 5 + 0,10 x log 10 = = 0,319 + 0,140 + 0,10 = 0,559 Hartley = 1,857 bit/szimbólum A vev" oldali entrópia elvi maximuma: H(Y)max = ld4 = 2 bit A vev" oldali redundancia pedig: rv = 100. (1 –
H(Y)/H(Y)max) = 7,15 % A teljes rendszer együttes entrópiája: H(X,Y) = 0,25 x lg4 + 0,10 x lg 10 + 0,30 x lg 3,33 + 0,05 x lg 20 + 0,10 x lg 10 + + 0,05 x lg 20 + 0,10 x lg 10 + 0,05 x lg 20 = = 3 x 0,05 x lg 20 + 3 x 0,10 x lg 10 + 0,31 x lg 3,33 + 0,25 x lg4 = = 0,15 x 1,301 + 0,30 x 1 + 0,31 x 0,523 + 0,25 x 0,602 = = 0,195 + 0,3 + 0,162 + 0,15 = 0,808 Hartley = 2,684 bit/betüpár A feltételes entrópiák többféle módon is kiszámíthtók, de a legegyszer9bb a fenti három entrópia birtokában az entrópiákra vonatkozó összefüggések alapján felírni azokat: H(X,Y) = H(Y X) + H(X) = 0,624 bit/betüpár H(Y X) = H(X,Y) – H(X) = 2,684 – 2,06 = (Érdemes a shannoni egyenl"tlenségeket ellen"rízni!) A feltételes entrópiák kiszámításának más módja az, hogy el"ször is megszerkesztjük a feltételes valószín9ségek mátrixait. Ezeknek olyannak kell lenniük, hogy az egyik mátrixban a soronkénti (feltételes) valószín9ségek értékeinek
1-et kell adnia –t.i soronként, a másik mátrixban pedig oszloponként ugyanennek a helyzetnek kell el"állnia. Ezek után soronként kiszámítjuk a kötött bemeneti feltételek (azaz a forrásoldali nagybetüs szimbólumok) soronkénti entrópiáit a másik mátrixból pedig ugyanezt megtesszük az oszlopokra. Nézzük el"ször, hogy mi a helyzet, ha a kötött feltétel a forrás-szimbólum: Ha az „A” betüt közvetíti a forrás akkor egészen biztos, hogy a vev" az „a” betüt észleli. P(a A) = 0,25/0,25 =1 az összes többi valószín6ség pedig 0 ebben a sorban FileNév: InfotechnikaÚjJegyzet3.doc - 52/184 - Utoljára módosítva: 2001-11-05 Ugyanezzel a logikával, ha a forrás a „B” betüt közvetíti: P(a A) = 0,1/0,4 és P(b A) = 0,3/0,4; az összes többi valószín6ség pedig 0 ebben a sorban A harmadik sorrra: P(b C) = 0,05/0,15 és P(c C) = 0,1/0,15; A negyedik sorra: P(c D) = 0,05/0,15 és P(d D) = 0,1/0,15; Az ötödik sorban (az
els" sorhoz hasonlóan) az egyetlen feltételes valószín9ség = 1 Ezekkel a kötött adó oldali feltételekhez tartozó feltételes valószín9ségmátrix és a soronkénti entrópiák a következ"k: Az egyes sorokhoz Az A, B, C, D, E forrástartozó feltételes szimbólumok egyedi entrópiák. el5fordulási valószín6ségei Pl. a harmadik sor második cellája b c d annak a valószín6a ségét jelöli, hogy A 1 0 0 0 0,25 0 ha tudjuk, hogy a forrás a C szimbóB 0,25 0,75 0 0 0,40 0,244 lumot adta le, akC 0 0,33 0,67 0 0,15 0,2764 kor 0,33 annak a valószín6sége, D 0 0 0,33 0,67 0,15 0,2764 hogy a vev5 a „b” E 0 0 1 0 0,05 0 szimbólumot észleli A jobboldali oszlopba írt (és itt Hartley-ben számított) soronkénti feltételes entrópiáknak természetesen a valószín9ségekkel súlyozott összegét kell átlagnak tekinteni, azaz (a 0 érték9 entrópiák sorait is kiírva) H(Y X) = 0,25 x 0 + 0,4 x 0,244 + 2 x 0,15 x 0,2764 + 0,05 x 0 = = 0,0976 + 0,0829 =
0,1805 Hartley/betüpár = 0,6 bit/betüpár Ez az eredmény jól közelíti az imént más módszerrel kapott eredményt. 0,624 bit/betüpár Ajánljuk, hogy e módszer párjával szerkessze meg az olvasó a kötött vev"-oldali szimbólumokhoz tartozó feltételes valószín9ségmátrixot és számítsa ki bel"le a H(X Y) feltételes entrópiát. Az entrópiák közötti összefüggésekb"l kiszámítható a tranzinformáció értéke is. FileNév: InfotechnikaÚjJegyzet3.doc - 53/184 - Utoljára módosítva: 2001-11-05 Tudjuk, hogy H ( X , Y ) = H ( X | Y ) + H (Y | X ) + T ( X ; Y ) Ebb"l pedig T (X,Y) = H(X,Y) – H(Y X) – H(X Y) = = 2,684 – 0,827 – 0,624 = 1,233 bit/betüpár Zajmentes csatorna esetén a forrásentrópiával lenne egyenl", azaz 2,062 bit/esemény lenne. Éppenséggel az utóbbira vonatkoztatva kiszámolhatunk egy hatásfokot is, amely a csatornakapacitás relatív értékeként is felfogható: c = 100. T(X,Y) / H(X) = 100
{1,233 / 2,062} = 59,79 % 2.18 Összefoglalás. 1948-ban megjelent alapcikkében Claude E. Shannon lefektette annak a tudománynak az alapjait, amit ma információelméletnek neveznek. Talán a legfontosabb fogalom, amelyet bevezetett az információelméleti entrópia fogalma volt, amely abból indult ki, hogy egy diszkrét forrás egy eseményének a bekövetkezése tulajdonképpen egy választást jelent a forrás véges eseményhalmazához tartozó, különböz" valószín9ség9 események között. Az esemény bekövetkeztér"l szóló információ a bekövetkezés valószín9ségének negatív logaritmusa és az események egymástól függetlenek. A forráshoz ilyen módon hozzárendelhet" egyedi információk átlaga a forrásentrópia. Egysége a logaritmus alapszámának megválasztásától függ. 2-es alapszám esetén az egység a bit (elemi döntés), 10-es alapszám esetén pedig a hartley. Az információ mennyiségi mértékének definiciójakor egyik
legfontosabb kikötés az volt, hogy kénytelenek vagyunk eltekinteni az információ szemantikai jelentését"l, mert máskülönben nem tudunk objektív vonatkoztatási alapot találni a definicióhoz.21 Valójában csaknem minden ma még e definicióval kapcsolatban fennálló bizonytalanságnak két oka van: El"ször is az, hogy mégis csak bele akarják keverni az információ szemantikáját, másodszor pedig az, hogy az entrópia fogalma legalább a nevében kapcsolódik a termodinamika második f"tételéhez, amelyhez egy csomó filozófiai következtetés is kapcsolódik, s e következtetéseket átviszik az információelméleti entrópiára is. Ebben a studiumban mi ragaszkodunk a shannoni definicióhoz, amely szerint elvonatkoztatunk a diszkrét forrás eseményeihez tartozó információk szemantikai tartalmától és az entrópia a diszkrét eseményrendszer egyedi információinak az átlaga (és mindíg pozitív). A shannoni információelméleti
entrópia axiomatikus módon is meghatározható. Eszerint az entrópiafüggvénynek a következ" négy kritériumot kell kielégítenie: 21 A diszkrét eseményhez rendelt valószín6ség a relatív gyakoriságok határesete, azaz feltétlenül kell egy vonatkoztatási alap, amihez képest ennek a gyakoriságnak a relatív számértékét meg tudjuk határozni. FileNév: InfotechnikaÚjJegyzet3.doc - 54/184 - Utoljára módosítva: 2001-11-05 1. Legyen a diszkrét eseményrendszer egyedi eseményeihez rendelhet" valószín9szín9ségek folytonos függvénye. 2. Legyen e függvénynek maximuma akkor, ha valamennyi valószín9ség azonos. (Ekkor a legkevésbé megjósolható a rendszer viselkedése s ezért állíthatjuk, hogy az entrópia a bizonytalanság mértéke.) 3. Legyen az entrópiafüggvény a valószín9ségek felcserélésére nézve invariáns, azaz szimmetrikus. 4. Legyen az entrópia additv, azaz a részesemények részinformációinak összege legyen
egyenl" az összetett esemény teljes információjával. E kritériumokat ugyan többféle függvény is kielégítheti, de közülük legegyszer9bb és legjobban kezelhet" a logaritmus függvény. Ezért aztán a Shannon-Wiener-féle információelméleti entrópia a valószín9ségek reciprokának logaritmikus függvénye. A diszkrét eseményrendszer egyedi eseményeit egymástól függetleneknek tekintettük, ezért együttes bekövetkezésükre érvényes a valószín9ségeik Bayes féle szorzási szabálya. Hangsúlyoztuk, hogy ez az un diszkrét valószín ségi modell csak egyfajta megközelítése a mindenkori forrásnak, ezért a segítségével számított információelméleti jellemz"k csak a tényleges jellemz"k egyfajta becslését jelentik. Az információelméleti jellemz"k ill. a mondott becslés „jósága” attól függ, hogy mennyire jó az éppen adott esetre a diszkrét valószín9ségi modell. (Említettük, hogy lingvisztikai
nyelveknél egyáltalán nem a legjobb.) A diszkrét forrásra bevezetett információelméleti jellemz"k kiterjeszthet"k egy információforrásból, mint adóból és egy információ-nyel"b"l, mint vev"b"l álló rendszerre is. Ezt a modellt kétdimenziós valószín ségi modellnek neveztük Az információ elküldéséb"l és fogadásából álló adó-vev" (vagy tároló – visszaolvasó) rendszert egy un. kétdimenziós valószín9ségi modell írja le Ez a modell semmit sem vezet le a tényleges információközl" csatorna fizikai jellemz"ib"l, hanem az egész folyamatot egyfajta kisérletnek, mérésnek tekinti, s ilyen értelemben empirikus fogalmakról van szó. Ezért is jutottunk pl arra az eredményre, hogy a zajmentes csatorna a teljes forrás-információt átviszi, bármennyi is legyen az. Érdemes arra is odafigyelni, hogy ebben a modellben az id"vel sem számoltunk, tehát el" sem került pl. az
id"egység alatt átvitt, vagy átvihet" információ fogalma FileNév: InfotechnikaÚjJegyzet3.doc - 55/184 - Utoljára módosítva: 2001-11-05 A vev" oldalon is ugyanúgy egy véges eseményhalmazból való választásnak tekintettük egy hír fogadását, mint korábban a forrás oldalán egy esemény bekövetkezését. Értelemszerüen ennek megfelel"en definiáltuk a vev" oldali H(Y) entrópiát is.22 Az adó és a vev" oldalt együttesen vizsgáló kétdimenziós valószín9ségi modellt két, egydimenziós rendszer (mint halmazok) direkt szorzatából származtattuk. Ezért is lehetett aztán az entrópiafogalmak összefüggéseit halmazokkal való analógiájuk alapján érthet"bbé tenni. A szorzathalmazt mátrixként felfogva háromféle mátrixot is kaptunk: 1. Az els" i,j index9 helyén (azaz az i-edik sor és a j-edik oszlop metszéspontjában) az adó és a vev" oldali xi ill yj szimbólumok együttes
el"fordulásának pi . qj valószín9ségét írtuk be Ez az együttes el"fordulások valószín9ségmátrixa, amelyre egyrészt igaz, hogy a beírt valamennyi szorzat valószín9ség összege 1, másrészt ebb"l a (teljes) valószín9ségi modellb"l származtattuk a kétdimenziós rendszer együttes H(X,Y) entrópiáját. 2. Ha rögzített feltételként kikötjük, hogy az adó oldal az xi szimbólumot bocsájtja ki, akkor –az átvitel bizonytalansága miatt- a vev" oldalon több, különböz" yj szimbólumot is észlelhetünk véges, nem zérus valószín9séggel. Ezek a P(yj|xi) feltételes valószín9ségek. Az bizonyos, hogy xi adó oldali kibocsájtása esetén csakis a vev" oldali ábécé elemei közül valamelyik yj szimbólumot észlelhetjük, s ebb"l az következik, hogy a P(yj|xi) feltételes valószín9ségek mátrixában minden egyes sor valószín9ség-összege 1. (tehát soronként 1) Végigfuttatva az i indexet valamennyi
soron a „szokásos” módon definiálhatjuk a H(Y|X) feltételes entrópiát. Ezt a feltételes entrópiát egyébként ekvivokációnak (= egybehangzás) is hívják s a titkosítás kapcsán lesz jelent"sége. 3. Az el"bbivel teljesen analóg módon vizsgálhatjuk azt is, hogy ha a vev" oldalán éppen az yj szimbólumot észleltük (azaz most yj a rögzített feltétel), akkor mi a valószín9sége annak, hogy ezt valamelyik xi szimbólum adó oldali kibocsájtásának a hatására tettük. Így most a mátrix sorai és oszlopai metszéspontjaiba a P(xi|yj) feltételes valószín9ségeket írjuk be és most minden egyes oszlopra igaz, hogy az abba írt valószín9ségek összege 1. Ennek a feltételes valószín9ségi mátrixnak a segítségével definiálhatjuk a H(X|Y) feltételes entrópiát A két feltételes entrópia nem azonos s ez talán a halmazok grafikus ábrázolásai alapján a legszembet9n"bb. 22 Az egész gondolatmenetben van (legalább) egy
hallgatólagos feltételezés. nevezetesen az, hogy valahányszor bekövetkezik egy esemény az adó oldalon, bekövetkezik egy a vev5 oldalán is. A vev5 tehát valamiképp értesül az adó oldali esemény bekövetkeztér5l. Ez történhet pl az adó eés a vev5 szinkronizálásával is, de történhet más, aszinkron módon is. Ezek azonban olyan technikai kérdések, amelyekkel itt nem foglalkozunk. FileNév: InfotechnikaÚjJegyzet3.doc - 56/184 - Utoljára módosítva: 2001-11-05 A forrás- és a vev"-oldali entrópiákhoz tehát még hozzájött a kétdimenziós valószín9ségi modell két feltételes entrópiája, valamint az együttes entrópia. Ez összesen ötféle entrópia. Kiegészült végül ez a kör a tranzinformációval is, amely szintén a kétdimenziós modellhez rendelhet", entrópia jelleg9 mennyiség és a ténylegesen átvitt információ mennyiségét jellemzi. Bizonyítás nélkül megjegyezzük, hogy az információelméleti entrópiák a
diszkrét valószín9ségi modell alapján voltak definiálhatók. Folytonos esetekre nem értelmezhet"k, mert folytonos valószín9ség-eloszlásoknál a valószín9ség-sür9ségfüggvényekkel kellene számolni és azok 1-nél nagyobb ordinátái miatt negatív entrópia-értékeket is kaphatnánk, amelyek nem értelmezhet"k A tranzinformáció kivétel, mert folytonos esetben is mindíg pozitív az értéke. FileNév: InfotechnikaÚjJegyzet3.doc - 57/184 - Utoljára módosítva: 2001-11-05 3 Ebben a fejezetben el"ször a forráskódokról szólunk, majd az információelméleti bevezet" gondolatmenetét folytatva az ott már említett illeszt" kódolásról lesz szó, amely elvezet bennünket a tömörítések témaköréhez is. A kódoláshoz tartozik az un. hibavédelmi kódolás is, de ezt külön, a 4 fejezetben tárgyaljuk majd. Ugyancsak külön fejezetben foglalkozunk a tömörítési eljárásokkal is. (5 fejezet) 3.1 A forráskód Szóltunk
már arról, hogy az információt el"állító forrás egy esemény bekövetkeztér"l egy szimbólum kibocsájtásával ad hírt. Gyakran eleve valamilyen kódolt formában történik ennek az információnak a kibocsájtása. FORRÁS FORRÁS KÓDOLÓ A forráskódot az információforrás jellegének, természetének, vagy az adott alkalmazásnak leginkább megfelel"en szokták megválasztani. 3.11 Numerikus források kimeneti kódjai A digitális (és legtöbbször bináris) mérés és jelfeldolgozás esetén a m9szerek kimen"jelei tulajdonképpen decimális karakterek, de binárisan kódolva. A korai számítógépekben is alkalmaztak decimális aritmetikákat, amelyek un. binárisan kódolt decimális számjegyekkel dolgoztak. A decimális számjegyek bináris kódolásához négy bit több, mint elegend", de három bit kevés lenne. A négybites bináris kombinációkból összesen 16 féle létezik Az un binárisan kódolt decimális rendszerek
ebb"l a 16 féle kombinációból választanak ki tizet és rendelik hozzá a decimális számjegyeket. A redundáns kód miatt többféle FileNév: InfotechnikaÚjJegyzet3.doc - 58/184 - Utoljára módosítva: 2001-11-05 hozzárendelés is lehetséges. Ezek közül mutatunk be néhányat a következ" táblázatban: inde x bináris kombiná ció Súlyozott kódok (a hozzárendelt decimális számjegyek) nem súlyozott kód NBCD 4,2,2,1 8,4,(-2),(-1)) 3 többletes 0 0000 0 0 0 - 1 0001 1 1 - - 2 0010 2 2 - - 3 0011 3 3 - 0 4 0100 4 - 4 1 5 0101 5 - 3 2 6 0110 6 4 2 3 7 0111 7 - 1 4 Az önkomplementálás tükröz vonala 8 1000 8 - 8 5 9 1001 9 5 7 6 10 1010 - - 6 7 11 1011 - - 5 8 12 1100 - 6 - 9 13 1101 - 7 - - 14 1110 - 8 - - 15 1111 - 9 9 - Ezeket közös néven binárisab kódolt decimális kódrendszereknek nevezzük, röviden BCD kódoknak. A táblázatnak a
decimális hozzárendeléseket tartalmazó (utolsó négy) oszlopa közül az els" háromban un. súlyozott BCD kódok vannak, amelyeknél a négybites kódszó (=tetrád) mindegyik bináris helyéhez valamilyen helyiérték van hozzárendelve. Az els" az un. NBCD (=Normál BCD) kód, amelynél ezek a helyiértékek rendre 8,4,2 és 1, ahogyan a „normál” bináris számoknál is el"fordulnak. A második oszlopban az un. Aiken kód egy változta van feltüntetve, amelynél a helyiértékekhez rendelt súlyok rendre 4,2, ismét 2 és végül 1. Az ismétl"d" 2-es súlyok miatt a decimális jegyek hozzárendelésének többféle variációja is lehetséges. FileNév: InfotechnikaÚjJegyzet3.doc - 59/184 - Utoljára módosítva: 2001-11-05 Az itt megadott hozzárendelést úgy konstruálták meg, hogy ha egy decimális jegyhez tartozó tetrádban a jegyeket komplementáljuk (= az 1-esek helyett 0-kat írunk és fordítva) akkor éppen a decimális szám
9-es komplemenséhez tartozó kódot kapjuk meg. Az ilyen tulajdonságú kódot önkomplementáló BCD kódnak nevezik és els"sorban a korai számítógépekbe épített decimális aritmetikáknál volt jelent"ségük. A hozzárendelések harmadik oszlopában egy érdekes súlyozott kód van, amelynek a két utolsó helyiértékéhez negatív súlyok tartoznak. ez is önkomplementáló kód és ennek is többféle hozzárendelése lehetséges az adott súlyozás mellett is. Az utolsó oszlopban egy nem súlyozott BCD kódot, az un. 3 többletes (three excess) kódot tüntettük fel. Ez is önkomplementáló kód Mind a négy megadott BCD kód redundáns, mert a 16 lehetséges tetrád közül csak tizet használ a kódszókészletben. A „maradék” hat kombinációt vagy nem értelmezik az adott alkalmazásban, vagy más –pl. el"jel- információkat, hibajelzést stb rendelnek hozzájuk. A BCD kódok közül meg kell még említeni egy gyakran használt ötbites
kódot is, az un. kett az ötb l kódot Az ötbites bináris kódszavak közül a kombinatorika szabályai szerint öt alatt a kett" (=10) olyan kombináció választható ki, amelyben 2-2 db 1-es fordul el".23 Ehhez a 10 kombinációhoz tetsz"leges sorrendben hozzárendelhet" a 10 decimális számjegy és ez is egy BCD kód lesz. El"nye az egyszerü dekódolhatóság, de ezzel itt nem foglalkozunk. 3.12 Pozició-kódolás Lineáris elmozdulások, vagy szögpozició érzékelése és kódolása gykran el"forduló feladat. Ennek egyik módja egy sötét és átlátszó csíkokkal ellátott sáv átvilágítása és az áthaladó, vagy nem áthaladó fény érzékelése. Az elmozdulási irány egyidej9 érzékelése mellett oda- vagy visszafelé számlálni kell az érzékel"b"l nyert impulzusokat s így (valamilyen kezdeti, referencia-pozicióra vonatkoztatva) meghatározható az aktuális szög- vagy elmozdulás-pozició. Ez a fajta megoldás nem
is tartozik a kódolás körébe. Más a helyzet, ha a mindenkori poziciót abszolut értékben (azaz nem számlálással) kell meghatározni. Vizsgáljuk meg pl azt, amikor egyetlen decimális jegyet pl NBCD kóddal ellátott ilyen átvilágításos módszerrel kell érzékelni. (Az elv ugyanaz akár lineáris elmozdulás, akár szögpozició érzékelésér"l van szó.) 23 Egy tetsz5leges hosszúságú kódszóban lév5 1-esek számát a kódszó súlyának nevezzük. Err5l kés5bb, a hibavédelmi kódolás kapcsán b5vebben is szólunk majd. FileNév: InfotechnikaÚjJegyzet3.doc - 60/184 - Utoljára módosítva: 2001-11-05 Az egyetlen decimális számjegyhez tartozó pozicióérzékel" transzparens csík egy része sávonként egy-egy fényérzékel"vel és az ábrán fel nem tüntetett leolvasófénysávval 0 1 2 3 45 6 78 9 a b A leolvasó vonal két, szomszédos poziciója Fényérzékelõk Jól látható, hogy az egyszer9 NBCD kód alkalmazásakor egy
decimális jegyhez tartozó sávon több olyan szomszédos leolvasási pozició is található, amelyek közötti átmenetkor több fényérzékel"nek kell(ene) pontosan egyszerre jelet váltania. Ilyen a példaként berajzolt „a” és „b” pozició is, ahol ezen az egyetlen BCD sávon négy érzékel"nek kellene egyszerre jelet váltania, ami gyakorlatilag több okból sem kivitelezhet"). Elég ha az érzékel"k valószín9leg különböz" komparálási szintjeit említjük) Ezért pozició-érzékelésnél szívesen alkalmaznak olyan kódokat, amelyek két szomszédos pozición csak egyetlen bitben különböznek. (Ezek a kódok nem csak BCD kódok lehetnek.) Ilyenek az un Gray kódok Példaként megadunk egy Gray kóddal szerkesztett BCD kódsávot: elsõ dekád 2. dekád a b A leolvasó vonal két, szomszédos poziciója Fényérzékelõk A páros dekádok a páratlanok tükörképei azért, hogy a következ" (szomszédos) tizedesjegy úgy
változhasson a dekádváltáskor, hogy az egész leolvasóvonal mentén csak egyetlen érzékel" jelváltása következzék be. Ugyanilyen tulajdonságú Gray kód többféle fekete-fehér mez"kiosztással is szerkeszthet". FileNév: InfotechnikaÚjJegyzet3.doc - 61/184 - Utoljára módosítva: 2001-11-05 3.13 Karakter kódok 3.2 Az illeszt kódolás Az információelméleti részben elmondottakból kit9nik, hogy az információ „természetes” forrása általában nem mentes a redundanciától, de láttuk azt is, hogy a redundancia hasznos lehet a jobb érthet"ség el"segítésében, a közvetítés során keletkez" hibák felfedezésében és kijavításában. Redundanciára tehát sok esetben szükség van, de naivitás lenne azt hinni, hogy az információforrás „természetes” redundanciája (mint amilyen pl. egy természetes nyelv esetén az egyes hangzók statisztikai megoszlásából, gyakoriságából származó redundancia) a
hibák felismerése és javítása szempontjából a legkedvez bb.24 Ezért szükség van valami olyan eljárásra, ami a forrás à priori redundanciáját minimálisra (optimális esetben nullára) csökkenti. Ezt az eljárást a céljától függ"en illeszt kódolásnak vagy –más esetekben- tömörítésnek nevezzük.25 Ha az információt valamilyen csatorna optimális kihasználásával úgy szándékozunk továbbítani, hogy az információ a hibavédelem szempontjainak leginkább megfelel" redundanciával rendelkezzék, akkor az illeszt" kódolást követ"en szükség van még egy un. hibavédelmi kódolásra is Blokkvázlaton ez a következ"képp néz ki: 24 Persze minden ilyen kijelentés viszonylagos. A ma szokásos hírközl5 csatornák nyújtotta környezetben igaz a kijelentés, de lehetséges, hogy a lingvisztikai nyelvek spontán kifejl5désekor meghatározó volt az a környezeti zaj, amely érthet5ség-rontó hatását éppen az a
„természetesnek” nevezett redundancia kompenzálja, ami a lingvisztikai nyelvekben megtalálható. Az mindenesetre biztos, hogy a betüknek megfelel5 hangok egymásutánját befolyásolta az érthet5ség igénye. 25 Itt és most történetesen olyan tömörítésr5l van szó, amely nem okoz információveszteséget. Az ilyen tömörítési eljárást –mily meglep5- veszteség nélküli tömörítésnek nevezik, de ismeretesek veszteséges tömörítési eljárások is. Mindezekr5l kés5bb, a tömörítési eljárások tárgyalásakor szólunk majd. FileNév: InfotechnikaÚjJegyzet3.doc - 62/184 - ILLESZT1 KÓDOLÓ INFORMÁCIÓ FORRÁS Utoljára módosítva: 2001-11-05 HIBAVÉDELMI KÓDOLÓ Csatorna r=0 vagy min. r>0 TÖMÖRÍT1 r>0 Tárolás, vagy továbbítás r=0 vagy min. Az illeszt" kódoló és a tömörít" szerepe nagyon hasonló. Mégis indokolt ezeket külön-külön tárgyalni, mert az illeszt" kódoló esetében csak
minimalizálni, vagy, ideális esetben, nullára csökkenteni akarjuk a redundanciát, a tömörítés esetében pedig nemcsak err"l lehet szó, hanem esetenként megengedünk valamennyi információvesztést is. Látni fogjuk azonban, hogy sok tömörítési eljárás megegyezik azokkal, amelyeket az illeszt" kódolás kapcsán bemutatunk. Fontos, hogy az illeszt kódolás mindíg tömörítést is jelent s –legalább is a veszteség nélküli tömörítések esetén- lényegében mindíg illeszt kódolásról van szó. Mind a hibavédelmi kódolással, mind a tömörítési eljárásokkal majd kés"bb foglalkozunk. (Ti a 4 és az 5 fejezetekben) A teljesség kedvéért meg kell jegyezni, hogy az illeszt" kódolással (vagy a tömörítéssel) el"állított információt sok esetben még egy „kezelésnek” vetik alá, amikor is titkosítják, azaz igyekeznek megakadályozni, hogy a címzetten kívül bárki más képes legyen kibogozni annak a tartalmát.
Ezt egyel"re nem tüntettük fel a fenti blokkvázlaton, de kés"bb külön fejezetben foglakozunk vele (A 6 – 8 fejezetekben) Az illeszt" kódolás optimalizálásának alapötletét Shannon fogalmazta meg s egy munkatársával együtt eljárást is dolgoztak ki arra, hogy hogyan lehet olyan változó szóhosszúságú (bináris) kódot szerkeszteni, amely lényegesen csökkenti a forráskód redundanciáját. Ezt az eljárást nevezik Shannon-Fano féle kódolásnak A Shannon-Fano kódolás azonban nem minden esetben vezet optimális eredményre, ezért kés"bb Huffmann tökéletesítette az eljárást úgy, hogy a Shannon-Fano féle alapelveket változatlanul hagyta, de az övékénél jobban m9köd" algoritmust dolgozott ki. Ezt a Huffman kód néven ismert eljárást –ill továbbfejlesztett változataitalkalmazza ma is sok tömörítési módszer Mind a Shannon-Fano féle kódolás, mind a Huffmann algoritmus könnyebben érthet", ha példák
segítségével mutatjuk be azokat. Ezt tesszük a következ"kben FileNév: InfotechnikaÚjJegyzet3.doc - 63/184 33 Utoljára módosítva: 2001-11-05 A Shannon-Fano féle illeszt kódolás A Shannon-Fano féle algoritmus a következ" elvekre épül: 1) A forrásszimbólumokhoz változó hosszúságú (bináris) kódszavakat rendel. 2) A kódnak irreducibilisnak (azaz egyértelm&en megfejthet nek, szeparábilisnak) kell lennie akkor is, ha a kódszavakat semmilyen megkülönböztet jel nem választja el egymástól. 3) Az irreducibilitás feltétele az, hogy ne legyen a kódszókészletben olyan kódszó, amely egy másik kódszónak prefixuma. (Az ilyen kódokat némely szakirodalom prefix kódoknak nevezi.) 4) A nagyobb gyakorisággal el forduló forrásszimbólumokhoz rövidebb kódszavakat rendel hozzá, mint a ritkábban el fordulókhoz. Ezeknek az elvnek a megvalósítása a Shannon-Fano algoritmus lényege, de a Huffman algoritmus is ugyanezeket az
elveket alkalmazza.26 A Shannon-Fano (változó szóhosszúságú) kód alapelvei között ugyan nincs kimondva, hogy minden forrásszimbólumhoz más-más hosszúságú kódszónak kell tartoznia, de az SF algoritmus minden implementációja ilyen kódra vezet. Nagyon könny9 az SF stratégiát megvalósítani akkor, ha a forrásszimbólumok relatív gyakoriságai 2-nek negatív egész hatványai. A Shannon-Fano (=SF) kódolási eljárás alapelvei nem mondják ki, hogy a választandó, változó szóhosszúságú kódban nem lehet két, azonos hosszúságú kódszó, de az SF algoritmus mégis alkalmazza ezt az elvet, pedig tényleg nincs rá szükség. Az alább sokkal részletesebben tárgyalandó Huffman algoritmusnál –mint látni fogjukaz egyik alapelv az, hogy mindíg van benne két olyan kódszó, amelyek azonos hoszszúságúak és csak a legutolsó bitjeikben különböznek. Azt is mondhatjuk, hogy a Huffman algoritmus lényegében pontosan azokra az elvekre épül"
változó szóhoszszúságú kódot generál, mint az SF algoritmus, s csak abban különbözik az SF algoritmustól, hogy a két leghosszabb kódszava azonos hosszúságú. 26 A kód egyértelm6 megfejthet5ségét annyira magától értet5d5 feltételnek tekintik, hogy sokszor nem is sorolják fel az itt leírt négy feltétel között. Így csak két alapfeltétel marad (ti az els5 és a negyedik) de még ezeket is egyetlen feltételként lehet megfogalmazni. Ilyen értelmezésben a Shannon-Fano féle változó szóhosszúságú (és triviálisan egyértelm6en visszafejthet5) kódolásnak csak egy alapfeltétele van. Látni fogjuk, hogy ehhez a Huffman féle, ugyancsak változó szóhosszúságú és egyértelm6en visszafejthet5 kódolási eljárásnál még egy alapfeltétel járul majd FileNév: InfotechnikaÚjJegyzet3.doc - 64/184 - Utoljára módosítva: 2001-11-05 3.1 példa Adott egy négyelem9 forrás-ábécé: {A, B , C, D} ahol az egyes betük el"fordulásának
relatív gyakoriságai rendre a következ"k: p(A) = ½ p(B) = ¼ p(C) = p p(D) = p A valószín9ségi modell teljes, mert a relatív gyakoriságok ( ill. itt már azok határeseteit, vagyis a valószín9ségeket jelöltük) összege 1 Ha az „A” betühöz a „0” kódszót rendeljük hozzá, akkor az összes többi kódszónak nem szabad 0-val kezd"dnie, azaz minden más kószó 1-gyel kezd"dik. Rendeljük „B”-hez az „10” kódszót. Ekkor a „C” és a „D” betükhöz rendelt kódszavak csakis „11”-gyel kezd"dhetnek27 és a teljes hozzárendelés (a valószín9ségeket is feltüntetve) a következ": X p(X) a kód l =a kód hossza A ½ 0 1 B ¼ 10 2 C p 110 3 D p 111 3 1 28 A forrásentrópia: H(X) = ½ x ld2 + ¼ x ld4 + 2 x p x ld8 = ½ + ¼ x 2 + ¼ x 3 = ½ +½ + ¾ = = 1,75 bit/betü 27 Szigorúan véve a példamegoldásban nem Shannon-Fano (SF) kódot adtunk meg, mert az SF kódolásnál minden
forrásszimbólumhoz más-más hosszúságó kódszó tertozik, így itt pl. A D szimbólumhoz az 1110 kódot kellett volna hozzárendelni, de ekkor a kód hatásfoka nem lenne 100%os Látni fogjuk mindjárt, hogy csak a Huffman féle kódolásnál lép be az a feltétel, hogy a két legkisebb gyakoriságú forrásszimbólumhoz azonos hosszúságú kódszót kell hozzárendelni 28 A kódkiosztási algoritmust a Shannon Fano módszer eredetileg úgy fogalmazza meg, hogy el5ször is kioszt egy kódot (pl. a 0-át) egy forrásszimbólumhoz és a „másik”, ki nem osztott kódot használja az összes többi kódszó prefixumaként. Az eljárást úgy folytatja, hogy a soronkövetkez5 szimbólom esetén ehhez a prefixumhoz hozzáír egy 0-át és az 1 essel kiegészített prefixumot alkalmazza az összes többi kódszó prefixumaként. Ezzel az algoritmussal olyan kódszókészletet kapunk, amelyben nincs két azonos hosszúságú kódszó. A példában a C és a D szimbólumokhoz
–egyébként logikusan- azonosan 3-3 bites kódszavakat rendeltünk hozzá Alapértelmezés szerint ezért ez szigorúan véve nem is ShannonFano kód (hanem Huffman kód, mint kés5bb látni fogjuk) FileNév: InfotechnikaÚjJegyzet3.doc - 65/184 - Utoljára módosítva: 2001-11-05 A bináris kódszavak átlagos szóhosszúságának a kiszámításához az egyes kódszavak hosszát kell szorozni az el"fordulási valószín9ségükkel, azaz l = 1 x ½ + 2 x ¼ + 2 x 3 x p = 1,75 bit/kódszó vagyis ugyanannyi, mint a forrás entrópiája. Ez a kódválasztás tehát redundanciamentes csatornakódot eredményezett A kódolás hatásfoka: e = 100 x H(X)/ l % az adott esetben 100 %. Érdekesen szemlélteti a példa megoldását, ha az alábbi gráfot rajzoljuk meg hozzá: 0 Jobbról balra haladva e fa-tipusú gráfban a csomópontokba beírt valószín6ségek összegez5dnek abban a csomópontban amalyben az élek összefutnak. 1/2 A 10 1 1/4 Ez a szerkesztési elv
nyilván ehhez hasonló módon akkor is alkalmazható, ha egy-egy csomópontból (jobbfelé) nem mindíg csak két él fut ki, azaz nem bináris kódoknál. B 1 110 1/2 1/8 C 11 1/4 111 1/8 D A gráf azt is megmutatja, hogy a (változó hoszszúságú) kódszavakat hogyan kell kiosztani. Mint az el5z5 oldalon megjegyeztük a C és a D szimbólumokhoz rendelt azonos hosszúságú kódszavak miatt tulajdonképpen nem ShannonFano kódról, hanem annak egy továbbfejlesztett változatáról van szó, amit Huffman kódnak neveznek, a bemutatott bináris fát pedig Huffman fának. Miel"tt kiaknáznánk ennek a fajta ábrázolásnak a gyakorlati el"nyeit, vizsgáljuk meg az alábbit is, amely azon alapul, hogy a teljes valószín9ségi teret felosztjuk annyi részre, ahány forrássszimbólumunk van és minden egyes forrásszimbólumhoz akkora térrészt rendelünk hozzá, amennyi az adott szimbólum valószín9sége. Tegyük ezt meg a fenti példával kapcsolatban: A
valószín6ségi mez5 felosztására ugyan igen szemléletes módszert ad ez az ábrázolás (amely nyilván akkor is jól alkalmazható, ha a valószín6ségek 2-nek nem egész hatványai) de a kódok kiosztásához kevesebb segítséget nyújt, mint az el5bbi gráf. B 1/4 A 1/2 C D 1/8 1/8 FileNév: InfotechnikaÚjJegyzet3.doc - 66/184 - Utoljára módosítva: 2001-11-05 Akármelyik szemléltetésre érvényes az, hogy azok nagyon jól alkalmazhatók, ha a valószín9ségeket kifejez" törtek nevez"iben 2-nek egész hatványa fordul el", mert (változó hosszúságú) bináris kódokat alkalmaztunk, s ezek azok, amelyek a 2-es számrendszerhez jól illeszkednek. Ha a bináris kódok helyett pl. olyan kódot alkalmaznánk, amelyikben 3 szimbólum van megengedve, akkor azokhoz a valószín9ségekhez illeszkedne jól ez a stratégia, amelyek nevez"iben f"leg 3 egész hatványai fordulnának el", és így tovább. Mindazonáltal egy csomó kérdést
nyitva hagy. (Pl mi a helyzet egy ötbetüs ábécénél, ahol a valószín9ségek rendre: 0,25; 0,25; 0,25; 0,125; 0,125; ?) A további heurisztikus megközelítés helyett azonban jobb, ha a már kidolgozott szisztematikus módszerek közül ismertetjük a leginkább praktikus algoritmusokat. Els"ként az un Shannon-Fano algoritmus egy egyszerüsített változatát 3.3 A Shannon-Fano féle algoritmus Lényegében a valószín9ségi mez"nek a fentiekhez hasonló felosztására és a változó szóhosszúságú (bináris) kódszavak kiosztására ad alkalmas stratégiát. Azzal kezdi, hogy a forrászimbólumokat azok valószín9ségeinek monoton csökken" sorrendjében írja fel egy táblázatban a valószín9ségeikkel együtt. A valószín9ségek e rendezett halmazát aztán úgy kell két részhalmazra osztani, hogy mindegyikben minél közelebb legyen egymáshoz a két részhalmaz valószín9ségeinek összege. Ezt a módszert kell aztán a részhalmazokra is
követni mindaddig, ameddig a részhalmazoknak csak egy-egy eleme nem lesz. Ebb"l a felosztásból aztán felrajzolható az el"z"ekben bemutatott bináris fa és kioszthatók a kódok is Egyszer9bb az eljárást egy példán követni, mintsem anélkül elmagyarázni. 3.2 példa Legyen az adott forrásnak négybetüs ábécéje, amelyben az egyes szimbólumok ill. a hozzájuk tartozó valószín9ségek rendre: A ÷ 0,4; B ÷ 0,1; K ÷ 0,2; S ÷ 0,3 Szerkesszük meg a mondott táblázatot: X p(X) 1.osztás A 0,4 0,4 S 0,3 K 0,2 B 0,1 2.osztás 3.osztás 0,3 0,6 0,3 Az ehhez tartozó bináris fa és a kód-kiosztás a következ": 0,2 0,1 FileNév: InfotechnikaÚjJegyzet3.doc - 67/184 - Utoljára módosítva: 2001-11-05 0 0,4 A A valószín9ségi mez" felosztása pedig az alábbi: 10 1 0,3 S 1 110 0,6 0,2 K 11 A; 0,4 0,3 111 0,1 B S; 0,3 K; 0,2 B; 0,1 A kód a bináris fáról leolvasható. A forrásentrópia: H(X) = 0,4 x lg
2,5 - 0,3 lg 0,3 + 0,2 x lg 5 + 0,1 x lg 10 = = 0,159 + 0,157 + 0,1398 + 0,1 = 0,556 hartley = 1,846 bit/ szimbólum. Tekintettel arra, hogy a forrás négyféle szimbólumot bocsájt ki a forrásentrópia maximuma 2 bit/szimbólum lehetne. Ezért a forrás hatásfoka ef =100 x 1,846/2 = 92,32 % A relatív redundancia pedig: rf = 1 – ef = 7,68 % Az átlagos kódhosszúság: l = 0,4 x 1 + 0,3 x 2 + 0,2 x 3 + 0,1 x 3 = = 0,4 + 0,6 + 0,6 + 0,3 = 1,9 bit/kódszó Ez természetesen nem lehet kisebb, mint a forrásentrópia. Csak optimális esetben (t.i amikor a valószín9ségek reciprokai 2-nek egész hatványai) lehetne a forrásentrópiával egyenl" Ennek az illeszt" kódolásnak a hatásfoka: ek = 100 x 1,846/1,9 = 97,16% (Figyeljük meg, hogy jobb, mint a forrás hatásfoka) Az illeszt"-kódolás után még megmaradó redundancia pedig: rk = 1 – ek = 2,84 % Jóllehet a forrásnak eleve meglehet"sen kicsi volt a redundanciája (mindösze 7,68 %) az illeszt"
kódolás lecsökkentette ezt az értéket 2,84 %-ra. FileNév: InfotechnikaÚjJegyzet3.doc - 68/184 - Utoljára módosítva: 2001-11-05 A számításaink hihet"ségének „szemrevételezéséhez” tartozik, hogy az illeszt" kódolásnak mindenképpen csökkentenie kell a forrás redundanciáját, de nullára csak akkor csökkentheti, ha a forráshoz tartozó diszkrét valószín9ségi modellben a valószín9ségek reciprokai 2-nek egész hatványai. 3.3 példa Egy diszkrét forrás ábécéje és az ábécé betüihez tartozó valószín9ségek (az utóbbiak csökken" sorrendjében) a következ"k: x1 : 0,2500 x5 : 0,0625 x2 : 0,2500 x6 : 0,0625 x3 : 0,1250 x7 : 0,0625 x4 : 0,1250 x8 : 0,0625 Szerkessze meg és számítsa ki az Olvasó mindazt, amit a 3.2-es példában megszerkesztettünk ill Kiszámoltunk Útmutatás: Itt a valószín9ségek reciprokai 2-nek egész hatványai, tehát várható, hogy az illeszt" kódolás redundancia mentes
kódot ad. Az els" „osztásnál” célszer9 x1, x2-t egy csoportba sorolni, ami azzal (is) jár, hogy most nem lesz egyetlen egybites kódszó sem és a bináris fa is más lesz. 3.4 A Huffman algoritmus Az illeszt" kódolásra többféle eljárás is létezik. A következ"kben bemutatott eljárást Huffman 1952-ben közölte. Lényegében a Shannon-Fano féle aljárás egy finomított, és pontosabban algoritmizálható formájáról van szó, amelynek talán a legf"bb érdeme az, hogy olyan változó szóhosszúságú bináris kódot ad, amely garantáltan a legrövidebb átlagos szóhosszúságot adja. A kiindulás itt is és most is egy ugyanolyan táblázat, mint amit a Shannon-Fano féle eljárásnál használtunk, de itt a forrásszimbólumok valószín9ségeit a legkisebb valószín9ségekt"l kiindulva vizsgáljuk: El"ször összeadjuk a két legkisebb valószín9séget (s a hozzájuk tartozó szimbólumokat is) majd újra csökken"
sorrendbe rendezzük az immár összevonást is tartalmaz" valószín9ségeket s ezt az eljárást folytatjuk mindaddig, amíg 1-et nem kapunk. (Az algoritmus hasonló ahhoz, mint amikor a Shannon-Fano eljárásnál a bináris fa jobboldaláról haladtunk balfelé.) Ezt is könnyebb egy példa kapcsán érthet"vé tenni, mintsem egzakt módon elmagyarázni. FileNév: InfotechnikaÚjJegyzet3.doc - 69/184 - Utoljára módosítva: 2001-11-05 3.4 példa Legyen X= A valószín9ségek pedig rendre: p(A) = 0,35; p(B) = 0,25; p(C) = 0,20; p(D) = 0,15; p(E) = 0,05; A mondott táblázat, valamint az els" és a második összevonás eredménye: X p(X) Az els" összevonás A második összevonás A 0,35 0,35 0,35 B 0,25 0,25 0,25 C 0,20 0,20 D 0,15 E 0,05 0,40 0,20 Az utolsó oszlopban (t.i a második összevonás után ismét szükség van a valószín9ségek rendezésére: A harmadik összevonás X C, D, E, 0,40 A 0,35 B 0,25 0,40 0,60
Ezzel tulajdonképpen készen is van a valószín9ségi mez" célszer9 felosztása. (Az utolsó összevonást, amely természetesen 1-et adna, már nem is kell elvégezni.) Figyeljük meg, hogy a Shannon-Fano módszernek a rendezett valószín9ség-sorozat ismételt kettéosztásos eljárásával szemben itt a Huffman módszernél a legkisebb valószín9ségekt"l kiindulva páronként ismételten összeadtuk a valószín9ségeket. Ezután mind a valószín9ségi mez", mind a kódokat kijelöl" gráf megszerkeszthet": FileNév: InfotechnikaÚjJegyzet3.doc - 70/184 A Huffman fa levelei 00 0,20 C 010 0 Utoljára módosítva: 2001-11-05 X kód 0,35 10 B 0,25 11 C 0,20 00 D 0,15 010 E 0,05 011 A 0,15 D 0,40 p(X) 01 0,20 011 0,05 E 10 Látható, hogy a Huffman fa 0,35 A 1,00 1 0,60 11 Az A és a B levelekhez tartozó szül" csomópont 0,25 B - szintén bináris fa, mert minden csomópontjának 2 a kifutó fokszáma -
némileg bonyolultabb, Shannon-Fano féle fa mint a - A kódszavak bitszámát az határozza meg, hogy milyen hosszú út vezet a fa gyökerét5l az adott levélig. Tulajdonképpen semmi sem indokolja, hogy a valószín9ségek csökken" sorrendjét követve szerkesszük meg a táblázatot. (Ezt csak azért tettük, hogy a Shannon-Fano módszerrel könnyebb legyen összehasonlítani a Huffman módszert.) A gyakorlatban éppen a valószín9ségek növekv" sorrendje szerint szerkesztik meg a forrásszimbólumok és a hozzájuk tartozó valószín9ségek táblázatát és akkor az algoritmus szöveges megfogalmazása is egyszerübb. Alább majd ezt is megmutatjuk egy példán, de el"bb számítsuk ki az adott példára az informatikai jellemz"ket. A forrás-entrópia: H(X) = -{0,35 x lg 0,35+0,25 x lg 0,25+0,20 x lg 0,20+0,15 x lg 0,15+ + 0,05 x lg 0,05} = = 0,1596 + 0,1505 + 0,1398 + 0,1236 + 0,0651 = 0,6386 hartley/betü = = 2,1214 bit/betü A forrásentrópia
maximuma: H(X)max = lg 5 = 0,6990 hartley/betü = 3,322 x 0,6990 bit/betü = 2,32 bit/betü Ezzel a forrás hatásfoka: ef =100 x 0,6386 /0,6990 = 91,35 % A forrás relatív redundanciája pedig: rf = 1 – ef = 8,64 % Az átlagos kódhosszúság: l = 0,35 x 1 + 0,25 x 2 + 0,2 x 2 + 0,15 x 3 + 0,05 x 3 = = 2,2 bit/kódszó FileNév: InfotechnikaÚjJegyzet3.doc - 71/184 - Utoljára módosítva: 2001-11-05 (Látható, hogy nagyobb, mint a forrás entrópiája.) Az adott példában tehát az illeszt" kódolás hatásfoka: ek = 100 x H(X) / forrás hatásfoka) l = 100 x 2,1214 /2,2 = 97,43 % (Figyeljük meg, hogy jobb, mint a Az illeszt"-kódolás után még megmaradó redundancia pedig: rk = 100 – ek = 2,57 % (Azért nem nulla, mert a valószín9ségek reciprokai nem egész hatványai 2-nek, de az kit9nik, hogy az illeszt" kódolás még így is harmadára csökkentette a forrás redundanciáját , pedig az eleve sem volt nagy.) Érdemes még kiszámolni, hogy a
tömörített kód esetében mi a 0-ák és az 1-esek el"fordulási gyakorisága. Ez az á priori valószín9ségek és a hozzátartozó kódok segítségével számolható ki: A 0-ás jegyek átlagos el"fordulása: 0,35 x 1 + 0,20 x 2 + 0,15 x 2 + 0,05 x 1 = = 0,35 + 0,4 + 0,3 + 0,05 = 1,1 „0”-ás/kódszó Az 1-es jegyek átlagos el"fordulása pedig: 0,35 x 1 + 0,25 x 2 + 0,15 x 1 + 0,05 x 2 = = 0,35 + 0,5 + 0,15 + 0,10 = = 1,1 „1”-es/kódszó vagyis ugyanolyan gyakorisággal fordulnak el" „0”-ás jegyek, mint „1”-esek. Ez a kiegyenlítettség persze nem mindíg biztosítható ilyen tökéletesen A Huffman-féle illeszt kódolási algoritmus mindíg biztosítja az á priori információ optimális, azaz minimális redundanciájú kódolását és a kód optimális kiegyenlítettségét is. (Ezeket a Shannon-Fano algoritmus nem mindíg teszi meg.) Ezért a Huffman kódot el"szeretettel alkalmazzák az un. veszteség nélküli tömörítési
eljárásokban, pl. a telefaxoknál és a kép-tömörítési eljárásoknál is (bár az utóbbiaknál gyakori az un veszteséges tömörítés is) FileNév: InfotechnikaÚjJegyzet3.doc - 72/184 35 Utoljára módosítva: 2001-11-05 A Huffman féle kódolás alapelvei A Huffman kódolás alapelvei majdnem ugyanazok, mint a Shannon-Fano kódolásé, de az utóbbiakat kiegészíti még egy elv, amely a következ": A két legkisebb gyakoriságú forrásszimbólumhoz azonos hosszúságú kódszavakat kell hozzárendelni. Ha magától értet"d"nek tekintjük az egyértelm9 dekódolhatóságot és egyetlen feltételként fogalmazzuk meg azt, hogy a forrásszimbólumok valószín9ségeivel fordított arányban kell, hogy álljanak a hozzájuk rendelt kódszavak hosszai, akkor a Huffman féle kódolás a következ" két alapfeltevésre épül: 1) A forrásszimbólumokhoz változó hosszúságú (bináris) kódszavakat rendel. A nagyobb gyakorisággal el forduló
forrásszimbólumokhoz rövidebb kódszavakat rendel hozzá, mint a ritkábban el fordulókhoz. 2) A két legkisebb gyakoriságú forrásszimbólumhoz azonos hosszúságú kódszavakat kell hozzárendelni. (A 2. alapfeltétel nem volt el"írva a Shannon-Fano féle kódolásnál) A Huffman kódolás tehát a definiciója szerint egy olyan adat-tömörítési technika29, amely változó szóhosszúságú bináris kódszavakat rendel a forrásszimbólumokhoz, s teszi ezt úgy, hogy minél gyakrabban fordul el" egy forrásszimbólum30 annál rövidebb kódszót rendel hozzá a Huffman algoritmus. A Huffman kóddal kódolt bináris jelsor egyértelm9en dekódolható31, mert a kód eleget tesz az un. prefix tulajdonságnak, azaz nincs olyan kódszó a kódkészletben, amelyik egy másik kódszónak a prefixuma lenne A kódszókészlet egy bináris fával (is) szemléltethet", amit Huffman fának neveznek. A Huffman féle kódolási eljárást D.AHuffman írta le el"ször
egy 1952-ben tartott szemináriumának anyagában Az algoritmus többféle formában is létezik. Itt most egy példán azt mutatjuk be, hogy az àpriori szimbólumok relatív gyakorisága helyett a tényleges gyakoriságaikkal32 (azaz egy adott üzenetben való el"fordulásaik számával) is számolhatunk. 29 Ne feledkezzünk meg arról, hogy a Huffman féle kódolás is illeszt5 kódolás, azaz az a célja, hogy a forráskódnál kevésbbé redundáns (csatorna) kódot állítson el5. Márpedig a kisebb redundanciájú kód az információ tömörebb leírását teszi lehet5vé, tehát szükségképpen tömörít is 30 A FOLDOC szótár szerint „token”-nek is nevezik a forrásszimbólumot. 31 Azaz irreducibilis. 32 Az angol szakirodalom ezt a (abszolut) gyakoriságot „frekvenciának” nevezi. FileNév: InfotechnikaÚjJegyzet3.doc - 73/184 - Utoljára módosítva: 2001-11-05 3.5 példa Szerkesszünk minimális redundanciájú kódot egy forráshoz, amelynek
ábécéje hatelem9 és az egyes betük el"fordulásainak száma a vizsgált szövegben a következ": Forrás szimb. Gyakoriság A 5 B 7 C 10 D 15 E 20 F 45 A Huffman fa megszerkesztéséhez a forrásszimbólumokat gyakoriságuk növekv" sorrendjébe kell rendezni (ezt eleve így adtuk meg a fenti táblázatban) majd a két legkisebb gyakoriságú elemb"l a Huffman fa (els") két levelét állítjuk el" és ehhez a két levélhez hozzárendelünk egy szül"-csomópontot, valamint egy gyakoriságot, amely a két levél gyakoriságainak összege: Forrás szimb. A Gyakoriság 7 12 B C 10 D 15 E 20 F 45 B Szül csomópont Levél (vagy gyermek) csomópontok 12 5 A FileNév: InfotechnikaÚjJegyzet3.doc - 74/184 - Utoljára módosítva: 2001-11-05 Rendezzük most újra a táblázatot a növekv" gyakoriságok sorrendjébe és ismételjük meg az el"bbi m9veletet úgy, hogy most is a két legkisebb gyakoriságú
csomóponthoz rendelünk egy szül" csomópontot: Új levél Forrás szimb. Gyakoriság C 10 12 D 15 E 20 F 45 10 C Új szül csomópont 22 7 B Levél (vagy gyermek) csomópontok 12 5 A Ezeket a lépéseket kell mindaddig ismételni, amíg a táblázatban már csak egyetlen elem marad (az összes gyakoriság összegével jelölve). A következ" rendezett táblázatban a két legkisebb gyakoriságú elem D és E lesz, amelyek közül eddig még egyik sem szerepelt összevonásban. A Huffman fa nekik megfelel" levelei C szintjére kerülnek. FileNév: InfotechnikaÚjJegyzet3.doc - 75/184 - Utoljára módosítva: 2001-11-05 Az eljárást eszerint végigcsinálva a következ" Huffman fát kapjuk: A huffman fa gyökere 45 1 F 20 01 E 011 35 010 102 15 D 57 0 001 10 C 00 0001 22 7 B 5 A 000 12 0000 A változó hosszúságú bináris kódot a Huffman fa gyökerét"l kiindulva úgy osztjuk ki, hogy valahányszor egy
szül" csomópontból felfelé lépünk, 1-et írunk hozzá a már meglév" kódszóhoz, lefelé lépésnél pedig 0-át. Az adott példánál a kód-hozzárendelés a következ": Forrás szimb. Gyakoriság Kód A 5 0000 B 7 0001 C 10 001 D 15 010 E 20 011 F 45 1 FileNév: InfotechnikaÚjJegyzet3.doc - 76/184 - Utoljára módosítva: 2001-11-05 A 0-ás jegyek abszolut gyakorisága a fenti adatokkal: 111 (48,7%) Az 1-es jegyeké pedig: 117 (51,3%) A kód hatásfoka ezekkel az adatokkal 99,95 % tehát a redundancia mindössze 0,05%. 3.6 példa Az angol ábécé els" öt betüjének abszolut gyakorisága egy nagyobb szövegben a következ": A B C D E Az összes többi betü (s) együttvéve: ÷ ÷ ÷ ÷ ÷ ÷ 85 15 28 43 127 705 Tekintsük a -- a (s) –val együtt-- ezt az ábécét egy hatbetüs ábécének és szerkesszünk hozzá Huffman kódot úgy, hogy egyel"re nem számoljuk ki a relatív gyakoriságokat. a) Szerkesszük
meg a forrásszimbólumok els" gyakoriság-táblázatát (úgy, hogy a s –át is egyetlen betünek tekintjük). A táblázatnak alkalmasnak kell lennie a Huffmann fa megszerkesztéséhez. Els= szül= Forrásszimbólum Gyakoriság B 15 C 28 D 43 43 A 85 85 E 127 127 s 705 705 43 Lényeges, hogy a gyakoriságok növekv" sorrendjébe rendezzük a forrásszimbólumokat, különben nem a Huffmann eljárásra jutunk hacsak nem csökken" sorrendbe rendezünk és a táblázat aljáról kezdjük és visszük végig következetesen a cellák páronkénti egyesítését. FileNév: InfotechnikaÚjJegyzet3.doc - 77/184 - Utoljára módosítva: 2001-11-05 b) Kezdjük el és folytassuk minden lépést feltüntetve és fejezzük is be a Huffman fa szerkesztését. Jelöljük minden csomópontnál az abszolut gyakoriságot Nem szándékos ugyan, de mindjárt az elején zavaró lehet, hogy az els" két cella-összevonása (ti. B és C) ugyanakkora
gyakoriságot ad, mint D, de nem kell vele tör"dni. B Forrásszimbólum Gyakoriság Els szül 2. szül 43 86 B 15 C 28 D 43 43 A 85 85 85 E 127 127 127 s 705 705 705 15 43 C 28 B Forrásszimbólum 2. szül A 3. szül 15 85 43 171 B,C,D 86 E 127 127 s 705 705 C 86 28 D 43 Forrásszimbólum 3. szül E B 4. szül 15 127 43 298 A,B,C,D C 171 86 s 705 28 D 705 171 43 A 85 FileNév: InfotechnikaÚjJegyzet3.doc - 78/184 - Utoljára módosítva: 2001-11-05 Ezzel tulajdonképpen készen is van a cella-összevonás, mert a következ" már a Huffmann-fa gyökerét adná 298+705= 1003 abszolut gyakorisággal 11111 15 B 1111 43 111 11110 86 28 C 11 1110 171 1 43 D 110 85 A 298 10 127 E 1003 0 705 Figyelemreméltó, hogy a fa alakja hasonlít egy Shannon-Fano bináris fáéra. Ez azt jelenti, hogy az adott valószín9ségi modell esetén a ShannonFano eljárással is hasonló kódot kaptunk volna. (Eltekintve
attól, hogy a Shannon-Fano féle kódolás algoritmusa sohasem ad két ugyanolyan hosszúságú kódszót, mint amilyeneket itt a „B” és a „C” szimbólumokhoz kaptunk.) FileNév: InfotechnikaÚjJegyzet3.doc - 79/184 - Utoljára módosítva: 2001-11-05 c) Szerkesszük meg az ehhez tartozó változó szóhosszúságú bináris kódot és adjuk meg egy olyan, hatoszlopos táblázatban, amelyben az els" oszlop a forrásszimbólumoké, a második a gyakoriságoké, a harmadik a relatív gyakoriságoké, a negyedik magáé a kódé, az ötödik a 0-ás jegyek relatív gyakoriságáé a hatodik oszlop pedig az 1-es jegyek relatív gyakoriságáé. Forrás sz. Gyakoriság Rel.gyak Kód 0 1 15 1,4955 11111 0 7,4775 B C 28 2,7916 11110 2,7916 11,1664 D 43 4,2871 1110 4,2871 12,8613 A 85 8,4746 110 8,4746 16,9492 E 127 12,6620 10 12,6620 12,6620 [ 705 70,2891 0 70,2891 0 Összegek 1003 99,9999 98,5044 61,1164 61,71% 38,28% %-os
megoszlás d) Számítsuk ki mind a 0-ás jegyek, mind az 1-es jegyek összesített relatív gyakoriságait és számítsuk ki, hogy a kódolt információ bináris számjegyeinek hány százaléka 0-ás és hány százaléka 1-es. Látható, hogy a kód nem igazán jól kiegyenlített. Az 1-es és a 0-ás jegyek aránya: 61,1164/98,5044 = 1,612, azaz elég messze esik 1-t"l, ami a tökéletes kiegyenlítettséget jelentené.33 61,71%/ 38,28% a százalékos megoszlás 33 Ennek az az oka, hogy a forrásszimbólumok között a jel gyakorisága dominánsan nagyobb volt, mint az összes többié együttvéve. Az ilyen valószín6ségi modell eleve messze van attól, amire a Huffman eljárás jól alkalmazhatól. Van azonban a Huffman eljárásnak olyan, kissé módosított változata, amely ilyenkor a betüpárokhoz rendel egy-egy kódot s az optimumhoz lényegesen közelebb es5 eredményt ad Igaz, hogy ekkor az adott esetben nem 6 hanem 62=36 kódszóval kell dolgoznunk Alább
még visszatérünk erre a problémára is FileNév: InfotechnikaÚjJegyzet3.doc - 80/184 - Utoljára módosítva: 2001-11-05 e) Számítsuk ki a kód entrópiáját és a relatív redundanciáját! Az entrópia: H = -0,6171x log0,6171 – 0,3828 x log0,3828 = 0,1294 + 0,1596 = 0,289 hartley/ kódszimbólum = = 0,96 bit/bin.szjegy Hmax = 1 bit/bin.szjegy Tehát a relatív redundancia: r = 100 x (1 – 0,94) = 4 % Ügyelni kell arra, hogy többféle hatásfok is kiszámítható aszerint, hogy mi a vonatkoztatási alap. Így beszélhetünk a forrás entrópiájáról, hatásfokáról és redundanciájáról, ha a vonatkoztatási alap az un. iid modell (Ld a B Függeléket), amelynek az entrópiája az azonos számú, de egyenl"en valószín9 forrásszimbólumokkal rendelkez" forrásé Vizsgálhatunk azonban egy olyan hatásfok-jelleg9 mennyiséget is, amely a már optimalizált illeszt" kód jellemz"it vizsgálja. Itt az illeszt" kód által szállított
tényleges (és átlagos) információmennyiséget vonatkoztatjuk az illeszt" kód átlagos szóhosszúságára. Kés"bb majd erre a jellemz"re bevezetjük a kódolási arány fogalmát(Ld az E Függeléket) f) Számítsuk ki most, a feladat végén az eredeti forrásábécé redundanciáját és mutassuk meg, hogy a Huffmann féle illeszt" kódolás mennyit javított ezen. Index Forrásszimbólum Gyakoriság Relatív gyak. -pi x logpi 1 A 85 0,0847 0,0908 2 B 15 0,01496 0,0273 3 C 28 0,0279 0,0434 4 D 43 0,0429 0,0586 5 E 127 0,1266 0,1136 6 [ 705 0,7088 0,1076 1003 1,0059 0,4413 Összeg A forrásentrópia: H(X) = 0,4413 hartley/ betü = 1,466 bit/ forrásszimbólum Az elvi maximum Hmax = log 6 = 0,77815 hartley/ betü A relatív redundancia: r = 100 x (1 – H(X) / Hmax ) = 43,29 % FileNév: InfotechnikaÚjJegyzet3.doc - 81/184 - Utoljára módosítva: 2001-11-05 A Huffmann kódolás (jóllehet távolról sem
kiegyenlített) mégis csaknem a 11ed részére csökkentette a forrás redundanciáját. 3.7 példa Vizsgáljunk meg most egy bonyolultabb fát eredményez" példát, amelyben a forrásábvécének 9 eleme van és az abszolut gyakoriságaik vannak megadva a következ" táblázattal: Betü Gyakoriság Betü Gyakoriság A 200 F 80 B 180 G 60 C 160 H 40 D 140 I 20 E 120 A megoldás részletei, táblázatai A rendezett gyakoriság-tábla és az els" két összevonás xi Gyakoriság 1. összevonás 2. összevonás 3. összevonás A 200 200 200 200 B 180 180 180 180 C 160 160 160 160 D 140 140 140 140 E 120 120 120 120 F 80 80 80 G 60 60 H 40 I 20 1000 60 1000 120 1000 200 1000 Az els" összevonás után nem rendeztük át a táblázatot a gyakoriságok csökken" sorrendjébe, de megjegyezzük, hogy a 120 (=H,I) megel"zi a 80-as (=F) súlyt. FileNév: InfotechnikaÚjJegyzet3.doc - 82/184 -
Utoljára módosítva: 2001-11-05 xi Átrendezés után 4. összevonás A 200 200 200 200 B 180 180 C 160 160 D 140 E 120 G H I F xi D 260 1000 1000 Átrendezés után 5. összevonás 260 260 200 200 200 200 E A G H I F B 180 C 160 1000 340 1000 FileNév: InfotechnikaÚjJegyzet3.doc - 83/184 - xi B Utoljára módosítva: 2001-11-05 Átrendezés után 6. összevonás 340 340 260 260 C D E A 200 G H 200 400 I F xi 1000 1000 Átrendezés után 7. összevonás 400 400 A G H I F B C D 340 600 260 E 1000 1000 Ebb"l már megszerkeszthet" a Huffman fa. A fa szerkesztését a gyökért"l kiindúlva végezzük (azaz a legutolsó összevonási táblázattól visszafelé követve a táblázatokat). A táblázatokban el"forduló összevonások FileNév: InfotechnikaÚjJegyzet3.doc - 84/184 - Utoljára módosítva: 2001-11-05 a fa bels" csomópontjai lesznek, amelyek súlyai az összevont gyakoriságok.
Helyezzük el a bels" csomópontokat úgy, hogy a nagyobb súlyút mindíg “felfelé” a kisebb súlyút pedig “lefelé” rajzoljuk. 000 00 180 340 001 0 B C 160 600 010 01 140 260 011 D A szerkesztés segítésére minden bels5 csomóponthoz beírható az is, hogy az mely leveleknek a szül5je, nagyszül5je, és így tovább. Ez pontosan megfelel a rendezett táblázatok csoportjainak. E 120 1000 10 200 1 110 400 11 A Huffman fának pontosan annyi bels" csomópontja (itt:7) van, amennyi a táblázatos összevonások száma volt, mert minden pár-összevonás egy-egy új bels" csomópontot eredményezett. A 200 80 111 120 G 1110 60 1111 60 F 11110 40 H 11111 20 I Ennek a fának a megszerkesztésekor 1. A gyökért"l indúltunk el és a 7 összevonási tábla alapján írtuk fel a gyökér két utódját. 2. A Huffman fának mindíg a “fels"” ágához rendeltük a nagyobb súlyú (bels") csomópontot. Azonos
súlyúak esetén meghagytuk az eredeti alá/fölé rendelési sorrendet. 3. A kódkiosztáskor a “fels" ághoz rendeltük a 0-át, az alsóhoz az 1-et Ha netán fordítva tennénk, a kód komplemensét kapnánk. FileNév: InfotechnikaÚjJegyzet3.doc - 85/184 - Utoljára módosítva: 2001-11-05 4. Azonos súlyú bels" csomópontok esetén azt rendeltük “felülre”, amelynek kevesebb utódja volt (vagy egy sem). 5. Nem er"ltettük azt a korábbi koncepciót, hogy a fa levelei végül is monoton sorrendbe legyenek elrendezve, hanem ahelyett csak azt, hogy mindegyik levél kódját a gyökért"l a hozzá vezet" út határozta meg. Rövidebb út rövidebb kódot jelentett és fordítva. Számoljuk ki el"ször a forrás informatikai jellemz"it: Szimbólum Gyakoriság Pi BIT Hartley Nat A 200 0.2 B 180 0.18 2.473931 0744727 1714798 C 160 0.16 2.643856 D 140 0.14 2.836501 0853872 1966113 E 120 0.12 3.058894 0920819 2120264
F 80 0.08 3.643856 G 60 0.06 4.058894 1221849 2813411 H 40 0.04 4.643856 1.39794 3218876 I 20 0.02 5.643856 1.69897 3912023 Total Események 1000 2.321928 0.69897 1609438 0.79588 1832581 1.09691 2525729 1 9 H(x) 2.930561 0882187 Hmax 3.169925 0954243 2197225 Hatásfok: Redundancia: 2.03131 92% 92% 92% 8% 8% 8% Az itt kiszámolt forrásentrópiára szükségünk lesz a kódolási arány kiszámításához. FileNév: InfotechnikaÚjJegyzet3.doc - 86/184 - Utoljára módosítva: 2001-11-05 A megszerkesztett Huffman fa kódkiosztása alapján a változó szóhosszúságú Huffaman kód a következ": Forrás Huffman kód szimbólum A 10 B 000 C 001 D 010 E 011 F 110 G 1110 H 11110 I 11111 Mint említettük, ennek a kódnak a komplemense is ugyanilyen jó. Vizsgáljuk meg most az átlagos szóhosszúságot, a kódolási arányt és a kódolás hatásfokát, a kód kiegyenlítettségét valamint azt, hogy mennyit javított az
illeszt" kódolás a forráskód információelméleti jellemz"in. Gyakoriság Pi kód Kódhossz Si0 Si1 Si0xPi Si1xPi LixPi A 200 0.2 10 2 1 1 0.2 0.2 0.4 B 180 0.18 000 3 3 0 0.54 0 0.54 C 160 0.16 001 3 2 1 0.32 0.16 0.48 D 140 0.14 010 3 2 1 0.28 0.14 0.42 E 120 0.12 011 3 1 2 0.12 0.24 0.36 F 80 0.08 110 3 1 2 0.08 0.16 0.24 G 60 0.06 1110 4 1 3 0.06 0.18 0.24 H 40 0.04 11110 5 1 4 0.04 0.16 0.2 I 20 0.02 11111 5 0 5 0 0.1 0.1 1.64 1.34 2.98 1000 1 9 2.930561 bit Átlagos szóhossz 2.98 bit A kódolási arány 98% 0 55.03% 2% 1 44.97% Redundancia: Kiegyenlítettség: A hatásfok tehát 92%-ról 98 %-ra javult és így a redundancia 8%-ról 2%-ra csökkent. FileNév: InfotechnikaÚjJegyzet3.doc - 87/184 - Utoljára módosítva: 2001-11-05 Egy kód-bit a forrásentrópia egy bitjének átlagosan a 98%-át szállítja. (Ez az kódolási arány.) AC A
Huffman kód kiegyenlítettsége 55% 1-es jegy és 45% 0-ás jegy. Megjegyzés a példához: A fenti eredményeket egy Excel táblázatban számítottuk ki. Egyáltalán nem mindegy, hogy a számításokat hány tizedesjegy pontossággal véhezzük el, mert a 0,9 és az 1 közé es" számokat 1,b"l kivonva, a maradék relatív hibája igen nagy lehet. Méghozzá annál nagyobb, minél közelebb járunk 1,hez. A fenti példa számításait pl „csak” 4 tizedesgyre elvégezve jelent"sen más eredményeket kaphatunk pl. a kódolási arányra éa a Huffman kód redundanciájára. 3.8 példa Vizsgáljunk meg most egy olyan egyszerü példát, amelyben igen kevés a forrásszimbólumok száma és a hozzájuk rendelhet" valószín9ségek közt is nagyságrendi különbség van. Emlékezzünk arra, hogy eredeti feltevésünk szerint egy diszkrét valószín9ségi modellel közelítjük a forrás statisztikai szerkezetét. Várható, hogy ha a forrásábécé kevés
elemet tartalmaz és a statisztikára jellemz" diszkrét valószín9ségi eloszlás is nagyon széls"séges, akkor egy ilyen modellel való közelítés nem ad túl jó eredményt (az egyébként bizonyíthatóan optimális Huffman kódolási eljárás esetében sem). Legyenek most a forrásábécé elemei és a hozzájuk rendelt valószín9ségek a következ"k: A P(A) = 0,9 B P(B) = 0,09 C P(C) = 0,01 A forrásentrópia ezek alapján a következ": H(X) = -0,9 x lg 0,9 – 0,09 x lg 0,09 – 0,01 x lg 0,01 = = 0,1553 hartley = 0,5156 bit/szimbólum A forrás maximális entrópiája: H(X)max = lg 3 = 0,4771 hartley = 1,584 bit/szimbólum lehetne A forrás relatív redundanciája: R = 100 x [ H(X)max – H(X)] : H(X)max = 67,45 % - bizony elég nagy Nem kell ahhoz Huffman fát szerkeszteni, hogy megadjuk a Huffman kódolás alapelveinek megfelel" változó szóhosszúságú kódokat: A B C 0 10 11 Az átlagos kódszóhosszúság: L = 0,9 x 1 + (0,09+0,01) x 2
=0,9 + 0,2 = 1,1 bit forráskód-szavanként. FileNév: InfotechnikaÚjJegyzet3.doc - 88/184 - Utoljára módosítva: 2001-11-05 Így a Huffman kód redundanciája: rH = 100 x [H(X)max – L ] : H(X)max = 30,56 % Az illeszt" kódolás kevesebb, mint a felére csökkentette ugyan a redundanciát, de az még így is igen nagy. A Kraft – McMillan egyenl"tlenségb"l34 következ" korlát miatt az optimális illeszt" kódolás átlagos kódhosszúsága felülr"l közelíti a forrásentrópia értékét. Ez az adott példánál 0,5156 bit/szimbólum, amihez képest egyáltalán nem látszik optimálisnak az 1,1 bit/csatornakódszó átlagos szóhosszúság. Ez azonban nem mond ellent annak a tételnek, hogy a Huffman féle kódolási algoritmus minden esetben optimális kódot ad. Sokkal inkább arról van szó, amit a példa bevezet"jében jeleztünk vagyis, hogy a hallgatólagosan feltételezett diszkrét valószín9ségi modell ebben az esetben
nem jól modellezi a forrás szerkezetét. Ilyenkor is megoldást jelenthet azonban, ha nem rendelünk minden forrásszimbólumhoz külön-külön kódot, hanem csoportosítjuk a forrásszimbólumokat (pl. párosával) s minden ilyen csoporthoz rendelünk egy- egy (változó szóhosszúságú) kódszót. 3.9 példa (A 3.8 példa folytatása a fentiekben interpretált eset demonstrálására) Ne változtassunk a 3.7 példában bemutatott, hárombetüs ábécével jellemezhet" forráshoz rendelt valószín9ségi modellen, de számoljuk ki az elvileg egymástól függetlenül kibocsájtott betükett"sök valószín9ségeit és rendeljünk Huffman kódszavakat e betüpárokhoz. A 3.8 példában az egyes betük valószín9ségei rendre a következ"k voltak: P(A) = 0,9 P(B) = 0,09 P(C) = 0,01 Ezek alapján a forrásentrópia 1,5156 bit/betü érték9re adódott és a forrás redundanciája 67,45% volt. Az A t0; B t 10; C t 11 Huffman kód átlagos szóhosszúságára 1,1
bit/kódszó adódott, ami végül is 30%-nál nagyobb kód redundanciát eredményezett. Ez ugyan fele sem volt a forrás redundanciájának, de még mindíg relatíve nagy érték. A választott kód átlagos kódszó-hosszúsága 1,10 bit/kódszó amely mellett a 0-ás jegyek átlagos gyakorisága 0,99 db/kódszó (= 90%) az 1-es jegyeké pedig 0,11 db/kódszó (= 10%) volt. (ezekre az adatokra még visszatérünk és összehasonlítjuk velük a betüpárok kódolási eredményet.) Kövessük most a fentiekben vázolt csoportosítási elvet és rendeljünk Huffman kódot a forrás betüpárjaihoz (feltételezve, hogy a korábban is alkalmazott diszkrét valószín9ségi modell szerint ezeket a forrás egymástól függetlenül bocsájtja ki). 34 Lásd az A függeléket. FileNév: InfotechnikaÚjJegyzet3.doc - 89/184 - Utoljára módosítva: 2001-11-05 Eszerint a betüpárok valószín9ségei és a számolótábla a következ"k: Szimbólum Gyakoriság Pi BIT Hartley
Nat AA t a 8100 0.81 0.304006 0091515 0210721 AB t b 810 0.081 3.625934 1091515 2513306 AC t c 90 0.009 6.795859 2045757 4710531 BA t d 810 0.081 3.625934 1091515 2513306 BB t e 81 0.0081 6.947862 2091515 4815891 BC t f 9 0.0009 1 0.11779 3045757 7013116 CA t g 90 0.009 6.795859 2045757 4710531 CB t h 9 0.0009 10.11779 3045757 7013116 CC t i 1 0.0001 13.28771 4 9.21034 1.03179 0.3106 0715183 Total Események 10000 1 9 H(x) Hmax 3.169925 0954243 2197225 Hatásfok: 33% 33% 33% Redundancia: 67% 67% 67% Az látható, hogy nem javult a forrás hatásfoka és nem csökkent a redundanciája sem s ez érthet" is, mert a betüpárosítások ellenére is ugyanazt a diszkrét valószín9ségi modellt alkalmaztuk a forrás becslésére, mint a 3.7 példában Szerkesszünk most Huffman kódot a betüpárokhoz a gyakorisági adatok alapján. (A betüpárok helyett csak azért vezettük be a kisbetüs jelöléseket, hogy a rendezéseket és
összevonásokat jobban lehessen követni. Egyébként erre nincs szükség) FileNév: InfotechnikaÚjJegyzet3.doc - 90/184 - X Gyakoriság a 8100 b 810 d 810 c 90 g 90 e 81 f 9 h 9 i 1 Az els" összevonás Utoljára módosítva: 2001-11-05 A második összevonás 81 10 19 Újrarendezés után: X Gyakoriság a 8100 b 810 d 810 c 90 g 90 e 81 h,i 10 f 9 A második összevonás A harmadik összevonás 81 19 100 FileNév: InfotechnikaÚjJegyzet3.doc - 91/184 - Utoljára módosítva: 2001-11-05 Ismételt újrarendezés után X Gyakoriság a 8100 b 810 d 810 e,f,h,i 100 c 90 g 90 A negyedik összevonás 180 Az ötödik összevonás 280 Ismételt újrarendezés után X Gyakoriság a 8100 b 810 d 810 c,e,f,g,h,i 280 A hatodik összevonás Az ötödik összevonás 8100 1090 1900 Ezzel készen is vannak az összevonások és a táblázatok alapján a következ" oldalon látható Huffman fát
kapjuk: FileNév: InfotechnikaÚjJegyzet3.doc - 92/184 - Utoljára módosítva: 2001-11-05 0 a 10 8100 b 1 810 b,c,d,g, e,f,i,h d c,d,g,e, f,i,h c,g 1090 11101 g 90 c,g,e, f,i,h 11110 e 1111 280 10 000 90 180 111 root c 1110 810 11 1900 11100 110 e,f,i,h 100 111110 81 11111 f 9 1111110 f,i,h 111111 19 i,h 10 h 9 1111111 i 1 Az átlagos kódszóhossz és a bináris jegyek gyakorisága: Szimb. Gyak. Rel.gyak Kód 0 0 R.gyak 1 1 R.gyak Kódhossz RGYxL a 8100 0.81 0 1 0.81 0 0 1 0.81 b 810 0.081 10 1 0.081 1 0.081 2 0.162 c 90 0.009 11100 2 0.018 3 0.027 5 0.045 d 810 0.081 110 1 0.081 2 0.162 3 0.243 e 81 0.0081 11110 1 0.0081 4 0.0324 5 0.0405 f 9 0.0009 111110 1 0.0009 5 0.0045 6 0.0054 g 90 0.009 11101 1 0.009 4 0.036 5 0.045 h 9 0.0009 1111110 1 0.0009 6 0.0054 7 0.0063 i 1 0.0001 1111111 0 0 7 0.0007 7 0.0007 Total 10000 1 Az átlagos
kódszóhossz: Az 1-esek rel.gyakorisága: A 0-ák rel gyakorisága: 1.0089 0.349 1.3579 bit 0.349 bit/kódszó 2570145 % 1.0089 bit/kódszó 7429855 % 1.3579 FileNév: InfotechnikaÚjJegyzet3.doc - 93/184 - Utoljára módosítva: 2001-11-05 A kód nagyon kiegyenlítetlen, mert durván háromszor annyi 1-es van benne, mint 0ás jegy. Az eredeti, t.i a betüpárosítás el"tti forrásentrópia 0,5156 bit/betü volt a betüpárokra pedig 1,1 bit/betüpár érték9 forrásentrópiát kaptunk. Ekkor öszszesen 9 féle betüpárt vettünk figyelembe, amelyhez H(X)max = ld 9 = 3,17 bit/betüpár elvi entrópia-maximum tartozik. Az entrópia azért növekedett meg, mert nem egy-egy betü, hanem egy.egy betüpár által hordozott átlagos információmennyiséget számoltuk A forrás relatív redundanciája a betüpáros esetben kereken 65%, vagyis lényegében nem változott az egy-egy betüs esethez képest. Azért nincs ebben változás, mert ugyanazt a diszkrét
valószín9ségi modellt használtuk a betüpárok együttes valószín9ségének a kiszámításához is, mint amit az egy-egy betüs esetben alkalmaztunk. Az egy-egy betüs forrásábécéhez rendelt Huffman kód A t0; B t 10; C t 11) a redundanciát alig több, mit 30%-ra csökkentette ugyan de a kód nagyon kiegyenlítetlen volt., mert egy átlagos, bitfolyamban 90 % a 0-ás jegyek el"fordulási aránya és csak 10 % az 1-es jegyeké. A betüpárokra alkotott Huffman kód átlagos szóhosszúsága az el"z" oldal számolótáblája szerint (kerekítve) 1,36 bit/betüpár. ha ezt vetjük össze a betüpárokra számított forrásentrópiával, akkor a kód-redundanciára 19 %-os értéket kapunk, ami lényeges javulás a szingli betükre korábban kapott 30%-os értékhez képest Jóllehet a kód kiegyenlítettsége most is hagy kívánnivalót, de a korábbi 90% - 10% (=9:1) megoszláshoz képest a betüpárokra választott kódban a 0-ás és az 1-es jegyek
megoszlása 74% - 26% (u 3:1) Az egész számítással azt szerettük volna demonstrálni, hogy ha nagyon kevés a forrásszimbólumok száma akkor is igaz ugyan, hogy a Huffman féle kódolási módszer optimális, de ez az optimum azért nagyon messze eshet az igazán kedvez" értékt"l. Ilyen esetben lehet és érdemes is a forrásszimbólumokból blokkokat alkotni és e blokkokra elvégezni a Huffman-féle kódszerkesztést. A csoportalkotás az el"bbinél sokkal kedvez"bb (t.i jobb hatásfokú és kiegyensúlyozottabb) Huffman kódot eredményez Méghozzá annál jobbat, minél nagyobb blokkokat alkotunk Hátránya –mint láthattuk a példa megoldásakor- az, hogy a számítási munka is megnövekszik. FileNév: InfotechnikaÚjJegyzet3.doc - 94/184 36 Utoljára módosítva: 2001-11-05 A Huffman fa és a Huffman algoritmus. A bemutatott példákban alkalmazott Huffman fákról a következ"ket foglalhatjuk össze: 1) A Huffman fa (bináris kód
esetén) egy nem irányított bináris gráf, azaz minden csomópontjából két-két él indul.35 2) Ez alól csak a fa un. levelei a kivételek, amelyek mindegyikébe egy-egy él érkezik, de bel"lük újabb élek nem indulnak. 3) A fának vannak un. küls és bels csomópontjai Küls" csomópont a gráf gyökere és küls" csomópontok a gráf levelei. 4) Egy csomópont távolsága a gyökért"l azoknak az éleknek a száma, amelyek a gyökért"l az adott csomópontig vezetnek. 5) A levelek általában nem egyforma távolságra vannak a gyökért"l. 6) Kódszavakat csak a levelekhez rendelünk hozzá, bels" csomóponthoz és a gyökérhez nem.36 7) Egy adott levélhez rendelt kódszó hossza azonos annak a levélnek a gyökért"l való távolságával. 8) A leírt struktúrájú fánál értelmezhet"k a szül csomópontok és a leszármazott (vagy utód ill. gyerek) csomópontok Minden bels" csomópont és a gyökér: szül"
csomópont, a levelek azonban mind leszármazottak. 9) A közös szül"t"l egyetlen él-párral leszármazott csomópontok testvér-csomópontok vagy levelek. 10) Mindegyik csomóponthoz egy-egy valószín9ség (vagy gyakoriság) rendelhet" hozzá. A levelekhez a forrásszimbólumok gyakoriságai ill valószín9ségei, a bels" csomópontokhoz a bal"lük származó leszármazottak valószín9ségeinek összege. A gyökérhez rendelhet" valószín9ség mindíg 1 (feltéve, hogy teljes eseményrendszerr"l van szó). 11) A csomópontokhoz rendelhet" gyakoriságokat (vagy valószín9ségeket) gyakran a csomópontok súlyainak nevezzük. 12) A Huffman fa (és a kódolási algoritmus) nem bináris kódokra is értelmezhet". Ternáris kód esetén a bels" csomópontokból és a gyökérb"l induló élek száma 3, kvadrális kódok esetén 4, és így tovább. (A nembináris Huffman kódokkal itt nem foglalkozunk) 35 Ha irányított gráf
lenne, akkor azt mondhatnánk, hogy a bels5 csomópontok kifutó fokszáma 2, a befutó fokszám pedig a gyökér kivételévek minden csomópontnál 1. Megjegyezzük, hogy a Huffman fánál az élek irányítottságának (vagy nem irányítottságának) nincs gyakorlati jelent5sége. Csak a gráfelméleti „fa” terminológia alkalmazása miatt tekintjük nem irányítottnak 36 Ez nem jelenti azt, hogy a kódkiosztás érthet5bbé-tétele miatt a bels5 csomópontok mellé nem írhatunk kódszó-prefixumokat. Ezt tettük az el5z5 példánál is FileNév: InfotechnikaÚjJegyzet3.doc - 95/184 37 Utoljára módosítva: 2001-11-05 Adaptív Huffman kódolás. Ha egy ismeretlen ábécével írt szöveghez akarunk Huffman kódot szerkeszteni, akkor els" lépésben egy szöveg-analízist kell elvégezni ahhoz, hogy felderítsük a szöveg statisztikai szerkezetét. Eleve eldönthetjük, persze, hogy azt a diszkrét valószín9ségi modellt alkalmazzuk majd, amelyben minden
forrásszimbólum független az azt megel"z"t"l, de akkor is el kell végezni a betügyakoriság-analízist, vagy valamilyen korábbi analízis alapján ismertnek tekinteni a gyakoriságokat.37 Így is, úgy is kétlépéses processzus a Huffman kódolás (és ebbe a két lépésbe nem számítottuk bele azt, hogy az alkalmazni kívánt valószín9ségi modellt ezekt"l függetlenül meg kell választanunk). Van azonban olyan algoritmus, amely ezt a „statisztikai felmérést” és magát a Huffman féle kódolást egyetlen „menetben” végzi el. Ezt nevezzük adaptív Huffman kódolásnak, amit a C függelékben tárgyalunk részleteiben 3.8 A Golomb –Rice kódok. A Golomb-Rice kódok egy egész kód-családot alkotnak, amely kódokat egészszámok kódolására terveztek abból az alapfeltételezésb"l kiindulva, hogy minél nagyobb egy szám, annál ritkábban fordul el". Többféle kód is szerkeszthet" ezen az alapon. A legegyszerübb az
un unáris kód38 Az n pozitív egészszámhoz tartozó unáris kódszó n darab 1-esb"l áll, amit a végén egy 0 követ.39 Így pl: Szimbólum kód 3 1110 7 11111110 . . . 13 11111111111110 37 Egyáltalán nem nyilvánvaló, hogy általános esetben mit értünk szöveg alatt. Lehet az pl t5zsdei részvényárak el5re megállapodott sorrendben való felsorolása s akkor bizony valamilyen korábbi értékt5l nem nagyon eltér5 mérték6 lehet egy-egy árfolyam, vagyis többé-kevésbbé megjósolható. Numerikus információról van tehát szó, mégsem egyformán valószín6 minden szám el5fordulása Hasonló a helyzet pl egy karakterisztika-mérés adatainál, vagy olyan adatoknál, amelyek valamilyen becsülhet5 trendet követnek. 38 Persze, a kódoláshoz használt szimbólumok számát tekintve az unáris kód is binaries kód 39 Van olyan jelölési konvenció az unáris kódoknál, amely a 0-kódját is értelmezi: ez egyetlen 1-es számjegyet sem tartalmaz,
csak a kódszót záró 0-ás jegyet. Alább a Golomb kódolásnál használjuk ezt a jelölési konvenciót FileNév: InfotechnikaÚjJegyzet3.doc - 96/184 - Utoljára módosítva: 2001-11-05 Ha a forrás szimbólumkészlete {1,2,. k, m} és ehhez olyan iid modellt rendelünk, amelyben a k szám valószín9sége P(k ) = 1 =2 k 2 k akkor az ehhez tartozó Shannon-Fano kód éppen az unáris kód lesz. Csak azért nem Huffman kód, mert az utóbbinál a két, legkisebb valószín9ség9 szimbólumhoz tartozó kódszó –mint tudjukazonos hosszúságú, az unáris kód esetében pedig a képzési szabálya miatt minden kódszóhossz más. A felvett diszkrét valószín9ségi modellhez tartozó fa azonban Huffman fa. Mivel a Huffman kód optimális, ezért a fenti diszkrét valószín9ségi modellhez tartozó unáris kód is optimális. Hangsúlyozzuk, hogy ez az optimum csak akkor teljesül, ha az {1,2,. k, m} un. szemi-végtelen számhalmazhoz tartozó diszkrét
valószín9ségi modell éppen a fenti, ami bizony eléggé szigorú feltétel és bizony kérdéses, hogy milyen becslését jelenti valamilyen adott egészszám-halmazhoz tartozó valószín9ségi eloszlásnak. Minden korlátozottsága ellenére is igaz azonban, hogy az unáris kódot igen egyszer9 el"állítani is és dekódolni is. Ha a fent bemutatottnál egy fokkal komplexebb modellt ill. kódolási módszert alkalmazunk, akkor a kódolni szándékozott egészszámot két részre osztjuk Az egyik részt unáris kóddal, a másik részt pedig valamilyen másfajta kóddal kódoljuk. Ilyen kód a Golomb kód. Ezt a kódot Solomon Golomb írta le el"ször az IEEE Transactions on Information Theory egy 1966-os számában egy igen tömör cikkben. Jellemz" a cikk kezd"mondata, amely így hangzik: „ A 00111-es titkos ügynök ismét visszatért a kaszinóba, hogy kipróbálja a szerencséjét, miközben az emberiség sorsa egy hajszálon függ.” A 00111-es
ügynöknek szüksége volt egy kódra, amellyel a sikeres rulettpörgetéseket könnyen feljegyezhette és Golomb kitalálta neki ezt a kódot Amikor Golomb kódról beszélünk ismét a kódok egy családjára gondolunk, amelynek tagjait egy 0-nál nagyobb egészszám, mint paraméter különbözteti meg egymás tól. Jelöljük ezt a paramétert g-vel ( g > 0) Vezessük be a következ" jelöléseket: Legyen x egy pozitív szám és jelölje x az x szám egész részét, továbbá jelölje x azt a legkisebb egészszámot, amely felülr"l közelíti x-et. Ezekkel a jelölésekkel nyilvánvaló, hogy mind x mind pedig x egészszámok és x x x FileNév: InfotechnikaÚjJegyzet3.doc - 97/184 - Utoljára módosítva: 2001-11-05 A g paraméterrel meghatározott Golomb kód egy n egészszámhoz40 két újabb számot (q-t és r-et) rendel hozzá a következ"képp: "n! q=" ! g és r = n qg Az els" összefüggés az n számnak a g paraméterrel
való osztásakor kapott hányados egész részét (= q), vagyis a maradékos osztás kvóciensét adja, a második öszszefüggés pedig ennek az osztásnak a maradékát (= r, remainder) A q kvóciens értéke a 0, 1, 2, . természetes számok közül valamelyik, az r maradék szintén egészszám és értéke a 0, 1, 2, (g-1) számok közül valamelyik Az n-hez tartozó q értékét egy unáris kóddal reprezentáljuk, az r maradékot pedig egy természetes bináris kóddal. Ha történetesen g-t úgy választottuk meg, hogy 2nek valamelyik k-adik (ahol k=egészszám) hatványa legyen, akkor r ábrázolására k bites bináris szám használható. Ha g értéke nem egész hatványa 2-nek, akkor ld g bites bináris kóddal ábrázolhatjuk az r maradékot. Példa: Tervezzünk Golomb kódot, amelynek legyen a paramétere g = 6. Ábrázoljuk táblázatosan az n=0 –tól n=15-ig terjed" egészszámokhoz tartozó kódszavakat. A választott paraméter (g = 5) esetén az r
maradék a 0, 1, 2, 3, 4 és 5 egészszámok valamelyike lehet. Fix szóhosszúságú kód esetén ezek kódolására 3 bit kell41 40 Nem kell kikötnünk, hogy a kódolni kívánt egészszámok halmaza véges legyen és el5bb már kiterjesztettük az értelmezést a 0-át is tartalmazó valamennyi természetes számra. 41 Látható, hogy az erre használt hárombites bináris kód redundáns. Tulajdonképpen csak a 4 és az 5 kódolásához kell a három bit. Az 5-nél kisebb maradékok kódolásához elegend5 lenne kevesebb is Valóban van is olyan Golomb kódolási konvenció, amely a kisebb maradékokhoz rövidebb bináris kódot rendel hozzá, de ezzel itt nem foglalkozunk. FileNév: InfotechnikaÚjJegyzet3.doc - 98/184 - Utoljára módosítva: 2001-11-05 A teljes r g=6 bináris Golomb kódja kódszó n q q unáris kódja 0 0 0 0 000 0000 1 0 0 1 001 0001 2 0 0 2 010 0010 3 0 0 3 011 0011 4 0 0 4 100 0100 5 0 0 5 101 0101 6 1 10 0 000
10000 7 1 10 1 001 10001 8 1 10 2 010 10010 9 1 10 3 011 10011 10 1 10 4 100 10100 11 1 10 5 101 10101 12 2 110 0 000 110000 13 2 110 1 001 110001 14 2 110 2 010 110010 15 2 110 3 011 110011 r 1 bizonyítható, hogy a g = " ! paraméter9 Golomb kód optimális a " ld p ! P ( n ) = p n 1 q; diszkrét valószín9ségi modellre. q =1 p FileNév: InfotechnikaÚjJegyzet3.doc - 99/184 - Utoljára módosítva: 2001-11-05 Rice kódok Az un. Rice kódok a Golomb kódok adaptív változatainak tekinthet"k RFRice a pasadenai Jet Propulsion Laboratory-ban fejlesztette ki ezt a fajta kódolást és publikálta 1979-ben. Az adaptív Huffman kódoláshoz hasonlóan ezek is jól használhatók veszteségmentes tömörítésre A Rice kódolás egy nemnegatív egészszám sorozat kódolásához készült. Ezek a nemnegatív egészszámok többnyire valamilyen másfajta információ el"feldolgozásának az eredményeként állnak
el". Ezt az egészszám-sorozatot fix, J hosszúságú blokkokra tördelik fel. Mindegyik blokk J darab egészszámot tartalmaz, függetlenül attól, hogy azok egyenként hány számjegyesek. A kódolási eljárásnak sokféle opciója lehet, és az egymás után következ" blokkok mindegyikén kipróbálják valamennyi kódolási opciót. Érdemes megjegyezni, hogy az említett opciók közül a legtöbb valamelyik Golomb kód. Az eljárás összehasonlítja, hogy egy adott blokk kódolásakor melyik opció eredményezi a legrövidebb kódot és az lesz annak a blokknak a kódolási algoritmusa, ill. eredménye annak a blokknak a kódja. Mindegyik opciónak van saját azonosítója s azt hozzákapcsolják az adott blokk kódjához. A Rice-féle kódolási eljárás tehát blokk-kódolás (abban az értelemben, ahogyan azt majd a titkosítással kapcsolatban részletesen tárgyaljuk), amely rögzített hosszúságú, numerikus információ-blokkokat kódol. Magának a
kódolási algoritmusnak többféle opciója is van és mindegyik opciónak valamilyen rövid, saját azonosítója. Mindegyik blokkhoz azt a kódolási opciót használjuk, amely az adott blokknál a legrövidebb kódot eredményezi és a blokk kódjához hozzáf9zzük az opció azonosítóját is, hogy a dekódolásnál tudni lehessen, hogy melyik opció dekódoló algoritmusát kell az adott blokk esetében alkalmazni. A Rice kódolásnak ez a lényege s így, röviden szavakba foglalva is eléggé számításigényes, nehezen követhet" algoritmusnak látszik. Ténykérdés azonban, hogy pl az 9rtávközlésben kedvelt kódolási módszer, mert a távközlési hibákra kevésbbé érzékeny, mint az adaptív Huffman kód. Igaz, hogy a preprocesszálás miatt mindenképpen kétmenetes eljárás Másrészt azonban a preprocesszált információs blokkok kódolására alkalmazott valószín9ségi modell bizonyos mértékig maga is adaptív, ezért az eljárás jó hatásfokkal
tömörít. FileNév: InfotechnikaÚjJegyzet3.doc - 100/184 39 Utoljára módosítva: 2001-11-05 A Huffman kódolás néhány alkalmazása. A következ"kben leírt néhány alkalmazási példa korántsem meríti ki a Huffman kódok valamennyi alkalmazását. Már csak azért sem, mert a Huffman kódokat sokszor használják más kódolási technikákkal együtt. A veszteségmentes kép-tömörítés A legegyszerübb eljárás alapelve az ird valószín9ségi modellt alkalmazza egy-egy pixel kódjára. Bár színes képekre is alkalmazható, egyszerübben megérthet", ha egy szürke árnyalatú képpel kapcsolatban magyarázzuk el. A 256 szürke-árnalatú képerny"-képek minden egyes képpontját egy-egy byte kódolja. A kép jellegét"l függ"en azonban általában nem azonos gyakorisággal fordulnak el" a különböz" szürke-árnyalatú képpontok Els" menetben egy statisztikai felméréssel meghatározhatjuk az egyes pixel-árnyalatok
el"fordulási gyakoriságait és ha ez megvan, akkor egy 250 elem9 forrásábécé elemeihez tartozó gyakoriság-értékeink is rendelkezésre állnak s a Huffman kód az ismert módon megszerkeszthet". Egy 1024x768 pixel felbontású (egyetlen!) képen 786432 pixel, és ennyi byte információ van. Ennyi képpont statisztikai felmérése elég nagy számításigény9, s akkor még mindíg csak egyetlen képr"l van szó. Ilyen mennyiség9 adat tömörítéséhet már egészen biztosan adaptív Huffman kódolást lehet és érdemes alkalmazni, hogy egyetlen menetben el lehessen végezni a kép tömörítését. A képmérethez képhez képest aránylag nagy, azonos szürke-árnyalatú foltok, egyszín9 háttér vagy er"sen kontrasztos kép esetén a tömörítési arány nagyobb, mint a sok részletet és sok szürke-árnyalatot tartalmazó képeknél. A mondott modellt alkalmazva a Huffman kódolás 1,1 – 1,7 tömörítési arányokat ad. Ez más szóval
pixelenként kb. 4,5 – 7 bites átlagos kódszohosszakat jelent (A képhez tartozó tömörített információ azonban tartalmazza az alkalmazott tömörít" kódra vonatkozó információkat is. Így pl egymenetes Huffman kódolás esetén a kódszókészlet listáját az egyes forrás-byteokhoz tartozó Huffman kódokkal együtt) Sokkal kedvez"bb veszteség nélküli tömörítést lehet elérni akkor, ha nem az ird valószín9ségi modellt alkalmazzuk, hanem figyelembe vesszük a szomszédos képpontok összefüggéseit. Megfigyelhet" ugyanis, hogy az árnyalatok túlnyomó többsége fokozatos átmenetet jelent pixelr"l-pixelre. Emiatt a szomszédos pixelek árnyalatainak különbségei általában kicsik Ezért jelent"s megtakarítást érhetünk el azzal, hogy minden egyes képpontról csak azt az információt közöljük, hogy szürke-árnyalata mennyire tér el a környezetét"l.42 Ezekre a különbségekre alkalmazva az adaptív Huffman
kódolási módszert (megint csak a kép jellegét"l függ"en) kétszeresnél jobb tömörítési arány is elérhet". Az adaptív Huffman kódolás on-line alkalmazható, ami sok esetben nagyon el"nyös és vegyük észre azt is, hogy ha több kép egymás utáni közvetítése (vagy tárolása) a feladat, akkor az adaptív Huffman kódolás használhatja ugyan mindegyik képhez 42 Megfelel5 algoritmussal elérhet5, hogy ne csak az egymás után következ5 (tehát egy sorban lév5) képpontok eltéréseit, hanem az egymás felettiekét is figyelembe tudjuk venni. Ehhez egy képpont környezeti képpontjai szürke árnylatának az átlagát képezzük és ett5l, mint becsült értékt5l való eltérést adjuk meg az adott képponthoz. FileNév: InfotechnikaÚjJegyzet3.doc - 101/184 - Utoljára módosítva: 2001-11-05 ugyanazt az el"zetesen megállapodott fix kódot (ami nyilvánvalóan megegyezik a szürke-árnyalat kódjával), de a képhez rendelt
Huffman kód végül is minden egyes kép esetén más és más lesz. A „kétmenetes” Huffman kód tehát ebb"l a szempontból is adaptív Az on-line kódolási technikákat dinamikus kódolásnak is nevezik. Az adaptív („egymenetes”) Huffman kódolási módszer is dinamikus kódolás Mindemellett azonban emlékeztetnünk kell arra, hogy az adaptív Huffman kód érzékenyebb az átviteli csatornán bekövetkez" hibákra, mert egy hiba hatása továbbterjed (propagálódik) és a hiba utáni bitfolyam dekódolására is kihat. Szövegtömörítés A Huffman-féle kódolásnak -mondhatni- természetes alkalmazási területe a szövegtömörítés. (Ezen is mutattuk be mind a „kétmenetes”, mind az adaptív „egymenetes” Huffman kódolást. Ne felejtsük el, hogy a betüstatisztika csak akkor tekinthet" stacionáriusnak, ha a forrás nyelve nem változik, mert más-más nyelvekhez más-más betügyakoriság-statisztika tartozik Egy angol regényszöveg
statisztikája különbözni fog egy egyébként angol szavakat tartalmazó program-forrásnyelv statisztikájától. Egy múltszázadi elbeszél" költemény (pl. a Toldi) betüstatisztikája is különbözik egy mai magyar ujságszövegét"l Csaknem minden szövegben találhatók gyakran el"forduló betücsoportok. Ha a szöveg egyes betüinek gyakoriságai helyett az ilyen betücsoportokat felsoroljuk egy listában, sorszámozzuk, és ha a betücsoport el"fordul a szövegben, akkor csak a sorszámát közvetítjük, s azt is kódolva, akkor az eddigiekhez képest43 jelent"s további nyereséget érhetünk el a tömörítésnél. Tipikusan ilyen gyakran el"forduló betücsoportokat tartalmazó szövegek pl. egy adott prognyalnyelv programjai, vagy ilyenek pl. egyes nyilvántartások amelyekben pl a „neve”, a „hallgató azonosítója”, a „diákigazolvány száma” stb. szavak gyakran el"fordulnak Ilyen esetekben egy un. sztatikus
szótárat lehet készíteni ezekb"l a szavakból vagy kifejezésekb"l és a szótár minden egyes tételéhez egy-egy sorszámot rendelve csak a sorszámot kell tárolni (vagy kódolni). A mondott példákra (programnyelv, nyilvántartás) könny9 ilyen betücsoportokat, szavakat vagy kifejezéseket kigy9jteni. Egy általános lingvisztikai nyelv esetében sokkal nehezebb dolgunk van, s valamiylen módszerrel ki kell gy9jteni az egyáltalán el"forduló n-betüs (n>1) csoportokat és azok gyakoriságát, méghozzá elég nagy, reprezentatív szövegmintából. Minél hosszabb (= több betüs) csoportokra terjed ki a vizsgálat, annál nagyobb a számításigénye és annál több tétel lesz a megszerkesztend" sztatikus szótárban is. 43 Ha az ird modellt alkalmazzuk latinbetüs lingvisztikai szövegekre, akkor mintegy kétszeres tömörítési arányt lehet elérni az egyszerü és az adaptive Huffman kódolással. FileNév: InfotechnikaÚjJegyzet3.doc -
102/184 - Utoljára módosítva: 2001-11-05 Ezért általános lingvisztikai szövegeknél sokszor megelégszenek az egyáltalán el"forduló n=2 betüs csoportok és azok gyakoriságainak megállapitásával. Az ilyen kétbetüs csoportot digramnak44 nevezik, az ilyeneket alkalmazó kódolást pedig digram kódnak. A következ" egyszerü példán szemléltetjük egy ilyen digram kódolás lényegét. 3.10 példa Adott egy ötbetüs X = {A, B, C, D, R} ábécé. Ha ehhez fix szóhosszúságú kódot használunk, akkor 3 bites kódra van szükség, de az meg redundáns lesz, mert a lehetséges 23 = 8 kombinációból hármat nem használtunk fel. Használjuk fel a „megmaradt” 3 kódszót három digram kódolására Legyen így a kódtábla a következ": betü v. betü v. kód kód digram digram A 000 R 100 B 001 AB 101 C 010 AC 110 D 011 AD 111 Legyen a kódolni kívánt szó: ABRACADABRA A kódoló beolvassa az els" két karaktert (=AB) és
megnézi, hogy van-e ilyen digram a táblázatban. Az adott példánál van és a hozzárendelt kódszó: 101 Ezután ismét beolvas két karaktert (=RA) és megnézi, hogy ez a digram el"fordul-e a kódtáblában. Nem fordul el", tehát csak az els" betüjéhez (=R) tartozó kódot adja ki, ami most: 100 Ez után veszi az R betü utáni digramot (=AC), amely ismét el"fordul a kódtáblában és a hozzárendelt kódszó: 110 Az eljárást folytatva a következ" 7x3 =21 bites sorozatot kapjuk: 101 100 110 111 101 100 000 Ha az adott ábécé mindegyik szingli betüjéhez rendeltünk volna egy-egy hárombites kódszót, akkor a 11 betüs szóhoz kapott bitsorozat 11 x 3 = 33 bites lenne. A tömörítési arány tehát most 33/21 = 1,57 szeres és ehhez pusztán az adott kódolásnál úgyis meglév" redundanciát használtuk ki, de figyelembe vettünk három, a kódolandó szövegben gyakori digrammát is. Ezért az alkalmazott diszkrét valószín9ségi
modell most nem független (=independent) eseményekkel számol, tehát a valószín9ségi modell nem iid és nem ird modell. 44 Van más neve is: duplet. A hárombet6sé: triplet, a négybetüsé: kvadruplet és így tovább FileNév: InfotechnikaÚjJegyzet3.doc - 103/184 - Utoljára módosítva: 2001-11-05 Az adott példánál a dekódolás is egyszerü, mert mind az egyes betükhöz, mind a digrammákhoz ugyanolyan hosszú (3 bites) kódszavakat rendeltünk, tehát a dekódolást is hárombites csoportonként kell elvégezni. Az elv változó szóhosszúságú kódolásnál is alkalmazható. Audio file-ok tömörítése A CD min"ség9, mind id"ben, mind amplitúdóban diszkrét (=digitalizált) audio információ igen nagy file-okat eredményez, amelyek mérete (a ma éppen használatos CD technika mellett 600-800 MB.45 Így a tömörítés nagyon is fontos Ez a hatalmas adatmennyiség a ma szokásos 44,1 kHZ-es mintavételi frekvencia és 16 bites analóg-digitál
átalakítás következménye. Ha Huffman-féle veszteségnélküli tömörítést szeretnénk alkalmazni, akkor a 16 bites kvantálás 65 536 különböz", változó szóhosszúságú kódszót jelentene, ami kezelhetetlenül sok. Léteznek ugyan igen nagy forrásábécéket is kezelni képes technikák (pl az un. rekurzív indexelés), de ezekkel is csak 1,1 – 1,5-szeres tömörítési arányt lehet elérni. A hangfile-ok veszteség nélküli tömörítésére is alkalmazható a képfilelok tömörítésére kitalált un különbségi kódolás technikája (amely csak az egymás környezetében lév" hangok eltéréseit kódolja és közvetíti), de ezzel is csak 1,5 – 1,8-szoros tömörítési arányt lehet elérni, s ráadásul igen nagy számítási kapacitással. Más, finomított valószín9ségi modellekkel ezeknél jobb tömörítési arány is elérhet" ugyan, de azok sem közelítik meg a ma már elterjedten használt mp3 (veszteséges) tömörítési
technika 10-szeres, vagy ennél is jobb tömörítési arányát. Végeredményben tehát a hangfile-ok tömörítésével kapcsolatban elmondható, hogy a veszteség nélküli tömörítési technikákban használatos (esetenként finomított, adaptív) Huffman kódolási módszer nem erre való. 45 A tényleges file mérete természetesen függ annak az audio információnak (pl. zenedarabnak) az id5tartamától is, amelyet digitalizálunk, de függ a zene jellegét5l is. Néhány összehasonlító kisérlet azt mutatja, hogy az azonos id5tertemú zenék közül a szimfonikus zenekari m6vek (pl Mozart) információtartalma nagyobb, mint más zenéké. FileNév: InfotechnikaÚjJegyzet3.doc - 104/184 310 Utoljára módosítva: 2001-11-05 Aritmetikai kódolás Nem a Huffman-féle kódolási módszer az egyetlen, amit manapság változó szóhoszszúságú kódok el"állítására használnak. Egyre n" a népszer9sége az un aritmetikai kódoknak is Ezek különösen
alkalmasak kis szimbólumkészlettel rendelkez" források kódolására A bináris források többsége pedig ilyen Az aritmetikai kódok is az illeszt" kódok családjába tartoznak és ezért veszteség nélkül tömörítik a forrásinformációt. Mindeddig többnyire olyan módszereket mutattunk be, amelyekben a forrás modellezésének a kérdését és a kódolási módszert egymástól elválasztva tárgyaltuk s az aritmetikai kódolásnál is ezt a koncepciót követjük.46 Célszer9 itt a kódolás hatékonyságára egy újabb szóhasználatot bevezetni, nevezetesen a kódolási arány fogalmát. Ezt az E Függelékben fejtettük ki és vetettük öszsze a korábban már használt hatásfok-fogalommal Egyszerüen arról van szó, hogy az AC kódolási arány azt fejezi ki, hogy az illeszt" kód egy-egy bitje átlagosan hányadrészét szállítja a forrásentrópia egy-egy bitjének. Nyilvánvaló, hogy AC 1 kell, hogy legyen. A megel"z"
fejezetekben a Huffman-féle kódolási módszert tárgyaltuk, amelynek legalább a továbbfejlesztett változatai biztosították, hogy az átlagos kódszóhossz kisebb legyen, mint a H(X) forrásentrópia plusz egy bit.47 Gallagher egy 1978-as cikkében másképpen is megfogalmazta a Huffman kódokra levezetett e feltételt: pmax-szal lelölve a forrás szimbólumkészletében el"forduló legnagyobb szimbólumgyakoriságot megmutatta, hogy az átlagos (Huffman) kód szóhosszúság határai a következ"k: H (X ) l H ( X ) + p max + 0,086 Erre a korlátra alább Gallagher korlát (vagy Gallagher határ ill. Gallagher feltétel) néven hivatkozunk. Gondolatmenetünk folytatása el"tt egy példán szemléltetjük az itt elmondottakat. 46 Igazából nem egészen. Abban a pillanatban, ugyanis, amikor méár nem tekintjük egészen függetleneknek a forrásszimbólumok sorozatát, tulajdonképpen szakítunk az ird modellel az aritmetikai kódoláskor pedig pontosan ez
történik. 47 Végs5 soron a Kraft-McMillan egyenl5tlenség alkalmazásával tudtuk levezetni az átlagos kódszóhosszúságra az alsó és a fels5 korlátot. Az alsó korlát értelemszerüen a forrásentrópia, mert ha veszteség nélkül kódolni akarjuk a forrás által emittált információt, akkor az átlagos kódszóhossz nyilván nem lehet kevesebb bit, mint a forrásentrópia. Megmutattuk, hogy mindíg elérhet5, hogy az átlagos kódszóhossz kisebb legyen mint a forrásentrópia plusz egy bit. Az olvasóra bíztuk, hogy bizonyítás nélkül elhiszi-e, hogy ebb5l a szempontból mindíg optimális a Huffman-féle kódolási eljárás. FileNév: InfotechnikaÚjJegyzet3.doc - 105/184 - Utoljára módosítva: 2001-11-05 Kódolási arány és a Gallagher korlát A 3.5 példa alapadataiból kiindulva az ott kiszámolt forrás-jellemz"k a következ"k voltak: 3.11 példa Szimbólum Gyakoriság Pi I(x) bit A 5 0,04902 4,350497 B 7 0,068627 3,86507 C
10 0,098039 3,350497 D 15 0,147059 2,765535 E 20 0,196078 2,350497 F 45 0,441176 1,180572 Total 102 1 Események 6 H(x) 2,195409 Hmax 2,584963 Hatásfok: 85% Redundancia: 15% Ehhez a következ" Huffman kódot rendeltük hozzá: Szimbólum Rel.gyak kód kódhossz Li . pi F 0,441176 1 1 0,441176 E 0,196078 011 3 0,588234 D 0,147059 010 3 0,441177 C 0,098039 001 3 0,294117 B 0,068627 0001 4 0,274508 A 0,04902 4 0,19608 Total 1 0000 2,235292 Az átlagos kódszóhosszúság a táblázat utolsó oszlopában feltüntetett, a relatív gyakoriságokkal súlyozott kódszóhosszak összege, vagyis 2,235292 bit/kódszó. Láthatóan nagyobb, mint a forrásentrópia [H(X) = 2,195409 bit/forrásszimbólum] és ennek így is kell lennie. FileNév: InfotechnikaÚjJegyzet3.doc - 106/184 - Utoljára módosítva: 2001-11-05 Ezekb"l az adatokból kiszámítható az eredményül kapott Huffman kódhoz tartozó kódolási
arány: AC = H ( X ) l = 2,195409 2,235292 = 0,982157 Azaz a Huffman kód minden egyes bitje átlagosan 0,982 bit forrásinformációt hordoz. A Gallagher-korlát szerint az átlagos kódszóhossz a forrásentrópia és [H(X)+ +pmax+0,086] közé kell, hogy essen.] Ellen"rízzük ezt az adott példánál: H (X ) l H ( X ) + p max + 0,086 2,195409 < 2,235292 < 2,195409+0,441176+0.086 = 2,722585 Az adott példánál mindenesetre teljesül a Gallagher feltétel. A számos példa kapcsán láttuk már, hogy ha a forrásábécé nagy, akkor a betüihez tartozó valószín9ségek kicsik és (hacsak nincs valamilyen domináns forrásszimbólum akkor) pmax is kicsi. Következésképp a Gallagher korlát miatt a Huffman eljárás nagy forrásábécé esetén a forrásentrópiához igen közeli átlagos szóhosszúságú kódot eredményez. Ez különösen jól kit9nik a kódolási arány értékéb"l A dolog azonban fordítva is igaz: Kevés szimbólumot tartalmazó
forrásábécé esetén pmax aránylag nagy lehet (mint azt a 3.6 és 37 példáknál is láttuk) és ilyenkor a Huffman kód a forrásentrópiához képest korántsem hatékony.48 E probléma kiküszöbölésének egyik módja az, hogy blokkokba csoportosítjuk a forrásszimbólumokat és a blokkokhoz szerkesztünk Huffman kódot. A 38 példában demonstráltuk ezt és azt (is) tapasztaltuk, hogy a forrás szimulálására alkalmazott diszkrét valószín9ségi modell megváltoztatása nélkül a forrás információelméleti jellemz"i nem változnak, de a Huffman kód kedvez"bb lehet. A blokkméret növelésével még kedvez"bb lehet a kód hatásfoka, de kezelhetetlenül nagy lesz a kódszavak száma. Azt is megjegyeztük a forrássszimbólumok blokkosításával kapcsolatban, hogy ez a módszer gyakorlatilag nem mindíg alkalmazható.49 Tegyük még ehhez hozzá, hogy ha csak egy kissé is megváltozik a forrásábécé valószín9ségi eloszlása (és nem
változtatjuk vele együtt a blokk-valószín9ségeket) akkor ez igen nagy mértékben befolyásolhatja a kód tényleges hatékonyságát. 48 Ekkor is belül van azonban a Kraft-McMillan egyenl5tlenségb5l következ5 korlátokon. 49 A megállapítások kissé ellentmondásosak, mert azt mondtuk, hogy a Gallagher korlát elég jól m6ködik nagy forrásábécé esetén, s ilyenkor rendszerint nem is tér el nagyon pmax a többi forrásszimbólum valószín6ségét5l. A blokkosítás ugyan ebben az esetben exponenciálisan növelné a szimbólumok számát, de hát éppen ilyenkor nincs is szükség rá. A másik határeset az, amikor kevés a forrásszimbólumok száma s ráadásul van köztük olyan, amely miatt pmax sokkal nagyobb, mint a többi szimbólum valószín6sége. Ilyenkor segíthet a blokkosítás és ilyenkor valóban alkalmazható is, mert a blokkok száma nem lesz kezelhetetlenül nagy. A probléma tehát csak az, hogy a „kicsi” és a „nagy” forrásábécé
nagyon relatív és nagyon szubjektív meghatározások, s a határesetekben valóban adódhat gond. FileNév: InfotechnikaÚjJegyzet3.doc - 107/184 - Utoljára módosítva: 2001-11-05 Foglaljuk össze, hogy miért jó a Huffman-féle veszteség nélküli tömörítés és mégis mi a gond a Huffman kód hatékonyságával! 1. Bármelyik veszteség nélküli illeszt" kódolás feltételezi, hogy a forrás valamilyen ismert diszkrét valószín9ségi modell szerint emittálja a forrásszimbólumokat és az alkalmazott illeszt" kódolási módszer ismeri ezt a valószín9ségi modellt. A legegyszer9bb ilyen valószín9ségi modell az iid (independent, identically distributed) modell s csak egy fokkal bonyolultabb az ird (= independent, randomly distributed) modell. 2. Minden redundancia-csökkent" illeszt" kódolás egyuttal veszteség nélküli tömörít" eljárás is Így mind az egyszer9 (=”kétmenetes”) mind a továbbfejlesztett (=”egymenetes”)
adaptív Huffman kódolás is. Vannak más, a Huffman eljárástól különböz" adaptív kódolási eljárások is. 3. A Huffaman-féle kódolási módszer változó szóhosszúságú kódszavakat rendel a forrásszimbólumokhoz és (az ird modell esetében) minden esetben optimális átlagos szóhosszúságú kódot ad. Ez más szóval azt jelenti, hogy a kódolási arány a lehet" legjobban közelíti a 100%-ot. 4. Triviális, hogy a kód (bitekben megadott) átlagos szóhosszúsága nem lehet kisebb a forrásentrópiánál Ezért a szóhosszúság alsó korlátja a H(X) forrásentrópia Mint korábban láttuk, léteznek olyan diszkrét valószín9ségeloszlások, amelyek esetén az illeszt" kód átlagos szóhosszúsága éppen a forrásentrópiával egyenl". (Ti ha a valószín9ségek 2-nek negatív egész kitev"j9 hatványai) 5. Kérdés, hogy van-e az optimális kód átlagos szóhosszúságára valamilyen elvi fels" határ. Nos, több is van 6. A
kódhosszúság egyik elvi fels" határa a Kraft-McMillan egyenl"tlenségb"l adódik, s ezzel H ( X ) l < H ( X )+ 1 7. Minden egyéb, további nyereséget, azaz hatékonyságnövelést eredményez" megfontolás és módszer gyakorlatilag ezek között a korlátok közötti további nyereségre törekszik. 8. Van a szóhosszúság maximumára egy másik elvi korlát is, amit Gallegher bizonyított s eszerint H (X ) l H ( X ) + p max + 0,086 ahol pmax a forrásábécé leggyakoribb szimbólumához tartozó el"fordulási valószín9ség. Ez az un. Gallegher korlát (különösen nagy forrásábécék esetén) sokkal sz9kebb intervallumot jelent, mint a Kraft-McMillan egyenl"tlenségb"l adódó korlát 9. Úgy t9nik, hogy hiába is optimális a Huffman-féle kódolás, ha a forrásábécé számossága „kicsi” és a valószín9ségek között van domináns valószín9ség, akkor a kódolási arányt tekintve a Huffman-féle eljárás bizony
egyáltalán nem hatékony, FileNév: InfotechnikaÚjJegyzet3.doc - 108/184 - Utoljára módosítva: 2001-11-05 10. Javítható a Huffman kód hatékonysága, ha a forrásszimbólumokat blokkosítjuk, s e blokkokra alkalmazzuk a Huffman eljárást. Ezzel azonban az a gond, hogy ha n forrássszimbólum van és k hosszúságú blokkokat alkotunk bel"le, akkor nk ilyen blokk lesz, azaz a blokkhosszúsággal exponenciálisan növekszik azoknak a kódszavaknak a száma, amelyeket a blokkok Huffman kódszavai reprezentálnak. Ez pedig akkora tárolási és számítási kapacitás-növekedést eredményezhet, amely messze nincs arányban a kódolási arány javulásával elérhet" hatékonyság-növekedéssel. 11. Mi tehát a gond a blokkosítás leírt módszerével? Lényegében az, hogy valamenynyi lehetséges k elem9 kombinációval számolunk, jóllehet a gyakorlatban valószín9leg nem fordul el" minden kombináció50 12. A kézenfekv" megoldás az, hogy csakis
az adott forrásnál el"forduló blokkokat vesszük figyelembe, s csakis azokkal számolunk. Ezekb"l biztosan kevesebb van, mint nk . Ilyen módon alkalmazhatjuk a blokkosítás elvét a Huffman-féle kódolási módszer hatékonyságának növelésére anélkül, hogy kezelhetetlenül nagy51 kódszókészletet kapnánk. Lényegében ezt teszi az aritmetikai kódolás. 13. Bármelyik veszteség nélküli illeszt" kódolás feltételezi, hogy a forrás valamilyen ismert diszkrét valószín9ségi modell szerint emittálja a forrásszimbólumokat és az alkalmazott illeszt" kódolási módszer ismeri ezt a valószín9ségi modellt. A legegyszer9bb ilyen valószín9ségi modell az iid (independent, identically distributed) modell s csak egy fokkal bonyolultabb az ird (= independent, randomly distributed) modell. 14. Minden redundancia-csökkent" illeszt" kódolás egyuttal veszteség nélküli tömörít" eljárás is. Így mind az egyszer9
(=”kétmenetes”) mind a továbbfejlesztett (=”egymenetes”) adaptív Huffman kódolás is. Vannak más, a Huffman eljárástól különböz" adaptív kódolási eljárások is. 15. A Huffaman-féle kódolási módszer változó szóhosszúságú kódszavakat rendel a forrásszimbólumokhoz és (az ird modell esetében) minden esetben optimális átlagos szóhosszúságú kódot ad. Ez más szóval azt jelenti, hogy a kódolási arány a lehet" legjobban közelíti a 100%-ot. 16. Triviális, hogy a kód (bitekben megadott) átlagos szóhosszúsága nem lehet kisebb a forrásentrópiánál Ezért a szóhosszúság alsó korlátja a H(X) forrásentrópia 50 Ha pl. egy lingvisztikai nyelv esetén vizsgáljuk a k hosszúságú betükombinációk el5fordulási gyakoriságait (ami a titkosírások megfejtésekor nagyon is reális probléma), egészen nyilvánvaló, hogy ha k=5, akkor a magyar nyelvben egészen biztosan nem fordul el5 öt mássalhangzót tartalmazó blokk, a
mássalhangzók torlódását tiltó nyelvi szabályok miatt. Egyetlen, kuriózumnak számító magyar szót (= fiaiéi) öt magánhangzó sem torlódhat. 51 Persze elvileg nincs olyan, hogy “kezelhetetlenül nagy”. Gyakorlatilag azonban reális korlátai vannak mind a megemgedett kódszavak tárolására fenntartott tárolókapacitásnak, mind pedig az online alkalmazható algoritmusok bonyolultságának Emlékeztetünk azonban arra, hogy csakis a fenti 6. és 8 pontokban már leírt Kraft-McMillan és Gallegher korlátokon belüli finomításról, hatékonyság-növelésr5l lehet szó, de igazán nagy állományoknál ez is lényeges lehet. FileNév: InfotechnikaÚjJegyzet3.doc - 109/184 - Utoljára módosítva: 2001-11-05 17. Kérdés, hogy van-e az optimális kód átlagos szóhosszúságára valamilyen elvi fels" határ. Nos, több is van 18. A kódhosszúság egyik elvi fels" határa a Kraft-McMillan egyenl"tlenségb"l adódik, s ezzel H ( X ) l
< H ( X )+ 1 19. Minden egyéb, további nyereséget, azaz hatékonyságnövelést eredményez" megfontolás és módszer gyakorlatilag ezek között a korlátok közötti további nyereségre törekszik. 20. Van a szóhosszúság maximumára egy másik elvi korlát is, amit Gallegher bizonyított s eszerint H (X ) l H ( X ) + p max + 0,086 ahol pmax a forrásábécé leggyakoribb szimbólumához tartozó el"fordulási valószín9ség. Ez az un. Gallegher korlát (különösen nagy forrásábécék esetén) sokkal sz9kebb intervallumot jelent, mint a Kraft-McMillan egyenl"tlenségb"l adódó korlát 21. Úgy t9nik, hogy hiába is optimális a Huffman-féle kódolás, ha a forrásábécé számossága „kicsi” és a valószín9ségek között van domináns valószín9ség, akkor a kódolási arányt tekintve a Huffman-féle eljárás bizony egyáltalán nem hatékony, 22. Javítható a Huffman kód hatékonysága, ha a forrásszimbólumokat blokkosítjuk, s
e blokkokra alkalmazzuk a Huffman eljárást. Ezzel azonban az a gond, hogy ha n forrássszimbólum van és k hosszúságú blokkokat alkotunk bel"le, akkor nk ilyen blokk lesz, azaz a blokkhosszúsággal exponenciálisan növekszik azoknak a kódszavaknak a száma, amelyeket a blokkok Huffman kódszavai reprezentálnak. Ez pedig akkora tárolási és számítási kapacitás-növekedést eredményezhet, amely messze nincs arányban a kódolási arány javulásával elérhet" hatékonyság-növekedéssel. 23. Mi tehát a gond a blokkosítás leírt módszerével? Lényegében az, hogy valamenynyi lehetséges k elem9 kombinációval számolunk, jóllehet a gyakorlatban valószín9leg nem fordul el" minden kombináció52 52 Ha pl. egy lingvisztikai nyelv esetén vizsgáljuk a k hosszúságú betükombinációk el5fordulási gyakoriságait (ami a titkosírások megfejtésekor nagyon is reális probléma), egészen nyilvánvaló, hogy ha k=5, akkor a magyar nyelvben
egészen biztosan nem fordul el5 öt mássalhangzót tartalmazó blokk, a mássalhangzók torlódását tiltó nyelvi szabályok miatt. Egyetlen, kuriózumnak számító magyar szót (= fiaiéi) kivéve öt magánhangzó sem torlódhat. FileNév: InfotechnikaÚjJegyzet3.doc - 110/184 - Utoljára módosítva: 2001-11-05 24. A kézenfekv" megoldás az, hogy csakis az adott forrásnál el"forduló blokkokat vesszük figyelembe, s csakis azokkal számolunk. Ezekb"l biztosan kevesebb van, mint nk . Ilyen módon alkalmazhatjuk a blokkosítás elvét a Huffman-féle kódolási módszer hatékonyságának növelésére anélkül, hogy kezelhetetlenül nagy53 kódszókészletet kapnánk. Lényegében ezt teszi az aritmetikai kódolás. Nem áll szándékunkban, hogy a következ"kben részletesen tárgyaljuk az aritmetikai kódolás módszereit, alkalmazásait és összehasonlítását a Huffman-féle kódolási módszerekkel, mert ez igen messzire vezetne és
túlságosan terjedelmes is lenne. Az eddig követett célkit9zésnek megfelel"en azonban szeretnénk megmutatni, hogy hogyan is m9ködik ez a módszer, mi a lényege és melyek az el"nyei. Szekvenciák kódolása. A 3.8 példában a forráshoz rendelt ird modell megváltoztatása nélkül digrammákat (azaz k=2 hosszúságú szekvenciákat) alkottunk a forrásábécé betüib"l és e szekvenciákhoz rendeltünk Huffmann módszerével egy-egy kódszót. A szekvenciák hossza természetesen növelhet". Igaz, hogy ezzel a számuk is növekszik Az idézett példában pl. Az AA betüpárt (=szekvenciát --vagy itt digrammát) a-val jelöltük, az AB digrammát b-vel és így tovább. Az aritmetikai kódolásnál minden egyes szekvenciához egy-egy új, és az összes megel"z"t"l különböz" azonosítót (szimbólumot), un. jelz számot rendelünk hozzá Ezt a jelz"szám-hozzárendelést, persze, sokféleképpen megtehetjük. Az aritmetikai
kódolásnál azt a konvenciót alkalmazzuk, hogy a jelz"szám egy a [0,1), alulról zárt, felülr"l nyitott intervallumba es" törtszám.54 Ahhoz, hogy ezt megtehessük, egy olyan függvényre van szükségünk, amely leképezi a forrássszimbólumok ténylegesen el"forduló szekvenciáit a [0,1) intervallumra. Egy lehetséges választás erre a leképezésre a forrás valószín9ségi változójának eloszlásfüggvénye.55 Ez egy monoton növekv" függvény, amely a forrásszimbólumok i indexével növekszik. Az aritmetikai kódolásnál ezt a leképezést alkalmazzuk 53 Persze elvileg nincs olyan, hogy “kezelhetetlenül nagy”. Gyakorlatilag azonban reális korlátai vannak mind a megemgedett kódszavak tárolására fenntartott tárolókapacitásnak, mind pedig az online alkalmazható algoritmusok bonyolultságának Emlékeztetünk azonban arra, hogy csakis a fenti 6. és 8 pontokban már leírt Kraft-McMillan és Gallegher korlátokon belüli
finomításról, hatékonyság-növelésr5l lehet szó, de igazán nagy állományoknál ez is lényeges lehet. 54 Ezekb5l a törtszámokból –mint tudjukvégtelen sok van, tehát általános esetben is alkalmazhatók arra, hogy minden egyes jelz5szám más-más, egyedi azonosító szám legyen. 55 Ezt kumulatív valószín6ség sürüségfüggvénynek is szokták nevezni. FileNév: InfotechnikaÚjJegyzet3.doc - 111/184 - Utoljára módosítva: 2001-11-05 Igen érdekes története van annak, hogy hogyan és miért is alkalmazták a (diszkrét) valószín9ségi eloszlásfüggvényt a forrás-szekvenciákhoz tartozó bináris kódok megszerkesztésére. Már Shannon megemlítette a diszkrét eloszlásfüggvény alkalmazását annál a kódolási módszernél, amit ma Shannon-Fano kódként ismerünk Tette ezt az 1948-as alapcikkében, amelyre már többször hivatkoztunk. [10] Fano, aki az MIT-n információelméletet tanított a legels" kurzusán olyan, kés"bb
igen nevessé vált embereket üdvözölhetett a hallgatói között, mint pl. Huffman Ennek az els" kurzusnak volt a hallgatója Peter Elias is, aki felvetette ennek az ötletnek egy rekurzív implementációját, de sohasem publikálta. Mások (Abramson és kés"bb,1968-ban Jelinek) továbbfejlesztették az aritmetikai kódolás ötletét. 1976-ban aztán újra felfedezték az aritmetikai kódolást és gyakorlati algoritmusokat is kidolgoztak hozzá. Az aritmetikai kódolás részletes tárgyalása el"tt álljunk meg egy szóra a diszkrét valószín ségi eloszlásokkal kapcsolatos, itt alkalmazott jelölésrendszer összefoglalása céljából. Jelölje A = {a1, a2, . ai, am} egy m elem9 (véges, diszkrét) forrásábécét és képezzük le ennek az ábécének az elemeit a valós számegyenesre az X (ai) = i ai A (ahol X=véletlen változó) leképezéssel. Ez azt is jelenti, hogy ha a forrásra nézve adva van egy P valószín9ségi modell, akkor az X
valószín9ségi változónak ismert a valószín9ség-sür9ségfüggvénye is (ami diszkrét valószín9ségek esetében egy hisztogram): P (X=i) = P(ai) és az eloszlásfüggvény definició szerint FX (i ) = i P( X = k ) k =1 Ez az eloszlásfüggvény minden nemzérus valószín9ség9 ai forrásszimbólumhoz másmás FX(i) értéket rendel hozzá. Ezeket a definiciókat, fogalmakat és jelöléseket alkalmazzuk az alábbiakban az aritmetikai kódolás leírására. FileNév: InfotechnikaÚjJegyzet3.doc - 112/184 - Utoljára módosítva: 2001-11-05 Egy jelz szám generálása Emlékezzünk arra, hogy a forrássszimbólumok csoportosításával („blokkosításával”) javíthattuk a Huffman-féle kódolási eljárás hatékonyságát. Azt mondtuk, hogy minden egyes blokkhoz egy-egy újabb szimbólumot, nevezetesen egy a [0,1) intervallumba es" jelz"számot rendelünk hozzá. Itt az ilyen jelz"számok el"állításáról lesz szó. Emlékezzünk arra
is, hogy ahelyett, hogy a forrássszimbólumok minden lehetséges k-elem9 sorozatát el"állítottuk volna, csakis azokhoz a k-elem9 szekvenciákhoz rendelünk egy-egy egyedi jelz"számot, amelyek ténylegesen el"fordulnak a forrás által emittált sorozatban. A jelz"számokat a számegyenes [0,1) intervallumára való leképezéssel generáljuk. Az is kézenfekv", hogy ha mindez valamilyen adaptív eljárással történik, akkor az eljárás kezdetén még csak kevés jelz"számunk van, s ezért a [0,1) intervallumot is csak kevés rész-intervallumra kell felosztanunk, majd az eljárás el"rehaladtával monoton növekszik a jelz"számok száma s a [0,1) intervallumot is egyre több (diszjunkt) rész-intervallumra kell osztani. Mindezek meglehet"sen logikus következményei a már leírt elveknek „Mindössze” megfelel" algoritmust kell hozzá találni A jelz"szám folyamatos generálása úgy m9ködik tehát, hogy az
eljárás el"rehaladásával egyre finomítjuk (más szóval redukáljuk) annak az intervallumnak a méretét, amelyen belül van a jelz"szám. Az egyszerüség kedvéért a [0,1) intervallumot egység-intervallumnak nevezzük. Az eljárás úgy kezd"dik, hogy az egység-intervallumot két szub-intervallumra osztjuk úgy, hogy az egyikhez az FX(i-1), a másikhoz pedig az FX(i) eloszlásfüggványérték tartozik, majd a felosztást folytatjuk, miközben az i index végigfut valamennyi i=1-t"l m-ig tartó értéken. 3.12 példa Legyen adott egy hárombetüs ábécé: A = {a1, a2, a3,} A következ" szimbólum-valószín9ségekkel: P(a1) = 0,3; P(a2) = 0,5; P(a3) = 0,2 FileNév: InfotechnikaÚjJegyzet3.doc - 113/184 - Utoljára módosítva: 2001-11-05 Az ehhez tartozó valószín9ség-eloszlásfüggvény a következ": FX(i) FX(3) 1 P(a3) FX(2) 0,8 P(a2) FX(1) 0,3 P(a1) 0 A jelz"szám-generálásról mondottak értelmében az
eloszlásfüggvény diszkrét értékei az els" lépésben felosztják a teljes [0,1) intervallumot a három forrássszimbólumnak megfeleltethet" három részre a következ"képp: 0,8 0,3 0 a1 a2 1 a3 Ha a forrás által emittált els" szimbólum történetesen az a2-es, akkor a hozzárendelt jelz"szám a fenti [0,1) intervallum vastagított szakaszába (=szubintervallumába) esik. Visszatérve a jelz"szám-generálás általános eljárására belátható, hogy az [FX(i-1), FX(I)) szub-intervallum megfeleltethet" az ai forrásszimbólumnak és miközben az i index végigfut az adott forrásábécé valamennyi elemének sorszámán ez a leképezés diszjunkt szakaszokra particionálja a teljes [0,1) tartományt. (Mindezt az eljárás legels" lépésében!) Mint mondtuk, a szekvenciához tartozó jelz"szám egy szám lesz, amely a [0,1) tartományba esik. Az eljárás els" lépésekor ez a „szekvencia” még csak egyetlen,
mondjuk az ai szimbólumból áll Az ehhez ekkor hozzárendelhet" (és hozzárendelend") jelz"szám az ai-vel jelölt szubintervallumba kell, hogy essen. Az eljárás második lépésében az el"bbi szubintervallumot kell pontosan olyan arányban m szakaszra particionálni, mint ahogyan az els" lépésben megtettük és az ekkor kapott szubintervallumok közül kiválasztani azt, amelyiket a forrás által emittált második szimbólum jelöl. Ezt az eljárást kell aztán lépésr"l-lépésre alkalmazni és egyre inkább finomított (egyre kisebb) szubintervallumokat rendelni az egyre hosszabb forrásszimbólum-szekvenciákhoz. Az el"z" példát folytatva szemléltethet" az eljárás FileNév: InfotechnikaÚjJegyzet3.doc - 114/184 - Utoljára módosítva: 2001-11-05 3.13 példa Legyen a forrás által generált szimbólumsorozat pl. a2a1a3a3a1 : Az els", vagyis az a2-es szimbólumhoz tartozó szubintervallumot már a példa
els" részében generáltuk, de az eljárás folyamatosságának szemléltetése céljából a következ" ábrán is feltüntetjük. Mivel az egység-intervallum felülr"l nyitott logikus, hogy valamennyi szub-intervallum is felülr"l nyitott legyen. A jelz"számra csak az az el"írás, hogy a szimbólumhoz vagy a szekvenciához rendelt szubintervallumon belül legyen. Egyik szokásos jelölési konvenció az, hogy a szubintervallum alsó határát rendelik jelz"számnak, ez ugyan lehetséges az alulról zárt – felülr"l nyitott intervallum határok miatt, mégis gyakran követik azt a konvenciót, hogy jelz"számként a (szub) intervallum közepén lév" számot alkalmazzák. Az itt demonstrációnak szánt példában mi is az utóbbi hozzárendelési konvenciót követtük. A 3.12 példához tartozó szub-intervallumok és jelz"számok szerkesztése a 115 oldalon látható. Az eljárás során az els" lépésben
kiválasztjuk azt a szub-intervallumot, amelyik az ai forrásszimbólumhoz tartozik. Ez az adott példában az a2-vel jelölt intervallum: [0,3;0,8) A többi szub-intervallum nem szerepel a további lépésekben, ezeket tehát el is felejthetjük. Az a2-vel jelölt szubintervallum közepe: (0,3+0,8)/2=0,55 Ez lesz az a2 „szekvenciához” rendelt jelz"szám A következ" lépésben a kiválasztott szub-intervallumot – azaz a [0,3;0,8) intervallumot osztjuk fel ugyanannyi részre és ugyanolyan arányban, mint azt az els" lépésben megtettük a forrásábécé szimbólumainak száma és a hozzájuk rendelt valószín9ségek szerint. A példában a felosztási határokat a következ"képp számoltuk ki: Az intervallum teljes terjedelme 0,8-0,3 = 0,5 Ennek a terjedelemnek a 0,3-szorosa= 0,15; a 0,8 szorosa pedig 0,4. ezeket az értékeket adtuk hozzá a teljes [0,3;0,5) intervallum alsó határához és így kaptuk a 0,3+0,15=0,45 és a 0,3+0,4=0,7 értékeket. A
következ" szubintervallumot a példa szekvenciája szerint az a1-szimbólum jelöli ki, amelyhez tartozó intervallum a következ": [0,3;0,45). Ennek a közepe (0,3+0,45)/2= 0375 Ez lesz az a2a1 szekvenciához tartozó jelöl"szám. Az ebben a lépésben el"állított többi szubintervallumot megint csak elfelejtjük A következ" lépésben a [0,3;0,45 szubintervallumot osztjuk fel most az „eredeti” forrásszimbólum-gyakoriságok arányában Ennek a szubintervallumnak a terjedelme 0,45-0,3= 0,15. Ezt az „eredeti” 0,3 és 0,8 arányban felosztva a 0,3.0,15=0,045 és a 0,80,15=0,12 értékeket kapjuk, amelyeket ennek a szubintervallumnak az alsó határához (=0,3) hozzáadva kapjuk a 0,345 és a 0,42 közbens" határértékeket. Most azonban a szekvencia következ" tagja, azaz a példa szerint a3 jelöli ki az aktuális [0,42; 0,450) intervallumot, amelynek a közepe (0,42+0,45)/2=0,435. Ez lesz az a2a1a3 szekvencia jelz"száma A
következ" oldal ábráján mindegyik szub-intervallumot kinagyítottuk, mert különben nem lett volna ábrázolható az egyre „finomított” aláosztás, A „kinagyítás természetesen csak az ábrázolás kedvéért történt, az elvi eljárásban semmi ilyesmire nincsen szükség. Érdemes megfigyelni, hogy valamennyi forrássszimbólum egybetüs szekvenciának felel meg és valamennyi szub-szekvenciánek egyedi jelz"száma van. FileNév: InfotechnikaÚjJegyzet3.doc - 115/184 - Utoljára módosítva: 2001-11-05 Hangsúlyozni kell, hogy valamennyi szub-intervallum független az összes többit"l, még akkor is, ha más-más lépésben generáltuk ezeket a szubintervallumokat. Az intervallum középpontja 0,3 0 a1 0,8 a2 0,45 0,3 a2 a3 0,70 a2 a1 1 0,55 0,80 a3 a2a1 0,375 0.435 0,345 0,3 a1 0,420 a2 0,429 0,420 a1 0,4458 0,444 a1 a3 0,4488 a2 0,435 0,450 a2a1a3a3 0,447 0,4500 a2a1a3a3a1 0,4449 a3 0,444 a2 0,45 a2a1a3 a3
FileNév: InfotechnikaÚjJegyzet3.doc - 116/184 - Utoljára módosítva: 2001-11-05 Összefoglalás A Huffman-féle kódolási módszer bizonyíthatóan optimális, azaz minimális redundanciájú csatornakódot eredményez minden ird modellt követ" forráshoz, ez a kód azonban mégsem optimális (mármint a kódolási arány szempontjából) akkor, ha a forrásszimbólumok száma kevés és a hozzájuk tartozó valószín9ségek között nagy az eltérés (azaz domináns valószín9ség9 szimbólum is van). Végeredményben arról van szó, hogy az ird diszkrét valószín9ségi modell nagyon „egyenetlen”. A valószín9ségek némileg kiegyenlíthet"k akkor, ha nem (csak) az egyes forrásszimbólumokhoz rendelünk kódszavakat, hanem a forrásszimbólumok sorozataihoz (=szekvenciáihoz) is. A Huffman eljárás eme kiterjesztésével az a gond, hogy minden elvileg lehetséges szekvenciával számol, holott a gyakorlatban egyáltalán nem fordul el" minden elvileg
lehetséges betükombináció. Erre a lingvisztikai nyelvek mássalhangzó és magánhangzó torlódásainak gyakorlati korlátját hoztuk fel példaként. Az aritmetikai kódolás végeredményben egy adaptív módszer, amely lehet"vé teszi a ténylegesen el"forduló forrásszimbólum-szekvenciák kódolását és nem rendel kódokat valamennyi elvileg lehetséges szekvenciához. Ezzel kiküszöböli az adaptív Huffman-féle kódolási módszer egy lényeges hátrányát, nevezetesen azt, hogy a szekvenciák hosszával kombinatorikusan igen nagy mértékben növekv" számítási kapacitást biztosítani kelljen. Az aritmetikai kódolás néhány igen szellemes alapötletre épül. Az egyik az, hogy a forrásszimbólum-szekvenciákhoz egy-egy egyedi számot rendel hozzá a [0,1) egység-intervallumban. Minden hozzárendelés racionális szám és lévén a [0,1) alulról zárt, felülr"l nyitott intervallumban végtelen sok szám, nincs semmiféle korlát az
akármilyen hosszú szekvenciák azonosítására. A módszer minden egyes forrásszimbólum-szekvenciához egyedi azonosító kódot rendel hozzá, ami egy racionális szám a [0,1) intervallumban. A módszer egyik lényeges tulajdonsága az, hogy a szekvenciákhoz szub-intervallumokat rendel a [0;1) szám-intervallumban és biztosítja, hogy a különböz" szekvenciákhoz tartozó szub-intervallumok ne fedjék egymást még részben sem és a határokon sem. A forrásszimbólumok szekvenciáihoz e diszjunkt szub-intervallumokba es" számokat rendel hozzá. Az aritmetikai kód tehát változó szóhosszúságú (és így veszteség nélküli tömörítési tulajdonságú) kódolási módszer, amely nem sokban különbözik az adaptív Huffman kódolás blokkosított változatától Lényege, hogy míg a Huffmman kódolás blokkosított változata valamennyi elvileg lehetséges forrásszimbólum-szekvenciához egy.-egy kódszót rendel hozzá, addig az aritmetikai kódolási
módszer csakis a téánylegesen el"forduló forrásábécészekvenciákkal teszi meg ezt. Vegyük figyelembe azonban, hogy mindezt csak a Kraft-McMillan egyenl"tlenségb"l adódó H ( X ) l < H ( X )+ 1 határon ill, FileNév: InfotechnikaÚjJegyzet3.doc - 117/184 - Utoljára módosítva: 2001-11-05 a Gallegher féle H (X ) l H ( X ) + p max + 0,086 határon belül képes biztosítani. Az aritmetikai kódolásról és alkalmazásairól még sokmindent lehetne elmondani, demint ennek az alpontnak a bevezet"jében kijelentettük csak a lényegét, a m9ködését kívántuk itt bemutatni és szemlélteni. Az aritmetikai kódolással kapcsolatban azt szeretnénk hangsúlyozni, hogy a [0,1) nyílt intervallum diszjunkt szakaszainak hozzárendelése a forrásábécé szekvenciáihoz, nos ez igen szellemes megoldás. Ráadásul több okból is Egyrészt a [0,1) intervallumban elvileg végtelen sok racionális szám van s ezért nincs semmilyen elvi határ a
forrásszekvenciák számosságára. Másrészt (jóllehet ezt a fentiekben talán nem eléggé hangsúlyoztuk) a mondott intervallum felosztási módja szub-intervallumokra biztosítja, hogy a szub-intervallumok között semmiféle átfedés nem lehetséges. Ilyen értelemben használtuk a „particionálás” kifejezést is Ennek következtében ha bármely forrásszimbólum-szekvenciát egy-egy ilyen szub-intervallumnak feleltetünk meg, akkor biztosított, hogy bármely szekvenciának egyedi azonosítója (=jelz"száma) lesz, bármennyire is finomítjuk az alosztásokat. Ez az eljárás biztosítja, hogy tényleg csak azok a forrásszimbólum-szekvenciák kapnak jelz"számot56, amelyek egyáltalán el"fordulnak s e jelz"számok valóban egyediek lesznek. 56 Csak itt, az aritmetikai kódolási módszer tárgyalásának a végén említjük meg, hogy az angol szakterminológia a „jelz5szám” helyett a sokkal általánosabb „tag” szót használja.
FileNév: InfotechnikaÚjJegyzet3.doc - 118/184 - Utoljára módosítva: 2001-11-05 16 Szakirodalom. Magyar nyelven: [1] Fazlollah M. Reza: Bevezetés az információelméletbe M9szaki Könyvkiadó, Budapest, 1966. Majdnem mindegyik hazai, információelmélettel (is) foglalkozó írás megemlíti. Nálunk alapm&nek tekinthet . Mérnöki beállítottságú munka, amely sokat ad a szemléltetésre, sok példa is van benne, de használja a matematikát is. [2] Claude E. Shannon- Warren Weaver: A kommunikáció matematikai elmélete OMIKK, Budapest, 1986. Annak ellenére, hogy ennek a könyvecskének a címe megegyezik Shannon 1948-as “alapm&vének” címével, itt mégis inkább egy kés bbi szemléletre épül ismeretterjesztésr l van szó, s shannon nem is egyedüli szerz je ennek a könyvnek. [3] Dr. Gordos Géza – Dr Varga András: Adatátvitel és adatfeldolgozás BME jegyzet J5-771. Tankönyvkiadó, Budapest 1987 Mind az információelmélet, mind a
kódoláselmélet elemeihez nagyon jól használható alapmunka, bár ma már a M&egytemen újabb szakirodalomból tanítják az informatikus hallgatókat. [4] Dr. Perge Imre: Bevezetés az informatikába Az egri Esterházy Károly Tanárképz" F"iskola jegyzete, Eger, 1993. Csak egy rövid (t.i a 2) fejezete foglalkozik információelmélettel, de abban az alapokat precízen és f iskolai hallgatók számára is jól érthet en foglalja össze. [5] Szász Gábor-Kun István-Zsigmond Gyula: Kommunikációs rendszerek. LSI Oktatóközpont; Budapest 1999 Nagyon jó és korszer& hírközléselméleti összefoglaló munka, amelynek a témakör természetéb l adódóan vannak információ- és kódoláselméleti részei is. Sok, tanulságos példát mutat be, segítve ezzel is az öntanulást. Ezt a célt a tucatnyi ikon is segíti, amelyek a szöveg margóján jelölik, hogy az adott rész milyen szerepet tölt be az anyagban [6] Dr. Szendrei János: Algebra és
számelmélet. tankönyvkiadó, tanárképz" f"iskolai tankönyvek; Szeged 1974. ISBN 963 17 3137 5 A jegyzetben ill. a könyvben, amelyhez ez az irodalomjegyzék készült igyekeztünk a matematikai alapokat a szöveg f vonalától különválasztva, függelékekben tárgyalni abban a reményben, hogy a mélyebb matematikai alapokat nélkülöz hallgatók is képesek legyenek a tárgyalt anyagnak legalább az alapelveit megérteni, f vonalát követni. Aki kissé mélyebben utána kíván nézni a tárgyaltaknak, az a függelékek elolvasásával megteheti ezt de a függelékek sem készültek egy matematikus igényességével. Nos az algebrai alapok részletes és mind terminológiájában, mind igényességében kíváló anyagot kínál Dr. Szendrei János könyve az érdekl d nek Még az 50-es években kiadták Magyarországon kisterjedelm& ismeretterjeszt könyvek fordításait az információelmélet témaköréb l, pl. Zemanek és Hincsin tollából az utóbbiban
pl. jó példák vannak Ezek azonban egyrészt nem tankönyv-igény& kiadványok, másrészt nagyon régiek, ezért itt nem soroljuk fel ket. FileNév: InfotechnikaÚjJegyzet3.doc - 119/184 - Utoljára módosítva: 2001-11-05 Angolul: [7] Thomas M. Cover – Joy A Thomas: Elements of Information Theory John Wiley, 1991 F iskolai szint& tankönyv. Nagyon jó azoknak, akik éppen belekezdenek abba, hogy megtudjanak valamit az információelméletr l. [8] Khalid Sayood: Introduction to Data Compression. Morgan Kaufman Publishers, San Francisco CA 1996, 2000 by Academic Press, ISBN 1-55860-558-4 Nagyon jó könyv a címében megjelölt témáról és az ahhoz kapcsolható területekr l. Matematikai bevezetés címen elég friss szemlélet& áttekintést ad az információelmélet alapjairól. Matematikai szempontból is igényes, s teszi ezt anélkül, hogy „elveszne” a matematikai háttérben. nagyon jól használható pl a Huffman kódolás és az azt követ
egyéb, veszteség-nélküli tömörít eljárások megértéséhez, bár helyenként meglehet sen tömören, de szabatosan fogalmaz. [9] Stephen B.Wicker: Error Control Systems for Digital Communication and Storage Prentice Hall, Inc. New Jersey ISBN: 0-13-200809-2 Komoly matematikai bevezat után igen jó összefoglalást ad a lineáris kódokról (a ciklikus kódokat is beleértve), majd a Reed- Müller és Solomon kódokat írja le. Ezekhez a teljesít képességük analízisét is megadja. Foglalkozik a konvolúciós kódokkal és ezeken belül a Viterbi algoritmussal valamint a szekvenciális dekódolással. Végül kitér a Trellis kódolt modulációra és a visszacsatolásos csatornák hibavédelmére, valamint az alkalmazásokra is. Webkiköt k: Keres"programokkal persze többszáz hivatkozás található az információelmélet témakörben. Ezek közül igen sok valamilyen szaktudományi alkalmazás pl a biológiában, a kémiában, a földtudományban vagy másutt.
Sok olyan is van, amely a könyvtárak, vagy a média információ terjesztésével foglalkozik. Az alább felsoroltak valamilyen módon kapcsolódnak az ebben a jegyzetben leírt anyaghoz. [10] Shannon 1948-ban írt és a Bell Laboratorium közleményeiben, két részben megjelent, összesen 55 oldalas alapcikke. Több, különböz formátumban is letölthet a http://cm.bell-labscom/cm/ms/what/shannonday/paperhtml website-on keresztül [11] Világszerte több tudományos konferenciát tartottak 1998-ban Shannon el bbi alapcikke megjelenésének 50. évfordulója alkalmából, s t a Bell laboratorim Shannon napot is rendezett. Ebb l az alkalomból jelent meg a következ rövid, nem egészen 2 oldalas írás Shannonról: http://www.gilcomau/~bredshaw/shannonhtm Több el"adás-kézirat, vagy rövid jegyzet tölthet" le a a világhálóról, amely az információelmélettel és a vele szorosan összekapcsolódó kódoláselmélettel foglakozik. Van több könyv- és
folyóirat-szemle is, de ezekb"l itt csak kett"t idézünk FileNév: InfotechnikaÚjJegyzet3.doc - 120/184 - Utoljára módosítva: 2001-11-05 [12] Shannon’s Information Theory Web Link: http://oak.catsohiouedu/~sk260695/skinfohtml [13] Chris Hillman. rövid kommentárjaival ellátott szakirodalom-ajánlása az „Entrópia az információ- és a kódoláselméletben” címszó alatt: http://www.mathwashingtonedu/~hillman/Entropy/infcodehtml [14] A Bell Laboratorium 1998-as Shannon-napi megemlékezéseinek válogatott cikkei tölthet k le a http://www.lucentcom/informationtheory/what5html site-on keresztül Az itt közölt cikkek ismeretterjeszt , összefoglaló anyagok. [15] Egy 8 leckéb l, kiegészítésb l és összefoglalóból álló, igen tömör információelméleti jegyzet tölthet le (leckénként) a következ web site-ról, amelyet a Cambridge-i David Mackay írt: http://wol.raphycamacuk/pub/mackay/info-theory/coursehtml [16] Egyetemi tárgyhoz
kapcsolódó kit&n , 1998-ban a web-en megjelent összefoglaló jegyzet a következ (Peter Mathys tollából): http://schof.coloradoedu/~ecen5622/intro/indexhtm [17] PowerPoint-ban elkészített információelméleti el adások anyaga érhet el a következ webkiköt n keresztül: http://schof.coloradoedu/~craigr/Info-Cyberhtm [18] Könyvajánlás és az információelmélet témakörébe es egytemi el adások segédletei érhet ek el a következ webkiköt n keresztül: http://www.csbrandeisedu/~cs170a Mellesleg ezt is az el bbi webkiköt alkotója, Chris Hillman tette közzé. Az anyag melehet sen elméleti beállítottságú és olyan kis részleteket közöl a háttéranyagokból, amelyek a hozzájuk tartozó el adások nélkül bizony nehezen hasznosíthatóak. Érdekessége azonban, magának Shannonnak 1956-ban az MIT-n tartott el adásai háttéranyagából is közöl részleteket. [19] Végül megemlítjük, hogy a Hewlett-Packard Laboratories „Information Theory and
Algorithms Group” website.ján keresztül is elérhet k a témakörrel kapcsolatos aktuális anyagok: http://www.hplhpcom/research/itc/csl/vcd/infotheory/indexhtml FileNév: InfotechnikaÚjJegyzet3.doc - 121/184 A Utoljára módosítva: 2001-11-05 FÜGGELÉK: Az információ fogalmának értelmezései. Tudományterület és/vagy a megközelítés Az információ definiciójának az alapja Az információ mértéke (metrikája) A formális (deduktív) következtetések eredménye „igaz” vagy „hamis”. Az induktív logika csak olyan következtetésekkel szolgál, amelyek csak bizonyos fokú érvényességgel rendelkeznek A predikátum-kalkulus érvrendszerek segítségével a kiinduló (á priori) állításoktól57 függ5en ”igaznak” vagy „hamisnak” nyílvánítja a következtetést. A Fuzzy logika szerinti megközelítés algebrai módszert kinál arra, hogy bizonytalan adatokból58 kiindulva is levonhassunk következtetéseket Filozófia klasszikus logika
(Predikátumkalkulus) Statisztikai következtetési technikák szolgálnak arra, hogy korlátozott érvény6 elemzést kapjunk és megtudjunk valamit azokból. Az információ „igaz” vagy „hamis” kijelentések vagy következtetések formájában jelenik meg. Nem rendelnek hozzá relatív értéket Számítástudomány szemiotikus59 logika Alkalmazása ill. felhasználása Szillogizmusokra60 épül5 adatelemzés, amely egy adott adathalmazból a „legjobb értelmezést” hozza ki. Adott adathalmazok olyan fondorlatos elemzése, amely korlátozott következtetésekre61 ad alapot. 57 Ezeket az alap-állításokat a formális logikában premisszáknak nevezik. 58 A Fuzzy logikáknál azonban maga a “bizonytalanság” legalább statisztikailag determinált. 59 Görög eredet6 összetett szó, amely a tudományos nyelvben az általános jel-elméletet, a jelrendszerek tanulmányozását jelenti. 60 A szillogizmus itt olyan (formális) logikai következtetést
jelent, amelynek egy, vagy több premisszája bizonytalan. Következésképp az azokból levont összetett állítások igazságértéke sem teljesen bizonyosan “igaz” vagy “hamis”. Az is lehetséges, hogy többféle végkövetkezteés is levonható, de ezek különböz5képp valószer6ek vagy sem. 61 A számítástudományi adat-elemzések mindíg valamilyen matematikai modellre épülnek, amely (modell) többé-kevésbé jó becslése az elvileg ismeretlen valóságnak. A statisztikai elemzés annyira jó, amennyire a modell jó. Err5l (nevezetesen arról, hogy a számítás egy modellre épül) gyakran megfeledkezünk és ez az oka annak is, hogy annyi rosz viccet faragtak a statisztikáról. FileNév: InfotechnikaÚjJegyzet3.doc - 122/184 - Tudományterület és/vagy a megközelítés Információelmélet Az információ definiciójának az alapja Az információ értékét vagy valamilyen egyedi eseményhez, vagy egy diszkrét, véges eseményhalmazhoz rendeli
hozzá. Mindkét esetben az egyedi események el5fordulási gyakoriságai (valószín6ségei) alapján. Utoljára módosítva: 2001-11-05 Az információ mértéke (metrikája) Alkalmazása ill. felhasználása Egyedi információ: Az esemény valószín6ségének negatív logaritmusa A shannoni (entrópikus) információ eszközt ad arra, hogy számszerüen meghatározhassuk egy üzenettovábbitó csatorna, vagy egy eszköz (mint pl. egy érzékel5, jelfeldolgozó, stb.) teljesít5képességét abból a szempontból, hogy mennyire képes csökkenteni magára a vizsgált eszközre vonatkozó bizonytalanságunkat, annak az állapotáról való ismereteink hiányát. Átlagos információ: (= az események bekövetkezésének megjósolhatatlansága. Ezt nevezik a Shannon-Wiener-féle információelméleti entrópiának62 Az információ-nyereség. Az aritmetikai értelemben vett entrópiaváltozás, ami egy üzenetváltás során bekövetkezik A tranzinformáció63, azaz az
átlagos információmennyiség, amely az információcsere folytán létrejön és végeredményben csökkenti az egymással üzenetet váltó rendszerek statisztikai állapot-eloszlásának a bizonytalanságát. Döntéselmélet Az információt annak a felhasználásából származó nyereséggel, el5nyökkel méri. A felhasználhatóság (=Utility): Az információ alkalmazásából származó értéknyerés a felhasználó szemszögéb5l nézve. A felhasználó azt értékeli, hogy mennyire segíti céljai elérésében az adott információ. Üzleti tudásmenedzsment Az információ mérhet5 azzal (is), hogy a használója befektetésének mi az a relatív megtérülése, amely az információnak tudható be. Az információs t5ke: Az információ gazdasági értéke, amit a használhatóságához szükséges befektetés és a biztonságos meg5rzéséhez szükséges folyamatos kiadások költségével mérnek. Az információ használhatósága mértéket ad ahhoz, hogy
meghatározzuk egy információ-feldolgozó rendszernek pl. a logisztikai, vagy menedzsment hatékonyságát. Az információs t5ke mértéke eszköz az információfeldolgozó rendszer hatékonyságának a mérésére. 62 C.EShannon egy 1948-ban megjelent dolgozatában fektette le annak a tudománynak az alapjait, amit ma információelméletnek nevezünk. Shannon kizárólagosan az információ (technikai) továbbítására koncentrált s ezért minden jelentéstani (szemantikai) vonatkozást kizárt. Számára az információ a lehetséges események (vagy üzenetek) egy véges halmazából való egyik esemény kiválasztását és továbbítását jelentette, függetlenül attól, hogy annak az eseménynek, vagy üzenetnek mi a jelentése. Az általa bevezetett logaritmikus mérték számértéke a választott logaritmus alapszámától függ. 2-es alapszám esetén: bit, 10-es alapszám esetén: hartley 63 Van szakirodalom, amely ezt a mennyiséget “Cross-information”-nak
nevezi. FileNév: InfotechnikaÚjJegyzet3.doc - 123/184 B Utoljára módosítva: 2001-11-05 FÜGGELÉK: A Kraft McMillan egyenl tlenség és következményei. Ebben a függelékben egy olyan tétellel foglalkozunk, amelyet jól lehet használni pl. a Huffman féle kódolási eljárás optimális voltának a bizonyítására, de más tömörítési eljárásokkal kapcsolatban is. A címben hivatkozott egyenl"tlenség tulajdonképpen két rész-tételb"l áll: Az els" egy az irreducibilis64 kódok hosszára vonatkozó szükséges feltétel, a másik pedig az az állítás, hogy mindíg található olyan irreducibilis kód, amelyik kielégíti az el"bbi szükséges feltételt. Az alábbiakban véges bináris65 kódszókészletr"l lesz szó. A kód éppenséggel lehet változó szóhosszúságú is, de a tétel igaz fix szóhosszúságú kódokra is és a bizonyítás egyik logikai lépésénél valóban ilyen fix szóhosszúságú kódokra gondolunk majd. A
bizonyítás gondolatmenete során többször is alkalmazzuk azt a matematikai konvergencia kritériumot, amely szerint ha egy S sorozatról nem tudjuk bizonyítani, hogy az konvergens, de találunk hozzá olyan S* sorozatot, amely S-nek majoránsa (azaz S*-nak minden tagja nagyobb az eredeti S sorozat megfelel" tagjánál) és S bizonyíthatóan konvergens, akkor az eredeti S is konvergens. Ugyanez értelemszerüen igaz a minoráns sorokra is az alsó konvergenciahatár esetében. Legyen egy C-vel jelölt kószókészletben összesen N darab kódszó és jelölje az iedik kódszó hosszúságát li . A Kraft-McMillan egyenl"tlenség a következ": K (C ) = N 2 li 1 i =1 ahol K(C) egy a C kódhoz tartozó szám bizonyítás abból indul ki, hogy megvizsgálja K(C) egy tetsz"leges N > n >1 egész hatványát. Ha K(C) nagyobb 1-nél, akkor a pozitív egész kitev"j9 n-edik hatványai n növekedésével exponenciálisan növekednek. Ilyen növekedést
akkor és csakis akkor nem észlelünk, ha a K(C) szám 1-nél kisebb (vagy éppen 1). Ha tehát azt találjuk, hogy K(C) nem növekszik exponenciálisan n növekedésével, akkor bizonyítottuk, hogy K(C) kisebb 1-nél, azaz ez éppen a fent felírt KraftMcMillan egyenl"tlenség bizonyítása. A Írjuk fel tehát K(C) n-edik hatványát! 64 65 azaz egyértelm6en visszafejthet5. Az ilyen kódokat némely szakirodalom –kissé következetlenül- prefix kódoknak is nevezi, jóllehet éppen arról van szó, hogy a kódszókészletben nem lehet olyan kódszó, amely egy mási kódszónak a prefixuma. A tétel persze nembináris kódokra is érvényes. FileNév: InfotechnikaÚjJegyzet3.doc - 124/184 - N " i =1 n N 2 ! = li 2 N li 1 2 i1 =1 N li 2 LL i2 =1 N = Utoljára módosítva: 2001-11-05 N i1 =1 N i2 =1 2 LL 2 = lin in =1 (li1 +li 2 +L Llin ) in =1 A képlet els" sora remélhet"leg magától értet"d": az n-edik
hatványra való emelést írtuk fel egy n tényez"s szorzat formájában. Az talán nem triviális, hogy a szummákban miért használtunk különböz" indexeket, de ez is és a képlet második sorában felírt többszörös szummázás is megmagyarázható a következ" példával: Vegyünk egy olyan kódszókészletet, amelyben összesen 3 kódszó van, tehát N = 3. Válasszunk ehhez egy N-nél kisebb, de 1-nél nagyobb –elvileg tetsz"leges- n számot: legyen n = 2 Ezekkel az adatokkal 3 " i =1 2 3 2 ! = li 2 ( 3 li 2 i =1 = 2 l1 lj j =1 +2 l2 +2 l3 ( l1 l1 +2 = 2 )(2 +2 l2 =2 (l1 + l1 ) +2 (l1 + l2 ) +2 (l1 + l3 ) +2 (l2 + l1 ) +2 (l2 + l2 ) +2 (l2 + l3 ) + +2 (l3 + l1 ) +2 (l3 + l2 ) +2 (l3 + l3 ) ; l2 +2 +2 l3 ) l3 2 = )= + Amikor az els" sorban a négyzetreemelés helyett felírtuk a szummák szorzatát kénytelenek voltunk különböz" futó indexeket használni a szummázásoknál,
mert mindkét szummánál külön-külön be kell futnia az indexnek a teljes 1 index N tartományt. Tekintettel arra, hogy a választott példában n = 2 volt, az i és a j indexeket választottuk Általános esetben azonban nem tudni, hogy n mekkora és ezért indexeltük magukat az indexeket is és használtuk az általános képletben rendre az FileNév: InfotechnikaÚjJegyzet3.doc - 125/184 - Utoljára módosítva: 2001-11-05 i1 ; i2 ;L Lin ; indexelést. Amikor n = 2, azaz éppen négyzetreemelésr"l van szó, jól ábrázolható a példa utolsó három sorának a számítása egy (n = 2 dimenziós, azaz sík) tömbön: 1 . . . 2-(li + lj) j . . . N 1 . . i N Látható, hogy az i index befutja a mátrix oszlopait, a j index pedig a sorait. (Ennél az ábránál a jobb szemléltetés kedvéért N = 5) Ha n > 2, azaz nem négyzetreemelésr"l és így kétdimenziós esetr"l van szó, akkor a tömb dimenziószáma is növekszik. N = 3 esetén pl
háromdimenziós tömbbel kell számolni és bejön egy harmadik (az ábrán k-val jelölt) index is: k N 1 1 . . . j 2-(li + lj + lk) . . . N 1 . i . N A háromnál több dimenziós tömböket persze nem tudjuk ilyen egyszerüen ábrázolni, de számolni azért tudunk velük. FileNév: InfotechnikaÚjJegyzet3.doc - 126/184 - Utoljára módosítva: 2001-11-05 A példa alapján belátható tehát, hogy ha n-et megválasztottuk, akkor egy n dimenziós tömb minden dimenziója irányába el kell végeznünk a szummázásokat és minden szumma saját, külön, egyedi futó indexel kell, hogy rendelkezzék. Térjünk vissza ezek uztán a kiinduló képletünkhöz: n N " 2 ! = N li i =1 = 2 li1 i1 = 1 N N 2 li 2 i2 = 1 N i1 =1 i 2 =1 N LL 2 N LL 2 l in = in =1 (l i1 + l i 2 +L Ll in ) i n =1 Ezek után már belátható, hogy a végeredményt olyan többszörös összegezések szolgáltatják, amelyekb"l kiemelhet" a következ"
kifejezés: 2 (l1 + l 2 + L Ll n ) Az exponens zárójeles kifejezése nem más, mint a C kód n darab kódszavának szóhosszúság-összege. Vizsgáljuk most azt, hogy széls" esetekben mi lehet a zárójeles exponens, azaz: (l1 + l2 + L L + ln ) minimális és mi a maximális értéke. Legrosszabb eseteket fogunk feltételezni és a bevezet"ben említett majoráns és minoráns sorokat számolni. Ha a kódszókészlet olyan széls"séges, hogy csak egy kódszót tartalmaz és az a lehet" legrövidebb, akkor ennek a zárójeles kifejezésnek az értéke éppen 1 (bit, mert kezdetben feltételeztük, hogy bináris kódszavakat vizsgálunk). Ha n darab ilyen egybites kódszó van66, akkor egészen biztosan jókora „biztonsági tartalékkal” állíthatjuk, hogy min (l1 + l2 + L L + ln ) n No és milyen korlátot adhatunk ennek a kifejezésnek a maximumára? 66 Akármilyen is a kód legfeljebb 2 db egybites kódszava lehet. A zárójeles összeg tehát
minden n>2 esetre nagyobb lesz n-nél FileNév: InfotechnikaÚjJegyzet3.doc - 127/184 - Utoljára módosítva: 2001-11-05 Ha a kódszókészletben el"forduló leghosszabb kódszó hosszát l-lel jelöljük, vagyis l = max (l1; l2 ; L Ll N ) akkor li l minden li-re és megint csak jókora biztonsági „rátartással” állíthatjuk, hogy max (l1 + l2 + L L + ln ) nl Azt már láttuk a korábbi fejezetekben, hogy a fix szóhosszúságú (forrás)kódok nem veszik figyelembe a forrásszimbólumok esetleg különböz" gyakoriságait és ezért az utóbbiakkal is számoló változó szóhosszúságú kódok redundanciája kisebb. A fix szóhosszúságú kódok esete tehát mind a redundancia, mind a tömörítés és annak optimuma szempontjából kedvez"tlenebb. Ezért a Kraft-McMillan tétel67 szempontjából ha nem is a legrosszabb, de mindenesetre kedvez"tlenebb eset a fix szóhosszúságú kódok alkalmazása Tehát ha a tétel ezekre igaz, akkor
egészen bizonyosan igaz az említett szempontokból kedvez"bb változó szóhosszúságú kódokra is, vagyis minden esetre. k kódszó-hosszúságú fix kódszavak esetén valamennyi li = k és ezért a KraftMcMillan egyenl"tlenség a következ" alakban írható fel: K (C ) n nl k 2 2 i=n k = n .l 1= nl i=n n + 1 = n (l 1) + 1 k A szumma jel mögé azért került be a 2 szorzó, mert k bites fix szóhosszúságú binák ris kódszóból összesen 2 darab van. Ha nem használjuk megengedett kódszóként mind a 2k különböz" kódszót, akkor a 2k eset megint a legkedvez"tlenebb korlátot adja, s ha erre is igaz a Kraft-McMillan egyenl"tlenség, akkor valóban minden esetre igaznak kell lennie. Ebben a képletben a szummázást a fentiekben logikusan kikövetkeztetett legrövidebb kódszóhossz-összegt"l ( = n) a leghosszabb kódszóhossz-összegig ( = n.l) számítjuk, azaz a következtetéssel meghatározott minimális és
maximális korlátok között.68 Így az [n, nl] zárt intervallumban összesen nl – n + 1 Csak a baloldalt és a jobboldalt felírva: 67 amely éppen korlátokat kíván adni az optimumra 68 A szummázás azt adja meg, hogy hány természetes szám van az n-t5l az n.l -ig terjed5, zárt intervallumban. Okoskodással is meg lehet mondani, hogy ezekb5l éppen nl – n + 1 van (+1 mert az intervallum mindkét határán lév5 számokat is bele kell számolni.) FileNév: InfotechnikaÚjJegyzet3.doc - 128/184 - K (C ) n Utoljára módosítva: 2001-11-05 n (l 1) + 1 A felírt kifejezésnek a jobboldala n növekedésével lineárisan növekszik, vagyis K(C)n növekedése nem exponenciális. Amint az egész bizonyítás elején állítottuk, ha sikerül bebizonyítani, hogy K(C)n nem növekszik n növekedésével exponenciálisan, akkor ezzel bizonyítottuk a KraftMcMillan egyenl"tlenséget is, tehát a Kraft-McMillan egyenl tlenség bármilyen C kódra igaz. azaz bármilyen
C kód esetében igaz, hogy K(C) nem lehet nagyobb 1-nél és pontosan ezt állítja a Kraft-McMillan egyenl"tlenség. Hangsúlyozzuk tehát, hogy bármilyen egyértelm9en dekódolható kódra igaz a dolog, tehát annak li kódszó-hosszai eleget kell, hogy tegyenek a Kraft-McMillan egyenl"tlenségnek. A tétel fordítva is igaz, vagyis ha van egy olyan C* kódszókészletünk, amelynek li kódszó-hosszai kielégítik a Kraft-McMillan egyenl"tlenséget, akkor mindíg található olyan irreducibilis (=egyértelm9en visszafejthet") C kód, amelynek kódszó-hosszai pontosan olyanok, mint a C* kódé. A bizonyítás során többször is alkalmazott majoritási és minoritási konvergencia kritériumok miatt nem nyilvánvaló ugyan, hogy a tétel fordítva is igaz, de ez önállóan is bizonyítható. Az utóbbi bizonyítást abban a reményben nem írjuk le itt, hogy az Olvasó elhiszi, hogy a tétel fordítva, azaz az el"z" bekezdésben megfogalmazott
formában is igaz A Kraft-McMillan egyenl"tlenségb"l végül is az következik, hogy mindíg található olyan egyértelm9en dekódolható kód, amelynek átlagos szóhosszúsága az alábbi korlátok közé esik H ( X ) l < H ( X )+ 1 ahol H(X) a forrásentrópia. FileNév: InfotechnikaÚjJegyzet3.doc - 129/184 - B. Utoljára módosítva: 2001-11-05 FÜGGELÉK: Az információforrás valószín ségi modelljei. Ha ismert is egy diszkrét forrás véges szimbólumkészlete, annak a statisztikai természetét csak igen hosszadalmas kisérletezéssel lehet felderíteni feltéve, hogy a kisérletek ideje alatt ez a statisztikai szerkezet nem változik. Például egy magyarnyelv9 szövegforrás ábécéjének a betüivel angolnyelv9 szöveg is leírható, mert a magyar ábécének valódi részhalmaza az angol ábécé. Mégis, a betügyakoriságok különböz"ek lesznek ha egyszer magyar szöveget, máskor meg angol szöveget emittál a forrás. Ilyen
nyelv-váltáskor a szövegforrás-ábécéhez rendelhet" valószín9ségi modell is változik. Az említett egyik és másik nyelvnél más lesz mind az egyes betük gyakorisága, s még inkább különbözni fog a dupleteké, tripleteké, és így tovább. Az ilyen és ehhez hasonló statisztika-váltásokat az itt következ" tárgyalásból kirekesztjük, azaz csak az un. stacionárius ergodikus modellekkel foglalkozunk Többnyire az említett hosszadalmas statisztikai felmérésekre sincs mód, s ezért valamilyen becsléssel szoktak modellt hozzárendelni a tényleges forráshoz. Az utóbbi alapján számított informatikai jellemz"k, az illeszt" kódolás, a tömörítés persze, csak annyira jók, csak annyira hatékonyak amennyire a becslés helytálló. Léteznek ugyan olyan adaptív modellek, amelyek használata közben a modell bizonyos mértékben továbbfejleszti saját magát. Ilyen a következ" függelékben részletesen tárgyalt adaptív
Huffman kódolási algoritmus is, de az sem változtatja meg azt az alapmodellt, amelyb"l kiindult, azaz a továbbfejl"dése közben végig fennáll az a feltételezés, hogy a forrás a szimbólumainak olyan sorozatát bocsájtja ki, amelyben a szimbólumok egymástól függetlenek. A „továbbfejl"dés” ebben az esetben tehát nem az alapmodell lényegének, hanem „csak” a paramétereinek a változtatását jelenti A független, diszkrét valószín ségi változók modelljei Két ilyen modell a legnépszerübb, legtöbbször használt becslése a forrásnak. Mindkett"re jellemz", hogy a következ"ket feltételezi: a. Az információforrás véges eseménytérrel rendelkezik és minden eseményhez egy-egy forrásszimbólum van hozzárendelve, amellyel jelzi az esemény bekövetkeztét. A forrásszimbólumok véges halmazát forrásábécének is nevezik b. Az információforrás eseményei egymástól függetlenül következnek be, tehát az
események sorozatában az i-edik esemény bekövetkezése nem függ attól, hogy el"tte mil volt az (i-1)-edik esemény. c. Az eseményhalmazhoz egy véges, diszkrét valószín9ségi modell tartozik úgy, hogy a modell valószín9ségi változójának minden esemény bekövetkezéséhez valamilyen meghatározott értéke tartozik. Ilyen értelemben a forráshoz egy véges, diszkrét valószín9ségi modell rendelhet" hozzá, amelyben nincs 0 valószín9ség9 esemény. FileNév: InfotechnikaÚjJegyzet3.doc - 130/184 - Utoljára módosítva: 2001-11-05 d. A forráshoz tartozó eseményrendszer teljes, ha az eseményekhez rendelt valószín9ségek összege 1. További tulajdonságok is megfogalmazhatók még, de azok legfeljebb kiegészítik a fentieket. E modellek axiomatikus leírásakor a következ" három axiómából szoktak kiindulni: 1. Ha Ai egy tetsz"leges eleme az E eseménytérnek, akkor P(Ai) B0 2. Az eseménytér valószín9sége 1, azaz P(E) = 1
3. Ha Ai és Aj az E eseménytér két, tetsz"leges eleme és Ai C Aj = 0, akkor P( Ai U Aj ) = P(Ai) + P(Aj) Említettük, hogy két ilyen alapfeltétel-rendszerb"l kiinduló modell használata a leggyakoribb. Ez a két modell csak a c feltételben megfogalmazott valószín9ségi változók által felvehet" értékekben különbözik egymástól A független és egyenl eloszlású valószín ségi változók modellje69 Ha a világon semmi sem tudható arról, hogy a forrásszimbólumok milyen relatív gyakorisággal fordulnak el", akkor az is jó közelítés, ha feltesszük, hogy valamennyi forrásszimbólum gyakorisága azonos. Itt err"l van szó Ha az {a1; a2; . ai; am} forrásábécé m elem9, akkor e feltételezéssel minden egyes forrásszimbólum valószín9sége P(ai ) = 1 m $ 1 i m Az egyszerüség kedvéért erre a modellre mi is az iid rövidítést használjuk. Az iid modellt szokták alkalmazni olyankor, amikor a forrás pl. decimális
számjegyeket emittál, mert többjegy9 decimális számok esetén az egyes számjegyek el"fordulási gyakoriságai elég jó közelítéssel azonosak Ilyenkor –mint tudjuk- a forrásentrópia maximális A forrás információelméleti jellemz"inek kiszámításakor éppen az adott forráséval azonos számosságú eseményrendszerrel rendelkez" forrásra vonatkoztatva számítottuk a hatásfokot és redundanciát. Ez úgy is értelmezhet", hogy a hatásfok és a redundancia számításának vonatkoztatási alapja éppen az iid modell volt (pedig e számítások el"tt az alább leírt ird modellt alkalmaztuk Az összes elképzelhet" diszkrét valószín9ségi modellek közül (a triviális eseteket kivéve) az iid modell a legegyszerübb. Csak egy kicsivel bonyolultabb a következ": 69 Independent, Identically Distributed (iid) random variables. FileNév: InfotechnikaÚjJegyzet3.doc - 131/184 - Utoljára módosítva: 2001-11-05 A független
és véletlen eloszlású valószín ségi változók modellje70 Továbbra is feltételezzük, hogy a forrás egymástól függetlenül, véletlenszerüen emittálja a forrásábécé elemeit, de feltételezzük azt is, hogy egy hosszú sorozatban ezeknek (t.i a forrásábécé elemeinek) az el"fordulási gyakorisága különbözö lehet Ennél a modellnél tehát az egyes P(ai) valószín9ségek különböz"ek is lehetnek, de az a.d alapfeltevések továbbra is érvényesek Az egyszerüség kedvéért erre a modellre mi is az angol megnevezésb"l származó ird rövidítést használjuk. A Shannon-Wiener-féle (egydimenziós) entrópiafogalom bevezetésekor is ezt a modellt alkalmaztuk. Az el"z" gondolatmenetb"l láttuk, hogy az ird modellhez tartozó relatív jellemz"k (ti. a forrás hatásfoka és redundanciája) kiszámításakor az iid modell lehet a vonatkoztatási alap. Nagyon sok másféle modellt is alkalmaznak. Pl a Golomb-Rice kódok az
egészszámok kódolását arra a feltételezésre építik, hogy a kisebb számok gyakrabban, a nagyobb számok meg annál ritkábban fordulnak el", minél nagyobbak. Nyilvánvaló, hogy erre építve a kisebb számokhoz rövidebb, a nagyobbakhoz pedig hosszabb kódszavakat rendelnek hozzá, s így szerkesztik meg a kódszókészletet. 70 Independent, Randomly Distributed (ird) random variables. FileNév: InfotechnikaÚjJegyzet3.doc - 132/184 C Utoljára módosítva: 2001-11-05 FÜGGELÉK: Az adaptív Huffman kódolás. A Huffman-féle adaptív kódolást Faller és Gallagher egymástól függetlenül fejlesztették ki és tették közzé 1973-ban ill. 1978-ban (Kés"bb Knuth és Vitter továbbfejlesztették 1986-87-ben) Induljunk ki abból, hogy ismerjük az els" k darab szimbólumot, amelyeket a forrás kibocsájtott és ismerjük azok statisztikáját. Elvileg lehet"ségünk van arra, hogy a k+1edik forrásszimbólum kibocsájtásakor újraszámoljuk a
forrás-statisztikát és az egész Huffman-féle kódolási eljárást is valahányszor egy-egy újabb szimbólumot ad a forrás. Ez az (elvi) eljárás azonban kétféle igen nagy hátránnyal is rendelkezik: 1. Maga a kód folyamatosan változik (Ezen még csak felülkerekedhetünk valamilyen szellemes algoritmussal) 2. Minden egyes forrásszimbólum kibocsájtásakor egyre több számítást kell elvégezni, ami bizony nagyon igénybeveszi az er"forrásainkat (s elegend"en sok forrásszimbólum kibocsájtása után már olyan kevéssé változtatja a kódot, hogy nem is éri meg ekkora számítási kapacitást „bevetni”.)71 Láttuk az el"z"ekben, hogy egy Huffman kódot tökéletesen leír a hozzárendelhet" Huffman-féle bináris fa. Az adaptív Huffan kódolásnak is a bináris fa az alapja a következ" két kiegészítéssel: a. A fa minden egyes leveléhez egy-egy súlyt rendelünk hozzá A súly egyszerüen az a szám, ahányszor az adott
levélhez tartozó forrásszimbólum el"fordult (Ezt már eddig is megtettük pl. a 38-as példa Huffman fájánál, ahol a levelek mellé írtuk az adott szimbólum el"fordulásainak számát, azaz abszolut gyakoriságát.) A Huffman fa minden egyes bels" csomópontjához is hozzárendelünk egy-egy súlyt, ami nem más, mint az adott csomópont leszármazott csomópontjaihoz tartozó súlyok összege. (Ezt is megtettük már a korábbi példáknál a csomópont mellé írt összesített gyakoriság-értékek feltüntetésével) Ez a második kiegészítés tulajdonképpen csak az els" általánosítása, azaz az a. pontban a fa leveleire bevezetett súly fogalmát terjeszti ki a bels" csomópontokra is A csomópont-szám fogalma helyett tehát egyaránt beszélhetünk a küls" és a bels" csomópontokhoz egyaránt hozzárendelt súly fogalmáról (ami, végül is, abszolut gyakoriságot jelent).72 71 Feltéve, hogy mindíg „el5lr5l számítjuk”
az egész statisztikát ahelyett, hogy valamilyen uniform algoritmussal mindíg csak módosítanánk a korábbi statisztikák kumulált adatait. Az adaptív Huffman kódolási algoritmus tulajdonképpen ezt teszi. 72 Egészen nyilvánvaló, hogy a korábbi példák során fel sem merült, hogy az abszolut gyakoriság változhat is, itt, az adaptív Huffman kódolásnál pedig szükségképpen változnia kell, méghozzá minden egyes forrásszimbólum kibocsájtásakor 1-gyel növekednie kell a gyökér súlyának. FileNév: InfotechnikaÚjJegyzet3.doc - 133/184 - Utoljára módosítva: 2001-11-05 b. Mind a küls", mind a bels" csomópontokhoz egy-egy sorszámot rendelünk hozzá, de nem tetszés szerint. A bináris fa természetéb"l következik, hogy egy n level9 fának összesen 2n – 1 csomópontja van. Más szóval egy n betüs forrásábécéhez olyan Huffman fa tartozik, amely csomópontjainak száma 2n-1. Jelölje wi az i-edik csomópont súlyát és
számozzuk a csomópontokat a legkisebb súlyú levelekt"l a nagyobb súlyú csomópontok irányába az utóbbiakhoz rendelt súlyok növekv" sorrendjében a gyökér felé.73 Ezzel a jelölési rendszerrel éppen a 2n – 1 –edik csomópont lesz a gyökér és az ehhez tartozó w2n-1 egyenl" lesz a mindenkori abszolut forrásszimbólum-gyakorisággal. (Természetesen ennek a súlya lesz a legnagyobb.) A súlyokra a következ" összefüggést írhatjuk fel: w1 x w2 x . x wi x x w2n-1 A csomópontok mondott számozási rendje esetén a (2j-1)-edik és a 2j-edik csomópontok vagy testvérek74, vagy legalább is ugyanannak a közös szül"nek a leszármazottai és a szül" sorszáma nagyobb, mint a két leszármazott [tehát a (2j-1)-edik ill. a 2j-edik] csomópontok bármelyikánek a sorszáma Az itt megfogalmazott állításokat együtt „testvér-tulajdonság”nak75 nevezzük és minden fa, amely ilyen testvér tulajdonsággal rendelkezik Huffman
fa. Lássuk be ennek az állításnak az igazát az alább következ" Huffman fa részleten! 73 Alább egy ábrán szemléltetjük ezt a csomópont-számozási stratégiát. 74 A „testvér” kifejezést definició szerint csak a levelekre alkalmazzuk. Így pl bels5 csomópontok esetén akkor sem beszélhetünk „testvér” csomópontokról, ha azok azonos szül5 csomóponttól származnak. Az 1 x j x n változó itt a levelekt"l a gyökér felé növekv" rendben számozott „szinteket” jelenti, ami végül is meghatározza a Huffman kódnak az adott szinten lév" leválhez tartozó szóhosszúságát is. (Ld a szemléltet" farészletet is!) 75 Sibling property. A szó alapjelentése szerint „közös szül5t5l származó” FileNév: InfotechnikaÚjJegyzet3.doc - 134/184 - 6 7 Utoljára módosítva: 2001-11-05 2j = 6 4 2j = 4 2j-1 = 7 5 2 2j = 2 1 2j-1 = 1 2j-1 = 5 3 Az ábra egyúttal a csomópontok számozási stratégiáját
és a j változó értelmezését is szemlélteti. j= 4 2j-1 = 3 3 2 1 A szemléltet" ábrán a csomópontok súlyait nem jelöltük, tehát éppenséggel azonos súlyú csomópontok is el"fordulhatnak, s ez a vázolt csomópont-számozási stratégiát nem zavarja. Az adaptív Huffman kódolási eljárás kezdete el"tt sem az adó, sem a vev" nem tud a világon semmit sem annak a szimbólum-sorozatnak a statisztikai tulajdonságairól, amit az adó még csak ezután fog kibocsájtani. Mind az adó, mind a vev" számára egyetlen csomópontból áll (még ekkor) a Huffman fa, amely csomópont az összes még nem leadott (MNL) szimbólumnak felel meg és e csomópont súlya ekkor még értelemszerüen zéró.76 76 Úgy gondoljunk erre az MNL csomópontra (és valamennyi kés5bbi, ugyanígy elnevett csomópontra), hogy ahhoz kezdetben a forrásszimbólumok teljes listája is hozzátartozik. Valahányszor kibocsájt (=lead) a forrás egy szimbólumot, azt
err5l a listáról kihúzzuk, tehát bármikor igaz, hogy az MNL csomóponthoz tartozó lista a még nem leadott szimbólumokat tartalmazza. Ez a lista azonban várhatóan fokozatosan csökken, amint a forrás fokozatosan leadja az éppen aktuális szöveg egyes szimbólumait, de egyáltalán nem biztos, hogy egy akármilyen üzenethez használni fogja valamennyi rendelkezésre álló szimbólumát, tehát elvileg akármilyen hosszú üzenet után is mindíg lehet még az MNL csomóponthoz tartozó listán egy, vagy több szimbólum. Másrészt nem minden szimbólum leadásakor kell kihúzni egyet az MNL csomóponthoz tartozó listáról, mert ha már másodszor, vagy többedszer adjuk le ugyanazt a szimbólumot, akkor már nincs is rajta a listán. A zéró súlyt azért rendeltük a mindenkori MNL csomóponthoz, mert az mindíg igaz, hogy a még nem leadott szimbólumok közül addig még egyet sem, azaz 0 számút adott le a forrás. FileNév: InfotechnikaÚjJegyzet3.doc -
135/184 - Utoljára módosítva: 2001-11-05 Az egész adási folyamat megkezdése el"tt az adó és a vev" megállapodik valamilyen rögzített kezdeti kódban, amely minden adó oldali szimbólumhoz más-más kódszót rendel hozzá. Így az MNL csomóponthoz egy szimbólum-lista (és az egyes szimbólumoknak megfeleltetett kezdeti kód-lista) rendelhet" hozzá. E kezdeti kód megválasztásának a legegyszerübb módja az, ha egy fix szóhosszúságú bináris kódot választunk erre a célra, úgy megválasztva a szóhosszúságot, hogy az éppen elegend" legyen az aktuális ábécé kódolásához. Egy 26 betüs ábécé esetén pl 5 bites kódszavak éppen megfelelnek77 Elvileg lehetséges lenne már ehhez a rögzített kezdeti kódoláshoz is változó szóhosszúságú kódot használni, de az alább bemutatandó dekódolási algoritmust annak a feltételezésével építették fel, hogy a kezdeti kód fix szóhosszúságú. Az adó oldali szimbólumsorozat
leadásának megkezdése után a Huffman fához csomópontok adódnak hozzá, amelyek megfelelnek a leadott szimbólumoknak. A Huffman fa minden leadott szimbólum után újra konfigurálódik, amit egy ujjáalakítási eljárás (updating procedure) tesz lehet"vé Ez a rekonfigurálás hozzárendel egy új csomópontot az adott szimbólumhoz és törli azt a szimbólumot a „régi” MNL-hez tartozó szimbólum-listából. Ezt az eljárást szemlélteti a következ" oldal folyamatábrája A folyamatábra vizsgálata el"tt fogalmazzuk meg kisséáltalánosabban a kezdeti, bináris fix kód hosszúságáról mondottakat. Ennek a megfogalmazásnak majd a dekódolási algoritmus kapcsán látjuk a hasznát Ha az m szimbólumból álló forrásábécéhez fix szóhosszúságú bináris kezdeti kódot akarunk választani, akkor annak a kódszóhossza felírható m = 2e + r e alakban ahol e pozitív egészszám és az r maradék a 0 D r < 2 tartományba es"
(szintén) egészszám. Ezek után a fix kezdeti kód szóhossza (e +1) lesz78 77 Igaz tehát, hogy az egész eljárás kezdetekor sem az adó, sem a vev5 nem tud semmit az alkalmazott ábécé betüinek a valószín6ségeir5l (azaz statisztikai tulajdonságáról) de magát az ábécét mind az adó, mind a vev5 ismeri és mindkett5 ismeri a betükhöz rendelt kezdeti kódot is, amiben el5re megállapodtak. 78 A példaként említett m = 26 betüs ábécénél a 2-es alapnak a 26-nál kisebb, de egyébként legnagyobb egész hatványa 16, tehát ekkor e = 4 és r = 10. Az utóbbira igaz, hogy 0 és 16 közé esik Ekkor tehát e + 1 = 5 bites, fix szóhosszúságú kódok tartoznak az m = 26 betüs ábécé mindegyik betüjéhez. FileNév: InfotechnikaÚjJegyzet3.doc - 136/184 - Utoljára módosítva: 2001-11-05 START Az MNL "szül" egy új MNL-et, valamint egy külsõ csomópontot I Elõször fordul elõ a szimbólum? N 1-gyel inkrementálja mind a külsõ
csomópont, mind a régi MNL súlyát Elmegy a szimbólumhoz tartozó külsõ csomóponthoz Elmegy a régi MNL csomóponthoz Maximális a csomópont sorszáma? N Áthelyezi a csomópontot úgy, hogy a legnagyobb legyen a sorszáma a blokkon belül I Inkrementálja a csomópont súlyát Ez a gyökér csomópont? N Elmegy a szülõ csomóponthoz I STOP Megjegyzések: 1) A folyamatábrán használt „blokk” fogalmát alább pontosan meghatározzuk. 2) Ez a folyamatábra (még) nem foglalkozik azzal, hogy hogyan, milyen algoritmus szerint rendelünk (változó szóhosszúságú) kódokat az egyes csomópontokhoz. Alább erre a problémára egy külön algoritmust adunk meg. FileNév: InfotechnikaÚjJegyzet3.doc - 137/184 - Utoljára módosítva: 2001-11-05 Kommentárok az újrakonfigurálási eljáráshoz. Az eljárás azt igényli, hogy a csomópontok rögzített rendbe sorakozzanak fel (mármint az eljárás el"rehaladtával). Ezt a rendet a csomópontok
számozása biztosítja A legnagyobb csomópont-szám természetesen a gyökérhez lesz hozzárendelve, a legkisebb pedig a mindenkor aktuális MNL csomóponthoz. Az utóbbitól a gyökér felé es" csomópontok egyre növekv" sorszámmal kell, hogy rendelkezzenek. (Az eddig alkalmazott Huffman fa ábrázolásainknak megfelel"en alulról felfelé és jobbról balra növekv" sorszámokról van szó. Blokknak nevezzük azoknak a csomópontoknak a halmazát, amelyeknek a súlya azonos. Az ujrakonfigurálási eljárásnak talán a legfontosabb feladata az, hogy meg"rízze a fa testvér-tulajdonságát. Az adó és a vev", persze, ugyanolyan fával kell, hogy rendelkezzék az adaptív eljásás bármelyik lépésénél, ezért azujrakonfigurálási eljárást nem csak a vev" oldalán, hanem az adó oldalán is el kell végezni minden egyes szimbólum kibocsájtása után, ti. az adó oldalon a szimbólum kódolásakor, a vev"nél pedig a szimbólum
dekódolásakor. Minden egyes kódolási ill. dekódolási lépés után az éppen aktuális szimbólumnak megfelel" csomópontot meg kell vizsgálni, hogy vajon az-e a legnagyobb sorszámú csomópont a saját blokkjában. Ha nem az lenne, akkor fel kell cserélni a blokk legnagyobb sorszámú csomópontjával, feltéve, hogy nem a saját szül"-csomópontjáról van szó, mert azzal –természetesennem kell felcserélni. Ezután a küls" csomópont súlyát inkrementálni kell. Ha az imént mondottak szerint nem cserélnénk fel a csomópontokat azok súlyának inkrementálása el"tt, akkor nagyon valószín9, hogy a testvér-tulajdonsághoz szükséges rendezettség sérülne Ha már egyszer inkrementáltuk a csomópont súlyát, akkor ezzel az éppen aktuális szinthez adaptáltuk a Huffman fát. Ezek után figyelmünket a következ" szintre fordíthatjuk, hogy megvizsgáljuk az éppen inkrementált súlyú (küls") csomópont
szül"-csomópontjára irányíthatjuk, hogy ellen"rízzük, hogy valóban az-e a blokk legnagyobb súlyú csomópontja. Ha nem az lenne, akkor fel kell cserélni az adott blokk legnagyobb súlyú csomópontjával. Ismét kivételt kell tennünk, ha a blokk legnagyobb súlyú csomópontja szül"je annak, amelyet éppen vizsgálunk. valahányszor döntést hozunk egy ilyen vizsgálattal kapcsolatban (azaz végrehajtjuk a felcserélést, vagy eldöntjük, hogy szül"r"l lévén szó nincs szükség ilyen cserére) a szül" csomópont súlyát inkrementálni kell.79 A folyamatábrával meghatározott algoritmus nem foglalkozik azzal, hogy melyik csomóponthoz milyen (változó hosszúságú) kódot rendel hozzá, azaz nem tér ki a kódkiosztásra. Erre alább majd egy külön algoritmust adunk meg Ugyanakkor már itt fontos ezzel kapcsolatban megértenünk a következ"ket: 79 A Huffman fa rekonfigurálási algoritmusának a gondolatmenetét innen
folytatjuk majd, de el5bb vizsgáljunk meg egy problémát, ami az eljárás eddig leírt alkalmazása során minden bizonnyal felmerül. Az ezzel a problémával foglalkozó szövegrészt markerrel jelölük a továbbiakban, s utána visszatérönk az eddig követett f5 gondolatmenetre. FileNév: InfotechnikaÚjJegyzet3.doc - 138/184 - Utoljára módosítva: 2001-11-05 A kétlépéses (nem adaptív) Huffman kódolás egyértelm9en megfejthet" (szeparabilis), változó szóhosszúságú kódot eredményezett. Nem hangsúlyoztuk külön, hogy a visszafejtéshez, persze, a vev"nek el"re „tudnia kell”, hogy mi a kód. Az egylépéses, adaptív Huffman kódolásnál az el"re megállapodott, kezdeti kód és az eljárás során egyre „fel"d"” változó szóhosszúságú kód alkalmazása mintegy keveredik. Ha nem tör"dnénk ezzel, akkor el"fordulhatna, hogy az eljárás közben, a már leadott szimbólumokhoz hozzárendelt változó
hosszúságú kódszavakból olyan sorozat áll el", amely megegyezik valamelyik el"re megállapodott kódszóval, vagy az utóbbinak prefixuma. ez pedig sérti az egyértelm9 megfejthet"ség elvét, aminek viszon az eljárás folyamán végig fenn kell állnia. A kódkiosztási algioritmus úgy gondoskodik err"l, hogy valahányszor egy olyan szimbólumot szándékozik leadni a forrás, amely az addigi sorozatban még nem fordult el", el"tte „jelzést” ad, hogy most ilyen, el"re megállapodott kódszó következik. Tekintettel arra, hogy a bitfolyamban semmilyen más „jelzés” nem lehetséges, mint a 0-ás és 1-es bitek, ill. ezeknek valamilyen véges sorozatban el"forduló kombinációi, ezért különösen ravsz dolog egy megfelel" „jelzést” találni arra, hogy utána a fix kezdeti kód valamelyik eleme következik. Nem jó erre a célra akármilyen hosszú fix (el"re megállapodott) kódszó, mert nem lehet kizárni,
hogy a változó hosszúságú kódok folyamában, hogy valamikor el"fordul majd ez a fix kód. Nem tehetjük meg azt sem, hogy választunk egy ilyen jelz"-bitkombinációt (mondjuk egy 0-ás jegyet) és gondoskodunk arról, hogy az adott eljárásban soha többé ne legyen egyetlen kódszó sem, amelynek ez prefixuma lenne, (tehát végül is a teljes kódszókészletben nem lehetne olyan kódszó, amelyik 0-val kezd"dik). Ez a megoldás ugyan megfelel" lenne a mondott „jelz"kódnak”, de egyáltalán nem lenne biztos, hogy az eljárással kapott Huffman kód valóban optimális lenne. Márpedig szeretnénk megtartani a Huffman kódolásnak ezt az el"nyét is Az egyetlen lehet"ségünk az, hogy olyan „jelz"kódot” alkalmazunk 1. amelyet az eljárás megel"z" szakaszában még nem rendeltünk hozzá a forrásábécé egyetlen szimbólumához sem, 2. de megengedjük, hogy ilyen hozzárendelés az éppen aktuális lépésben (vagy
azután valamikor) megtörténhessen azzal, hogy 3. ha a korábbi „jelz"kódot” hozzárendeljük az alakulóban lév" Huffman fa valamelyik csomópontjához, akkor attól kezdve új „jelz"kódot” alkalmazunk, amely megfelet az 1) feltételnek. Ezzel a kör bezárult és az is következik a mondottakból, hogy már az els" lépést"l kezdve változó hosszúságú kódot célszer9 hozzárendelnünk az éppen aktuális MNL csomóponthoz és ez lesz a következ" lépésben a mondott „jelz"kód”. S"t, mindaddig az lesz, amíg az MNL csomóponthoz tartozó el"zetes kódlistából nem kell egy elemet törölni, azaz új, addig egyszer sem el"fordult szimbólumot ad le a forrás. FileNév: InfotechnikaÚjJegyzet3.doc - 139/184 - Utoljára módosítva: 2001-11-05 (Alább egy példában bemutatjuk majd, hogy hogyan is történik ez a dolog és a már „beigért” kódkiosztó algoritmus folyamatábrája gondoskodik is ennek
az elvnek a végrehajtásáról. Az adaptív Huffman fa rekonfigurálását folytatva ezután továbblépünk a gyökér irányába a következ" szül"-csomópontra és megismételjük az eljárást. Ezt mindaddig folytatni kell, amíg el nem érjük a gyökér-csomópontot80 Ha el"ször fordul el" a leadott sorozatban az a szimbólum, amit éppen kódolni vagy dekódolni kell, akkor egy új küls" csomópontot (=levelet) kell hozzárendelni a szimbólumhoz és egy új MNL csomópontunk lesz, 80 Az itt leírt szabályrendszer bizony elég bonyolultnak t6nik. Ennél lényegesen egyszerübben fogalmazza meg az el5z5leg megadott folyamatábra és alább majd egy példán is demonstráljuk az eljárást. Talán segíti a megértést, ha arra gondolunk, hogy az adaptív Huffman kódolásnál minden egyes leadott szimbólum után szükségképpen növelni kell a fa jónéhány csomópontjának a súlyát s a gyökérét (amelynek a súlya az addig leadott
valamennyi szimbólum száma, azaz az összesített gyakoriság) mindenképpen. Az érintett csomópontok súly-növelését úgy kell végrehajtani, hogy közben a fa csomópontjainak testvér-tulajdonsága megmaradjon. FileNév: InfotechnikaÚjJegyzet3.doc- 140/184 -Utoljára módosítva: 2001-10-18 Legyen a közvetíteni kívánt szó: eeriness Lévén az ábécében n = 26 betü, a megszerkesztend" Huffman fának összesen 2n-1 = 51 csomópontja kell, hogy legyen. Már a kezdet kezdetén ez kell, hogy legyen a gyökér sorszáma. A következ"kben lépésr"l-lépésre szerkesztett (adaptív) Huffman fáknál körrel jelöljük a bels" csomópontokat, amelyek biztosan szül"i lesznek –vagy lehetnek-- további csomópontoknak és négyszöggel azokat, amelyek vagy már levelek (tehát egy-egy forrásszimbólum tartozik hozzájuk) vagy az adott lépésnél még nem fordult el" valamennyi forrásszimbólum leadása, tehát az az algoritmus éppen
aktuális lépésénél még a „növekv"ben lév" fa” levelei, de a továbbiakban még bels" csomópontok szül"i lesznek. A csomópont sorszámát most a csomópont belsejébe írjuk, a súlyát pedig a csomópont mellé, mint ahogyan korábban, a nem adaptív eljárásnál (Ld. 37 és 38 példa) is tettük. Az MNL csomópontok abban, és csak abban különböznek lépésr"l lépésre, hogy a hozzájuk rendelt kezdeti kód-listáról mindíg kihúzunk egy-egy szimbólumot és a hozzátartozó kezdeti kódot, ha egy szimbólumot az eljárás kezdete után el"ször bocsájt ki a forrás. Így az egymás után következ" újabb s újabb MNL csomópontok súlyai is monoton csökken" sorozatot alkotnak. Tekintsük át a következ" ábrán a (leend") Huffman fa kezdeti helyzetét és a rekonfigurálási folyamat els" két lépését (amikor a példaként vett eeriness szóból az els" és a második betüt adja le a forrás).
FileNév: InfotechnikaÚjJegyzet3.doc- 141/184 -Utoljára módosítva: 2001-10-18 MNL e e 50 50 1 2 51 51 51 0 1 2 MNL 49 MNL 0 0 e j = 26 49 0 ee j = 25 sorsz= 2x25 sorsz = 2x26 -1 sorsz = 2x25 -1 j = 25 Itt a szintek száma és a sorszám nem változik, mert nem adott az adó újabb szimbólumot, s csak a gyakoriság változott Az els" betü ( e = 00100 ) kibocsájtása után a hozzárendelt csomópont súlya (= 1) nagyobb lesz, mint az új MNL csomópont súlya (=0), ezért az e betühöz rendelt levélhez rendeljük a nagyobb sorszámot (=50) és az új MNL csomóponthoz a kisebbet (=49). Tekintettel arra, hogy a gyökért"l visszafelé számozzuk a csomópontokat, az e-hez tartozó csomópont sorszáma csakis 51-1=50 lehet. Továbbá tekintettel arra is, hogy olyan eljárásról van szó, amely a kezdetét"l fogva egyre „finomodó” változó szóhosszúságú kódot rendel az egyre inkább ágas-bogasodó Huffman fa leveleihez, mindjárt
itt, az els" szimbólum leadása után kódot is rendelhetünk a levelekhez. Állapodjunk meg abban a kódkiosztási stratégiában, hogy a fa fels" (nagyobb sorszámú) csomópontjainál 1-esekkel, az alsó, kisebb sorszámú csomópontjainál pedig 0-ás jegyeket kapcsolunk hozzá a korábbi prefixumokhoz. Így ennél a példánál az 50. csomóponthoz 1-es, a 49 MNL csomóponthoz pedig 0-ás kódot rendelünk hozzá. Innen kezdve a forrás is, és a vev" is „tudja”, hogy az e betühöz nem kell többé használnia a kezdeti 00100 kódot, hanem egyszerüen csak egy 1-est (mindaddig, amíg a fa át nem rendez"dik). Az el"z" ábrán nem tüntettük fel ezeket a kódokat, hogy össze ne keveredjenek a súlyokkal és a sorszámokkal. Az el"bbi eseményt ismét egy e betü leadása követi. A mondottak miatt ezt egyetlen 1-es leadásával közli a forrás, és a vev" is „érteni fogja”. Mivel az ismételt e betü nem új szimbólum,
FileNév: InfotechnikaÚjJegyzet3.doc- 142/184 -Utoljára módosítva: 2001-10-18 A következ" 3 lépésben új szimbólumokat ad le a forrás ( r,i,n ) tehát a fában új szintek és új, a forrásszimbólumokhoz egyértelm9en hozzárendelhet" levelek keletkeznek. Az r és az i forrásszimbólumok leadásakor a fa a következ" módon b"vül: e:1 e:1 50 50 2 2 51 3 r : 01 r : 01 0 48 51 1 4 48 1 0 49 49 1 2 i : 001 46 1 00 00 47 MNL 47 1 0 000 MNL 45 0 ee r j = 25 ee j = 24 r j = 25 i j = 24 j = 23 Itt a csomópontok felett már feltüntettük a kódokat is. Figyeljük meg, hogy az MNL csomóponthoz is rendeltünk kódot s az egyik lépésr"l a következ"re megváltozik. FileNév: InfotechnikaÚjJegyzet3.doc- 143/184 -Utoljára módosítva: 2001-10-18 Az i betü leadását követ"en a példánkban az n következik, ami az eddigiek között még nem fordult el", tehát megint csak új levelet ad a fához, aminek
a szül"je az el"z", 45. sorszámú MNL csomópont Az adó a megállapodás szerinti kezdeti kódnak megfelel" 01101 kódot fogja leadni, és az adaptív Huffman fa a következ"képp alakul: e:1 50 2 r : 01 48 51 5 1 0 i : 001 49 46 3 1 00 n : 0001 47 44 2 1 000 45 1 0000 MNL 43 0 ee r j = 25 i j = 24 n j = 23 j = 22 FileNév: InfotechnikaÚjJegyzet3.doc- 144/184 -Utoljára módosítva: 2001-10-18 Itt az ideje, hogy megvizsgáljuk, hogy a leírt algoritmus szerint mi is volt az adó által eddig kibocsájtott bitsorozat, és mit hogyan értelmezett a vev" (amely ugyanazt az algoritmust ismeri. - A kezdeti MNL csomóponthoz nincs kód hozzárendelve. A legel"ször leadott kódot tehát mindíg az el"re megállapodott kezdeti kódszókészlet egy elemének kell tekinteni. Mindíg egy ilyen kódszóval kezd"dik a sorozat. 00100 Ez az els" e betü kódja, amihez az algoritmus szerint a következ"kben az 1
kódszó fog tartozni. Mellesleg az algoritmus törli is az MNL kezdeti kódlistájából az e betünek megfelel" 00100 kezdeti kódot s így a továbbiakban a kezdeti kódja alapján már nem is lenne képes a vev" azonosítani az e betüt. 1 Ez a második e betü kódja. Nincs szükség arra, hogy még egyszer leadjuk a kezdeti kódot, mert az algoritmus már hozzárendelte az e betühöz az 1-est, mint változó szóhosszúságú kódot. Az új MNL kódja 0. 0 Az új MNL csomópont kódja még mindíg 0. Ez a 0 itt azt jelenti, hogy a következ" betü még nem fordult el" az eddig leadott sorozatban, tehát a kezdeti kódja következik, azaz 10001 az r betünek megfelel" kezdeti kód. Egyuttal azonban az (új) MNL kódja is megváltozik 00-ra és az r betühöz hozzárendeli az algoritmus a 01 kódot. 00 Az új MNL csomópont kódja, ami azt jelenti, hogy ismét eddig még nem el"fordult betü következik, tehát azt a kezdeti kódjával kell
leadni és értelmezni. Látható, hogy miért van szükség új MNL kódra: ha ugyanis még mindíg csak egyetlen 0-ás lenne az MNL kód, akkor az prefixuma lenne az r-betühöz rendelt 01 kódnak, tehát nem teljesülne az egyértelm9 megfejthet"ség kritériuma. 01000 Az i betünek megfelel" kezdeti kód. A továbbiakban az i-hez a 001 kód tartozik (amíg csak az algoritmus meg nem változtatja azt). 000 Az ismét újabb MNL csomópont kódja, tehát megint új betü következik. 01101 Az n betü kezdeti kódja. ezután azonban az n betü kódja (egyel"re) 0001 lesz. Az új MNL csomópont kódja pedig 0000 A példa szerint tehát az eddig kibocsájtott bitsorozat: 001001010001000100000001101 mivel a vev" is ismeri mind a kezdeti ábécét és a hozzárendelt ötbites kódot, mind pedig az adaptív algoritmust és (az eddig még folyamatábrájával nem definiált) kód-hozzárendelési eljárást is, „megérti, hogy ez a bitsorozat az eerin
betüsorozatnak felel meg. FileNév: InfotechnikaÚjJegyzet3.doc- 145/184 -Utoljára módosítva: 2001-10-18 Az ehhez tartozó adaptív Huffman fa a következ": e:1 50 2 r : 01 48 51 5 1 0 i : 001 46 49 1 3 00 n : 0001 47 44 2 1 000 45 1 0000 MNL 43 0 ee r j = 25 i j = 24 n j = 23 j = 22 Az adó által leadott bitsorozatot az eddigi gondolatmenet alapján folytathatjuk is: 1 mert ismét egy e-betü következik, de azt már korábban „megtanulta” mind az adó, mind a vev", hogy az e betühöz rendelt kód 1-es. Sem a Huffman fának, sem a csomópontok sorszámozásának nem kell most változnia, de a csomópontok súlyai változnak, mert az eddig beérkezett betük FileNév: InfotechnikaÚjJegyzet3.doc- 146/184 -Utoljára módosítva: 2001-10-18 száma is inkrementálódik 1-gyel. Ami azt illeti, a csomópontok sorszámozásának nem is szabad változnia, mert az n=26 különböz" betüt tartalmazó ábécéhez eleve 2n-1=51 sorszámot
rendeltünk hozzá, tehát a már leadott betük ismétl"dése nem növelheti a sorszámozást. Az „új” fa tehát a következ" lesz: e:1 50 3 r : 01 48 51 6 1 0 i : 001 46 49 1 3 00 n : 0001 47 44 2 1 000 45 1 0000 MNL 43 0 ee r j = 25 i j = 24 ne j = 23 j = 22 A soronkövetkez" betü (=s) megint új betü lesz, tehát a bitsorozatban az „érvényes” MNL csomópont kódjának kell következnie, ami most 0000. FileNév: InfotechnikaÚjJegyzet3.doc- 147/184 -Utoljára módosítva: 2001-10-18 Az ehhez tartozó adaptív Huffman fa a következ": e:1 50 3 r : 01 48 51 7 1 0 i : 001 46 49 1 4 00 n : 0001 47 44 3 1 000 s : 00001 45 42 2 0000 1 43 1 00000 MNL 41 0 ee r j = 25 i j = 24 s ne j = 23 j = 22 j = 21 Eddig egyszer sem kellett az algoritmus során ismertetett csomópont-cserét (és következményeit) megcsinálni, mert a fa mindeddig úgy épült, hogy a mindenkori MNL-t"l felfelé haladva nem
csökkentek a csomópontok súlyai. A példa-szó végén leadandó második s betü azonban megváltoztatja ezt a helyzetet, ezért az algoritmusban leírt csomópont cserét végre kell hajtani (mindjárt azután, hogy a második s betünek megfelel" 00001 Huffman kódszót leadja az adó és veszi a vev". Ezután pedig a gyakoriság-változás FileNév: InfotechnikaÚjJegyzet3.doc- 148/184 -Utoljára módosítva: 2001-10-18 következményeként a bels" csomópontokhoz tartozó súly-sorrend megváltozása miatt a bels" csomópontokat is át kell rendezni. Az átrendezéskor mind a sorszám, mind a csomóponthoz rendelt kódszó marad a helyén, „csak” a hozzárendelt forrásszimbólumok „vándorolnak”. Az átrendezett fa a végül a következ" lesz: e:1 50 3 s : 01 48 51 8 2 0 r : 001 46 49 1 5 00 i : 0001 47 44 3 1 000 n : 00001 45 42 2 0000 1 43 1 00000 MNL 41 0 ee r j = 25 i j = 24 ne j = 23 ss j = 22 A teljes
leadott bitsorozat pedig a következ": 0010010100010001000000011011000001001001 j = 21 FileNév: InfotechnikaÚjJegyzet3.doc- 149/184 -Utoljára módosítva: 2001-10-18 A leírt példa alapján az eljárás nem t9nik éppen egyszerünek, de az alkalmazott algoritmusok nem bonyolultak. Talán az okozhat nehézséget a m9ködés követésekor, hogy két algoritmus közül az els" a másodikba beépítve m9ködik. Az els" az adaptív Huffman fa már leírt rekonfigurálási algoritmusa, a másik pedig a kódkiosztásé, amelynek egyik rutinja a rekonfigurálási algoritmus egésze és folyamatábrája a következ": START Érzékeli a soronkövetkezõ szimbólumot I Elõször fordul elõ a szimbólum? Elküldi a kezdeti kódját az MNL csomópontnak és a kódhoz hozzákapcsolja az MNL lista indexét. N A szimbólum kódját a gyökértõl a hozzátartozó levélig terjedõ út definiálja Meghívja a rekonfiguráló eljárást Ez az utolsó szimbólum? I
STOP N FileNév: InfotechnikaÚjJegyzet3.doc- 150/184 -Utoljára módosítva: 2001-10-18 Egy szimbólumsorozat kibocsájtását közvetlenül megel"z"en mind a forrás, mind a vev" adaptív Huffman fája csak egy-egy MNL csomópontot tartalmaz, amelyek súlya 0 (mert a kezdet kezdetén még egyetlen egy szimbólumot sem bocsájtott ki a forrás s ugyancsak egyetlen egyet sem vett az adó). Következésképp az els" néhány bit mindíg az el"re megállapodott, fix kezdeti kód valamelyik kódszava lesz. Ezután valahányszor egy olyan szimbólumhoz kell kódot rendelni, amely még nem fordult el" az addig leadott szimbólumok között, el"ször is az éppen érvényes MNL csomóponthoz tartozó kódot k9ldi el az adó, ezzel jelezve, hogy az utána következ" néhány bitet megint csak az el"re megállapodott kezdeti kód egy kódszavaként kell értelmezni. Az éppen érvényes MNL csomóponthoz tartozó (változó szóhosszúságú)
kódot úgy kapjuk meg, hogy a gyökért"l keresztülhaladunk az adiig elkészült adaptív Huffman fán. A demo példában alkalmazott stratégiát követve ez a kód annyi nullás jegyb"l áll, amilyen hosszú a legrövidebb út a gyökért"l az aktuális MNL csomópontig.81 Mindíg az aktuális MNL csomóponthoz tartozó kód az, ami figyelmezteti a vev"t arra, hogy olyan el"re megállapodott, fix kódszó leadása következik, amely még nem fordult el" az eljárás megkezdése óta, tehát nincs is még neki megfelel" csomópont a Huffman fában. A már leírt algoritmusok és a példa alapján talán követhet", hogy hogyan is történik az adaptív Huffman kód el"állítása. Az is belátható ugyanezek alapján, hogy a vev" az el"re megállapodott információk és az algoritmusok ismeretében mindíg rendelkezik annyi információval, amely alapján megfejtheti a vett bitfolyamot. Feltéve, ha nincs közvetítési hiba
Azt már láttuk a „kétmenetes” Huffman kódolásnál, hogy a Huffman kód abból a szempontból mindíg optimális, hogy a lehet" legrövidebb átlagos szóhosszúságú kódot állíja el", tehát a legkisebb lehetséges redundanciával rendelkezik. (Ez még 0%-os redundancia is lehet, ha a forrásszimbólumok valószín9ségei 2-nek negatív egész hatványai.) Az adaptív Huffman kód redundanciája elvileg nagyobb, mert az eljárás elején az átlagosnál hosszabb kódszavakat is kell alkalmaznia (t.i az el"re megállapodott fix kezdeti kód szavait), méghozzá annyiszor, ahány forrásszimbólum van. Hosszú üzenet esetén ez relatíve nem sok, tehát a redundancia sem sokkal nagyobb, mint a „kétmenetes” Huffman kódé. Rövid üzenet esetén az adaptív Huffman kód egészen biztosan sokkal redundánsabb, mint a „kétmenetes” Huffman kód, de éppen a rövid üzenetek esetében nem oszt és nem szoroz a két „menet” végrehajtása. Az adaptív
Huffman kódot kifejezetten hosszú üzenetekre találták ki, azoknál meg elenyész" a többlet redundancia. A redundancia azonban bizonyos fokú hibavédelmet jelentett. Minél kisebb a redundancia, annál „érzékenyebb” a kód a hibákra. Változó szóhosszúságú kódok esetén elegend" egyetlen bithiba is ahhoz, hogy a hiba utáni minden információt hibásan dekódoljon a vev". 81 A „másik” lehetséges stratégia a mondott eljárásban az 1-es és a 0-ás jegyek felcserélése, de bármelyik stratégiát is választjuk e kett5 közül, azt következetesen alkalmazni kell végig, az eljárás során. FileNév: InfotechnikaÚjJegyzet3.doc- 151/184 -Utoljára módosítva: 2001-10-18 Ez a hibaérzékenység az adaptív Huffman kódolásnál még nagyobb, mint a „kétmenetes” Huffman kód esetében.82 Az adaptív Huffman kód dekódoló algoritmusának is adaptívnak kell lennie. Az eljárás els" szakaszában egyszer feltétlenül
el"fordul egy csomó forrásszimbólum el"re megállapodott fix kódja, de semmi sem biztosítja, hogy valamennyi forrásszimbólumé el"fordul az adott üzenetben. Ezen kívül a bitfolyamban lényeges szerepet játszanak az MNL csomópontokhoz rendelt, ugyancsak változó hosszúságú kódok, amelyek az elején olyanok, hogy kés"bbi szimbólum-kódok prefixumai is lehetnek. Tovább bonyolítja a dolgot az, hogy az adaptív Huffman fa felépítése során a korábban már kiosztott, szimbólumokhoz rendelt kódok is változhatnak s"t: a fában újabb elágazások is születhetnek aszerint, hogy a bitfolyam növekedésével hogyan változnak a szimbólumok relatív gyakoriságai. Ezt a mindíg változó fát sokkal bonyolultabb visszafejteni, mint a „kétmenetes” Huffman kódnak a kezdeti statisztikai vizsgálat után kiosztott változó szóhosszúságú, de egyéb szempontból már rögzített kódját. Mindezen okok miatt a dekódolási eljárás
algoritmusa nem egyszer9en a kódolás inverze. Legalább is „ránézésre” nem az Abban azonban legalább megegyeznek, hogy az adaptív Huffman fa rekonfigurálási algoritmusát változatlan formában alkalmazza mind a kódolási, mind a dekódolási algoritmus. Eddig külön, általános érvény9 jelölésrendszer bevezetése nélkül beszéltünk az el"re megállapodott, fix kezdeti kódról. Fontos arra is emlékeznünk, hogy a fix kezdeti kódszókészletre e+1 bites bináris kódszavakat választottunk és ezekb"l összesen m darab volt. Ráadásul ezeket 000.00-tól a bináris számok növekv" sorrendjében rendeltük a forrásábécé betüihez. A 0 D i D m-1 index tehát hozzárendelhet" az m elem9 forrásábécé minden egyes a0; a1; . ai; am-1 szimbólumához. Egyszerüen a szimbólum sorszámának is tekinthet", márpedig a sorszámozásnak az adaptív Huffman fa megszerkesztésekor jelent"sége van. Az algoritmusban hivatkozni fogunk
még az r maradékra is, amit a 135. oldalon definiáltunk. Lássuk ezek után az adaptív Huffman kód dekódolási algoritmusának folyamatábráját! 82 Pl. azért, mert az utóbbiba be lehet iktatni ellen5rz5 pontokat, az adaptív eljárásba viszont nem. Az adaptív Huffman kódot a bonyolultabb és minden kódolási-dekódolási lépésben végrehajtandó számítási algoritmus is érzékenyebbé teszi. FileNév: InfotechnikaÚjJegyzet3.doc- 152/184 -Utoljára módosítva: 2001-10-18 START Menj a fa gyökeréhez Külsõ csomópontról van szó? N Az adaptív Huffman kód dekódoló algoritmusa Megkeresi az éppen aktuális MNL-hez tartozó forrásábécé listáján a most elõször leadott szimbólumot a fix kódja alapján Olvass be egy bitet majd menj a megfelelõ csomóponthoz I MNL csomópontról van szó? I Olvass be e darab bitet N Dekódold a beolvasott elemet a neki megfelelõ csomópont szerint Kisebb az i index r-nél? N I Olvass be még egy bitet
Hívd a rekonfiguráló procedúrát N Ez az utolsó szimbólum? I STOP Dekódold az i+1-edik elemet az éppen érvényes MNL lista szerint Adj hozzá i-hez 1-et FileNév: InfotechnikaÚjJegyzet3.doc- 153/184 -Utoljára módosítva: 2001-10-18 A dekódolás demonstrációja. A dekódolási algoritmust ugyanúgy végigkövethetjük egy példán, mint azt a kódolási algoritmus demonstrációjakor megtettük. Kézenfekv", hogy a dekódolás demonstrálására ugyanazt a bitsorozatot használjuk, amit a kódolási példa eredményeként kaptunk, azaz 00100101000100010000000110110000010010 Ezt a bitfolyamot balról jobbra olvasva kell dekódolni. Mind a kódolási, mind a dekódolási eljárás kezdetén csak egyetlen egy 0-súlyú MNL83 csomópontból áll az adaptív Huffman fa s ehhez hozzátartozik a teljes, el"re megállapodott, fix kódok listája. Az eljárás kezdetén tehát a vev" beolvas négy bitet, mert az algoritmus szerint e-darab bitet kell
beolvasnia és a 26 betüs ábécé esetén e = 4 (továbbá r = 10, mert m = 26 = e + r = 16 + 10). A beolvasott 0010 bináris szám decimális megfelel"je 2. Mivel ez kisebb, mint r=10, ezért még egy bitet beolvas, tehát a bitfolyam elejér"l beolvasott teljes kódszó 00100. Ezt kell a vev"nek a kezdeti, fix kód táblázata alapján értelmeznie, s meg is találja a fix kódok táblázatában az ennek megfelel" e betüt Ezután a vev" dekódoló algoritmusa behívja a Huffman fa rekonfigurálási procedúráját és megszerkeszti a gyökeret, az új MNL csomópontot, valamint az éppen sikeresen dekódolt e-betünek megfelel", egyel"re csak 1-es súlyú csomópontot. Megjegyzi azt is, hogy ehhez az els" beolvasott betühöz egyel"re az 1-es kódot rendelte hozzá Ekkor még a gyökér súlya is csak 1 A dekódolási eljárás ezután csak egyetlen bitet olvas be. Ha az történetesen 0 lenne, akkor „tudná”, hogy az új MNL
csomópontban van és megint egy még nem leadott betüt kell dekódolnia. A most beolvasott bit azonban történetesen 1-es, s ezt értelmezni is tudja a már megszerkesztett rész-fa alapján Ezután megint egy bitet olvas be, s lévén az 0, a vev" „tudja”, hogy most egy MNL csomópontban van, tehát megint e=4-darab bitet kell beolvasnia, majd megvizsgálnia, hogy a beolvasott tetrád decimális megfelel"je kisebb-e r-nél. A most beolvasott 4 bit: 1000, aminek a decimális megfelel"je: 8<r=10-nél, tehát megint hozzá kell még olvasnia egy bitet. így a teljes beolvasott ötbites kezdeti kód 10001 s ehhez kikeresi a kezdeti kódok táblázatában a hozzátartozó betüt, ami nem más, mint r. Az eljárás így folytatódik a bitsorozat végéig. 83 Logikusabb lenne ugyan a vev5 oldalán az MNL csomópontokra a „még –eddig- nem vett” tehát MNV megnevezést használni, de jobb, ha megtartjuk a fa felépítési algoritmusánál már bevezett MNL
megnevezést, mert így az adó oldali és a vev5 oldali Huffman fák nem csak egymásnak analógjai, hanem még a jelöléseikben sincs semmilyen eltérés. FileNév: InfotechnikaÚjJegyzet3.doc- 154/184 -Utoljára módosítva: 2001-10-18 D. FÜGGELÉK: A magyar nyelv írások betüstatisztikái Az alábbiakban közölt betüstatisztikák egy a BMF KKVFK SzGTI egyik hallgatói projektje84 keretében készült szövegelemz" program (mondjuk úgy: béta változatával) készültek és ennek az anyagnak a megírásáig nem publikált eredmények.85 Az itt következ" els" betüstatisztika a Arany János Toldijának a Magyar Elektronikus Könyvtárból (MEK) letöltött több, mint 70 ezer betüs szövegelemzése alapján készült. betü % betü % betü % sp 15,67 g 3,01 c 0,72 e 7,75 á 2,74 p 0,69 a 7,04 z 2,73 u 0,65 t 6,28 é 2,49 ó 0,62 n 4,95 y 2,21 l 4,74 d 2,01 í 0,33 s 4,60 v 1,62 ú 0,31 k 3,49 b 1,52 ü
0,29 r 3,21 h 1,47 m 3,16 j 1,24 w 0 o 3,15 ö 1,00 q 0 i 3,07 f 0,83 x 0 0,52 0,12 Az elemz" program nem tett különbséget a kis- és a nagybetük között a gyakoriság-elemzéskor és nem vizsgálta az írásjek (pont, vassz", kérd"jel, felkiáltójel, idéz"jel, stb.) gyakoriságait A dupletek statisztikai kijelzésére is alkalmas a program, de a szakirodalomban szokásos, mátrix elrendezés9 eredménymegadás egy 35x35-ös mátrixot ad (a program béta változatánál) ami teljesen áttekinthetetlen. 84 Tóth Andor III. évf levelez5 villamosmérnök hallgató projektje 85 Kissé szégyellnivalónak tartotta a szerz5, hogy a jobbára angol nyelv6 szakirodalomban megadott, nem csak az angol, hanem más, így a magyar nyelv betügyakoriságaira és dupleteire érvényes statisztikai adatokra hivatkozzon, ezért készültek a hivatkozott projektben elkészített programmal összehasonlító elemzések. Az itt közölt statisztika
egyike a legels5knek. FileNév: InfotechnikaÚjJegyzet3.doc- 155/184 -Utoljára módosítva: 2001-10-18 A következ" táblázat egy mai magyar napilap valamivel több, mint 34 ezer betüs tartalmának a betügyakoriság-statisztikáját mutatja (ugyanazzal a programmal és ugyanolyan feltételek mellett, mint Arany János Toldijának az elemzésénél). betü % betü % betü % sp 12,83 á 3,30 j 0,97 e 8,05 é 2,83 u 0,91 a 7,46 m 2,78 h 0,90 t 6,88 g 2,50 c 0,57 s 5,13 d 1,72 í 0,50 l 5,10 y 1,68 ü 0,40 n 4,70 v 1,61 ú 0,26 k 4,30 b 1,52 0 o 4,15 p 1,24 0 z 4,11 ó 1,02 w 0 r 3,77 f 0,98 q 0 i 3,64 ö 0,97 x 0 FileNév: InfotechnikaÚjJegyzet3.doc- 156/184 -Utoljára módosítva: 2001-10-18 E. Függelék A hatásfokok és a tömörítési (vagy kódolási) arány. A forrás hatásfoka: Viszonyszám, amely megmutatja, hogy mi a forrásentrópia és az iid modellhez tartozó elvi
forrásentrópia-maximum aránya, azaz %= H(X ) H ( X ) max Természetesen a százalékos értéke is megadható. Emlékeztetnünk kell arra, hogy a forrás információelméleti jellemz"inek kiszámításakor mindíg valamilyen matematikai modellel helyettesítjük a forrást és az ezúton számított érték csak becslése a várható értékeknek, továbbá a becslés annyira jó, amennyire az alkalmazott modell ténylegesen közelíti a forrás tényleges valószín9ségi modelljét. (Ld a B függeléket!) Az iid modell ilyen vonatkoztatási alap lehet, mert annak a forrásentrópiája a legnagyobb. [=H(X)max]. A kódolás hatásfoka és a kódolási arány A változó szóhosszúságú illeszt" kód megszerkesztése javította a hatásfokot, ami –többek közöttabban nyilvánult meg, hogy az illeszt" kód átlagos szóhosszósága felülr"l közelítette a forrásentrópiát és az entrópiája is mindenesetre nagyobb volt, mint a forrásé.86 A
Kraft-McMillan egyenl"tlenség alapján azt is ki lehetett mondani, hogy mindíg kell, hogy létezzen olyan illeszt" kód, amelynek bitekben kifejezett átlagos szóhosszúsága ( = l ) a H(X) forrásentrópia és a H(X)+1 határok közé kell, hogy essék. Az illeszt" kódolás hatásfokának kiszámításakor a vonatkoztatási alap lehetett az iid modell H(X)max entrópiája és ekkor arra volt lehet"ségünk, hogy összehasonlítsuk, hogy mennyivel jobb az illeszt" kód hatásfoka, mint a forráskódé. (Ld a fenti képletet!) Lehet azonban a vonatkoztatási alap a forrás tényleges H(X) entrópiája is, amelyet az illeszt" kód átlagos szóhosszúságával osztva arányszámot kapunk arra, hogy az illeszt" kód egy-egy bitje átlagosan hány százalékát hordozza a forrásentrópia egy-egy bitnyi információjának: AC = H(X ) l Ebben az összefüggésben az AC dimenzió nélküli mennyiség az un. kódolási arány. Ez is hatásfok jelleg9
mennyiség és megadható százalékok- 86 Lévén az entrópia a bizonytalanság mértéke, az illeszt5 kódnak a forrásénál nagyobb entrópiája azt is jelentette, hogy az illeszt5 kód kevésbbé megjósolhatóvá tette a forrásinformációk sorozatát. FileNév: InfotechnikaÚjJegyzet3.doc- 157/184 -Utoljára módosítva: 2001-10-18 ban is. Mivel az entrópia átlagos szóhosszúság nem lehet kisebb, mint a forrás- l H (X ) ezért a kódolási arány optimális esetben elérheti ugyan a 100 %-ot, de általában kisebb annál. Ezért aztán általában az illeszt" kód is redundáns és e redundancia értéke kifejezhet" a kódolási arány értékével is: RC = 1 AC FileNév: InfotechnikaÚjJegyzet3.doc- 158/184 -Utoljára módosítva: 2001-10-18 F. Függelék Az absztrakt algebra alapjai Az „algebra” szó eredete az arab „al-jabr” szó, amely összeilleszkedést, újraegyesítést jelent. Ennek a szónak az els" matematikai
értelmezése valószínüsíthet"en Muhammad ibn Musa al-Kharizmi arab matematikustól származik a IX. századból z írta az els" ismert algebra könyvet és neki tulajdonítják, hogy a nyugati világ figyelmét felhívta az arab számokra.87 Azóta az algebra a matematikai igen sok olyan fejezetének közös gyüjt"neve lett, amelyek objektumok diszkrét halmazaira, azok manipulálására és elemzésére koncentrálnak.Ezek a fejezetek magukba foglalják az elemi absztrakt algebrát, a lineáris algebrát, az algebrai geometriát és az algebrai topológiát. A kódoláselmélettel foglalkozó kutatók els" generációja a már akkor is rendelkezésre álló matematikai eszközöknek csak igen kis részét használta az els" hibajavító kódokhoz. A Hamming kódok megértéséhez pl. elegend" mind a lineáris algebra, mind a kombinatorika nagyon felületes ismerete is.88 Egy kicsit többre van szükség a Reed-Müller kódokhoz. A Reed-Solomon és a
BCH kódoknak az el"bbiekt"l független kifejlesztése azonban jelent"sen mélyebb algebrai eszközkészletet igényelt. Ezzel együtt viszont az eredményül kapott kódok teljesítménye is igen jelent"sen megnövekedett. Ez a tendencia aztán egészen az 1990-es évekig egyre er"södött pl. azzal, hogy az igen jó és hosszú blokk-kódok konstrukciójához az algebrai geometriát alkalmazták. (Ilyen kódokat használnak pl. a CD technikában Ebben a függelékben az algebrai csoportok, véges testek és vektorterek algebrai fogalmait foglaljuk össze. Ez az ismeretanyag jó alapot ad a blokk- és a konvolúciós kódok általános elméletének a megértéséhez. Ezek mellett (remélhet"en) érthet"bbé tesz bizonyos 87 Az un. arab számok tulajdonképpen Indiából származnak Al Khwarizmi számos szanszkrit nyelv6 matematikai írást fordított arab nyelvre. Ezeket a munkákat kés5bb latinra fordították és így lehet5vé vált a
megismerésük a nyugati világ számára is. Kés5bbi fejlemény, hogy al-Khwarizmi nevéb5l származik az „algoritmus” szó is. Ha manapság valaki Egyiptomba, vagy más, arabul beszél5 országokba látogat, meglep5dhet azon, hogy mennyire különböznek az arab írás számjegyei az Európában használatos „arab” számjegyekt5l. Érdekes azonban, hogy míg az arab szövegírás jobbról balra (vagy soronként váltott irányban) történik, a szövegbe iktatott többjegy6 számokat mindíg balról jobbra kell olvasni. 88 Ezt kihasználva heurisztikus alapon adtunk némi betekintést korábban „A hibavédelmi kódolás és áramkörök” c. jegyzet kiegészítésben (Dr Hudoba György és Dr Tóth Mihály; kandó-SzGTI 1990) az itt tárgyalt témakörbe. Mivel az absztrakt algebrai alapok némi ismerete ma már nem csak a kódoláselmélethez, hanem –többek közötta kriptográfiához is nélkülözhetetlen, ezért döntöttünk úgy, hogy legalább egy
függelékben összefoglaljuk a legfontosabb fogalmakat. FileNév: InfotechnikaÚjJegyzet3.doc- 159/184 -Utoljára módosítva: 2001-10-18 blokk-kódokat, mint amilyenek pl. a Hamming kódok és a Reed-Müller kódok. Ugyanezek az algebrai ismeretek (matematikailag) megalapozzák az Információ titkosítása c. studiumot is, különösen annak az aszimmetrikus kriptográfiával foglalkozó fejezetét. Jól használhatók továbbá a diszkrét id"ben vizsgált rendszerek elvi alapjaihoz is.89 F1 Algebrai struktúrák és m veletek. Egy halmaz valamilyen objektumok, elemek tetsz"leges gy9jteménye, amelyen el"zetesen az égadta világon semmilyen m9veletet nem definiálunk a halmaz elemei között. A halmaz lehet véges ( pl a székesegyházak halmaza Magyarországon), lehet megszámlálhatóan végtelen (mint pl. a pozitív egészszámok halmaza), vagy megszámlálhatatlanul végtelen (mint pl. az összes valós számok halmaza). Egy halmaz els"rend9en fontos
jellemz"je a halmaz számossága (kardinalitása), amely definició szerint a halmazba tartozó objektumok számát jelenti. A helyzet akkor válik bonyolultabbá, amikor a halmaz tetsz"legesen kiválasztott két eleme (=argumentumok vagy operandusok) között egy m9veletet definiálunk90, amelynek az eredménye valamilyen olyan objektum, ami vagy beletartozik ugyanabba a halmazba, amelyb"l a m9velet két argumentumát kiválasztottuk, vagy nem. A kétargumentumos mGveleteket bináris mGveleteknek is szokták nevezni, de nem azért, mert a m9veletet bináris számokon hajtjuk végre, hanem azért, mert a m9velet két operandus között van értelmezve. MGvelet, reláció, zártság, mGvelettábla, kommutativitás, particionálás, 89 Rendszerelmélet, Algoritmusok elmélete, Formális nyelvek, Digitális rendszertechnika. 90 Ezt úgy mondjuk, hogy a halmaz felett egy m6veletet definiálunk. FileNév: InfotechnikaÚjJegyzet3.doc- 160/184 -Utoljára módosítva:
2001-10-18 Álljunk meg egy szóra a m&velet (és a relációk) fogalma kedvéért! A két operandus között értelmezett m velet itt teljesen általános fogalom. A halmaz, amely felett a m6veletet definiáljuk, az adott m6veletre nézve zárt, ha a m6velet eredménye is a halmazba tartozik, akármilyen elemei is a halmaznak az operandusok. A kétargumentumos m6veletet m6velettáblával lehet definiálni. Jelentse például a körplusz m6velet (csak itt és csak most) a mod 3 összeadást és értelmezzük a {0,1,2} háromelem6 halmaz felett. (A „közönséges” összeadás eredményét 3-mal kell osztani –ha nagyobb 3-nál- és a m6velet eredménye ennek az osztásnak a maradéka lesz.) A m6velettábla ekkor a következ5: & 0 1 2 0 0 1 2 1 1 2 0 2 2 0 1 Az itt példaként definiált körplusz m6velet történetesen kommutatív s ilyenkor a m6velettábla a f5átlójára szimmetrikus. Ne tévesszük össze a halmaz elemei felett értelmezett m veletet a halmaz
elemeinek viszonyát kifejez5 relációval. A reláció –ha egyáltalán értelmezhet5 a halmazon- mindíg két elem viszonyát fejezi ki. Pl azt, hogy az egyik elem nagyobb, mint a másik, vagy egyenl5ek egymással, stb. A < és a c ill a > és a e relációk a halmaz elemeit sorba rendezik, az egyenl5ség (= ekvivalencia) reláció pedig diszjunkt részhalmazokba osztja a halmaz elemeit, más szóval particionálja az alaphalmazt, de ezekr5l kés5bb majd még lesz szó. A m velet és a reláció, mint leképezés Zártnak mondunk egy kétargumentumos m9veletet akkor, és csakis akkor, ha a m9velet eredménye is abba a halmazba tartozik, amelyb"l az argumentumait (=operandusait) vettük. Jelöljük ezt az „alaphalmazt” A-val és az elemeit ai-vel ill. aj-vel Egy kétargumentumos m9veletet az A halmazból vett ai és aj elemeken, tehát az (ai, aj) rendezett elempáron hajtunk végre és a zártsági feltétel miatt a m9velet ak eredményének is az A halmaz elemei
közé kell tartoznia. Mindez úgy FileNév: InfotechnikaÚjJegyzet3.doc- 161/184 -Utoljára módosítva: 2001-10-18 A halmaz önmagával alkotott direkt szorzatát a m9velet leképezi magára az A halmazra, azaz is megfogalmazható, hogy az AXA A A zárt m9velet tehát semmi esetre sem mutathat a halmazon kívülre. Azt állítottuk, hogy a reláció egy halmaz elemei közötti viszonyt fejezi ki és éppen ebben különbözik a m9velett"l, mint olyantól. Nos, ez így is van. Mindezek mellett azonban a reláció is értelmezhet" egyfajta leképezésként. Az ai, aj az A halmaz-elemek közötti viszony (=reláció) is értelmezhet" A X A szorzathalmazra, azaz az (ai, aj) rendezett elempárokra, de e két elem viszonyát valami olyasmi fejezi ki, ami az A alaphalmaznak nem eleme. ai lehet nagyobb vagy kisebb, mint aj , vagy éppenséggel lehetnek egyenl"k (ekvivalensek) is. Az A halmaznak azonban nem elemei a „nagyobb”, a „kisebb”, vagy az
„egyenl"” jelek91 és általában egy elempár viszonyát kifejez" jelek, megnevezések. A relációk esetében tehát a szorzathalmaz olyan AXA leképezéséról van szó, amely tipikusan az mutat. A alaphalmazon kívülre Az algebrai struktúra és a m veletek Egy halmazt és a felette értelmezett m9veletet, vagy m9veleteket együtt gyüjt"néven algebrai struktúrának nevezzük. Ugyanazon halmaz felett egy, vagy több m9velet is definiálható. Az alábbiakban el"ször egym9veletes, majd az F3 pontbankétm9veletes algebrai struktúrákról lesz szó. Ha egy halmaz felett két m9veletet definiálunk, akkor az egyiket szokás additív mGveletnek, a másikat pedig multiplikatív mGveletnek nevezni, elvileg teljesen függetlenül attól, hogy bármi közük lenne akár az összeadáshoz (=addició), akár a szorzáshoz (=multiplikáció). 91 Természetesen ezeken kív6l még más, sokféle reláció is létezik. FileNév: InfotechnikaÚjJegyzet3.doc-
162/184 -Utoljára módosítva: 2001-10-18 Ezeknek az elnevezéseknek csak annyi a hasznuk, hogy a szövegben a m9veleti jel nélkül, a m9velet elnevezésével tudunk hivatkozni a két m9velet közül az egyikre ill. a másikra92 Ha egy algebrai struktúra felett csak egy m9velet van értelmezve, s az adott egym9veletes struktúrát történetesen csoportnak nevezzük93, akkor a m9veletet az adott csoport un. csoport-mGveletének nevezzük94, és jóllehet semmi okunk rá, hogy akár additívnak nevezzük, akár pedig multiplikatívnak, mégis alkalmazni szokták rá az „additív” jelz"t s ezért szokás additív csoportról beszélni. A m velethez tartozó egységelem és zérus elem. Mindig az éppen vizsgált m9velethez (és nem az algebrai struktúrához) tartozó egységelemet és zérus elemet szokás definiálni. Válasszuk itt és most m9veleti jelnek a körbe írt pontot: : a m9veletet körpont m9veletnek. AxA és nevezzük A Ha (az egyébként
tetsz"leges, de zárt) körpont m9veletre igaz, hogy az A alaphalmaz bármely a A,e A és z a e = e a = a minden a tartozó egységelem. és ha a z=z a = z minden a tartozó zérus-elem. A elemére G. Ez az e elem a m9velethez G. Ez a z elem a m9velethez FP 1 Példa A hétköznapi aritmetikai gyakorlatból ismert szorzás m9veletének egységeleme az 1 és zérus-eleme a 0, mert a.0 =0a = 0 és a1 =1a = a (v.ö a definicióval!) Az ugyancsak a hétköznapi aritmetikából jól ismert összeadási m9velet egységeleme azonban a 0, mert a+0 =0+a = a, a zérus elem pedig nem létezik. 92 Látni fogjuk kés5bb, hogy ezek az elnevezések mégis csak jellemz5ek lesznek az adott struktúráknál definiált m6veletekre, mert praktikus okokból éppen valamiféle speciális összeadás ill. szorzás jelleg6 m6veleteket fogunk bevezetni Ez azonban csakis „úri kedvünkt5l” függ és nem valamiféle elmélet következménye. 93 Alább definiáljuk majd az algebrai csoport
fogalmát. 94 Ha csak egy m6veletet definiálunk a halmaz felett, akkor semmi okunk sincs arra, hogy azt akár additívnak, akár multiplikatívnak nevezzük, mivel nincs másik m6velet, amelyt5l meg kellene különböztetnünk. Egym6veletes struktúráról van szó, és kész FileNév: InfotechnikaÚjJegyzet3.doc- 163/184 -Utoljára módosítva: 2001-10-18 Az inverz elem. Ha minden a A hez létezik egy (és csakis egy) olyan a-1 elem A- ban, amelyre igaz, hogy a a-1 = a-1 a = e, akkor az a-1 az a elemnek a körpont m9velet szerinti inverz eleme. Jegyezzük meg! Az egységelem, a zérus-elem és az inverz elem mindíg valamilyen m9velttel kapcsolatban értelmezhet" és definiálható és csakis arra a m9veletre érvényes. Semmi szokatlan nincs abban, hogy ha egy algebrai struktúrában több m9veletet definiálunk, akkor mindegyik m9veltre más-más egységelem és zérus elem határozható meg. A m veletek (kitüntetett) tulajdonságai. Egy a fentiekben részletesen
körülírt, A halmaz feletti m9veletnek számos tulajdonsága lehet, de ezek között van néhány (kitüntetett) tulajdonság, amelyeknek külön nevet is adtak. Ilyen volt pl a zártság, ami azt jelentette, hogy egy A halmaz felett értelmezett m9velet eredménye is az A halmaz eleme. Kommutatív a m9velet, ha az argumentumai felcserélése esetén is ugyanaz a m9velet eredménye. Képletben: Ha a,b,c A és a b=b a=c akkor, és csakis akkor a m9velet kommutatív. A kommutativitás egyébként a m9velettáblából is kit9nik, mert ekkor a (bináris) m9velettábla a f"átlójára szimmetrikus. Ez fordítva is igaz: Ha egy m9velettábla nem szimmetrikus a f"átlójára nézve, akkor az azzal definiált m9velet nem kommutatív A kommutativitás fogalma kett"nél több argumentumos m9veletekre is kiterjeszthet". FP 2 Példa: A „hétköznapi” aritmetikai m9veletek közül mind az összeadás, mind a szorzás kommutatív, mert az összeadandók ill. a
tényez"k sorrendje nem befolyásolja a m9velet eredményét. A mátrixok szorzása azonban tipikusan nem kommutatív m9velet, mert lehet, hogy a szorzat tényez"-mátrixainak felcserélése esetén a szorzás nem is végezhet" el, de ha mégis (pl. azonos rangú négyzetes mátrixok esetén), akkor az eredmény függhet a tényez"k sorrendjét"l. FileNév: InfotechnikaÚjJegyzet3.doc- 164/184 -Utoljára módosítva: 2001-10-18 Asszociatív a m9velet, ha kett"nél több argumentum (=operandus) esetén független az eredménye attól, hogy hogyan csoportosítjuk az argumentumokat. (Ti azok sorrendjének megváltoztatása nélkül) Képlettel kifejezve: A (a m9velet asszociatív, ha minden a,b,c b) c=a (b A-ra c) azaz a végeredmény független attól, hogy mely elempárra (vagy párokra) végezzük el el"ször a m9veletet. A disztributivitás két m9velet egymáshoz képest fennálló viszonyára értelmezhet". Vezessünk be itt egy
újabb m9velet-jelölést, nevezetesen az un körplusz m9veletet: & (és egyel"re egyáltalán nem is érdekes, hogy ezt milyen m9velettábla definiálja. A lényeg csak az, hogy különbözik a Disztributív a hogy m9velett"l.) m9velet a & m9velet felett, ha minden a, b, c a (b & c) = (a b) & (a A-ra igaz, c) FP 3 Példa: A mindennapok aritmetikájában a szorzás disztributív az összeadás felett. Disztributív a & m9velet a igaz, hogy a & (b m9velet felett, ha minden a, b, c c) = (a & b) A-ra (a & c) Ez viszont a mindennapok aritmetikai m9veleteinél már nem igaz. Érdekes azonban megjegyezni, hogy a Boole algebrában bármelyik duális m9veletpárra igaz, hogy az egyik m9velet disztributív a másik felett. (Éppen emiatt érvényesek az un de Morgan tételek) Megjegyzések: A felsorolt m9veleti tulajdonságok nem zárják ki egymást, tehát szimultán is értelmezhet"k. Ahhoz, hogy egy kétargumentumos m9veletet
(értelmesen) értelmezni tudjunk egy halmaz felett, a halmaznak legalább 2 eleme kell, hogy legyen. Ez azonban nem elvi követelmény, tehát általános esetben vizsgálni lehet és kell is az egyelem9 halmazokon értelmezett kétargumentumos (= bináris) m9veleteket is. FileNév: InfotechnikaÚjJegyzet3.doc- 165/184 -Utoljára módosítva: 2001-10-18 F2 Egym veletes algebrai struktúrák. FD 1 definició: Az algebrai struktúra Egy nem üres halmazt és a felette értelmezett egy, vagy több m9veletet együttesen algebrai struktúrának nevezzük.95 Ebb"l az alap-definicióból több más definició ill. fogalom is származtatható A származtatás során az alaphalmaz változatlan, és aszerint nevezzük el az újabb és újabb struktúrákat, hogy milyen tulajdonságokat teszünk kötelez"vé a halmaz felett értelmezett m9veletre (vagy m9veletekre) nézve. FD 2 definició: A félcsoport96 Amikor egy alaphalmazt és a felette értelmezett egy kétargumentumos
m9veletet tekintjük, akkor az így kapott algebrai struktúrát félcsoportnak nevezzük akkor, és csak akkor ha a m9velet a következ" tulajdonságokkal rendelkezik: zárt asszociatív (más kikötés nincs.) Magát a m9veletet akármilyen, tetsz"legesen választott m9veleti jellel jelölhetjük. Kétm9veletes struktúrára is értelmezhetjük ezt, és az alábbi származtatott fogalmakat a következ"képp: Legyen a kétm9veletes algebrai struktúra egyik m9velete a körplusz (más megnevezéssel: additív) m9velet, a másik m9velete pedig a körpont (más megnevezéssel: multiplikatív) m9velet. Teljesüljön a zártság mindkét m9veletre, de az asszociativitás, mondjuk, csak az additív m9veletre. Ekkor azt mondhatjuk, hogy az adott struktúra az additív m9veletére nézve félcsoport, a multiplikatív m9veletére nézve viszon nem az. Az alaphalmaz és (itt) az additív m9velet változatlanul algebrai struktúra, de emellett eleget tesz egy sz9kebb fogalomnak
is, azaz egyúttal félcsoport is.97 Figyeljünk arra, hogy a félcsoport jelleget csak az adott esetben figyelembe vett m9velet tulajdonságai határozzák meg, és (iit) egyszerre 95 A nem üres halmaz elvileg egyetlen elemet is tartalmazhat és egyetlen elemre is definiálható kétargumentumos m6velet. (Persze a két operandus ekkor azonos és az eredmény is a halmaz egyetlen eleme, ha a m6velet zárt.) Ennek a triviális esetnek azonban az alábbiakban semmilyen gyakorlati értelme nincs, ezért csakis olyan halmazokkal foglalkozunk, amelyeknek legalább két elemük van. 96 Angol terminológiával: semigroup. 97 Egy mindennapi példával élve attól, hogy valaki ember, még lehet favágó is. FileNév: InfotechnikaÚjJegyzet3.doc- 166/184 -Utoljára módosítva: 2001-10-18 csak egy m9veletet kell figyelembe venni akkor is, ha az alaphalmaz felett több m9velet van értelmezve FD 3 definició: A csoport98 Amikor egy alaphalmazt és a felette értelmezett egy
kétargumentumos m9veletet tekintjük, akkor az így kapott algebrai struktúrát csoportnak nevezzük de csak akkor, és csakis akkor ha a csoportm9velet a következ" tulajdonságokkal rendelkezik: zárt asszociatív van egységeleme és definiált benne az inverz elem is.99 Magát a m9veletet akármilyen, tetsz"legesen választott m9veleti jellel jelölhetjük. A csoportm9veletre több megkötés érvényes, mint a félcsoport esetén. A zártság minden algebrai struktúrára el"írás, az asszociativitás (a zártság megtartása mellett) csak a félcsoportra, és az inverz elem létezése (az el"bbi feltételek megtartása mellett) csak a csoportra. Tulajdonképpen nem kell az egységelem létezését külön feltételnek tekinteni, mert az inverz elem fogalmában már benne van. Az inverz elem ugyanis csakis az egységelem segítségével értelmezhet". (Ld a korábbi „inverz elem” definiciót.) Az inverz elem megléte azt is jelenti, hogy a
mGveletnek létezik az inverze is. A csoportm9velet esetén is értelemszerüen igaz az, amit a félcsoportnál már elmondtunk. Nevezetesen el"fordulhat, hogy egy kétm9veletes algebrai struktúra az egyik (mondjuk az additív) m9veletére nézve csoport, a másik (multiplikatív) m9veletére nézve padig félcsoport. FD 4 definició: Az Ábel csoport100 Ha a csoportm9velet kommutatív, akkor a csoportot Ábel csoportnak nevezzük. (Szokás a kommutatív csoport megnevezés is) 98 Angol terminológiával a halmaz: set, a csoport pedig: group, ezért az utóbbit G-vel szokták jelölni. Ezt a jelölést mi is megtartjuk és alkalmazzuk 99 Az inverz elem definiciója csakis úgy értelmezhet5, ha létezik a m6veletre vonatkozó egységelem. Az inverz és az egységelem tehát kölcsönösen feltételezik egymást 100 Az angol terminológia szerint: Abelian group FileNév: InfotechnikaÚjJegyzet3.doc- 167/184 -Utoljára módosítva: 2001-10-18 Az Ábel csoportok esetében
a csoportm9veletre szokásos a & (körplusz) m9veleti jelet alkalmazni és magát a csoportot additiv csoportnak nevezni.101 A fenti definiciók családfáját egy összefoglaló ábrán is szemléltetethetjük. Nem üres Halmaz M velet Az egyetlen kikötés a zártság Egym veletes algebrai struktúra Kétm veletes algebrai struktúra Legyen a m velet asszociatív (is) Félcsoport (Semigroup) Legyen a m veletnek inverz eleme (is) 101 M velet Az egyetlen kikötés a zártság Minden újabb származtatott fogalom "megörökli" az el dje m veletére vonatkozó kikötéseket plusz még valami újabb kikötés járul az el z ekhez Az inverz elem meglétéb l következik, hogy a m velethez tartozó egység-elem is létezik Tekintettel arra, hogy a csoportm6veletre nincs el5írva a m6velet kommutativitása, de esetenként a m6velet kommutatív is lehet, ezért –ha a m6velet kommutatív- jogos a „kommutatív csoport” megnevezés. A kommutatív m6veletes
csoportoknak külön Csoport Ábel nevük (Group) is van: Ábel csoport A „kommutatív jelz5nek tehát van releváns csoport jelentése. Az Ábel csoportot G ( )néha „additív csoportnak” is nevezik. Jóllehet az összeadás valóban kommutatív m6velet, de nem minden kommutatív m6velet összeadás, tehát tulajdonképpen logikátlan a kommutatív (Ábel) csoportot additív csoportnak nevezni. Ha a m velet ráadásul még kommutatív is FileNév: InfotechnikaÚjJegyzet3.doc- 168/184 -Utoljára módosítva: 2001-10-18 Példák a csoportokra FP 4 Példa Az egészszámok végtelen halmaza felett értelmezett összeadás m9velete az egészszámok halmazával együtt kommutatív csoportot (tehát Ábel csoportot) alkot. (Mert az összeadás kommutatív m9velet) Ügyeljünk arra, hogy nem a természetes számokról van szó, mert kell, hogy minden pozitív egészszámnak létezzen az inverze is, s ez pedig a vele azonos abszolut érték9 negatív egészszám. A negatív számok
viszont nem tartoznak a természetes számok halmazába. Az itt hivatkozott negatív egészek a csoportm9veletre vonatkozó inverzek. Ha a csoportm9veletet additív m9veletnek nevezzük (ami itt teljes mértékben indokolt, hoszen az összeadásról van szó) akkor a negatív egészek az additív inverzek. Mivel az inverz elem létezik, az összeadási m9velet inverze is létezik. Ezt nevezzük kivonásnak. Az adott esetben létezik a csoportm9veletre vonatkozó egységelem is a halmazban. Az összeadás egységeleme a 0, mert bármely a igaz, a + 0 = 0 + a = a (ami éppen az egységelem definiciója) A-ra hogy Az adott esetben az egységelem érdekes reprezentációja a számegyenesen kijelölt 0 pont, ami bármely a szám esetén a hozzátartozó a-1 inverz elem tükrözési pontja. Az összeadás m9velete esetében viszont nincs egyetlen zérus elem. Azaz nincs olyan kitüntetett egész szám, amelyet bármely egész számhoz hozzáadva ezt a kitüntetett egész számot kapnánk
eredményül. FP 5 Példa A mindennapi értelemben vett szorzás nem lehetne az egészszámok halmaza feletti csoportm9velet, mert a szorzás inverzei racionális törtek lennének, amelyek nem tartoznak az egészszámok körébe. Ha azonban a pozitív racionális számok végtelen halmaza felett értelmezzük a szorzás m9veletét, akkor szintén Ábel csoportot kapunk, amely Zárt Asszociatív, mert több tényez" esetén mindegy, hogy milyen párosításban szorozzuk össze a tényez"ket. A pozitív racionális számok körében minden a számnak létezik az inverze, azaz 1/a is. Az inverz létezésének a következménye, hogy létezik az inverz m9velet, vagyis az osztás is és annak az eredménye is a pozitív racionális számok körébe tartozik. FileNév: InfotechnikaÚjJegyzet3.doc- 169/184 -Utoljára módosítva: 2001-10-18 Mivel az inverz elem létezik, léteznie kell az egységelemnek is, amelyre igaz, hogy azzal (mármint az egységelemmel) bármely a
számot megszorozva magát az a számot kapjuk eredményül. A szorzás egységeleme az 1 A racionális számok felett értelmezett szorzás esetében nem értelmezhet" a 0, met annak nincs inverze, mivel 0-val nem lehet osztani. Figyeljünk fel arra, hogy az algebrai struktúrák eddig leírt családfájában a zérus elem létezése sehol sem volt kikötve. Mivel a szorzás kommutatív így Ábel csoportról van szó. A pozitív racionális számok halmaza és a felette értelmezett szorzás tehát olyan algebrai struktúrát alkot, amely csoport, s"t: Ábel csoport. FP 6 Példa Az nxn-es, reális elemekb"l álló, négyzetes mátrixok halmaza a mátrix összeadásra, mint csoportm9vetre nézve kommutatív csoportot, azaz Ábel csoportot alkot. Ha nem négyzetes mátrixok szorzásáról lenne szó, akkor az nxk elem9 mátrix ugyan szorozható lenne a kxn elem9 mátrixszal (k ( n), de több, nem négyzetes mátrix esetén már egyáltalán nem biztos, hogy a
tényez" mátrixok minden kombinációjában végrehajtható lenne a szorzás, és még két tényez" esetén sem, ha azokat felcserélnénk. A m9velet így sem nem asszociatív, sem nem kommutatív. Azonos rangú (nxn-es) mátrixok esetén –és csakis ebben az esetbenmind az asszociativitás, mind a kommutativitás feltétele teljesül. FD 5 definició: Egy csoport rendje Definició szerint egy csoport rendje azonos annak kardinalitásával, vagyis az alaphalmaz számosságával102. Meg kell azonban jegyezni, hogy egy csoport kardinalitása egymagában nem elegend" ahhoz, hogy magát a csoportot specifikálja, hacsak el"re ki nem kötöttük, hogy mi az a m9velet, amelyet figyelembe veszünk.103 A következ"kben els"sorban véges csoportokkal foglalkozunk. Ezek elmélete igen gazdag és igen érdekes. Osztályozásuk egyik módja az, hogy feloszthatók-e egyáltalán kisebb csoportokra és ha igen, akkor hogyan. A legutóbbi id"kig nem
felosztható csoportok egyike volt az 102 Egy A halmaz számosságának (azaz kardinalitásának) jelölésére szokás a #A jelölést használni. 103 Mivel bármelyik algebrai struktúrát annak alaphalmazán kívül az alaphalmaz felett értelmezett egy, vagy több m6velet is meghatározza, persze, hogy nem elegend5 a specifikációhoz egyedül az alaphalmaz számossága, hanem a m6veletr5l is tudnunk kell. FileNév: InfotechnikaÚjJegyzet3.doc- 170/184 -Utoljára módosítva: 2001-10-18 un. „Szörnyeteg” vagy más néven a „Barátságos óriás”, amely 8 x 1053 elemet tartalmazott. Ezt 1981-ben sikerült RLGriess-nek feldarabolni Ez is és sok más érdekes csoport közvetlen kapcsolatban van a hírközlés elmélettel, a kódoláselmélettel és a titkosítással, de itt a következ"kben csak a leghétköznapibb csoportokkal foglalkozunk. FD 6 definició: A kongruencia reláció Miel"tt a véges csoportokkal foglalkozni kezdenénk, vizsgáljuk meg az un.
kongruencia relációt Mivel nem m9veletr"l, hanem relációról van szó, az alaphalmaz egy elempárjának a viszonyát fejezi ki. Az alaphalmaz most az egészszámok halmaza, beleértve mind a pozitív, mind a negatív egészszámokat és a 0-át is. Ez a számhalmaz megszámlálhatóan végtelen. E végtelen számhalmaz ugyancsak végtelen részhalmazokra osztható a maradékos osztás segítségével. Jelöljük az osztót m-mel. Definició szerint az a és a b egészszámok az m osztóra nézve kongruensek, ha mindegyiket külön-külön elosztva m-mel ugyanazt a maradékot kapjuk. Ezt a következ"képp jelöljük: a ) b mod m104 Így pl. az m=5 osztóra nézve 11 és 26 kongruensek 11 ) 26 mod 5 Érdemes megjegyezni, hogy a kongruencia reláció ekvivalencia tipusú reláció.105 104 Olvasd: a kongruens b-vel az m modulusra nézve. 105 Ezért az ) jel helyett alkalmazhatjuk (és sokszor alkalmazzák is) az = jelet. FileNév: InfotechnikaÚjJegyzet3.doc- 171/184
-Utoljára módosítva: 2001-10-18 Álljunk meg egy szóra az ekvivalencia (tipusú) reláció kedvéért! Ekvivalencia tipusú relációról beszélünk akkor, ha a reláció rendelkezik a következ" három tulajdonsággal: 1. Reflexív, azaz bármi ekvivalens saját magával: a)a 2. Szimmetrikus, azaz ha a ekvivalens b-vel, akkor b is ekvivalens a-val: a)b b)a 3. Tranzitív, azaz ha a ekvivalens b-vel b viszont ekvivalens c-vel, akkor szükségképpen igaz, hogy a ekvivalens c-vel: a)b* b)c a)c Ha e három tulajdonság közül bármelyik hiányzik, akkor a reláció nem ekvivalencia tipusú. Ilyen ekvivalencia tipusú reláció sok van. Ilyen pl a síkháromszögek hasonlósága és ilyen az itt tárgyalt kongruencia reláció is. Ellenpéldaként említjük a „kisebb” ( >) vagy a „nagyobb” ( <) relációkat, amelyek esetén az els" két feltétel nem teljesül s ezért nem is ekvivalencia tipusúak. Az ekvivalencia relációnak többek között érdekes
tulajdonsága, hogy egy S halmaz elempárjaira alkalmazva az ekvivalencia relációt, az S halmazt diszjunkt részhalmazokra osztja fel (=particionálja). Err"l a particionálásról kés"bb, a 178 oldalon szólunk majd egy tétel kapcsán is. A kongruencia reláció un. maradékosztályokba csoportosítja az egészszámokat Könnyen belátható, hogy az m osztóval maradékos osztásokat végezve az egészszámokon csak 0, 1, . .m-1 maradékokat kaphatunk106 Ezeket maradékosztályoknak nevezzük és összesen m darab van bel"lük. Az egészszámokat a következ" megfontolás alapján sorolhatjuk be maradékosztályokba: Írjuk fel bármelyik (pozitív vagy negatív) a egészszámot a következ" alakban: a = x.m + r ahol a, x ,m és r mind egészszámok. x pedig a maradékos osztás kvóciense (és értékével nem is számolunk a továbbiakban), m a megadott modulus (=osztó) és r a maradék. Ezt az r maradékot – többek közöttarra használjuk, hogy
vele „megcimkézzük” a maradékosztályt, amelybe az a egészszám tartozik. Ez a „cimke” történetesen 106 Ha történetesen negatív számot osztunk pozitív osztóval, akkor mind a hányados, mind a maradék negatív lesz. A maradékosztály-aritmetikában azonban ilyenkor a maradék abszolut értéke határozza meg, hogy az osztandó melyik maradékosztályba tartozik.(Ld alább!) FileNév: InfotechnikaÚjJegyzet3.doc- 172/184 -Utoljára módosítva: 2001-10-18 kongruens a vele megcimkézett maradékosztály valamennyi elemével, tehát az un. modulo m m9veletekben helyettesítheti is a hozzátartozó maradékosztály bármelyik elemét. Negatív a szám és pozitív m osztó esetén x is negatív lesz, de ekkor is pozitív maradékot kaphatunk a következ" értelmezéssel: r = a – x.m = -| a | + | x |m = | x |m - | a | Pozitív a egészszám esetén tehát olyan x-et kell találnunk, amellyel az m modulust megszorozva az a-xm=r különbség kisebb az m
modulusnál (vagy, legfeljebb, vele egyenl"). Negatív a egészszám esetén olyan (pozitív) x számot kell találni, amellyel az m modulust megszorozva az x.m-|a| = r különbség lesz kisebb, mint az m modulus (vagy, legfeljebb, vele egyenl"). FP 7 Példa Az m = 5 modulus maradékosztályaiba sorolható egésszámok r A megcimkézett maradékosztályokhoz tartozó (végtelen) számhalmazok 0 {., -20, -15, -10, --5, 0, 5, 10, 15, 20, } 1 {., -19, -14, -9, -4, 1, 6, 11, 16, 21, } 2 {., -18, -13, -8, -3, 2, 7, 12, 17, } 3 {., -17, -12, -7, -2, 3, 8, 13, 18, 24, } 4 {., -16, -11, -6, -1, 4, 9, 13, 19, 24, } A maradék osztály cimkéje Látható, hogy az m = 5 modulus esetén összesen öt maradékosztály van, és mindegyikbe végtelen sok egészszám tartozik. A maradékosztály „cimkéje” úgy is értelmezhet", hogy az a legkisebb nemnegatív szám az adott maradékosztályba tartozó végtelen sok egészszám közül. FP 8 Példa Az m = 2 modulus
két maradékosztályba sorolja az egészszámokat. Az egyik (ti. a 0 maradékosztály) a páros számok osztálya, a másik pedig (ti. az 1 maradékosztály) a páratlan számok osztálya FileNév: InfotechnikaÚjJegyzet3.doc- 173/184 -Utoljára módosítva: 2001-10-18 FD 7 definició: A modulo m összeadás A modulo m összeadás olyan, véges csoport feletti m9velet, amely zárt, tehát az eredménye is a csoport eleme. Asszociatív és kommutatív m9velet, tehát egy G halmazzal együtt kommutatív (=Ábel) csoportot alkot Szokás rá úgy hivatkozni, hogy additív (csoport) m&velet (Lásd még alább az FT1 tételt is!) Ugyanúgy m9velettáblával (is) definiálható, ahogyan bármelyik algebrai m9velet. Az egészszámok mindennapi, aritmetikai összeadásától csak abban különbözik, hogy az így számított eredménynek a m modulussal számolt maradéka lesz a mod m összeadás eredménye. Mint az el"z"ekben láttuk, negatív egészszámokra is
értelmezhet". FP 9 Példa Jelölje (itt) a mod 7 összeadást a & szimbólum. Szerkesszük meg a m9velettábláját, ha a mod 7 összeadást a halmaz felett értelmezzük. G = {0, 1, 2, 3, 4, 5, 6,} & 0 1 2 3 4 5 6 0 0 1 2 3 4 5 6 1 1 2 3 4 5 6 0 2 2 3 4 5 6 0 1 3 3 4 5 6 0 1 2 4 4 5 6 0 1 2 3 5 5 6 0 1 2 3 4 6 6 0 1 2 3 4 5 A m9velettábla valamennyi bejegyzése eleme a megadott G halmaznak, ezért a m9velet zárt. A m9velettábla szimmetrikus a f"átlójára, tehát a m9velet kommutatív is. A mod 7 összeadási m9veletnek van egységeleme és a G halmaz minden elemének létezik az inverze is, méghozzá a G halmazon belül. Melyik az az e elem, amelyre igaz, hogy bármely a a&e=e&a=a? G esetén Nos, nem nehéz kitalálni, hogy az adott esetben ez a 0, amely –mint illik is nekieleme a G halmaznak. FileNév: InfotechnikaÚjJegyzet3.doc- 174/184 -Utoljára módosítva: 2001-10-18 FT 1 Tétel a mod m összeadásra A q-1 rend9 S =
{0, 1, 2, 3, . ,q-1} halmaz és a felette értelmezett modulo q összeadási m9velet ( & ) kommutatív (azaz Ábel) csoportot alkotnak. A zártság mindíg teljesül, ha az S halmaznak eleme a 0 is. Az additív m9veletnek ez az egységeleme és ha létezik egységelem, akkor minden elemnek van inverze is. A modulo m aritmetika óriási el"nye, hogy az egészszámok végtelen halmazát egy véges, m-elem9 halmazra képezi le. Látni fogjuk majd pl a nyiltkulcsú titkosításnál, hogy valamennyi gyakorlatban alkalmazható módszernél el"fordul a maradékosztály aritmetika. Igaz, hogy a gyakorlatban sohasem dolgozunk végtelen nagy számokkal, de pl. a nyíltkulcsú titkosításnál bizony el"fordulnak akár 10200 nagyságrend9 számok is, amelyek alkalmazásakor csakis úgy tudjuk elkerülni a túlcsordulást, ha a nagyon nagy számokat leképezzük egy jóval kisebb, maradákosztály-halmazra úgy, hogy maradékosztály-aritmetikát használunk. Ezt a modulo m
aritmetika néhány olyan sajátsága teszi lehet"vé, amelyeket a következ" tételekben fogalmazunk meg. FT 2 Tétel a maradékosztályokra A {0, 1, 2, 3, . , m-1} kongruencia-osztályok a modulo m egészösszeadás alatt egy m-ed rend9 kommutatív csoportot alkotnak minden pozitív egész m esetén. Mivel egy maradékosztály bármely két eleme közötti modulo m különbség 0 ezért elegend", ha a fenti tétellel kapcsolatban csak a cimkék alkotta G = {0, 1, 2, 3, . , m-1} Csoportra fordítjuk a figyelmünket, mert az e csoport elemei közötti relációk érvényesek a kongruencia-osztályok közötti relációkra is. Mivel az egészszámok összeadása asszociatív és kommutatív, ezért a modulo m összeadás is asszociatív és kommutatív. Az egységeleme ugyanúgy 0, ahogyan azt már az aritmetikai összeadáskor megmutattuk. A G csoporton belül az inverz elem is létezik, mert egy G-beli x szám additív inverze az m-x szám lesz. FileNév:
InfotechnikaÚjJegyzet3.doc- 175/184 -Utoljára módosítva: 2001-10-18 FP 10 Példa: Legyen m=5. Akkor G = {0, 1, 2, 3, 4} Az additív m9velet most a modulo 5 összeadás, amit jelöljünk itt & (körplusz)-szal. Nézzük meg, hogy mi lesz x=2 inverze! A mondottak szerint ez x-1 =5-2 mod5 = 3 Eszerint x & x-1 = 2 & 3 = 0, ami éppen az egységelem, tehát a mod5 összeadási m9veletre nézve a 2 inverze a 3. A modm m9velet tulajdonságaiból következik, hogy a m9velet eredménye nem lehet nagyobb m-1-nél, tehát a zártság feltétele is biztosított. FP 11 Példa: A negyedrend9 csoport alatti modulo 4 összeadás m9velettáblája: 0 1 2 3 0 0 1 2 3 1 1 2 3 0 2 2 3 0 1 3 3 0 1 2 A f"átlóra szimmetrikus, tehát biztosan kommutatív m9velet. Az Olvasó kisérelje meg felírni, hogy az adott esetben mi az alaphalmaz, igaz-e, hogy a struktúra Ábel csoport, igaz-e, hogy van olyan elem, amelyik sajátmaga inverze107, és milyen –22 és +22 közé es" számok
tartoznak a különböz" cimkéj9 maradékosztályokba. 107 Esetenként kellemetlenséget okoz, ha egy csoportban van olyan szám, ami sajátmaga inverze. Ez egészen biztosan elkerülhet5, ha a csoport rendje prímszám Erre még hamarosan visszatérünk. Mutassa meg az Olvasó, hogy e „kellemetlenség” elkerülésére nem lenne elegend5 azt kikötni, hogy a csoport rendje legyen 2, vagy bármely páratlan szám, viszont elegend5 lenne azt kikötni, hogy a kardinalitás ne legyen négyzetszám. FileNév: InfotechnikaÚjJegyzet3.doc- 176/184 -Utoljára módosítva: 2001-10-18 A modulo m összeadás tulajdonságaiból következ azonosságok Ha a ) b mod m, akkor a & c ) b & c mod m ac ) bc mod m Ha még c ) d mod m is fennáll, akkor a & c ) b & d mod m ac ) bd mod m FD 8 definició: A modulo m szorzás A modulo m szorzás m9velete nagyon hasonlít a modulo m összeadás m9veletéhez. Egy a és egy b szám mod m szorzásakor az egyik lehetséges
eljárás az, ha az a és a b számokat aritmetikai szorzással összeszorozva a c eredménynek képezzük a mod m maradékosztályát. Mivel az aritmetikai szorzás m9velete disztributív az összeadás felett, írhatjuk a következ"t: a = mx + r1; b = my + r2 myr1 + r1.r2 a.b = (mx + r1)( my + r2) = m2xy + mxr2 + A jobboldal négy tagjából az els" három egészen biztosan maradék nélkül osztható az m modulussal, tehát ha az eredménynek a modulo m maradékosztályára vagyunk kiváncsiak, akkor az a és a b tényez"k összeszorzása helyett elegend" csak az r1 és r2 maradékosztályaik szorzatának mod m maradékosztályát kiszámítani. FP 12 Példa: Végezzük el a=8 és b=7 mod 5 szorzását. 1. 8 x 7 = 56 és ennek mod 5 maradékosztálya 1, mert 56 = 11x5+1 2. 8 mod 5 = 3; 7 mod 5 = 2; 3 x 2 = 6 és 6 mod 5 = 1 FP 13 Példa: Az Olvasó szerkesszen példát olyan esetre, amikor 1. Egy negatív és egy pozitív számot kell összeszorozni, tehát az
eredmény negatív, (de a maradékosztálynak ekkor is pozitívnak kell lennie). 2. Két negatív számot szorzunk össze FileNév: InfotechnikaÚjJegyzet3.doc- 177/184 -Utoljára módosítva: 2001-10-18 1. Mindkét esetre érdemes olyan általános szabályt felírni az abszolut értékekkel, mint amilyent a negatív eredményt adó összeadásnál felírtunk. 2. Alkalmazza az Olvasó a maradékok szorzásának elvét a mod m hatványozásra. (Nagyon nagy hatványok esetén a maradék hatványa is okozhat túlcsordulást, hacsak le nem bontjuk az nedik hatványra emelést n darab, ismételt mod m szorzásra. A modulo m összeadás és szorzás fentiekben mondott hasonlósága ellenére is van köztük nagyon lényeges különbség. A modulo m szorzás m&velete tetsz leges m modulus esetén nem alkalmas arra, hogy az egészszámok halmaza felett véges csoportot alkosson. FP 14 Példa: Vizsgáljuk meg a következ" hételem9 halmazból és a modulo 8 egészszámú
szorzásból ( ), mint multiplikatív m9veletb"l álló algebrai struktúrát. A halmaz: A = {1, 2, 3, 4, 5, 6, 7,} A 2 is és a 4 is eleme ennek a halmaznak. Modulo 8 szorzatuk: 2 4 { 0 mod 8 Mivel a 0 nem eleme a megadott halmaznak, ezért a m9velet nem zárt az A halmaz felett. Ezért a példa A halmaza és a mod 8 szorzás, mint m9velet nem alkot csoportot. Ha a 0 is a halmaz eleme lenne, akkor sem kapnánk csoportot, mert a 0-nak nincs multiplikatív inverze (mert nem lehet vele osztani). Ez meg azzal függ össze, hogy az adott példában nincs egységelem. FP 15 Példa: Vizsgáljuk meg a következ" hatelem9 halmazból és a modulo 7 egészszámú szorzásból ( ), mint multiplikatív m9veletb"l álló algebrai struktúrát. A halmaz: G = {1, 2, 3, 4, 5, 6,} A 2 is és a 4 is eleme ennek a halmaznak. Modulo 7 szorzatuk: 2 4 { 1 mod 7 Az 1 pedig eleme a halmaznak. Persze ez még nem bizonyíték arra, hogy a mod 7 multiplikatív m9velet valamennyi elempárra
olyan G halmaznak eleme. Mivel nincs túl sok elem, ezért könnyen megszerkeszthetjük az adott G halmaz feletti mod 7 eredményt ad, ami a ( ) multiplikatív m9velet tábláját: FileNév: InfotechnikaÚjJegyzet3.doc- 178/184 -Utoljára módosítva: 2001-10-18 1 2 3 4 5 6 1 1 2 3 4 5 6 2 2 4 6 1 3 5 3 3 6 2 5 1 4 4 4 1 5 2 6 3 5 5 3 1 6 4 2 6 6 5 4 3 2 1 A m9velettáblából látható, hogy a mod 7 szorzási m9velet eredménye mindíg a G halmazban meglév" elem. Ezért a m9velet most zárt, tehát csoportról beszélhetünk. A m9velettábla a f"átlójára szimmetrikus, tehát a m9velet kommutatív is.108 Az adott esetben létezik a multiplikatív mod 7 m9velethez tartozó egységelem (itt éppen 1) és minden halmazbeli elemnek van multiplikatív inverze is, amelyekre igaz, hogy $ a, a-1 G a a-1 X 1 mod 7 Ez pedig mindíg teljesül, ha a modulus prímszám. FT 3 tétel a multiplikatív csoportokra A p-1 rend9 S = {1, 2, 3, . ,p-1} halmaz és a
felette értelmezett modulo p m9velet kommutatív (azaz Ábel) csoportot alkotnak, de kizárólag csak akkor, ha p prímszám. A bizonyítást – jóllehet nem bonyolult itt nem közöljük. FD 9 definició: Egy csoport elemeinek a rendje. Legyen g a G csoport egy eleme és értelmezzük a csoport felett a „.” szorzási m9veletet és a megszokás okán értelmezzük g hatványait a következ"képp: g2 = g.g; g3 = g.gg . Jelölje ord( g ) a csoport g elemének a rendjét.109 ord( g ) az a legkisebb pozitív egészszám, amelyre igaz, hogy 108 A kommutatív csoport pedig Ábel csoport. 109 Az angol terminológia az „order” szót használja az itt (is) használt magyar „rend” szóra. Ebb5l származtatja egy g elem rendjére az ord( g ) jelölést, amit mi is alkalmazunk. FileNév: InfotechnikaÚjJegyzet3.doc- 179/184 -Utoljára módosítva: 2001-10-18 g ord ( g ) = a csoport egységeleme Ha az egységelemre a korábban már használt általános e jelölést
alkalmazzuk, akkor g ord ( g ) = e mod m Ha a mod m-et nem írtuk volna el", akkor az összefüggés els" részéb"l ord ( g ) = log g e lehetne, de teljesülnie kellene még annak is, hogy legyen ez a lehetséges pozitív egészek közül a legkisebb. Az ilyen logaritmust diszkrét logaritmusnak nevezzük és (sokkal) kés"bb, majd az aszimmetrikus kriptorendszerek kapcsán hivatkozunk ilyen, vagy hasonló diszkrét logaritmusokkal operáló rendszerekre.110 FP 16 Példa: Vizsgáljuk meg az FP 15. példában már tárgyalt hatelem9 halmazból és a modulo 7 egészszámú szorzásból ( ), mint multiplikatív m9veletb"l álló algebrai struktúrában a G halmaz elemeinek a rendjét. A halmaz: G = {1, 2, 3, 4, 5, 6,} ; A csoport egységeleme a multiplikatív mod 7 ( ) m9veletre 1. (Ezt az FP 15 példa kapcsán már beláttuk és jegyezzük meg jól, mert alább többször is alkalmazzuk!) Az 1 elem rendje ord (1). Erre igaznak kell lennie, hogy 1ord(1) = 1
mod 7 Nos, ezt az egyenletet kielégíti mind a 0 kitev", mind az 1 kitev"111. Az F9 definició szerint azonban az elem rendje „.az a legkisebb pozitív egészszám.” Eszerint az elem rendje nem lehet 0, csakis 1.112 Tehát ord(1) = 1 Vizsgáljuk meg külön-külön a csoport további elemeit! 110 A diszkrét logaritmusokat nem lehet sorozatokkal kiszámítani, hanem (nagyrészt) próbálgatással kell megkeresni, ami nagy számok esetén igen hosszadalmas folyamat. Az aszimmetrikus kriptográfiában pontosan olyan függvényekre „vadásztak” a gyakorlati módszerek ifejleszt5i, amelyek egyik irányban aránylag könnyen kiszámíthatók, de az inverzük kiszámítása nagyon hosszadalmas. Nos, a diszkrét logaritmusok pontosan ilyenek. 111 és egyáltalában bármilyen egész kitev5, mert 1-nek bármelyik egész hatványa 1 (s5t a tört hatványai is, de itt a legkisebb pozitív egészszámot kell megkeresni. 112 A mod 7 multiplikatív m6velet itt azért nem
„zavar”, mert 1-nek a mod7 maradéka is 1. FileNév: InfotechnikaÚjJegyzet3.doc- 180/184 -Utoljára módosítva: 2001-10-18 A 2 elem rendjét egy kissé bonyolultabb meghatározni. A definicióból következ"en kell, hogy 2ord(2) = 1 mod 7 legyen. Keressünk tehát olyan hatványkitev"t, amely kitev"re emelve 2-t olyan számot kapunk, amelynek mod 7 maradéka 1. Ilyen egészszám a 3, mert 23 = 8 és 8 { 1 mod 7; Tehát ord(2) = 3 Hasonlóképp szükséges, hogy 3ord(3) = 1 mod 7 legyen. Keressünk tehát olyan hatványkitev"t, amely hatványra emelve 3-at olyan számot kapunk, amelynek mod 7 maradéka 1. Ilyen egészszám a 6, mert 36 = 729 és 729 { 1 mod 7, (729-ben pontosan 104-szer van meg a 7 és marad 1. Ráadásul nincsen 6-nál kisebb ilyen pozitív egészszám) Tehát ord(3) = 6 A csoport többi elemének a rendje a következ": 4ord(4) = 1 mod 7 és ord(4) = 3 mert 43 = 48 és 48 { 1 mod 7 5ord(5) = 1 mod 7 és ord(5) = 6 mert 56 = 15625 és
15625 { 1 mod 7 6ord(6) = 1 mod 7 és ord(6) = 2 mert 62 = 36 és 36 { 1 mod 7 Nem kell, hogy a csoport valamennyi tagjának különböz" legyen a rendje de (itt) a mod7 multiplikatív m9veletb"l következik, hogy bármelyik elem rendje csakis 1 és 6 közé eshet. (az intervallum határait is beleértve.) Általánosságban tehát egy G csoport a G elemenek rendje: 1 x ord(a) x (m-1) FD 10 definició: Az alcsoport. Jelölje S a G csoportnak egy alcsoportját. Ha $ a, b S–re igaz, hogy c = a b-1 és c S akkor S alcsoportja G -nek. S akkor alcsoportja G–nek, ha a multiplikatív csoportm9veletre nézve zárt (mármint S ) éstartalmazza a szükséges inverzeket. Minden más csoport tulajdonságot is örököl G – t"l. Ez, persze, azt jelenti, hogy S saját maga is csoport Ez más szóval azt jelenti, hogy A halmazok és részhalmazok viszonyából is mert és értelemszerüen alkalmazott megnevezés szerint S valódi alcsoportja G–nek, ha S , és S ( G.
G FileNév: InfotechnikaÚjJegyzet3.doc- 181/184 -Utoljára módosítva: 2001-10-18 FP 17 Példa: A modulo 9 összeadási m9velet alatti egészszámok csoportjának valódi alcsoportjai a mod 9 m9velet alatti {0,} és a {0, 3, 6} alcsoportok. A modulo 16 összeadási m9velet alatti egészszámok csoportjának valódi alcsoportjai a {0}, a {0, 4, 8, 12}, és a {0, 2, 4, 6, 8, 10, 12, 14} alcsoportok. Érdemes felfigyelni arra, hogy a felsorolt példákban minden alcsoport tartalmazza az additív m9velet egységelemét (azaz a 0-át). Kell is, hogy így legyen, mert mint az inverz elem fogalmának bevezetésekor (Ld. az 163 oldalon), majd a csoport FD 3 definiciójánál láttuk az egységelem és az inverz elempárok kölcsönösen feltételezik egymás exisztenciáját. Mivel az additív csoportm9velet egységeleme a 0, ezért mindegyik alcsoportnak is tartalmaznia kell. Az inverzek létezése nélkül ugyanis nem teljesítené a csoportra el"írt feltételeket. FD 11
definició: Bal- és jobboldali mellékosztályok. Legyen S alcsoportja G-nek a - m9velet alatt. S-nek G-beli baloldali mellékosztálya G-nek egy olyan részhalmaza, amelynek elemei x - S alakúak azaz az itt említett részhalmaz a következ": {x - s | s S } Hasonlóan S-nek G-beli jobboldali mellékosztálya G-nek egy olyan részhalmaza, amelynek elemei S - x alakúak azaz az itt említett részhalmaz a következ": { s - x | s S } Ha a - m9velet kommutatív, akkor a bal- és a jobboldali mellékosztályok azonosak. A továbbiakban az ilyen esetekben egyszerüen csak mellékosztályról szólunk. Az eddig tárgyalt additív és multiplikatív modulo m m9veleteknél két egészszámot kongruensnek (más szóval ekvivalensnek) neveztünk akkor, ha az m modulussal, mint osztóval maradékos osztást végrehajtva rajtuk azonos maradékokat kaptunk. Felírva e két, egymással kongruens szám már korábban bevezetett maradékos alakjait: a = x.m + r; és b = ym + r a N b mod
m azaz az a és b egészszámok csak az x és y szorzókban különböznek (de ezekkel a szorzókkal nem számoltunk, mert a lényeg az m modulus és az r maradék volt). Az a és a b számok különböznek akkor is, ha más-más modulussal adják ugyanazt a maradékot, azaz a = x.m1 + r; és b = xm2 + r; de m1 O m2 aOb FileNév: InfotechnikaÚjJegyzet3.doc- 182/184 -Utoljára módosítva: 2001-10-18 A mellékosztályok bevezetésével ezt a koncepciót tovább általánosítottuk úgy, hogy megengedtük, hogy a modulusok alcsoportok legyenek. Az itt felírt aritmetikai szorzás helyett az általánosításkor bármilyen - csoportm9veletet alkalmazhatunk, a modulus helyett pedig G-nek egy S alcsoportját. Ekkor az x - S m9velet eredménye sem egy csoport-elem, hanem egy alcsoport lesz. Az eddigiekben tárgyalt additív és multiplikatív modulo m m9veletek kommutatívak is voltak, bár a kommutativitás a csoportm9veletekre nézve nem el"írás. Ezért egy nem kommutatív
- csoportm9velet esetén a - b ( b - a és emiatt kell a jobb és a baloldali operandusokat megkülönböztetni. Ez az oka annak is, hogy itt, a mellékosztályok definiciójakor bal- és jobboldali mellékosztályokról beszélünk. FP 18 Példa: Az F 17 példában láttuk, hogy a modulo 9 összeadási m9velet alatti egészszámok csoportjának egyik valódi alcsoportja a mod 9 m9velet alatti S = {0, 3, 6} alcsoport. Képezzük ennek egy mellékosztályát úgy, hogy az alcsoport elemeihez rendre mod 9 hozzáadunk 1-et: Tehát minden s S–hez 1-et hozzáadva S1 = {1, 4, 7} Képezzünk most egy másik mellékosztályt! Tehát minden s S–hez 2-t hozzáadva S2 = {2, 5, 8} Ha 3-at adnánk hozzá (mod 9) az eleméhez, akkor az kapnánk vissza. S = {0, 3, 6} alcsoport minden S = {3, 6, 0} alcsoportot, vagyis saját magát S–nek két mellékosztálya van (S1 és S2) és ezek mind egymáshoz képest, mind S–hez képest diszjunkt Az adott példában tehát alcsoportok. FD 12
definició: Az indukált mellékosztály-partició. Egy G- csoport különböz"S alcsoportjának mellékosztályai diszjunkt halmazok. A bizonyítástól itt is eltekintünk. Az FP 18 példa mindenesetre azt mutatja, hogy az S halmaz mellékosztályainak nincsenek azonos elemei és ez be is látható abból, hogy hogyan képeztük a mellékosztályokat. (Az itt nem közölt bizonyítás is lényegében ezt mutatja meg.) FileNév: InfotechnikaÚjJegyzet3.doc- 183/184 -Utoljára módosítva: 2001-10-18 G csoport S alcsoportjának mellékosztályai G-t különböz" és diszjunk trészhalmazokra particionálják113 Gnek ezt a diszjunkt részhalmazokra való felosztását G-nek az S halEz a tétel arra utal, hogy egy maz által indukált mellékosztály particiójának nevezik. FD 13 definició: Lagrangre tétele a mellékosztályok rendjére. Ha S alcsoportja G-nek akkor ord(S) | ord(G) azaz ord(S) valódi, maradék nélküli osztója ord(G)-nek 113 A particionálás
jellemz5en összefügg az ekvivalencia relációval. Ha a,b,c S és a=b akkor S-nek egy S’ részhalmazába (itt: mellékosztályába) tartoznak, de ha c(a, akkor az S-nek egy másik S” részhalmazába tartozik, amelynek nincs egyetlen közös eleme sem S’-vel. Imígyen az S halmaz elemei közötti ekvivalencia reláció az S halmazt diszjunkt részhalmazokra particionálja