DM582: Avancerede algoritmer
Det Naturvidenskabelige Studienævn
Undervisningssprog: På dansk eller engelsk afhængigt af underviser, men engelsk ved internationale studerende
EKA: N330070102
Censur: Ekstern prøve
Bedømmelse: 7-trinsskala
Udbudssteder: Odense
Udbudsterminer: Forår
Niveau: Bachelor
STADS ID (UVA): N330070101
ECTS-point: 7.5
Godkendelsesdato: 21-10-2025
Varighed: 1 semester
Version: Arkiv
Intern kursuskode
Indgangskrav
Faglige forudsætninger
Studerende, der følger kurset, forventes at
- have kendskab til basale algoritmer og datastrukturer såvel som implementering af disse i et imperativt programmeringssprog, herunder stakke, køer, søgetræer og prioritetskøer, såvel som sorteringsmetoder og basale grafalgoritmer (eks. fra DM578),
- have kendskab til algoritmedesignteknikker og være i stand til at analysere algoritmer ved hjælp af asymptotisk analyse og sammenligne asymptotiske resultater (eks. fra DM578),
- være i stand til at anvende basal matematisk argumentation, herunder logiske udtryk, beviser ved induktion, modstridsargumenter og tælleteknikker (eks. fra DM549) og
- være i stand til at anvende basal diskret sandsynlighedsteori (eks. fra AI501).
Formål
Kurset har til formål at sætte den studerende i stand til at anvende randomisering og probabilistiske metoder i design og analyse af algoritmer og gøre den studerende fortrolig med avancerede algoritmiske emner som f.eks. strømning i netværk og strengsøgning, samt generelle teknikker til etablering af øvre og nedre grænser for algoritmers tidskompleksitet, herunder amortiseret analyse.
Målbeskrivelse
Læringsmålet for kurset er, at den studerende demonstrerer evnen til at:
- Anvende emner fra diskret sandsynlighedsteori til at estimere den forventede køretid for algoritmer
- Udvikle og analysere basale randomiserede algoritmer
- Anvende teknikker fra universel hashing til at vælge hashfunktioner med god forventet opførsel
- Formulere en strømningsmodel for problemer, der ligner dem fra kurset
- Vurdere hvilken strengsøgningsteknik, man skal anvende på et givent problem
- Anvende teknikker fra kurset til at vurdere den amortiserede tidskompleksitet af operationer på en datastruktur
- Etablere nedre grænser for tidskompleksiteten af algoritmiske problemer
Indhold
Kurset indeholder følgende hovedområder:
- Randomiserede algoritmer
- Probabilistiske analyser af algoritmer
- Den probabilistiske metode
- Universel og perfekt hashing
- Strømning i netværk
- Strengsøgning
- Amortiseret analyse
- Nedre grænser
Litteratur
Eksamensbestemmelser
Eksamenselement a)
Tidsmæssig placering
Forår og juni
Udprøvninger
Portfolio med mundtlig forsvar
EKA
N330070102
Censur
Ekstern prøve
Bedømmelse
7-trinsskala
Identifikation
Fulde navn og SDU brugernavn
Sprog
Følger, som udgangspunkt, undervisningssprog
Varighed
Mundtlig prøve, 25 minutter
Hjælpemidler
Alle almindelige hjælpemidler tilladt
Ved mundtlig prøve: Ingen hjælpemidler tilladt
ECTS-point
7.5
Uddybende information
Portfolio eksamen består af to elementer:
1.Multiple-choice test undervejs i kurset
2.Mundtlig prøve
Bedømmelsen af element 1 finder sted i forbindelse med afviklingen af element 2. Karakteren gives med udgangspunkt i element 2, men hvor element 1 kan trække karakteren op eller ned med et karaktertrin.
Reeksamen: mundtlig prøve (præcis som element 2 i den ordinære).
Vejledende antal undervisningstimer
Undervisningsform
Skemalagte undervisningstimer:
Antal undervisningstimer i alt: 70
Heraf:
Fællestimer i klasselokale/auditorium: 40
Holdtimer i klasselokale: 30
Strukturelt afvikles skematimerne med gennemgang af nyt stof cirka halvdelen af gangene og nærmere diskussion af egenskaber og varianter omkring stoffet i den anden halvdel. I den første del benyttes en modificeret udgave af klassisk forelæsning, hvor fagets grundbegreber og metoder præsenteres, med såvel teori som eksempler baseret på konkrete data. I disse timer er der mulighed for spørgsmål og diskussion. I den anden halvdel arbejdes der med opgaver og diskussionsemner, som relaterer sig til indholdet i de forudgående forelæsninger. I disse timer er der mulighed for at arbejde specifikt med særligt vanskelige emner. Også i denne forbindelse er der mulighed for at bringe spørgsmål op.
Andre planlagte undervisningsaktiviteter:Løse opgaver, læse den tildelte litteratur, øve anvendelse af tilegnet viden.
Ansvarlig underviser
Skemaoplysninger
Administrationsenhed
Team hos Registratur
Udbudssteder
Anbefalede studieforløb
Overgangsordninger
Overgangsordninger beskriver, hvordan et kursus erstatter et andet kursus, når der ændres i et studieforløb.
Hvis der er lavet en overgangsordning for et kursus vil den fremgå af oversigten.
Se overgangsordninger for alle kurser på Det Naturvidenskabelige Fakultet.
Se overgangsordninger for alle kurser på Det Naturvidenskabelige Fakultet.