Korszerű mobil vevőalgoritmusok Balázs Ferenc, Imre Sándor, Jeney Gábor Híradástechnikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Budapest, 2002-2003.
2
Tartalomjegyzék 1. Bevezető 5 1.1. Jelölésrendszer............................. 7 1.2. A komplex alapsávi ekvivalens modell............... 8 1.2.1. Sávhatárolt átviteli rendszer alapsávi modellje...... 9 2. Rendszermodell 11 2.1. Az adó oldala.............................. 12 2.1.1. A szimbólumok........................ 12 2.1.2. Aláírási hullámforma..................... 14 2.1.3. Kisugárzott és vett jel..................... 19 2.2. A csatorna modelljei......................... 20 2.3. A vevő oldala.............................. 22 2.3.1. Általános vevőszűrő...................... 23 2.3.2. A csatornához illesztett szűrő................ 26 3. Matematikai háttér 33 3.1. Statisztika............................... 33 3.1.1. Valószínűségi változók.................... 33 3.1.2. Valószínűségi eloszlások és sűrűség függvények...... 33 3.1.3. Momentumok......................... 35 3.1.4. Feltételes valószínűség.................... 35 3.1.5. Magasabb rendű statisztika................. 35 3.2. Becslés................................. 36 4. A többfelhasználós csatorna 37 4.1. A többfelhasználós csatorna problémája.............. 38 4.1.1. Többfelhasználós vs. egyfelhasználós vevők........ 38 4.2. A többfelhasználós vétel....................... 39 4.2.1. A dekorrelátor......................... 39 4.2.2. Minimális átlagos négyzetes hibájú vevő.......... 41 4.2.3. Az optimális megoldás.................... 42 4.3. Nemlineáris megoldások....................... 43 4.3.1. Kétszintű vevő......................... 44 4.3.2. Többszintű vevő párhuzamos frissítéssel......... 45 4.3.3. Többszintű vevő soros frissítéssel.............. 47 4.3.4. Interferencia-törlő eljárások................. 48 4.4. Visszacsatolt neurális hálózatok................... 48 4.4.1. A visszacsatolt neurális hálózatok energiafüggvénye... 50 3
4 TARTALOMJEGYZÉK 4.4.2. A visszacsatolt neurális hálózat, mint többfelhasználós vevőstruktúra......................... 53 4.4.3. Továbbfejlesztett visszacsatolt neurális hálózatok.... 54 5. Csatorna Kiegyenlítés 55 5.1. Bevezető................................ 55 5.2. Kiegyenlítők osztályozása...................... 56 5.3. Nemlineáris ellenőrzötten tanított kiegyenlítők.......... 58 5.3.1. Csatorna állapotok, a kiegyenlítési probléma geometriai megközelítése......................... 58 5.3.2. Bayes-tétel, MAP kritérium, az optimális szimbólumbecslés................................ 60 5.3.3. Radiális bázis függvény (RBF) kiegyenlítő......... 62 5.3.4. Fuzzy kiegyenlítő....................... 65 5.3.5. MLSE-Viterbi kiegyenlítő (GSM).............. 69 5.3.6. Fractionally Spaced...................... 69 5.3.7. DFE............................... 69 6. Független komponens analízis 71 6.1. Definiciók............................... 72 6.1.1. Általános definíció...................... 72 6.1.2. Zajos ICA modell....................... 72 6.1.3. Zajmentes ICA modell.................... 72 6.2. Az ICA költségfüggvényei....................... 73 6.2.1. Több komponenses költségfüggvények.......... 73 6.2.2. Egy komponenses költségfüggvények........... 76 6.2.3. Általános költségfüggvények................. 78 6.3. Az ICA algoritmusok......................... 79 6.3.1. Előfeldolgozás......................... 79 6.3.2. Hérault-Jutten algoritmus.................. 82 6.3.3. Nem lineáris dekorrelációs algoritmus........... 82 6.3.4. Entrópikus vagy maximum likelihood algoritmus..... 82 6.3.5. Nem lineáris PCA algoritmusok............... 83 6.3.6. Bigradiens algoritmus.................... 83 6.3.7. Neurális egykomponenses tanulási szabályok....... 84 6.3.8. Fix pontos algoritmus.................... 84 6.3.9. Sajátértékeken alapuló algoritmusok............ 85
1. fejezet Bevezető Napjaink meghatározó tendenciája a távközlés, az informatika és a média világának technológiai alapon megvalósuló konvergenciája. A közös nevezőt a hálózati rétegben alkalmazott Internet Protokoll jelenti. Ugyanakkor az IP mobilitási problémáinak feloldása szükséges, de nem elégséges feltétele a korszerű infokommunikációs hálózatok kiépítésének. Ennek oka, hogy a vég-vég összeköttetések vonatkozásában valamennyi szűk keresztmetszetet fel kell számolni. Ilyen, a jövő hálózatainak hatékonyságát döntően befolyásoló jelenlegi szűkkeresztmetszet a mobil terminált a hálózathoz illesztő rádiós interfész. A rádiócsatorna rendkívül rapszodikus viselkedése (fading) és a terminálok mozgása (Doppler-hatás) következtében fellépő bithibák egyfelől csökkentik az átviteli sebességet, másfelől a hibamentes átvitelt biztosító újraadások jelentősen növelik a késletetést, sőt ami sokkal súlyosabb probléma a valós idejű szolgáltatások szempontjából: a késleltetés ingadozását is. A helyzetet tovább nehezíti a kódosztásos többszörös hozzáférés (CDMA) tömeges elterjedése a mobil távközlő rendszerekben. Számos előnyük mellett (lágy korlát a felhasználók számában, szoft handover, stb.) gyakorlatilag egyöntetűvé tették azt a szabályt (mely már a 2. generációs rendszereket is részben érintette, lásd cellás struktúra - klaszterezés), hogy rendszereink interferencia limitáltak. Azaz nemcsak a rádiócsatorna zaja, fading, stb. befolyásolják a vevő hatékonyságát, hanem a többi felhasználó rádiós tevékenysége is. Ezen hatások ellen csak korszerű modulációs technikák és többszörös hozzáférési módszerek kifejlesztésével védekezhetünk, melyek képesek nagy fokú mobilitás és nagy számú interferáló felhasználó jelenlétében is megfelelő adatátviteli sebességet elérésére, korlátos késleltetés mellett. Ahhoz, hogy a jegyzetünkben ismertetett vevő-stratégiák működése tágabb összefüggéseiben is értelmezhető legyen a következőkben röviden áttekintjük a digitális rádiók blokkvázlatát rámutatva mindazon jelenségekre, funkcionalitásokra, melyek figyelembe veendő hatást gyakorolnak a detektorokra. Információ forrás: a tipikusan analóg (pl. beszéd, video) jeleket mintavételezés és kvantálás segítségével alakítjuk digitális információvá. Természetesen léteznek digitális források is, pl. adatbázis szerver. Forráskódolás: információ forrásaink általában meglehetősen redundán- 5
6 FEJEZET 1. BEVEZETŐ sak. Pl. az emberi beszéd a PCM-ben bevált 64 kbps helyett, akár 2,4 kbps-ra is tömöríthető az érthetőség megtartása mellett (természetesen senkinek sem ajánljuk, hogy Mozartot ilyen formátumban hallgassa!). A forráskódolás feladata, hogy tömörítő algoritmusok alkalmazásával megszabadítsa a digitális forrásinformációt a redundanciától. Csatornakódolás: a rádiócsatorna hatásai ellen való védekezés alapja, hogy segédinformációval (redundanciával) egészítjük ki az előzőleg tömörített bitfolyamot. Ezzel biztosítva a vételi oldalon a hibajelzést és esetlegesen hibajavítást. Megjegyezzük, hogy az utóbbi opcionális, hiszen újraadási protokollok használata esetén elegendő a hibadetektálás, ami kevesebb redundanciát jelent. Ugyanakkor az újraadás növeli a redundanciát, tehát egy komoly mérnöki optimalizálási feladattal állunk szemben. Ráadásul az átvitt információs bitek nem egyformán fontosak a számunkra, pl. mozgó kép átvitelénél a képszinkron sokkal fontosabb, mint egy képpont fényerőssége. Ennek következtében a gyakorlatban bizonyos biteket hibajavítással védenek, másokat újraadással. Végezetül ne feledkezzünk meg arról sem, hogy az újraadás lényegesen növeli a késleltetést is a rádiós interfészen. Interleaving: a rádiócsatorna által okozott csomósodott hibákat hivatott kiküszöbölni azáltal, hogy az információs bitfolyamot blokkokra bontjuk és a blokkok sorrendjét adott szabályrendszer szerint felcseréljük. Így a rádiócsatornában egymás mellett fellépő bithibák valójában az interleaving visszaállítása után többé kevésbe egyenletesen oszlanak meg a bitfolyamban, lehetőséget adva a hibadetektálásra és javításra. Scrambling (zagyválás): elsődleges feladata a spektrum fehérítése, amit a logikai 0 és 1 bitek csomósodásának megszüntetésével érnek el. Magyarán az interleaving blokkokon belül is összekeverik a biteket. Training bitek beszúrása: célja, hogy a vevő oldalon is ismert bitsorozatokkal egészítsük ki a bitsorozatunkat. Ezáltal a vevőben nyomon követhetők a rádiócsatorna hatásai (tudjuk mit kellene kapjunk, ha nem azt kapjuk, akkor feltehetőleg a többi bittel is az történt, mint a training bitekkel). Használatuk opcionális. Ha mellőzzük őket, vak (blind) vételről beszélünk. Ezt követően a modulátor segítségével alakítjuk át a digitális bitfolyamot a rádiócsatornába küldhető analóg jellé. A moduláció lehet két vagy többszintű annak megfelelően, hogy 1 vagy több bithez rendelünk egy analóg modulációs jelalakot. Természetesen a tényleges adás előtt az analóg jelet még a megfelelő vivőfrekvenciára kell ültetni és az adószűrőn is át kell engedni. A mobil távközlésban alkalmazott modulációkról bővebben a [1] jegyzetben olvashatunk. A rádiócsatorna, mint az előismereteinkből tudható számos hatással terheli meg jelünket. Ezek közül számunkra a legfontosabbak a termikus zaj, a késleltetés (és szórása), a csillapítás, a többutas terjedés, többi felhasználó interferenciája. Ezen mennyiségek sajnos statisztikus viselkedésűek, azaz egy helyben állva is időben folyamatosan változnak a vett jel jellemzői. A vételi oldalon természetesen a vevőszűrő és az alapsávi lekeverés várja a jelet. Ez után kezdődhet a dektekció, amely részben az adóoldali műveletek inverzének végrehajtását jelenti, részben pedig a redundáns információ alapján hozott statisztikai elvekre épülő döntéshozásból áll. Szemleletesen példázza a vevőben alkalmazott megoldások sokféleségét a következő: ha az a feladatunk, hogy vigyünk fel a második emeletre egy bútort, akkor az úgy is elérhetjük, ha felsétálunk a lépcsőn a másodikra, de úgy is, hogy beszállunk
1.1. JELÖLÉSRENDSZER 7 a liftbe, felmegyünk a tizedik emeletre és onnan visszajövünk a másodikra. A két megoldás ekvivalens még sem ugyanaz, mindkettőnek vannak előnyei és hátrányai. Ennek analógiájára nyilvánvaló, hogy vevőinkben is többféleképpen valósíthatjuk meg a detekciót. A jelenleg széles körben ismert vevőalgoritmusokat kívánjuk megismertetni az olvasóval ebben a műben. A tárgy alapvető célkitűzése, hogy átfogó képet nyújtson a hallgatóságnak mindazon technikák elméleti és gyakorlati hátteréről, melyek meghatározó szerepet töltenek/tölthetnek be a közeljövő korszerű vezeték nélküli távközlő rendszereiben. 1.1. Jelölésrendszer Sajnos komoly matematika szükséges a vevőalgoritmusok leírásához. Ahhoz, hogy tiszta, könnyen értelmezhető képleteket használhassunk, feltétlenül fontos, hogy egységes jelölésrendszert alkalmazzunk. Az alkalmazott jelölések szabályszerűségeit foglaljuk össze ebben a fejezetben. A változók utáni szögletes zárójel mindig azt fogja jelenteni, hogy az argumentum csak diszkrét értékeket vehet fel. Így például a d k [i] jelölés használatával a d k [1], d k [2],... sorozatot jelöljük. A hagyományos kerek zárójel viszont folytonos idejű változót jelöl, tehát az s k (t) egy folytonos idejű függvény. Függetlenül attól, hogy az argumentum értéke folytonos-e, avagy diszkrét, a változó maga lehet diszkrét és folytonos értékkészletű is. Tehát a d k [i] jelölés önmagában nem jelenti azt, hogy a d maga diszkrét értékkészletű. A tilde ( ) és a kalap (ˆ) az adott változóhoz kapcsolódó értékeket jelöl. Rendszerint tildével a diszkrét változó folytonos értékkészletű leképzését jelöljük, a kalapos verzió pedig a becsült értékekre szolgál. Így például a d k [i] diszkrét változó amely a szimbólumokat jelöli folytonos értékkészletű párja d k [i] kapcsolatban van d k [i]-vel (ahogyan azt az illesztett szűrőnél látni fogjuk), ˆd k [i] pedig a d k [i] szimbólumok becsült értéke a vevő kimenetén. Hasonlóképpen ˆR-rel jelöljük majd a diszkrét csatornamátrix (R) közelített értékét. A komplex számok imaginárius egységének jelölésére a mérnöki gyakorlatban alkalmazott j szimbólumot fogjuk használni, ahol j = 1. A karakter a konvolúciós operátort fogja jelölni, de felső indexben a komplex konjugált értékre utal majd. A vektorokat (v) és mátrixokat (M) félkövér betűkkel jelöljük majd, a vektorokat kis betűvel, a mátrixokat pedig naggyal fogjuk jelölni, hogy könnyebben elkülöníthetőek legyenek egymástól. A v T a v vektor transzponáltjára utal, hasonlóképpen a M H az M mátrix Hermit transzponáltja azaz komplex konjugáltja és transzponáltja. A vektorok, mátrixok elemeit szögletes zárójelben [.] adjuk meg, a diagonális mátrixokat pedig lúdláb. jelekkel kerítjük be. Az I mátrix az egységmátrix. Jelöléseinkkel I = 1, 1,..., 1. A diag [R] az R mátrix diagonális elemeit tartalmazó diagonális mátrix: diag [R] = R 11, R 22,... R MM. Diagonálisnak nevezünk minden olyan A mátrixot, melyre A = A. Az egységmátrix nyilvánvalóan diagonális mátrix: diag [I] = I. Egy A mátrixot hermitikusnak tekintünk, ha Hermit transzponáltja megegyezik az eredeti mátrixszal: A H = A.
8 FEJEZET 1. BEVEZETŐ A halmazokat kapcsos zárójellel {.} fogjuk jelölni, így például az A = { 1 j, 1 + j, +1 j, +1 + j} halmaz elemei rendre a (1 + j), (j 1), (1 j), (1 + j) elemek. Gyakran fogjuk A betűvel jelölni a lehetséges szimbólumok halmazát. Előfordulhat majd a {±1} jelölés a {+1, 1} helyett, helytakarékossági megfontolásokból. Az előző halmaz például A = {±1 ± j} alakban röviden is leírható. A zárójelek további funkciója, hogy sorozatokat és intervallumokat is jelölhetünk a segítségükkel. A sorozatokat (.) tehát az különbözteti meg majd a vektoroktól, hogy kerek zárójel határolja őket. Az intervallumokat, melyeket vesszővel elválasztott számpár jellemez, kerek és szögletes zárójel is határolhatja mindkét oldalon. A kerek nyitott intervallumot jelent, a szögletes pedig zártat. Így az [a, b) intervallum az a és b közé eső terület, melynek eleme a, de nem része b. 1.2. A komplex alapsávi ekvivalens modell Mielőtt az alkalmazott rendszermodellt felírnánk, átismételjük a komplex alapsávi ekvivalens leírás alapjait [1]. A komplex alapsávi leírás alkalmazásával a vivőfrekvencia hatását figyelmen kívül hagyhatjuk a képletekben. Ezáltal az egyenletek jelentősen egyszerűbb alakot öltenek. Vegyük az alábbi általános sávhatárolt jelet s(t) = a(t) cos(ω 0 t + ϕ(t)), (1.1) ahol ω 0 a vivő körfrekvencia értéke, a(t) és ϕ(t) tetszőleges folytonos idejű amplitudó és fázisfüggvények. A komplex alapsávi ekvivalens értékét az alábbi egyenlet s ekv (t) megoldása adja meg: s(t) = 2 Re { s ekv (t)e jω0t}, (1.2) ahol s ekv (t)e jω0t -t az s(t) függvény komplex előburkolójának hívjuk. Meg kell jegyezzük, hogy bizonyos irodalmak [1, 2] a kettes szorzó nélkül írják fel a komplex alapsávi jel definícióját, azonban ez bizonyos inkonzekvenciához vezet. Ekkor ugyanis a rendszer impulzusválaszát másképpen kell transzformálni, mint egy tetszőleges bemeneti, vagy kimeneti jelet. Az eltérő műveletek okát viszont nehéz megmagyarázni. Az itt közölt megközelítés szerint viszont mindkét transzformáció azonos alakban adható meg, mint azt a későbbiekben látni fogjuk, így nincs szükség magyarázkodásra. A komplex alapsávi ekvivalenst (1.1) és (1.2) alapján kifejezhetjük az a(t) amplitudó- és ϕ(t) fázisfüggvény segítségével is: s ekv (t) = 1 2 a(t)ejϕ(t). Végül az eredeti s(t) függvény az alábbi módon írható fel a komplex alapsávi ekvivalens függvény segítségével: s(t) = s ekv (t)e jω0t + s ekv(t)e jω0t. (1.3) Mivel s ekv (t) Fourier transzformáltja S ekv ( f), az eltolási tétel alkalmazásával az alábbi egyenlőséget kapjuk a spektrális sűrűségfüggvényekre vontakozóan S(f) = S ekv (f f 0 ) + S ekv( (f + f 0 )),
1.2. A KOMPLEX ALAPSÁVI EKVIVALENS MODELL 9 ahol f 0 = 2πω 0. A komplex alapsávi ekvivalens elméleti és gyakorlati előállításáról [1]-ban olvashatunk részletesen. Számunkra az a fontos, hogy az alapsávi modell alkalmas arra is, hogy átviteli rendszereket modellezzünk. Erről olvashatunk a következő alfejezetben. Mielőtt azonban a sávhatárolt átviteli rendszer alapsávi modelljét elemeznénk, érdemes megjegyezni, hogy a komplex alapsávi ekvivalens jel energiája nem egyezik meg az eredeti jel energiájával. Ugyanis a E = s 2 (t) dt egyenletbe (1.2)-t helyettesítve E = 2 s ekv (t) 2 (1 + cos(2ω 0 t)) dt (1.4) lesz, amelyben a koszinuszos tag integrálja zérus. Mégpedig azért, mert az s ekv (t) függvény jóval lassabban változik, mint a (2ω 0 t) fázis. Ebből következően minden t 1 -től t 2 -ig teljes perióduson, amikor ω 0 (t 2 t 1 ) = π, az s ekv (t) kifejezés konstansnak vehető, azaz a t 1 és t 2 közötti integrál zérus. Mivel minden t 1, t 2 érték párosra elmondható az állítás, a teljes intervallumra számított integrál is nulla lesz. Az (1.4) tehát a következőképpen alakul: azaz E = 2 s ekv (t) 2 dt, s 2 (t) = 2 s ekv (t) 2. Eredményünk alapján kijelenthetjük, hogy az alapsávi ekvivalens jelteljesítménye az eredeti jel teljesítményének felével egyezik meg. 1.2.1. Sávhatárolt átviteli rendszer alapsávi modellje Vegyük az 1.1. ábrán látható lineáris modellt, melyben a rendszer impulzusválasz függvénye h(t)-vel egyezik meg. Alaptanulmányaink során megtanultuk, hogy lineáris rendszer tetszőleges s(t) függvényre a rendszer válasza r(t) = h(t) s(t) lesz. A kérdés az, hogy ugyanez elmondható-e a komplex alapsávi ekvivalensekről is, azaz r ekv (t) = h ekv (t) s ekv (t) (1.5) egyenlőség vajon teljesül-e. Ha igen, akkor elegendő a komplex alapsávi ekvivalensekkel felírni egyenleteinket, mert az egyenlőségek az eredeti függvényekre is teljesülni fognak. A kérdés az, hogy hogyan értelmezhetjük egy rendszer komplex alapsávi ekvivalensét azaz hogyan állíthatjuk elő h ekv (t)-t h(t)-ből úgy, hogy az (1.5) egyenletet ki lehessen elégíteni. Miután az r(t) is ugyanolyan folytonos idejű függvény, mint s(t) volt, ezért komplex alapsávi ekvivalensét is ugyanúgy értelmezhetjük, mint az s(t) esetében, azaz R(f) = R ekv (f f 0 ) + R ekv( f f 0 )). (1.6)
10 FEJEZET 1. BEVEZETŐ s(t) h(t) r(t) s ekv (t) h ekv (t) r ekv (t) 1.1. ábra. Sávhatárolt rendszer modellje és komplex alapsávi megfelelője Miután az (1.5) alapján az R ekv (f) = H ekv (f)s ekv (f) (1.7) és az R(f) = H(f)S(f) egyenleteket is ki kell elégíteni. Az utóbbi a komplex alapsávi ekvivalensekkel az alábbi formában írható R(f) = H(f) [S ekv (f f 0 ) + S ekv( f f 0 )]. (1.8) Ha a bemeneti jel sávhatárolt, azaz S(f) = 0, ha f f 0 > B, ahol B a jel sávszélessége, akkor az alacsony és magas frekvenciás komponensek különkülön egyenlővé tehetőek. Azaz az (1.6) és az (1.8) feltételeket az alábbi két egyenlet kielégítésével megoldhatjuk. R ekv (f f 0 ) = H(f)S ekv (f f 0 ) R ekv( f f 0 ) = H(f)S ekv( f f 0 ) Az egyenleteket kielégíti a H(f) = H ekv (f f 0 ) + H ekv( (f + f 0 )), vagy a súlyfüggvényre vonatkozóan a h(t) = 2 Re { h ekv (t)e jω0t} (1.9) összefüggés, ha a rendszer impulzusválasza is sávhatárolt, azaz H(f) = 0, ha f f 0 > B r, ahol B r a rendszer sávszélessége. Ekkor ugyanis R ekv (f f 0 ) = H ekv (f f 0 )S ekv (f f 0 ) R ekv( f f 0 ) = H ekv( f f 0 )S ekv( f f 0 ), azaz (1.7) és így (1.5) is teljesül. Az eredményt szavakba öntve, ha a rendszer komplex alapsávi súlyfüggvényét az (1.9) egyenlettel definiáljuk, akkor a komplex alapsávi ekvivalens modell alkalmas lesz arra, hogy segítségével a vizsgált rendszereket leírjuk és modellezzük. Vegyük észre, hogy az impulzusválaszra vonatkozóan ugyanazt a transzformációt (1.9) kell végrehajtani, mint a bemeneti és kimeneti jelre vonatkozóan (1.2). A komplex alapsávi ekvivalens előállítása tehát egységesen elvégezhető tetszőleges folytonos idejű jelre. A komplex alapsávi modell általános jellege miatt a következőkben az ekv szócskát ugyan elhagyjuk, de egyenleteink a komplex alapsávi ekvivalenseket jelölik, és így nem tartalmazzák a vivőfrekvenciát. Ugyanakkor az egyenleteink általános érvényűek, segítségükkel minden sávhatárolt rendszer és jel leírható. Miután a gyakorlatban használt jelek és rendszerek mindig sávhatároltak, ezért a sávhatároltság feltételének teljesülését külön nem vizsgáljuk, hanem elfogadjuk axiómaként.
2. fejezet Rendszermodell Az általános rendszermodell a 2.1. ábrán látható. Először egy gyors vázlattal végignézzük, hol mi található, azután fejezetenként a modell alrendszereit vizsgáljuk külön-külön. A változókban megjelenő k index minden esetben a k. felhasználóra utal. Feltételezésünk szerint az adóban egy diszkrét forrás állítja elő az átvinni kívánt információt, amit egy megfelelő forráskódoló tömörít, hogy sávszélesség hatékony legyen az átvitel. A tömörített bináris információt b k [i]-vel jelöljük az ábrán. A bináris információból egy csatorna kódoló és egy átszövő után d k [i] szimbólumokat kapunk. A csatornakódoló eljárást és az átszövést nem részletezzük, egy fekete doboznak tételezzük fel, amelynek kimenetén a kódolt, átszőtt szimbólumok jelennek meg. A d k [i] szimbólumokat az elemi jelalakkal moduláljuk, az így előállított x k (t) immár folytonos idejű jel kerül a csatornára. A csatorna torzító hatását a csatorna h k (t) impulzusválasz függvényével írhatjuk le. A csatornán azonban nem csak torzítást szenved a k. felhasználó jele, hanem más forrásokból érkező, illetve a csatornán jelen lévő zaj is zavarja azt. A vevőbe e massza érkezik, melyet y(t)-vel jelöltünk az ábrán. A kérdés az, hogy hogyan demoduláljunk, illetve detektáljunk a három vonallal { bekeretezett dobozban, a lehető legkisebb hibával (azaz úgy, hogy Pr ˆdk [i] d k } [i] minimális legyen). Ha minimális hibával tudunk demodulálni, akkor a csatorna dekódoló és visszaszövő után is minimális lesz a hibás bitek száma a bi- adó b k [i] csat. kódoló interleaver s k (t) d k [i] elemi jelalak moduláció x k (t) más felhasználók jelei csatorna h k (t) + n(t) csatorna y(t) ˆb k [i] csat. dekódoló deinterleaver ˆd k [i] demoduláció vétel vevő 2.1. ábra. A mobil kommunikációs rendszer blokkvázlata 11
12 FEJEZET 2. RENDSZERMODELL } náris adatfolyamban (azaz Pr {ˆbk [i] b k [i] is minimális lesz). Vegyük észre, hogy az utóbbi állítást nem bizonyítottuk. Nem is lehet bizonyítani, mert nem mindig igaz. Manapság kerülnek a tudományos érdeklődés előterébe olyan megoldások, melyekben a vételi és csatorna dekódoló, visszaszövő funkciók egyidejű megvalósításával jobb hatásfokot tudnak elérni. Egy bevezető kurzusnak azonban nem lehet{ célja ilyen, nagy } bonyolultságú eljárások részletezése. Ezért csupán a Pr ˆdk [i] d k [i] valószínűség minimalizálására törekedünk a jegyzet keretein belül és elfogadjuk, hogy ezáltal a bithibaarány is minimális lesz. Így mentesülünk a csatorna kódoló-dekódoló és átszövővisszaszövő eljárások ismertetésétől. 2.1. Az adó oldala A 2.1. ábra bal felső sarkában szaggatott vonallal bekeretezett három blokk részletezése helyett két matematikai szimbólum, a d k [i] szimbólumok és az s k (t) aláírási hullámforma leírásával foglalkozunk. A fejezet végén felírjuk az adóból távozó jel matematikai alakját is. 2.1.1. A szimbólumok Tételezzük fel, hogy K darab felhasználó ad aktívan a csatornában. A felhasználók bináris adatokat kívánnak a mobil csatornán átjuttatni. Legyen b k [i] az k-adik felhasználó i-edik bitje (k = 1, 2,..., K, b k [i] { 1, +1}). Az adatbiteket először csatornakódolásnak vetjük alá, majd egy úgynevezett interleaver keveri meg a szimbólumokat, hogy a burst-ös hibák ellen védettebb legyen az adatfolyam [1]. A kódolt, megkevert szimbólumokat d k [i]-vel jelöljük, ahol k továbbra is a felhasználót jelöli, i pedig az időpillanatra vonatkozik. Vegyük észre, hogy a d k [i] már nem bináris elemeket (biteket) takar, szimbólum: az elemi hanem komplex értékű szimbólumokat. A szimbólum szó használatát ezért adategység neve hangsúlyozzuk ebben a kontextusban. szimbólumidő: az az időintervallum, amíg egy szimbólum tart konstellációs diagram: a komplex számsíkon ábrázolt lehetséges szimbólumértékek halmaza Egy szimbólum tartási idejét T -vel jelöljük, és szimbólumidőnek hívjuk. A d k [i] szimbólumok lehetséges értékeinek halmazát A-val jelöljük. Az A halmaz elemeit az alkalmazott modulációs technika határozza meg, A -val jelöljük az A halmazban lévő különböző elemek számát. Az A halmazt a lehetséges szimbólumok halmazát a legszemléletesebben a konstellációs diagramon lehet ábrázolni. Mivel a komplex alapsávi ekvivalenssel dolgozunk, a konstellációs diagram is két dimenziós; a valós tengelyt fázisban lévő (In phase I), a képzetes tengelyt kvadratúra (Quadrature Q) összetevőnek nevezzük. Az A halmaznak ki kell elégítenie a normalizáltság feltételét: 1 A d i A d i 2 = 1. Néhány példát tekintünk át a következő alfejezetekben. Bináris fázisbillentyűzés A bináris fázisbillentyűzés (Binary Phase Shift Keying BPSK) moduláció esetében két értéke lehet a szimbólumoknak d k [i] = ±1. Nem a 0 és az
2.1. AZ ADÓ OLDALA 13 Q 1 1 I 2.2. ábra. A BPSK moduláció konstellációs diagramja Q 1 1 I 2.3. ábra. A 3ASK moduláció konstellációs diagramja 1 értékeket rendeljük hozzá a lehetséges szimbólumok halmazához, hanem a +1, 1 értékeket. Ennek az oka az, hogy az egyenleteinkben szorzótagként jelenik meg a szimbólum, mindkét lehetséges szimbólumértéknek azonos energiát biztosítva. A 2.2. ábrán láthatjuk a BPSK rendszerek konstellációs diagramját. A tengelyeket metsző rövid szakasz az egység helyét jelöli, az üres karikák pedig a lehetséges szimbólumokat. Amplitudóbillentyűzés Az amplitudóbillentyűzés (Amplitude Shift Keying ASK) még valós, de már többértékű modulációs technika. Lényegét tekintve az amplitudószintek különbözősége hordozza az információt. Az ASK elé írt szám határozza meg, hogy hány darab amplitudószint lehetséges, a szomszédos szintek közötti távolság pedig egyenlő kell legyen. E két tulajdonság a normalizáltság feltételével együtt meghatározza a lehetséges szimbólumértékek halmazát. 3 Például 3ASK esetében A = { 11, 3 11, 12 11 }, vagy 4ASK estében A = { 3 5, 1 1 5, 5 3, 5 }. A 2.3. ábrán láthatjuk a 3ASK rendszer konstellációs diagrammját. Kvadratúra amplitudómoduláció A kvadratúra amplitudómoduláció (Quadrature Amplitude Modulation QAM) több különböző modulációt takar és már komplex értékkészletű. Úgy, mint az ASK esetében, a QAM-nél is egy számmal jelöljük, hogy hány eleme
14 FEJEZET 2. RENDSZERMODELL Q 1 1 I 2.4. ábra. A 8QAM moduláció konstellációs diagramja Q 1 1 I 2.5. ábra. A 32QAM moduláció konstellációs diagramja A felhasználók a közös csatornán a hullámforma aláírásuk alapján kü- lönböztethetőek meg. A k-adik felhasználó komplex alapsávi hullámformáját s k (t)-vel jelöljük, ahol t a folytonos időt jelöli. A hullámforma lehetséges hullámforma aláírás: olyan folytonos idejű jel, mely minden felhasználót egyértelműen azonosít van az A halmaznak. A szomszédos elemek közötti távolság továbbra is állandó. Ha nem kerül szám a QAM rövidítés elé, akkor a 4QAM az alapértelmezés. A 4QAM esetében A = { 1 2 (1 + j), 1 2 (1 j), 1 2 ( 1 + j), } 1 ( 1 j), 2 8QAM esetében pedig { 1 A = (±1 ± j), ± 1 + 3, ± 1 + } 3 j. 3 + 3 3 + 3 3 + 3 A 8QAM modulációhoz tartozó konstellációs diagram a 2.4. ábrán látható. A nagyobb bonyolultságú több halmazelemet tartalmazó QAM modulációs halmazokat hasonlóképpen kell előállítani. A teljesség igénye nélkül a 32QAM modulációt jellemző konstellációs diagramot a 2.5. ábrán ábrázoltuk. A kvadratúra fázisbillentyűzés (Quadrature Phase Shift Keying QPSK) moduláció esetében d k [i] {±1, ±j}. Vegyük észre, hogy a QPSK gyakorlatilag a 4QAM moduláció 45 fokkal elforgatott verziója, így nem kell külön tárgyalnunk. 2.1.2. Aláírási hullámforma
2.1. AZ ADÓ OLDALA 15 konkrét matematikai alakjait a későbbi alfejezetekben részletezzük. A hullámforma lehet véges és végtelen tarjójú. A hullámforma véges tartójú, ha véges tartó: időben véges létezik véges A szám és véges T s (tartó)érték, amire intervallumon különbözik nullától s k (t) = 0 t / [A, A + T s ). A véges tartójú hullámforma aláírás egy speciális esete az, amikor az s k (t) tartója azonos a szimbólumidővel, azaz T s = T. A szimbólumidő tartójú rendszerek jelentős egyszerűsítésekkel tárgyalhatók, viszont nem realisztikusak. A könyebb érthetőség érdekében azonban a későbbiekben alkalmazzuk őket. Adott esetben azonban előfordulhat, hogy végtelen tartója van a hullám- végtelen tartó: nem forma aláírásnak. Ekkor nincs olyan intervallum, melyen kívül nullának tekinthető a hullámforma értéke. Bár véges sávszélességhez csak végtelen tartó tartozhat, a valós rendszereket véges tartójúnak szoktuk tekinteni. A valós rendszerekben ugyanis egy előírt ε értéknél kisebb függvényértékeket nem veszünk figyelembe, zajnak tekintjük. A véges tartó méretét az előírt ε értékhez a T s = max { s k (t) > ε} min { s k (t) > ε} t t kifejezés alapján kaphatjuk meg. Az s 1 (t), s 2 (t),..., s K (t) folytonos idejű és komplex értékű függvények. A hullámformák normalizáltak az L 2 térben, azaz fennáll a s i (t), s i (t) = 1 (2.1) egyenlőség, ahol a (??) egyenletben definiáltuk a komplex skaláris szorzás műveletét. Természetesen ha a hullámformák véges tartójúak, akkor az integrálást is elég a véges intervallumon elvégezni. Ideális körülmények esetén a csatornák között nincs áthallás. A csatornák elkülönítését a hullámformák közötti korrelálatlanság biztosítja. A hullámformák közötti korrelálatlanságot matematikailag az alábbi egyenlet írja le: s i (t), s k (t) = 0, ha i k. (2.2) Sajnos valós körülmények között a (2.2) feltétel nem, vagy csak nehezen teljesíthető. létezik zárt intervallum, melyen kívül nulla a függvényérték Frekvenciaosztásos többszörös hozzáférés Ha a felhasználóknak különböző frekvenciasávokat osztunk ki azaz a felhasználókat frekvenciájuk alapján különböztetjük meg egymástól, akkor több felhasználót is kiszolgálhatunk ugyanazon a csatornán. Az s k (t) hullámforma aláírás impulzus amplitudó moduláció (Pulse Amplitude Modulation PAM) esetén FDMA rendszerben a következő alakot ölti: s k (t) = e jk( ω)t Ts (t), (2.3) ahol k egész szám, ( ω) pedig egy minimálisan előírt frekvenciatávolság, amelyet a későbbiekben ki is számítunk. A kifejezés jobb oldalán szereplő Ts (t) egy tartó, amely 0 és T s között különbözik nullától. A függvény ezen az intervallumon konstans értéket vesz fel, mellyel egységnyi energiájú lesz az s k (t)
16 FEJEZET 2. RENDSZERMODELL függvény (azaz mellyel az s k(t) 2 dt = 1 feltétel teljesíthető). Nem bonyolult kiszámolni, hogy az Ts 1 érték esetén a feltétel teljesíthető. A τ (t) függvényt a későbbiekben is alkalmazni fogjuk, ezért külön egyenletben is definiáljuk: { τ 1, ha 0 t < τ, τ (t) = (2.4) 0 egyébként. A ( ω) sávszélességet úgy kell megválasztani, hogy a szomszédos felhasználók elkülöníthetőek legyenek egymástól. Ha a (2.2) egyenlet alapján matematikailag akarjuk ugyanezt megfogalmazni, akkor tetszőleges k-ra s k (t), s k+1 (t) = 0 kell, hogy legyen. A módosított (2.2) egyenletbe (2.3) képletet behelyettesítve azt kapjuk, hogy e jk( ω)t Ts (t), e j(k+1)( ω)t Ts (t) = 0, ami integrál alakban (a véges tartók miatt csak 0 és T s között kell integrálni): Ts 0 e jk( ω)t e j(k+1)( ω)t dt = 0 Ts 0 e j( ω)t dt = 0 1 ( ) e j( ω)ts 1 = 0 j( ω) 2 1 ( ( ω) e j( ω)ts/2 e j( ω)ts/2 e j( ω)ts/2) = 0 2j 2 ( ω) e j( ω)ts/2 sin ( ω)t s = 0. 2 Az utóbbi egyenlőség csak úgy biztosítható, ha sin ( ω)ts 2 = 0, azaz ( ω)t s = lπ, 2 ahol l egész szám. Hogy a lehető legkisebb sávszélességet kapjuk l értékét a lehető legkisebbre kell választani, hiszen ( ω) egyenesen arányos l-lel. Ezért l = 1 választással élünk (l nem lehet nulla, hiszen akkor ( ω) = 0 lenne, azaz minden felhasználó ugyanazt a frekvenciát használná), melyre ( ω) min = 2π T s, avagy f min = 1 T s. A (2.3) képletben T s értékét azért kell véges értéken tartani, mert az egymást követő szimbólumok nem elkülöníthetőek el egymástól, ha véges a tartó. Gyakorlatban előfordul ugyan, hogy (elvileg) nem véges a tartó például GSMben, ekkor azonban nem egy konstans értékű függvényt alkalmazunk, hanem egy megfelelő tulajdonságokkal rendelkező ɛ(t) elemi jelalakot. Az alkalmazott függvénynek teljesíteni kell az alábbi kritériumokat:
2.1. AZ ADÓ OLDALA 17 könnyen detektálható, az értékkészlete véges (lineáris erősítő!), a szimbólumközi áthallás valamilyen módon könnyen kezelhető, az elemi jelalak ɛ(t) sávszélessége kisebb, mint a csatornák közötti frekvenciatávolság ( ω). Ortogonális frekvenciaosztásos multiplexálás Egy pillantást vetve a (2.3) képletre egy olyan rendszer vázlata is eszünkbe juthat, melyben csak egyetlen felhasználó ad, de párhuzamosan több ortogonális csatornán. Az ortogonális frekvenciaosztásos multiplexálás (Orthogonal Frequency Division Multiplexing OFDM) lényege az, hogy a fading hatások ellen több vivő alkalmazásával próbálunk védekezni. Mindegyik vivőn külön információt viszünk át; a keskenysávú fading csak néhányat tud zavarni, így a csatornadekódolóval együttműködő vevő hatékonyabban tudja visszaalakítani az átvitt csomagokat. Az OFDM rendszert leíró hullámforma aláírást a modellünk segítségével nem lehet felírni, mert az nem támogatja a párhuzamosítást. Helyette az OFDM adó kimenetén megjelenő folytonos idejű jel alakját írjuk itt fel, amely a következő alakot ölti: x k (t) = C 1 i=0 e jωit Ts (t)d k [i + 1]. (2.5) Kódosztásos többszörös hozzáférés A kódosztásos többszörös hozzáférésnek négy alapvető típusa van: a direkt szekvenciális és a többvivős kódosztásos hozzáférés, a gyors és a lassú frekvenciaugratásos kódosztás. Míg az utóbbi kettő alapvetően egyfelhasználós rendszereket jellemez, az első kettő széles körben alkalmazott többszörös hozzáférésű rendszerekben (pl. IS 95, UMTS). A direkt szekvenciális és többvivős, valamint a gyors frekvenciaugratásos rendszereket ebben a fejezetben tárgyaljuk. Direkt szekvenciális (Direct Sequence DS-CDMA) esetben a hullámforma aláírás az alábbi alakot ölti: s k (t) = C 1 i=0 S k [i] ɛ(t it c ), (2.6) ahol C a chipek számát jelöli, és gyakran azonos a feldolgozási nyereséggel (Processing Gain PG). A képlet közepén látható S k [i] chipek sorozata a k- adik felhasználó kódját adja. Az ɛ(t) függvény az elemi jelformát jelképezi, az argumentumában látható T c pedig a chipidő jele. A gyakorlati megvalósításokban a szimbólumidő egyenlő a chipidő és a chipek számának szorzatával (T = C T c ). A (2.6) képletet úgy egyszerűsíthetjük, hogy ɛ(t) helyére Tc (t)-t írunk. Ezzel könnyebben vizualizálhatóvá válik a DS-CDMA hullámforma. A kereszt-
18 FEJEZET 2. RENDSZERMODELL korrelációra előírt feltétel, melyet (2.2) képletben láthatunk az alábbi alakra egyszerűsödik ebben az esetben: C 1 i=0 S k [i]s l [i] = 0. Egy jól ismert bináris kódcsalád a Walsh-Hadamard féle, amely kielégíti ezt a feltételt. A Walsh-Hadamard kódokat tartalmazó W k mátrixot az alábbi mátrixrekurzióval állítjuk elő: [ ] Wk W W k+1 = k, (2.7) W k W k ahol W k egy 2 k 2 k mátrix, melynek soraiban vagy oszlopaiban egy kód chipjei (S k [i]) találhatóak. A rekurzió kiindulási mátrixa W 0 = 1 alakban adott. Például k = 2-re az alábbi módon néz ki a mátrix: +1 +1 +1 +1 W 2 = +1 1 +1 1 +1 +1 1 1. (2.8) +1 1 1 +1 A lehetséges kódok a sor- vagy oszlopvektorok elemeiből olvashatóak ki. Így például érvényes kód a [+1, 1, 1, +1], amely a legalsó sorvektorból, vagy az utolsó oszlopvektorból olvasható ki. A (2.2) egyenletet a mátrix önmagával vett szorzatával bizonyítjuk. Ha minden k értékre igaz a W k W T k = K I (2.9) egyenlőség, ahol K egy konstans, I pedig az egységmátrix, akkor a (2.2) teljesül (gondoljunk bele!). A (2.7) egyenletet behelyettesítve azt kapjuk, hogy [ ] 2 W W k Wk T 2 = k 1 0 0 2 Wk 1 2, minden k-ra. Mivel a mátrix hatványozás nem változtat a [ ] A 0 0 A típusú mátrixok szerkezetén (a nullák helyén továbbra is nullák lesznek), csak a diagonálisban lehetnek nullától különböző elemek, illetve K értéke a (2.9) egyenletben egyenlő lesz 2 k -nal. Többvivős (Multi-Carrier MC-CDMA) kódosztás esetében a hullámforma aláírás alakja az alábbi formára módosul: s k (t) = C 1 i=0 S k [i]e jωit ɛ(t), (2.10) ahol C az alvivők számát jelöli. Minden alvivőhöz egy S k [i] chip tartozik, az i-edik alvivő frekvenciáját pedig ω i -vel jelöltük. A gyakorlatban ω i = i( ω), ahol ( ω) az alvivők közötti frekvenciatávolság. Az ɛ(t) függvény itt is az elemi jelformát jelöli. A hatékony működés érdekében ɛ(t) sávszélessége tipikusan
2.1. AZ ADÓ OLDALA 19 kisebb, mint ( ω), de előfordulnak olyan rendszerek is például a többtónusú (Multi-Tone MT-CDMA) kódosztásos rendszer, ahol ez a feltétel nem teljesül. Ekkor a vevőben az átlapolódó sávok problémáját is kezelni kell. A gyors frekvenciaugratásos rendszert alapvetően egyfelhasználós csatornákon alkalmazzák, de nem kizárt a többfelhasználós alkalmazása sem. A gyors és lassú frekvenciaugratás között az a különbség, hogy a frekvenciaváltás ütemezése kisebb, vagy nagyobb-e a jelzési sebességnél. Mivel modellünkben az s k (t) hullámformát minden szimbólum alatt azonosnak tételezzük fel, csak olyan hullámformát tudunk felírni, melynek periódusa T. A hullámforma aláírás a gyors frekvenciaugratás esetében, ha T = C T c : s k (t) = C 1 i=0 e js k[i]( ω)t ɛ(t it c ), ahol C a kód hossza, ɛ(t) az elemi jelalak. 2.1.3. Kisugárzott és vett jel Attól függően, hogy az uplink, vagy a downlink csatornán sugárzott jel- uplink: a mobil ről van szó, két külön esettel kell foglalkoznunk. A downlink esetben a jelek először összegződnek, majd az szuperpozíciójuk kerül a csatornára. Az bázisállomás felé állomástól a összegzett jel egységesen torzul, a vevő bemenetére a szuperponált jel torzult irányuló kommunikációs alakja érkezik. Uplink esetben az adók külön-külön kisugározzák saját adásukat, azok külön torzulnak a csatornán, majd a torzult jelek szuperpozíciója downlink: a csatorna kerül a vevő bemenetére. A különbség abban rejlik, hogy a jel összegzés előtt, bázisállomástól a mobil vagy az után torzul a csatornán. A kétféle megközelítés kétféle modellt fog állomás felé irányuló eredményezni, ahogyan azt a későbbiekben látni fogjuk. A továbbiakban is a kommunikációs csatorna rövidség kedvéért uplink és downlink szavakkal hivatkozunk e két esetre. Először nézzük meg, hogy mit sugároz ki az adó. A k-adik felhasználó által kisugárzott komplex alapsávi jelet x k (t)-vel jelöljük ami a következő formában írható: x k (t) = A k d k [i]s k (t it ), (2.11) i ahol az A k a k-adik felhasználót jellemző komplex amplitudóérték. A komplex alapsávi modell miatt eltekinthetünk a vevőfrekvenciát jelképező tag kiírásától, és a fáziscsúszást is egyetlen komplex szorzótényezőbe tudjuk kiírni. Uplink esetben a folytonos idejű h ul k (t) függvény írja le a k-adik felhasználót jellemző időinvariáns csatornát. Downlink esetben minden felhasználót ugyanaz a csatorna jellemez, így h dl k (t)-vel jelölhető a bázisállomás és a k-adik vevő közötti időinvariáns csatorna. A vevő bemenetére érkező jel amelyet y(t)-vel jelölünk a bázisállomáson és y k (t)-vel a k-adik mobil állomáson uplink esetben a következő: y(t) = ( h ul k (t) x k (t) ) + n(t), (2.12) k ahol n(t) a csatornán lévő fehér Gauss zajt jelöli. Downlink esetben: ( ) y l (t) = h dl l (t) x k (t) + n(t). (2.13) k
20 FEJEZET 2. RENDSZERMODELL Az n(t) zajt kétoldalas N 0 spektrális sűrűségű, fehér folyamatnak tételezzük fel. Fehérségét vagy korrelálatlanságát a következő matematikai egyenlettel fejezhetjük ki: E {n(t)n (t + τ)} = N 0 δ(τ), (2.14) ahol δ(τ) a Dirac-delta, azaz nullát ad eredményül, ha argumentuma nem egyezik meg nullával, és egyet ad, ha argumentuma nulla. Bár modellünkben a csatornát időinvariánsnak tételezzük fel, a modell könnyedén kiterjeszthető az idővariáns esetre is, ekkor a h(t) függvények argumentumában megjelenik még egy idő jellegű paraméter. Erről a 2.2. fejezetben olvashatunk bővebben. Ha az uplink és downlink csatornákat időben megosztott módon különítik el egymástól, akkor időosztásos duplexálásról (Time Division Duplexing TDD) beszélünk. Ekkor az időinvariáns uplink és downlink csatornák megegyeznek, azaz h ul k (t) = hdl k (t). A TDD módon kívül előfordulhat, hogy az uplink és downlink kommunikáció különböző frekvenciasávokban zajlik, ezt nevezzük frekvenciaosztásos duplexálásnak (Frequency Division Duplexing FDD). FDD esetben általában a downlink és uplink csatornák különbözőek, azaz általában h ul k (t) hdl k (t). Kódosztásos duplexálást nem szoktak rádiós berendezésekben alkalmazni a gyakorlatban, mert nagyon nehéz lenne elektronikailag megvalósítani az egyidejú adást és vételt ugyanabban a frekvenciasávban. 2.2. A csatorna modelljei A csatornát egyértelmű módon leírhatjuk a h k (t) függvénnyel, amely a csatorna impulzusválaszát jelenti. A h k (t) függvény alakja alapján különböző csatornamodellekről beszélhetünk. Itt nem célunk a csatornamodellek részletes leírása, csak egy rövid bemutatót kívánunk adni, hogy a későbbiekben alkalmazott levezetéseknél ne érjék meglepetésként az olvasót az alapvető modellek. Ebben a részben a csatorna természetéről fogunk szólni, amely csatorna lehet uplink és downlink egyaránt. Ezért az ul és dl rövidítéseket elhagyjuk a következőkben, állításaink mindkét esetben megállják helyüket. Az additív fehér gaussi zajjal terhelt csatorna (Additive White Gaussian Noise AWGN) a legegyszerűbb modell. Gyakorlatilag rádiós csatornán soha nem fordul elő, de segítségével rengeteg levezetésben lényegesen egyszerűbb formára juthatunk egyenleteinkkel. Szinkron AWGN esetben a csatorna impulzusválaszát a h k (t) = α k δ(t) (2.15) kifejezés adja meg minden k értékre, ahol α k a k-adik felhasználót jellemző csillapítás. Miután a h k (t) értékkel konvolúciót hajtunk végre, ez annyit jelent, hogy a bejövő jellel nem csinálunk semmit csak csillapítjuk egy α k szorzóval, a kimeneten a csillapított jel jelenik meg. A csatorna hatása persze a gaussi zajban is megnyílvánul. Eggyel bonyolultabb, de mobil környezetben még mindig nem realisztikus modell az aszinkron AWGN csatorna, amely az alábbi képlettel írható le: h k (t) = α k δ(t τ k ), (2.16)
2.2. A CSATORNA MODELLJEI 21 h k(t) τ k1 α k1 α k2 α k3 τ k2 τk3 τ k4 α k4 t 2.6. ábra. Példa időinvariáns csatorna-impuzlusválaszra azaz az előző esethez képest egy τ k késleltetés is jellemez minden felhasználót. A felhasználók jele nem egy időben szinkron módon érkezik a vevő bemenetére, hanem mindegyik felhasználóé más és más késleltetéssel aszinkron módon. Ezért nevezzük a (2.16) csatornát aszinkron AWGN csatornának. A következő modell, amely mobil környezetben már realisztikus lehet, az időinvariáns, többutas, fadinges csatorna, melyet az alábbi egyenlettel definiálhatunk L k h k (t) = α kl δ(t τ kl ), (2.17) l=1 ahol az l változóval jelzett szumma a jelutakat gyűjti össze, melyekből L k darab van. A k-adik felhasználó l-edik jelútjára α kl csillapítás és τ kl késleltetés jellemző. A (2.17) egyenletben szereplő paraméterek nem függenek az időtől, ezért a csatornát időinvariánsnak nevezzük. Az időinvariáns csatornamodell alkalmas rövid csomagok átvitelét torzító csatornák leírására, például a GSM rendszer börsztös átvitelének modellezésére. Egy lehetséges valós csatorna reprezentációját láthatjuk a 2.6. ábrá Az idővariáns csatornamodellre akkor van szükség, amikor az adatátvitel ideje alatt a csatorna nem tekinthető állandónak. Példaként az FDD módban üzemelő UMTS berendezés folytonos adatátvitelét említhetjük. Idővariáns csatorna esetében a csatornát leíró impulzusválasznak nem csak egy időargumentuma van; szükségünk lesz egy időparaméterre a konvolúcióhoz (ezt τ- val fogjuk jelölni) és egy paraméterre az időfüggőség leírásához (amely marad t). Ezért az elkövetkezőkben h k (t) helyett h k (t, τ)-t írunk majd. A konvolúció műveletét például az uplink esetben (2.12) az alábbi módon kell végrehajtani: y(t) = k = k h k (t, τ) x k (t) + n(t) (2.18) h k (t, τ)x k (t τ) dτ + n(t). A downlink eset hasonlóképpen kezelhető. Az idővariáns többutas fadinges csatorna minden mobil alkalmazásban megfelelő modell lehet, alakja h k (t, τ) = L k (t) l=1 α kl (t)δ(τ τ kl (t)). (2.19) Mint az az egyenletből látható nem csak a csillapítás és késleltetés értékek változhatnak t-vel, hanem az utak száma (L k (t)) is lehet időben változó. Matematikailag egy rendszert nagyon nehéz leírni ilyen bonyolultságú csatornamodellel, ezért levezetésekben nem alkalmazzuk a (2.19) képletet. A könnyebb
22 FEJEZET 2. RENDSZERMODELL t h k (t, τ) τ 2.7. ábra. Példa idővariáns csatorna-impuzlusválaszra érthetőség kedvéért a 2.7. ábrán láthatjuk a 2.6. ábra idővariáns verzióját. Itt azonban nem tüntettük fel a paramétereket, hogy elkerüljük a káoszt az ábrán. Vegyük észre, hogy a késleltetés és csillapítás értékek is változnak az idő (t) függvényében. Sőt, ahogy telik az idő, megjelenik egy új terjedési komponens (azaz L k értéke négyről ötre növekszik). 2.3. A vevő oldala Mivel az uplink és downlink kommunikációt két külön egyenlettel jellemezhetjük (lásd (2.12) és (2.13) egyenleteket), további vizsgálatainkban is két ösvényt kellene járnunk. E helyett azonban csak az uplink esetre írjuk fel egyenleteinket, melynek két oka van: A downlink csatorna lényegesen egyszerűbben kezelhető a valóságban. Például pilot-jel alkalmazásával koherens vétel valósítható meg minden mobilállomáson. Egyenleteink könnyen átalakíthatóak a downlink esetre. Ott ugyanis a szuperponált jeleket torzította egy egységes csatorna. Az utóbbi állítást matematikailag úgy bizonyíthatjuk, hogy ha minden k-ra az h ul k (t) = hdl l (t) helyettesítéssel élünk a (2.13) egyenlet esetében, akkor a (2.12) alakot kapjuk vissza. A két eset tehát azonosan kezelhető. Ezért a továbbiakban egységesen az uplink esetre vonatkoznak egyenleteink, bár az ul rövidítést elhagyjuk. A vevő bemenetére érkező jel a következő alakban írható fel, ha K aktív felhasználó van a rendszerben: y(t) = = K h k (t) x k (t) + n(t) (2.20) k=1 K A k d k [i](h k (t) s k (t it )) + n(t). k=1 i Nevezzük most el c k (t)-nek a h k (t) s k (t) értékét. A c k (t) segítségével ugyanis (2.20) a következő alakra egyszerűsíthető: y(t) = K A k d k [i]c k (t it ) + n(t). (2.21) k=1 i
2.3. A VEVŐ OLDALA 23 Mint látható c k (t) bevezetése ügyes trükk volt, hiszen a csatornamodelltől függetlenül mindig ugyanazt az alakot kapjuk, így nem kell külön-külön bajlódni a különböző csatornákra vonatkozó egyenletekkel. Célunk egy szűrő építése, mellyel a kimeneten diszkrét, folytonos értékkészletű jeleket állíthatunk elő a bemeneten érkező folytonos idejű jelből. A diszkretizálás módja a következő: veszünk egy folytonos ψ i (t) jelet, melyből előállítjuk az y i = y(t), ψ i (t) diszkrét jelet. A diszkrét formára azért van szükség, mert a folytonos idejű jelek nagyon nehezen kezelhetőek. A diszkrét jel viszont már feldolgozható különböző matematikai algoritmusokkal. Ugyanakkor nem szabad elfelejteni, hogy a diszkrét formára alakítás információvesztéssel jár. Két esetet fogunk alaposabban megvizsgálni. Az egyik az általános vevőszűrő a 2.3.1. fejezetben, amely minden esetet leír, de éppen emiatt nincsenek speciális tulajdonságai. A másik a csatornához illesztett szűrő a 2.3.2. fejezetben, amely rengeteg kellemes tulajdonsággal rendelkezik, viszont idealista feltételezések szükségesek a működéséhez. 2.3.1. Általános vevőszűrő Legyen {ψ 1 (t), ψ 2 (t),..., ψ M (t)} C(, ) folytonos idejű, komplex értékkészletű, lineárisan független, folytonos függvények halmaza. A halmazban lévő függvények számát a halmaz dimenzióját M-mel jelöljük. A halmazt akkorára választjuk, hogy az megfelelően kis hibával írja le a {c 1 (t), c 2 (t),..., c K (t)} hullámformák halmazát. Például minden i-re létezzen (a ij ) sorozat mellyel c i(t) a ij ψ j (t) dt < ε, (2.22) j ahol ε egy előre rögzített konstans (a maximális hiba mértéke). Általánosan igaz, hogy tetszőlegesen kicsi ε értékhez létezik {ψ i (t)} halmaz, melyre a (2.22) feltétel teljesíthető. A legrosszabb esetben M >> K lesz. A ψ k (t)-k lineáris függetlenségét úgy kell elképzelni, hogy ψ j (t), ψ k (t) = 0, ha j k. Egy lehetséges és a gyakorlatban gyakran alkalmazott választási lehetőség a következő: ( ψ i (t) = T/M t (i 1) T ), (2.23) M ahol τ (t)-t a (2.4) egyenletben definiáltuk. A (2.23) egyenlet gyakorlatilag nem jelent mást, mint mintavételezést az adatfolyamból T/M időközönként. Minél nagyobb az M mértéke, annál sűrűbben veszünk mintát, és annál pontosabban írhatjuk le a folytonos jelfolyamot. Természetesen nem muszáj a (2.23) egyenlet függvényét alkalmazni. Tetszőleges más lineárisan független függvényrendszer alkalmas lehet a feladatra. OFDM demodulátorokban gyakran inverz Fourier-transzformációt alkalmaznak, mely szerint ψ i (t) = e ji( ω)t. Az ortogonalitás természetesen itt is biztosított lesz. A következő jelöléseket vezetjük be: y i [l] = y(t), A i ψ i (t lt ), (2.24)
24 FEJEZET 2. RENDSZERMODELL szimbólumközi áthallás: a szimbólumok egymásra lapolódnak és így zavarják egymást többszörös hozzáférésből adódó interferencia: több felhasználó adása zavarja egymást ρ ik [l] = c i (t), A k ψ k (t lt ), (2.25) n i [l] = n(t), A i ψ i (t lt ). (2.26) Az adaptív és a vak eljárások, amelyekben nincsen csatornához illesztett szűrő az y i [l] értékeket alkalmazzák arra a feladatra, hogy becslést adjanak az elküldött d k [i] szimbólumokra. Behelyettesítve a (2.24), a (2.25) és a (2.26) értékét (2.21)-be a következő alakra jutunk: y i [l] = K ρ ik [l j]d k [j] + n i [l], (2.27) k=1 j amely M diszkrét értéket állít elő K felhasználó minden egyes szimbólumához. Ha a ρ il [k] 0 feltétel teljesül k 0 esetén, akkor azt mondhatjuk, hogy szimbólumközi áthallás (intersymbol interference ISI) van a csatornán. A többszörös hozzáférésből adódó interferencia (multiple access interference MAI) a ρ il [0] 0, i l feltétel teljesülése esetén fordul elő. Az esetek többségében mindkét interferenciahatás megtalálható a csatornán. A további matematikai analízis érdekében vezessük be az alábbi vektorokat és mátrixokat: d[l] = (d 1 [l], d 2 [l],..., d K [l]) T, (2.28) y[l] = (y 1 [l], y 2 [l],..., y M [l]) T, (2.29) n[l] = (n 1 [l], n 2 [l],..., n M [l]) T, (2.30) ρ 11 [l] ρ 12 [l]... ρ 1K [l] ρ 21 [l] ρ 22 [l]... ρ 2K [l] R[l] =...... (2.31) ρ M1 [l] ρ M2 [l]... ρ MK [l] A fent definiált vektorokkal és mátrixokkal (2.27) a következő alakra hozható: avagy y[l] = R[l] d[l] + n[l], (2.32) y[l] = i R[l i]d[i] + n[l]. (2.33) Ha blokkokban továbbítjuk az adatainkat, azaz létezik hossza a d k [i] sorozatnak i-ben, akkor egy egyszerűbb egyenlethez juthatunk el. Legyen N a szimbólumok száma a blokkban. A vektorokat hipervektorokba, a mátrixokat hipermátrixokba rendezve d = (d T [1], d T [2],..., d T [N]) T, (2.34) y = (y T [1], y T [2],..., y T [N]) T, (2.35) n = (n T [1], n T [2],..., n T [N]) T, (2.36) R[0] R[ 1]... R[ N + 1] R[1] R[0]... R[ N + 2] R =......., (2.37) R[N 1] R[N 2]... R[0] a következő egyszerű alakra juthatunk: y = Rd + n, (2.38)
rét csatornamátrix: segítségével diszkrét alakban írhatjuk le a csatorna hatását 2.3. A VEVŐ OLDALA 25 ahol az R mátrixot diszkrét csatornamátrixnak nevezzük. Vegyük észre, hogy általában az R nem kvadratikus mátrix ahogyan R[i] sem volt az. Az egyetlen eset, amikor az R és az R[i] mátrixok kvadratikusak a K = M esete. Sajnos azonban még ekkor sem lehet általánosan olyan kedvező tulajdonságokat állítani a mátrixokról, ahogyan azt a 2.3.2. fejezetben tehetjük a csatornához illesztett szűrő esetében. A lényeg az, hogy tetszőleges csatornamodell és vevőszűrő esetében (2.38) felírható, ha a modulációs eljárás lineáris. Általános vevőszűrő túlmintavételezett esetben Az s k (t) hullámforma aláírások tartója lehet [0, T )-nél nagyobb is, illetve a felhasználók jeleit torzító h k (t) csatorna is kinyújthatja a [0, T ) intervallumból a c k (t) függvény tartóját. Az eredmény az lesz, hogy az első szimbólum előtt, illetve az utolsó szimbólum után mintavételezve is kaphatunk felhasználható jelkomponenseket, hiszen a diszkrét y kinyúlik a szimbólumtartományon kívülre is. Matematikailag ez azt jelenti, hogy a (2.34) egyenlet ugyan érvényben marad, viszont a többi hipervektor definícióját módosítanunk kell a (2.35) és a (2.37) közötti egyenletekben. Az y vektor hosszabb lesz, és emiatt a zaj n vektorát is meg kell hosszabbítanunk, illetve az R mátrixot is torzítani kell. Az elő- és utómintavételezett elemek számát κ e és κ u egész számok jelölik. Célszerűen úgy érdemes megválasztani κ e és κ u értékét, hogy R[ κ e ] és R[κ u ] még nullától különböző mátrixok legyenek, de R[ κ e 1] és R[κ u + 1] már legyen zérusnak tekinthető. A (2.35), a (2.36) és a (2.37) egyenletek az alábbi alakot veszik fel: y = (y T [1 κ e ], y T [2 κ e ],..., y T [N + κ u ]) T, n = (n T [1 κ e ], n T [2 κ e ],..., n T [N + κ u ]) T, R[ κ e ] R[ κ e 1]... R[ N + 1 κ e ] R[ κ e + 1] R[ κ e ]... R[ N + 2 κ e ] R =......., R[N 1 + κ u ] R[N 2 + κ u ]... R[κ u ] melyek ugyanúgy behelyettesíthetőek a (2.38) egyenletbe. A módosított egyenletek segítségével a vevő több információ birtokában hozhatja meg döntéseit az elküldött szimbólumokra vonatkozóan. A 2.8. ábrán láthatunk egy valós példát a túlmintavételezés szükségességére. Ha sima mintavételezést lásd a (2.23) képletet alkalmazunk, akkor az ábra példájában κ u értéke kettő, míg κ e értéke egy lesz, hiszen a c k (t) = h k (t) s k (t) függvény értéke a [ T, 3T ) intervallumon különbözik nullától. A diszkrét csatorna mátrix elhanyagolható elemei Az R diszkrét csatorna mátrix ρ ik [l] elemei között sok olyan található, mely nullához tart. Általában igaz például, hogy a felhasználók s k (t) hullámforma aláírása véges tartójú, és mivel a csatorna h k (t) impulzusválasza is véges tartójú, a bevezetett c k (t) függvény tartója is véges lesz. A valós idejű jelfeldolgozás megköveteli, hogy ψ i (t) értékei is véges tartójúak legyenek (ha nem lenne
26 FEJEZET 2. RENDSZERMODELL s k(t) T h k(t) T 2T 3T t T T c k(t) 2T 3T t T T 2T 3T t 2.8. ábra. Példa a túlmintavételezés szükségességére igaz, akkor végtelen ideig tartana a diszkrét y i [l] értékek előállítása), ezért biztosan igaz, hogy lim ρ ik[l] = 0. l Mitöbb, azt is mondhatjuk, hogy létezik egy κ e és egy κ u érték, hogy létezik (i, k) és (j, l) páros melyre ρ ik [ κ e ] 0 ρ jl [κ u ] 0, de minden (i, k) és (j, l) párosra ρ ik [ κ e 1] 0 ρ jl [κ u + 1] 0. sávmátrix: csak a diagonál közeli elemek különböznek nullától Ekkor az R diszkrét csatorna mátrix sávmátrix lesz. Vegyük észre, hogy az előző alfejezetben alkalmazott κ e és κ u is hasonló jelentést hordoz, mint itt. 2.3.2. A csatornához illesztett szűrő A csatornához illesztett szűrő (Channel Matched Filter CMF) egy speciális esete a 2.3.1. fejezetben tárgyalt általános eljárásnak. A csatornához illesztett szűrő egy olyan alkalmazás, amely képes adaptálódni a c k (t) függvényekhez, és így ψ k (t) értékeket c k (t) értékeivel helyettesíteni. Íly módon a ψ függvényekből álló vektor dimenziója meg fog egyezni K-val, a felhasználók számával. Ebből az is következik, hogy a csatornához illesztett szűrőnek K kimenete lesz egy szimbólumidő alatt. A csatornához illesztett szűrő k-adik felhasználóra vonatkozó l-edik szimbólumát d l [k]-vel jelöljük. A d l [k] értékét y(t) c l (t kt ) integráljaként számíthatjuk ki, azaz d l [k] = y(t), A l c l (t kt ), (2.39)
2.3. A VEVŐ OLDALA 27 ahol.,. továbbra is a skaláris szorzat. A kimeneti érték mint azt a későbbiekben matematikailag is bizonyítjuk maximális jelenergiát biztosít speciális feltételezésekkel élve. Ha ρ kl [i] a következőképpen definiáljuk ρ kl [i] = c k (t), c l (t it ), (2.40) akkor a (2.21) és a (2.39) alapján a (2.40)-t felhasználva a következő egyenletet kapjuk: d l [m] = i K ρ kl [m i]d k [i] + ñ l [m], (2.41) k=1 ahol ñ l [m] = n(t), c l (t mt ) színes zajkomponens. Ahogyan azt a (2.28), a (2.29), a (2.30), és a (2.31) egyenletek esetében tettük, vektorokba és mátrixba szervezve a megfelelő változókat, a (2.41) a következő alakra hozható: d[m] = i R[m i]d[i] + ñ[m]. (2.42) A (2.34), a (2.35), a (2.36) és a (2.37) egyenletekhez hasonlóan hipermátrixba és hipervektorokba rendezve a mátrixokat és vektorokat a csatornához illesztett szűrő kimenete a következő egyszerű alakot ölti: d = Rd + ñ. (2.43) Csatornához illesztett szűrő használatával a diszkrét csatornamátrix R kellemes tulajdonságokat örököl. A kellemes tulajdonságokat az alábbiakban foglaljuk össze: R[i] szimmetrikus, azaz R[i] = R H [ i], minden i-re, R hermitikus, azaz R H = R. Nem csak az R mátrixról mondhatunk el különleges tulajdonságokat. Az ñ diszkrét zajvektor kovariancia mátrixát (E { ññ H} ) is egyszerűen kiszámíthatjuk { E {ñ i [l]ñ k[m]} = E = } n(t)n (τ)c i (t lt )c k (τ mt ) dt dτ = E {n(t)n (τ)} c i (t lt )c k (τ mt ) dt dτ = = N 0 c k (t mt )c i (t lt ) dt = = N 0 ρ ki [l m], azaz az illesztett szűrő kimenetén megjelenő zaj kovarianciamátrixa arányos a diszkrét csatornamátrixszal: E { ññ H} = N 0 R. (2.44) Az arányosság tényét kihasználjuk a későbbiekben.
28 FEJEZET 2. RENDSZERMODELL A csatornához illesztett szűrő optimalitása Az előzőekben beláttuk, hogy az illesztett szűrő esetében a ψ k (t) = c k (t) választással a diszkrét csatorna mátrix (R) hermitikus alakot vesz fel. Ugyanakkor nem mondtuk el, hogy miért jó nekünk, ha ezzel a választással élünk, illetve hogyan valósíthatunk meg illesztett szűrőt. Az alábbiakban bebizonyítjuk, hogy bizonyos szituációkban ideális az illesztett szűrő, ugyanakkor mutatunk eseteket, amikor kiviláglanak hibái. A következő alfejezet pedig a Gereblye vevőt mutatja be, mellyel a gyakorlatban is megvalósíthatjuk az illesztett szűrőt. Vegyünk egy egyszerű esetet. Legyen egyetlen felhasználó jelen a csatornán a (2.43) által leírt egyenletben. Ekkor a (2.42) egyenletben csak skalárok szerepelnek vektorok helyett, így az alsó indexeket elhagyva a ρ[m i]d[i] + ñ[m] = ρ[0]d[m] + ρ[m i]d[i] + ñ[m].(2.45) d[m] = i i,i m Ha az s(t) hullámforma aláírás függvény tartója a [0, T ) intervallum, és a csatorna AWGN, akkor a szummás tagok nullává válnak, hiszen c(t) = h(t) s(t) = α s(t), és ρ[i] = Ac(t), Ac(t it ) = c(t)c (t it ) dt = (2.46) = α α s(t)s (t it ) dt = α α δ(i) = α 2 δ(i). (2.47) Azaz a (2.45) függvény a d[m] = A α 2 d[m] + ñ[m] alakra egyszerűsödik. A zajra vonatkozóan pedig az jel-zaj viszony: a jel és a zaj teljesítményének aránya. Rövidítve: SNR (Signal-to-Noise Ratio) ñ[m] = n(t)c (t mt ) dt = (m+1)t mt n(t)c (t mt ) dt (2.48) T = α n(t + mt )s (t) dt (2.49) 0 egyenletet kapjuk. Ha ki akarjuk számítani a kimeneti jel-zaj viszonyt, akkor a hasznos jel energiájára A 2 α 4 E { d 2} -et kapunk, a zajra pedig { T } T E {n[m]n [m]} = α α E n(t + mt )n (τ + mt )s(t)s (τ) dt dτ = = α α T 0 0 T 0 0 T = α 2 N 0 s(t)s (t) dt = α 2 N 0. 0 E {n(t + mt )n (τ + mt )} s(t)s (τ) dt dτ =
2.3. A VEVŐ OLDALA 29 A jel-zaj viszonyra így SNR kimeneti = α 4 A 2 α 2 N 0 = α 2 A 2 N 0 (2.50) kapjuk. Tekintve, hogy a bemeneten A2 N 0 volt a jel-zaj viszony, és a csatorna csillapítása miatt a hasznos jel csillapítása teljesítményben α 2, a lehető legjobb az optimális eljárással érhetjük el a (2.50) egyenletben leírt értéket. Mivel a csatornához illesztett szűrő kimenetéhez (2.50) által leírt jel-zaj viszony tartozik, az illesztett szűrő optimális vevőalgoritmus ebben a speciális esetben. Ne felejtsük el azonban, hogy milyen feltételezésekkel kellett élnünk a levezetés igazáért. Ugyan az egyfelhasználós csatorna feltételezését könnyedén feloldhatjuk csak a (2.2) egyenletet kell kielégíteni, és máris ugyanazt a kimeneti jel-interferencia viszonyt kapjuk 1, a véges tartójú hullámforma jel-interferencia aláírás és AWGN csatorna feltételeit azonban nem könnyű kirekeszteni a modellből (egy módszer lesz (2.52) bevezetése). Más szavakkal reális mobil csatornában kommunikáló reális adóberendezés jelét nem biztos, hogy optimálisan veszi egy csatornához illesztett szűrő. Bár itt elég óvatosan igyekeztünk fogalmazni, ahogyan azt a későbbiekben látni fogjuk valós rendszerekben az illesztett szűrő önmagában általában nem jó megoldás. viszony: a jel és az interferencia+zaj teljesítményének aránya. Rövidítve: SIR (Signal-to-Interference Ratio) A Gereblye vevő A Gereblye (vagy angol nevén Rake) vevő egy gyakorlati módszer a csatornához illesztett szűrő megvalósítására többutas, fadinges csatornán. A vevőberendezés onnan kapta a gereblye nevet, hogy a különböző jelkomponenseket úgy követik a vevő fogai 2, mint a gereblye fogai a földben a rögöket. A párhuzam nyomán ragadt az elnevezés a vevőberendezésre. A Gereblye vevőnél a csatornát többutas csillapítóval modellezzük, ahogyan azt a (2.17) egyenletben tettük. A gereblye fogai felelősek azért, hogy az egyes jelutakon érkező jelekhez szinkronizálják magukat, illetve megtalálják azt a komplex csillapításértéket (α kl ) az egyes jelutakon. A Gereblye vevő működésének szükséges feltétele, hogy a vevő ismerje a felhasználóhoz tartozó hullámforma aláírást (s k (t)). Ez nem szigorú feltétel, hiszen a vevőben valamit ismerni kell a kommunikációs csatornáról. Ha az uplinken és a downlinken ugyanazt a hullámforma aláírást alkalmazzák, akkor a vevőben biztosan ismert s k (t) értéke. A (2.17) egyenletet felhasználva c k (t) értékére L k c k (t) = h k (t) s k (t) = α kl s k (t τ kl ) (2.51) l=1 kapjuk. Tételezzük fel, hogy a különböző l értékekhez tartozó s k (t τ kl )-ek között a keresztkorreláció alacsony azaz a szumma tagjai korrelálatlannak 1 többfelhasználós csatornákon a SIR jobb mérőszám, mint az SNR, mert az idegen felhasználók zavaró hatását is számba veszi. Egyfelhasználós esetben nyilvánvalóan ugyanaz a kettő. 2 angolul finger of Rake. Magyarul viszont a gereblyének fogai vannak és nem ujjai, ezért itt is fogakat használunk. Felmerült még a köröm kifejezés lehetősége is, de ez szintén magyartalan lenne.
30 FEJEZET 2. RENDSZERMODELL (lineárisan függetlennek) tekinthetőek, azaz s k (t τ kl ), s k (t τ km ) 0 ha l m. (2.52) Ekkor úgy kezelhetjük a (2.51) képletet, mint L k darab korrelálatlan komponens összegét, azaz megfelelő módszerrel a komponensek egymástól függetlenül kezelhetőek. A gereblye L k darab fogból áll. Minden foga megkeresi azt a τ kl késleltetés értéket majd az α kl komplex csillapítást és fázistolást, amely az adott jelúthoz tartozik. A késleltetés keresés korreláció-számítással történik. A gereblye vevő a keresési fázisait az alábbi listában foglaljuk össze: 1. a τ -tal végigpásztázza a [0, T ) intervallumot, (a) minden τ -hoz a y(t), s k (t τ ) integrált kiszámítja, 2. ha az integrál értéke több szimbólum ideje alatt is egy előírt küszöb (ε) felett van, és még nincs ilyen késleltetéssel rendelkező fog, az integrálhoz tartozó τ értéket egy szabad foghoz rendeljük a gereblyén, 3. az új fogat aktiváljuk ˆτ kl = τ értékét finomhangoljuk, és kiszámítjuk a komplex ˆα kl értékét (a) ˆτ kl értékét finoman beállítjuk: az eredeti ˆτ kl környékén több τ -ra kiszámítjuk a keresztkorrelációs integrál értékét; a legnagyobb keresztkorrelációhoz tartozó τ lesz a ˆτ kl értéke (b) az ˆα kl értékét y(t), s k (t ˆτ kl ) várható értéke adja, azaz ˆα kl = E { y(t), s k (t ˆτ kl ) }, (c) az ˆα kl fázisát úgy kell beállítani, hogy y(t), ˆα kl s k (t ˆτ kl ) fázisának várható értéke d k [i] lehetséges fázisait kövesse 3, 4. folytatjuk az új fogak kijelölését, illetve a kis korrelációs együtthatóval rendelkező (azaz y(t), s k (t τ ) < ε) fogakat felszabadítjuk. A Gereblye vevő egy olyan szűrő, amely a fogai által reprezentált szűrők szuperpozícióját adja a kimenetén. A Gereblye vevő blokkvázlatát a 2.9. ábrán láthatjuk. Matematikailag a Gereblye vevőt a ψ k (t) = ˆL k l=1 ˆα kl s k (t ˆτ kl ) (2.53) impulzusválasszal írhatjuk le, ahol ideális esetben ˆL k = L k ˆα kl = α kl ˆτ kl = τ kl. 3 az egyértelmű megoldáshoz persze valamilyen extra információra van szükség. Például a 2.1.1. fejezetben szereplő szimbólumok mindegyike olyan volt, hogy 180 fokkal elforgatva őket ugyanazt a konstellációs diagrammot adták. Egy megoldás BPSK esetben a keretek egy meghatározott helyén például a { 1, +1, +1, +1, +1, +1, +1, 1} sorozatot sugározni. Így egyértelművé válik, melyik a +1 és melyik a 1 szimbólum.
2.3. A VEVŐ OLDALA 31 ˆα k1 s k (t ˆτ k1). dt 1. fog y(t) ˆα k2 s k (t ˆτ k2). dt 2. fog. d k [i] ˆα k ˆL k s k (t ˆτ k ˆL k ). dt ˆL k. fog Vezérlés: új fogak kijelölése és régi fogak felszabadítása ε 2.9. ábra. A Gereblye vevő blokkvázlata A (2.53) egyenlettel a vevőben előállított diszkrét szimbólumok ideális esetben megegyeznek a (2.39) egyenletben leírtakkal, azaz a Gereblye vevő képes arra, hogy csatornához illesztett szűrőt valósítson meg többutas környezetben. Az oly sokat emlegetett ideális eset természetesen nem mindig fordul elő, de gyakorlati tapasztalatok alapján elmondható, hogy a Gereblye vevő nagyon jól közelíti az ideális csatornához illesztett szűrőt, ha (2.52) teljesül. A Gereblye vevő leírása során csupán egyetlen dolgot tételeztünk fel, mégpedig azt, hogy a különböző l értékekhez tartozó s k (t τ kl )-ek között a keresztkorreláció alacsony (lásd (2.52)). Ha ez a feltételezés nem állja meg a helyét akkor a Gereblye vevő nem fog helyesen működni. Vegyük példaként azt az esetet, amikor erős aciklikus korreláció jellemzi a aciklikus korreláció: a hullámforma aláírást. Ha a 2.1.2. fejezetben ismertetett kódosztásos rendszerben Walsh-Hadamard kódokat alkalmazunk, akkor például a nyolc bit hosszú kódok halmazába az s k = [ 1, +1, 1, +1, 1, +1, 1, +1] T kódszó is beletartozik. Ez viszont (2.52) egyenletbe helyettesítve erős acilikus korrelációt mutat, hiszen minden l egész számra (τ kl τ km ) = l T c esetén (2.52) értéke magas lesz. A magas aciklikus autokorreláció ellen nem is tudunk védekezni a kód jellegéből adódóan. Ezért találtak ki más kódcsaládokat, ahol ugyan a keresztkorreláció mértéke a kódszavak között magasabb lesz, de cserébe az aciklikus korreláció mértéke alacsony szinten tartható. Egy ilyen kódcsalád a Gold-kódok halmaza, amely (2 k 1) hosszú, (2 k +1) darab kódot tartalmaz. Tetszőleges két kódszó között (2 k 2 )-vel lesz arányos a maximális keresztkorreláció, illetve a ciklikus és aciklikus korrelációk maximális mértéke. Nagy k értékek esetén e korlát kedvező tulajdonságokkal rendelkező kódot eredményez. A Gereblye vevő implementálása során ezért mindig körültekintően kell eljárni; a rendszer sajátosságaira, specialitásaira mindig ügyelni kell. A Gereblye vevő széles körben alkalmazott eljárás. Gereblye vevőt használnak a mai IS-95 rendszer készülékei, a Qualcomm CDMA szabványban is Gereb- korrelációt csak az átlapolódó részfüggvényekre számítjuk ki
32 FEJEZET 2. RENDSZERMODELL lye vevőt ajánlanak vevőalgoritmusként. A kezdeti UMTS berendezésekben is Gereblye vevőket fognak alkalmazni. Ugyanakkor nem szabad elfelejtkeznünk arról, hogy sajnos a (2.52) egyenlet nem mindig reális feltételezés, így a Gereblye vevő sem lehet mindig optimális megoldás, sőt, mint azt látni fogjuk a későbbiekben a modern rendszerekben kerülendő a használata.
3. fejezet Matematikai háttér Ebben a fejezetben összefoglaljuk a Korszerű mobil vevőalgoritmusok c. tárgyban ismertetett anyag megértéséhez szükséges matematikai formalizmusokat, matematikai definiciókat. Figyelmünket elsősorban a valószínűségszámítás, a matematikai statisztika különös képpen a becsléselmélet magasabb rendű statisztika és az információ elmélet területei felé fordítjuk.... 3.1. Statisztika Mint az ismeretes a mobil csatorna átviteli karakterisztikája erősen véletlenszerűen viselkedik... 3.1.1. Valószínűségi változók 3.1.2. Valószínűségi eloszlások és sűrűség függvények Az X valószínűségi változó F X valószínűségi eloszlás függvénye x = x 0 pontban pontosan annak a valószínűsége, hogy x x 0, azaz valószínűségi eloszlás függvény: F X (x 0 ) = P (x x 0 ). (3.1) A (3.1) egyenletből egyértelmű, hogy folytonos X valószínűségi változók esetén F X eloszlásfüggvény nemnegatív, monoton növekedő folytonos függvény, mely érték készlete a 0 F X (x) 1 tarományon definiált. A korábbi megállapításokból közvetlen következik, hogy F X ( ) = 0 és F X ( ) = 1. Sokszor azonban nem a valószínűségi változó eloszlás függvénye, hanem annak f X sűrűség függvénye áll rendelkezésünkre. Definició szerint az elosz- sűrűség függvény: lás függvény és a sűrűség függvény közt a következő kapcsolat áll fent: f X (x 0 ) = df X(x) dx. (3.2) x=x0 Abban az esetben, ha f X ismert, a kapcsolat felírható mint F X (x 0 ) = x0 f X (ξ)dξ. (3.3) 33 elegendő mintaszám esetén megadja, hogy az X valószínűségi változó adott realizációja x milyen sűrűn fordul elő egy mintában.
34 FEJEZET 3. MATEMATIKAI HÁTTÉR Feltéve, hogy x = (x 1, x 2,..., x n ) T egy n-dimenziós véletlen változó vektor, akkor a valószínűségi eloszlásfüggvényét a (3.1) szerint megadható mint F x (xx 0 ) = P (x x 0 ), (3.4) ugyanazon tulajdonságokkal, mint a (3.1) egyenletben leírt egyváltozós eloszlásfüggvény. A (3.4) kifejezésben szereplő x x 0 azt jelenti, hogy x vektor minden értéke kisebb vagy egyenlő x 0 megfelelő értékénél. Hasonló képpen a többváltozós sűrűségfüggvény felírható, mint a (3.4) többváltozós valószínűségi eloszlásfüggvény x vektor minden egyes komponentje szerinti deriváltja f x (x 0 ) = x 1 x 2... F x (x) x n, (3.5) x=x0 illetve az ismert többváltozós sűrűségfüggvény segítségével az F x (x 0 ) többváltozós valószínűségi eloszlásfüggvény megadható F x (x 0 ) = x0 f x (x) dx = x0,1 x0,2 x0,n... f x (x) dx n... dx 2 dx 1 (3.6) kifejezéssel, ahol x 0,i az x 0 véletlen változó realizáció vektorának i-ik komponense. Határeloszlás Több, különböző 1 XY valószínűségi változók összefoghatóak, melyek együttes eloszlásfüggvénye F XY (x 0, y 0 ) = P (x x 0, y y 0 ), (3.7) illetve x és y véletlen változó vektorok esetében a többdimenzisós együttes valószínűségi eloszlásfüggvény F xy (x 0, y 0 ) = P (x x 0, y y 0 ) = x0 y0 f xy (x, y) dydx, (3.8) határeloszlás:... ahol is P (x x 0, y y 0 ) kifejezés annak a valószínűségét adja meg, hogy x x 0 és y y 0 események együtt lépnek fel. Továbbá az f xy (x, y) együttes sűrűség függvény ismeretében definiálható x vektor f x(x) és y valószívűségi változó vektor f y(y) határeloszlása f x (x) = f y (y) = f xy (x, y) dy, (3.9) f xy (x, y) dx. (3.10) Az egyszerűség kedvéért a továbbiakban az eloszlásfüggvényre mint F (x), valamint a sűrűségfüggvényre mint f(x) fogunk utalni. 1 Akár különböző dimenziójú
3.1. STATISZTIKA 35 3.1.3. Momentumok Gyakorlaban egy jelfolyam f(x) sűrűségfüggvénye ritkán áll rendelkezésünre, azonban paraméterei, mint pl. várható értéke vagy szórása, közvetlenül megadható a megfigyelt jelfolyam becsült momentumaiból, még akkor is, ha a matematikai pontos definicióhoz szükségünk van f(x) sűrűségfüggvényre. Várható érték Jelöljön g(x) egy mennyiséget, mely lehet sakár, vektor vagy akár mátrix is. Ennek a mennyiségnek a várható értéke: E {g(x)} = g(x)f(x)dx, (3.11) ahol az integrálást itt is, a (3.6) egyenlethez hasonlóan, g(x) minden vektor elemére vagy mátrix komponensére végre kell hajtani, x összes eleme felett, mely integrálás eredményeképpen ismételten skalár, vektor vagy mátrix mennyiséget kapunk. Röviden ismertetjük a várható érték képzés tulajdonságait: 1. Linearitás: Legyen x i i = 1, 2,..., m különböző véletlen vektor, valamint a i i = 1, 2,..., m valamilyen ismert skalár együttható. Ezzel a várhatóérték operáció linearitása { m } m E a i x i = a i E {x i } (3.12) i=1 i=1 2. Linaáris transformáció: Legyen x ismételten egy m-dimenziós valószószínűségi változó realizációjának vektora, valamint A és B valamely ismert k m és m l mátrixok. Ezzel E {Ax} = AE {x}, E {xb} = E {x} B. (3.13) 3. Transzformáció invarianciája: Legyen y = g(x) definiálva, yf(y)dy = g(x)f(x)dx (3.14) Ezzel, még különböző f(y) és f(x) valószínűségi sűrűségfüggvények felhasználásával is, E {y} = E {g(x)}., korreláció, kovariancia, függetlenség korreláció, kovariancia: függetlenség: 3.1.4. Feltételes valószínűség 3.1.5. Magasabb rendű statisztika Kumulánsok Kurtózis
36 FEJEZET 3. MATEMATIKAI HÁTTÉR 3.2. Becslés MSE: Mean Square Error LSE: Least-Square Error ML: Maximum Likelihood Bayes: MAP: Maximum a Posteriori MSE, LSE, ML, Bayes, MAP
4. fejezet A többfelhasználós csatorna Ahogyan a (2.33) és a (2.38) képletek alapján látható, a vevőalgoritmus bemenetén egy olyan y vektor jelentkezik, amely lineáris függvénye a bemenetre adott d szimbólumoknak. Mivel a valóságban csak blokkokban visszük át az adatokat, a továbbiakban csak a y = RAd + n (4.1) egyenlettel foglalkozunk. Megjegyezzük, hogy ezáltal a folytonos (nem blokkos) átviteli rendszereket amelyeket a (2.32) és a (2.33) egyenletekkel írtunk le nem írják le az egyenleteink. Ha az R mátrix kvadratikus, diagonális és normalizált (RA = I), akkor a legegyszerűbb vevőalgoritmus az ún. egyfelhasználós vevő, amely ˆd = Φ A {y} (4.2) egyenlettel írható le, ahol Φ A {y} = min x A M { y x }, (4.3) azaz a Φ A {y} függvény az A halmaz y-hoz legközelebb eső elemét adja vissza. Például a BPSK rendszerben, ahol az A halmaz lehetséges két eleme a ±1 volt, a Φ ±1 {x} = sgn {x}, a szignum függvénnyel egyezik meg. Azaz BPSK rendszerben, diagonális diszkrét csatorna mátrix esetében egy egyszerű szignum döntés is elegendő: ˆd = sgn {y}. Ha az (RA) mátrix nem normalizált, akkor többállapotú moduláció esetén a (4.2) egyenletet normalizálni kell. A normalizált értékre kell végrehajtani a döntőfüggvényt. Ez esetben az alábbi alakot kapjuk: } ˆd = Φ A {diag [RA] 1 y, (4.4) ahol az R mátrixnak továbbra is kvadratikusnak és diagonálisnak kell lennie. Ha az R mátrix nem diagonális, a zavaró tényezők miatt a vevő teljesítménye jelentősen romlik. 37 egyfelhasználós vevő: az ISI és MAI mentes csatornák optimális vevője
38 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA többfelhasználós vevők: egyszerre több felhasználó adását figyelő vevő Sajnos azonban a diszkrét csatorna mátrix nem mindig diagonális, sőt ha nincs csatornához illesztett szűrő nem is kvadratikus. Azonban mielőtt megvizsgálnánk, hogy milyen módszerek léteznek nem kvadratikus mátrixok esetén, elmélyedünk a nem diagonális, de kvadratikus mátrixok világában; megvizsgáljuk milyen félreértések vezettek végül a többfelhasználós vevők tudományának elterjedéséhez. Ahol eredményeink kiterjeszthetőek a nem kvadratikus esetre is, ott élni fogunk a lehetőséggel. Azonban mindenütt, ahol külön nem hangsúlyozzuk, feltételezzük, hogy az illesztett szűrő kimenetét használjuk a vevőalgoritmus bemenetén, azaz y = d. Sajnos a diszkrét csatorna mátrix (R) soha nem kvadratikus. Még a GSM rendszerben is, ahol a felhasználók közötti ortogonalitást időrések és frekvenciasávok kijelölésével érik el, megjelenik a másodcsatornás interferencia fo- galma. A többszörös hozzáférésből származó zavaró hatást (MAI) az R mátrixban megjelenő, a diagonálison kívül eső nemnulla elemek jelzik. Ha nincs más felhasználó a rendszerben, a rádiós csatorna jellegéből adódóan akkor is számolnunk kell a szimbólumok egymásra lapolódásával (ISI), amely szintén diagonálison kívüli nemnulla elemeket jelent az R mátrixban. Bár a diagonálison kívül eső elemek jelentősen kisebbek, mint a diagonálisban lévők, hatásuk nem hanyagolható el, ahogyan azt látni fogjuk. Mindenesetre a 4.1.1. fejezetben a szimbólumközi áthallás mértékét elhanyagoljuk egyenleteinkben, hogy egyszerűbb képletekkel dolgozhassunk. A szimbólumközi áthallás figyelembevételével az egyenletek nem sokban módosulnak, így az elhanyagolás nem jár jelentős egyszerűsítéssel. másodcsatornás interferencia: azonos frekvenciát és időrést használó, de más cellában tartózkodó felhasználók zavaró hatása 4.1. A többfelhasználós csatorna problémája 4.1.1. Többfelhasználós vs. egyfelhasználós vevők Korábban a témával foglalkozók megfelelő közelítésnek vélték a MAI és az ISI hatását fehér zajszerűnek tekinteni, esetleg az ISI hatását ugyanúgy kezelték, mint az egyfelhasználós esetben, de a MAI hatását fehér zajnak tekintették. Így az R mátrixban a diagonálison kívül eső nemnulla elemek hatását mint zajnövelő tényezőt vehetjük figyelembe, a vevőalgoritmus maradhat a (4.4) egyenletben leírtaknak megfelelő. Rendszerszinten csak ki kell számolnunk a felhasználót jellemző jel-interferencia viszonyt és az egyfelhasználós csatornára kiszámítható, azonos jel-zaj viszonyhoz tartozó szimbólumhibaarány értéket kell kapjuk a többfelhasználós esetben is. Az i-edik felhasználóra vonatkozó jel-interferencia arány értéke a következőképpen számítható: ρ 2 ii SIR i = [0]A2 i j:j i ρ2 ij [0]A2 j + N 0 (4.5) A gyakorlati tapasztalat azonban azt mutatta, hogy a fenti gondolatmenetben valahol hiba van. Ugyanis a (4.5) által adott értékhez egy egyfelhasználós csatornán jóval kisebb szimbólumhiba-arány tartozik, mint amennyit mérni lehet a többfelhasználós esetben. Olyan tehát, mintha a zavaró felhasználók jelének energiája jobban torzítaná a jelet, mint a zaj. De miért van ez?
4.2. A TÖBBFELHASZNÁLÓS VÉTEL 39 A probléma abból a feltételezésből adódik, amit axiómaként elfogadtunk, holott nem lett volna szabad. Az ISI és a MAI ugyanis nem tekinthető fehér zajnak. Hatásuk sokkalta rombolóbb, mint egy fehér folyamat hatása. A következő alfejeztben láthatunk egy szélsőséges példát, melyben kiderül mennyire rossz feltételezés a zavaró hatást zajnak tekinteni. Egy példa a zajszerűség feltételezésének hibájára Vegyük a lehető legegyszerűbb 11 felhasználós (K = 11) csatornát, ahol a blokkméret a lehető legrövidebb: N = 1, az alkalmazott modulációs technika BPSK. Legyen a rendszert jellemző diszkrét idejű csatorna mátrix olyan, hogy a diagonálisban szerepeljenek egyesek (R ii = 1, normált rendszer), viszont az összes diagonálison kívüli elem legyen R ij = 0,1, ahol i j. Minden felhasználóra vonatkozó amplitudóérték legyen egységnyi, azaz A i = 1, minden i-re. Tételezzük fel továbbá, hogy a vizsgált időpillanatban az első felhasználó +1-et sugároz, az összes többi viszont 1-et. Ha behelyettesítünk a (4.1) egyenletbe, akkor y 1 = n 1 -et kapjuk, azaz az első felhasználó által sugárzott szimbólumra csak a zaj értéke alapján tudunk becslést adni, ami a zaj intenzitásától függetlenül 50 %-os hibaarányhoz vezet. Ugyanakkor a jel-interferencia viszonyra a (4.5) alapján SIR 1 = 1 1 10 = (4.6) j=1 0,12 + N 0 0,1 + N 0 értéket kapjuk, amely N 0 0 esetén SIR 1 = 10 = 10 db-hez tart. Ha kiszámítjuk az egyfelhasználós BPSK rendszer szimbólumhiba-arányát az SNR = 10 db értéknél, akkor kb. 0,0782 %-ot kapunk, ami nyilván nem egyenlő az 50 %-kal. A zajszerűség feltételezése így nem lehet megfelelő, más módszerre van szükség. 4.2. A többfelhasználós vétel Ahogyan azt láttuk tipikus mobil környezetben a diszkrét idejű csatornamátrix R nem diagonális, ezért itt nem lehet egyfelhasználós vevőket alkalmazni. A többfelhasználós csatornák egész egyszerűen nem tekinthetőek úgy, mintha több darab független egyfelhasználós csatornánk lenne. A vevőalgoritmusnak is figyelembe kell vennie a többfelhasználós csatorna kellemetlen áldásait; míg eddig az ISI hatásának kiküszöbölése volt a kutatás előterében, addig most már az ISI és a MAI hatását is ki kell küszöbölni a vevőberendezésekben. Szemünk előtt továbbra is a (4.1) egyenlet lebeg, amely alapján egy olyan eljárásra van szükség, melynek segítségével y-ból előállíthatunk egy olyan ˆd sorozatot, { amely} minimális hibával közelíti az eredeti szimbólumokat, azaz Pr ˆdk [i] d k [i] minimális minden i és k értékre. 4.2.1. A dekorrelátor Az első ötlet, mely a (4.1) egyenletet látva eszünkbe jut a következő. Szorozzunk be az (RA) mátrix inverzével balról, és az így kapott eredményből
40 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA képezzük a szimbólumok becsült értékeit. Az eljárást kinullázást kényszerítő kinullázást kényszer (angolul Zero Forcing ZF) eljárásnak, vagy dekorrelátornak hívják, mivel se- a zavaró hatásokat gítségével az ISI és a MAI hatását tökéletesen meg lehet szüntetni. Matematikailag a következőképpen néz ki az kinullázza egyenlet: dekorrelátor: megszünteti a korrelációt az információs folyamok között ˆd ZF = Φ A { A 1 R 1 y } = Φ A { d + A 1 R 1 n }, (4.7) ami kis zaj esetén láthatóan tökéletes megoldás. Az R mátrix mindig invertálható, ha a csatornához illesztett szűrő tökéletesen működik, mert Hermitikus mátrixot mindig lehet invertálni (lásd a 27. oldalon). Azonban ha a zaj jelentős, akkor az inverzmátrix-szal való szorzás miatt a zaj hatása hatványozottabban jelentkezik. Az inverzmátrixban ugyanis relatíve magas abszolút értékű elemek lesznek. Meg kell jegyezzük, hogy ha nem kvadratikus a diszkrét idejű csatorna mátrix, mert nincs csatornához illesztett szűrő a rendszerben, vagy az hibásan működik, és a csatorna mátrix nem invertálható, akkor is létezik megoldás amely ugyanazt a kimenetet biztosítja. Ekkor az invertálást egy apró csellel oldjuk meg: az eredeti R mátrixból egy kvadratikus mátrixot állítunk elő R H -rel szorozva balról. Minden értelmes R mátrixra amelynek oszlopai lineárisan függetlenek az R H R már invertálható. Matematikai alakban a vevőben az alábbi egyenletet hajtjuk végre: ˆd ZF = Φ A { A 1 (R H R) 1 R H y } = Φ A { d + A 1 (R H R) 1 R H n }, (4.8) ahol a zaj szintén jelentős erősítést szenved. A példára alkalmazott dekorrelátor A 39. oldalon található példában szereplő mátrixra például az inverz diagonálisában 19 18 elemek szerepelnek, a diagonálison kívüli elemek pedig 1 18 - dal egyenlőek, mellyel a vevő bemenetére érkező N 0 teljesítménysűrűségű bemeneti zajból 1,145N 0 teljesítménysűrűségű zaj lesz, ami durván 0,6 db-es jel-zaj viszony romlást jelent. Ez nem is tűnik olyan borzalmasnak. Azonban az [ ] 1,0 0,5 R = 0,5 1,0 mátrixnak már csúnyább az inverze: R 1 = [ ] 1,33 0,67, 0,67 1,33 mellyel a zajteljesítmény erősítési tényezője 2,22 lesz, azaz kb. 3,5 db. Másképpen mondva az adónak 3,5 db-vel nagyobb teljesítménnyel kell sugározni az adó-oldalon, mert a vevő a jel feldolgozása során 3,5 db jel-zaj viszonyt veszít. Ez már jelentős érték. Szerencsére az algoritmus egy kis módosításával megszabadulhatunk a zajnövekedésből adódó kellemetlenségektől; cserébe szükségünk lesz a zajteljesítmény (N 0 ) értékére. Erről szól a következő fejezet.
4.2. A TÖBBFELHASZNÁLÓS VÉTEL 41 4.2.2. Minimális átlagos négyzetes hibájú vevő A dekorrelátor eljárással az a probléma, hogy ész nélkül szoroztuk meg az y vektort balról az R inverzével, vagy pszeudo-inverzével. Fogalmazzuk meg úgy a feladatot, hogy egy olyan M mátrixot keresünk, melyre E { d My 2} = E { (d My) H (d My) } (4.9) azaz a négyzetes hiba minimális, ahol d a küldött szimbólumok vektora. Így már a zaj hatását is figyelembe tudjuk venni. Azonban a (4.9) egyenlet átalakítása helyett egy más irányt választunk, hogy egyszerűbben kezelhető egyenleteket kapjunk. Tetszőleges x vektorra x H x = Sp { xx H}, ahol Sp {A} az A mátrix spúrja, azaz a fődiagonális komponenseinek összege Sp {A} = k A kk. Ezért (4.9) a következő alakra írjuk át: E { (d My) H (d My) } = Sp { E { (d My)(d My) H}}. (4.10) Első lépésként átalakítjuk a spúron belüli mátrixot a (Mv) H = v H M H és M determinisztikus jellegének felhasználásával: E { (d My)(d My) H} = = E { dd H} E { dy H} M H M E { yd H} + M E { yy H} M H. (4.11) Ha a (4.11) egyenletbe a (4.1) egyenletünket behelyettesítjük, illetve visszaemlékezünk feltételezésünkre, hogy az szimbólumok egymással korrelálatlannak tekinthetőek a tökéletes csatornakódoló eljárás következtében, illetve elhisszük, hogy az n zaj és a d szimbólumok között nincs korreláció (E { nd H} = E { dn H} = 0), akkor azt kapjuk, hogy E { dd H} = I E { dy H} = E { dd H AR } = AR E { yd H} = E { RAdd H} = RA E { yy H} = E { RAdd H AR } + E { nn H} = RA 2 R + N 0 R, ahol I az egységmátrix. A (4.11) egyenletbe helyettesítve eredményeinket ahol E { (d My)(d My) H} = = I ARM H MRA + M(RA 2 R + N 0 R)M H = (I + 1 N 0 ARA) 1 + (M M)(RA 2 R + N 0 R)(M M) H, (4.12) M = A 1 (R + N 0 A 2 ) 1. (4.13) Mivel a (RA 2 R + N 0 R) mátrix nemnegatív definit, a (4.12) egyenlet jobb oldali tagjának spúrja mindig nemnegatív. Mitöbb, a spúr csak akkor zérus, ha M = M. A (4.13) mátrix adja a minimális értéket a (4.9) egyenletben. A minimális négyzetes hibájú vevőt leíró egyenlet a következő alakot ölti: ˆd MMSE = Φ A {My} = Φ A { A 1 (R + N 0 A 2 ) 1 y }. (4.14) Vegyük észre, hogy kis zaj N 0 0, vagy nagy adóteljesítmény A 2 0 esetén az MMSE megoldás a dekorrelátorhoz tart.
42 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA 4.2.3. Az optimális megoldás A 4.2.1. fejezet és a 4.2.2. fejezet lineáris megoldásokat adtak a többfelhasználós vevő problémájára. Azonban nem kell feltétlenül lineáris megoldásban gondolkodnunk. Ahogyan azt a bevezetőben is említettük, számunkra az a fontos, hogy a szimbólumhiba-arány minimális legyen. A valószínűségszámítás szemüvegével vizsgálva a dolgot, azt mondhatjuk, hogy az optimális megoldáshoz a legnagyobb valószínűségnek kell tartoznia. Másképp fogalmazva egy tetszőleges y vett jel esetén az optimális x A M vektor maximalizálja Pr {x y} valószínűséget: ˆd opt. = arg max x A M Pr {x y}. (4.15) A (4.15) egyenlet úgy is megfogalmazható, hogy azt a bináris sorozatot kell választani, amelynek a vett y vektor mellett a legnagyobb a valószínűsége. A gondolat jól hangzik, de ebben a formában nem alkalmazható. Ahhoz, hogy számítható érték váljon belőle, kicsit át kell gyúrnunk a (4.15) egyenletet, illetve mondanunk kell valamit y eloszlásáról. A Bayes-féle azonosságokat felhasználva Pr {x y} a következő alakra írható át Pr {x y} = Pr {y x} Pr {y} = Pr {y x} Pr {x}, Pr {y} melyben Pr {x} értéke konstans, hiszen a csatornakódoló eljárás hivatott a lehetséges szimbólumsorozatok halmazát egyenletes eloszlásúra állítani. Ha eredményünket a (4.15) egyenletbe akarjuk beilleszteni, akkor a Pr {y}-nak sincs jelentősége, hiszen x változtatásával a Pr {y} valószínűség nem módosul. Végül a (4.15) képletbe behelyettesítve azt kapjuk, hogy ˆd opt. = arg max x A M Pr {y x}. (4.16) A (4.1) képletben jól látszik, hogy ha d értéke rögzített, akkor y egy gaussi valószínűségi változó, melyben az egyetlen véletlen paraméter az n vektor. Az n vektornak nulla a várható értéke, és N 0 R a kovariancia mátrixa, ahogyan azt korábban már kiszámítottuk. Ezért az y vektor is N 0 R kovariancia mátrixszal rendelkezik, viszont a várható értéke nem nulla, hanem RAD. A csatorna kimenetén lehetséges y értékekre az alábbi sűrűségfüggvényt lehet felírni, ha d = x: ( 1 f(y x) = M exp (y RAx)H R 1 ) (y RAx). (4.17) 2π det(r)n0 2N 0 Adott tehát egy sűrűségfüggvény f(y x), bár nekünk (4.16) szerint egy valószínűséget Pr {y x}-t kell maximalizálni. Mivel gaussi eloszlásokkal foglalkozunk nyilvánvaló, hogy ahol maximális a sűrűségfüggvény, ott lesz maximális a valószínűség is. Ezért a továbbiakban a (4.17) egyenletet alakítjuk tovább, az f(y x) függvénynek keressük a maximumát. Mivel x változtatásával maximalizálnunk kell (4.17)-t, elég ha az exponensben szereplő taggal foglalkozunk, hiszen máshol nem jelenik meg az x vektor. Az exponensen belül is elegendő a számlálóval foglalkozni. A (4.16) képletetet tehát így írhatjuk át: arg max x A M Pr {y x} = arg min x A M [ (y RAx) H R 1 (y RAx) ]. (4.18)
4.3. NEMLINEÁRIS MEGOLDÁSOK 43 Az utóbbi egyenlőség R H = R és A H = A figyelembevételével az alábbi alakra módosul: arg min x A M [ (y RAx) H R 1 (y RAx) ] = = arg min x A M [ y H R 1 y x H A y y H A x + x H ARA x ] mivel y H R 1 y nem függ x-től és tetszőleges a vektorra a H + a = 2 Re {a}, mindent egybevetve azt kapjuk, hogy a feladat optimális megoldása az a vektor, melyre ˆd opt. ˆd opt. = arg min x A M [ 2 Re { y H A x } + x H ARA x ]. (4.19) Nem kell mást tenni, mint kipróbálni az összes lehetséges x szimbólumvektort, és amelyre a legkisebb a (4.19) értéke, az a vektor adja az optimális megoldást. Azonban a (4.19) egyenletbe történő összes lehetséges x behelyettesítése nagyon időigényes. A lehetséges szimbólumvektorok száma ugyanis exponenciálisan nő K és N függvényében is. Ezért a valós-idejű optimális megoldáskeresés lehetetlen. Példaként vegyük a K = 10 felhasználós, N = 10 hosszú blokkokat továbbító BPSK rendszert (M = KN = 100)! A lehetséges szimbólumvektorok száma A M = 2 100 10 30, amelyet korunk leggyorsabb számítógépe is feltételezve, hogy 10 GHz-es órajelfrekvenciával egyetlen órajelre kiszámítja (4.19) értékét kb. 3000 milliárd évig számolna. 4.3. Nemlineáris megoldások Írjuk fel a (4.1) értékét skaláris alakban, úgy mint a (2.41) egyenletben: y l [m] = A l ρ ll [0]d l [m] + A l ρ ll [m i]d l [i] + (4.20) } {{ } i:i m hasznos jel } {{ } ISI + i k:k l A k ρ kl [m i]d k [i] + ñ l [m]. } {{ } zaj } {{ } MAI Tegyük fel, hogy valamilyen oknál fogva biztosak vagyunk abban, hogy az d szimbólumvektor elemei megegyeznek ˆd-vel, kivéve egyetlen elemet, amelyről nincs információnk. Segít-e minket a ˆd ismerete abban, hogy becslést adjunk d utolsó elemére? Természetesen segít. Tegyük fel, hogy a (4.20) egyenletben kizárólag d l [m] értéke nem ismert, viszont minden más elemre d k [i] = ˆd k [i], ha i m, vagy k l. Képezzünk az eredeti y l [m] értékből egy y l [m] értéket, melyre y l[m] = y l [m] A k ρ kl [m i] ˆd k [i], (4.21) i:i m A l ρ ll [m i] ˆd l [i] i k:k l
44 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA amivel ha d k [i] = ˆd k [i] valóban teljesül, akkor y l[m] = A l ρ ll [0]d l [m] + ñ l [m]. (4.22) Nyilvánvaló, hogy a { } 1 ˆd l [m] = Φ A A l ρ ll [0] y l[m] (4.23) szabállyal a lehető legjobb megoldást érhetjük el ˆd l [m]-re vonatkozóan. Azonban ha a d k [i] = ˆd k [i] feltétel nem, vagy csak közelítőleg teljesül, akkor vajmi keveset mondhatunk el a (4.23) optimalitásáról. Márpedig egy valódi rendszerben nem biztosíthatjuk, hogy egyetlen szimbólum kivételével mindegyik tökéletesen ismert legyen, mert ez egy K = 10 felhasználós N = 10 hosszú csomagokkal üzemelő rendszer esetében 1 %-os csatornakihasználtságot eredményezne. Analitikusan viszont nehéz bármilyen tulajdonságot mondani a (4.23) egyenlet hibavalószínűségéről, ha a d k [i] = ˆd k [i] feltétel adott valószínűséggel teljesül a (4.21) képletben. A tapasztalat azonban azt mutatta, hogy akkor is elég kis hibával tud működni a vevő, ha a d k [i] = ˆd k [i] becsült értékek hibája nagy. Bíztatóan hangzik. De hogyan lehet a módszer segítségével egy vevőt építeni? Erről szól a következő fejezet. kétszintű vevő: a legegyszerűbb nemlineáris vevőstruktúra 4.3.1. Kétszintű vevő Mi lenne, ha az illesztett szűrő kimenetén (y) végrehajtva a (4.4) műveletet, a kapott becslést alkalmaznánk a (4.21) képletben? Az ötlet nem rossz, mitöbb a szakirodalom kétszintű vevőként (Two-Stage Detector TSD) ismeri. A működését leíró egyenletek a következőek: } ˆd [1] = Φ A {diag [RA] 1 y (4.24) y = y (R diag [R])Aˆd [1] (4.25) ˆd TSD = ˆd [2] = Φ A {diag [RA] 1 y }, (4.26) ahol, vegyük észre, a diagonális elemek eltüntetésével megakadályoztuk, hogy a hasznos jeleket is kivonjuk y képzésekor. Az illesztett szűrő bizonytalan értékeire becslést adva, a becsült értékek segítségével sikerül egy jobb becslést adni az esetek zömében. Természetesen ha az illesztett szűrő kimenete utáni döntés nagyon hibás, akkor a második szint döntése lehet rosszabb. A TSD blokkdiagramját a 4.1. ábrán láthatjuk. Ahogyan arra korábban is utaltunk, analitikusan nehéz bármit is mondani a kétszintű vevőről. Szimulációs tapasztalatok alapján mégis kijelenthetjük, hogy bizonyos esetekben sokkal jobb teljesítményt nyújt, mint a lineáris vevők. A kérdés az, hogy lehet-e még jobb struktúrát építeni? A válasz igen. Egy pillantást vetve a 4.1. ábrára, magától értetődő fejlesztési javaslat a szintek számát növelni. Ugyanis a szaggatott vonallal jelölt blokkokból egymás után többet alkalmazva a becslés pontossága minden blokk után javulni fog. Ha pontosabb a becslés a második szinten, akkor egy harmadik szint hozzáadásával még pontosabb lesz a becslés.
4.3. NEMLINEÁRIS MEGOLDÁSOK 45 diag [RA] 1 ΦA {.} y + + (R diag [R])A y diag [RA] 1 ΦA {.} [2] ˆd ˆd [1] 4.1. ábra. A kétszintű vevő (TSD) blokkdiagramja diag [RA] 1 Φ A {.} [n] ˆd +. y [n 1] + n. szint (R diag [R])A. diag [RA] 1 ΦA {.} ˆd [n 1]. [3] ˆd y [2] + + 3. szint (R diag [R])A diag [RA] 1 ΦA {.} ˆd [2] y [1] + + 2. szint (R diag [R])A ˆd [1] y diag [RA] 1 ΦA {.} 4.2. ábra. A többszintű vevő (MSD) blokkdiagramja 4.3.2. Többszintű vevő párhuzamos frissítéssel Ha újabb szintekkel növeljük a TSD struktúra szerkezetét, akkor már többszintű vevőről (Multi-Stage Detector MSD) beszélhetünk. A többszintű vevő többszintű vevő: több, a blokkdiagramja a 4.2. ábrán látható. Vegyük észre, hogy a 4.1. ábrához képest TSD-ben megismert csak annyi a különbség, hogy a szaggatott vonallal keretezett blokkból több blokk egymás után fűzve van, mint egy. A többszintű vevő működését leíró egyenleteket is hasonlóképpen építjük fel, mint a (4.24) (4.26) esetében. Ha a szintek számát n-re választjuk: } ˆd [1] = Φ A {diag [RA] 1 y (4.27) y [1] = y (R diag [R])Aˆd [1] (4.28) ˆd [2] = Φ A { diag [RA] 1 y [1]} y [2] = y (R diag [R])Aˆd [2].
46 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA ˆd MSD = ˆd [n] = Φ A {diag [RA] 1 y [n 1]}. (4.29) Vegyük észre, hogy most már nem csak egyetlen y vektor létezik, hanem minden egyes szint után egy újabbat képezünk, ezért ezeket is meg kellett számoznunk. A szintek számát (n) például a rendelkezésre álló számítási kapacitás korlátai alapján állíthatjuk be. Kérdés azonban, hogy stabil-e a rendszer, hiszen instabil rendszer esetén a szintek számának növelése nem jelenti jobb állapotok elérését. A kimenet oszcillálni kezdhet különböző állapotok között, vagy romló teljesítményű (pl. szimbólumhiba-arányú) jellemzőket mutathat. Sajnos, mint azt a 46. oldalon látható példában láthatjuk a párhuzamos frissítésű többszintű vevő nem stabil rendszer. További kérdés az, hogy vajon hatékony-e a fent definiált eljárás? Ha n = 10-re állítjuk a szintek számát és azt tapasztaljuk, hogy három szint után nem változik jelentősen a szimbólumhiba-arány, akkor feleslegesen pazaroljuk a számítási kapacitásunkat. Megoldás lenne érzékelni, hogy melyik frissítés után nem történik változás a kimenetben, azaz mely m értéknél teljesül a ˆd [m] = ˆd [m 1] egyenlőség. Ha létezik ilyen m < n érték, akkor befejezhetjük az iterációkat és ˆd MSD = ˆd [m] vektort adhatjuk a kimenetre. Sajnos azonban az instabilitás ténye miatt nem találjuk meg mindig m értékét. Nézzünk egy példát az instabil rendszerre! Példa egy instabil többszintű vevőre Legyen az illesztett szűrő kimenetén lévő jel y = [0,5 0,6] T -tal egyenlő, a rendszerben lévő két adóberendezés amplitúdója egységnyi (A = I), az alkalmazott modulációs technika BPSK alapú (d i { 1, +1} és Φ A {x} = sgn {x}) A rendszert jellemző diszkrét idejú csatorna mátrix alakja: R = [ ] 1,0 0,7. 0,7 1,0 A (4.27) képlet alapján ˆd [1] = [+1 +1] T, hiszen az y vektornak mindkét eleme pozitív. A (4.28) egyenlet alapján y [1] = [ ] 0,5 0,7 1 = 0,6 0,7 1 [ ] 0,2 0,1 értéket kapjuk a következő iteráció bemeneteként. A szignumos döntést végrehajtva ˆd [2] = [ 1 1] T adódik. Továbbfolytatva az iterációt y [2] = [ ] 0,5 0,7 ( 1) = 0,6 0,7 ( 1) [ ] 1,2 1,1 lesz, melyre ˆd [3] = [+1 + 1] T ismét. Ezután természetesen y [3] -ra ismét [ 0,2 0,1] T -et kapunk, mellyel ˆd [4] = [ 1 1] T lesz, stb. A kimeneti értékek tehát hol az [+1 + 1] T, hol pedig a [ 1 1] T állapotokat veszik fel, azaz a kimenet oszcillál két állapot között. A többszintű vevő ez esetben nem stabil. Megoldást jelenthet azonban a soros frissítés, mint azt a következő fejezetben látni fogjuk.
4.3. NEMLINEÁRIS MEGOLDÁSOK 47 4.3.3. Többszintű vevő soros frissítéssel Az előző fejezetben láttuk a többszintű vevő működésének alapjait és megállapítottuk, hogy létezik olyan eset, amikor instabillá válik a működése. Ha nem a stabilitás szemszögéből vizsgáljuk a dolgot, akkor is eszünkbe juthat egy módosítási javaslat. A (4.27) képletben ugyanis az ˆd [1] vektor komponenseit valószínűleg nem egyszerre, hanem egymás után, szekvenciális módon frissítjük. Ha (ˆd [1] ) 1 értéke rendelkezésre áll, akkor miért ne vehetnénk figyelembe (ˆd [1] ) 2 előállításakor? Feltételezve, hogy a becslések frissítési sorrendje ˆd 1 [1], ˆd 1 [2],..., ˆd 1 [N], ˆd 2 [1],..., ˆd K [N 1], ˆd K [N], (4.30) matematikailag a következő egyenletben fogalmazhatjuk meg a szekvenciális frissítés szabályát: [ ] [n+1] k 1 1 [ ] [n+1] ˆdk [i] = ΦA y k [i] ρ kl [i j]a l ˆdl [j] (4.31) A k ρ kk [0] i 1 j=1 N j=i+1 K l=k+1 l=1 [ ] [n+1] ρ kk [i j]a k ˆdk [j] [ ] [n] ρ kk [i j]a k ˆdk [j] [ ] [n] ρ kl [i j]a l ˆdl [j], j ahol [ ˆdk [i]] [n] a k. felhasználó i. szimbólumának n. iterációban kapott becsült értéke, továbbá a kiinduló értékek: [ { } [1] 1 ˆdk [l]] = ΦA A k ρ kk [0] y k[l]. (4.32) Bár matematikialag továbbra is nehezen kezelhető az eljárás stabilitása és konvergenciája, heurisztikus eszközökkel a soros frissítésű többszintű vevő stabilnak bizonyult. A későbbiekben megmutatjuk majd a párhuzamot a soros frissítésű többszintű vevő és a neurális hálózati megvalósítás között. Mivel a neurális hálózatok stabilitására létezik bizonyítás, szükségszerűen a soros frissítésű többszintű vevő is stabil. j Stabilitás vizsgálat a 46. oldal példáján A (4.31) képletet használjuk. Az a szerencse, hogy itt csak két elemű a ˆd vektor, ezért nem kell annyit számolnunk a szummákkal. Azonban javasoljuk az olvasónak, hogy próbálja ki a számítást összetettebb, több elemet tartalmazó mátrixokra is. [1] A (4.31) alapján ˆd 1 = sgn {0,5} = +1, melyet a (4.31) képletbe helyettesítve: ˆd [1] 2 = sgn { 0,6 0,7 } [1] ˆd 1 = sgn { 0,1} = 1.
48 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA interferencia-törlő eljárás: a zavaró hatások megszüntetésére törekedő nemlineáris módszer Ha tovább számítjuk az iterációkat { } ˆd [2] 1 = sgn 0,5 0,7 = sgn {1,2} = +1, ˆd [1] 2 azaz stabil a soros frissítésű többszintű vevőberendezés. Bár a fenti példa azt sugallhatja, hogy mindig stabil a rendszer, ne feledjük, hogy egyetlen esetből semmire sem következtethetünk. Sajnos analitikusan semmit sem tudunk mondani a soros frissítésű többszintű vevő stabilitásáról. Később azonban belátjuk, hogy ekvivalens a visszacsatolt neurális hálózatokkal, így a neurális hálózatokra alkalmazott levezetés következtében a soros frissítésű többszintű vevő is stabil kell legyen. 4.3.4. Interferencia-törlő eljárások A többszintű vevőket szokás interferencia-törlő eljárásoknak (Interference Cancellation IC) is nevezni. A frissítés jellegétől függően megkülönböztethetünk soros és párhuzamos interferencia-törlő vevőberendezéseket (SIC és PIC). Az elnevezés ugyanazokat a matematikai képleteket rejti, amelyeket a párhuzamos frissítésű többszintű vevő esetében a (4.27) (4.29) egyenletekben és a soros frissítésű többszintű vevő esetében a (4.31) képletben ismertünk meg. Ha megnézzük az egyenleteinket az interferencia törlés elnevezés is világossá válik; éppen az interferencia megszüntetésének elve vezérelt bennünket, amikor felírtuk őket. Az egyetlen szabad paraméter, amely módosításával javítani lehet a soros interferencia törlő eljáráson, a (4.30) képletben rejlik. Néhány cikkben azt javasolják, hogy a legerősebb felhasználó jelével indítsuk az eljárást. Ha a legerősebb felhasználó jelére hajtjuk végre a Φ A {.} műveletet, akkor az kisebb hibájú becslést fog eredményezni, mint ha mással kezdenénk. A többiek detektálásakor már a legerősebb felhasználó zavaró hatását le tudjuk vonni a bejövő jelfolyamból, így ők is előnyösebb helyzetbe kerülnek. Másodikként a második legerősebb felhasználó jelét kell megvizsgáljuk és így tovább. Lényegében minden marad a régiben, csak azt kell mondanunk, hogy a felhasználókat úgy számoztuk meg a (4.30) egyenletben, hogy az követi a jelerősség szerinti sorrendet. Eszerint az egyes felhasználó a legerősebb jelteljesítménnyel sugároz, a kettes a második legerősebb,..., végül a K. a leggyengébb teljesítményű. Gyakran a SIC és PIC eljárások csak kétszintű struktúrákra vonatkoznak. Mivel még fiatal tudományterületről van szó, és nincs kialakult szakzsargon, mindig ügyelni kell a szintek számának pontos meghatározására. 4.4. Visszacsatolt neurális hálózatok Mielőtt megnéznénk hogyan is kell egy neurális hálózatot alkalmazni többfelhasználós vevőként, sorra vesszük néhány jellemzőjüket és bebizonyítunk néhány hasznos tulajdonságot. Előre kikötjük azonban, hogy csak diszkrét idejű és visszacsatolt neurális hálózatokkal foglalkozunk. A visszacsatolt neurális hálózatok ugyanis nagyon hatékonyan alkalmazhatóak a többfelhasználós vétel problémájára mint azt a későbbiekben látni fogjuk. A diszkrétidejű működés pedig a DSP-ben való implementálhatóság feltétele. Megjegyezzük azonban, hogy a folytonos idejű visszacsatolt neurális hálózatok is
4.4. VISSZACSATOLT NEURÁLIS HÁLÓZATOK 49 v 1 [l + 1] W k1 v 2 [l + 1] v k 1 [l + 1] v k+1 [l] W... k2 W k,k 1 + W u 1 kk k Φ A {.} v k [l + 1] W k,k+1... v M [l] W km 4.3. ábra. A k. neuron felépítésének vázlata hasonló egyenletekkel írhatóak le, ezáltal nagyon hatékony és gyors megoldást jelenthetnének problémáinkra. Azonban analóg áramköri elemek szükségesek implementálásukhoz, így hangolásuk nehézkes. Maradjunk ezért a diszkrét-idejű visszacsatolt neurális hálózatoknál. A neurális hálózatok neuronokból felépülő mesterséges szerkezetek. Általában a neuronokban egy egyszerű képzési szabályt hajtunk végre, melyet iterációs egyenletnek hívunk. A neurális hálózatok tulajdonságait és működését iterációs egyenlet: a alapvetően az iterációs egyenletük határozza meg. Egy tipikus neuron képét a 4.3. ábrán láthatjuk. Az ábrán v l [l] jelöli az l-edik neuron kimenetét a l-edik iterációban. Előállításához az eggyel megelőző iteráció elemeire van szükség W li súlyozással W li az i-edik neuron kimenetének súlyozó faktora az l-edik neuron bemenetén, illetve u l egy független bemenet, melynek hatása mindig érvényesül. Az összegzett komponensekből egy nemlineáris döntőfüggvény (Φ A {.}) állítja elő a kimenetet, melynek tipikusan véges az értékkészlete ( l, l : v l [l] A). Az iterációs egyenlet alakja leolvasható a 4.3. ábráról, alapvetően azonban az határozza meg, hogy soros, vagy párhuzamos frissítést hajtunk-e végre. Párhuzamos frissítés esetén 1 v l [l + 1] = Φ A W ll u l W li v i [l], (4.33) i:i l vagy mátrixos alakban } v[l + 1] = Φ A {diag [W] 1 (u (W diag [W])v[l]). A többszintű vevőkről szóló részben alkalmazott gondolatmenetet követve, a (4.33) alapján könnyedén képezhetjük a soros (szekvenciális) frissítés esetére vonatkozó iterációs egyenletet: l 1 v l [l + 1] = Φ A {u l W li v i [l + 1] i=1 M i=l+1 W li v i [l] }. (4.34) Mivel a párhuzamos frissítésű neurális hálózat nem minden esetben stabil, a továbbiakban csak a soros frissítésű változattal foglalkozunk. neuronok frissítési szabályát leíró egyenlet
50 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA W 1M W2M... W 12 W 21 + + + u 1 u 2 u M Φ A {.} Φ A {.}... Φ A {.} v 1 v 2... v M WM2 WM1... 4.4. ábra. A neurális hálózat felépítésének vázlata A neurális hálózat szerkezete a 4.4. ábrán látható. A 4.3. ábráról megismert módon a neuronok egy összegzést és egy nemlineáris műveletet hajtanak végre. A neuronokat egy hálózatba rendezzük az ábrán. Vegyük észre, hogy a (4.33) és a (4.34) egyenletekben is a W mátrix fődiagonálisában szereplő elemeknek (W nn ) csak normalizáló hatása van. A továbbiakban kihasználjuk, hogy W hermitikus mátrix, illetve fődiagonálisában csak valós, pozitív értékek szerepelnek. Az utóbbi két feltételezés a konvergencia bizonyításához lesz szükséges. Az átláthatóság érdekében az alábbiakban összefoglaljuk kívánalmainkat: A W mátrix hermitikus: W = W H. A W mátrix fődiagonálisában szereplő elemek értéke valós és pozitív: W nn R +. A neurális hálózat szekvenciális frissítésű, azaz a (4.34) képletet alkalmazzuk iterációs egyenletként. energiafüggvény: egy monoton csökkenő függvény, amely a rendszerhez egyértelműen hozzárendelhető 4.4.1. A visszacsatolt neurális hálózatok energiafüggvénye A (4.34) iterációs egyenlettel definiált visszacsatolt neurális hálózatok létezik egy energiafüggvénye, amely minden iterációs lépésben monoton de nem szigorúan monoton csökken. A későbbiekben bebizonyítjuk, hogy a neurális hálózatok az alábbi energiafüggvénnyel jellemezhetőek: E(v = v[l]) = (v[l]) H W(v[l]) 2 Re { u H (v[l]) } avagy skalárisan = (v[l]) H W(v[l]) u H (v[l]) (v[l]) H u, (4.35) M M M M E(v = v[l]) = vi [l]w ij v j [l] u i v i [l] u i vi [l]. (4.36) i=1 j=1 i=1 i=1
4.4. VISSZACSATOLT NEURÁLIS HÁLÓZATOK 51 A következőkben bebizonyítjuk, hogy az energiafüggvénynek létezik alsó és felső korlátja. Továbbá bebizonyítjuk, hogy az energiafüggvény változása mindig negatív előjelű, vagy zérus. Mivel az energiafüggvény nem nő egyetlen lépésben sem és létezik alsó korlátja, ezért az energiafüggvény konvergál és létezik stabil állapota. Miután az energiafüggvényt a neurális hálózat állapota egyértelműen meghatározza, a soros frissítésű neurális hálózat stabil. Az energiafüggvény alsó korlátja Az energiafüggvénynek létezik alsó korlátja, mivel egy kvadratikus alakról van szó. Az alsó korlátot úgy határozhatjuk meg, hogy megkeressük a folytonos értékkészletű v vektorhoz tartozó minimális energiaértéket. Mivel a (4.35) energiafüggvény E(v) = ( v W 1 u ) H W ( v W 1 u ) u H W 1 u alakban is leírható, ahol W nemnegatív definit mátrix. Akkor lesz minimális a (4.35) függvény, ha v helyére W 1 u-t helyettesítünk: E(v) v H Wv u H v v H u v v=w 1 u= H WW 1 u u H v v H u E(v) v H u u H v v H u = u H v u v. Mivel v = W 1 u: E(v) u 2 1 W, (4.37) ahol W a W mátrix legnagyobb sajátértéke. Az eredmény szerint tehát az u vektor hosszából és a W mátrix legnagyobb sajátértékéből könnyen előállíthatjuk a (4.35) energiafüggvény alsó korlátját. Az energiafüggvény felső korlátja Az energiafüggvénynek csak abban az esetben létezik felső korlátja, ha az A halmaz legnagyobb amplitudójú eleme véges szám. Ellenkező esetben nem tudunk felső korlátot adni. Vegyük észre, hogy stabilitási szempontból nem érdekes a felső korlát, így végtelen nagy elemeket tartalmazó A halmaz esetében is stabil a neurális hálózat. A energiafüggvény legnagyobb értéket akkor használhatjuk, ha felső becslést akarunk adni a stabil állapot eléréséhez szükséges iterációs lépések maximális számára. Az energiafüggvény biztosan kisebb, vagy egyenlő az abszolút értékben vett tagok összegénél: E(v) v 2 W + 2 u v. Ha vi max -szal az A halmaz legnagyobb abszolútértékű elemét jelöljük: v max i = max x A x, akkor a felső korlátra adhatunk felső korlátot az alábbi alakban: E(v) M v max i W + 2 M v max i u. (4.38) Eredményünk fényében megállapíthatjuk, hogy az energiafüggvénynek létezik felső korlátja, mely az A halmaz maximális eleméből, a W mátrix legnagyobb sajátértékéből, az u vektor hosszából és dimenziójából egyértelműen meghatározható.
52 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA Az energiafüggvény változása Nézzük meg, hogy hogyan változik az energiafüggvény, ha éppen az l-edig neuron kimenetének értékét számítjuk az [l + 1]-edik iterációban (az energiafüggvény változását E[l, l]-lel jelöljük): E[l, l] = E(v = [v 1 [l + 1], v 2 [l + 1],..., v l [l + 1], v l+1 [l],..., v M [l]) A (4.36) képletet behelyettesítve E(v = [v 1 [l + 1], v 2 [l + 1],..., v l 1 [l + 1], v l [l],..., v M [l]). l 1 E[l, l] = (v l [l + 1] v l [l]) W lj v j [l + 1] + j=1 + M (v l [l + 1] v l [l]) W lj v j [l] + j=l+1 vi [l + 1]W il (v l [l + 1] v l [l]) + l 1 + + i=1 M i=l+1 v i [l]w il (v l [l + 1] v l [l]) + + ( v l [l + 1] 2 v l [l] 2) W ll u l (v l [l + 1] v l [l]) u l (v l [l + 1] v l [l]). Az azonos tagokat most egymás mellé rendezzük, és kihasználjuk, hogy a W herimikus mátrix (W ij = Wji ): l 1 E[l, l] = (v l [l + 1] v l [l]) W lj v j [l + 1] + M W lj v j [l] u l + j=1 l 1 +(v l [l + 1] v l [l]) Wljv j [l + 1] + j=1 + ( v l [l + 1] 2 v l [l] 2) W ll, amely az alábbi alakra egyszerűsíthető: j=l+1 M j=l+1 ljvj [l] u l + E[l, l] = ( v l [l + 1] 2 v l [l] 2) W ll + (4.39) + 2 Re (v l 1 M l[l + 1] v l [l]) W lj v j [l + 1] + W lj v j [l] u l. j=1 j=l+1 Vegyük észre, hogy a (4.39) képletben, a nagy kerek zárójelen belül ugyanaz a kifejezés jelenik meg, mint a (4.34) egyenletben a Φ A {.} függvény argumentumában csak éppen negatív előjellel és W ll -lel szorozva. Ahhoz, hogy belássuk, a (4.39) képletben definiált energiaváltozás valóban negatív értékű, először kell egy kis kitérőt tennünk. A (4.3) egyenlet alapján W
4.4. VISSZACSATOLT NEURÁLIS HÁLÓZATOK 53 ha x C tetszőleges komplex szám, y = Φ A {x}, az x-ből képzett A halmazba tartozó elem és z A egy eleme az A halmaznak, x y x z. Nyilvánvalóan a négyzetekre is teljesülnie kell az egyenlőtlenségnek (mivel a négyzetreemelés relációtartó művelet): x y 2 x z 2, vagy más alakban (x y) (x y) (x z) (x z). Elvégezve a szorzás műveletét és egy oldalra rendezve a tagokat y 2 z 2 + 2 Re {(y z) ( x)} 0. (4.40) Ha a (4.39) képletben kihasználjuk, hogy minden W ll érték pozitív valós szám, akkor el is oszthatunk vele. Az osztás a valósérték-képző operátoron belül és azon kívül is végrehajtható (mert valós) a relációjel sem fordul meg (mert pozitív). Az egyszerűbb kezelhetőség érdekében bevezetjük az y = v l [l + 1], z = v l [l] és x = 1 l 1 M W lj v j [l + 1] W lj v j [l] + u l W ll j=1 j=l+1 jelöléseket. Ekkor (4.39) alakja a bevezetett változókkal így írható fel: E[l, l] = W ll ( y 2 z 2 + 2 Re {(y z) ( x)} ) 0, amely (4.40) alapján és a W ll pozitív valós jellegének következményeként mindig kisebb, mint nulla. Következésképpen a (4.39) képlet mindig nempozitív, az energiafüggvény minden lépésben csökken, vagy nem változik: l, l : E[l, l] 0. Mivel bebizonyítottuk, hogy a (4.36) egyenletben definiált függvénynek létezik egy alsó korlátja és minden lépésben csökken, vagy nem változik az értéke, ezért az energiafüggvény egy szélsőértékbe méghozzá minimumba konvergál. A neurális hálózat szempontjából ez annyit jelent, hogy stabil a rendszer. Másrészről pedig a működése során a (4.36) energiafüggvényt csökkenti a visszacsatolt neurális hálózat. Az utóbbi tulajdonságot használjuk ki, amikor a többfelhasználós vétel céljára alkalmazzuk a következő fejezetben. 4.4.2. A visszacsatolt neurális hálózat, mint többfelhasználós vevőstruktúra Ha összehasonlítjuk a (4.19) és a (4.35) egyenleteket, akkor nagyon hasonló alakokat fedezhetünk fel. A neurális hálózat minden iterációs lépésben csökkenti a (4.35) értékét, az optimális megoldás pedig az a ˆd opt vektor, amely minimalizálja a (4.19) egyenletet. Legyen W = ARA (4.41) u = Ay (4.42) ˆd RNN = lim v[l]. l (4.43)
54 FEJEZET 4. A TÖBBFELHASZNÁLÓS CSATORNA Ekkor ugyanis a neurális hálózat energiafüggvénye az optimális megoldást jellemző (4.19) egyenlet lesz, mivel a (4.19) és (4.35) azonos alakra vezetnek. Másképpen mondva a neurális hálózat minden lépésben csökkenteni fogja azt az egyenletet, melynek globális szélsőértéke az optimális megoldás. Lehetséges lenne, hogy találtunk egy módszert amely optimális megoldása a többfelhasználós vevők problémájának? Vigyáznunk kell, mert két dolgot nem vettünk figyelembe. Először a W mátrixszal kapcsolatban megfogalmazott kívánalmainkat nem ellenőriztük. A W mátrixnak hermitikusnak kell lennie és csupa pozitív valós elemet kell tartlamaznia a főátlójában. A (4.41) alapján az ARA mátrixra kell belátnunk az utóbbi két tulajdonságot. Az ARA hermitikus, hiszen az R mátrix maga hermitikus volt, az A mátrix pedig diagonális és csupa pozitív valós elemet tartalmazott. Az R mátrix fődiagonális elemei szintúgy pozitív valósak, hiszen c i (t), c i (t) alakjukból adódóan nem lehetnek negatívak, vagy komplexek. Ezért a ARA mátrix fődiagonálisában lévő elemek is pozitív valósak lesznek. A feltételek teljesítésével tehát nincs probléma Másrészről viszont a 4.4.1. fejezetben nem láttuk be, hogy a neurális hálózat globálisan minimalizálja az energiafüggvényt, de még csak azt se, hogy ha a neuron állapotváltásához energiacsökkenés tartozik, akkor megtörténik a neuronban az állapotváltás (ez utóbbi belátható). Mivel a visszacsatolt neurális hálózat nem globális szélsőértékkereső eljárás, ezért az energiafüggvényben csak lokális szélsőértékeket képes megtalálni, így nem ad optimális megoldást. Az esetek többségében mégis nagyon jó hatásfokkal alkalmazható, ráadásul nagyon gyorsan konvergál. Egy nagynak mondható rendszerben kb. neurononként 5-6 frissítésre van szükség, hogy a hálózat elérje a stabil állapotát. Ezért a (4.43) képlet csak szimbólikus jelentésű; a valóságban a stabil állapot elérésével a neuronok további frissítése is feleslegessé válik. Az interferencia törlő és neurális eljárások ekvivalenciája A sorrendi frissítésű neurális hálózat gyakorlatilag ugyanazt csinálja, mint egy többszintű vevő. Az egyetlen számottevő különbség az, hogy míg a többszintű vevőknél a szintek száma előre meghatározott volt, és nem lehetett rajta változtatni, addig a neurális hálózatok esetében a neuronok végzik az összes szint számítási feladatait. A visszacsatolt neurális hálózat tehát gyakorlatilag nem más, mint egy adaptív többszintű vevő, melyben a szükséges szintek számát automatikusan határozza meg a hálózat. 4.4.3. Továbbfejlesztett visszacsatolt neurális hálózatok Folytonos aktiváló függvénnyel... Sztochasztikus Hopfield...
5. fejezet Csatorna Kiegyenlítés 5.1. Bevezető A mobil csatorna torzításának kijavítására különféle eljárásokat dolgoztak ki, melyek például lehetnek: diversity, kódolás, többvivős rendszerek, kiegyenlítés. Technikák, melyeket külön-külön vagy a nagyobb biztonság elérése érdekében többet együtt is alkalmaznak. A kiegyenlítő eljárást azonban mikrohullámú kommunikációs rendszerekben majdnem minden esetben használnak???. Röviden, pár mondatban összegzem ezen lehetőségeket. Diversity. Az átviendő jeleket külön, egymástól független csatornákon juttatjuk el a vevőig. Lehetséges változatai közül néhány : frekvencia diversity, ahol a minél kisebb frekvencia távolság nyújt optimális megoldást, tér diversity, mely eljárásnál egyszerre több antennával (általában a vevő oldalon) próbáljuk a fading okozta teljesítmény letörést kiküszöbölni, szög diversity, polarizációs diversity, mely eljárásnál ugyanazt az információt mind a H, mind a E síkban egyszerre továbbítjuk, út diversity, ahol az átvitel több különböző úton valósul meg, idő diversity, ahol az információt egy előre definiált idő elteltével újraadjuk. 55
56 FEJEZET 5. CSATORNA KIEGYENLÍTÉS Kódolás. Elsősorban a csatorna kódolással ismert és ezáltal kezelhető redundanciát csatolunk az adatfolyamhoz. A tipikus kódoló eljárások lehetnek konvolúciós vagy blokk kódolók. Amennyiben az így kódolt adat átvitelét fading megakadályozza, akkor a dekódoló képes a hiba kijavítására. Túl sűrű fading becsapások esetén azonban nem nyújt elegendő védelmet, ezért egyedül ezt az eljárást nem is használják. Többvivős rendszerek. Mikrohullámú rendszerekben nagyon rossz terjedési körülmények között használható ez a megoldás???. Az átviendő bitfolyamot párhuzamosan több vivőre modulálják, melyeket azután egyszerre sugároznak ki. Kiegyenlítő. Ez az eljárás elsősorban a szimbólumközi áthallást kompenzálja, amit a többutas terjedésű, idődiszperzív csatorna okoz a vevőben bit hibákat eredményezve. Tágabb értelemben minden jelfeldolgozó eljárást, mely csökkenti a szimbólumközi áthallást, csatorna kiegyenlítőnek lehet nevezni???. Mivel a mobil csatorna változása véletlen (sztochasztikus), ill. időfüggő folyamat, a kiegyenlítőnek követnie kell a csatorna változásait, ezért a kiegyenlítőnek adaptívnak kell lennie. 5.2. Kiegyenlítők osztályozása Az adaptív kiegyenlítőket többféleképpen lehet osztályokba sorolni. Az egyik megközelítés szerint beszélhetünk ellenőrzötten tanított (supervised) vagy nem ellenőrzötten tanított (unsupervised) eljárásokról. Az előbbi osztályba tartoznak azok a kiegyenlítők, amelyek az átvitel során periodikusan egy megfelelő fix- vagy változó hosszúságú álvéletlen, a vevő által is ismert tanító bitfolyamatot küldenek a vevőnek. Ennek segítségével a kiegyenlítő a saját paramétereit folyamatosan változtatja. Mivel a vevőnek pontosan ismernie kell a tanító bitszekvencia kezdetének érkezési idejét, a legkönnyebben olyan időosztásos rendszerekben alkalmazható, mint az Európában széleskörben elterjedt GSM hálózat. Minden normál- és dummy börszt közepén megtalálható ez az ismert, fix hosszúságú (26 bit) bitfolyam, amit midamblenek neveznek. (Az Access burst is tartalmaz 41 bit hosszú training szekvenciát, ami az első 8 tail bit után helyezkedik el.)???. Léteznek azonban olyan felhasználási területek, ahol nehezen megvalósítható, vagy nem megoldott a tanító jelek átvitele. Ilyen esetekben szükség van olyan kiegyenlítő algoritmusokra, amelyek képesek mindenféle tanító bitfolyam nélkül az átvitt jel eredeti karakterisztikájának visszaállítására. Ezeket a modern algoritmusokat blind (vak) algoritmusoknak nevezik. Jelenleg a legelterjedtebben alkalmazott a CMA (Constant Modulus Algorithm), amelyet állandó burkolójú modulált jelek feldolgozására használnak. A kiegyenlítő súlyait úgy változtatja, hogy a vevőben a vett jel burkolója állandó maradjon. Erről a kiegyenlítő családról bővebben a xxxxx alfejezetben írok. A tanított és nem tanított kiegyenlítő struktúrákat ismét két részre lehet osztani. A szekvenciális becslés és szimbólum becslés osztályaiba. A szekvenciális becslő a korábban vett jelekből használ fel egy sorozatot a követ-
5.2. KIEGYENLÍTŐK OSZTÁLYOZÁSA 57 kező szimbólum becslésére, amit ezért végtelen memóriájú kiegyenlítőnek is neveznek. A legelterjedtebb ilyen típusú becslő a Maximum Likelihood Sequence Estimator (MLSE), amelyet általában a Viterbi-Algoritmussal (VA) valósítanak meg. Az algoritmus egy olyan szimbólum sorozatot választ az r i vektorból, amit az s(k) vektor a legnagyobb valószínűséggel valószínűbben tartalmaz. Tehát: l = arg max {Pr r s {r(k) = r j s(k)} (5.1) j A véges memóriájúnak tekintett szimbólum (Symbol-by-Symbol, SbS) becslő azonban csak egy fix számú bemeneti mintát használ az átvitt jel detektálására. Az ilyen típusú kiegyenlítő optimális döntési függvényét a Maximum a Posteriori (MAP) kritérium szolgáltatja, amit a Bayes-elméletéből származtatunk. Ezért szokás ezeket a kiegyenlítőket Bayes- vagy MAP kiegyenlítőknek is nevezni. A végtelen memóriájú MAP kiegyenlítő jobb teljesítményt is nyújthat, mint az MLSE, de számítási bonyolultsága messze nagyobb a vetélytársénál. Ezért inkább a véges memóriájú MAP kiegyenlítőket alkalmazzák, amelynek bonyolultsága ugyan sokkal kisebb végtelen memóriájú változatánál, de még mindig összetettebb az MLSE-nél. Mivel a szimbólum becslő eljárásra támaszkodó kiegyenlítő architektúrákkal bővebben kívánok foglalkozni, a xxxxxxx alfejezetben még kitérek az MAP kritérium felelevenítésére. Egy másik osztályozás szerint a kiegyenlítőket lehet lineáris és nemlineáris csoportokba sorolni attól függően, hogy a döntés a korábban detektált szimbólum (szekvencia) lineáris vagy nemlineáris függvénye szerint történik. Azonban vigyázni kell a nemlineáris kifejezéssel. A nemlinearitás fogalma az irodalomban többféleképpen jelent meg. Jelentheti azt, hogy a kiegyenlítő nemlineáris műveleteket végez a feldolgozandó jelen, illetve azt, hogy a lineáris művelethez korábbi döntési eredményt is felhasznál a kiegyenlítő. A távközléssel foglalkozó irodalom a hagyományos döntésvisszacsatolt kiegyenlítőt (DFE -Decision Feedback Equalizer) nemlineárisnak tünteti fel, mert ugyan a döntés a vett jel lineáris függvénye szerint történik, azonban a visszacsatolással nemlinearitás kerül a hálózatba. A lineáris adaptív kiegyenlítők olyan lineáris FIR szűrők, amelyek a csatorna által elrontott, vett jelsorozaton egy inverz szűrést hajtanak végre. A tanítást olyan adaptív algoritmusokkal, mint LMS vagy lattice végzik, úgy hogy a minimális közepes négyzetes hiba (Minimum Mean Square Error (MMSE)) kritériumot veszik figyelembe, ami így a Wiener-szűrő megoldáshoz vezet. A nemlineáris jelfeldolgozási technikákban jelenleg is tartó fejlesztések miatt a nemlineáris kiegyenlítőknek széles köre ismert. A legkülönbözőbb eljárások a Volterra-szűrőre, a többrétegű perceptron hálózatra (Multi Layer Perceptron-MLP), a radiális bázisfüggvény hálózatra (Radial Basis Function- RBF) vagy fuzzy szűrőkre támaszkodhatnak. A fent említett nemlineáris adaptív kiegyenlítő architektúrákról jó áttekintést lehet nyerni pl. a??? szakirodalmakból. A nemlineáris jelfeldolgozási technikákban jelenleg is tartó fejlesztések miatt a nemlineáris kiegyenlítőknek széles köre ismert. A legkülönbözőbb eljárások a Volterra-szűrőre, a többrétegű perceptron hálózatra (Multi Layer Perceptron-MLP), a radiális bázisfüggvény hálózatra (Radial Basis Function-
58 FEJEZET 5. CSATORNA KIEGYENLÍTÉS RBF) vagy fuzzy szűrőkre támaszkodhatnak. A fent említett nemlineáris adaptív kiegyenlítő architektúrákról jó áttekintést lehet nyerni pl. a [9,13,14,17][18,19,21,22,24] szakirodalmakból. Jelen dolgozat következő fejezetében elsősorban nemlineáris, tanított kiegyenlítő algoritmusokkal foglalkozom, ahol a nemlinearitás fogalmát az utóbbi megfogalmazás szerint veszem figyelembe, tehát a döntés a vett jel és a korábban detektált jel nemlineáris kombinációja alapján történik. 5.3. Nemlineáris ellenőrzötten tanított kiegyenlítők 5.3.1. Csatorna állapotok, a kiegyenlítési probléma geometriai megközelítése Ebben a fejezetben az optimális szimbólum becslő kiegyenlítő döntési függvényét mutatom be. Az 1. fejezetben leírt alapsávi digitális kommunikációs rendszert figyelembe véve az analóg csatornát egy FIR szűrővel modellezhetjük. A kiegyenlítő az ebből a csatornából kibocsátott r(k) = [r(k), r(k 1),..., r(k n + 1)] T R n, n dimenziós tér vektorait használja bemenetként, ahol n a kiegyenlítő hosszát, (n 1) a kiegyenlítő rendjét határozza meg. A vett jelet felírhatjuk a zajmentes hasznos jel és a nulla várhatóértékű σ s varianciájú Gausz-zaj összegeként. r (k) = ˆr (k) + n (k), ahol ˆr(k) R n, valamint az n(k) zajnak is csak az R n teret kifeszítő bázisfüggvényeivel felírható komponenseit vesszük figyelembe. Minden zaj nélküli vett jelvektor egy lehetséges csatorna állapotot reprezentál. A csatorna állapotokat a csatornán átviendő s(k) = [s(k), s(k 1),..., s(k m n + 2)] T R m+n 1 szimbólum vektor és a Toeplitz alakú csatorna impulzus válasz mátrix H R n (m+n 1) szorzata határozza meg. A csatorna rendjét m jelöli. Tehát a jel m úton terjed és a szimbólumközi áthallás (ISI) n bitre terjed ki. A csatorna paraméterekből felírható csatorna mátrix a következő: h 0 h 1 h 2 h m 1 0 0 h 0 h 1 h m 2 h m 1 0 H =. 0.................... 0 0 h 0 h 1 0 0.. h m 1 Mivel a csatorna bemeneti s ( k) vektorának N = M m+n 1 kombinációja létezik [21], ahol M a szimbólum ABC méretét jelöli, így zaj nélküli vett ˆr ( k) jelvektor is legfeljebb N cs csatorna állapotot tud felvenni, melyeket c j - vel jelölök. c j = ˆr = H s j
5.3. NEMLINEÁRIS ELLENŐRZÖTTEN TANÍTOTT KIEGYENLÍTŐK 59 A d<n kiegyenlítő késleltetéshez és a bemeneti tér n dimenziójához tartozó, N cs csatorna állapotból felépített tartomány C n,d = {c j,d }, 1 j N a csatorna bemeneti szimbólum vektorának s(k d)-től függően M diszjunkt alkészletre bontható [14]. A d = n esetben c j,d =c j a fenti egyenlet szerint. M= 4 esetre ahol, C n,d = C ++ n,d C n,d C+ n,d C + n,d, C ++ n,d = {ˆr(k) Rn s(k d) = +1 + j }, C n,d = {ˆr(k) Rn s(k d) = 1 j }, C + n,d = {ˆr(k) Rn s(k d) = +1 j }, C + n,d = {ˆr(k) Rn s(k d) = 1 + j }. (5.2) Egy egyszerű példának vegyünk egy csatornát és egy kiegyenlítőt, melyeknek két-két együtthatója van. Az összes lehetséges csatorna kimenetet a következő egyenletben lehet összegezni [ ] [ ] s (k) r (k) h0 h = 1 0 r (k 1) 0 h 0 h 1 s (k 1) s (k 2) + [ n (k) n (k 1) amit tömörebben vektor mátrix felírással r k = Hs k + n k lehet megadni. Legyen a csatorna impulzus válasz z-transzformáltja h(z) = 0,5 + 1 z 1. A könnyebb ábrázolás érdekében válasszuk a szimbólumok számát M = 2- nek. A (3) egyenletnek megfelelően N = 2 2+2 1 = 2 3 = 8 különböző csatorna állapotot lehet megkülönböztetni. Az összes lehetséges csatorna állapotot az 1. Táblázat tartalmazza, valamint a 6. ábra mutatja a kiegyenlítő két együtthatójának függvényeként. (Piros háromszögekkel a C m +,valamint kék négyzetekkel a Cm halmazba tartozó elemeket jelöltem.) A 6. ábrán látható, hogy amint n(k) zajt is figyelembe vesszük, a 8 csatorna állapotot reprezentáló pont, 8 klaszterré fejlődik, ahol az ˆr (k) 8 lehetséges kimenetét ezen klaszterek középpontjának lehet tekinteni. Tehát a kiegyenlítési probléma klasszifikációs feladattá válik, ahol a zajos r(k) vektor által kifeszített megfigyelési tér területeit kell az s(k) bemeneti vektor lehetséges állapotaihoz rendelni. Ha a kiegyenlítő átviteli függvénye G (z) = m g i z i, akkor a g r (k) = 0 egyenlet eredménye a határ, ahol () a komplex konjugált operátor. Lineáris kiegyenlítők ezt a klasszifikációs problémát egy döntő egységgel valósítják meg, ami egyszerű esetben a sign(x) függvény lehet. Ez az egyenlet inkább egy egyenest ír le, mint egy hipersíkot. Ez a sík a megfigyelési teret két részre osztja. Azonban, ha a csatorna nem minimálfázisú, mint az a példában szerepel, akkor egy egyenessel nem lehet a két osztályt egymástól elválasztani [13]. i=0 ],
60 FEJEZET 5. CSATORNA KIEGYENLÍTÉS c j s(k) s(k-1) s(k-2) ˆr (k) ˆr (k 1) 1 c 1 1 1 1 1.5 1.5 2 c 2 1 1-1 1.5-0.5 3 c 3 1-1 1-0.5 0.5 4 c 4 1-1 -1-0.5-1.5 5 c 5-1 1 1 0.5 1.5 6 c 6-1 1-1 0.5-0.5 7 c 7-1 -1 1-1.5 0.5 8 c 8-1 -1-1 -1.5-1.5 5.1. táblázat. Adaptív kiegyenlítők osztályozása Ha egy minimumfázisú csatornát választunk, akkor a csatorna állapotot reprezentáló pontok különböző távolságra kerülnek a döntési határhoz. Megeshet, hogy egy pont túl közel kerül a döntési határhoz és az n(k) zaj hatására a vett jel akár át is kerülhet a döntési határ túloldalára, ami hibás döntést eredményez. Tehát keresnünk kell olyan eljárásokat, melyek képesek kezelni a nem minimálfázisú csatornákat is, valamint olyan döntési határt, ami a zaj függvényében is változik. Ez a geometriai leírás közvetlenül elvezet a bayes-i megközelítéshez. 5.3.2. Bayes-tétel, MAP kritérium, az optimális szimbólumbecslés Egy digitális kommunikációs rendszer forrása bináris kommunikációt feltételezve, két különböző M i, i = 1,2 eseményt adhat, P (M 1 ) = P 1 ill. P (M 2 ) = P 2 fellépési- vagy másként a-priorivalószínűséggel. A lineáris csatorna torzítása után az M i események a vevőben megegyeznek az F i, i= 1, 2 feltételezéssekkel, amelyek közül a vevőnek egy optimalizáló kritérium segítségével a vett r(k) vektor kiértékelésével dönteni kell. Négy esetet lehet megkülönböztetni mivel M 1 és M 2 eseményre is dönthet a vevő F 1, vagy F 2 feltételezéssel. Könnyen észrevehető, hogy az M 1 -re adott F 1 válasz és az M 2 -re adott F 2 válasz helyes, míg a másik két lehetőség hibás döntéshez vezet. Lehetőség van egy ún. rizikófüggvény felírására, amit a Bayes-kritériummal minimalizálni kell. R = K 11 P 1 P (F 1 M 1 )+K 21 P 1 P (F 2 M 1 )+K 12 P 2 P (F 1 M 2 )+K 22 P 2 P (F 2 M 2 ),(5.3) ahol K ij az i. vevő döntési költsége a j. forrás oldali eseményt figyelembe véve. P (F i M j )annak a feltételes valószínűsége, hogy az adó az M j eseményt adta és a vevő a F i feltételezést választotta. A feltételes valószínűség felírható, mint a döntési téren értelmezett feltételes sűrűségfüggvény integrálja. Így (5.3) felírható (5.2) segítségével [15] R = K 11 P 1 +K 22 P 2 C + f C M1 C f C M2 (r M 1 ) dr + K 21 P 1 (r M 2 ) dr C f C M1 (r M 1 )dr + K 12 P 2 C + f C M2 (r M 2 )dr.(5.4)
5.3. NEMLINEÁRIS ELLENŐRZÖTTEN TANÍTOTT KIEGYENLÍTŐK 61 Mivel azonban C + és C altereknek metszete üres, valamint a teljes döntési térre kiegészítik egymást, ebből következik, hogy f C Mi (r M i )dr = 1 f C Mi (r M i )dr. C C + Ezzel a (5.4) egyenlet átírható, a következőképpen R = K 22 P 2 +K 21 P 1 + (P2 [K 12 K 22 ] f C M2 (r M 2 ) P 1 [K 21 K 11 ] f C M2 (r M 1 ) ) dr.(5.5) Az egyenlet jobb oldalán az első két tag nem függ a döntési tér változásától, tehát a szélsőérték keresésnél nem kell figyelembe venni, így elhagyhatók. A következőkben a feladat a hibás döntés minimalizálása. Erre megoldást nyújt az M i -hez tartozó a-posteriori valószínűség P (M i r) maximalizálásával a Maximum a-posteriori (MAP) kritérium. Ennél az eljárásnál a vevő a vett r vektor ismeretében az adó által legvalószínűbben adott eseményre dönt. Az a-posteriori valószínűség P (M i r) Bayes-szabállyal felírva P (M i r) = f C M i (r M i ) P i. (5.6) f C (r) A bayes-i kiegyenlítő döntési függvénye Ψ (r) a bináris szimbólum a-posteriori valószínűségeit hasonlítja össze Ψ (r) = P (M 1 r) P (M 2 r). (5.7) Felhasználva, hogy adatátvitelnél az a-priori valószínűségek egyenlők, amiről a forráskódoló gondoskodik, valamint mindkét a-posteriori valószínűségben a nevező azonos, a (5.6) egyenletben P 1 el ésp 2, ill. f C (r) hatásait szélsőérték keresési szempontból el lehet hagyni. A (5.7) egyenlet a következőképpen alakul Ψ (r) = f C M1 (r M 1 ) f C M2 (r M 2 ), (5.8) ahol a feltételes sűrűségfüggvények megegyeznek az egyes csatorna állapotok c j C +, ill. c i C sűrűségfüggvényeinek összegével. f C Mi,j (r M i,j ) = c j C + d c i C d p (r c i,j ), (5.9) A zaj jelenléte miatt az r(k) vett jelet véletlen folyamatként lehet jellemezni, aminek a feltételes Gauss sűrűségfüggvényének a várható értéke a csatorna állapotok helyvektorai, valamint a szórása a zaj szórása. f ( r ( ) 1 r (k) cj 2 ) cj = exp (2πσ 2 n/2 ) 2σ 2, (5.10) ahol.. az euklideszi távolság.
62 FEJEZET 5. CSATORNA KIEGYENLÍTÉS Ezek után a (10,11,12) egyenletekből felírható az egyszerűsített bayes-i kiegyenlítő Ψ (r) döntési függvénye a szorzótényezők egyszerűsítése után. Ψ (r) = c j C + d exp ( r(k) c j 2 2σ 2 ) = N w i exp ( r(k) c i 2 2σ ), 2 i=1 c i C d ) exp ( r(k) c i 2 2σ 2 ahol w i = +1, ha c i C + és w i = -1, ha c i C bináris esetben. (5.11) Az MAP és MLSE becslők rövid összevetése. Tehát a Bayes vagy MAP szimbólum döntési szabály azt a szimbólumot választja, amelyik a legvalószínűbb a vett r(k) vektorban. Az optimális szekvencia becslőt a (2) egyenlet képviseli. A (5.11) egyenletből látható, hogy nulla zaj esetén egy szekvencia fog dominálni, minek következtében az MAP és az MLSE ugyanazon vevő felé konvergál. Mint azt már említettem, kis jel/zaj viszonynál az MLSE rosszabb teljesítményt mutathat MAP becslő eljárásnál [16]. Ezen elméletnek a bizonyítását számítógépes szimuláció is alátámasztja [17]. Ennek ellenére az MLSE napjainkig nagyobb teret kapott a híradástechnikában, aminek okai több részből tevődnek össze. Mint arra már korábban kitértem MAP számítási bonyolultsága sokkal nagyobb, mint az MLSE becslőnek. Míg az MLSE algoritmusoknál elegendő az euklideszi távolság kiszámítása, addig MAP eljárásoknál feltételes sűrűségfüggvényeket és ezáltal exponenciális függvényt kell kiszámolni. A MAP számításához szükség van továbbá az additív Gauss-zaj varianciájának ismeretére. Komplex adaptív nemlineáris kiegyenlítők Mint azt láttuk, az adaptív nemlineáris kiegyenlítők az N dimenziós bemeneti vektort egy jel alakzathoz (konstellációhoz) rendelik hozzá, tehát egy R m R transzformációt végeznek el. Ebben a fejezetben néhány népszerű nemlineáris kiegyenlítő architektúrát mutatok be. Részletesebben tárgyalom a radiális bázisfüggvény (RBF) hálózatot és a fuzzy rendszeres megoldást, míg további nemlineáris kiegyenlítő struktúrákat, mint a Többrétegű perceptron (MLP), visszacsatolt RBF, visszacsatolt ANN (mesterséges neurális hálózat) [18] vagyvolterra-szűrőket nem érintek a dolgozat során. 5.3.3. Radiális bázis függvény (RBF) kiegyenlítő Az RBF hálózatot eredetileg többdimenziós térben adat interpolációra fejlesztették ki. Azonban az interpoláció problémákat is rejt magában [13]. Mivel az adathalmaz többnyire sokkal nagyobb, mint az RBF elemek N RBF száma, tehát a lineáris egyenletek száma nagyobb, mint az ismeretlenek száma, valamint adatátviteli megoldásokat szem előtt tartva, a vett jel additív zajt is tartalmaz, ami miatt az interpoláció nem a helyes megoldást adja. Ennek a problémának a kiküszöbölésére Broomhead és Lowe az RBF hálózatot Least
5.3. NEMLINEÁRIS ELLENŐRZÖTTEN TANÍTOTT KIEGYENLÍTŐK 63 Square (LS) becslőként értelmezték, amivel megindult az RBF hálózatok széleskörű alkalmazása jelfeldolgozási problémákra. A hálózat két aktív réteget tartalmaz. A kimeneti réteg egy egyszerű lineáris, súlyozott összeget F RBF (r(k)) képez a rejtett réteg processzáló elemi kimenetéből. F RBF (r (k)) = N RBF i=1 w i φ i (r (k)), (5.12) ahol N RBF az RBF processzáló elemek száma, w i a RBF elemek súlya, valamint φ(.)az RBF elemek által előállított radiális bázisfüggvény, melynek a feladata az n hosszúságú bemeneti vektorból egy skalár mennyiség előállítása [12]. Az így kapott kimenet egy sign(x) döntőfüggvénnyel feldolgozva adja a kiegyenlítő kimenetét. Alkalmazásoktól függően egyszerre több kimenetet is használhatunk, mint azt majd komplex bemenő jelek esetében látni fogjuk. Kiegyenlítő alkalmazásokban további bázisfüggvényeket megelőzve [12] a legelterjedtebben a gauss bázisfüggvényt alkalmazzák φ i (r (k)) = exp ( r (k) c i 2 2σ 2 ). (5.13) A (5.13) kifejezésben c i -vel az i-ik RBF elem központját jelöltem. A paraméter σ 2 ellenőrzi a bázisfüggvény rádiuszát és ezzel meghatározza, milyen gyorsan csökken a függvény értéke egyről nullára. (5.13)-t (5.12)- be behelyettesítve: F RBF (r (k)) = i w i exp ( r (k) c i 2 2σ 2 ). (5.14) Könnyen észrevehető a radiális bázisfüggvény hálózat kimenete (5.14) és az elméletben kapott optimális szimbólum becslő MAP kiegyenlítő döntési függvénye (5.10) közötti hasonlóság. Az RBF hálózat tanítása Az RBF hálózatok tanítása általában két lépcsőből álló folyamat, aminek az első fokán az RBF középpontok helyének becslése, majd e centerekhez kapcsolódó súlyok tanítása áll. A középpontok az n dimenziós térben elfoglalt helyének becslésére két eljárás alkalmaznak elterjedten. Az első a klaszterezés, a második valamelyik sztochasztikus gradiens algoritmus megvalósításra támaszkodik. Klaszter algoritmus Klaszter algoritmus használatánál rendelkezésünkre állhat tanító szekvencia, de ez nem feltétlenül szükségszerű. Ilyenkor lehetőség nyílik olyan tanítás nélküli klaszter algoritmus alkalmazására, mint a κ - means, adaptív κ - means [15] vagy a Moody-Darken által kifejlesztett algoritmus [13]. Ha az említett algoritmusok közvetlenül a vett jel vektor r(k) segítségével becslik meg az RBF centerek helyét, vagyis az eloszlás középértékét, akkor ugyan a nemlineáris torzításokra érzéketlen eljárásokat kapunk, de másik oldalról
64 FEJEZET 5. CSATORNA KIEGYENLÍTÉS hosszabb tanító szekvenciával kell számolni, mintha a csatorna impulzus válaszát LMSvagy RLS módszerrel határoztuk volna meg. Abban az esetben, ha az RBF középpontok meghatározása precíz, a klaszter algoritmusok segítségével lehet a legjobb eredményeket elérni. Ez azonban gyorsan változó csatornában nem így van. Ebben az esetben az RBF középpontok helyének is gyorsan kell követni a csatorna változásait, amire sok adat kiértékelése miatt nem képesek. Ugyanígy, ha nem ismeretes pontosan a középpontok száma, ill. zajos környezetben, célszerűbb LMS vagy RLS algoritmusokat alkalmazni, melyek a meglévő középpontokat a lehető legjobban használják ki. Mivel klaszter algoritmust a szimuláció során nem alkalmaztam, a továbbiakban nem részletezem. Sztochasztikus gradiens algoritmus Az irodalomban legtöbbször az egyszerűség kedvéért valós csatorna paraméterekkel és valós bemeneti jelvektorral számolnak. Azonban, mint ismeretes, hatékonyabb sávkihasználás érdekében a modulációk mind a jel normális, mind a kvadratúra komponenseit használják [1,2]. Ezért meg kell határozni egy komplex algoritmust, amely adaptálja az RBF hálózat összes szabad paraméterét, a c i középpontok helyét, a w i súlyokat és az RBF középpontok σ i szórási paramétereit. Alapul a Widrow által 1960-ban kifejlesztett pillanatnyi gradiens [12] alapján működő eljárást lehet választani. A komplex pillanatnyi négyzetes hiba felhasználásával a paraméterek a következőképpen változnak ν n+1 = ν n µ ν ε n 2 ν n, (5.15) ahol ε n a pillanatnyi hibát ε n = F RBF (r (k)) d n, d n a hálózat kívánt válaszát, µ ν a ν paraméterre jellemző bátorsági paramétert jelöli, ami az adaptáció sebességét adja meg. A ν bármelyik szabad paramétert jelölheti. Az F RBF (r (k)) megegyezik a (5.14) egyenlettel. Az adaptálás minden változtatható paraméterre,n időpillanatban, minden j. RBF középpontra felírva [21] w j,n+1 = w j,n + µ w ε n φ j (r n ), σ j,n+1 = σ j,n + µ σ φ j (r n ) [ w Rj,n Re {ε n } + w Ij,n Im {ε n } ] r n c j,n 2 σ [ j,n 3 c j,n+1 = c j,n + µ c φ j (r n ) w Rj,n Re{ε n}re{r n c j,n }+jw Ij,n Im{ε n}im{r n c j,n } σ 2 j,n A φ j (r n ) a (5.13) egyenlet szerint van definiálva. Ez az algoritmus nem garantálja a konvergenciát a globális minimumhoz, de elfogadható eredményt nyújt. A konvergencia gyorsítása érdekében Moody és Darken indítványozta a normalizált radiális bázisfüggvény alkalmazását [19]. ( ) N r c w i exp i 2 2σ 2 i=1 F RBF (r) = ( ). (5.17) N r c exp i 2 2σ 2 i=1 ].(5.16)
5.3. NEMLINEÁRIS ELLENŐRZÖTTEN TANÍTOTT KIEGYENLÍTŐK 65 Ezzel a megoldással az F RBF kimeneten mindig a súlyok összegének megfelelő érték adódik. Ugyan az RBF egyik előnye az MLP-vel szemben, a rejtett réteg gyorsabb tanítása, azonban mérete a csatorna együtthatók változásával exponenciálisan nő. Ez a nagyfokú párhuzamos feldolgozás miatt elméletileg nem okoz akadályt a kimenet számításánál, azonban a gyakorlati felhasználás során egy bizonyos RBF központ szám felett nem lehet a hálózatot kezelhető keretek között tartani. A feladat tehát olyan megoldásokat, elrendezéseket találni, melyek elegendően kis számú középponttal, rövidebb tanító szekvenciával, gyors, fejlett DSP elemeket felhasználva, akár nagyobb számítási igényt megtűrve, az optimálishoz közeli eredményt adnak. Így mára az RBF hálózatoknak több változata is ismert. Lee szerint [22] az RBF középpontok helyeinek meghatározása után csak azokat a középpontokat szabad megtartani, amelyek a döntési térben az elválasztó hipersík közvetlen környezetében található. Véleményem szerint gyorsan változó csatorna kiegyenlítőjeként nincs igazán idő a középpont helyek meghatározása után további bonyolult, többlépcsős kiválasztás végrehajtására. További problémának tűnik a megmaradó középpontok szórás paraméterének meghatározása. Ez a lábnyom vagy nem lesz szimmetrikus és ezzel nem lehet radiális bázisfüggvénnyel feldolgozni, vagy ugyan szimmetrikus marad, de túl nagy átlapolódásokhoz és ezzel hibás döntéshez vezet. Módosított Gauss magfüggvény. A már bemutatott hálózatcsökkentési megoldások mellett javasolok egy olyan RBF központot, amelyik egy módosított Gauss magfüggvénnyel számítja ki a processzáló elem kimenetét. Mint az a 5. ábrán látható az n dimenziós döntési tér középpontra (r(k) = 0, r(k-1) = 0) szimmetrikus, mégpedig úgy, hogy az így kialakult csatorna állapot párok súlyai egymásnak pont az ellenkezői. Ebből az elrendezésből adódóan egy RBF középpontot fel lehet használni mind a két csatorna állapot lefedésére, origóra pontszimmetrikus rendszer esetén, azaz ha az M szimbólum ABC páros φ i (r (k)) = exp ( r (k) c i 2 2σ 2 ) exp ( r (k) + c i 2 2σ 2 ). (5.18) A függvény ábrája a 7. ábrán látható. Az így kapott elrendezés ugyan csak egy átrendezése az eredeti felállásnak, és ezzel az egyes processzáló elemeknek is többet kell számolni, de az adaptáció gyorsabb lesz, mivel a két központ helyett csak egynek a szabad paramétereit kell változtatni. Így rövidebb tanító szekvencia is elég lesz, miáltal nő a nettó adatforgalom. 5.3.4. Fuzzy kiegyenlítő Az eddig vizsgált RBF hálózat mellett még számos olyan nemlineáris struktúra létezik, amelyik a Bayes-tétel felhasználásával csatorna kiegyenlítésre alkalmazható. Az egyik közülük a fuzzy logikára alapozó fuzzy adaptív szűrő, melyet kiegyenlítőnek először Wang és Mendel javasolt [24]. Anélkül, hogy a fuzzy rendszerek alapjait részletesen bemutatnám, csak néhány, a tervezéshez elengedhetetlen kifejezést szeretnék pontosítani. Fuzzy rendszer
66 FEJEZET 5. CSATORNA KIEGYENLÍTÉS Fuzzifikálás A fuzzy logika segítségével a pontosan meghatározott mérési eredményeket vagy bemeneti jeleket életlen m i fuzzy halmazokba transzformáljuk, amivel a bemeneti értékeknek lingvisztikus értelmet adunk, mint kicsi, nagy, hatalmas, stb... A fuzzy halmazok át is lapolhatják egymást. Ezt a fuzzifikálásnak nevezett lépést tagsági függvényekkel µ i végezzük el, melyek meghatározzák, hogy a vizsgált r i elem mennyire tartozik az adott fuzzy halmazhoz. A tagsági függvények megválasztása az adott feladattól függhet. Szóba jöhetnek háromszög vagy trapéz alakú függvények, amelyeknek a számítása a függvények linearitásából adódóan könnyű feladat, azonban egy további megoldásként alkalmazhatunk gaussi tagsági függvényt is µ (r) = exp [ ] (r c)2 2σ 2. A Gauss tagsági függvényben egy régi ismerős függvényt találunk. A különbséget a (5.10) egyenlethez képest a szorzófaktor hiánya jelenti, ezáltal a függvény maximuma mindig egy lesz. Interferencia képzés A következő, interferencia képzés lépésben az előre meghatározott HA A i =... ÉS A j =... AKKOR B=... formájú fuzzy szabályok segítségével, a fuzzy mennyiségek kombinációját, interferenciáját képezzük, amit kimeneti halmazokra képezünk le. Ezek a kimeneti fuzzy halmazok reprezentálják a vizsgálni kívánt osztályokat. Az interferencia képzésre ismét több lehetőség adódik [25], a Mamdani-Larsen (min, max, max-produkt), Tsukamoto- vagy a Takagi-Sugenomódszer. Mivel Gauss tagsági függvényt alkalmazunk a Tsukamoto-módszer kiesik [25]. A legeffektívebbnek a produkt-interferencia képzés bizonyul [19], ami a tagsági függvények szorzatainak súlyozott összegét jelenti, ezért ezt a módszert fogom alkalmazni. Defuzzifikálás Végül a defuzzifikálás során a kimeneti fuzzy halmazokat különböző kritériumok felhasználásával ismét határozott kifejezésekké alakítjuk. Egyik lehetséges megoldás Center-of-Gravity (COG) módszer. A kimeneti fuzzy halmaz tagsági függvényének a területi súlypontja határozza meg az osztályhoz tartozást [25] O = yµb (y) dy µb (y) dy. A felsorolt három lépés megoldására még sok más lehetőség is nyílik. Fuzzy szűrő megvalósítása A feladat olyan adaptív fuzzy szűrő tervezése, ami a kimenetet a fent említett Gauss fuzzifikálással, a produkt-interferenciával és COG defuzzifikálással számolja ki.
5.3. NEMLINEÁRIS ELLENŐRZÖTTEN TANÍTOTT KIEGYENLÍTŐK 67 Részben felhasználva [24] jelöléseit, első lépésként az U bemeneti tér minden [ C ++ i, C + i, C + i, C ] i intervalumában meg kell határozni az F j i i fuzzy halmazokat. A halmazokhoz tartozó µ ji i (r) tagsági függvény ( ) 2 r i c ji µ ji i i (r) = exp ( ) 2, (5.19) 2 σ ji i ahol i = 1,...,n, n a bemeneti tér dimenziója, j i =1,...,m i, az i. dimenzióhoz tartozó fuzzy halmazok száma, valamint c a komplex középpont, σ pedig a szórási paraméter. Így minden F ji i fuzzy halmazhoz tartozik egy tagsági függvény, ami nem nulla. A következő lépésként meg kell határozni a n m i darab fuzzy szabályt a következőképpen: HA x 1 = F 1 1 ÉS x 2 = F 1 2,..., x n = F 1 n AKKOR y = µ 1 1µ 1 2 µ 1 n HA x 1 = F1 1 ÉS x 2 = F2 1,..., x n = Fn mn.. i=1 AKKOR y = µ 1 1µ 1 2 µ mn n HA x 1 = F m1 1 ÉS x 2 = F m2 2,..., x n = Fn mn AKKOR y = µ m1 1 µm2 2 µ mn n. A szabályok segítségével megalkothatjuk a szűrő kimeneti függvényét, figyelembe véve a COG defuzzifikációs szabályt [24] F F uzzy (r (k)) = m 1 m 2 j1=1 j2=1 m 1 mn jn=1 m 2 j 1=1 j 2=1 w (k) (j1,,jn) ( µ j1 1 mn j n=1 ( µ j1 1 (k) µj2 2 (k) µj2 2 (k) µjn n ) (k) ),(5.20) (k) µjn n (k) ahol w (k) (j1,,jn) a fuzzy szabályokhoz tartozó súly. A tagsági µ ji i függvény (5.19) definíciója miatt (5.20) nevezője nem nulla, tehát a szűrő realizálható. A szűrő szabadon változtatható paramétereit, a w (k) (j1,,jn) súlyokat össze lehet gyűjteni egy n m i hosszúságú vektorba, valamint definiálni lehet egy i=1 fuzzy bázis függvényt [24] ψ (j1,,jn) (r (k)) = m 1 Észrevehető, hogy mivel m 2 j 1=1 j 2=1 ( ) µ j1 1 (k) µj2 2 (k) µjn n (k) mn ( µ j1 j n = 1 1 (k) µj2 2 (k) µjn n ). (k) i=1 n m i > N CS, tehát a döntési térben nem mindenhol helyezkedik el csatorna állapotot reprezentáló pont, amihez fuzzy tagsági függvény tartozik. Ezért csökkenteni lehet a súly vektor hosszát n m i -ről i=1
68 FEJEZET 5. CSATORNA KIEGYENLÍTÉS az N cs maximális csatorna állapot számra, illetve a Ψ (j1,,jn) (r (k))fuzzy bázis függvényben is csak azokat a tagsági függvényeket kell figyelembe venni, amelyekhez csatorna állapot tartozik. Így (5.20) felírható { N cs n 1 } w l ϑ l l=1 i=0 F F uzzy (r (k)) = { N cs n 1 }, (5.21) ϑ il l=1 i=0 { } ahol {ϑ il } µ j i, l =1,...,N cs, a csatorna állapotok száma, i=1,...,nismételten a bemeneti tér dimenziójának száma, j=1,...,m i az i-ik dimenzióban található fuzzy tagsági függvény sorszáma. A fuzzy szűrő tanítása komplex LMS algoritmussal A tanító algoritmus során az adaptív szűrő változtatható paramétereit kell úgy változtatni, hogy a költségfüggvény K (k) = E {ε (k) ε (k)} minimális legyen, ahol ε (k) = d (k) F F uzzy (r (k)), valamint () a komplex konjugált operátort jelöli. Súly adaptálása. Az általam áttekintett irodalom nem tartalmazott komplex Fuzzy kiegyenlítő LMS adaptációt, ezért [12, 16] segítségével megadok egy megoldási lehetőséget. Mivel a súly komplex, ezért mind a reális, mind a imaginárius részét együtt kell változtatni. A komplex LMS algoritmus felhasználásával : w i (k + 1) = w (k) i 1 [ ] K (k) 2 α K (k) w Re + j (k) w Im, (5.22) (k) i ahol α bátorsági tényező az adaptáció gyorsaságát határozza meg. A parciális deriváltak kiszámítása: ahol K(k) wi Re K(k) w Im (k) = ε (k) g i (k) ε (k) g i (k) i (k) = jε (k) g i (k) jε (k) g i (k), g i (k) = N cs l=1 n i=1 ( n { exp exp i=1 (rre i { (k) c Re i ) 2 (r i (k)) 2 2(σ Re (rre i (k) c Re i,l ) 2 2(σi,l Re(k))2 Az kapott eredményeket (5.22)-be behelyettesítve: i Im i (k) c Im i ) 2 2(σ Im i (k)) 2 } (rim i (k) c Im i,l ) 2 2(σi,l Im(k))2 }). w i (k + 1) = w i (k) + αε (k) g i (k). (5.23) A σ szórás és c center paraméterek adaptációja. A σ szórás és c középpont paraméterek is komplex mennyiségek. A fent alkalmazott adaptációs szabály szerint [24]: c l i (k + 1) = cl i (k) 1 2 α K(k) c l i (k) σi l (k + 1) = σl i (k) 1 2 α K(k), σi l(k)
5.3. NEMLINEÁRIS ELLENŐRZÖTTEN TANÍTOTT KIEGYENLÍTŐK 69 ahol K(k) c l i,re (k) = K(k) FF uzzy(r(k)) F F uzzy(r(k)) c l i,re (k) + K(k) FF uzzy (r(k)) F F uzzy (r(k)) c l i,re (k) K(k) c l i,re (k) = ε (k) (w i (k) F F uzzy (r (k))) g i (k) ri,re(k) cl i,re (σ l i,re (k))2 ε (k) (w i (k) F F uzzy (r (k))) g i (k) ri,re(k) cl i,re (σ l i,re (k))2 mivel ε (k) (w i (k) F F uzzy (r (k))) és ε (k) (w i (k) F F uzzy (r (k))) komplex konjugált párok, ezért ε (k) (w i (k) F F uzzy (r (k))) ε (k) (w i (k) F F uzzy (r (k))) = 2Re {ε (k) (w i (k) F F uzzy (r (k)))} = 2Re { ε (k) (w i (k) F F uzzy (r (k))) } (5.24) = 2q i (k). A parciális deriváltak ezek után felírhatóak [24]: K (k) c l i,re = q i (k) g i (k) rre i (k) c l i,re ) 2 (σ li,re (k) K (k) c l i,im = q i (k) g i (k) rim i (k) c l i,im ) 2 (σ li,im (k) K (k) σ l i,re = q i (k) g i (k) ( ) r Re i (k) c l 2 i,re ) 3 (σ li,re (k) K (k) σ l i,im = q i (k) g i (k) ( ) r Im i (k) c l 2 i,im ) 3 (σ li,im (k) Az egyenleteket behelyettesítve végül megkapjuk [ c l i (k + 1) = cl i (k) 1 2 α q r i (k) g i (k) Re i (k) c l i,re (k) + j r (σ [ i,re l (k))2 σi l (k + 1) = σl i (k) 1 2 α q r i (k) g i (k) Re i (k) c l i,re (k) + j r (σi,re l (k))2 5.3.5. MLSE-Viterbi kiegyenlítő (GSM) 5.3.6. Fractionally Spaced 5.3.7. DFE Ime i (k) c l i,im (k) (σ l i,im (k))2 Ime i (k) c l i,im (k) (σ l i,im (k))2 ] ].
70 FEJEZET 5. CSATORNA KIEGYENLÍTÉS
6. fejezet Független komponens analízis A független komponens analízis (Independent Component Analysis - ICA) módszereinek [?] tárgyalása előtt tisztázni kell néhány fontos definíciót. Legyenek y 1, y 2,..., y k nulla várhatóértékű valószínűségi változók f(y 1, y 2,..., y k ) együttes és f i (y i ) perem-sűrűségfüggvénnyel. Az y i -k statisztikailag (kölcsönösen) függetlenek, ha az együttes sűrűségfüggvényük felírható a perem-sűrűségfüggvények szorzataként: f(y 1, y 2,..., y m ) = f 1 (y 1 )f 2 (y 2 )...f m (y m ), (6.1) A függetlenséget meg kell különböztetni a korrelálatlanságtól, amely a következőt jelenti: E{y i y j } E{y i }E{y j } = 0, ha i j. (6.2) Az E operátor a várhatóérték képzését jelöli. A függetlenség sokkal szigorúbb megkötést jelent, mint a korrelálatlanság az alábbiak szerint: E{g 1 (y i )g 2 (y j )} E{g 1 (y i )}E{g 2 (y j )} = 0, ha i j, (6.3) bármely g 1 és g 2 függvényekre. Egy fontos speciális esetben a korrelálatlanság ekvivalens a függetlenséggel. Ennek az a feltétele, hogy az y 1, y 2,..., y k együttes sűrűségfüggvénye Gauss-függvény legyen. Ebből a tulajdonságból fakadóan a független komponens analízis nem alkalmazható Gauss-eloszlású valószínűségi változókra. Következő lépésként definiálnunk kell a független komponens analízis alapproblémáját. Ebben a munkámban csak a lineáris modellre szorítkozom, mivel a gyakorlat számára ez is jó közelítést ad, és lényegesen egyszerűbb a nem lineáris változatnál. A definíciókban a megfigyelt m-elemű valószínűségi vektorváltozót x = (x 1,..., x m ) T jelöli (a T a transzponálás operátora, tehát oszlop vektorról van szó). 71
72 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS 6.1. Definiciók 6.1.1. Általános definíció Egy x valószínűségi vektorváltozó független komponens transzformációján olyan s=mx lineáris transzformációt értünk, melyre az s i -k függetlenségét mérő F (s 1,..., s n ) kontrasztfüggvény (másképpen költségfüggvény, célfüggvény) a maximumát veszi fe, ahol MA = PD, M a független komponens transzformáció mátrixa, A az eredeti keverőmátrix, P egy permutáló mátrix, D pedig a diagonális skálázó mátrixot jelöli. 6.1.2. Zajos ICA modell Egy x valószínűségi vektorváltozó független komponens transzformációjának végrehajtásakor az x=as+n adatmodell becslését végezzük, amelyben s a függetlennek feltételezett látens s i komponensekből képzett vektor (s = (s 1,..., s n ) T ). Az A mátrix az m n méretű keverőmátrix inverze, n pedig az m komponensű zajvektor. 6.1.3. Zajmentes ICA modell Egy x valószínűségi vektorváltozó független komponens transzformációjakor a következő adatmodell érvényes: x=as, ahol A és s értelmezése az előbbi definícióban szereplő meghatározással megegyezik. A rendszer meghatározhatóságára három alapvető megkötést kell tennünk (az s i -k függetlenségén kívül): 1. A független komponensnek közül csak egy lehet Gauss sűrűségfüggvényű, a többinek ettől különbözőnek kell lenni. 2. A megfigyelt kevert jelek számának (m) legalább annyinak kell lenni, mint a független komponensek számának (n), tehát m n. Ez azonban csak elégséges feltétel. 3. Az A mátrix rangja meg kell, hogy egyezzen az oszlopainak számával. Általában azt is feltételezik, hogy x és s nulla várható értékűek, de ez gyakorlatilag nem jelent problémát, mivel a feltétel teljesíthető, ha a transzformáció előtt várható érték vektort kivonjuk a jelvektorokból. A művelet elvégzése után a transzformált várható érték vektort ekkor viszont hozzá kell adni a kapott jelvektorhoz. A kérdéses sztochasztikus folyamatnak erősen stacionáriusnak kell lennie, és tekintettel a becsült mennyiségekre az ergodicitás néhány feltételének is teljesülnie kell. Mindez biztosított, ha folyamat például független azonos eloszlású valószínűségi változók realizációjaként jön létre (angolul i.i.d. - independent and identically distributed process). Alapvető, de nem olyan jelentős határozatlanság a modellben, hogy az A mátrix oszlopai csak egy multiplikatív konstans erejéig meghatározottak. Emiatt született egy matematikai konvenció, amely szerint az s i független komponensek legyenek egységnyi varianciájúak. Az ICA transzformáció, ellentétben például a főkomponens analízissel, nem sorrendezi a független komponenseket.
6.2. AZ ICA KÖLTSÉGFÜGGVÉNYEI 73 Az előző listában szereplő három megkötés közül az első mindenképpen szükséges az ICA modell identifikálhatóságához. Ellenkező esetben, ha a valószínűségi változó Gauss-eloszlású, akkor a korrelálatlanság függetlenséghez vezet, és így minden dekorrelációs reprezentáció független komponenseket ad. Ha egynél több s i változó Gauss-eloszlású, még akkor is lehetséges a nem Gauss-i komponensek meghatározása. A második megkötés (m n) nem teljesen szükséges, amint ezt a későbbiekben látni fogjuk. Az modell részben, így például az A mátrix akkor is meghatározható, ha m < n. Néhány megkötés a keverőmátrixra mindig szükséges, mint pl. a 3-as számú, bár ez csak egy elégséges feltétel. A zajos ICA modellnél az előbbiekhez hasonló feltételek szabhatók abban az esetben, ha a zaj Gauss-eloszlású és független az s i komponensektől. 6.2. Az ICA költségfüggvényei Az ICA adatmodell becslése többnyire úgy történik, hogy előállítunk egy F költségfüggvényt, majd ennek a maximumát vagy a minimumát keressük. A szélsőérték keresése során különböző algoritmusokat használhatunk. Akár a következő egyenletet is felírhatjuk: ICA módszer = költségfüggvény + optimalizáló algoritmus. Explicit alakban felírható költségfüggvények esetén bármilyen klasszikus optimalizáló algoritmus használható, például sztochasztikus gradiens módszerek vagy Newton-módszerek. Néhány esetben azonban a költségfüggvényt és az algoritmust elég nehéz elkülöníteni egymástól. Az ICA módszer tulajdonságai mindkét összetevőjétől függenek: a statisztikai tulajdonságok (pl. robosztusság) függenek a költségfüggvény megválasztásától az algoritmikus tulajdonságok (pl. konvergencia sebesség) függenek az optimalizáló algoritmustól A két tulajdonság osztály, amennyiben élesen elválasztható, független egymástól. Egy költségfüggvényhez több különféle optimalizáló algoritmus is használható, és ugyanaz az optimalizáló algoritmus is működik más-más célfüggvényekre is. Vizsgáljuk meg először a költségfüggvényeket. Vegyük először azokat, amelyek az összes független komponenst becslik egy időben (multiunit contrast function). 6.2.1. Több komponenses költségfüggvények Valószínűség és entrópia Zajmentes esetben a modell becsülhető maximum likelihood módszerrel. Jelölje az A keverő mátrix inverzét M = (m 1,..., m m ) T, ekkor a következő logaritmikus likelihood formula írható fel: L = T t=1 i=1 m log(f i (m T i x(t))) T ln det M, (6.4)
74 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS ahol az f i -k az s i komponensek sűrűségfüggvényeit jelölik (itt feltesszük, hogy ismertek), és az x(t)-k X valószínűségi változó realizációi. Bell és Sejnowski információelméleti szempontból megközelítve a problémát egy másik költségfüggvényt vezetett be. Ez a nem lineáris kimenetekkel rendelkező neurális hálózat kimeneti entrópiájának maximalizálásán alapul. Ehhez definiálni kell a H differenciális entrópiát: H(y) = f(y) log f(y)dy, (6.5) ahol f(y) az Y valószínűségi vektorváltozó sűrűségfüggvényét jelöli. Tegyük fel, hogy x egy nem lineáris neurális hálózat bemenete, amelynek a kimenetei a g i (w T i x) alakot öltik, ahol g i-k nem lineáris skalár függvényeket jelölnek, a w i -k pedig a neuronok súlyvektorai. A következő entrópiát kell maximalizálni: L = H(g 1 (w T 1 x),..., g m (w T mx)). (6.6) Természetesen ekkor a g i függvényeket megfelelően kell megválasztani. Többen (pl. Cardoso, Parra) bebizonyították, hogy az entrópia maximalizálás ekvivalens a maximum likelihood becsléssel. Ebből következik, hogy az f i sűrűségfüggvényeknek egyezniük kell a g i függvények első deriváltjaival. Az optimum pontban w i egyenlő m i -vel. A maximum likelihood megközelítésnek előnye, hogy néhány feltétel mellett aszimptotikusan hatékony, viszont számos hátránya is van. Az egyik szerint ismernünk kell a független komponensek sűrűségfüggvényeit. Ezeket természetesen becsülni kell, mert csak nagyon ritkán ismertek, emiatt romlik a módszer megbízhatósága. A másik hátrány, hogy a módszer érzékeny az ún. outlierekre. Az outlierek fogalmán az olyan megfigyeléseket értjük, amelyek nem konzisztensek a vizsgált modellel, illetve aránytalanul nagy befolyást gyakorolnak a regressziós modell paramétereire. Ennek következtében a modell nem az adatok többségének, hanem a kilógó, ún. outlier adatoknak a viselkedését tükrözi. Kölcsönös információ és Kullback-Leibler divergencia Elméletileg a legmegfelelőbb költségfüggvény a multi-unit esetben a kölcsönös információ. A H differenciális entrópia segítségével értelmezhetjük az I kölcsönös információt m valószínűségi változó között (i = 1,..., m): I(y 1, y 2,..., y m ) = i H(y i ) H(y). (6.7) A kölcsönös információ két változó összefüggésének természetes mértéke. Értéke mindig nem negatív, és akkor és csak akkor nulla, ha a változók statisztikailag függetlenek. Ezek szerint tehát olyan transzformációt kell találni, amely minimalizálja a kölcsönös információt az egyes s i -k között. Az előbbi kölcsönös információs összefüggés visszavezethető a Kullback-Leibler divergenciára, amely: δ(f 1, f 2 ) = f 1 (y) log f 1(y) dy, (6.8) f 2 (y) ahol f 1 és f 2 a sűrűségfüggvényeket jelölik. A Kullback-Leibler divergencia tulajdonképpen egyféle távolság a két sűrűségfüggvény között, bár igaz, hogy
6.2. AZ ICA KÖLTSÉGFÜGGVÉNYEI 75 nem szimmetrikus. Ha y i -k függetlenek, akkor az együttes sűrűségfüggvényük felírható szorzatalakban. A valódi f(y) és a becsült f(y) = f 1 (y 1 )...f m (y m ) sűrűségfüggvények közötti Kullback-Leibler divergenciával lehet mérni az azonosságot. Ez a mennyiség valójában megegyezik a kölcsönös információval. Sajnos a kölcsönös információt nagyon nehéz megbecsülni, mivel a sűrűségfüggvények becslése is szükséges hozzá. Comon valamint Amari, Cichocki és Yang a sűrűségfüggvények polinomiális becsléseit használják, ami a magasabb rendű kumulánsok használatához vezet. (A kumulánsokat részletesen a függelékben tárgyalom.) A kumuláns-alapú becslések lényegesen leegyszerűsítik a kölcsönös információ használatát, de nem pontosak. Nem lineáris keresztkorrelációk Több kutató (köztük elsőként Jutten és Hérault) a nem lineáris keresztkorrelációk megszüntetését használja a független komponensek meghatározásához. A következő formulát írhatjuk fel: E{g 1 (ŝ i )g 2 (ŝ j )}, ahol g 1 és g 2 megfelelően megválasztott páratlan nemlinearitások. Ha ŝ i és ŝ j függetlenek, akkor keresztkorrelációjuk nulla, feltéve, hogy a változók szimmetrikus eloszlásúak. A költségfüggvény gyakran csak implicit módon határozható meg, és egzakt függvény nem is létezik. A nemlinearitásokat a független komponensek valószínűség sűrűség függvényének megfelelően kell megválasztani. Nem lineáris PCA kritérium Az előbbihez hasonló megoldást kínál a nem lineáris PCA (Principal Component Analysis - főkomponens analízis). A módszer a főkomponens analízisben használt költségfüggvényeken alapul, azonban ebben az esetben a szeparáció egy nemlineáris függvény beiktatásával érhető el. Ezt a nem linearitást a következő képletben a g(.) függvény képviseli: w 1 = arg max w=1 E{g(wT x) 2 }, (6.9) ahol x a bemenő adatvektor, w az eredeti w 1 pedig a módosított súlyvektor. Ha a nemlinearitást a sűrűségfüggvénynek megfelelően választjuk meg és az adatok előfeldolgozottak (fehérítés, ld. 6.3 fejezet), akkor az ICA modell becsülhető. Költségfüggvény explicit formában nem írható fel, az algoritmusok közvetlenül a PCA-ban használt algoritmusokból származtathatók egy megfelelő nem linearitás beiktatásával. Mivel a negyedrendű kumuláns széélsőértékét szeretnénk biztosítani, ezért a deriváltat, a "harmadrendet" kell vizsgálnunk. A tisztán köbös nemlinearitás problémája az instabilitás, ezért célszerű például a tanh(.) függvényt választani, amelynek a Taylor-soros közelítésében a köbös tag domináns lehet. Magasabb rendű kumuláns tenzorok Az eddig leírtakhoz kevésbé kapcsolódó módszer a magasabb rendű kumuláns tenzorok sajátérték felbontása. A kumulánsok definíciója a függelékben található. A negyedrendű kumuláns tenzor az alábbi T lineáris operátorként definiálható: T (K) ij = k,l cum(x i, x j, x k, x l )K kl, (6.10)
76 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS ahol ij index a mátrix (i, j) elemét jelenti, K egy m m-es mátrix, a cum(.) függvény pedig a kumulánsképzés operátora. A lineáris operátornak m 2 sajátértéke llétezik, amelyek a "sajátmátrix"-okhoz tartoznak. A "sajátmátrix"-ok sajátvektorainak segítségével felírható egyenletek megoldásával végezhető el az ICA modell becslése. Ennek a megközelítésnek az előnye, hogy nem igényli a független komponensek sűrűségfüggvényének előzetes ismeretét. Sőt, a kumulánsok a kölcsönös információ közelítésére is használhatók, bár ez a közelítés nagyon durva. A fő hátránya ennek a módszernek, hogy a statisztikai tulajdonságai nem túl jók. A kumulánsok becslésekor a variancia nagy lehet, és így a módszer érzékeny az úgynevezett outlierekre. Súlyozott kovariancia mátrix Egy következő érdekes megközelítés, amikor az ICA becslést egy négyzetesen súlyozott kovariancia mátrix sajátérték felbontásával érik el, tehát: E{ x 2 xx T }. Ez a módszer feltételezi, hogy minden független komponensnek különböző az eloszlása (különböző a kurtózisa, a negyedrendű kumulánsa). Ez a megoldás valójában a kumuláns tenzoros megközelítés speciális esete. 6.2.2. Egy komponenses költségfüggvények Egy komponenses költségfüggvényekről 1 akkor beszélhetünk, ha az optimalizáló eljárás során a függvény segítségével egyszerre csak egyetlen független komponenst tudunk előállítani. Az egész ICA modell becslése helyett arra törekszünk, hogy egy olyan w súlyvektort találjunk, amelyre igaz, hogy a w T x összefüggés megadja a kérdéses s i komponenst. Több, n darab s i megtalálásához az iterációt zajos esetben n-szer, zajmentes esetben (ekkor az utolsó komponens már adódik) n 1-szer kell végrehajtani. Az egykomponenses költségfüggvényekkel kapcsolatban a következő megállapításokat tehetjük: az összes one-unit költségfüggvény felfogható a Gauss-eloszlástól való eltérés mértékének. nagyon sok alkalmazásnál nincs szükség valamennyi független komponens meghatározásához, egy is elegendő. Ideális esetben a költségfüggvény globálisan optimalizált, a független komponensek a Gausseloszlástól való eltérés mértékének sorrendjében érhetők el, ami azt jelenti, hogy a legfontosabb komponens határozható meg először. a független komponensek számának előzetes ismeretére nincs szükség, mivel azok egyenként előállíthatók. ez a megközelítés tisztán mutatja a neurális hálózatok tanulási szabályaival való kapcsolatot (ld.?? fejezet). Egy komponens meghatározása után egy egyszerű dekorrelációs eljárást kell végezni azért, hogy a következő komponensek az éppen meghatározottól megkülönböztethetők legyenek. (A függetlenség definícióból adódóan egyben korrelálatlanságot is jelent.) Ezután történhet következő komponens meghatározása. Az iterációkat addig kell végezni, amíg az összes független komponenst meg nem határoztuk. 1 angol terminológiával one-unit contrast function
6.2. AZ ICA KÖLTSÉGFÜGGVÉNYEI 77 Negatív normalizált entrópia A legtermészetesebb információelméleti egy komponenses költségfüggvény a negatív normalizált entrópia (negentropy - negentrópia). A független komponensek abba az irányba esnek, amelyben w T x, korábbiakban már definiált, differenciális entrópiája minimális. Ezt az elvet közvetlenül nem lehet felhasználni, módosításra szorul, mivel a differenciális entrópia nem invariáns a skálázási transzformációkra. Az entrópia lineáris invariáns változata a J negatív normalizált entrópia: J(y) = H(y Gauss ) H(y), (6.11) ahol H a differenciális entrópia képzést jelöli, y Gauss pedig egy Gauss-eloszlású valószínűségi vektorváltozó, amelynek a kovariancia mátrixa megegyezik az y-éval. A negentrópia mindig nem negatív értékű, és akkor és csak akkor nulla, ha az y Gauss-eloszlású. A negentrópia segítségével a kölcsönös információ is kifejezhető: I(y 1, y 2,..., y n ) = J(y) i J(y i ) + 1 2 log C y ii det C y, (6.12) ahol C y az y kovariancia mátrixa, és C y ii a Cy főátlóbeli elemeiből képzett diagonális mátrix. Ha az y i -k korrelálatlanok, akkor a kifejezés egyszerűsödik (a harmadik tag nulla): I(y 1, y 2,..., y n ) = J(y) i J(y i ). (6.13) Mivel a negentrópia invariáns a lineáris transzformációkra, ezért ki lehet jelenteni, hogy az olyan irányok megtalálásával, amelyekre a negentrópia maximális, tehát ahol a J(y i ) elemek maximálisak, egyben a kölcsönös információt minimalizáljuk. Sajnos a negentrópia becslése nehéz, ezért ez a költségfüggvény inkább csak, mint elméleti lehetőség állja meg a helyét. Úgy, mint a több komponenses költségfüggvények esetében, a negentrópia is közelíthető magasabb rendű kumulánsokkal, például az alábbi módon: J(y) 1 12 κ 3(y) 2 + 1 48 κ 4(y) 2, (6.14) ahol κ 3 (y) az y i-edrendű kumulánsa. Magasabb rendű kumulánsok Matematikailag a legegyszerűbb egykomponenses költségfüggvények a magasabb rendű kumulánsok, például a kurtózis (negyedrendű kumuláns). Az ICA modell szerint legyen x a megfigyelt vektor. Keressük az x i -k olyan lineáris kombinációit, w T x-ket, amelyekre a kurtózis maximális vagy épp minimális. Ennek természetesen csak akkor van értelme, ha w értéke csak valamilyen határok között mozoghat. Tegyük fel, hogy E{(w T x) 2 }=1. Legyen A a keverőmátrix és z=a T w. Ekkor x=as miatt E{(w T x) 2 } = w T AA T w = z 2 = 1, és így a kurtózis tulajdoságainak megfelelően: m kurt(w T x) = kurt(w T As) = kurt(z T s) = zi 4 kurt(s i ). (6.15) i=1
78 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS A kurt operátor a kurtózis, a negyedrendű kumuláns képzését jelöli. Azzal a feltétellel, hogy z = 1, a kurtózisnak lesz valahány lokális minimuma és maximuma. A minimalizálással, illetve maximalizálással megkapjuk a w T x = ±s j független komponenseket. A kurtózist, mint egykomponenses költségfüggvényt, nagyon gyakran használják. 6.2.3. Általános költségfüggvények A kumulánsok hátrányai A kumulánsok matematikai egyszerűsége és különösen a globális konvergencia biztosítása azt eredményezte, hogy a kumuláns alapú technikák nagyon közkedveltek lettek a független komponens analízisben, annak ellenére, hogy sok szempontból nem mondhatók optimálisnak az ICA becslésben. A matematikai egyszerűségen kívül az egyetlen érv, ami a kumulánsos eljárások mellett szól az, hogy a negentrópia aszimptotikusan optimális közelítését adják abban az esetben, ha y sok független azonos eloszlású valószínűségi változó összege. Ez a gyakorlatban igen ritkán fordul elő és még az ICA modellben is csak közelítőleg igaz azokban az irányokban, amelyek távol esnek a független komponens irányoktól. Ezért felmerülhet a kérdés, hogy a gyakorlatban megfelelő eredményt adnak-e a kumuláns alapú becslések. Ha a statisztikai tulajdonságokat vizsgáljuk, azt mondhatjuk, hogy a kurtózis elég gyenge költségfüggvénye az ICA modellnek. Még ha nincs is jelen zaj, akkor sem lehet pontosan számítani sem a független komponenseket, sem a keverőmátrixot, mert az x kevert jelnek csak véges számú mintája áll rendelkezésre. A robosztusság és az aszimptotikus variancia szempontjából a kumuláns alapú becslések meglehetősen távol vannak az optimumtól. Ennek két fő oka van, először is a magasabb rendű kumulánsokban rejlő információ inkább az eloszlás széleit írja le, de a sűrűségfüggvény közepét már kevésbé, másodszor a magasabb rendű kumuláns becslések igen érzékenyek az outlierekre. Előfordulhat, hogy értékük csak az eloszlás peremterületeitől függ, amelyek az outlier kategóriába eshetnek. A kurtózis általánosítása Ahhoz, hogy az előbbi problémákat kiküszöböljük, új költségfüggvényekre van szükség. Olyan függvényekre, amelyeknek ígéretes statisztikai tulajdoságaik vannak (a kumulánsokkal szemben), nem igénylik a független komponensek sűrűségfüggvényeinek előzetes ismeretét (a maximum likelihood becslés alapesetével szemben), egyszerű algoritmikus leírást tesznek lehetővé (a maximum likelihood megközelítés szimultán sűrűségfüggvény becsléseivel szemben) és egyszerűen analizálhatók (a nem lineáris keresztkorrelációs vagy a nem lineáris PCA megközelítésekkel szemben). Az általánosított költségfüggvények, amelyeket a kurtózis általánosításának tekinthetünk, megfelelnek ezeknek a kritériumoknak. A költségfüggvények meghatározásához először meg kell jegyezni, hogy ezek a függvények a Gauss-eloszlástól való eltérés mértékei. Az eltérést mérő függvények osztályába gyakorlatilag bármilyen G függvény beletartozhat. Az
6.3. AZ ICA ALGORITMUSOK 79 eltérést az aktuális adatnak megfelelő G függvény várható értékének és a Gausseloszlású adatnak megfelelő G várható értékének a különbségével lehet mérni. Más szavakkal: definiálhatunk egy az y nulla várható értékű valószínűségi változó Gauss-eloszlástól való eltérést mérő J G költségfüggvényt, amelyet a páros, nem kvadratikus és megfelelően sima G függvény segítségével alkotunk meg a következőképpen: J G (y) = E y {G(y)} E ν {G(ν)} p, (6.16) ahol ν egy standard normál eloszlású valószínűségi változó, y egységnyi varianciájúra normált és a p exponens értéke tipikusan 1 vagy 2. J G tehát a kurtózis általánosítása. Például G(y) = y 4 esetén J G y kurtózisának a modulusa lesz. G nem lehet kvadratikus, mert akkor J G nulla értéket vesz fel bármilyen eloszlásra. Úgy tűnik tehát, hogy az említett J G költségfüggvény lehet ugyan úgy, mint a kurtózis. A J G valóban lehet költségfüggvény néhány deriválhatósági és integrálhatósági feltétel mellett. Megfelelő G választás esetén a becslés statisztikai tulajdonságai (aszimptotikus variancia és robosztusság) sokkal jobbak, mint a kumuláns alapú módszereknél. Az alábbi G függvények használata javasolt: G 1 (u) = log cosh a 1 u, G 2 (u) = e a 2 u2 2, ahol a 1, a 2 > 1 megfelelő konstansok. A független komponensek eloszlásának precíz ismeretének hiányában vagy az outliereknél ez a két függvény nagyon jól közelíti az optimális költségfüggvényt az esetek nagytöbbségében, a tapasztalat szerint különösen az a 1 = 2 és az a 2 = 1 értékekre adnak jó közelítést. 6.3. Az ICA algoritmusok Miután megválasztottuk a költségfüggvényt, el kell döntenünk, hogyan optimalizáljuk azt. A különböző algoritmusok más és más tulajdonsággal bírnak a stabilitás, a konvergencia sebesség és a memóriaigény szempontjából. Ezen kívül abban is eltérés mutatkozik, hogy egyes algoritmushoz szükséges a bemeneti adatok bizonyos előfeldolgozása, másokhoz pedig nem. 6.3.1. Előfeldolgozás Centerezés Az ICA transzformáció végrehajtásához a bemeneti adatoknak meg kell felelniük bizonyos feltételeknek. Amennyiben ezeknek a feltételeknek nem tesznek eleget, úgy előfeldolgozási eljárásokra van szükség. Az első és legalapvetőbb feldolgozási eljárás az x bemenő vektor centerezése, vagyis az m=e{x} várhatóérték vektor kivonása [?]. E művelet következményeképpen nem csak a feldolgozandó x vektor lesz nulla várhatóértékű, hanem a végeredményként meghatározott s forrásvektor is. Ez belátható, ha az s=wx összefüggésre gondolunk (W az ICA transzformáció által meghatározott keverőmátrix-inverz.)
80 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS Ennek a módszernek nem következménye az, hogy a várhatóérték vektort ne lehetne meghatározni. Az A keverőmátrix becslése után az s forrásvektorok várhatóérték vektorát hozzá kell adnunk a nulla várhatóértékű s becslésekhez. Az s várhatóérték vektor az A 1 m eredményeként adódik, ahol m a feldolgozás előtt kivont várhatóérték vektort jelenti. Fehérítés Egyes ICA algoritmusok a bemeneti jelek további előfeldolgozását, úgynevezett fehérítését igénylik. A fehérítés azonban akkor is hasznos lehet, ha az eljárás nincs feltétlenül megkövetelve, mivel egyszerűen elvégezhető, és gyakran az ICA algoritmus gyorsabb konvergenciáját eredményezi. A fehérítés során a megfigyelt x valószínűségi vektorváltozón egy olyan lineáris transzformációt hajtunk végre, amelynek következtében létrejövő x vektor komponensei korrelálatlanok, és varianciájuk egységnyi, tehát igaz lesz a következő összefüggés: E{ x x T } = I, (6.17) ahol I az egységmátrixot jelöli. A fehérítési transzformáció minden esetben végrehajtható, elvégzésére többféle módszer is létezik [?]. Az egyik módszer a kovariancia mátrix sajátérték felbontásán alapul. Felírhatjuk az E{xx T } = EDE T összefüggést, amelyben az E az E{xx T } sajátvektoraiból összeállított ortogonális mátrix, D pedig a sajátértékekből képzett diagonális mátrix. A fehérítés a következőképpen hajtható végre: x = ED 1/2 E T x, (6.18) ahol a D 1/2 mátrix a diagonalitás miatt egyszerűen úgy állítható elő, hogy a főátlóbeli elemeket a 1/2-dik hatványra emeljük. Az ED 1/2 E T szorzatot nevezzük fehérítő mátrixnak [?]. Könnyen ellenőrizhetjük, hogy az E{ x x T } = I összefüggés fennáll. A fehérítő transzformáció az A keverőmátrixot egy à mátrixba transzformálja át. Az alábbi összefüggést írhatjuk fel: x = ED 1/2 E T As = Ãs. (6.19) A fehérítés elvégzésére neurális hálózatos megoldások is léteznek, és ilyen célra PCA hálózatokat alkalmaznak. A fehérítő mátrix adaptív módszerrel történő meghatározására több módszert is kifejlesztettek, amelyek közül az egyik legegyszerűbb a következő iteratív algoritmus: Q(k + 1) = Q(k) µ(k) [ x(k) x(k) T I ] Q(k), (6.20) ahol Q(k) a fehérítő mátrix a k-adik iterációban, µ(k) pedig a tanulási aránytényező [?]. Hasonló eredményt érhetünk el például az általánosított Oja altér hálózattal, amelynek súlymódosítása a következő: Q = η [ yx T (yy T )Q ]. (6.21) A stabilitás növelése érdekében a kimenetnél nemlinearitást, küszöbfüggvényt is alkalmazhatunk [?].
6.3. AZ ICA ALGORITMUSOK 81 A Földiák által ajánlott háló, amelynek kimenete: y = (I W) 1 x és súlymódosítása W = η(i yy T ), viszont módosításra a szorul. Ennek oka a következő: az adaptív fehérítéskor az egyik célunk az, hogy elkerüljük a számításigényes mátrix inverziót, amelyre jelen esetben szükség lenne. A módosított struktúrában előrecsatoló összeköttetések vannak, a háló kimenete pedig: y = (I + Q)x. (6.22) Ebben az esetben annak a mérésére, hogy a kimenet kovariancia mátrixa mennyire közelíti meg az egységmátrixot (ez természetesen a Q mátrix függvénye), a következő függvény szolgál: Φ(Q) trace(c yy ) ln [det(c yy )] N, (6.23) ahol a trace(.) operátor a mátrix nyomának számítását jelöli [?]. A fehérítés során a Φ(Q) minimalizálására kell törekedni. Ugyancsak alkalmazhatók a fehérítő transzformáció mátrixának meghatározására az általánosított Hebb szabályt (Generalised Hebbian Algorithm, GHA) alkalmazó Sanger, és az APEX háló is, hiszen ezek szintén PCA hálók. Végezetül érdemes megvizsgálni, hogy miért is célszerű alkalmazni a fehérítést abban az esetben is, ha nem szükséges. A fehérítés előnye, hogy az új à keverőmátrix ortogonális lesz, ami a következőképp látható be: E{ x x T } = ÃE{ss T }à T = Ãà T = I, (6.24) élve azzal a feltételezéssel, hogy az s i komponensek egységnyi varianciájúak [?]. A fehérítéssel tehát lecsökkentjük az ICA transzformáció során becsülni szükséges paraméterek számát. Ahelyett, hogy az eredeti A mátrix n 2 számú elemét kellene meghatároznunk, elegendő egy ortogonális à becslése, amelynek n(n 1)/2 szabadságfoka van. Kétdimenziós esetben például egy ortogonális transzformáció egy szögparaméter által meghatározott, magasabb dimenziószámok esetén pedig egy ortogonális mátrixot körülbelül feleannyi paraméter jellemez, mint egy tetszőlegest. Így akár azt is mondhatjuk, hogy a fehérítés a felére redukálja az ICA problémát. Érdemes azonban azt is megvizsgálni, hogy a fehérítés miért nem oldja meg a szeparálási problémát. Ez azért van, mert a fehérítés csak egy rotáció erejéig definiált: ha Q 1 egy fehérítő mátrix, akkor Q 2 = UQ 1 is az, akkor és csak akkor, ha U ortogonális [?]. Gyakran hasznos lehet, esetenként pedig szükséges is lecsökkenteni az adat dimenzióját a fehérítés közben. A dimenziószám csökkentése eredményezheti a zaj csökkenését, és a túltanulást is megakadályozhatja. A dimenziócsökkentés úgy történhet, a PCA eljárásokban megszokott módon, hogy az E{xx T } sajátértékei közül a legkisebb(ek)et elhanyagoljuk. A PCA eljárás lehetőséget nyújt arra is, hogy meghatározzuk a független komponensek számát, ha több kevert jel van, mint forrás - (m > n). Erre számos módszer létezik, amelyeknek az alkalmazása után az m dimenziót n-re redukálhatjuk, így előáll az n = m, az ICA alapeset.
82 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS További előfeldolgozás Az előbbiekben említett két fontos előfeldolgozási eljárások mellett még természetesen más előfeldolgozó algoritmusokat is használhatunk. Ezek általában feladatspecifikusak, és általánosságban nem érdemes vizsgálnunk. Ilyen eljárás lehet például egyes adatjelek esetében a sávszűrés. Elképzelhető, hogy a feladatmegoldás egyszerűsítése végett még a centerezés és fehérítés előtt szükség van egy adott előfeldolgozási eljárásra, viszont az ICA transzformáció után el kell végeznünk az ennek megfelelő inverz transzformációt. Fontos, hogy ebben az esetben figyelembe vegyük a centerezés és a fehérítés hatását is, és annak megfelelően módosítva végezzük az inverz transzformációt [?]. Az előfeldolgozás elvégzése után el lehet kezdeni a tényleges ICA transzformációt. A következőkben az ICA algoritmusokkal foglalkozom részletesen. 6.3.2. Hérault-Jutten algoritmus Az első kifejlesztett neurális algoritmusok egyike, amely a nem lineáris keresztkorreláció megszűntetésén alapul. A W súlymátrix nem főátlóbeli elemeire vonatkozó tanítási összefüggés: W ij g 1 (y i )g 2 (y j ), i j, (6.25) ahol g 1 és g 2 páratlan nem lineáris függvények, az y i -k számításakor felhasznált iteráció y = (I + W) 1 x. A W főátlóbeli elemeit nulla értékre kell állítani, így az y i -k a független komponensekhez konvergálnak. Sajnos ez az algoritmus csak számos megkötés mellett konvergens. 6.3.3. Nem lineáris dekorrelációs algoritmus Az előző módszerhez hasonlítva megállapíthatjuk, hogy kisebb a számításigény, mivel nem kell mátrixot invertálni, és az algoritmus stabilitása is jobb. Egy lehetséges tanulási szabály: W (I g 1 (y)g 2 (y T ))W, (6.26) ahol y = Wx, a g 1 és g 2 nem linearitások külön-külön alkalmazhatók az y vektor minden komponensére, és az egységmátrix kicserélhető bármilyen pozitív definit diagonális mátrixra. A W mátrix így A 1 -hez konvergál. Egy másik, ebbe a kategóriába tartozó megoldás az EASI (Equivariant Adaptive Separation via Independence) algoritmus: W (I yy T g(y)y T + yg(y T ))W. (6.27) 6.3.4. Entrópikus vagy maximum likelihood algoritmus Az algoritmusok egy fontos osztályának működése a entrópia maximalizálásán alapul, amely ekvivalens maximum likelihood becsléssel abban az esetben, ha az alkalmazott nemlinearitás megegyezik a likelihood becslésben szereplő eloszlásfüggvénnyel. Ezt másképpen úgy is megfogalmazhatjuk, hogy a likelihood becslésben szereplő sűrűségfüggvénynek kell megegyeznie
6.3. AZ ICA ALGORITMUSOK 83 az entrópikus algoritmus nemlinearitásának deriváltjával. Az entrópikus algoritmusok általában egyszerű gradiens módszerek, melyek tanulási szabálya lehet például az alábbi: W [W T ] 1 2 tanh(wx)x T, (6.28) ahol a tanh(.) függvényt a Wx vektor mindenegyes komponensére alkalmazzuk. A tanh(.) függvény azért célszerű választás, mert az a logisztikus eloszlás logaritmikus sűrűségfüggvényének a deriváltja. A gyakorlati tapasztalat szerint jól használható a szuper-gauss 2 jelek független komponenseinek meghatározásához, de a szub-gauss 3 jelekhez más függvények szükségesek. A vizsgálatok szerint a konvergencia meglehetősen lassú, ugyan javítható valamelyest a fehérítéssel, de jobb módszer a természetes - vagy más néven relatív - gradiens használata, amely jelentősen javítja a konvergencia tulajdonságokat. A tanulási szabályt úgy kaphatjuk, ha az előző összefüggést jobbról megszorozzuk W T W-vel: W (I 2 tanh(y)y T )W, (6.29) ahol y = Wx. Ezután a módosítás után az algoritmus már nem igényel fehérítést. Érdekesség, hogy ez a tanulási szabály a nem lineáris korrelációs szabályok közül az elsőnek egy speciális esete. A maximum likelihood algoritmusok közül meg kell még említeni a Newtonmódszereket. Ezek nagy előnye, hogy már néhány iteráció után is jó közelítést adnak, hátrányuk azonban, hogy minden lépésnél a mátrix inverzére vagy legalább annak a közelítésére van szükség. Meg kell azonban jegyezni, hogy a Newton-módszer nem tekinthető neurális megoldásnak. 6.3.5. Nem lineáris PCA algoritmusok Ezek az algoritmusok nem linearitásokat használnak a tanulási szabályaikban. A súlymódosítási szabályok a következők: w i y i x g(y i ) i j=1 y jw j w i g(y i )x g(y i ) i j=1 y jw j w i g(y i )x g(y i ) i j=1 g(y j)w j, ahol g egy megfelelően megválasztott nem lineáris skalár függvény. A nem linearitás egyben azt is jelenti, hogy a tanulásban a magasabb rendű információk is szerepet játszanak. Így a tanulási szabályok különböző magasabb rendű technikákkal hozhatók kapcsolatba, és bizonyított, hogy a nem linearitás megfelelő megválasztásával az eljárás ICA transzformációnak felel meg, feltéve, hogy az adat fehérített. 6.3.6. Bigradiens algoritmus A nem lineáris PCA algoritmus egyszerűsítéseként nyerhetjük a bigradiens algoritmust. A tanulási szabályban levő visszacsatoló tag jóval egyszerűbb: W(t + 1) = W(t) + µ(t)xg(y(t)) T + αw(t)(i W(t) T W(t)), (6.30) 2 Gaussnál csúcsosabb sűrűségfüggvényű 3 Gaussnál laposabb sűrűségfüggvényű
84 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS ahol µ(t) a tanulási aránytényező, α egy a [0, 5, 1] tartományba eső konstans, a g függvényt az y = W T x vektor minden komponensére külön-külön kell alkalmazni. Az adatról megint csak azt feltételezzük, hogy fehérített. 6.3.7. Neurális egykomponenses tanulási szabályok Az ebbe a kategóriába tartozó összefüggések úgy hozhatók létre, hogy az Oja-szabályt módosítjuk, és így lehetővé válik, hogy a független komponenseket egyesével szétválasszuk. Az ilyen tanulási szabályok olyan sztochasztikus gradiens eljárások, amelyek az egykomponenses költségfüggvényekre alkalmazhatók. Fehérített adatra alkalmazható például a következő egyszerű tanulási szabály: w xg(w T x) w. (6.31) A g függvény ebben az esetben polinom: g(u) = au bu 3, ahol a > 1 és b > 1. Ezen szabály alkalmazásakor az eljárás egy negatív kurtózisú (szub-gauss) komponenshez konvergál, de léteznek szabályok pozitív kurtózishoz és nem fehérített adatokhoz is. Általánosságban el lehet azonban mondani, hogy a fehérített adatokhoz megalkotott tanulási szabályok gyorsabb konvergenciát eredményeznek. Több független komponens becsléséhez több egységből álló rendszerre van szükség, amelyben minden egység egykomponenses tanulási szabály szerint működik, és az egységek között visszacsatoló mechanizmusoknak is kell lenni. A sokféle költségfüggvényhez sokféle neurális algoritmus használható. A tanulási szabályokban szereplő nem linearitás gyakorlatilag bármilyen más nem lineáris függvényre kicserélhető, a normalizáló tagot ekkor azonban ennek megfelelően módosítani kell. 6.3.8. Fix pontos algoritmus A sztochasztikus gradiens módszereken alapuló adaptív algoritmusok alkalmazása feleslegesen bonyolítja a megoldandó feladatot akkor, ha adaptivitásra nincs szükség. A gyakorlatban ilyen eset nagyon sokszor előáll: a konvergencia lassú lesz, és a tanulási aránytényező megválasztásától függ. Az ilyen problémák kiküszöbölésére szolgálnak a fix pontos algoritmusok. Fehérített jelre az egykomponenses fix pontos algoritmus formulája a következő: w(k) = E{xg(w(k 1) T x)} E{g (w(k 1) T x)}w(k 1). (6.32) ahol w súlyvektor, amelyet mindenegyes iterációs lépés után normalizálni kell, g a korábbiakban említett G általánosított költségfüggvény deriváltja, az pedig a deriválás operátorát jelöli. A neurális tanulási szabályokkal szemben abban az esetben, ha nem fehérített adatra alkalmazzuk az eljárást, a konvergencia sebessége nem csökken jelentősen. A fix pontos algoritmust használó egységek kombinálhatók úgy, mint a neurális tanulási szabályoknál, lehetőséget nyújtva ezáltal több komponens becslésére. A fix pontos algoritmusok neurálisak abban az értelemben, hogy elosztottak és párhuzamos működésűek, ezzel szemben nem adaptívak. Ahelyett, hogy egyesével használná fel
6.3. AZ ICA ALGORITMUSOK 85 az újabb és újabb mintákat, mindenegyes lépésnél nagyszámú adattal dolgozik. A konvergencia tulajdonságok sokkal jobbak, mint a neurális algoritmusok esetében. A konvergencia sebesség arányok a megfigyelések szerint 10 és 100 között változhatnak (a fix pontos algoritmus javára). 6.3.9. Sajátértékeken alapuló algoritmusok A neurális vagy általánosabban a sztochasztikus gradiens algoritmusok mellett a másik nagy csoportot azok az ICA algoritmusok alkotják, amelyek a sajátérték felbontáson alapulnak. Ezek az algoritmusok nem igényelnek előfehérítést. Negyedrendű tenzorok Nagyon sok olyan algoritmust alkottak meg, amelyek az ICA becslést a negyedrendű kumuláns tenzorok felhasználásával valósítják meg. Ezek tipikusan úgynevezett batch (kötegelt, nem adaptív) algoritmusok, amelyek olyan tenzoriális technikákat alkalmaznak, mint a sajátmátrix felbontás, ami a sajátérték felbontás általánosítása a magasabb rendű tenzorokra. Az ilyen felbontások a mátrixoknál szokásos eljárásokkal megoldhatók, csak m 2 m 2 méretű mátrixokat igényel, melyek mérete igen nagy. A batch algoritmusok akkor hatékonyak, ha a komponensek száma kicsi, nagy komponensszám esetén viszont a memória igény nagyon megnövekszik. Egy negyedrendű tenzor esetében például m 4 nagyságrendű a memóriaigény, ami teljesíthetetlen követelmény lehet. A kivitelezés programozói szempontból is nehézkes, mert bonyolult mátrixműveleteket kell végrehajtani. Súlyozott kovariancia mátrix A súlyozott kovariancia mátrix sajátérték felbontása lehetővé teszi az ICA becslést lineáris algebra alapmódszereinek segítségével, mégpedig kezelhető méretű m m mátrixok felhasználásával. Ez az eljárás azzal a feltétellel működik, hogy minden független komponens kurtózisa különböző.
86 FEJEZET 6. FÜGGETLEN KOMPONENS ANALÍZIS
Irodalomjegyzék [1] Dr. Pap László, dr. Imre Sándor, A mobil hírközlés alapjai, egyetemi jegyzet, 2001. [2] John G. Proakis, Digital communications, 3rd ed., McGraw-Hill, New York, 1995. 87