VEZETÉS- ÉS SZERVEZÉSTUDOMÁNY
DR. MEZEY GYULA
ELŐREJELZÉS ÉS A MESTERSÉGES INTELLIGENCIA LEHETŐSÉGEI
A fejlett országok jelenlegi közigazgatása olyan társadalmi jelenségek, mozgások irányítását (befolyásolását) igyekszik megoldani, ahol a társadalmi szituációt, mozgásokat a már eddig is hagyományosan felhasznált modellek mellett egészen újfajta modellezéssel kísérli meg leírni. E modellek voltaképpen a vezetői döntést előkészítő, támogató, segítő „szerszámok”. Újfajta modellek például a meteorológiából eredő ún. káosz-elmélet vagy akár a társadalom változásait az élővilág alapvető helyzeteihez (population genetics) hasonlítva modellező ún. gén (a továbbiakban: genetikus) algoritmusok (rövidítve: GA). De ilyenek még az ún. szakértői rendszerek vagy akár az ún. neurális hálózatok is. Utóbbiak az agy működésének mintájára kialakított számítógépes eszközök (lényegében tanítható gépek), amelyek a döntések előkészítéséhez jól alkalmazható eszközöknek bizonyulnak. Különösen akkor van ezeknek a döntést segítő „szerszámoknak” fontos szerepük, ha a megoldandó probléma bonyolult, nehezen áttekinthető, ugyanakkor gyorsan kell a döntést meghozni. Például egy korszerű eszközökkel vívott háború lehet olyan, hogy a tűzparancs kiadására csak másodpercek, az ütközetek megvívására percek, az egész hadműveletre mindössze néhány nap áll rendelkezésre. A szakértői rendszer azonban nem csak a gyors döntéshozatalnál jó —, alkalmas például havi, illetve hosszabb távra szóló egyéni vagy csoportos döntések támogatására is.
KÁOSZ-ELMÉLET A káosz-elmélet a természetben és a társadalomban előforduló, számunkra rendezetlennek tűnő, kaotikus helyzetek modellezésére jó. A kutatások azonban feltárták, hogy a rendkívül bonyolult, áttekinthetetlen(nek tűnő) helyzetek leírására elég gyakran tulajdonképpen matematikailag egyszerű egyenletrendszer szolgál, amelyen azonban számos iterációt elvégezve állt elő a számunkra már kaotikusnak látszó rendszerállapot.
A káosz-elmélet célja kevésbé az előrejelzés, inkább a természeti (és a társadalmi) turbulens folyamatok összefüggéseinek a feltárása. Minden kaotikus rendszeren belül létezik valamilyen visszacsatolás. A visszacsatolt rendszer matematikai modelljének (ami feltételezésünk szerint egyenletrendszer) megoldása iteratív módon lehetséges — az előző megoldás értékét bemenetként visszavezetve az egyenletbe egyre pontosabb megoldás-sorozatot kapunk. Igen ám, de előttünk az egyenlet nem ismert. A káosz-elmélet ezért valójában csak kevéssé elmélet, inkább ezt az ismeretlen egyenletet „kihámozni akaró” kísérletező, próbálgató modellalkotás. A matematikai modell „javítása” iterációs menetekben történik, az iterációk számától függő kimeneti értékek pedig pl. egy ún. fázis-síkon szemlélhetők. [1; 22—28. o.] A megoldás — az esetek széles körében — erősen függhet az ún. kezdeti feltételek értékétől. Mivel ezeket az értékeket általában még hozzávetőleg sem ismerjük, ezen rendszerek állapotának hosszabb távú előrejelzése lehetetlen. Más esetekben nincsen ilyen (a kezdeti feltételek értékétől való) függés, sőt — számunkra szokatlan és meglepő módon — ugyanazon rendszer egy bizonyos helyzetben erősen függhet, más helyzetben pedig független lehet a kiinduló feltételek értékétől — minden a rendszer pillanatnyi állapotától függ. Azt, hogy a rendszer kimeneti értéke milyen mértékben függ az egyenlet (vagy inkább egyenletrendszer) kiinduló értékeitől, pl. egy másik, ún. határ-ciklus gráfon illusztrálható. Általában megfigyelhető az, hogy bizonyos kiinduló értékek esetében a vizsgált rendszer át fog menni egyik állapotából, amely pl. rendezett, egy másikba, amely pl. rendezetlen, kaotikus. A határciklus gráf alakjában fellépő változás olyan jel, amely azt jelezheti, hogy a rendszer állapotában átmenet fog következni. Ez fontos figyelmeztetés a vezetők számára. [2] Amikor még nem is számít senki a káosz esetleges bekövetkezésére, későbbeni biztos fellépése már jelezhető a rendszer kimeneti idősoraiból. Idősorokból a káosz „meglétének” kimutatására szolgáló ún. R/S (Rescaled Range — Újraskálázott terjedelem) elemzés gyakran arra is utal, mintha egy-egy rendszernek lenne valamelyes emlékezete — azaz a múlt (legalább részben) befolyásolja a jelent. Például gyorsan fejlődő iparágban a várható tőzsdei hozamok körülbelüli értéke egy-két évvel előre jelezhető, míg a lassan fejlődő iparágakban a hozam nagyságrendje elvileg pontatlanabbul, de hosszabb időszakra jósolható meg. Társadalmi rendszerek esetén (ilyen pl. a tőzsde is) érthető is ez az emlékezet és a múlt tapasztalatain keresztül a jelenre ható döntések, csakhogy e jelenség a természetben (pl. áradások idősorai stb.) is fennáll. Akár kormányzati, akár gazdálkodó szervezetek stratégiai döntései és a szervezetek teljesítményét is kifejező komplex szervezeti magatartás közötti összefüggések vizsgálata arra utal, hogy a kettő között egy nem túl bonyolult, alapvető összefüggés létezik. De anélkül, hogy ezt az összefüggést ismernénk (márpedig sajnos többnyire éppen ez az egyenletrendszer ismeretlen), az előrejelzés szinte lehetetlen. Ezért a tervezőknek marad az ún. inkrementális (tehát kis lépésekben történő, óvatos) és az ún. adaptív tervezés, mint két lehetséges tervezési technika. [3; 44—56. o.]
A káosz-elmélet tehát arra mutat rá, hogy számos helyzetben a helyes előrejelzés hosszabb távra elméletileg is csaknem teljesen lehetetlen azért, mivel sem az összefüggéseket leíró egyenletek, sem a kezdeti feltételek számértéke vagy egyáltalán nem, vagy csak nagyon pontatlanul ismert. A rendszerek a felszínen többnyire stabil magatartást mutatnak, és az állapotátmenetek váratlanul, viharszerű gyorsasággal zajlanak úgy, hogy ennek nincsenek jó előre könnyen felismerhető jelei.
A káosz-elmélet alkalmazhatósága Ha az a vizsgálat célja, hogy egy rendszer vázlatos, de nem részletekbe menő viselkedését írjuk le, akkor a káosz-elmélet közelítésmódja erre alkalmas, de a rendszeren belüli összefüggéseket, pl. a rendszer belső struktúráját ezzel nem lehet feltárni. Nem is kell semmiféle, a belső összefüggésekre vonatkozó hipotézist, kiinduló elgondolást felállítanunk, számítógép programozásra szükség nem lesz, elég csak a kifelé mutatott magatartás és a rendszerállapot jellemzők összefüggéseinek regisztrálása, elemzése. Ha a vizsgálat célja az, hogy egy rendszer jövőbeli viselkedését jelezzük előre, akkor a káosz-elmélet szerepe csupán annyi, hogy arra mutathassunk rá, hogy a rendszer jelenlegi állapota alapján egyáltalán van-e számottevő remény arra, hogy a jövőbeli viselkedés jól előrejelezhető-e. Ha ez a remény csekély, akkor nincs sok értelme annak, hogy az előrejelzésbe egyáltalán belefogjunk, mert a rendszer jövőbeli állapotának helyes előrejelzése objektíve csaknem lehetetlen. Ez akkor lehetne lehetséges, ha ismert lenne a rendszer matematikai modellje. Kaotikus rendszer belső összefüggéseit leíró matematikai modellnek azonban a kifelé mutatott magatartás mért adataiból „visszafelé való” kikövetkeztetése (reverse engineering) — az eddigi tapasztalatok alapján — szinte teljesen lehetetlennek bizonyult. De még egy kaotikus rendszernek is teljes életciklusa során vannak olyan szakaszai (állapotai), amelyekben a jövőbeli viselkedésének az előrejelzése viszonylag sokkal jobban lehetséges. Gyakori jelenség, hogy ezek viszonylag stabil állapotok (szakaszok), és ezekkel a kaotikussá váló szakaszok egymást váltogatják, és általában meghatározható az állapotváltás ciklusideje (azaz a szakaszok hossza). Egy viszonylag stabil szakaszon belüli időhorizontra egy előrejelzést elkészíteni nagyon is hasznos dolog, de ha az időhorizont már átnyúlna a következő kaotikus szakaszba, akkor a hosszabb távra való előrejelzés esetleg teljesen félrevezető eredményt hozhat, és ezekre a szakaszokra nézve az előrejelzés objektíve eleve megbízhatatlan.
A biológia világából vett minták alapján alkotott modellek A neurális hálózatok és a genetikus algoritmusok abban különböznek a káoszelmélettől, hogy ezek nem a természet világát megmagyarázni szándékozó eszközök, hanem az élővilág és a biológia világából „ellesett” minták alapján alkotott, előrejelzésre például hatásosabban használható modellek. A neurális hálózat az agykutatás eredményeire alapozva az agy neuron (idegsejt) hálózatának működését modellező szoftver. A genetikus algoritmus pedig a törzsfejlődés folyamatában működő természetes kiválasztás és az ún. adaptív szabályozás lépéseit modellező szoftver. Idegháló (neurális hálózat) A neurális hálózat — éppúgy, mint agyunk idegsejt-hálózata, — a bonyolult adatbemenetet egy jelentést hordozó kimeneti jelsorozattá tudja átalakítani. Az adaptív rendszerek ún. tanuló rendszerek. Az emberi agy funkcióit biológiai ideghálózatok hajtják végre. A neurális hálózat pedig az agy belső felépítését utánozva kialakított számítástechnikai modell, amely „tanítható”, mégpedig célszerűen ember felügyelete mellett. Ismertek kell legyenek a bemeneti értékek és a kívánt kimeneti értékek, és nagy vonalakban az is, hogy a rendszeren belül mely funkciók milyen sorrendben való végrehajtása zajlik le. Itt több dolgot tudunk, mint a káosz-elméletnél, de a rendszeren belüli működést leíró részletes modell itt sem kell ismernünk. Neurális hálózatok alkalmazása esetén a rendszer belsejét — a káosz-elmélethez hasonlóan — egy ún. fekete doboznak tekintjük (black box). Eredményképpen sem kapunk valami egyenletet vagy matematikai modellt. Az ideghálózat maga a tanuló-modell. Ismert bemeneti értékeket adunk meg, majd az ideghálózatot működtetjük és megnézzük, hogy az elvárt kimeneti értékeket produkálja-e (tesztelés). Ha nem, akkor átállítunk valamit az ideghálózat szerkezetén, majd újabb tesztet hajtunk végre (training cycle). Mindezt annyiszor végezzük el, amíg az ideghálózat — mint egy tanulógép — „meg nem tanulta” a „helyes viselkedést”. Ez a tesztelés azonban rendkívül időigényes lehet, és tulajdonképpen explicite kifejtve nem is fogjuk megismerni az ideghálózaton belül kialakított rendszer tényleges struktúráját, hanem annak csak egy áttételes — az idegháló csomópontjai közötti kapcsolatok számát és típusait, a rejtett rétegek számát stb. megjelölő — megadása fog rendelkezésünkre állni. Neurális hálózatok alkalmazhatósága A neurális hálózat pl. előrejelzés készítéséhez is alkalmas, annak beválását értékeli, majd ezt figyelembe véve új előrejelzés készül. Ez a hibáiból is tanuló modell, amelyet erre szolgáló bemenőt adatokkal „tanítanak meg” egyre pontosabb előrejelzést adni. [4; 20. o.] A tanulás gyorsasága és „tudás minősége” között hozzávetőlegesen fordított arány áll fenn.
Hatékony „tanítás” az ideghálózatok alkalmazásában nagy gyakorlati tapasztalattal rendelkező számítástechnikusoktól várható, munkájukat speciális program segítheti. Számítógép programozásra azonban nincsen szükség. [5; 899—916. o.] Bárhogyan is változnak a körülmények (pl. új szabályozás lép be), azokat a neurális hálózat viszonylag sokkal gyorsabban képes megtanulni, mint egy ún. szakértői rendszer, amelynél a hozzáadott illetve a megváltozott szabályok miatti új szabálybázis kialakítása viszonylag sokkal lassabb folyamatot jelent. [6; 926—947. o.]
GENETIKUS ALGORITMUSOK (GA) A gén vagy másképpen genetikus algoritmusok (a törzsfejlődés analógiájára) egy probléma lehetséges megoldásait úgy kezelik, mintha e megoldások gének alkotta (innen jön a „genetikus” elnevezés) összetett, ún. kromoszómaszerű szerkezetek lennének, melyek közül a néhány „legéletrevalóbb” a természetes kiválasztódás törvénye alapján választódna ki, majd ezek egymást követő egyre jobb és jobb szerkezetű generációkká (problémamegoldásokká) fejlődhetnének tovább A gén-algoritmusok matematikai elemzése bonyolult, elméleti kezelésük nehézkes a hagyományos vagy akár a statisztikai módszerekkel is. A GA-szakirodalom döntő része ma távol áll az elmélettől, és arról szól, hogy valamely GA egy-egy megoldandó problémára alkalmazott ad hoc változata milyen teszteredményeket produkált. Nem azt igazolják elmélettel alátámasztva, hogy miért jobb az egyik változat teljesítménye, mint a másiké, és hogy milyen helyzetben melyik változat alkalmazása helyes. A GA szakterülete nem az elméleti, hanem a „kísérleti” matematika, azaz a számítástechnika területe. [7] Egy GA alapvetően fontos műveletei: ¨ keresztezés: új gént nem produkál, de új génanyag-kombinációt igen; ¨ kiválasztás: új gént nem produkál; ¨ mutáció: új gént produkál. A fenti műveletekből kialakított GA azt célozza, hogy — a természetes kiválasztódás és a törzsfejlődés természetben lezajló folyamatához hasonlóan — a „legvonzóbb” megoldáshoz jussunk el a környezethez való alkalmazkodás közben. A genetika felfogása szerint egy szervezet alkalmazkodása két szinten lehetséges: 1. Az első szinten a szervezet megtanulja, hogyan képes „jobban túlélni” a környezetében, mint a versenytársai — de a GA nem ezzel foglalkozik. 2. A második (magasabb) szinten a szervezetek „új generációja” az eddig „jobban túlélő” szervezeti struktúrák kereszteződéséből (összeolvadásából), az „öröklött” adottságok új kombinációiból, valamint a mutánsaiból áll össze. A GA az „öröklött” tulajdonságoknak a túléléshez legjobban idomulni képes variációja megkeresésével foglalkozik, ami alapvetően genetikai jellegű probléma.
Egy GA tipikus lépéssorozata az alábbi: 1. Behatároljuk a lehetséges megoldások kiinduló halmazát. 2. Kiszámítjuk a halmaz minden egyes elemének ún. teljesítményértékét. 3. Teljesítményértéke alapján sorba rendezzük az elemeket. A legrosszabbul teljesítőket el fogjuk hagyni a halmazból (szülőkiválasztás), és helyükre a legjobban teljesítő másolatai kerülnek majd. Így kialakul az első utódgeneráció (gyerekek). 4. Az első utódgeneráció alkotta halmaz elemeire alkalmazzuk a keresztezés és a mutáció műveleteit. Így kialakul a második utódgeneráció (unokák), majd új ciklus kezdődik a 2. pontra visszaugorva. A GA esetében a teljesítményérték-hozzárendelésen kívül a felhasználónak csupán a GA ún. finomhangolását kell elvégeznie, de a GA (nagyon sokféle probléma megoldásához) egy és ugyanazon számítógépes program.
A GA alkalmazhatósága A GA alkalmazható arra, hogy feltárja a kedvező cselekvési változatokat, stratégiákat. Ha az a vizsgálat célja, hogy egy rendszer jövőbeli viselkedését írjuk le, akkor a GA-technika erre alkalmas, de a rendszert itt nem tekintjük egy fekete doboznak, hanem van legalábbis egy átfogó elméletünk, egy kiinduló hipotézisünk arra nézve, hogy a rendszer hogyan van belül strukturálva, és hogyan működik. Maga a GA alkalmas arra, hogy először ezt a hipotézisünket bizonyíthassuk a segítségével. De ha igazolható hipotézisünk nincsen, azaz a belső működésre nincs nagyvonalú modellünk, akkor a GA-technika előrejelzésre sem lesz alkalmazható. A GA-technika egy konkrét problémára való alkalmazásakor kell valamelyes számítógép-programozás (de nem sok!), mert meg kell írni a bemenő adatok fogadására és az ún. teljesítmény-számításra vonatkozó részletet. Vannak azonban már olyan felhasználóbarát GA szoftver-felületek, amelyek a programozást nem, csak a paraméterek átállítását igénylik. [8] A GA ideális a pontatlanul vagy éppenséggel tévesen felállított hipotézisek kezelésére, helyreigazítására. Rendkívül bonyolult, komplex, nagyméretű optimalizálási feladatok megoldására igen alkalmas. [9] Az alábbi mintapélda kapcsán illusztráljuk egy tipikus GA főbb lépéseit: Tételezzük fel, hogy egy hazai hadiipari vállalatunk NATO-kutatás keretében meghökkentően új fegyvert fejlesztett ki. A kiváló termék iránti igényt a gyártó hadiipari cég marketing főosztálya az elkövetkező néhány év tekintetében 20 000 db/év-re becsülte. Úgy vélik, hogy az első néhány gyártási éven belül ez az igény sem szezonálisan, sem más értelemben nem fog ingadozni — egyenletes marad. Az éves termelés ezért pl. negyedévenként egy-egy 5000 db-os sorozatban is történhetne, de természeten más sorozatnagyság is szóba jöhet. Az optimális sorozatnagyságot a termék fix és a proporcionális költségeinek, valamint a vállalat
éves termelési tervében jóváhagyott mennyiségnek (amelyet ekkor már elsődleges szükségletnek fogunk nevezni, és példánkban ez éppen 20 000 db/év) a figyelembevételével az alábbi módokon határozhatjuk meg: ¨ táblázat áttekintésével, ha az összefüggések táblázatos formában adottak (táblázatkezelő program segítségével bepróbálgatva sorozatnagyság-értékeket); ¨ képlet segítségével (ismert a gazdaságos rendelési mennyiség képlete); ¨ GA felhasználásával. Előre kell bocsátani, hogy itt most nem a GA, hanem csak egy lehetséges GA vázlatos bemutatására kerül sor, mert a GA-nak sokféle eljárásbeli változata van, és egy konkrét megoldandó feladat matematikai megfogalmazása is többfajta módon történhet. 1. AZ ELSŐ LÉPÉS MINDJÁRT A MEGOLDANDÓ FELADAT MATEMATIKAI MEGFOGALMAZÁSA. Ha a feladatot a gazdaságos rendelési mennyiség meghatározására szolgáló képlettel kívántuk volna megoldani, akkor a függő változót (itt az optimális sorozatnagyságot) három függetlennek tekintett változó: a termék fix és a proporcionális költségének, valamint az elsődleges szükségletnek a megadása alapján számítanánk ki a függvénykapcsolatuk ismeretében. A GA alapján történő feladatmegoldásnál azonban csak két változóra — az optimalizálni kívánt függő változóra (sorozatnagyság) és a hozzá tartozó ún. teljesítményre kell fókuszálnunk. A független változók közötti függvényt, azaz a kapcsolatukat hordozó struktúrát (képletet) részleteiben nem kell ismernünk. A független változók konkrét értékeit sem kell a feladat megoldásához megadni. Tulajdonképpen megfordul a szemléletünk — amit eddig függő változónak (pl. sorozatnagyság) tekintettünk, azt vesszük független változónak, és amit eddig független változók (fix és a proporcionális költségek) alapján számítható függvényértéknek (összköltség) tekintettünk, azt ettől a — újabb szemléletünkben független — változótól („visszafele”) függő teljesítmény függvényértékének vesszük. Ha ismernénk a változók közötti összefüggéseket részleteiben leíró képletet, akkor ezt — formálisan — a képlet átrendezése fejezhetné ki. Azonban ezt a képletet általában nem is ismerjük — azért alkalmazunk GA-t. Viszont legalább a sorozatnagyság és összköltség közötti összefüggésre, valamint annak a feltételezésnek az ismeretére, hogy ahol minimális az összköltség, ott lesz maximális a nyereség, mégiscsak szükség van — e nélkül még a GA sem lesz alkalmazható. Egy GA alapvetően fontos műveleteinek (keresztezés, kiválasztás, mutáció) számítástechnikai végrehajtása egyszerű, ha az egyes problémamegoldásokat bináris vektorok (vagy stringek) decimális értéke fejezi ki. A lehetséges megoldások összessége pedig akkor egy bináris mátrixot fog alkotni. Példánk esetében a gazdaságos rendelési mennyiség (itt: sorozatnagyság) 1-től max. 20 000-ig terjedhet, így a bináris mátrixnak lehetne 20 000 sora (mind egyegy lehetséges megoldás) és 15 oszlopa. Azért 15 oszlop, mert a bináris vektor 1 és 20 000 közötti decimális értékeit 14 helyérték segítségével még nem (214=16 384), hanem csak 15 helyérték (215=32 768) segítségével tudjuk megadni. Persze ennek a
mátrixnak a kitöltését egy programmal automatikusan végeztetjük el. Nem mindegy azonban, hogyan működik ez a program. A lehetséges megoldások kezdeti halmaza (populációja) úgy áll elő, hogy a mátrix vektorcelláiba — általában a sorvektorok sorrendje szerint haladva — véletlenszerűen vagy 0-át vagy 1-et írunk be. Ha egy sorvektor decimális értéke meghaladná a 20 000-et, akkor az ilyen sorvektort vagy megfelelően módosítjuk, vagy inkább újraírjuk úgy, hogy decimális értéke ne haladja meg a 20 000-et. Ezzel behatároltuk a lehetséges megoldások kiinduló halmazát. 2. KISZÁMÍTJUK A KIINDULÓ HALMAZ MINDEN EGYES ELEMÉNEK ÚN. TELJESÍTMÉNY ÉRTÉKÉT. Ehhez a lépéshez elengedhetetlen az, amit már előrebocsátottunk, hogy a rendszert itt nem tekintjük egy fekete doboznak, hanem igenis van — legalább részleges — információnk arra nézve, hogy a rendszeren belül a függő és a független változók között milyen hatáskapcsolatok léteznek. Táblázat, képlet vagy akár szubjektív becslés segítségével meg kell tudnunk ugyanis most sorra azt állapítani, hogy mekkora a kiinduló halmaz minden egyes elemének ún. teljesítmény értéke. A kiinduló halmaz elemei a lehetséges sorozatnagyságokat jelölik, a teljesítményérték pedig célszerűen a megfelelő sorozatnagysághoz tartozó nyereségünk számértéke lesz. Legnagyobbnak annak a sorozatméretnek a teljesítményét minősítjük, ahol maximális a nyereség (azaz ahol minimális az összköltség). Ha ehhez nem lenne elegendő információnk, akkor célszerűbb, ha lemondunk arról, hogy a feladatunkat a GA segítségével oldjuk meg. Tegyük azonban fel, hogy példánk esetében képesek voltunk arra, hogy legalább becslést adjunk a kiinduló halmaz minden egyes elemének ún. teljesítményértékére. 3. TELJESÍTMÉNYÉRTÉK SZERINT ÁLTALÁBAN SORBA SZOKTÁK RENDEZNI AZ ELEMEKET. Alkalmazzuk a szelekció műveletét, azaz a legrosszabbul teljesítőket el fogjuk hagyni a halmazból (szülő kiválasztás), és helyükre a legjobban teljesítő elem másolatai kerülnek majd. A természet világában a szelekció nem egy gyors folyamat és ha ehhez igazodunk, akkor a kiinduló halmazból csak egy (vagy néhány) legrosszabbul teljesítőt hagyunk majd el — de beállíthatjuk szigorúbban is a programot. Így kialakul az első utódgeneráció (gyerekek). Ennek a generációnak az átlagteljesítménye jobb azáltal, hogy eltűnt belőle a leggyengébb teljesítményt felmutató (néhány) elem, és több lett benne a legjobb teljesítményt felmutató azonos struktúrájú elem (bináris string). Ez utóbbi jelenséget a halmaz konvergenciájának is nevezik. Ha a halmaz túl gyors konvergenciáját állítjuk be, akkor tapasztalat szerint a GA-tól kapott eredmény nem lesz optimális. Ha a konvergencia túl lassú, akkor nő a számítási idő. 4. KERESZTEZÉS ÉS A MUTÁCIÓ MŰVELETEI. Az első utód-generáció alkotta halmaz elemeire alkalmazzuk a keresztezés és a mutáció műveleteit. Így kialakul a második utódgeneráció (unokák), majd új ciklus kezdődik a 2. pontra visszaugorva.
A keresztezés műveletét az alábbi 4 lépésben szokták végrehajtani: a) véletlenszerűen választanak két elemet a halmazból (jegyespár); b) véletlenszerűen eldöntik, hogy a „összeházasítsák-e őket” (legyen-e utódjuk); c) véletlenszerűen kiválasztják, hogy a két génjük hányadik pozícióján legyen a szétválasztás helye, és mindkét gént „kettévágják”; d) végül ezeket a „félgéneket” a jegyespár két tagja egymás közt keresztezve újraegyesíti (két utód születik, míg a két szülő megsemmisül). A mutáció műveletét úgy szokták végrehajtani, hogy a populációt reprezentáló bináris mátrix valamelyik véletlenszerűen kiválasztott cellája eredeti tartalmának 1es komplemensét írják be. A mutáció arányát gyakran 0,1% körüli értéknek választják. A konvergencia mértékét utódgenerációnként az egyes helyértékekre (bitekre) vagy az egyes stringekre úgy állapítják meg, hogy az egybeeséseket (ún. bias) összeszámolják. A GA befejeződik akkor, ha a konvergencia egy elvárt (pl. 95%) mértéke lép fel vagy ha már elég sok (pl. 1000) generáció állt elő.
FELHASZNÁLT IRODALOM [1] PRIESMEYER, R. H.—DAVIES, J.: Chaos theory: a tool for predicting the unpredictable. Journal of Business Forecasting 10, Fall 1991. [2] PRIESMEYER, R. H.: Organizations an Chaos. Westport CT, Quorum Books, 1992. [3] CARTWRIGHT, T. J.: Planning and Chaos Theory. Journal of the American Planning Association 57, Winter 1991. [4] ALEXANDER, M.: Pentagon funds peacetime projects. Computerworld, 11 Feb. 1991. [5] SALCHENBERGER, L. M.—CINAR, M. E.—LASH, N. A.: Neural networks: a new tool for predicting thrift failures. Decision Science 23, July/Aug. 1992. [6] TAM, K. Y.—KIANG, M. Y.: Managerial applications of neural networks: the case of bank failure predictions. Management Science 38, July 1992. [7] GOLDBERG, D. E.—DEB, K.: A comparaive analysis of selection schemes used in GA’s, in: Foundations of GA’s. Ed.: G. J. E. Rawlins, San Mateo, CA:Morgan Kaufman, 1991. [8] KUCHLINSKI, M. J.: Battle Management Systems Control Rule Optimization Using Artificial Intelligence. Techn. Rep. No. NSWC MP 84-329 Dalgren, VA:Naval Surface Weapons Center, 1985. [9] WILSON, S. W.—GOLDBERG, D. E.: A critical review of classifier systems. Proc. of the 3rd Intl. Conf. on GA’s. Ed.: D. Schaffer, San Mateo, CA, Morgan Kauffman Publ., 1989.