EAIA07

EAIA07- Monirobottijärjestelmien kesäkoulu Lissabonissa

Marek Matusiak

Lämmin Lissabon oli Portugalin tekoälyseuran järjestämän monirobottijärjestelmien kesäkoulun näyttämönä elokuun lopussa. Kouluun osallistui lähinnä jatko-opiskelijoita ympäri Eurooppaa. Väitöskirjatutkimukseni liittyy monirobottijärjestelmiin, joten hain ja pääsinkin itse kouluun. Osallistumistani auttoi Automaatiosäätiön myöntämä matka-apuraha.

Itse koulussa käsiteltiin monirobottijärjestelmiä eri tasoilta, yksittäisten robottien mekatronisesta suunnittelemisesta ja rakentamisesta lähtien aina valmiiden tai simuloitujen järjestelmien ylempien tasojen ohjelmallisiin ohjauksiin.

Suurin osa aiheeseen liittyvästä merkittävästä tutkimuksesta, jota Euroopassa on viime aikoina tehty, liittyy käyttäytymispohjaisiin sekä itseoppiviin robottijärjestelmiin. Käyttäytymispohjaisten ja itseoppivien järjestelmien perusajatukset löytyvät luonnossa esiintyvistä eläinyhteisöistä, kuten muurahaisista, ampiaisista tai torakoista. Monirobottijärjestelmillä on myös yritetty ymmärtää eri biologisia yhteisöjä, niissä vallitsevia käyttäytymissääntöjä sekä vuorovaikutussuhteita.

Monirobottijärjestelmät ovat hajautettuja järjestelmiä; niissä (yleensä) itsenäiset yksilöt yrittävät saavuttaa jonkun mahdollisesti yhteisen päämäärän. Ohjelmistoagentit ovat sukua monirobottijärjestelmille – yksittäinen robotti vastaa yhtä agenttia, sillä erotuksella, että robotilla on aina myös fyysinen olemus.

Yksi monirobottijärjestelmien suurimmista haasteista piilee siinä, että miten voidaan ohjata monen robotin ryhmää tehokkaasti, siten että onnistuu sille annetun tehtävän suorittamisessa samalla kuitenkin konfliktitilanteista selviytyen. Tätä ongelmaa ratkaisemaan on kehitetty ja kehitetään erilaisia ohjausarkkitehtuureja. Ne voidaan jakaa karkeasti kahteen ryhmään: selkeästi eläinmaailmasta mallinsa ottavat, jotka luottavat usean yksinkertaisen käytösmallin omaavan robotin sulavaan yhteistoimintaan (ns. laumaäly); sekä suunnitelmallisemmat, joissa toimijat esimerkiksi huutokauppaavat toisilleen tehtäviä.

Kesäkoulussa keskityttiin lähinnä eläinmaailmasta mallinsa ottaviin monirobottijärjestelmiin, siihen minkälaisia käytösmalleja voi ilmetä kun yksinkertaisilla käyttäytymissääntöjä yhdistelemällä luodaan monimutkaisempia käytöksiä. Yhdistämällä eteenpäin sekä valoa kohti ajaminen, esteenväistörutiinit sekä muiden robottien liikkeiden myötäily on tuloksena koordinoitu liike, yhteinen esteenväistö sekä valoa kohti ajaminen. Muita aiheita olivat mm. itseoppiva liikkeen ohjaus, sekä itseorganisoituva kommunikaatio, Robocup (robottijalkapallon maailmanmestaruus), laumaälyn käytännön sovellutukset sekä energian jakaminen monirobottijärjestelmässä mahdollisimman tehokkaasti.

Koulu alkoi aamuisin luennoilla, jotka jatkuivat lounaan yli. Luentojen jälkeen meillä oli harjoituksia, joissa pääsimme ohjelmoimaan E-Puck robotteja ja kokeilemaan erilaisia robottisimulaattoreita. E-Puckit ovat pieniä n. 10 cm halkaisijaltaan olevia liikkuvia robotteja, joissa pääasiallisina antureina toimivat infrapunalähetin/vastaanottimet. Niissä on myös kamera, jonka käyttö on melko haasteellista, sillä prosessorina toimii 14 Mipsin dsPIC. Ohjelmoituamme yksinkertaisia käyttäytymismalleja robotteihin, toimme useamman niistä yhteen, ja huomasimme, että yksinkertaisetkin käytökset voivat luoda mielenkiintoista ryhmäkäyttäytymistä.

Ohjelmistoista mieleen jäi erityisesti Player/Stage – projekti. Player tarjoaa abstraktin rajapinnan mihin tahansa robottiin – se siis antaa mahdollisuuden ohjata mitä tahansa robottia saman käskykannan avulla. Tarkoituksena on mahdollistaa ohjelmistojen uudelleenkäyttö muissakin roboteissa, kuin vain siinä, jolle se on alun perin kirjoitettu. Jokaiselle robotille pitää toki kirjoittaa oma rajapinta raudan ja Playerin väliin, mutta esim. esteenväistörutiineja ei tarvitse aina kirjoittaa uudelleen, mikäli robotit ovat yhteneviä edes jollain tasolla (esim. molemmat pystyvät liikkumaan ja niissä on laserskannerit). Player vaatii toimiakseen Linuxin. Stage puolestaan on Playerin 2D-monirobottisimulaattori, jolla voidaan testata eri algoritmeja jos oikeita robotteja ei ole saatavilla, tai jos halutaan esim. testata useammalla robotilla. Playeriin on myös kehitetty Gazebo-niminen 3D-robottisimulaattori.

Lissabon oli mielenkiintoinen kaupunki ja ihmiset olivat ystävällisiä. Väitöskirjatutkimukseni lisäksi kurssi oli erittäin hyödyllinen minulle sen takia, että se tarjosi mahdollisuuden tutustua paitsi oman alan tutkimukseen, myös ihmisiin jotka sitä tekevät ja ovat samassa tilanteessa kuin minä. Konferensseissa on tutustuminen uusiin ihmisiin usein pinnallisempaa, kesäkoulussa se onnistuu luonnollisemmin.

Lisätietoja: Etunimi.Sukunimi@tkk.fi