Hur får man entiteter i ett strategispel att organisera sig och samarbeta? Det har Fredrik Präntare tagit fram en algoritm för. Och algoritmen är också generell så att den kan användas utanför spelvärlden. För det får han nu pris för årets bästa exjobb.
Tänk dig att det finns tio uppgifter att lösa och tio agenter (människor/robotar/program etc) som kan utföra dem. I det optimeringsproblem som Fredrik Präntare studerade finns det då 1010 stycken varianter för vem som ska göra vad.
Lilla Polhemspriset
Lilla Polhemspriset är Sveriges Ingenjörers årliga pris för bästa examensarbete på civilingenjörs-utbildningarna. Årets prissumma är på
50 000 kronor.
Läs mer på Polhemsprisets hemsida.
– Då gäller det att hitta ett effektivt sätt att hitta en bra lösning utan att titta på varje konfiguration, säger han.
Fredrik Präntare är civilingenjör i datateknik från Linköpings universitet och gjorde examensarbetet som han nu får Lilla Polhemspriset för på Paradox Development Studio i Stockholm. Företaget gör strategispel och hade redan en algoritm, men den behövde bli mer effektiv och den var bara användbar i spelen.
Läs också om bästa exjobb för högskoleingenjörsstudenter: ”Lisa har studerat bästa platsen för att lagra snö”
Resultatet av Fredrik Präntares arbete blev en AI-algoritm som alltså kan användas utanför spelvärlden. Exempelvis kan den hjälpa till med att koordinera vilka läkare och sjuksköterskor som borde ta hand om vilken patient.
– Dataspel är ett bra sätt att testa innan man använder en algoritm i verkligheten. Spel kan ge en bra indikation på hur algoritmer beter sig innan man testar i verkliga situationer.
Lösningen kan beskrivas som att man har vissa agenter och lägger ihop dem med vissa uppgifter med hjälp av en matematisk funktion, Utility function (se bild nedan). Funktionen beskriver hur bra ett lag är på en uppgift. Den kunskapen kan ges av en människa, eller byggas upp genom maskininlärning utifrån hur agenterna presterar. Pilen representerar algoritmen som beräknar den bästa tilldelningen av lag till uppgifter.
Fredrik Präntare poängterar att optimering av samarbeten är en viktig del inom AI.
– Det kan finnas problem om agenter inte samarbetar och misslyckas med att arbeta mot ett gemensamt mål.
Fler artiklar
Se alla våra artiklar om Polhemspriset, Lilla Polhemspriset och Wimanska priset här.
Sedan han tog examen är Fredrik Präntare doktorand på institutionen för datavetenskap vid Linköpings universitet. Han utvecklar också spel och driver två mindre spelföretag.
– Vi får se vad jag gör i framtiden men det finns väldigt många intressanta och viktiga problem att lösa genom forskningen och som kan hjälpa människor. Det känns väldigt lockande, säger han.
Karin Thorsell
Lilla Polhemspriskommitténs motivering
”Fredrik Präntare har i sitt examensarbete ’Simultaneous coalition formation and task assignment in a real-time strategy game’ tagit fram en ny algoritm som förbättrar samarbetsförmågan hos datorgenererade agenter i realtidssystem.
Att i realtid få agenter att samarbeta och därmed uppträda mer intelligent, är ett välkänt optimeringsproblem i datorspelbranschen, med många motsvarigheter även utanför datorspelstillämpningen, inte minst inom artificiell intelligens.
Präntare har i sitt arbete utvecklat en effektiv så kallad anytime-algoritm som löser samarbetsproblemet där autonoma agenter själva måste formera sig i grupper och tillsammans fördela och lösa uppgifter på bästa sätt.
Präntare har i sitt examensarbete systematiskt utvärderat den framtagna algoritmens prestanda genom att tillämpa den på simulerade problem av olika svårighetsgrad, men också genom att sätta den på prov i en verklig tillämpning i ett välkänt realtidsstrategispel.
Fredrik Präntares examensarbete är föredömligt grundligt i både utförande och redovisning. Han har också lyckats med konststycket att i ett väl utfört arbete göra ett för många annars svårbegripligt ämne både intressant och förståeligt.”