Kursusbeskrivelse for
Algoritmedesign
med internetanvendelser
ved
Keld Helsgaun
1. FormålKursets formål er at supplere den studerendes kendskab til analyse og design af
algoritmer.
2. Indhold
Kurset er et avanceret kursus i algoritmedesign. Anvendelser indenfor områderne internetalgoritmik og algoritmisk geometri vil blive behandlet.
Emner:
- Algoritmeanalyse
Asymptotisk notation, amortisering, eksperimentel analyse
- Algoritmedesign
Grådige algoritmer, del-og-hersk, dynamisk programmering
- Grafalgoritmer
Traversering, topologisk sortering, korteste vej,
mindste udspændende træ, strømning i netværk
- Internetalgoritmer
Strengsøgning, tekstkomprimering, kryptografi, netværksalgoritmer
- Geometriske algoritmer
Flerdimensionale træer, konvekst hylster
3. Form
Undervisningen foregår ved forelæsninger og øvelser.
4. Deltagerforudsætninger
Kurset foruds¾tter fortrolighed med datastrukturer og algoritmer svarende til gennemf¿relse af kurset ÒDatalogi CÓ. Desuden foruds¾ttes matematik pŒ B-niveau.
5. Evaluering
Mundtlig eksamen. Den studerende freml¾gger en artikel, der udleveres 3 arbejdsdage inden eksamen. Der gives karakter efter 13-skalaen.
6. Lærebog
Som lærebog anvendes
Michael T. Goodrich og Roberto Tamassia:
Algorithm Design: Foundations, Analysis, and Internet Examples,
John Wiley & Sons, Inc., 2002.
7. Forelæsninger
Til stofgennemgang er afsat 10 forelæsningsgange. En foreløbig plan for forelæsningerne er vist nedenfor. Ret til ændringer forbeholdes.
(6/2) Fundamentale v¾rkt¿jer I
Algoritmeanalyse. Prioritetskøer. Hashing.(13/2) Fundamentale værktøjer II
Søgetræer og skiplister. Sortering.(20/2) Fundamentale værktøjer III
Algoritmiske designmønstre.
(27/2) Grafalgoritmer I
Korteste veje. Mindste udspændende træ.
(5/3) Grafalgoritmer II
Strømning i netværk.(12/3) Internetalgoritmer I
Strengsøgning. Tekstkomprimering.(19/3) Internetalgoritmer II
Kryptografi.(26/3) Internetalgoritmer III
Netværksalgoritmer.(2/4) Geometriske algoritmer
Flerdimensionale søgetræer. Konvekst hylster.
(16/4) Kursusafrunding