Nada

Kursanalys för 2D1352 Algoritmer (datastrukturer) och komplexitet, våren 2005

Kursvarianter

Kursomgången är en samläsning mellan två kurser: Kurserna är identiska till innehållet och examinationen så när som på labbkursen och betygen. Labbkursen för KTH-kursen är 2 poäng och består av tre labbar. Labbkursen för SU-kursen är 1 poäng och består av två labbar. På KTH-kursen används betygskalan 3-5 och på SU-kursen G och VG, där gränsen för VG ligger mitt emellan 4 och 5.

Kursdata

Tid: period 3-period 4 läsåret 2004/2005 dvs januari-maj 2005
Poängantal KTH: 6 (varav 2 på labb, 1 på mästarprov, 3 på tenta)
Poängantal SU: 5 (varav 1 på labb, 1 på mästarprov, 3 på tenta)
Tenta: ordinarietenta efter period, omtenta i augusti
Föreläsningar: 44 timmar.
Övningar: 24 timmar.
Kursledare och föreläsare: Viggo Kann
Övningsassistenter: Jakob Nordström, Gustav Hast, Martin Rehn, Fredrik Niemelä (alla doktorander i datalogi).
Antal aktiva (gjort någon labb) elever, KTH: 150 varav 141 från D (1 D-94, 6 D-00, 11 D-01, 18 D-02, 92 D-03, 13 D04) samt 2 från E, 3 från F, 1 från T, 1 från IT, 1 doktorand och 1 fristående kurs.
Antal aktiva (gjort någon labb eller tenta) elever, SU: 11
Prestationsgrad KTH: 68% (72% efter omtentan 2005-08-29)
Examinationsgrad KTH: 57% (86 godkända av 150 aktiva) (64% efter omtentan 2005-08-29)
Prestationsgrad SU: 56%
Examinationsgrad SU: 36%, (4 godkända av 11 aktiva) (45% efter omtentan 2005-08-29)

STATISTIK efter ordinarietentan

TENTASTATISTIK (KTH)
 20 x U (18%)  43 x 3 (39%)   28 x 4 (26%)  18 x 5 (17%)
 Totalt 89 godkända av 109 tentander (73% var uppe)
(ytterligare 9 godkända vid omtentan 2005-08-29)

TENTASTATISTIK (SU)
 2 x U (29%)  4 x G (57%)   1 x VG (14%)
 Totalt 5 godkända av 7 tentander (64% var uppe)
(ytterligare en godkänd vid omtentan 2005-08-29)

LABBSTATISTIK (KTH)
  Labb nr 1: 140 (93%), 2: 143 (95%), 3: 124 (83%)
  Hela labbkursen: 119 st (79%)

LABBSTATISTIK (SU)
  Labb nr 1: 10 (91%), 2: 9 (82%)
  Hela labbkursen: 8 st (73%)

MÄSTARPROV (KTH)
Prov  Antal inl  Antal tot   % inl     Medelp (inl)
 1      124        150       83        4.3
 2      123        150       82        4.8
Betyg på mästarprovsmomentet:
 57 x 3 (53%)   28 x 4 (26%)  23 x 5 (21%)
 Totalt 108 godkända av 150 (72%)
(ytterligare 8 godkända vid omtentan 2005-08-29)

MÄSTARPROV (SU)
Prov  Antal inl  Antal tot   % inl     Medelp (inl)
 1        8         11       73        2.9
 2        6         11       55        5.0
Betyg på mästarprovsmomentet:
 2 x 3 (40%)   0 x 4 (0%)  3 x 5 (60%)
 Totalt 5 godkända av 11 (45%)

SLUTBETYG (KTH)
 1 x G (1%)  34 x 3 (40%)   36 x 4 (42%)  15 x 5 (17%)
 

Mål

Kursens mål är att för att eleverna ska

Förändringar inför denna kursomgång

Mästarprovsmomentet har fått graderade betyg (3,4,5). Varje mästarprov bestod av två alternativa uppgifter och varje elev fick lämna in lösning på en av dessa. Båda uppgifterna gav 6 poäng, men den lättare uppgiften gav betyg 3 medan den svårare gav betyg 5. Betyget på mästarprovsmomentet blir medelbetyget av dom inlämnade mästarprovens betyg.

Slutbetyget på kursen blir medelvärdet av betygen på mästarprovsmomentet och tentan, men tentabetyget väger tyngst.

Övningsgrupperna nivågraderades.

Sammanfattning

Prestationsgrad och examinationsgrad var något lägre än föregående år, men poängen på mästarproven var något högre i år. Genomförandet av mästarprovet gick bättre än förra året med mindre klagomål på orättvis bedömning och på fusk. Försöket med svårighetsgraderade mästarprov var därför lyckat och jag kommer att fortsätta med det.

Största problemet är att ganska många elever inte fullföljer kursen. Omkring 160 elever påbörjade kursen, omkring 150 gjorde labb 1 och 2, 124 gjorde labb 3, omkring 130 gjorde mästarproven, men bara 116 gick upp på ordinarietentan.

En tanke är att införa flera elevaktiverande moment under föreläsningarna.

Faktiskt innehåll i kursen

Kursens faktiska innehåll finns beskrivet. Omfattande dokumentation av kursen finns också tillgänglig på kursomgångens webbsida.

Elevernas synpunkter

Två studeranderepresentanter på D gjorde en liten mittkursenkät och 45 svar lämnades. Resultaten sammanställdes tyvärr aldrig formellt, men vid ett utvärderingsmöte med studeranderepresentanterna fick jag ändå veta att "de flesta verkar tycka att kursen i stort är OK".

Jag gjorde en kursutvärdering på webben efter undervisningens slut och mästarprovens redovisningar men före tentan. Den besvarades av 70 elever, varav 6 SU-studenter, 61 D-teknologer och 3 andra, vilket är 43% av kursdeltagarna, lite lägre än förra året.

Här följer en sammanfattning av enkätsvaren.

Kursinnehåll

Kursen ansågs vara ganska svår (40%) eller mycket svår (9%) av hälften, medan hälften tyckte den var medelsvår (44%) eller lätt (6%). År 2004 var det 21% som ansåg kursen vara mycket svår.

74% fick i början av kursen klart för sig vad kursens mål var, 17% var tveksamma och 9% svarade nej. Det är lite färre som missat kursens mål än förra året, men målen kan göras ändå tydligare. Jag har skrivit en ny och tydligare målformulering som ska tas med i studiehandboken nästa år.

93% tyckte kursen var intressant (jämfört med 72% år 2004).

Kurslitteratur

17% tyckte kursboken var bra eller mycket bra och 23% att den var mindre bra eller dålig. 37% använde den inte. Många har valt att plugga enbart med föreläsningsanteckningarna. Det är svårt att hitta en bok som håller lagom nivå. Nästa år ska en ny bok provas, troligen Algorithm Design av Kleinberg och Tardos.

Föreläsningsanteckningarna (138 sidor), med kopior på alla stordiabilder som visades samt alla övningsuppgifter med lösningar, ansågs vara mycket bra (27%) eller bra (47%) av dom flesta. Veckans föreläsningsanteckningar delades ut i början av första föreläsningen varje vecka och fanns sedan tillgängliga inskannade på webben.

Kommentarerna visar att olika personer har olika förväntningar på föreläsningsanteckningar och använder dom på olika sätt. Jag har inte tänkt att föreläsningsanteckningarna ska vara självförklarande och ersätta kursboken.

Undervisningen

Kursen är upplagd så att den som vill läsa in den själv ska kunna göra det. Trots detta gick 46% på i stort sett alla föreläsningarna. 13% gick nästan inte på några föreläsningar. Pedagogiskt sett ansågs föreläsningarna mycket bra eller bra av 71% medan 8% ansåg dom vara mindre bra eller dåliga. Detta är högre betyg är förra året. I år har jag valt att göra mer på tavlan och inte visa alla stordiabilder som ingår i föreläsningsanteckningarna. Det ger mer omväxlande föreläsningar, men tempot minskar något.
58% av eleverna gick på minst 60% av övningarna. Gustav Hast hade flest elever. 57% tyckte att övningarna pedagogiskt sett var mycket bra eller bra, vilket är något lägre än förra året. Alla assistenter får bra kritik av dom flesta. Omdömena varierar förstås, men eftersom det är fritt val så verkar nästan alla få en assistent dom är nöjda med.

Examinationsformen

Examinationsformen med till hälften tenta och till hälften labbar och mästarprov ansågs mycket bra (54%) eller bra (31%).

Labbarna

Det märks stor skillnad i programmeringsfärdighet. Den som är flink och förstår det algoritmiska klarar av labbarna mycket snabbt för det är inte så mycket kod som behöver skrivas. Den som har svårt med algoritmerna eller är ovan vid programmering har det ganska jobbigt. För vissa blir labb 2 och 3 för enkla, men det är min bestämda uppfattning att labbarna tränar på viktiga saker som de flesta behöver träna (mer) på.

Just i ADK tycker jag att det är rimligt att kräva att programmen går riktigt effektivt. För enkelhets skull (och för att uppmuntra den hugade att lära sej C ordentligt) är tidsgränserna samma för alla programspråk. I år var labb 1 mindre givande än tidigare på grund av att en ny version av Javakompilatorns standardbibliotek var mer ineffektiv än den gamla, varför vissa elever la ner tid på dumoptimering istället för på algoritmisk optimering för att klara tidskraven. Dessutom skulle labben kunna ge ännu bättre förståelse för reduktionsbegreppet genom en minimal ändring. Av dessa två anledningar kommer labb 1 att göras om till nästa år.

Det har varit tillräckligt med handledare under nästan alla hjälppass, men under redovisningspassen har redovisningarna gått före hjälpen. Den som börjar jobba med labben i tid ska inte behöva få hjälp vid redovisningspassen. Jag ska nästa år redan i början på kursen tala om att redovisningspassen inte är till för hjälp och att det är viktigt att börja med labben i god tid.

Labbarna ska göras i tvåmannagrupper i kursen. Lärarresurserna räcker inte till enpersonsgrupper. Den som inte lär sej programmera tillräckligt bra i grupp borde kunna ta eget ansvar och öva mera själv.

Mästarproven

Lärarens feedback vid muntliga redovisningarna av mästarproven ansågs av 78% vara mycket bra eller bra (49% förra året). 6% ansåg att den var mindre bra eller dålig (17% förra året). En markant svängning till det bättre, förmodligen på grund av svårighetsgraderingen.

Att kunna motivera att ens lösning är korrekt ingår i uppgiften. Därför vore det pedagogiskt dåligt att tillåta att någon som felaktigt tror sej ha lyckats med femmauppgiften får redovisa treuppgiften istället. Det vore också dyrt och svårt att genomföra praktiskt.

Från och med nästa år avrundas slutbetyget nedåt, så då krävs för betyg 5 i slutbetyg betyg 5 både på mästarprovet och tentan.

Glädje av kursinnehållet

87% tror sig ha nytta av hela eller en hel del av kursinnehållet i framtiden (54% förra året). 1% tror sig inte ha nytta av mer än någon enstaka del av kursen (17% förra året). Detta är mycket glädjande!

Förslag till förbättringar och allmänna kommentarer

Den som har mycket svårt med programmering bör lära sej det före ADK-kursen. Labbhandledarna ska inte hjälpa till med en massa programmeringstekniska problem i denna kurs. Förhoppningsvis har den nya varianten av Indakursen gjort att programmeringskunskaperna är bättre nästa år.

Anpassning till andra kurser

Kursen samordnades med Diskret matematik för D2 i period 3. Samordningen fungerade bättre än förra året. Nästa år kommer mattekursen att gå över två perioder, och därför måste grafalgoritmavsnittet och matchningslabben senareläggas. Istället får datastruktursavsnittet inleda kursen och datastrukturslabben får bli ny första labb.

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

^ Upp till kursomgången våren 2005.


Sidansvarig: <viggo@nada.kth.se>
Senast ändrad 14 september 2005
Tekniskt stöd: <webmaster@nada.kth.se>