Liste dekodning - List decoding

Inden for datalogi , især inden for kodningsteori , er listekodning et alternativ til unik afkodning af fejlkorrektionskoder til store fejlhastigheder. Forestillingen blev foreslået af Elias i 1950'erne. Hovedideen bag listekodning er, at afkodningsalgoritmen i stedet for at udsende en enkelt mulig meddelelse udsender en liste over muligheder, hvoraf den ene er korrekt. Dette giver mulighed for at håndtere et større antal fejl end det, der er tilladt ved unik afkodning.

Den unikke afkodningsmodel i kodningsteori , som er begrænset til at udsende et enkelt gyldigt kodeord fra det modtagne ord, kunne ikke tolerere større brøkdel af fejl. Dette resulterede i et mellemrum mellem fejlkorrektionens ydeevne for stokastiske støjmodeller (foreslået af Shannon ) og den modstridende støjmodel (overvejet af Richard Hamming ). Siden midten af ​​90'erne har betydelige algoritmiske fremskridt fra kodningsteorifællesskabet overført dette hul. Meget af denne fremgang er baseret på en afslappet fejlkorrektionsmodel kaldet listekodning, hvor dekoderen udsender en liste over kodeord til værste tilfælde patologiske fejlmønstre, hvor det faktiske transmitterede kodeord er inkluderet i outputlisten. I tilfælde af typiske fejlmønstre udsender dekoderen imidlertid et unikt enkelt kodeord, der får et modtaget ord, hvilket næsten altid er tilfældet (dog vides det ikke at være sandt for alle koder). Forbedringen her er betydelig, idet fejlkorrektionens ydelse fordobles. Dette skyldes, at dekoderen nu ikke er begrænset af den halve minimum afstandsbarriere. Denne model er meget tiltalende, fordi det er bestemt bedre at have en liste med kodeord end bare at give op. Forestillingen om listekodning har mange interessante anvendelser i kompleksitetsteorien .

Den måde, hvorpå kanalstøj modelleres, spiller en afgørende rolle, idet den styrer den hastighed, med hvilken pålidelig kommunikation er mulig. Der er to hovedskoler i modellering af kanalens adfærd:

  • Probabilistisk støjmodel studeret af Shannon, hvor kanalstøj er modelleret nøjagtigt i den forstand, at kanalens probabilistiske opførsel er velkendt, og sandsynligheden for forekomst af for mange eller for få fejl er lav
  • Worst-case eller adversarial støjmodel betragtet af Hamming, hvor kanalen fungerer som en modstander, der vilkårligt ødelægger kodeordet underlagt et bundet antal af det samlede antal fejl.

Højdepunktet ved afkodning af lister er, at selv under ugunstige støjforhold er det muligt at opnå den informationsteoretiske optimale afvejning mellem hastighed og brøkdel af fejl, der kan rettes. På en måde er dette som at forbedre fejlkorrektionens ydeevne til det, der er muligt i tilfælde af en svagere, stokastisk støjmodel.

Matematisk formulering

Lad være en fejlkorrektionskode; er med andre ord en kode for længde , dimension og mindsteafstand over et alfabet i størrelse . List-afkodningsproblemet kan nu formuleres som følger:

Input: Modtaget ord , fejlbundet

Output: En liste over alle kodeord, hvis hammingsafstand fra højst er .

Motivation til listekodning

Givet et modtaget ord , som er en støjende version af noget transmitteret kodeord , prøver dekoderen at udsende det transmitterede kodeord ved at placere sit væddemål på et kodeord, der er "tættest" på det modtagne ord. Hamming-afstanden mellem to kodeord bruges som en måling til at finde det nærmeste kodeord, givet det modtagne ord af dekoderen. Hvis er den mindste Hamming afstand af en kode , så der findes to kodeord og som afviger i nøjagtig positioner. I det tilfælde, hvor det modtagne ord er ens i forhold til kodeordene, og entydig afkodning bliver umulig, da dekoderen ikke kan beslutte, hvilken af og til at udgive som det originale transmitterede kodeord. Som et resultat fungerer halvdelen af ​​minimumsafstanden som en kombinatorisk barriere, ud over hvilken entydig fejlkorrektion er umulig, hvis vi kun insisterer på unik afkodning. Modtagne ord som betragtet ovenfor forekommer dog kun i værste tilfælde, og hvis man ser på den måde, Hamming-kugler er pakket i højdimensionelt rum, selv for fejlmønstre ud over halvdelen af ​​minimumsafstanden, er der kun et enkelt kodeord inden for Hamming afstand fra det modtagne ord. Denne påstand har vist sig at have stor sandsynlighed for en tilfældig kode valgt fra et naturligt ensemble og mere for tilfældet med Reed – Solomon-koder, som er godt studeret og ganske allestedsnærværende i den virkelige verden applikationer. Faktisk kan Shannons bevis for kapacitetsteoremet for q -ary symmetriske kanaler ses i lyset af ovenstående påstand om tilfældige koder.

I henhold til mandatet for listekodning, for worst-case-fejl, tillader dekoderen at udsende en lille liste med kodeord. Med nogle kontekstspecifikke eller sideoplysninger kan det være muligt at beskære listen og gendanne det originale transmitterede kodeord. Derfor synes det generelt at være en stærkere gendannelsesmodel end unik afkodning.

Liste-dekodningspotentiale

For at der kan findes en polynomisk-liste-dekodningsalgoritme, har vi brug for den kombinerende garanti, at enhver Hamming-kugle med radius omkring et modtaget ord (hvor er brøkdelen af ​​fejl i form af bloklængden ) har et lille antal kodeord. Dette skyldes, at selve listestørrelsen klart er en lavere grænse for algoritmens køretid. Derfor kræver vi, at listestørrelsen er et polynom i kodelængden af koden. En kombinatorisk konsekvens af dette krav er, at det pålægger en øvre grænse for kodens hastighed. Liste dekodning lover at opfylde denne øvre grænse. Det er vist ikke-konstruktivt, at der findes en kodningskode, der kan listes afkodet op til en brøkdel af fejl, der nærmer sig . Mængden omtales i litteraturen som listekodningskapacitet. Dette er en betydelig gevinst sammenlignet med den unikke dekodningsmodel, da vi nu har potentialet til at rette dobbelt så mange fejl. Naturligvis skal vi have mindst en brøkdel af de transmitterede symboler for at være korrekte for at gendanne meddelelsen. Dette er en informationsteoretisk nedre grænse for antallet af korrekte symboler, der kræves for at udføre dekodning, og med listekodning kan vi potentielt opnå denne informationsteoretiske grænse. For at realisere dette potentiale har vi dog brug for eksplicitte koder (koder, der kan konstrueres i polynomisk tid) og effektive algoritmer til at udføre kodning og afkodning.

( p , L ) -liste-afkodbarhed

For enhver fejlfraktion og et helt tal siges en kode at være afkodelig på listen op til en brøkdel af fejl med højst listestørrelse eller -liste-afkodelig, hvis antallet af kodeord inden for Hamming-afstand fra højst er

Kombinatorik af afkodning af lister

Forholdet mellem en kodes listerafkodbarhed og andre grundlæggende parametre som minimum afstand og hastighed er blevet undersøgt forholdsvis godt. Det er vist, at hver kode kan afkodes på listen ved hjælp af små lister ud over halvdelen af ​​minimumsafstanden op til en grænse kaldet Johnson-radius. Dette er ret vigtigt, fordi det beviser eksistensen af -liste-afkodelige koder med god hastighed med en listeafkodningsradius, der er meget større end Med andre ord udelukker Johnson bunden muligheden for at have et stort antal kodeord i en Hamming-kugle af radius lidt større end hvilket betyder, at det er muligt at rette langt flere fejl med listekodning.

Liste-afkodningskapacitet

Sætning (List-dekodningskapacitet). Lad og De følgende to udsagn gælder for blok nok længde .
i) Hvis der findes en -liste afkodelig kode.
ii) Hvis alle -liste-afkodelige koder har .
Hvor
er den ærlige entropiefunktion defineret for og udvidet af kontinuitet til

Hvad dette betyder, er, at der for hastigheder, der nærmer sig kanalkapaciteten, findes listen afkodelige koder med lister i polynomstørrelse, der muliggør effektive afkodningsalgoritmer, medens for størrelser, der overstiger kanalkapaciteten, bliver listestørrelsen eksponentiel, hvilket udelukker eksistensen af ​​effektive afkodningsalgoritmer.

Beviset for listekodningskapacitet er en betydelig, idet det nøjagtigt matcher kapaciteten til en- symmetrisk kanal . Faktisk bør udtrykket "listekodningskapacitet" faktisk læses som kapaciteten til en modstandskanal under listekodning. Beviset for listekodningskapacitet er også et vigtigt resultat, der peger på den optimale kompromis mellem hastigheden af ​​en kode og den brøkdel af fejl, der kan rettes under listekodning.

Skitse af bevis

Ideen bag beviset svarer til Shannons bevis for kapacitet på den binære symmetriske kanal, hvor en tilfældig kode vælges og viser, at den er -liste-afkodelig med stor sandsynlighed, så længe frekvensen for satser, der overstiger ovennævnte mængde, er kan vises, at listestørrelsen bliver superpolynomisk stor.

En "dårlig" begivenhed er defineret som en, hvor, givet et modtaget ord og budskaber er det sådan, at for hver hvor er den del af fejl, som vi ønsker at rette og er Hamming kugle af radius med den modtagne ord som centrum .

Nu, sandsynligheden for, at et kodeord knyttet til en fast besked ligger i en Hamming bold er givet ved

hvor mængden er volumen på en Hamming-kugle med radius med det modtagne ord som centrum. Uligheden i ovennævnte forhold følger fra den øvre grænse på lydstyrken på en Hamming-kugle. Mængden giver et meget godt skøn over lydstyrken på en Hamming-kugle med radius centreret på ethvert ord på Sagt på en anden måde, lydstyrken på en Hamming-kugle er oversættelses invariant. For at fortsætte med bevisskitse trygler vi foreningen bundet i sandsynlighedsteori, der fortæller os, at sandsynligheden for, at en dårlig begivenhed sker for en given, er øvre grænse af mængden .

Med det ovenstående i tankerne kan sandsynligheden for, at "enhver" dårlig begivenhed sker, være mindre end . For at vise dette, arbejder vi os hen over alle mulige modtagne ord og alle mulige undergrupper af meddelelser i

Når vi nu vender os mod beviset for del (ii), er vi nødt til at vise, at der er superpolynomisk mange kodeord omkring hver, når hastigheden overstiger listekodningskapaciteten. Vi er nødt til at vise, at det er superpolynomielt stort, hvis hastigheden . Fix et kodeord . Nu har vi det for hver plukket tilfældigt

da Hamming-kugler er oversættelsesinvolant. Fra definitionen af ​​lydstyrken på en Hamming-kugle og det faktum, at vi vælges ensartet tilfældigt fra vi har også

Lad os nu definere en indikatorvariabel sådan

At tage forventningen til lydstyrken på en Hamming-kugle, vi har

Derfor har vi med den sandsynlige metode vist, at hvis hastigheden overstiger listekodningskapaciteten, bliver listestørrelsen superpolynomisk stor. Dette afslutter bevisskitse for listekodningskapacitet.

Liste-afkodningsalgoritmer

I perioden 1995 til 2007 udviklede kodningsteori-samfundet gradvist mere effektive algoritmer til dekodning af lister. Algoritmer til Reed – Solomon-koder, der kan dekode op til Johnson-radius, som findes, hvor er den normaliserede afstand eller den relative afstand. For Reed-Solomon-koder, hvilket betyder, at en brøkdel af fejl kan rettes. Nogle af de mest fremtrædende algoritmer til dekodning af lister er følgende:

  • Sudan '95 - Den første kendte ikke-trivielle listekodningsalgoritme for Reed – Solomon-koder, der opnåede effektiv listekodning op til fejl udviklet af Madhu Sudan .
  • Guruswami – Sudan '98 - En forbedring af den ovennævnte algoritme til listekodning af Reed – Solomon koder op til fejl fra Madhu Sudan og hans daværende doktorand Venkatesan Guruswami .
  • Parvaresh – Vardy '05 - I et gennembrudspapir præsenterede Farzad Parvaresh og Alexander Vardy koder, der kan listes dekodet ud over radius for lave priser . Deres koder er varianter af Reed-Solomon-koder, som opnås ved at evaluere korrelerede polynomer i stedet for lige som i tilfældet med sædvanlige Reed-Solomon-koder.
  • Guruswami – Rudra '06 - I endnu et gennembrud giver Venkatesan Guruswami og Atri Rudra eksplicitte koder, der opnår listekodningskapacitet , det vil sige, de kan lister dekodes op til radius for enhver . Med andre ord er dette fejlkorrektion med optimal redundans. Dette besvarede et spørgsmål, der havde været åbent i omkring 50 år. Dette arbejde er blevet inviteret til afsnittet Forskningshøjdepunkter i Kommunikationen af ​​ACM (som er "helliget de vigtigste forskningsresultater, der er offentliggjort i Computer Science i de senere år") og blev nævnt i en artikel med titlen "Coding and Computing Join Forces" i 21. september 2007-udgaven af ​​Science-magasinet. Koderne, de får, kaldes foldede Reed-Solomon-koder, som kun er almindelige Reed-Solomon-koder, men ses som en kode over et større alfabet ved omhyggelig bundtning af kodeordssymboler.

På grund af deres allestedsnærværende og de smukke algebraiske egenskaber, de har, var listekodningsalgoritmer til Reed – Solomon-koder et hovedfokus for forskere. Listekodningsproblemet for Reed – Solomon-koder kan formuleres som følger:

Input : For en Reed-Solomon-kode får vi parret til , hvor er th bit af det modtagne ord og 's er forskellige punkter i det endelige felt og en fejlparameter .

Output : Målet er at finde alle polynomier på graden som højst, hvilket er meddelelsens længde, så det er mindst værdier for . Her vil vi gerne have så lille som muligt, så større antal fejl kan tolereres.

Med ovenstående formulering er den generelle struktur for listekodningsalgoritmer til Reed-Solomon-koder som følger:

Trin 1 : (Interpolation) Find en ikke-nul-bivariat polynom, sådan som for .

Trin 2 : (Root fund / Faktorisering) Output alle grad polynomier således at er en faktor dvs. . For hvert af disse polynomer skal du kontrollere, om der er mindst værdier på . Hvis dette er tilfældet, skal du inkludere et sådant polynom i outputlisten.

I betragtning af det faktum, at bivariate polynomer kan faktoreres effektivt, kører ovennævnte algoritme i polynomietid.

Anvendelser inden for kompleksitetsteori og kryptografi

Algoritmer udviklet til listekodning af flere interessante kodefamilier har fundet interessante anvendelser inden for beregningskompleksitet og kryptografiområdet . Følgende er en eksempleliste over applikationer uden for kodningsteori:

eksterne links