Lab 3 Kodningsmetoder

Relevanta dokument
Lab 4: Digital transmission Redigerad av Niclas Wadströmer. Mål. Uppstart. Genomförande. TSEI67 Telekommunikation

Lab 1 Analog modulation

Källkodning. Egenskaper hos koder. Några exempel

Optimala koder. Det existerar förstås flera koder som har samma kodordsmedellängd. Enklaste fallet är att bara byta 0:or mot 1:or.

Optimala koder. Övre gräns för optimala koder. Gränser. Övre gräns för optimala koder, forts.

Krafts olikhet. En momentant avkodbar kod (prefixkod) med kodordslängderna l 1,...,l N existerar om och endast om. 2 l i. 1 i=1

Aritmetisk kodning. F (0) = 0 Exempel: A = {1, 2, 3} k=1. Källkodning fö 5 p.1/12

Föreläsning 7. Felrättande koder

Föreläsning 7: Bild- och videokodning

En generell prediktiv kodare utnyttjar signalens utseende N steg tillbaka i tiden för kodningen, dvs vi kodar efter den betingade fördelningen

a) Beräkna sannolikheten att en följd avkodas fel, det vill säga en ursprungliga 1:a tolkas som en 0:a eller omvänt, i fallet N = 3.

Ordbokskodning. Enkel variant av kodning med variabelt antal insymboler och fixlängds kodord. (Jfr tunstallkodning)

Exempel, minnesfri binär källa. Ordbokskodning. Lempel-Zivkodning. Lempel-Zivkodning, forts.

Datorövning 5 Exponentiella modeller och elasticitetssamband

Matematikcentrum 1(6) Matematisk Statistik Lunds Universitet MASB11 - Biostatistisk grundkurs VT2014, lp3. Laboration 2. Fördelningar och simulering

repetera begreppen sannolikhetsfunktion, frekvensfunktion och fördelningsfunktion

FLAC (Free Lossless Audio Coding)

Linjär prediktion. Prediktiv kodning. Linjär prediktion. Prediktiv kodare och avkodare

DIGITAL KOMMUNIKATION

Shannon-Fano-Elias-kodning

Telekommunikation. Programkurs 6 hp Telecommunication TSKS02 Gäller från: 2018 VT. Fastställd av. Fastställandedatum

Skurlängdskodning. aaaabbbbbbbccbbbbaaaa. Man beskriver alltså sekvensen med ett annat alfabet än det ursprungliga.

Liten MATLAB introduktion

Laboration i Automationsteknik FK: Del 1: Polplacering. Del 2: Markovkedjor

TSBK04 Datakompression. Övningsuppgifter

STOCKHOLMS UNIVERSITET VT 2011 Avd. Matematisk statistik GB DATORLABORATION 1: TIDSSERIER.

Detta ger oss att kanalkapaciteten för den ursprungliga kanalen är C = q 1 C 1 + q 2 C C =1 h ( ) 0.30.

Analys/syntes-kodning

repetitionskoder blockkoder Felrättande koder

Institutionen för Tillämpad Fysik och elektronik Umeå Universitet BE. Introduktion till verktyget SIMULINK. Grunderna...2

Datalänklagret. Datalänklagret ska:

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

Tentamen Bildanalys (TDBC30) 5p

För logitmodellen ges G (=F) av den logistiska funktionen: (= exp(z)/(1+ exp(z))

Blandade problem från elektro- och datateknik

SMS047 Mediakodning. Introduktion. Frank Sjöberg. Introduktion. Introduktion

Laboration 5: Regressionsanalys. 1 Förberedelseuppgifter. 2 Enkel linjär regression DATORLABORATION 5 MATEMATISK STATISTIK FÖR I, FMS 012, HT-08

TSBK04 Datakompression Övningsuppgifter

Laboration 2: Styrkefunktion samt Regression

Dagens föreläsning (F15)

SF1911 Statistik för bioteknik: Autumn 2016 Lab 3 för CBIOT3. 1 Problem 1 - Fördelning av nukleotider i DNA

Matematikcentrum 1(7) Matematisk Statistik Lunds Universitet Per-Erik Isberg. Laboration 1. Simulering

Matematikcentrum 1(7) Matematisk Statistik Lunds Universitet MASB11 - Biostatistisk grundkurs HT2007. Laboration. Simulering

Inledande matematik för I1. MVE011 läsperiod Matlab vecka 2 övningsuppgifter

Informationsteori. Repetition Kanalkapaciteten C. Repetition Källkodhastigheten R 2. Repetition Kanalkodhastigheten R 1. Huffmans algoritm: D-när kod

1/23 REGRESSIONSANALYS. Statistiska institutionen, Stockholms universitet

Laboration 2 - Modulering I denna laboration skall vi

Statistiska metoder för säkerhetsanalys

2. Lära sig skatta en multipel linjär regressionsmodell samt plotta variablerna. 4. Lära sig skatta en linjär regressionsmodell med interaktionstermer

Kapitel 2 o 3 Information och bitar Att skicka signaler på en länk. Att sända information mellan datorer. Information och binärdata

Instruktion för laboration 1

1/31 REGRESSIONSANALYS. Statistiska institutionen, Stockholms universitet

Linjärprogramming. EG2205 Föreläsning 7, vårterminen 2015 Mikael Amelin

Ternära koder för variabelt felskydd

MR-laboration: design av pulssekvenser

Datorövning Matlab/Simulink. Styr- och Reglerteknik för U3/EI2

Föreläsning 2 (kap 3): Diskreta stokastiska variabler

Laboration 1: Grundläggande sannolikhetsteori, simulering och dataanalys

Simulering av Poissonprocesser Olle Nerman, Grupprojekt i MSG110,GU HT 2015 (max 5 personer/grupp)

Bayesianska numeriska metoder I

Tekniska Högskolan i Linköping Institutionen för Datavetenskap (IDA) Torbjörn Jonsson Plot och rekursion

Adaptiv aritmetisk kodning

DATORLABORATION: JÄMFÖRELSE AV FLERA STICKPROV.

SIMULINK. En kort introduktion till. Polplacerad regulator sid 8 Appendix Symboler/block sid 10. Institutionen för Tillämpad Fysik och elektronik

Kapitel 2 o 3. Att skicka signaler på en länk. (Maria Kihl)

Kommunikationssystem grundkurs, 2G1501 Övningar modul 1 Dataöverföring & fysisk infrastruktur 1 Dataöverföring

Lösningsförslag till Tentamen i 5B1118 Diskret matematik 5p 11 april, 2002

Laboration 4: Stora talens lag, Centrala gränsvärdessatsen och enkla punktskattningar

Institutionen för teknikvetenskap och matematik, S0001M LABORATION 2

Föreläsninsanteckningar till föreläsning 3: Entropi

Variabler. TANA81: Beräkningar med Matlab. Matriser. I Matlab skapas en variabel genom att man anger dess namn och ger den ett värde:

TMS136. Föreläsning 10

TAIU07 Matematiska beräkningar med Matlab

2 februari 2016 Sida 1 / 23

Stokastiska processer med diskret tid

Föreläsning 1: Bild- och ljudkodning

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann

TSKS21 Signaler, Information och Bilder Lab 2: Digitalisering

Lektionsanteckningar 11-12: Normalfördelningen

Dagens program. Programmeringsteknik och Matlab. Administrativt. Viktiga datum. Kort introduktion till matlab. Övningsgrupp 2 (Sal Q22/E32)

Lab Tema 2 Ingenjörens verktyg

Tentamen i Matematisk statistik Kurskod S0001M

Lösningsförslag till Problem i kapitel 5 i Mobil Radiokommunikation

Första sidan är ett försättsblad (laddas ned från kurshemsidan) Alla frågor som nns i uppgiftstexten är besvarade

Föreläsning 12: Regression

Linjär algebra med tillämpningar, lab 1

Kontrollera att följande punkter är uppfyllda innan rapporten lämnas in: Första sidan är ett försättsblad (laddas ned från kurshemsidan)

k 1 B k 2 C ges av dx 1 /dt = k 1 x 1 x 1 (0) = 100 dx 2 /dt = k 1 x 1 k 2 x 2 x 2 (0) = 0 dx 3 /dt = k 2 x 2 x 3 (0) = 0

Laboration: Grunderna i MATLAB

SF2715 Tillämpad kombinatorik, 6hp

Övningar modul 1 - Dataöverföring & fysisk infrastruktur

Maj Lycka till! Sergei Silvestrov. 1. a) Bestäm Jordans normalform och minimalpolynom av Toeplitzmatrisen T =

Transformkodning Idé: 1. Tag datasekvensen och dela in den i block av storlek N (eller N N om signalen är tvνadimensionell). Transformera dessa block

SF1905 Sannolikhetsteori och statistik: Lab 2 ht 2010

Finns det över huvud taget anledning att förvänta sig något speciellt? Finns det en generell fördelning som beskriver en mätning?

Efternamn förnamn pnr årskurs

Matematisk statistik kompletterande projekt, FMSF25 Övning om regression

Datorövning 2 Matlab/Simulink. Styr- och Reglerteknik för U3/EI2

Datorövning 1 Enkel linjär regressionsanalys

LMA201/LMA521: Faktorförsök

Transkript:

Lab 3. Kodningsmetoder 15 Lab 3 Kodningsmetoder Starta Matlab och ladda ner följande filer från kurswebben till er lab-katalog: lab3blocks.mdl okodat.mdl repetitionskod.mdl hammingkod.mdl planet.mat Denna gång ska ni framför allt mäta upp bitfelsannolikheter då olika felrättande koder används. En kort studie av huffmankoder ingår också. 3.1 Okodad kommunikation över en binär-symmetrisk kanal Först får ni en helt avskalad variant av mätuppsättningen där ingen felrättning används. Den finns i modellen okodat.mdl och kommunikationen sker över en binär-symmetrisk kanal. Med modellens inställningar simuleras 10 5 skickade bitar, vilket tar c:a 20 sekunder att simulera. Okodat: Uppmätt bitfelsannolikhet i % Uppmätt felsannolikhet Den uppmätta bitfelssannolikheten bör vara i närheten av kanalens angivna felsannolikhet. Om så inte är fallet är något fel. 3.2 Repetitionskodning Modellen repetitionskod.mdl innehåller ett kommunikationssystem som använder en repetitionskod för att kommunicera över en binär-symmetrisk kanal. Alla ingående block i denna modell använder variabeln n (kodordslängden), som därför måste sättas i Matlab. På så sätt behöver ni bara ändra på ett ställe.

16 Lab-PM för TSEI67 Telekommunikation Repetitionskodning: Uppmätt bitfelsannolikhet i % n = 3 n = 5 n = 7 n = 9 Vilken felrättningsförmåga har koderna? Hur avspeglas felrättningsförmågan i mätningarna? 3.3 Hammingkod Modellen hammingkod.mdl innehåller ett kommunikationssystem som använder en hammingkod för att kommunicera över en binär-symmetrisk kanal. Förutom variabelnnanvänds här också variabeln k (kodens dimension). Hammingkoder: Uppmätt bitfelsannolikhet i % n = 7 k = n = 15 k = n = 31 k = n = 63 k = Observera att repetitionskoden med (n,k) = (3, 1) också är en hammingkod. Varför ökar bitfelssannolikheten med ökande kodordslängd?

3.4 BCH-koder 17 3.4 BCH-koder BCH-koder är en klass av linjära binära koder som tillåter en att göra en viss avvägning mellan parametrarna kodordslängd, dimension och minavstånd. Utgå nu från modellen hammingkod.mdl, men ersätt kodare och avkodare med motsvarande för BCH-koder från modellen lab3blocks.mdl. Dessa block använder också variablerna n och k. Man kan inte välja n och k godtyckligt. Slå upp hjälpsidan förbchenc i Matlabs hjälp. Där anges några tillåtna kombinationer. Notera att de BCH-koder som har samma parametrar som hammingkoder verkligen är hammingkoder. Prova några kombinationer av n och k och fyll i dina resultat nedan. Passa på att jämföra koder med ungefär samma takt, R = k/n. Exempelvis kan ni jämföra BCH-(15,5) med repetitionskoden som har n = 3, och BCH-(63,36) med hamming-(7,4). BCH: Uppmätt bitfelsannolikhet i % n k R Uppmätt bitfelsannolikhet Om takten kan hållas oförändrad verkar bitfelssannolikheten sjunka med ökande kodordslängd, åtminstone för låg felsannolikhet på kanalen. Vad skulle det kunna bero på? Fundera också kring varför det inte gäller för hög felsannolikhet på kanalen.

18 Lab-PM för TSEI67 Telekommunikation 3.5 Källkodning Simulink har för all del stöd för viss källkodning, men inte för huffmankodning. Det får istället bli ren Matlab för denna studie. Dubbelklicka på planet.mat i Matlabs filbläddrare. Det är en 256 256 punkters gråskalebild med heltalsvärden från 0 till 255, där 0 motsvarar svart och 255 motsvarar vitt. Om ni vill kan ni titta på bilden med imshow(reshape(planet(1:65536),256,256),[0 255]) För att bestämma en Huffmankod behövs en sannolikhetsfördelning. Skapa en ur bilden med prob = hist(planet(:),[0:255])/256^2; och titta på den med plot(prob) Koden skapas sedan med [dict,avglen] = huffmandict([0:255],prob); I dict finns den tabell som beskriver koden, och avglen är medelkodordslängden. Kodordslängderna kan ni få med L = zeros(1,256); for i=1:256 L(i)=length(dict{i,2}); end; Dessa kan ni också titta på med plot. Hur förhåller sig kodordslängderna till sannolikheterna? Entropin 255 Pr{i} log 2 Pr{i} i=0 utgör en undre gräns för medelkodordslängden. Den kan man bestämma så: -sum(prob(prob>0).*log2(prob(prob>0))) Det prob>0 som förekommer i uttrycket är till för att ta bort alla förekomster av sannolikheten 0, så att Matlab slipper beräkna logaritmen av 0. Kodens redundans uttryckt i bit per symbol är då differensen mellan medelkodordslängden och entropin. Vad blir redundansen för koden?

3.6 Om ni har tid över 19 3.6 Om ni har tid över Utgå från modellen repetitionskod.mdl, men ersätt kanalen med kombinationen linjekod Polar NRZ förstärkare AWGN-kanal anpassat filter detektor, dvs. så som det såg ut i lab 2. Denna kombination finns färdig i lab3blocks.mdl och ger en binärsymmetrisk kanal. För att dessa simuleringar inte ska ta alldeles för lång tid, bör ni behöva minska antalet sända bitar, exempelvis till 10 3. Jämför nu okodad kommunikation med repetitionskod i termer av bitfelssannolikhet, men se till att ni använder samma energi per informationsbit i båda fallen. Välj denna bitenergi och variansen på kanalen så att bitfelssannolikheten i det okodade fallet blir ungefär 5%. Justera parametern Spb så att antalet sampel per informationsbit blir densamma i de två fallen. Vad kan ni observera? Hur kan denna observation förklaras?