Kodning i kommunikationssystemer
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.
See course description in English
Læringsmål
- 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 Python eller MATLAB. 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 Python (eller MATLAB hvis du foretrækker det). Til slut udarbejdes en rapport over et mindre projekt med selvvalgt emne.
Undervisningsform
Forelæsninger, øvelser og projektarbejde
Fakultet
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 Python, MATLAB, eller C/C++.
Pladsbegrænsning
Maksimum: 40.
Vær opmærksom på, at dette enkeltfagskursus har et begrænset antal studiepladser. Er der for mange tilmeldinger, vil der blive trukket lod om pladserne. Du får besked om, hvorvidt du har fået tildelt en studieplads senest 8 dage før kursusstart.