Tuorein sisältö

V2.fi ennakoi: while True: learn()

Miikka Lehtonen

26.03.2018 klo 15.04 | Luettu: 5147 kertaa | Teksti: Miikka Lehtonen

Opeta kone ajattelemaan
Koodarit ovat kyllä hieman hassua porukkaa, minä mukaanluettuna. En usko, että kun Hulk Hogan tulee töistä kotiin, hän heittää painipeliä kehiin, koska ei saa hommistaan oikeassa kehässä tarpeekseen. Mutta juuri niin me koodarit teemme. Ensin koodaamme oikeasti, sitten pelaamme koodauspelejä.


Mikäs siinä on pelatessa, sillä Shenzen IO:n, Human Resource Machinen ja jopa Opus Magnumin kaltaiset pelit ovat todistaneet, että ohjelmoinnista irtoaa hyviä logiikkapähkinöitä. Kun yrittäjiä kuitenkin alkaa jo riittämään, ja useat niistä ovat vieläpä erinomaisia pelejä, tuoreiden tulijoiden pitäisi itsekin olla aika hyviä, jotta markkinaosuutta irtoaa.

Tuorein kokeilija on vielä esi-alfa-asteella oleva while True: learn(), jossa on hyviä ideoita, mutta vielä myös rosoisia reunoja.

Oppiva kone



Pelaaja on koneoppimisen saralla työskentelevä kotikoodari, joka saa postilaatikkoonsa toimeksiantoja ja niiden suorittamisesta rahaa, joilla parannella käytössään olevia laitteita. Tehtävät ovat kohtalaisen yksinkertaisia algoritmeja: syötteenä tulee vaikka punaisia, vihreitä ja sinisiä palluroita, jotka pitää sitten järjestellä omiin laatikoihinsa.

Käytössä on aluksi hyvin niukka, mutta pelin edetessä laajeneva, valikoima loogisia operaatioita, joiden avulla voi vaikka määrätä, että operaatioon syötteenä tulevat pallurat jaetaan vihreisiin ja punaisiin ja lähetetään sitten kukin eteenpäin. Työkalujen muuttuessa monipuolisemmiksi myös haasteet kasvavat. Kohta eteen tulee jo tehtäviä, joissa syötteenä on vaikka eri värisiä ympyröitä, laatikoita ja kolmioita, jotka pitää kaikki järjestellä perille laatikoihin, joista yksi huolii sinisiä kuutioita ja punaisia ympyröitä, toinen kaikkea muuta paitsi vihreitä kolmioita ja niin edelleen.


Lisähaastetta tulee siitä, että kaikilla operaatioilla on suoritusaikansa. Mitä monimutkaisempi ja hyödyllisempi toiminto, sitä hitaampi se on ajaa. Niinpä esimerkiksi yksinkertainen ”punaiset tänne, siniset tuonne” -operaatio on kohtalaisen nopea, mutta kaikki kolme väriä eri poluille lähettävä operaatio on paljon hitaampi. Käytössä oleva tila on myös rajallinen, joten joskus on vain pakko valita se hitaampi, mutta tiiviimpi operaatio.

Hauskana oivalluksena aiempien tehtävien ratkaisut tallentuvat omiksi moduuleikseen, jolloin niitä voi käyttää uudelleen. Jos on vaikka tehnyt tosi hyvän ohjelman, joka jakaa kolmiot, ympyrät ja neliöt omille poluilleen, sitä kannattaa ehkä käyttää uudelleen myöhemmissä tehtävissä, joissa kyseinen ongelma on osa ratkaisua.

Vielä vaiheessa



Steamin kuvakaappauksissa ja kehittäjien puheissa näkyy jos jonkinlaisia kehittyneitä ongelmia, jotka alkavat muistuttaa ihan oikeaa ohjelmointia. Voi olla, että niitä on myös nykyisessä testiversiossa, mutta en saanut sitä selvitettyä: peli kun pysähtyy 16. kenttään pienen ongelma takia. Vihreään rasiaan pitäisi ohjata 41 kuutiota, mutta syötteenä on käytössä vain 40 kuutiota. Hups.

While True: learn() on muutenkin vielä täysin vaiheessa. Peli ei sisällä minkäänlaista tutoriaalia tai opastusta, vaan pelaaja heitetään suoraan yksinkertaisten ongelmien pariin. Eipä tämä sinänsä ongelma ollut, sillä ainakin itse pääsin kyllä pelin kylkeen kiinni. Moni syvempi mahdollisuus kuitenkin jäi mysteeriksi, sillä peli tarjoaa esimerkiksi vaihtoehtoa muokata vanhoja ratkaisuita lennosta uusiksi, mutta käytännössä tämä ei tunnu olevan mahdollista. Tehtävästä toiseen osia käytössä olevista ratkaisuista ja työkaluista myös puuttuu, mikä saattaa olla suunniteltua pelin vaikeuttamista tai sen bugaamista. Hankala sanoa, koska tästäkään ei puhuta.


Niinpä olemme nyt tilanteessa, jossa while True: learn() on ihan kiinnostava välipala, mutta häviää selvästi valmiille kollegoilleen. Toisaalta vielä kehityksessä olevan pelin saa napattua ilmaiseksi plakkariinsa pelin Steam-keskustelualueella olevan linkin kautta. Testaaminen ei siis maksa mitään, ja voipa näin toimimalla päästä vaikuttamaan pelin kehitykseenkin. Potentiaalia riittää, joten toivottavasti kehitystiimi jaksaa pakertaa pelinsä parissa.



While True: learn()

Kehittäjä: Luden.io
Julkaisija: Nival
Alustat: PC
Julkaisu: ei tiedossa
Pelin kotisivut: Steam

V2.fi | Miikka Lehtonen
< Pelataanpa: Capcom v... V2.fi testasi: THEC6... >

Keskustelut (0 viestiä)


Kirjoita kommentti




www.v2.fi™ © Alasin Media Oy | Hosted by Capnova