Kursanalys för DD1352 Algoritmer (datastrukturer) och komplexitet, våren 2010KursvarianterKursomgången var en samläsning mellan två kurser:
Kursdata per 7 juni 2010Tid: period 3-period 4 läsåret 2009/2010 dvs januari-maj 2010Högskolepoängantal KTH: 9 (varav 3 på labb, 3 på mästarprov, 3 på tenta) Poängantal SU: 7,5 (varav 1,5 på labb, 3 på mästarprov, 3 på tenta) Tenta: ordinarietenta efter period 4, omtenta i augusti Föreläsningar: 34 timmar. Övningar: 24 timmar. Kursledare och föreläsare: Viggo Kann Övningsassistenter: Torbjörn Granlund (doktorand i datalogi), Marcus Dicander och Jonas Sundberg (D-teknologer). Antal registrerade elever, KTH: 139 varav 136 från D, 2 från CL, 1 från Media. Antal registrerade elever, SU: 10. Prestationsgrad förstagångsregistrerade KTH: 72% (jfr 75% år 2009) Prestationsgrad totalt KTH: 86% (85% år 2009) Examinationsgrad förstagångsregistrerade KTH: 53% (74 stycken; jfr 60% år 2009) Prestationsgrad SU: 82% Examinationsgrad SU: 70% (7 godkända av 10 aktiva)
STATISTIK efter ordinarietentan (inklusive äldre elever) LABBSTATISTIK Labb nr 1: 148, 2: 133, 3: 136, 4: 141 Hela labbkursen: 119 st (jfr 111 st år 2009) MÄSTARPROV, TEORITENTA OCH MUNTA Prov Antal inl Betygsfördelning Medelbetyg mas1 155 17 x F 75 x E 12 x D 43 x C 2 x B 6 x A 1,9 mas2 144 17 x F 79 x E 7 x D 19 x C 2 x B 20 x A 2,0 tenta 150 30 x F 53 x E 40 x D 27 x C - - 1,6 x-labb4 30 - - - - 4 x B 26 x A 4,9 munta 21 - - - 4 x C 6 x B 9 x A 3,9 22 anmälde sig till muntan. 19 klarade den (varav två med lägre betyg), två missade, en dök inte upp. SLUTBETYG 59 x E 6 x D 11 x C 7 x B 14 x A medelbetyg: 2,1 (jfr 2,8 år 2009 och 2,2 år 2008) LärandemålEfter kursen ska studenten kunna
Förändringar inför denna kursomgångTre av fyra förändringar som planerades i föregående års kursanalys genomfördes:
SammanfattningKursen fungerar bra rent praktiskt, men det höga antalet elever som bara får betyg E liksom flera kommentarer på kursenkäten visar att en betydande del av D-teknologerna inte är mogna att tillgodogöra sig kursen väl. Kursen kommer därför att flytta från våren i årskurs 2 till hösten i årskurs 3 på D. Även kursen Diskret matematik gör samma flytt. Därmed ligger ADK efter Matematisk statistik och Databasteknik, varför det finns skäl att tro att mognaden och motivationen hos D-teknologerna kommer att vara större nästa gång kursen går. I och med detta kommer det också att vara möjligt att gå in mer på probabilistisk algoritmanalys och probabilistiska algoritmer.Faktiskt innehåll i kursenKursen följde det planerade innehållet.Elevernas synpunkterJag la upp en kursutvärdering på webben efter teoritentan men före muntan. Den besvarades av 65 elever, varav fyra SU-studenter, 60 D-teknologer och en annan, vilket är ungefär hälften av antalet registrerade kursdeltagare.Här följer en sammanfattning av enkätsvaren med mina kommentarer. KursinnehållKursen ansågs vara ganska svår (55%) eller mycket svår (11%) av lite mer än hälften, medan 3% tyckte den var lätt och resten medelsvår. Det är samma andel som förra året som ansåg att kursen var svår.6% tyckte inte att dom i början av kursen fick klart för sig vad kursens mål var, jämfört med 8% förra året. 80% tyckte kursen var intressant (jämfört med 88% 2009, 81% 2008 och 91% 2007). KurslitteraturIndakursens kursböcker förra året kunde användas som ADK-kursböcker, varför dom flesta inte behövde skaffa någon ny bok. 60% har använt kursboken. En fjärdedel tyckte att boken är mindre bra eller dålig. Kommentarerna är motsägelsefulla - vissa skriver att boken är enkel att läsa och förstå och andra att den är torr och tråkig. Flera kommenterar att man kan klara sig långt med anteckningarna och Wikipedia.Föreläsningsanteckningarna på webben (cirka 140 sidor), med alla stordiabilder som visades samt alla övningsuppgifter med lösningar, ansågs vara mycket bra eller bra av 45%, jämfört med 74% förra året. Anteckningarna var i stort sett samma - enda väsentliga skillnaden var att dom fanns på papper i kursbunten förra året.
Jag gillar handskrivna anteckningar. En lista över kursens algoritmer och problem med komplexiteter finns på kurswebbsidan. Det tycks som om kritiken mot anteckningarna till största delen är ett informationsproblem: vissa elever har inte förstått hur föreläsningsanteckningarna är tänkta att användas. Nästa år ska jag vid kursstart erbjuda alla föreläsningsanteckningar och övningsanteckingar på papper för självkostnadspris. UndervisningenKursen är upplagd så att den som vill läsa in den själv ska kunna göra det. Trots detta gick nästan hälften på i stort sett alla föreläsningarna. 14% gick nästan inte på några föreläsningar. Pedagogiskt sett ansågs föreläsningarna mycket bra eller bra av 59% (52% förra året och 60% för två år sen) medan 23% ansåg dom vara mindre bra eller dåliga (10% förra året).65% föredrar entimmesföreläsningar i kursen och 18% föredrar tvåtimmesföreläsningar.
Jag tycker att entimmesföreläsningar är mycket mer stimulerande än tvåtimmesföreläsningar och jag ser betydligt färre sovande elever i föreläsningssalen. Största problemet är som vanligt spridningen i nivå, förkunskaper och behov hos eleverna som gör det omöjligt att tillfredsställa alla. Med entimmesföreläsningarna har jag kunnat ställa högre krav på att eleverna förberett sig till föreläsningarna. Det tycks vara dom som inte förberett sig som tycker föreläsningarna är för svåra. 67% av eleverna gick på minst 60% av övningarna, mot 55% förra året. Grupperna var någorlunda jämnstora. 64% tyckte att övningarna pedagogiskt sett var mycket bra eller bra, en liten minskning mot förra året, men å andra sidan var det flera som gick på övningarna.
ExaminationsformenExaminationsformen med en tredjedel av vardera labbar, mästarprov och tenta ansågs mycket bra eller bra av nästan alla (81%). Majoriteten tyckte att betygsättning med betygskriterier var bra och att det var bra att det fanns flera sätt att redovisa att man uppnått lärandemålens betygskriterier.I stort sett alla (89%) tyckte att kamraträttning av teoritentan var bra eller åtminstone acceptabelt.
Jag har efter noga övervägande valt att ha icke-kompensatorisk betygsättning i kursen, alltså att inte ge slutbetyg efter snittet utan efter det lägsta delmomentbetyget. Jag förstår att flera har uppfattat det som dåligt, och därför har jag undersökt hur många elever som har fått ett flera steg lägre betyg på grund av att ett av delmomenten är lägre än övriga. Detta har bara skett i 7 fall. I två fall har ett betyg dragit ner från A till C, i fyra fall har ett betyg dragit ner från C till E. I ett enda fall har slutbetyget dragits ner mer än två steg. Alla fall där ett delbetyg drar ner slutbetyget två snäpp eller mer uppfyller automatiskt villkoret som krävs för att en elev ska få gå upp på muntan. Det finns därför i alla såna fall en extra chans att höja det låga delbetyget. Många har också gjort det. Det tycks alltså som att betygsättningen har sporrat elever att göra bra ifrån sig i alla delar av kursen. Dessutom ger ett icke-kompensatoriskt betyg en garanti för elevens (minimi)kunskaper inom alla betygsatta moment. Jag utformade tentan för att den till allra största delen skulle testa de viktigaste teoridelarna av kursen. Bara en delfråga (värd 2 poäng) testade kunskap om en specifik datastruktur (Bloomfilter och hashning). Jag håller alltså inte med om att tentan testade detaljkunskaper. KomplexitetslabbenDen nya labb 4 infördes för att ge bättre förståelse för NP-reduktioner. Mer än fyra av fem elever ansåg att labben också gjorde det. Bara 3% ansåg att labben var för arbetskrävande. Komplexitetslabbens inverkan har studerats i ett nyligen presenterat konferensbidrag av doktoranden Emma Enström.KattisDet automatiska programtestningssystemet Kattis används för fjärde året i kursen. Kattis fick helhetsbetyget mycket bra eller bra av 83% (mot 71% förra året och 65% året innan). Endast 6% ansåg systemet vara mindre bra eller dåligt. Trenden är att eleverna uppskattar Kattis allt mer.
Feedback på mästarprovenDe flesta tyckte att lärarens feedback vid muntliga redovisningarna av mästarproven var mycket bra eller bra. Bara 11% (mot 16% förra året) ansåg att feedbacken var mindre bra eller dålig.
På övningen närmast efter varje mästarprov gås mästarprovet igenom och den som har frågor om det kan fråga assistenten då. Problemet i ommästarprov 2 var ett optimeringsproblem som först skulle skrivas om till ett beslutsproblem. Detta är en standardtransformation som är en viktig del av kursen och som alla som blir godkända på kursen ska behärska. Jag ska införa extra övningsuppgifter specifikt om detta. Särbehandling och genusBara en ansåg sig ha blivit utsatt för särbehandling, och den personen gav kommentaren: algoritmerna fucked min hjärna ibland (dvs psykologiisk sexualitet). Dom flesta hade inte funderat över kursens genusperspektiv eller tyckte ens att det var något som hade med kursen att göra. En positiv kommentar var: Det är trevligt med en kurs i programmering där man inte behandlas speciellt bara för att man är tjej, utan folk ses som människor i större utsträckning. Tummen upp!Glädje av kursinnehållet67% tror sig ha nytta av hela eller en hel del av kursinnehållet i framtiden. En enda person tror sig inte ha nytta av kursen alls. Detta visar att kursen är och uppfattas som central för utbildningen, vilket är glädjande.Förslag till förbättringar och allmänna kommentarerIntressant kurs och ett upplägg som ställer krav på eleverna. Bra allt som allt!väldigt svår kurs. men att den är intressant och rolig väger upp. En riktig kvalitetskurs. Förmodligen den bästa jag läst på KTH hittills. Vi är flera som går SU-varianten av kursen som tycker att vår särbehandling minskar våra chanser att få höga betyg på kursen, jämfört med KTH:arna. Vi resonerar så här: Vi får bara 7,5 hp för kursen. De moment vi "slipper" måste kth:arna göra, men om vi vill ha extra bonus måste vi också göra dessa moment. Följaktligen får vi antingen svårare än de andra att få högre betyg eller så måste vi göra lika mycket arbete som de andra - men får fortfarande mindre antal poäng. Observera att vi antagligen har mer att göra utanför adk:kursen än de som får mer poäng för kursen, eftersom att vi också läser på heltid! Kanske skulle ha någon labb där man får prova på att lösa problem med dekomposition och dynamisk programmering i praktiken, går just nu bara igenom det teoretiskt. Dynamisk programmering brukar vara svårt att lära sig. Det finns flera uppgifter i Kattis som tränar dynamisk programmering, så till nästa gång föreslår jag några såna uppgifter. SU kommer inte att läsa kursen tillsammans med ADK nästa gång utan istället tillsammans med Algoritmer och komplexitet för F med flera. Den kursen är utan labbkurs, så problemet med bonuspoäng kommer att finnas kvar men vara till SU-studenternas fördel i framtiden. Anpassning till andra kurserKursen samordnades med Diskret matematik för D2 som lästes parallellt. Det har fungerat bra. Tidpunkter för inlämningar och redovisningar har samordnats med alla övriga kurser som D2 läser på våren.Fortsättningskurserna (Avancerade algoritmer, Kryptografins grunder, Seminariekurs i teoretisk datalogi, Algoritmisk bioinformatik, Komplexitetsteori och Problemlösning och programmering under press) är planerade att passa ihop med ADK. Planerade förändringar
|