Sistem umetne inteligence mora biti zmožen zaznavati okolje, v katerem deluje, na nepredvidene okoliščine se mora znati prilagoditi - »Pri študiju umetne inteligence se lahko naučimo, da tudi sami bolj razumsko pristopamo k svojim odločitvam.« -Odlika avtomatskih sistemov je, da so lahko bolj zanesljivi od ljudi na mnogih področjih, celo v medicini in politiki Tekst: Smilja Štravs Na Fakulteti za elektrotehniko v Ljubljani so lani praznovali 100 let od rojstva akademika, profesorja Ludvika Gyer-gyeka, ki velja za začetnika razvoja umetne inteligence v Sloveniji. Leta 1960 je po njegovi zaslugi začel na fakulteti delovati dodiplomski študij avtomatike, ki je bil prvi študij te vrste v Jugoslaviji in med prvimi v Evropi. Gyergyek je bil dvajset let predstojnik Katedre za teorijo avtomatike in kibernetike, ustanovitelj in predstojnik Laboratorija za avtomatiko in kibernetiko ter organizator podiplomskega študija avtomatike. »Ustanovil je smer avtomatika na visokošolskem študiju in podiplomski študij iz avtomatike. Bil je redni profesor za področja teorija vezij, teorija o sistemih ter teorija informacij in statistične metode. Napisal je osem učbenikov. Njegovo mentorsko delo je izjemno obsežno, saj je vodil več kot 200 diplomantov in 85 diplomantov magistrskega študi- ■ Ludvik Gyergyek, ja, bil je mentor 54 doktorjem znanosti,« je na spominskem srečanju I začetnik razvoja umetne ob stoletnici njegovega rojstva pojasnil prof. dr. Tadej Bajt. I inteligence pri nas 14 GEA marec 2023 »Ustvarjalno delo prof. Gyergyeka je vedno zadevalo ob najbolj aktualne probleme s področja elektroinženirstva, posebej s področja sistemov, avtomatike in kibernetike ter računalništva. Ustvaril je podlage za razvoj umetne inteligence, in to je področje, s katerim se v Laboratoriju za avtomatiko in kibernetiko na Fakulteti za elektrotehniko Univerze v Ljubljani poglobljeno ukvarjamo danes,« pojasnita prof. dr. Igor Škrjanc, aktualni predstojnik Laboratorija za avtomatiko in kibernetiko na FE UL, ter izr. prof. dr. Simon Dobrišek, predstojnik Laboratorija za strojno inteligenco na FE UL. V Laboratoriju za avtomatiko in kibernetiko proučujejo sodobne metode računalniškega modeliranja, simulacije in vodenja sistemov. Raziskujejo in razvijajo tudi avtonomne mobilne sisteme, pri tem pa uporabljajo sodobne adaptivne, prediktivne, multivari-abilne in hibridne načine vodenja ter pristope s področja umetne inteligence, na primer mehko logiko, umetne nevronske mreže in ekspertne sisteme. V Laboratoriju za strojno inteligenco raziskujejo metode s področja umetne inteligence, pri čemer se posebej posvečajo metodam strojnega učenja in samodejnega razpoznavanja vzorcev na različnih področjih uporabe. Raziskujejo in razvijajo govorne, slikovne in biometrične tehnologije, ki temeljijo na metodah obdelave in razpoznavanja slušnih in vidnih vzorcev z metodami strojnega učenja. Raziskujejo in razvijajo samodejne razpoznavalnike govora in biometrične razpoznavalnike ter robustne metode računalniškega vida za avtonomna plovila. V teoriji in praksi pa se v obeh laboratorijih ukvarjajo z razvojem pametnih tovarn, ali drugače povedano, z avtomatizacijo industrijskih procesov ter uporabo umetne inteligence v njih, predvsem pa poskušajo z različnimi metodami področje avtomatike in umetne inteligence približati študentom in širši javnosti. Povezave med kibernetiko, avtomatiko in umetno inteligenco Gre za področje, na katerem je precej nejasnih definicij, ki razumevanje le še bolj zapletejo. Kakšna sploh je povezava med kibernetiko, avtomatiko in umetno inteligenco? Igor Škrjanc pojasni, da gre za področja, ki izhajajo iz temeljnih principov, ki so vsem skupni. Pri avtomatiki se običajno osredotočijo na fizično okolje, na senzorje, motorje itd., pri kibernetiki gre za upravljanje in vodenje sistemov, umetna inteligenca pa je zgolj določen modul v okviru avtomatike. Avtomatika temelji na tem, kako izdelati napravo ali upravljati procese, da samostojno delujejo tako, kot želimo. Da to dosežemo, potrebujemo tako imenovani sistem vodenja. Pristopov, kako izdelati ustrezen sistem vodenja, je bilo v zgodovini mnogo, nekateri so zelo podobni pristopom umetne inteligence. Ideja umetne inteligence pri vodenju procesov je, da se sistem vodenja na podlagi »izkušenj« oziroma delovanja nenehno uči in prilagaja napravi oziroma procesu, podobno kot se ves čas učimo tudi ljudje. Pri tem govorimo o tako imenovanem adaptivnem vodenju, pri katerem se mora sistem vodenja s časom spreminjati, se marec 2023 GEA 15 prilagajati spremembam delovnega področja procesa z dodajanjem novih nalog. Izdelan sistem vodenja in celotno napravo ali pa sistem torej nenehno učimo in prilagajamo, da deluje čim bolje. Razum je zgolj algoritem Četudi je na prvi pogled postopek videti dokaj preprost, je pravzaprav precej kompleksen, saj je treba izdelati robusten sistem vodenja, hkrati pa mu dodati še mnogo nadzornih mehanizmov, ki bodo ukrepali, če bi naprava delovala napačno. Tu že naletimo na uporabo metod umetne inteligence. Mnogi si jo predstavljajo kot nekaj, po kar greš v trgovino, vzameš s police, dodaš določenemu procesu in pričakuješ, da bo vse skupaj delovalo, kot si želiš. To seveda ne drži. Umetna inteligenca vsekakor izboljša delovanje posameznih naprav in procesov, vendar pa še pred implementacijo zahteva veliko predznanja in uporabo mehanizmov, da ti sistemi in naprave delujejo v vseh predvidenih in tudi nepredvidenih razmerah. Treba je poudariti, da je umetna inteligenca, vsaj za zdaj, inteligentna le toliko, kolikor je podkovan tisti, ki jo v proces implementira, ter kolikor so dobri podatki procesa, s katerimi jo razvijemo. »Pri študiju umetne inteligence se lahko naučimo, da tudi sami bolj razumsko pristopamo k svojim odločitvam. Razum je namreč svojevrsten mehanizem, ki iz že spoznanih odnosov med gradniki našega okolja in dogodki izpelje odločitve, ki naj bi bile za razmi-šljujočega v nekem smislu koristne. Je pa tudi možno, da se nekaj, kar daje vtis, da je v nasprotju z razumom in logiko, ker so predhodne izkušnje izkazale škodljivost, kasneje vseeno izkaže za koristno. Zato je naravno, da se ljudje kdaj vedemo tudi nerazumno,« pojasni dr. Simon Dobrišek. Pogosto se umetno inteligenco sicer razume zgolj kot računalniško obdelavo nekih zajetih podatkov, iz katerih se poskuša izluščiti informacijo in znanje za reševanje nekih specifičnih problemov. Vsekakor so podatki nujna osnova, vendar je treba tudi zelo natančno razumeti, kaj želimo z njimi početi in doseči. Sistemi umetne inteligence zato zahtevajo ogromno razvoja, testiranja, pogosto pa se tudi zgodi, da se vseh možnih okoliščin, v katerih naj bi ta sistem reševal neke probleme, niti ne da predvideti niti preveriti, zato se vedno lahko zgodijo tudi napake. Katere značilnosti naj bi imel sistem umetne inteligence? »Najprej mora biti zmožen zaznavati okolje, v katerem deluje, in tudi če se pojavijo nepredvidene okoliščine, se mora znati nanje prilagoditi,« pojasni Dobrišek, nadaljnje izpopolnjevanje pa je odvisno od zahtevnosti dane naloge. Običajno operiramo s senzorji, ki zaznavajo spremembe v okolju, jih beležijo, neki računalniški sistem pa se potem na podlagi sprejete informacije odloča. »Umetna inteligenca ni samo en pojem, dojemamo jo kot posnemanje človeka. Mi v elektrotehniki se za razliko od tega ukvarjamo z računalniško inteligenco, to pomeni, da jo poskušamo uporabiti za delovanje naprav. Če se sistem lahko sam nauči ustreznega delovanja v danem okolju, če zazna spremembe v tem okolju in se zna nanje ustrezno odzvati, rečemo, da je inteligenten,« doda Škrjanc. Inteligentni sistemi naj bi bili sposobni učiti se iz primerov, kar pomeni, da isto nalogo drugič rešijo bolj učinkovito, kot so jo rešili prvič. Pomembno pa je tudi, da se je takšen sistem zmožen spo- I Prof. dr. Igor Škrjanc za poligonom za testiranje večagentnih sistemov razumevati z drugimi sistemi, ki so morebiti prisotni v njegovem okolju, kjer uresničuje zastavljene cilje, ne nazadnje tudi z ljudmi. Vsi koncepti umetne inteligence so omejeni »O umetni inteligenci govorimo, če v nekem sistemu ni vse vnaprej nespremenljivo sprogramirano, kot je, denimo, pri navadni uri, in so ti sistemi zmožni samodejno spreminjati svoje delovanje. Na primer, ko se dostavni voziček v proizvodnem obratu sam nauči uporabljati bolj učinkovito novo pot, kar pomeni, da deluje z uporabo določenega algoritma, ki izboljša inteligenco njegovega odločanja,« nadaljuje dr. Simon Dobrišek. Vendar to ne velja za vse situacije, kajti vse, ki jih želimo rešiti, moramo z uporabo algoritmov tudi vnaprej predvideti, kajti vsi koncepti umetne inteligence so omejeni. Smo na poti evolucije. Dober primer evolucije, kako najprej rešujemo majhne probleme, da se lahko nato lotimo večjih, je avtonomni voziček, ki je bil razvit v sodelovanju s tovarno vozil TPV v Novem mestu in podjetjem IQ. Gre za voziček, ki se uporablja v proizvodnih obratih za prevoz različnih izdelkov med obdelovalnimi postajami. Voziček se med postajami giblje po vnaprej začrtani poti, ki jo označuje magnetni trak, nalepljen na tleh. Problem takšnega koncepta je, da se trak lahko razmagneti ali pa se na njem znajde kakšna ovira. Ker takrat voziček ne more več slediti traku in se ustavi, je potrebno ročno posredovanje človeka. Problema pa se lahko lotimo tako, da poskušamo izdelati super inteligenten voziček, ki se bo v prostoru orientiral brez tovrstnega 16 GEA marec 2023 Če se sistem lahko sam nauči dobrega delovanja v danem okolju, če zazna spremembe v tem okolju in se zna nanje ustrezno odzvati, rečemo, da je inteligenten. traku z uporabo drugih, kompleksnejših pristopov. A to v industriji pogosto ni potrebno, saj zahtevajo, da rešimo samo določen partikularen problem. Pogosto je to dovolj. Zadostuje, da se voziček zna zgolj izogniti oviri na poti, ki preprečuje nadaljnjo pot. Vendar tudi na prvi pogled enostavna naloga zahteva veliko razvoja. Algoritem, ki vodi voziček, mora namreč z združevanjem informacije z več različnih tipov senzorjev (predvsem varnostnega laserskega skenerja in senzorskega sistema za oceno položaja) zgraditi posnetek okolice, ki ga nato uporabi za načrtovanje in izvedbo manevra izogibanja oviri. »Sliši se preprosto, a pri industrijskih sistemih in napravah je ključno, da delujejo v vseh predvidenih scenarijih, pri tem pa pogosto ne zmoremo predvideti vseh možnih scenarijev in si želimo, da bi tudi v takih primerih sistem deloval zanesljivo in varno. Opisan problem izogibanja oviram je majhen prispevek k inteligenci avtonomnega vozička, ki se na ta način evolucijsko razvija z dodajanjem novih algoritmov, ko naletimo na nove probleme,« razloži dr. Igor Škrjanc. I V programu za igro namiznega nogometa so upoštevani vsi elementi avtomatike - od tega, da je treba s kamero zajeti gibanje žogice na igrišču, jo prepoznati, oceniti položaj, zajeti postavitve igralcev enega in drugega moštva, določiti njihove vloge ter vse skupaj logično pripeljati do cilja oziroma gola. Odlika avtomatskih sistemov je v zanesljivosti Strojno učenje je mehanizem v sistemu umetne inteligence, ki evidentira informacije, na podlagi katerih podatkov sprejeti katere odločitve. To pomeni, da se sistem z opazovanjem eksperta ali drugega sistema sam nauči, kako naj se odloči v podobni situaciji oziroma na kakšne vzroke naj sklepa pri določenih ocenjenih vrednostih/vzorcih - simptomih, krvni sliki itd. Odlika avtomatskih sistemov je prav v tem, da so lahko bolj zanesljivi od ljudi na mnogih področjih, celo pri medicini in politiki, čeprav je to v praksi težko doseči. »Na podlagi simptomov in diagnostike posameznih vrednosti laboratorijskih kazalcev lahko že zanesljivo napovedo bolezen.« Ključna pri tem je komunikacija z ekspertom: zdravnikom, operaterjem, inženirjem ..., naloga umetne inteligence pa je, da njihove odgovore beleži in jih spreminja v programske kode oziroma algoritme, ki se nato uporabijo kot oporne vrednosti pri nadaljnjem odločanju. »Takšni asistenti operaterji bi lahko delovali tudi v politiki kot nekakšni svetovalci, ki bi znali svetovati politikom, kako naj se odločajo, da bodo pri volivcih dobili dovolj točk in da bo njihov primarni cilj - zadovoljstvo družbe - tudi dosežen,« pojasni dr. Simon Dobrišek. Z algoritmom strojnega učenja se odločitev sprejme avtomatsko, težava nastopi, če se pojavi neka nova situacija, nov zapis izmerjenih vrednosti, ki ga umetna inteligenca ne pozna, in potem takšen način podpore pri odločanju odpove.« \ iS $ J 1 Biometrične metode Ena od pomembnih zmožnosti umetnih inteligentnih sistemov je tudi ta, da vidno zaznavajo in razpoznavajo ljudi, s katerimi pri izvajanju svojih nalog po potrebi tudi komunicirajo. Vidno zaznavanje in razpoznavanje ljudi se izvaja z različnimi biome-tričnimi analizami računalniških slik njihovih postav in obrazov. Na podlagi teh biometričnih metod so se razvili tudi posebni generativni biometrični slikovni modeli, ki omogočajo zelo realistično poustvarjanje in spreminjanje slik ljudi oziroma njihovih obrazov. Z uporabo generativnih biometričnih slikovnih modelov je tako mogoče izvesti tudi takšne spremembe slik ljudi in njihovih obrazov, da te spremembe ljudje dojemajo kot neko spreminjanje ali izboljševanje njihovega videza, omogo- čajo pa tudi virtualno menjavo in pomerjanje oblek ali očal, kar ima svojevrstno uporabno vrednost. V Laboratoriju za strojno inteligenco tako že vrsto let uspešno razvijajo tudi tovrstne ge-nerativne biometrične slikovne modele. V Laboratoriju za avtomatiko in kibernetiko Fakultete za elektrotehniko se že dalj časa posvečajo popularizaciji področja umetne inteligence in avtomatike (nadomeščanja človeka s strojem) v širši javnosti. Implementacija računalniške inteligence, ki je pomemben gradnik avtomatizacije, bo eden od najpomembnejših multi-plikatorjev dodane vrednosti v industriji prihodnosti. Na fakulteti nenehno iščejo inovativne načine, kako študentom privlačno predstaviti področje načrtovanja in vodenja kibernet-skih strojev v praksi in spodbujati njihovo kreativnost. »Izkazalo se je, da je to najlažje doseči z igro,« izpostavi profesor dr. Igor Škr-janc, vodja Laboratorija za avtomatiko in kibernetiko. Leta 2000 so tako začeli z robotskim nogometom (RoboBrc), z vodenjem avtonomnih vozil na poligonu, nadaljevali z roboti iz sistema Lego Mindstorms, zdaj pa poskušajo študente navdušiti z avtomatskim namiznim nogometom, ki ga imenujejo FuzbAI. Biološke in strojne sisteme vodijo isti principi »Na fakulteti imamo mizo za namizni nogomet in opazili smo, da se študentje v prostem času tam zelo radi zadržujejo in ga navdušeno igrajo. Tako smo prišli na idejo, da bi to njihovo zanimanje in željo po tekmovanju uporabili tudi v študijskem procesu, in nastal je avtomatizirani namizni nogomet. Pri tej igri skušamo s strojem nadomestiti človeka pri igri namiznega nogometa, poskušamo posnemati človekovo zaznavanje igre, igralcev, žogice in glede na to zaznavo tudi posnemati njegovo odločanje v smislu premikanja igralcev in udarjanja žogice - to pomeni, da poskušamo avtomatizirati celotno igro,« pripomni Škrjanc. Tako kot pri klasičnem imamo tudi pri avtomatiziranem namiznem nogometu dva igralca oziroma dve ekipi, ki tekmujeta med seboj v nekakšnem kombiniranem načinu. Vsaka od ekip napiše program za upravljanje (ročic) avtomatiziranega namiznega nogometa, cilj je doseči čim več golov, pri čemer pa mora znati predvideti tako moč udarca žogice kot trajektorijo poti, ki jo naredi žogica v smeri proti nasprotnikovemu golu. Igralci igrajo izmenoma, eni s pomočjo kibernetskega stroja, ki so ga sprogramirali (napisali program za premikanje ročic s plastičnimi igralci po igrišču), drugi pa v živo na klasičen način z ročnim premikanjem ročic; nato se zamenjajo. »Ekipa, ki je napisala boljši program in ki tudi v živo bolje igra, zmaga,« nadaljuje dr. Škrjanc. Gre za igro, ki je poučna, zabavna in raziskovalno usmerjena, saj omogoča implementacijo in preizkušanje kompleksnih algoritmov strojnega vida, algoritmov vodenja, posameznih programskih rešitev v praksi, predvsem pa vzpodbuja kreativnost. Konceptualno je vodenje sistema FuzbAI zelo podobno vodenju industrijskih procesov »V programu za igro namiznega nogometa so upoštevani vsi elementi avtomatike, od tega, da je treba s kamero zajeti gibanje žogice na igrišču, jo prepoznati, oceniti položaj, zajeti postavitve igralcev enega in drugega moštva, določiti njihove vloge ter vse skupaj logično pripeljati do cilja oziroma gola,« pojasni dr. Škrjanc. To ni enako, kot je to denimo pri elektronskem šahu, kjer je igra omejena na dvodimenzionalno mrežo na zaslonu, kjer presenečenj pri izvedbi programa ni, saj figuro vedno natančno prestavimo na določeno mesto v šahovskem polju, medtem ko sam namizni nogomet ponuja vrsto naključnosti, ki jih je v večini nemogoče predvideti. 18 GEA marec 2023 »Pri avtomatiziranem namiznem nogometu je zelo težko natančno predvideti potek določenih akcij. Zaradi nezanesljivosti meritev položaja je nemogoče natančno vedeti, kje je žogica, ravno tako to velja tudi za položaj igralcev na mizi. Zaradi vseh teh odstopanj tudi udarec igralca po žogi ne more biti povsem predvidljiv in zato vedno obstaja majhna napaka tudi pri trajektoriji žoge. Zaradi vseh teh odstopanj je program v realnosti delno nepredvidljiv. Lahko rečemo, da realni prostor zajamemo z meritvami, pri namiznem nogometu so to kamere, in ga prenesemo v digitalni prostor, kjer z ustreznim programom iščemo najboljše rešitve. Te rešitve potem s pomočjo izvršnih elementov, v namiznem nogometu so to motorji, prenesemo nazaj v realni prostor, realni svet. Gre za kroženje med realnim, digitalnim in spet realnim svetom. Ob dotiku realnega in digitalnega pa vedno pride do naključnih napak, ki jih seveda ne moremo predvideti,« pojasnjuje dr. Škrjanc. Konceptualno lahko najdemo podobnosti med sistemom FuzbAI in sistemi vodenja pri industrijskih procesih, denimo pri manipulaciji izdelkov na hitrem tekočem traku v procesu kontrole kakovosti, kjer je treba izdelke pregledovati s pomočjo zajema s kamero in odstraniti tiste, ki pri pregledovanju izdelkov ne ustrezajo standardom. »Pri avtomatiziranem namiznem nogometu se ukvarjamo s podobnimi rečmi - najprej nas zanima položaj žogice in položaj naših igralcev, v naslednjem koraku pa moramo izvesti premik igralcev, da lahko udarimo ali obranimo žogico, ali opravimo kakšen drug manever. Enako je pri vožnji avtonomnih vozil (bodisi v cestnem prometu ali industriji), kjer pozicijo žogice zamenja pozicija avtonomnega vozila,« nadaljuje dr. Škrjanc. »Naslednja stopnja pri razvoju sistema FuzbAI je zasnova sistemov računalniške inteligence, ki bodo močno izboljšali delovanje. Poligon avtomatiziranega namiznega nogometa bo v prihodnosti uporabljen za razvoj novih algoritmov s področja vodenja, umetne inteligence, fuzije podatkov ipd. ■ I Testni avtonomni mobilni sistem za gradnjo zemljevidov prostora, lokalizacijo in vodenje po začrtani poti I Dober primer evolucije, kako najprej rešujemo majhne probleme, da se lahko nato lotimo večjih, je avtonomni voziček, ki je bil razvit v sodelovanju s tovarno vozil TPV v Novem mestu in podjetjem IQ. fgrm /■ ■