Retsensioon Ott Vaiknemetsa bakalaureusetööle Tarkvaaraagendid Projekt Hoshimi näitel Tarkvaraagendid on olnud tähtsal kohal kõne all kümmekond aastat. Samas on sellise programmeerimismooduse kohta levinud küllalt vähe materjali, mis kehtib ka eestikeelse ruumi kohta. Selle tõttu on töö igati aktuaalne. Autor on teinud enesele selgeks agentorienteeritud programmeerimise põhimõisted, tutvunud näidetega ning Imagine Cup võistluse raames asjalikult üles ehitanud omapoolse programmi mis lisaks võistluse tingimuste täitmisele edukalt demonstreerib ka agentorienteeritud programmeerimise võimalusi. Programmikoodile juurde kirjutatud lõputöö annab selgituse loodud rakendusele, mille juures paistavad välja ühe või teise toimetuse tagamaad. Rakenduse juurde kuuluv programmikood paistab olema selgesti kirjutatud, samuti on lisatud parasjagu kommentaare mis ühes bakalaureusetöös leiduvate suuremate selgitustega sobivad ilusti kokku. Rakenduse juurde kuulus ka asjalik veebilehestik. Tehnilise poole pealt oli esimeseks üllatuseks, et Mozillas ei avanenud vasakmenüü. Et aga tegemist Microsofti projektiga ning Internet Exploreris sai ilusti navigeerida, siis sellega rohkem muresid ei tekkinud. Mõned küsimused arutluse edendamiseks kaitsmisel. Kas peatükile 1.3 (agendi erinevus objektist) tuginedes võib väita, et agendiks oleks näiteks objekt, mille meetodeid väljastpoolt välja ei kutsuta, ent mille sees töötav lõim (thread) võib väliseid andmeid kontrollida ja toiminguid ette võtta. Näiteks eksemplar, mis jooksvalt kontrollib vaba mälu hulka arvutis, koostab sellele vastava joonise ning mälu kriitilise vähesuse korral annab kasutajale hoiatusteate? Mõniteist aastat tagasi peeti Eesti teadlaste populaarteaduslik arutelu teaduse võimaluste ja piiride üle. Ning seal olevat Endel Lippmaa toonud võrdluse matemaatika ja füüsika vahel. Et kui oleks vaja modelleerida tormise merelaine paiskumist vastu kaljut, siis sellise nähtuse puhul on matemaatika võimetu: pritsmeid ja vastasmõjusid on lihtsalt liiga palju. Kui aga sama ülesanne anda füüsikule lahendada, siis on sealt mingeid vastuseid siiski loota. Et kui modelleerida olukorda mikrosekundite kaupa ning iga sammu järelt leida parajasti iseseisvate osakeste hetkeasukohad ja kiirused, siis pole süsteem päris kirjeldamatu. Kas ja kuidas sellise modelleerimise juures võiks agentorienteeritud programmeerimisest kasu olla? Korduvalt märgitakse, et robotite omavaheliseks suhtluskohaks on tahvel. Et sinna pannakse julgesti üles võistluse suhtes tundlikku teavet, kas sellest võib järeldada, et ühele tahvlile on ligipääs vaid ühe võistkonna robotitel? Lk 34 (ja ka mujal) on märgitud, et kui 500 käigu jooksul pole vaenlast märgatud, siis muutub käitumine. Millised aga võivad olla vaenlase mittenägemise põhjused ning kui neid on mitu, kas siis on alati mõistlik sarnaselt käituda? Kokkuvotteks leian, et tegemist on suurepärase tööga ning eduka kaitsmise puhul soovitan kõrgeimat hinnet. 17. mail Tallinnas Jaagup Kippar TLÜ Informaatika Instituudi lektor