Göm menyn

TDDD92 AI-projekt

Kursinformation


Kursinnehåll

I den här kursen genomför du ett fördjupat tekniskt projekt relaterat till artificiell intelligens. Kursen innehåller en individuell utredande del som följs av ett utvecklingsprojekt i grupp. Båda examineras främst genom skriftliga tekniska rapporter.

Samtliga projektgrupper kommer att arbeta med projekt baserade på StarCraft II Learning Environment.

Varför?

Varför ska man då göra detta? Alla de olika delmomenten i kursen har sina specifika syften.

I utredningsdelen förbereds det arbete man ska göra i projektet... men samtidigt övar man på att läsa och ta till sig vetenskaplig litteratur, och att till viss del sammanfatta den, både för att få förståelse och för att visa förståelsen. Detta ska också ge en bra bas för att i framtiden kunna ta åt sig av existerande material, så att man inte återuppfinner hjulet – och kan ta reda på vilket existerande hjul som passar in. Detta är också en förberedelse inför ett självständigt examensarbete, och rapportens språk och struktur kommer att granskas som ytterligare hjälp inför detta.

I projektet, som utförs i grupper om 5–7 personer, utvecklar man en agent som självständigt kan spela StarCraft II. Utöver att det här är ett intressant ämnesområde i sig ger det också en grund för att öva på implementation av existerande algoritmer, som någon annan har utvecklat, och för att samarbeta inom mjukvaruprojekt där flera personers implementationer måste samverka.

Man kan identifiera ytterligare mål, men det är viktigt att veta att tanken bakom kursen inte är att utveckla egna AI-tekniker. Istället är detta en projektkurs där man väljer, anpassar, implementerar, integrerar och testar sådana tekniker.

Hur arbetar vi?

Ni är drivande, individuellt och i projektgrupp! Vi ger hjälp på många nivåer och inom många områden, men det är till stor del kursdeltagarna som ska driva arbetet framåt.

Vi föreläser om vissa saker, men inte allt. Ni kommer att kunna ta upp diskussioner på olika sätt, både via en ärendehanterare (issue tracker) och via seminarier i olika stora grupper. Planen för 2021 var att detta skulle ske helt på distans, men nu har LiU återgått till mera närvaro och vi har också gått över till fysiska möten på t.ex. redovisningarna i HT2.

Närvaro

Måste man delta i alla seminarier och övriga pass? Vad händer om man är sjuk?

För våra seminarier och veckoredovisningar är det inte 100% obligatoriskt att vara närvarande varje gång. Man kan ju till exempel vara sjuk vid något tillfälle, och är man då närvarande på alla andra tillfällen är det inget problem. Labbtillfällen är till stor del till för att ge vägledning och om allt flyter på smidigt vill vi inte försöka tvinga någon att vara på plats.

Samtidigt är det alltid ni som deltar i kursen som ska övertyga oss om att ni har uppnått en viss betygsnivå. Där är våra möten i mindre grupper en viktig chans att demonstrera för oss vad ni kan, inte bara genom ett slutresultat utan genom att ni kontinuerligt visar oss hur ni tänker och reflekterar. Om ni missar detta kan det vara som att missa att svara på en delfråga på en tenta: Kanske inte katastrofalt i sig, men ju mer man missar desto svårare blir det att övertyga. Det kan leda till att man behöver göra ytterligare arbete, även om man var sjuk – missar man t.ex. en tenta hjälper inte att ha en giltig anledning till att inte kunna delta, utan då måste man hitta ett nytt tillfälle att visa upp sina kunskaper, och samma gäller våra redovisningar.

Med andra ord: Var med på redovisningarna så mycket du kan. Om du absolut inte kan komma vid ett visst tillfälle, gör då vad du kan för att informera din handledare, t.ex. genom att skicka in en skriftlig rapport som motsvarar vad du skulle ha sagt; handledaren kan också göra det möjligt att delta via Zoom om du är sjuk, så länge som vi får reda på det i tid. Om du skulle vara alltför mycket frånvarande kan vi behöva ta in information på något annat sätt (som vi får bestämma utifrån det enskilda fallet).

Slutredovisningar och slutpresentationer är givetvis obligatoriska, och missar man ett tillfälle behöver man vara närvarande vid ett annat.

Matcher och avslutande turnering

Under andra perioden kommer ni att testa era agenter mot varandra under ett antal tillfällen. På slutet har vi eventuellt en frivillig turnering mellan lagen.

Vem som vinner i dessa matcher påverkar inte betyget. Hur bra en agent klarar sig mot en annan beror inte bara på arbetets kvalitet utan också på mer slumpmässiga faktorer, speciellt i en kurs med begränsad tid där valet av lösningar att implementera kan ha konsekvenser som är omöjliga att förutse i förväg. Syftet är istället att upptäcka skillnader mellan agenter, att hitta möjligheter till förbättring (inklusive rena buggar), och att ha något mer att sträva mot.

Däremot kommer vi så klart att titta på hur man tar sig an de eventuella svagheter som hittas under matcherna.

Mer detaljer om matcher och turnering kommer att publiceras på andra sidor.


Sidansvarig: Jonas Kvarnström
Senast uppdaterad: 2021-10-31