Overordnede kursusmål
At give en indføring i kodning i kommunikationssystemer og
cyberteknologi:
- Fejlkorrigerende kodning for kommunikationskanaler
- Kodning af informationskilder for datakompression
- Kryptering af information for at sikre indholdet.
Læringsmål
En studerende, der fuldt ud har opfyldt kursets mål, vil kunne:
- forklare lineære blokkoder og deres vigtigste egenskaber
- forklare og anvende kodere og dekodere for almindelige
blokkoder som Hamming, BCH og RS
- forklare foldningskoder og deres vigtigste egenskaber
- beskrive og anvende Viterbi algoritmen for foldningskoder
- simulere kodningssystemer
- genkende entropibegrebet
- udføre Huffman kodning af simple informationskilder
- forstå anvendelsen af prædiktion i kildekodning
- forstå de vigtigste elementer i kodning af billeder og video
(JPEG, MPEG) og kunne anvende og indstille sådanne kodere
- forklare udvalgte klassiske krypteringsmetoder
Kursusindhold
Moderne kommunikations- og cyber systemer anvender en eller flere
former for kodning og det er målet med dette kursus at give en
indføring i sådanne kodningssystemer. Dette kursus har et
anvendelsesperspektiv understøttet af praktiske øvelser og
projekter, der kan udføres med MATLAB og evt. Python. Teorierne bag
kodningsmetoder indeholder stor dybde og de behandles i en række
efterfølgende DTU kurser. Kurset omfatter følgende emner:
• Kanalkodning (fejlkorrektion)
- Lineære blokkoder: Principper. Hamming, RS og BCH på brugerniveau
- Foldningskoder: Kodning og dekodning (Viterbi)
• Kildekodning (datakompression)
- Entropibegrebet
- Huffman-kodning
- Anvendelse af lineær prædiktion af signaler
- Video- og billedkodning
- MPEG og JPEG
• Kryptering (sikring og beskyttelse af information)
- Klassiske blok-krypteringssystemer
- McEliece's krypto-system
Kursets forelæsninger anvender detaljerede slides som er det
væsentligste undervisningsmateriale. Til hver forelæsning er
knyttet en eller flere øvelser. Øvelserne kræver som regel
programmering i MATLAB og ofte anvendelse af værktøjer fra MATLABs
toolboxes. Kurset indtroducerer til MATLAB. Til slut udarbejdes en
rapport over et mindre projekt med selvvalgt emne.
Bemærkninger
Kurset er grundlæggende og der tilbydes mange videregående kurser i
disse emner.
Det forudsættes at de studerende selv medbringer en laptop-computer
og har adgang til programmering i MATLAB, Python eller C/C++.
Sidst opdateret
29. april, 2022