perjantai 30. maaliskuuta 2012

Tilanne on oleellisesti muuttunut

Melko todennäköisesti jätin palkkatyöläisen elämän. Sain 15kk irtisanoutumispaketin Accenturelta. Se oli ilmeisesti Nokian kustantama. Mutta on mahdollista, että toimin vielä ennen lopullista eläköitymistä elinkeinoelämässä yrittäjän, lähinnä konsultin ominaisuudessa.

Kuullostaa ehkä omituiselta, mutta olen aloittanut oman tuotekehitysprojektin. No, ehkä se ei ole niin omituista, jos lukee aikaisemmin kirjoittamiani juttuja eteenkin robotiikasta ja muista kognitiivista järjestelmistä. Tällaiset asiat ovat minulle hyvin läheisiä. Edellä esittelemäni katamaranhanke jatkuu, mutta pääasiassa mökkiprojektina. Kotona käytän huomattavan osan työelämästä vapautunutta aikaani kognitiivisen robotiikan kehittämiseen.

Mitä siis tarkemmin esittäen aion toteuttaa? Tavoitteenani on "Cognitive Robotic Framework", softapaketti joka liittyy Willow Garagen Linux-käyttöjärjestelmän päällä pyörivaan ROS, Robotic Operating System, välikerrokseen. Tämä "CRF", "Cognitive Robotic Framework", pyrkii toteuttamaan yleiskäyttöisen, käsitteelliseen ajatteluun kykenevän tekoälyn, joka on tarkoitettu lähinnä robotiikkaan.

Mikä tässä suunnitelmassa on sitten erityistä, sellaista joka tekisi sen jotenkin uskottavaksi, tavoiteltavaksi? Esitän tähän motivoivaan tehtävään kolme kohtaa:

1. Ei-symbolinen, "Deep Learning", hierarkinen hahmontunnistus, konenäkö- ja puheentunnistuskäyttöön.

2. Symbolinen, käsitteellisen ajattelun lohko, jonka opettaminen on mahdollista ACE-kielellä. ACE-kieli mahdollistaa myös toiminnallisen interaktiivisuuden. ACE on tavallaan englanninkielen murre.

3. Robotin maailmankuvan perustana ovat valmiiksikehitellyt SUMO- ja MILO-ontologiat .

Tarkoitus on siis soveltaa paljon valmista osaamista ja sellaisena kokonaisuutena, josta ainakaan minä en ole kuullut toteutettuna. Silti tavoitetaso on melko matala, ainakin alkuvaiheessa. Ensimmäisenä toiminnallisena tavoitetasona on robotin kyky liikkua itsenäisesti, käytännössä pyörillä, tunnistaa ja kartoittaa ympäristöään, havaita poikkeavuuksia normaaliin. Ensimmäinen sovellusalue voisi siis olla vartiointitehtävät. Muut tulevat myöhemmin, jos ovat tullakseen.

Projektin toteutuksen luonteesta käsitykseni on, että tekeminen sisältää vähemmän perinteistä ohjelmistokehitystä, enemmän ontologia- ja sääntökehitystä käyttäen SUO-KIF-kieltä ja ACE-kieltä, että opettaen ei-symbolista lohkoa simuoloidussa tai todellisessa ympäristössä. Tärkeä haaste on tehokkaiden opetusmenetelmien kehittäminen ja lukemattomien vielä ymmärrykseni ulottumattomissa olevien ongelmien ratkominen.

Mahdollinen kaupallinen liiketoimintamalli perustuu siihen, että kehitettävä ohjelmisto olisi ROS-ohjelmiston ja Linuxin tapaan avointa koodia, mutta suuri osa kehitettävää valmista robotin laatamiskelpoista, opetettua tietämystä, "knowledge", ja robotin opettamisen "knowhow", säilytetään suljettuna tietona projektin piirissä, vain demottavassa asussa.