Hoppa direkt till innehållet

Information till studenter och medarbetare med anledning av covid-19 (Uppdaterad: 31 mars 2021)

printicon
Kursplan:

Effektiva algoritmer, 7,5 hp

Engelskt namn: Efficient algorithms

Denna kursplan gäller: 2018-07-23 och tillsvidare

Kurskod: 5DV182

Högskolepoäng: 7,5

Utbildningsnivå: Avancerad nivå

Huvudområden och successiv fördjupning: Datavetenskap: Avancerad nivå, har endast kurs/er på grundnivå som förkunskapskrav

Betygsskala: TH teknisk betygsskala

Ansvarig institution: Institutionen för datavetenskap

Beslutad av: Teknisk-naturvetenskapliga fakultetsnämnden, 2017-08-04

Reviderad av: Teknisk-naturvetenskapliga fakultetsnämnden, 2018-06-25

Innehåll

Kursen behandlar tekniker för att konstruera effektiva algoritmer och typiska datastrukturer som används i dessa. Speciell hänsyn tas till att effektivitet inte bara beror på algoritmens inneboende asymptotiska beteende utan också på de specifika probleminstanser den appliceras på. Standardalgoritmer och -datastrukturer behöver därför ofta väljas ut och anpassas för att lösa problemet så effektivt som möjligt.

Moment 1, Algoritmiska tekniker och datastrukturer, 3 högskolepoäng, behandlar effektiva algoritmiska tekniker (divide-and-conquer, greedy, dynamic programming) deras användningsområden och för- och nackdelar, illustrerar dessa med hjälp av centrala algoritmer, och diskuterar exempel på effektiva datatyper (t.ex. heaps, red-black trees, union-find) och deras implementation.

Moment 2, Problemlösning och algoritmanalys, 4,5 högskolepoäng,
utgörs av att studenten både teoretiskt och empiriskt undersöker varianter av en känd algoritm med avseende på effektivitet och skriver en rapport om detta. Hela kedjan från initiala, vanligen otydligt specificerade frågeställningar till den färdiga algoritmiska lösningen och dess teoretisk och empirisk analys ingår. Momentet tränar studentens förmåga att gå från en otydlig formulerad problemspecifikation till en exakt formulering, ta fram en lämplig algoritmisk lösning, om möjligt förbättra den genom att anpassa den till problemets säregenheter, samt analysera och diskutera dess effektivitet.

Förväntade studieresultat

Kunskap och förståelse
Efter avslutad kurs ska studenten kunna
  • förklara och analysera olika avancerade datastrukturer och redogöra för deras för- och nackdelar med avseende på effektivitet (FSR 1)
  • kritiskt redogöra för de viktigaste teknikerna för att skapa effektiva algoritmer. (FSR 2)
Färdighet och förmåga
Efter avslutad kurs ska studenten kunna
  • analysera en algoritm med avseende på effektivitet (FSR 3)
  • välja en lämplig algoritmisk teknik för att lösa ett konkret problem (FSR 4)
  • anpassa en algoritmisk teknik eller datastruktur till ett specifikt problem för att öka effektiviteten (FSR 5)
  • konkretisera ett informellt formulerat problem på ett sätt som gör det möjligt att behandla problemet algoritmiskt. (FSR 6)
  • beskriva ett problem och dess effektiva lösning i en skriftlig rapport på ett vetenskapligt sätt. (FSR 7)
Värderingar och förhållningssätt
Efter avslutad kurs ska studenten kunna
  • vetenskapligt värdera olika problemlösningars för- och nackdelar (FSR 8)
  • värdera praktiska resultat kritiskt och jämföra dem med teoretiska förväntningar. (FSR 9)

Behörighetskrav

Univ:För tillträde till kursen krävs 90 hp avklarade studier varav 60 hp i huvudområdet datavetenskap eller 2 års avklarade studier (120hp) inom ett studieprogram, i båda fallen inkluderande minst 7.5hp kurser som behandlar diskret matematik (tex 5MA143), minstt 7,5hp kurser som behandlar formella språk (tex. 5DV037 eller 5DV169 tillsammans med 5DV162)  samt minst 7.5hp datastrukturer och algoritmer (tex 5DV149, 5DV150 eller 5DV169) eller motsvarande. En avlagd kandidatexamen med datavetenskap som huvudämne anses vara motsvarande kunskaper.

Svenska för grundläggande behörighet för högskolestudier samt Engelska A/5. Krav på svenska gäller endast om utbildningen ges på svenska.

Undervisningens upplägg


Undervisningen består av tre olika element: Lärarledda lektioner, handledningsmöten där problemställningar och av studenterna föreslagna lösningar eller identifierade problem diskuteras, samt feedback på rapportutkast som lämnas in vid i förväg definierade tillfällen. Utöver schemalagda aktiviteter krävs även individuellt arbete med materialet. Det är studentens ansvar att i tid sätta sig in i materialet och förbereda eventuella frågor för att kunna få lämplig feedback.

Examination

Moment 1 examineras genom ett muntligt prov. På detta moment ges enbart betygen Underkänd (U) eller Godkänd (G).

Moment 2 examineras genom en skriftlig rapport studenten lämnar in på slutet av kursen.

På Moment 2 och på kursen i sin helhet ges något av betygen Underkänd (U), Godkänd (3), Icke utan beröm godkänd (4) eller Med beröm godkänd (5). För att bli godkänd på hela kursen krävs minst betyget Godkänd på samtliga obligatoriska delar. Betyget utgör en sammanfattande bedömning av resultaten och sätts först när alla obligatoriska moment är godkända.

För studerande som inte godkänns vid ordinarie provtillfälle anordnas ytterligare provtillfälle. Studerande som godkänts i ett prov får inte undergå förnyat prov för att få ett högre betyg. En student som utan godkänt resultat har genomgått två prov för en kurs eller en del av en kurs, har rätt att få en annan examinator utsedd, om inte särskilda skäl talar emot det (HF 6 kap. 22 §). Begäran om ny examinator ställs till prefekten för Institutionen för datavetenskap.

Examination baserad på denna kursplan garanteras under två år efter studentens förstagångsregistrering på kursen. Detta
gäller även om kursen lagts ned och denna kursplan upphört gälla.

TILLGODORÄKNANDE
Student har rätt att få prövat om tidigare utbildning eller motsvarande kunskaper och färdigheter förvärvade i yrkesverksamhet kan tillgodoräknas för motsvarande utbildning vid Umeå universitet. Ansökan om tillgodoräknande skickas in till  Studentcentrum/Examina. Mer information om tillgodoräknande finns på Umeå universitets studentwebb, www.student.umu.se, och i högskoleförordningen (6 kap). Ett avslag på ansökan om tillgodoräknande kan överklagas (Högskoleförordningen 12 kap) till Överklagandenämnden för högskolan. Detta gäller såväl om hela som delar av ansökan om tillgodoräknande avslås.

Övriga föreskrifter

I en examen får denna kurs ej ingå, helt eller delvis, samtidigt med en annan kurs med likartat innehåll. Vid tveksamheter bör den studerande rådfråga studievägledare vid Institutionen för datavetenskap och/eller programansvarig för sitt program. Speciellt gäller att denna kurs inte kan, helt eller delvis, användas i en examen tillsammans med kursen 5DV170 Effektiva algoritmer.

Kursens kopplingar till program och examina
Kursen är baskurs på masterprogrammet i Datavetenskap.
Kursen kan användas som en del i uppfyllandet av kravet på 45 poäng med inriktning mot datalogi (varav minst 37,5 högskolepoäng på avancerad nivå) som krävs för specialiseringen Datalogi inom ramen för en Teknologie masterexamen i datavetenskap.

Litteratur

Giltig från: 2018 vecka 25

Cormen Thomas H.
Introduction to algorithms
3. ed. : Cambridge, Mass. : MIT Press : cop 2009 : xix, 1292 s. :
ISBN: 9780262033848 (inb.)
Se bibliotekets söktjänst

Referenslitteratur

Sipser Michael
Introduction to the theory of computation
2. ed. : Boston, Mass. : Thomson Course Technology : 2006 : 437 s. :
ISBN: 0-619-21764-2 (int. ed.)
Se bibliotekets söktjänst