Lopputyöseminaari 25.2.2000, TaiK Medialaboratorio

Digitaalisen eliön suunnittelusta

Tomi Salminen

1. Johdanto

Biologisen eliön ulkomuoto (fenotyyppi) on kirjoitettu eliön geeneihin. Geenit ohjaavat suurelta osin myös eliön tapaa reagoida ympäristöönsä. Kaikki tämä informaatio on koodattu DNA-molekyylin rakenteeseen. Pienet muutokset (mutaatiot) DNAssa eivät aina aiheuta jälkeläisen toimimattomuutta organismina, joten evoluutiota voi tapahtua onnistuneiden mutaatioiden seurauksena.

Keinoelämä on nimitys tieteenalalle, joka pyrkii luomaan tietokoneen tai orgaanisen kemian avulla kokonaisuuksia, joilla on aidon elämän ominaisuuksia (Levy, 1992; Emmeche, 1995; Morris, 1999). Keinoeliöt ovat itsenäisiä agentteja, jotka reagoivat ympäristöönsä ja jotka ovat pohjimmiltaan geneettisiä algoritmeja (Holland, 1992; Mitchell, 1996). Keinotekoisia ekosysteemejä tutkimalla on mahdollista saada tietoa biologisten ekosysteemien toiminnasta ja kehityksestä, mikäli keinoeliöt on mallinnettu riittävän hyvin (Adami, 1998; Hokkanen, 1999). Lisäksi keinoelämän evoluutiota on hyvin viihdyttävää tarkkailla, ja keinoelämää onkin hyödynnetty paljon mm. mediataiteessa (Gerbel, Weibel, 1993).

Tässä artikkelissa pyrin tarkastelemaan erilaisia tapoja rakentaa digitaalisia geenejä keinoeliöille, joita mallinnetaan tietokoneen muistiin luodussa kolmiulotteisessa tilassa, jossa vallitsevat tavanomaiset fysiikan lait. Yhtenä haasteena on luoda mahdollisimman kestävä, "robusti" tapa koodata eliöiden ominaisuuksia, jotta mutaatioita voitaisiin simuloida ilman keinotekoisia rajoituksia, toinen haaste on kehittää yleiskäyttöinen tapa määritellä eliöiden geometria.

2. Eri lähestymistapoja

Keinoelämää on useimmiten luotu yksi- tai kaksiulotteisiin maailmoihin, koska ne ovat laskennallisesti kevyitä. Mallinnus kolmessa ulottuvuudessa on vaikeampaa, eikä sitä ole tehty kovin usein. Seuraavassa on esitelty muutama tunnetuin tapa.
2.1 Creatures à la Karl Sims
Inspiraation tähän työhön sain nähtyäni animaation Karl Sims'in laatikkomaisista keinoeliöistä (Sims, 1994). Toisiinsa liitetyistä suorakulmaisista särmiöistä muodostuvia eliöitä on muotojensa säännöllisyyden takia suhteellisen yksinkertaista mallintaa (Baraff, 1998).

Simsin eliöiden morfologia määritellään toisiinsa liitettyjen noodien avulla (ks. figure 3, Sims, 1994). Hierarkia alkaa "torsonoodista", ja liitosten avulla voidaan saada aikaan myös rekursiota (fraktaalityyppisiä rakenteita). Kunkin liitoksen vapausaste ja liittymiskohta isäntänoodiin määritellään myös eliön geeneissä.

Jotta eliölle pystyisi kehittymään liikkumista ja aistimista tukeva yksinkertainen neuroverkko (Nelson ja Illingworth, 1991), kukin noodi sisältää sensoreita, joita on kolmea tyyppiä: liitoskulmasensoreita, kosketussensoreita (kullekin osan tahkolle) ja valosensoreita (kertovat valolähteen suunnan suhteessa osaan). Käytännössä sensorit ovat laskettuja lukuja, joita voidaan käyttää syötteenä eliön neuroneille. Neuroneissa syötteille tehdään jokin geenien määräämä laskutoimitus, ja tulos annetaan ns. effektoreille, joita on vain yhtä tyyppiä: ne kohdistavat voimia eliön liitoksiin (ks. figure 5,6, Sims, 1994).

Kullekin neuronille voi olla vain kolme syötettä, tulosteita on vain yksi. Neuronit voivat olla yhteydessä toisiinsa paitsi noodin sisällä, mutta myös noodien välillä voi (ja pitää) kulkea informaatiota. Kuhunkin noodiin liittyy neuroneita, mutta eliöllä voi olla myös vapaita neuroneita, joiden avulla on mahdollista muodostua jonkinlainen keskushermosto.

Mutaatiot eliön määrittävissä graafeissa tapahtuvat sitten seuraavasti:

  1. Noodin sisäisten parametrien arvot voivat muuttua. Pieniä muutoksia painotetaan.
  2. Täysin uusi noodi voi syntyä. Se ei vaikuta eliön rakenteeseen ja se poistetaan, mikäli sitä ei liitetä eliöön toisen mutaation seurauksena (ks. seuraavat kohdat).
  3. Noodien välisten liitosten parametrit voivat muuttua, ja liitos voi tietyllä todennäköisyydellä vaihtaa paikkaa.
  4. Noodien välisiä liitoksia voidaan lisätä ja poistaa.
  5. Lopuksi uudet noodit, joita ei ole liitetty eliöön, poistetaan geeneistä.
Simsin eliöistä parhaat (annettujen kriteerien perusteella) risteytettiin keskenään uuden sukupolven synnyttämiseksi. Uusia graafeja voidaan luoda kolmella tapaa:
  1. Ristiinkytkennällä (crossover), jolloin osa uudesta graafista kopioidaan toiselta ja osa toiselta vanhemmalta.
  2. Yhdistämällä kaksi graafia siten, että toisen noodeista tehdään satunnainen liitos toiseen, ja poistamalla operaation jälkeen liitosta vailla jääneet noodit.
  3. Suvuttomasti, jolloin uusi graafi saadaan mutatoimalla vain toista vanhempaa.
Sims käytti työssään kaikkia edellämainittuja tapoja suhteessa 30%, 30%, 40%.

Simsin työ tuotti erittäin luonnollisesti liikuvia olentoja, mutta niiden ulkomuoto ei muistuta mitään luonnolista eliötä. Olisiko mahdollista määritellä monimutkaisempi geometria ja saada yhtä hyviä tuloksia nyt, kun tietokoneiden laskentateho on moninkertaistunut?

2.2 Framsticks
Simsin jalanjälkiä seuraava, uudempi projekti on puolalainen Framsticks (Komosinski, Ulatowski). Heidän eliönsä ovat tikkumaisia, joten mallinnukseen voidaan käyttää nopeaa finite element method (FEM) -laskentaa (Hämäläinen, Järvinen, 1994). Framsticks-eliöillä on myös neuroverkko, sensoreita ja effektoreita, jotka eivät suuresti eroa Simsin ratkaisuista.

Eliöiden geenit on koodattu merkkijonoiksi, esimerkki: rfX[|G:1.375]AX[|*:2.036](XX,). Tämä helpottaa niiden tulkintaa ihmisen kannalta (sic). Kuten Simsin järjestelmässä, mutaatiot ja geenien yhdistäminen pitää tehdä muuttumattomien sääntöjen mukaan.

3. Millainen voisi olla uusi keinomaailma?

Edellämainitut kaksi lähestymistapaa tuottavat monipuolisia olentoja, eikä niiden kaikkia mahdollisuuksia ole varmastikaan vielä käyty kattavasti läpi. Eliöiden luonnolliselta näyttävät liikkeet herättävät varmasti mielenkiintoa suuren yleisön keskuudessa. Mutta kovin helposti niitä ei erehdy luulemaan malleiksi aidoista eläimistä.

Olisikin mielenkiintoista lähteä kehittämään uutta, geneeristä geometriaa keinoelämälle, joka sallisi monimutkaisempien muotojen evoluution. Perusyksikkönä laatikon tai tikun sijaan voisi olla tietokonegrafiikan perusyksikkö, kolmikulmainen ja litteä polygoni (Foley et al., 1996). Mielivaltainen geometria vaatisi runsaasti tietokoneen laskentatehoa ja ehkä uusien algoritmien kehittämistä, mutta se nostaisi keinoelämän monimuotoisuuden aivan uudelle tasolle. Mielenkiintoista olisi seurata, onko luonnossa yleisesti esiintyvä symmetria (Weyl, 1999) emergentti ominaisuus myös keinoeläimillä.

Lisäämällä sensorivalikoimaan mahdollisuuden silmän verkkokalvon tapaisen havaintovälineen kehittymiseen (Terzopoulos et al., 1996) voitaisiin seurata eliöiden muotojen ja värien evoluutiota, mikäli ne vaikuttaisivat esimerkiksi lisääntymiskumppanin valintaan (Ventrella, 1998).

Kokonaisen fysikaalisesti mallinnetun, kolmiulotteisen ekosysteemin simuloiminen eri lajeineen ja elinympäristöineen on varmasti käytännössä liian raskasta nykyisillä supertietokoneillakin. Pieniä kokeita voi kyllä suunnitella. Realismia lisäisi erilaisten materiaalityyppien (proteiinipolygoni, luupolygoni, klorofyllipolygoni jne.) lisääminen simulaatioon - tällöin eliölajien eriytyminen olisi luultavasti todennäköisempää.

Pelkän mekaniikan mallintamisen lisäksi voisi ottaa käyttöön myös realistisemman energian kulutuksen mallintamisen. Tämä todennäköisesti johtaisi siihen, että suurin osa eliöistä olisi hyvin pieniä (se on energian kulutuksen suhteen edullisinta). Saalistavat eliölajit olisivat suurempia. Vai olisivatko?

Rakentamalla heterogeenisen keinomaailmaympäristön on mahdollista helpottaa lajiutumista, kun eliöjoukot ovat eristyksissä toisistaan (Yaeger). Ensimmäiseksi mieleen tuleva maailma sisältäisi kuivan maan lisäksi vettä ja ilmakehän, mutta ulkoisia parametreja voisi varioida muillakin tavoin, jotka olisivat keinotekoiselle ympäristölle "luonnollisempia".

4. Jatkosuunnitelma lopputyölle

Tarkoitukseni on kuluvan kevään aikana lähteä rakentamaan uutta eliögeometriaa ja sille geneettistä merkintätapaa. On suhteellisen helppoa rakentaa sovellus, jolla voi risteyttää satunnaisesti luotuja geometrioita omien esteettisten mielihalujensa mukaan. Työkaluna voisi olla Flash, jolloin tuloksen saisi verkkoon kaikkien kokeiltavaksi.

Seuraava askel on tutkia fysikaalisen mallinnuksen ongelmia ja lajiutumisen biologiaa. Ja kaiken kaikkiaan pitää miettiä mallinnuksen rajaamista, kaikkea ei voi jättää digitaalisen evoluution kehitettäväksi mikäli haluaa nähdä tuloksia omana elinaikanaan. Tämä tarkoittaa lähinnä erilaisten sensorien toteuttamista valmiina järjestelmään.

Lopullisen projektin toteuttamiseen menee vuosia, joten lopputyönä toteutan yllämainittuja asioita.


Lähteet:

  • Adami, Christoph. 1998. Introduction to artificial life. Springer-Verlag, ISBN 0-387-94646-2
  • Baraff, David. 1998. Rigid Body Simulation. Siggraph '98 Course Notes CD-ROM
  • Emmeche, Claus. 1995. Tekoelämä. Art House, ISBN 951-884-162-4
    - suomenkielinen selvitys keinoelämästä
  • Foley, James D., van Dam, Andries, Feiner, Steven K. ja Hughes, John F. 1996. Computer Graphics - principles and practice. Second edition in C. Addison-Wesley, ISBN 0-201-84840-6
  • Gerbel, Karl ja Webel, Peter (editors). 1993. Ars Electronica 93. Genetische Kunst - Künstliches Leben. Genetic Art - Artificial Life. PVS Verleger, ISBN 3-901196-072
  • Hokkanen, Jyrki. 1999. Visual simulations, artificial animals and virtual ecosystems. The Journal of Experimental Biology 202, 3477-3484. The Company of Biologists Limited
  • Holland, John H. 1992. Adaptation in natural and artificial systems: an introductory analysis with applications to biology, control, and artificial intelligence. MIT Press, ISBN 0-262-58111-6
  • Hämäläinen, Jari ja Järvinen, Jari. 1994. Elementtimenetelmä virtauslaskennassa. CSC - Tieteellinen laskenta Oy, ISBN 952-9821-07-7
  • Komosinski, Maciej ja Ulatowski, Szymon. 1999. Framsticks: towards a simulation of a nature-like world, creatures and evolution. Proceedings of 5th European Conference on Artificial Life (ECAL99). Springer-Verlag
    http://www.frams.poznan.pl/
  • Levy, Steven. 1992. Artificial life - a report from the frontier where computers meet biology. Vintage Books, ISBN 0-679-74389-8
    - englanninkielinen, kattava klassikko
  • Mitchell, Melanie. 1996. An introduction to genetic algorithms. MIT Press, ISBN 0-262-63185-7
  • Morris, Richard. 1999. Artificial worlds - computers, complexity and the riddle of life. Plenum Trade, ISBN 0-306-46002-5
    - uudehko, selkokielinen ja suppeahko esitys keinoelämästä
  • Nelson, Marilyn McCord ja Illingworth, W. T. 1991. A practical guide to neural nets. Addison-Wesley, ISBN 0-201-52376-0
  • Sims, Karl. 1994. Evolving 3D Morphology and Behaviour by Competition. Artificial Life IV Proceedings,pp. 28-39. MIT Press
  • Terzopoulos, Demetri, Rabie, Tamer ja Grzeszczuk, Radek. 1996. Perception and Learning in Artificial Animals. Articifial Life V: Proceedings of the 5th International Conference of Living Systems, pp. 313-320. MIT Press
  • Ventrella, Jeffrey. 1998. Attractiveness vs Efficiency (How Mate Preference Affects Locomotion in the Evolution of Artificial Swimming Organisms). Artificial Life VI: Proceedings of The 6th International Conference on Artificial Life, pp. 178-186. MIT Press, ISBN 0-262-51099-5
  • Weyl, Hermann. 1999. Symmetria. Terra Cognita, ISBN 952-5202-16-X
  • Yaeger, Larry. Polyworld.
    http://www.beanblossom.in.us/larryy/polyworld.html