Történelem | Jog | Életmód | Földrajz | Kultúra | Egészség | Gazdaság | Politika | Mesterségek | Tudományok |
|
|
|
|
|
Neumann
János, a számítógép feltalálója, aki kétségkívül a huszadik század
legrangosabb elméi közé tartozott, az 1950-es évek elején azt a kérdést
tette fel, hogy létrehozható-e olyan számítógép, amely szaporodni
(!) képes, azaz a természet analógiájára saját magáról másolatot
tud létrehozni. Utolsó könyvében (A komputer és az agy) olyan irányát
jelölte meg a mesterséges intelligencia fejlődésének, amely azóta több
új tudományág létrejöttét eredményezte. Tudnak-e a gépek
szaporodni? Képes lehet-e egy program az evolúció mintájára önmagát
továbbfejleszteni? Létrehozató-e egy teljes ökológiai rendszer vagy társadalom
egyetlen számítógép memóriájában? Ha igen, akkor készíthetünk-e
saját magunkról digitális másolatot, hogy ily módon halhatatlanokká
váljunk?
Alife
A
mesterséges élet (artificial life vagy egyszerűen "alife")
gondolatával csak az utóbbi évtizedben kezdtek el foglalkozni a tudósok.
A mesterséges intelligenciához (AI) hasonlóan ez az interdiszciplináris
kutatási terület is sok különböző tudományág határán helyezkedik
el, így a számítástechnikán kívül a fizikához, a matematikához, a
biológiához, a kémiához és - meglepő módon - a közgazdaságtanhoz,
sőt a filozófiához is kell valamennyire értenie annak, aki ezzel
szeretne foglalkozni. A látszat ellenére az "alife" nem azonos
a mesterséges intelligencia kutatásával vagy a biológiai rendszerek
szimulációjával. Célja az élet alapvető folyamatainak megértése és
modellezése olyan szinten, hogy ebből új létformákat hozhassunk létre,
illetve saját életünk mechanizmusait - talán értelmét is - jobban
megérthessük. Míg a biológusok és AI-kutatók komplex rendszerek és
folyamatok analitikus megértésével foglalkoznak, az "alife"
inkább egyszerű viselkedésekre és túlélési sémákra összpontosít,
amelyekből szintézis segítségével - alapvetően igen egyszerű
sejtekből - egyre bonyolultabb és bonyolultabb "lényeket" próbál
meg létrehozni. Nincs tehát másról szó, mint a számítógép memóriájában
létező lények evolúciójáról és minél tökéletesebb adaptációjáról
egy adott környezet körülményeihez. Neumann
hagyatéka Neumann
János nevét a világ a modern számítógépek feltalálójaként
ismerte meg. Még ma is kevesen ismerik a mesterséges élet és a modern
genetika fejlődését elősegítő kutatásait. Neumann idejében még
nem volt modern genetika, és nem ismertük az emberi öröklődés
mechanizmusának alapjait sem. Így legfőbb vizsgálódásának tárgya a
reprodukció logikájának megértése volt. Neumann nem kisebb eredménnyel
gazdagította a tudományt, mint - a mesterséges élet lehetőségét
keresve tisztán matematikai alapokon jutva el a következtetésig - hogy
bármilyen szaporodási vagy reprodukciós folyamat csak akkor lehetséges,
ha ugyanazt a biológiai vagy matematikai kódot két különböző módon
értelmezzük. Az első fázisban az összeszereléshez szükséges utasításként,
míg a második fázisban egyszerű adatként, amelyet az utódnak a további
generációk életképessége miatt örökölnie kell. A Neumann halálát
követő évtizedben megszületett a modern genetika, s első nagy eredményeként
azt bizonyította, hogy a természet, úgy tűnik, "adaptálta
Neumann ötletét", és valóban ezt a két mechanizmust választotta
minden élet alapjául. A folyamat, amely a DNS formájában kódolt összeszerelései
utasításokból működő gépeket, azaz proteineket gyárt, a valóságban
is e kettősségen alapul. A biológusok ezt a két lépést a transzláció
és transzkripció mechanizmusaként tartják számon. A
mesterséges élet algoritmusainak alapja tehát mindig egy egyszerű
sejt, amely bizonyos funkciókat képes ellátni, például a környezetéből
információt gyűjteni, majd annak függvényében egyetlen jelet kiadni
(mesterséges neuron), öröklődéssel osztódni, valamint a környezethez
alkalmazkodni. Ezekből az igen egyszerű elemekből azután bizonyos szabályszerűségek
figyelembevételével bonyolult rendszerek építhetők fel, amelyek különböző
komplex funkciók ellátására képesek. Neumann modellje az ún. celluláris
automaták elvén alapul. Celluláris
automaták A
celluláris automaták működésének lényegét röviden úgy érzékeltethetjük,
hogy elképzelünk egy nagy négyzethálót, ahol sakktáblaszerű
elrendezésben minden egyes kocka egy sejtnek vagy más szóval elemnek
felel meg. Ezek az elemek bármely adott pillanatban különböző színekkel
jelzik, hogy éppen mit csinálnak vagy milyen belső állapotban (internal
state) találhatók. A rendszer működése során minden elem végzi a
maga feladatát. Ezt mi kívülről úgy érzékelhetjük, hogy látjuk,
amint a színüket egyszerre változtatják. A hálózat összes eleme
ugyanazt a szabályt (rule) alkalmazza saját következő állapotának
megállapítására. Ez a szabály úgy fogalmazható meg, hogy "az
új szín csak a pillanatnyi színtől és a négy közvetlen szomszéd színétől
függ". Például egy kétszínű (fekete/fehér) tábla esetén
mondhatjuk azt, hogy a sejt következő színe legyen fekete, ha páratlan
számú fekete szomszédja van, és fehér, ha nem. A rendszer kiinduló
állapota lehet pl. egy kép, ahol a fekete és fehér kockákból egy ábra
rajzolódik ki. A számítás folyamatát az a lépéssorozat jelenti,
amely ebből a kezdeti állapotból lépésenként egy olyan végső és
stabil állapotba juttatja a rendszert, ahol az egyes cellák színe már
nem változik tovább. Neumann
ezen egyszerű matematikai modell segítségével építette fel automatáját,
amelyet univerzális konstruktornak nevezett. Az univerzális konstruktor
bármilyen automata létrehozására képes a fenti értelemben vett
transzláció és transzkripció módszerének felhasználásával (ne
felejtsük el, akkor ezek a kifejezések még nem léteztek). Ha történetesen
a kódolt üzenet azt tartalmazza, hogy építsen egy másik univerzális
konstruktort, akkor nyilvánvalóan képes lesz önmagát is újrateremteni
és újabb életképes automatákat létrehozni, egyszóval szaporodni.
Ennek a gondolatsornak a segítségével Neumann azt mutatta meg, hogy egy
mesterségesen létrehozott gép képes szaporodni. Azért ne gondoljuk,
hogy ilyen egyszerű az élet. A fenti két sor bizonyítása
matematikailag meglehetősen bonyolult, pontosabban egy egész könyvet igényelt,
amely csak Neumann halálát követően, posztumuszként jelent meg kollégája
gondozásában, 1966-ban. Az univerzális konstruktor elmélete olyan szilárd
matematikai alapokon nyugodott, hogy a következő általánosan
elfogadott mesterségesélet-modell, amely képes volt önmagát reprodukálni,
csak majdnem három évtizeddel - igen, jól olvasták -, 28 évvel később,
1984-ben született meg. Darwini
programozás Neumann
munkássága során a szaporodás és az önmagukat reprodukálni tudó gépek
elméletére összpontosított. Nem vette figyelembe, hogy az újra és újra
felépített hardver - a másolás folyamatába becsúszott hibák vagy a
körülmények változásához jobban illeszkedő szoftvermódosítások
segítségével - egyre hatékonyabbá tehető. Napjainkban a programokat
emberek, azaz számítástechnikusok, programozók, matematikusok vagy
egyszerűen - a szó jó értelmében vett - laikusok írják saját
kedvtelésükre. Mi lenne, ha továbbvinnénk Neumann gondolatát, és az
univerzális konstruktor programját is módosítani tudnánk az evolúció
elvének figyelembevételével? Ennek eredményeképpen született meg a
genetikus programozás (genetic programming) módszerének fogalma, amely
végeredményben nem más, mint azonos problémát megoldó programok
seregének együttes, párhuzamos fejlesztése. A módszer a számítástechnikusok
által jól ismert genetikus algoritmusok (genetic algorithms) elvén működik.
Míg egy programozó egyszerre csak egyetlen programon dolgozik, javítja
és továbbfejleszti, a genetikus programozás több, kissé eltérő, de
ugyanazt a problémát megoldó program populációjából indul ki,
amelyből újabb és újabb verziókat hoz létre az öröklődés és a
mutáció elvének segítségével. Az új programgeneráció minden egyes
egyedét kiértékeljük, és ha a funkció ellátására alkalmasnak találjuk,
akkor meghagyjuk, egyébként eltávolítjuk (szelekció). Nyilván minél
jobb egy program egy konkrét feladat végrehajtásában, annál nagyobb
az esélye a túlélésre. Elvileg tehát egyre tökéletesebb programok
sorozatát kapjuk, míg a folyamat végén elérünk ahhoz a programhoz,
amely hibátlanul oldja meg a feladatot. Az
elmélet gyakorlati alkalmazásához sok-sok iterációra van szükség. A
legnagyobb gondot a szelekció feltétele (kritériuma) jelenti, azaz hogy
miként döntsük el, melyik programunk áll közelebb a tökéletes
megoldáshoz. Az élővilágban ezt a funkciót a túlélésért
folytatott harc helyettesíti, a gyengék elhullanak, az erősek megerősödnek.
A genetikus programozó ránk bízza, melyik programot hagyjuk meg vagy
dobjuk el. Ha például egy robotot arra szeretnénk megtanítani, hogy
dobozokat rakjon egymásra, akkor attól függően, hogy az egyes
programok ezt a feladatot milyen jól végezték el, osztályozhatjuk
azokat. Ez az osztályzat azután eldönti, hogy mennyire életképesek.
Maga az evolúció azonban emberi beavatkozás nélkül történik. John
Koza, a módszer feltalálója több feladat megoldására is sikeresen
hozott így létre programokat. Programozni tudó olvasóinknak azonban
nem kell túlzottan aggódniuk. Valószínűleg még nagyon sokáig nem
ilyen módszerekkel fognak a Windows új verziói elkészülni. Digitális
élet A
fentiekben azt próbáltuk meg dióhéjban áttekinteni, hogy milyen
elvekkel és módszerekkel hozhatunk létre olyan önmagát reprodukálni
és továbbfejleszteni képes mesterséges lényt vagy rendszert, amely az
élet biológiai definíciójának minden tekintetben eleget tud tenni. Mi
történik azonban akkor, ha ezeknek a lényeknek különböző szintű értelmet
és intelligenciát adunk, ha racionalitásukat felülbíráló digitális
érzelmekkel (!) látjuk el őket, ha a ma elterjedt hagyományos számítógépeink
helyett kémiai és biológiai folyamatokon alapuló molekuláris számítógépeket
használunk megvalósításukra, vagy ha a számítógép memóriáján
belül társadalomba szervezzük őket? Ezekre a kérdésekre a mesterséges
életről szóló cikkünk második részében, a jövő hónapban adunk választ.
Takács Barnabás [Internet kalauz 2000.] |
|
|
Beszélgetések az Új Kertben :: Poesis :: Emberhit :: Változó Világ Mozgalom
Nyitó oldal :: Olvasószolgálat :: Pályázatok :: Impresszum
Az oldal tartalma a Változó Világ Internetportál Tartalomkezelési szabályzatának felel meg, és eszerint használható fel (GFDL-közeli feltételek). 1988-2010 |