Göm menyn

TDDD92 AI-projekt

Individuell utredning (UPG2)


Under första kursperioden genomförs inte bara labbar utan även en självständig och individuell teknisk utredning för att utvärdera en eller flera existerande AI-tekniker inom vissa givna ramar.

Stegen nedan beskriver vad du ska göra i utvärderingsarbetet. Det följs sedan av projektarbetet, där du faktiskt implementerar en lösning – kanske en som du utvärderade, eller kanske en annan om ingen utvärderad teknik verkade bra. Den individuella utvärderingen ger dig alltså en vägledning innan du börjar med implementationen, så att du vet vad som är intressant att gå vidare med. I projektarbetet kommer du också att kunna göra en betydligt mer säker utvärdering av hur bra den implementerade tekniken faktiskt fungerade.

(I verkligheten kan det så klart visa sig att det du implementerade inte fungerade så bra, trots att det passerade de tidigare filtren. Det är helt OK, så länge du faktiskt har implementerat tekniken korrekt och gjort en bra utvärdering!)

Bra att veta: Denna kurs innehåller också ett integrerat moment i rapportskrivning, vilket kommer att granskas separat av personal på IKOS. Därför har vi också en IKOS-föreläsning som just handlar om hur man skriver rapporter. Vänta inte på den föreläsningen innan ni börjar skriva utredningsplanen – den handlar enbart om saker att tänka på i den slutliga rapporten! Ta detta moment på allvar: För att bli godkänd på den individuella utredningen måste man ha godkänt på språk och struktur från IKOS!

Steg 1: Välj ett lämpligt problem att undersöka

Du väljer själv vilka problem(klasser) och vilka tekniker du vill studera, men tänk på att du ska kunna utgå från din utredning när du deltar i det gemensamma projektet. Under projektet kommer varje gruppmedlem att behöva ett eget ansvarsområde, med ett tydligt huvudansvar för någon AI-teknik eller något problemområde. Trots att utredningen i sig är en individuell uppgift kommer varje projektgrupp därför att behöva samordna medlemmarnas val av problem(klass), så att det inte blir onödiga överlapp mellan de problem och tekniker som gruppmedlemmarna utreder (mer om detta längre ner).

Förberedelse: Att läsa

Som förberedelse inför Föreläsning 2 läser du "An Introduction to Game-Playing Systems and StarCraft II" (PDF).

Föreläsning 2: Inspiration till problem- och teknikområden

Under föreläsning 2 diskuteras ett antal intressanta problem- och teknikområden. Detta ska ge ett första underlag för att du ska kunna se vilka områden som verkar mer eller mindre intressanta för din egen del och för projektet. Sedan behöver du givetvis själv följa upp och undersöka potentiellt intressanta områden närmare så att du kan göra ditt val, till exempel genom att ta en första titt på artiklar och annat material. Du får självklart också väldigt gärna ha egna idéer, som du kan diskutera med en handledare! För en översikt över existerande tekniker, se även kursboken i AI-kursen (TDDC17)!

Bilda projektgrupper / anpassa ansvarsområden

Efter föreläsningen är det dags att bilda projektgrupper om cirka 5-7 personer (kursledningen meddelar antalet beroende på exakt antal kursdeltagare detta år), för att kunna samordna utredningsområden inom gruppen och undvika överlapp.

Obs! Det kan ta tid att bilda grupper som passar ihop med hänsyn till överlapp. Börja därför senast i samband med föreläsning 2!

Som nämndes ovan behöver varje gruppmedlem ett eget ansvarsområde under själva projektet. Även om det går att ha ett projektansvar som skiljer sig från det man gjorde i utredningen, leder det till mycket extraarbete. Vi rekommenderar därför starkt att man redan inför det individuella arbetet samordnar utredningarna inom gruppen. Det betyder att man kan behöva anpassa och förhandla kring sitt val av ansvarsområde och utredningsområde för att det ska passa in i gruppen, eller anpassa grupperna så att de som väldigt gärna vill arbeta med samma område hamnar i olika grupper.

Vad menas med "eget" ansvarsområde? Här är några punkter som kan ge en viss vägledning. Diskutera gärna med handledarna!

  • Två personer i samma grupp kan inte tilldelas ansvarsområdet hitta en bra byggnadsordning givet vad vi redan har och vad vi vet om fienden. Detta är en problemställning.

  • Däremot skulle en person kunna ha hand om att uppskatta vilken strategi fienden troligen använder just nu medan en annan person kan ta hand om att hitta en bra byggnadsordning givet vilken strategi vi tror fienden använder just nu. Detta är två tydligt separerade problemställningar, även om lösningen på den ena ger information som behövs för att kunna applicera den andra.

  • Två personer i samma grupp kan möjligen ha ansvar för olika ansvarsområden där lösningarna överlappar till viss del. De kan t.ex. arbeta med två helt olika problemställningar där det visar sig att båda de valda lösningarna applicerar flow fields, fast på olika sätt. Man kan då samarbeta om implementationen av grundläggande flow fields, men behöver fortfarande ha en signifikant "egen" funktionalitet att implementera och utvärdera ovanpå detta. Den delen av implementationen ska då vara separerad så att det gemensamma, t.ex. "flow fields", är en tydligt avgränsad del av koden.

    Detta gäller alltså projektdelen. Den individuella utredningen är alltid individuell: Skriv inte gemensamma avsnitt om t.ex. flow fields, utan gör din egen utredning.

Efter föreläsning 2: Att läsa

Efter föreläsning 2 ska ni läsa rapportskrivningsguiden (PDF) som ni kommer att följa under resten av kursen.

Steg 2: Bestäm exakt vad du tänker undersöka, och hur

Det räcker inte med att veta vilket problemområde man vill undersöka. Du behöver också fundera på t.ex. vilka potentiella lösningar du vill utvärdera, och var du ska få den information du behöver. För att vi ska kunna ge återkoppling på detta skrivs först en kort utredningsplan.

Planera den egna utredningen

Du funderar, läser på, och skriver en plan för den tänkta utredningen. Dokumentet ska beskriva problemet du tacklar och visa vilka tekniker att utvärdera. Planen är helt enkelt till för att du inte ska komma på fel väg från början: Du behöver dels verifiera att det faktiskt finns material att utgå från, dels konkretisera dina egna tankar så långt att det går att förstå hur detta kan passa in i ett gemensamt projekt – eller upptäcka eventuella problem så tidigt som möjligt.

Under planeringen diskuterar du mål och syfte med övriga gruppmedlemmar för att förankra detta i gruppen och underlätta det senare projektarbetet. Läs också genom hela denna sida redan under planeringen. Informationen om steg 3 innehåller en hel del matnyttig information som du behöver tänka på redan nu!

En riktlinje är att dokumentet blir ungefär en A4-sida. Detta är en fingervisning om hur mycket information som brukar behövas för att du själv ska få bästa möjliga återkoppling från gruppen och handledarna.

Obs! Ni ska använda mallen för utredningsplanen! Mallen talar om vilken information som ska anges.

Att använda artiklar som baseras på StarCraft II

I litteraturen finns redan en hel del artiklar som applicerar olika AI-tekniker på just StarCraft II, och som utvärderar resultatet av detta.

Om en individuell utredning enbart baserar sig på en teknik av denna typ, försvinner mycket av det tänkta utredningsarbetet. Rapporten säger då i princip att:

Jag vill tackla problemet X inom StarCraft II och vill reda ut om teknik Y skulle vara användbar enligt kriterierna Z1, Z2 och Z3. John Doe [7] har applicerat teknik Y på problemet X inom StarCraft II och kommit fram till att kriterierna Z1 och Z2 uppfylls bra medan Z3 uppfylls mindre bra. Slut på utredningen.

Ovanstående är så klart något överdrivet, men det är ändå lätt att hamna i denna fälla och att därmed inte komma fram till något rimligt djup i den egna utredningen. Om du baserar din utredning på existerande vetenskapliga artiklar i StarCraft-miljö behöver du därför:

  1. Utvärdera flera olika tekniker och göra en egen slutlig jämförelse mellan dem (t.ex. använda flera tekniker som redan applicerats på StarCraft, eller en som redan applicerats och en som inte har gjort det), eller

  2. Utvärdera en teknik som redan har applicerats på StarCraft, men komma fram till egna djupare slutsatser som inte framgår i ursprungsartikeln/artiklarna (vilket kan vara svårt att nå upp till). Diskutera i så fall detta med en handledare i förväg, med grund i dina tänkta val av specifika artiklar.

Inlämning av utredningsplaner

Deadline för att lämna in din utredningsplan finns på deadlinesidan. Utredingsplanen lämnas in i PDF-format och ska döpas till Utredningsplan-TDDD92-202X-liuid123.pdf, där du så klart stoppar in året och ditt eget LiU-id.

Inlämning sker via ett ärende i ärendehanterare för just inlämningar. Dessa ärende kommer att vara konfidentiella och kan enbart ses av inlämnaren och kursledningen.

Efter inlämningen tittar vi på din utredningsplan för att se om den förklarar tillräckligt väl vad du tänker göra. Det händer till exempel att vi ser att någon har missförstått uppgiften, att några vill satsa på områden som är alltför komplexa eller alltför simpla, och att vissa egentligen inte har klart för sig vad de vill göra. Vi kommenterar och du får en möjlighet att lämna in en eller ett par nya versioner av planen – för din egen skull.

Alla problem kan inte förutsägas från en kort utredningsplan. Vi kan alltså inte lämna några garantier att din utredning kommer att fungera smidigt, även om vi inte har några allvarliga kommentarer att ge.

Steg 3: Genomför undersökningen och skriv din rapport

Genomför undersökningen med stöd av dina inledande undersökningar från skrivandet av utredningsplanen. Du kommer också att få möjlighet att ställa frågor under ett par seminarier enligt nedan.

Här ska du alltså läsa litteratur för att reda ut vad som är mest intressant att implementera och testa i praktiken.

  • Läs vetenskapliga artiklar, (kursböcker)
    • Utgå från utvärderingar som redan har gjorts (se t.ex. kursens wikisidor)
    • Jämför systematiskt vad som sägs om olika tekniker och utvärdera hur de uppfyller utvärderingskriterierna
    • Citera dina källor – viktigt!
  • Sök vidare – leta gärna efter mer information om teknikerna. Använd primärt vetenskapliga artiklar, sekundärt kursböcker. Google Scholar kan hitta relaterade artiklar som citerar det ni läser!

Rapportskrivningen (använd rapportmallen!) är en viktig del av kursen. Vi har därför slagit ihop tips i en rapportskrivningsguide (PDF) som beskriver hur man strukturerar en rapport, samt vanliga misstag och hur man undviker dem.

Steg 4: Granskningsrunda

När man skriver en rapport är det ofta svårt att få med all den nödvändiga informationen och de nödvändiga resonemangen. Man vet ju själv så väl hur allt hänger ihop att det inte går att se att en del av informationen bara finns i det egna huvudet, och man förstår sina egna resonemang så väl att man inte inser att viktiga steg faktiskt inte står i rapporten. Det kan leda till komplettering.

Därför har vi en granskningsrunda där alla i en projektgrupp ska lämna över sin rapport till någon av de andra gruppmedlemmarna, som då ska granska den. Detta är inte tänkt att ta tid från utredningen. Tvärtom kan det spara tid eftersom man enklare kan se potentiella problem i någon annans rapport än i sin egen.

Bra att veta: Deadlines för samtliga moment finns på deadlinesidan.

Sätt upp en granskningsordning

Det kan hända att någon hoppar av eller inte går vidare med kursen, eller inte känner sig klar med rapporten i tid. Därför behöver varje grupp se efter vilka som fortfarande är kvar och tänker genomföra granskningsrundan. De som är med i granskningsrundan förbinder sig då att lämna över sin rapport till någon annan för granskning i slutet av veckan.

Samtidigt bestämmer man vem var och en ska skicka sin rapport till. Vi rekommenderar att man granskar rapporter "cirkulärt" inom var och en av grupperna: A granskar B, B granskar C, C granskar D, och så vidare. Då blir ingen ofrivilligt ensam. Det är gruppen i sin helhet som ska se till att alla som har skrivit en (tillräckligt fullständig) rapport får en granskare.

De som eventuellt inte är med i denna granskning kan inte heller lämna in till oss under oktober, utan kan tidigast lämna in till nästa deadline i januari!

Överlämning av rapporter för granskning inom gruppen

Senast midnatt på deadlinen ska alla som är med i granskningsrundan skicka över sin rapport till sin egen granskare. Ni ska inte skicka in denna version av rapporten till oss, utan bara till varandra.

Kamratgranskning

Granskning och kommentering kan ske under de två dagarna innan deadlinen. Dokumentet ska så småningom lämnas över i .txt- eller .pdf-format, men vi har ingen särskild mall att använda. Du kan t.ex. skriva i Emacs eller Word eller Google Docs och skapa en PDF från den, eller skicka i textformat, eller använda verktyg där man skriver annoteringar i den ursprungliga PDF:en om du föredrar det.

Fokus är på det som fortfarande går att ändra/justera, främst presentationen / beskrivningen. Vid granskningsrundan är det för sent för att ändra något i det man väljer att utreda, att byta tekniker, och så vidare, så detta behöver inte diskuteras i granskningen. I stället ska man fokusera på hur resultatet beskrivs. Är det tydligt vad problemet är, vad som har gjorts, varför man drar vissa slutsatser, och så vidare? Detta kan fortfarande justeras. Mer om detta i en punktlista längre ner.

Undvik inte kommentarer för att vara "snälla" i er granskning! Det är inte ni som sätter betyg, och vi kan lova att vi själva kan se allt det som ni kan peka ut. Varje kommentar är istället en hjälp som låter projektkamraten fixa problem innan rapporten lämnas in, för att minska risken för komplettering.

Men ge konstruktiv kritik! Försök fokusera på möjligheten till förbättring, inte att något är "dåligt". Man kan t.ex. skriva att "jag förstår inte helt och hållet vad du menar i mening X" istället för att "mening X är oförståelig".

Kommentera även sådant som ni är lite osäkra på. Det är rapportförfattarens uppgift att sålla i kommentarerna och att välja vad man vill fokusera på. Granskaren kan alltså mycket väl inkludera kommentarer som att "här kanske det skulle vara bra att byta plats på A och B", även om man tycker att det är en åsiktsfråga. Man får gärna fråga "har du tänkt på att...".

Granskningen blir en del av betygsunderlaget. Det är inte den viktigaste delen, men den ingår. Här bedömer vi hur väl du har granskat någon annans rapport! Det är varken negativt eller positivt att du själv har fått många granskningskommentarer, utan där tittar vi helt och hållet på hur den slutliga rapporten ser ut.

Om någon skulle hoppa av efter att ha accepterat att granska din rapport tappar du en "förbättringsomgång", men du har fortfarande kvar möjligheten att förbättra rapporten efter vår granskning.

Överlämning av granskningar inom gruppen

Senast på natten (eller tidigt på morgonen) lämnas granskningen över till rapportförfattaren. Därefter kan författaren arbeta vidare med sin rapport.

Du behöver inte lämna granskningen till oss just nu. Den lämnas in tillsammans med din egen rapport (nästa steg).

Arbete med rapporten

Tid att arbeta vidare med rapporten utifrån kamratgranskningen.

Steg 5: Inlämning, förhandsgranskning

Första inlämningen av utredningsrapporten

Senast på deadlinen för första inlämningen lämnar du in din utredningsrapport på (normalt) 4-6 A4-sidor till kursledningen. Rapporten ska vara skriven enligt instruktionerna ovan. Den lämnas in i PDF-format via en issue i ärendehanterare. Dessa issues kommer att vara konfidentiella och kan enbart ses av inlämnaren + kursledningen. Du ska också göra en separat inlämning till språkgranskning enligt nästa punkt!

Döp filen till "Utredning-TDDD92-202X-liuid123.pdf", där 202X är kursåret och liuid123 är ditt LiU-id.

Du lämnar på samma gång in den granskning som du har skrivit, som en ytterligare bifogad fil, "Granskning-TDDD92-202X-liuid123.???", där liuid123 återigen är ditt LiU-id och där "???" kan vara "pdf" eller "txt" (inga Word-dokument eller liknande). Se till att det syns inuti filen vems dokument du har granskat.

Om du inte är färdig med rapporten går det också att vänta till nästa inlämningsomgång. Då kommer den omgången att bli din förhandsgranskning, och den efterföljande omgången kommer att bli den slutliga granskningen.

Även en inlämning till språkgranskning!

Språk- och strukturgranskning är ett separat moment som hanteras av IKOS. D-programmet har sitt moment i TDDE30 medan U-programmet har detta i TDDD92.

IKOS använder sig inte av Gitlab utan går istället via Lisam:s inlämningssystem. Du måste göra en separat inlämning där! Du ska bara lämna in själva rapporten och inte den granskning du har gjort av någon annans rapport.

Som vi har sagt ska du döpa filen till "Utredning-TDDD92-202X-liuid123.pdf", där 202X är kursåret och liuid123 är ditt LiU-id.

Språk- och strukturgranskningen brukar vara noggrann. Det är inte ovanligt att man får komplettering och man kan då inte få poäng i Ladok för den individuella rapporten förrän kompletteringen är genomförd, till nästa inlämningsdeadline. Var noggrann själv om du vill ha poäng och CSN-pengar.

Läs till exempel genom informationen om rapportstruktur en gång till. Kör också rapporten genom en stavningskontroll, och om möjligt en grammatikkontroll. Tänk på tydligheten och undvik syftningsfel, svengelska, med mera.

Bra att veta: Vill du ha hjälp med språket? Kanske Språkverkstaden kan ge några tips. De hjälper dock inte till med korrekturläsning. Se även studentsidan om språkstöd.

Är du dyslektisk eller har andra läs- och skrivsvårigheter? Informationen vi har fått är att din rapport ändå måste nå upp till rätt nivå rent språkligt, eftersom detta är just ett språkmoment i kursen (detta bestämmer vi alltså inte själva över). Däremot kan du kanske få mer hjälp från Språkverkstaden och kan be om utförligare kommentarer från IKOS när du gör din inlämning.

Vår förhandsgranskning

Efter inlämningen kommer vi att förhandsgranska din utredningsrapport och ge kommentarer om förbättringsmöjligheter för att hjälpa dig höja ditt betyg och minska risken för komplettering.

Vi spenderar ungefär samma tid på varje rapport och kommenterar så långt som tiden räcker. Med andra ord, ju mer du har arbetat med din rapport vid första inlämningen, desto större chans att vi har möjlighet att skriva specifika kommentarer som hjälper dig att verkligen finputsa rapporten. Ju mindre genomarbetad rapporten är när vi får den, desto större risk att du bara kan få mer generella kommentarer innan tiden tar slut.

Vid den här första inlämningen ger vi inga betygsindikationer utan påpekar bara vad som kan förbättras. Inlämningen ska ses som ett inlärningstillfälle – vi förväntar oss inte att ni ska kunna allt om rapportskrivning i förväg, utan att det behövs återkoppling innan examination.

Detta är ett obligatoriskt steg: Alla rapporter måste förhandsgranskas i ett någorlunda färdigt format innan den slutliga inlämningen. Om du t.ex. blir färdig med rapporten till nästa inlämningstillfälle, vid nyår, kommer vi att göra förhandsgranskningen vid det tillfället och betygsbedömningen efter att du har kunnat polera rapporten.

Förhandsgranskning tillbaka

Senast efter två veckor hoppas vi att vi kan ge dig din förhandsgranskning tillbaka (i värsta fall kan detta fördröjas av sjukdom eller liknande). Då kan du:

  • Arbeta med det vi har kommenterat.
  • Skriva vidare på den andra delen av rapporten, som beskriver slutresultatet. Detta kommer att diskuteras på en av projektsidorna.

Resultatet från språkgranskningen bör komma från IKOS inom 2 veckor från det senare inlämningsdatumet.

Steg 6: Slutlig inlämning, granskning, betygsättning

Slutlig inlämning

I tentamensperioden på slutet av höstterminen lämnas den slutliga rapporten in.

Bra att veta: Vid inlämning av utredningsdelen till språk- och strukturgranskning (IKOS) är det OK om även information som hör till projektdelen följer med: Granskarna ska i så fall ignorera de avsnitten och enbart kommentera utredningsdelen.

Betygsättning

Betyget (3-4-5 eller komplettering) på detta moment (UPG2, 2 hp) baseras bland annat på hur tydligt och välmotiverat problemet är, hur väl utvärderingen är gjord (inklusive tydliga och motiverade resonemang) och hur väl rapporten är skriven.

Hur tekniskt avancerade tekniker som valts påverkar inte betyget direkt, men i och med att teknikerna behöver mindre komplexa tekniker kan behöva undersökas djupare.

Det som avgör betyget är inte enbart "medelnivån" på rapporten. Det händer också att rapporten har problem som måste rättas till även om nivån i övrigt är hög, vilket då ger en omedelbar komplettering.

Utöver detta måste man även få godkänt från språk- och strukturgranskningen av rapporten (IKOS) för att få ett godkänt betyg på UPG2.

Att skriva en sådan här rapport är inte helt trivialt. Det finns mycket att tänka på och vi har full förståelse för att man kan missa något i rapporten. Därför gör vi vårt bästa för inte bara ge en siffra som bedömning, utan även konkreta kommentarer och förklaringar i de fall rapporten inte når upp till högsta betyg. Detta gör att resultatet i vissa fall kan dröja mer än de vanliga 3 veckorna som gäller för tentor, t.ex. om någon granskare blir sjuk. Alternativet skulle vara en betydligt mindre detaljerad återkoppling till er kursdeltagare!


Sidansvarig: Daniel de Leng
Senast uppdaterad: 2023-08-27