(Notera: På fredagen har några grupper blivit placerade i en annan sal än den som står i KTH-schemat.)
Projektinformation
Under period 2, HT2022, ska ni arbeta med ett slutprojekt i kursen. Projektet avslutas med en muntlig presentation med posters på övningstimmarna 15-16 december.
Målet med projektet är att ni ska få tillämpa den linjära algebra som ni lärt er under höstterminen för att lösa ett mer sammansatt problem med datorn som hjälp. Beräkningar som behövs i projektet gör ni i Python med biblioteken numpy, scipy och matplotlib. (Dessa kommer introduceras på föreläsningen 14/11. Se även länkar till Python-resurser nedan.) Upplägget är som följer:
- Det finns 6 projektområden att välja mellan.
- Ni arbetar i grupper om 4-5 studenter.
- Max 10 grupper kan välja samma projektområde.
- Ni väljer projekt genom att gå med i en av de Canvas-grupper som skapats för de olika projektområdena. De har namn som "SF1672 - Projekt <projektområde> <nr>". Ni hittar dem under menyval "Personer". Ni som arbetar ihop ska vara med i samma grupp.
- Tidsschema med hålltider för arbetet hittar ni längst ner på denna sida. Första deadline är 17/11 då ni ska ha valt projektområde och gått med i Canvas-grupperna.
Lärare
Ansvariga lärare på projektdelen är
- Olof Runborg, olofr@kth.se
- Kursens övningsassistenter handleder (se namn/email under respektive projektområde nedan)
Projektområden
Ni väljer ett område från listan nedan och hittar på en egen problemställning/tillämpning inom området. Var kreativa! Försök också hitta ett problem där datorn verkligen behövs som hjälpmedel. Problemet får tex gärna inbegripa stora matriser, många obekanta och/eller många matrismultiplikationer. Tänk på att det med datorn inte är (mycket) svårare att multiplicera och invertera 1000x1000-matriser än 3x3-matriser!
Första uppgiften är sedan att skriva en projektsammanfattning (på ca 1-2 sidor) som ska innehålla en kort översikt av den bakomliggande teorin samt en idé om vilka frågeställningar/tillämpningar ni fokuserar på. Sammanfattningen skickas in som en PDF-fil under "Uppgifter" i Canvas (en sammanfattning per grupp). Deadline är 22/11. OBS! Skriv namn och mailadress till alla deltagare i gruppen på sammanfattningen.
Projektområdena är hämtade från kapitel 10 i boken Elementary Linear Algebra av Anton and Rorres. I listan nedan hittar ni för varje område en PDF med bakgrundstext och några exempel på konkreta problem inom området. Ni kan ha dessa om inspiration/utgångspunkt när ni hittar på egna problem. I listan finns också information om vem som handleder projektområdet.
- Markovkedjor.
- Bakgrundstext (sektion 10.5) Download Bakgrundstext (sektion 10.5)
- Exempel:
- Generera text/ord/musik med hjälp av Markovkedjor genom att först, givet ett/en ord/bokstav/ton, bestämma sannolikheten för nästa ord/bokstav/ton från verklig data.
- Modellera framtida migrationen inom USA med hjälp av data om hur folk flyttat mellan olika counties tidigare.
- Hur påverkar olika strategier i "Sten, Sax, Påse" chansen att vinna? (Antag tex att sannolikheten för olika drag beror på vad som hände i förra omgången.)
- Handledare: Kirthana Rajasekar <rajasek@kth.se>
- Grafteori.
- Bakgrundstext (sektion 10.6) Download Bakgrundstext (sektion 10.6)
- Exempel:
- På hur många sätt kan man åka tåg mellan Kiruna och Malmö? Vad är det minsta antalet stationer man passerar? (Utgå från Trafikverkets karta över järnvägsnätet.)
- Bestäm den optimala kursnämnden från kursens sociala graf.
- Hitta "klickar" bland länder, baserat på röstningen i Melodifestivalen.
- Handledare: Tilda Jansson <tildaja@kth.se>
- Temperaturberäkningar.
- Bakgrundstext (sektion 10.11) Download Bakgrundstext (sektion 10.11)
- Tillägg till bakgrundstexten Download Tillägg till bakgrundstexten
- Exempel:
- Hur långt handtag behövs på stekpannan för att man inte ska bränna sig?
- Var ska man placera elementen i lägenheten för att få varmt överallt?
- Handledare: Orgil Jargalsaikhan <orgil@kth.se>
- Datortomografi.
- Bakgrundstext (sektion 10.12) Download Bakgrundstext (sektion 10.12)
- Exempel:
- Avbilda kroppens inre för att hitta tex tumörer.
- Hitta sprickor i material som tex betong.
- Åldersbestämning av träd från CT-scanning
- Avslöja skuggfigurer.
- Handledare: Valdemar Nordström <valnor@kth.se>
- Splines.
- Bakgrundstext (sektion 10.4) Download Bakgrundstext (sektion 10.4)
- Exempel:
- Hur ser "connect-the-dots"-bilder ut om man använder splines istället för raka streck?
- Designa en egen font med hjälp av splines.
- Handledare: Elliot Backman <elliotba@kth.se>
- Linjärprogrammering.
- Bakgrundstext (sektion 10.2) Download Bakgrundstext (sektion 10.2)
- Tillägg till bakgrundstexten Download Tillägg till bakgrundstexten
- Exempel:
- Hitta den billigaste studentkosten som uppfyller alla krav på näringsinnehåll.
- Bestäm optimala investeringsstrategin med begränsade resurser.
- Minimera transportkostnaderna mellan fabriker och affärer, samtidigt som du möter tillgång och efterfrågan.
- Handledare: Olof Runborg <olofr@kth.se>
Handledning av projektet
Ni arbetar i princip självständigt med projekten och i den mån det är möjligt ska ni lösa problem som uppkommer på egen hand. Det finns dock tre tider för handledning om ni behöver input eller hjälp:
- 18/11, kl 15-17 i salarna Bilbo, Frodo och Vit,
- 28/11, kl 15-17, i salarna Grå, Karmosin, Vit och Magenta
- 5/12, kl 8-10, i salarna Grå, Karmosin, Vit och Magenta
Dessa är markerade som labtider i schemat. OBS! Tiderna är samma för alla programmen (CTMAT, CTFYS, CLGYM). Under handledningstillfällena använder vi kösystemet Stay a While (kö SF1672).
Redovisning
Projektet redovisas muntligt med en poster på övningstimmarna 15-16 december. Schemat för redovisningarna finns här:
Postern
Ni får själva välja layout på postern men följande delar ska finnas med:
- Bakgrund om problemområdet/teorin
- Beskrivning av er valda problemställning
- Lösningsmetod
- Resultat
- Sammanfattning/källor
Använd en matematisk beskrivning (ekvationer, formler, …) snarare än ord för att precisera komplicerade samband och metoder. Var noga med att definiera alla variabler och begrepp som är med. Inför inte mer notation än ni behöver. Utnyttja gärna enkla exempel, bilder och skisser för att förklara problem, teori och lösningsmetoder. Fokusera på det viktiga.
Ett förslag på layout i Powerpoint finns i den här mallen: Poster2022.pptx Download Poster2022.pptx
Postern kommer att tryckas i A1-format. Gör layouten luftig och texten lättläst.
OBS! Er poster ska laddas upp som en PDF-fil i Canvas senast den 12/12. Den kommer sedan tryckas och finnas i övningssalen när ni kommer dit. (Ni behöver alltså inte själva producera den fysiska postern.)
Tidsschema
- 14/11: Föreläsning, introduktion av projektet och numeriska Python-bibliotek.
- 17/11: Deadline för val av projektområde och att gå med i motsvarande Canvas-grupp.
- 18/11 (Labtillfälle 1): Här bör ni ha funderat igenom vilken problemställning ni vill arbeta med och börjat skriva på projektsammanfattningen. Handledare finns på plats för att svara på frågor och diskutera lämpliga problemval.
- 22/11: Deadline för en projektsammanfattning. Sammanfattningen ska göras på en till två A4-sidor och ska innehålla en översikt av den bakomliggande teorin samt en idé om vilka frågeställningar/tillämpningar ni fokuserar på. Skriv namn och mailadress till alla deltagare i gruppen på sammanfattningen. Sammanfattningen skickas in via Canvas.
- 28/11 (Labtillfälle 2): Här bör ni vara igång med ert arbete och komma väl förberedda med konkreta frågor (om ni har några).
- 5/12 (Labtillfälle 3): Nu bör ni börja bli klara med allt material och ett första utkast till poster ska visas upp för er handledare.
- 12/12: Deadline för inlämning av poster. Den skickas in elektronisk i form av en PDF-fil via Canvas.
- 15/12 och 16/12: Redovisning av projektet.
Pythonresurser
Material och resurser om numpy finns på hemsidan numpy.orgLänkar till en extern sida.. Av speciellt intresse är
- Hur man skapar arrayer
Länkar till en extern sida. (allmänt) och speciella array-rutiner
Länkar till en extern sida.
- Hur man manipulerar arrayer
Länkar till en extern sida.
- Linjär algebra-rutiner för arrayer
Länkar till en extern sida.
- Referensemanualen för NumPys API
Länkar till en extern sida.
På numpy.orgLänkar till en extern sida. finns också tutorials om numpy, se tex
- NumPy: the absolute basics for beginners
Länkar till en extern sida.
- Learn-sidan med många andra tutorials
Länkar till en extern sida.
För matplotlib finns hemsidan matplotlib.org Länkar till en extern sida.med bland annat följande länkar:
- Pyplot tutorial
Länkar till en extern sida.(innehåller det nödvändigaste)
- Många andra tutorials
Länkar till en extern sida.
- Pyplot referensmanual