Sovelluksen kehittäminen ei aina vaadi tuhansien virhealttiiden koodirivien vääntämistä. MATLABin ja Simulinkin avulla voidaan kehittää vaikkapa älypuhelimeen sovellus ilman, että koodaa yhtäkään riviä C- ja java-koodia, esittu Mathworksin vanhempi sovellusinsinööri Antti Löytynoja ETN:n järjestämässä Embedded Conference Finlandissa viime viikolla.
Löytynoja esitteli itse kehittämäänsä sovellusta, joka tulkitsi älypuhelimen liikeantureiden perusteella esimerkiksi, käveleekö käyttäjä vai istuuko hän. – Tein tämän täysin MATLABilla ja Simulinkillä. Enkä minä ole mikään Android-kehittäjä ja silti tein tekoälyä hyödyntävän sovelluksen Android-älypuhelimeeni, Löytynoja esitteli.
Sovellus ottaa anturien dataa, tekee sen pojalta päätelmiä ja lähettää dataa pilveen, jossa kootaan tilastoa käyttäjän toiminnoista erilliselle webbisivulle. - Tämä kaikki ilman C- tai C++-koodia, graafisella Simulink-mallilla.
Mallissa anturien dataa syötetään MATLAB-toiminnoille ja tämän perusteella arvioidaan käyttäjän toimintaa, näytetään toimintaa kuvaava kuva ruudulla ja syötetään pilveen. Tämä on tietysti mielenkiintoinen viritys, mutta ennen kaikkea se kuvaa muutosta vaativassa, koneoppimista hyödyntävässä sulautetussa ohjelmoinnissa. Se mikä ennen vaati raskasta koodia, onnistuu nyt graafisessa ympäristössä vetämällä, pudottamalla ja kuvailemalla. Ja sovelluksen siirto raudalle onnistuu yhtä nappia painamalla.
Motivaatio tähän muutokseen tulee IoT-kehityksestä. Lähivuosina verkkoon on kytketty 20-50 miljardia laitetta, jotka tuottavat valtavan märän dataa, eikä sitä kaikkea voi prosessoida datakeskuksissa. – Päätelaitteiden tai verkon reunalla olevien edge-laitteiden tulee kyetä prosessoimaan tätä dataa ja tehdä ennusteita sen perusteella itse, Löytynoja perusteli.
Tämä tuo mukanaan monia haasteita. – Miten kehittäjät, joilla ei ole ymmärrystä datatieteestä, voivat kehittää ennustavia malleja laitteisiin, Löytynoja kysyi. Toinen haaste liittyy algoritmien siirtämiseen edge-laitteisiin. Kuinka se onnistuu, jos ei ole sulautettujen laitteiden suunnittelija?
Lisäksi ongelmia muodostaa IoT-järjestelmän kehittäminen, jos ei omaa mitään taitoja pilviohjelmoinnista. Ja jos käytössä on jo analytiikkaa, miten se integroidaan nykyisin it-järjestelmiin. Näihin kysymyksiin Löytynoja vastaa ECF-esityksessään, joka on katsottavissa tapahtuman Youtube-kanavalla.