Liste dekoding - List decoding
I informatikk , spesielt innen kodingsteori , er listekoding et alternativ til unik dekoding av feilrettingskoder for store feilfrekvenser. Forestillingen ble foreslått av Elias på 1950-tallet. Hovedideen bak avkoding av lister er at avkodingsalgoritmen i stedet for å sende ut en enkelt mulig melding gir en liste over muligheter hvorav den ene er riktig. Dette gjør det mulig å håndtere et større antall feil enn det som tillates ved unik avkoding.
Den unike dekodingsmodellen i kodingsteori , som er begrenset til å gi ut et enkelt gyldig kodeord fra det mottatte ordet, kunne ikke tåle større brøkdel av feil. Dette resulterte i et gap mellom feilkorreksjonsytelsen for stokastiske støymodeller (foreslått av Shannon ) og den motstridende støymodellen (vurdert av Richard Hamming ). Siden midten av 90-tallet har betydelig algoritmisk fremgang fra kodingsteorimiljøet brettet dette gapet. Mye av denne fremgangen er basert på en avslappet feilkorreksjonsmodell kalt listekoding, der dekoderen sender ut en liste over kodeord for verste fall patologiske feilmønstre der det faktiske overførte kodeordet er inkludert i utgangslisten. I tilfelle av typiske feilmønstre sender dekoderen ut et unikt enkelt kodeord gitt et mottatt ord, noe som nesten alltid er tilfelle (dette er imidlertid ikke kjent for å være sant for alle kodene). Forbedringen her er betydelig ved at feilkorrigeringsytelsen dobles. Dette er fordi dekoderen nå ikke er begrenset av den minste avstandssperren. Denne modellen er veldig tiltalende fordi det å ha en liste med kodeord absolutt er bedre enn å bare gi opp. Forestillingen om listekoding har mange interessante anvendelser i kompleksitetsteorien .
Måten kanalstøy er modellert spiller en avgjørende rolle ved at den styrer hastigheten som pålitelig kommunikasjon er mulig. Det er to hovedskoler i å modellere kanalatferden:
- Probabilistisk støymodell studert av Shannon der kanalstøyen er modellert nøyaktig i den forstand at kanalens sannsynlighetsoppførsel er velkjent og sannsynligheten for forekomst av for mange eller for få feil er lav
- Worst-case eller motstridende støymodell vurdert av Hamming der kanalen fungerer som en motstander som vilkårlig ødelegger kodeordet med forbehold om det totale antall feil.
Høydepunktet med listekoding er at selv under ugunstige støyforhold er det mulig å oppnå den informasjonsteoretiske optimale avveiningen mellom hastighet og brøkdel av feil som kan rettes. På en måte er dette som å forbedre feilrettingens ytelse til det som er mulig i tilfelle av en svakere, stokastisk støymodell.
innhold
Matematisk formulering
La være en feilrettingskode; er med andre ord en kode for lengde , dimensjon og minste avstand over et alfabet av størrelse . Listekodingsproblemet kan nå formuleres som følger:
Input: Mottatt ord , feil bundet
Output: En liste over alle kodeord hvis hammingsavstand fra det meste er .
Motivasjon for listekoding
Gitt et mottatt ord , som er en støyende versjon av noe overført kodeord , prøver dekoderen å sende ut det sendte kodeordet ved å plassere innsatsen på et kodeord som er "nærmest" til det mottatte ordet. Hamming-avstanden mellom to kodeord brukes som måling for å finne det nærmeste kodeordet, gitt det mottatte ordet av dekoderen. Hvis det er minste Hamming-avstand for en kode , eksisterer det to kodeord og som skiller seg nøyaktig i posisjoner. I tilfelle der det mottatte ordet ligger like langt fra kodeordene, og blir entydig avkoding umulig, da dekoderen ikke kan bestemme hvilken av og til å sende ut som den opprinnelige sendte kodeordet. Som et resultat fungerer halvparten av minimumsavstanden som en kombinatorisk barriere utover hvilken entydig feilretting er umulig, hvis vi bare insisterer på unik avkoding. Mottatte ord som vurdert ovenfor forekommer imidlertid bare i verste fall, og hvis man ser på hvordan Hamming-baller er pakket i høydimensjonalt rom, selv for feilmønstre utover halvparten av minimumsavstanden, er det bare et enkelt kodeord innenfor Hamming avstand fra det mottatte ordet. Denne påstanden har vist seg å ha stor sannsynlighet for en tilfeldig kode valgt fra et naturlig ensemble, og mer for tilfellet Reed – Solomon-koder, som er godt studert og ganske allestedsnærværende i den virkelige verden-applikasjoner. Faktisk kan Shannons bevis på kapasitetsteoremet for q -ary symmetriske kanaler sees i lys av kravet ovenfor for tilfeldige koder.
I henhold til mandatet til listekoding, for verste feil, tillates dekoderen å sende ut en liten liste med kodeord. Med noe kontekstspesifikk eller sideinformasjon, kan det være mulig å beskjære listen og gjenopprette det originale overførte kodeordet. Generelt sett ser dette ut til å være en sterkere modell for feilgjenoppretting enn unik avkoding.
Liste-dekodingspotensial
For at en polynomisk-tidslistedekodingsalgoritme skal kunne eksistere, trenger vi den kombinatoriske garantien for at en hvilken som helst Hamming-ball med radius rundt et mottatt ord (hvor er brøkdelen av feil når det gjelder blokklengden ) har et lite antall kodeord. Dette er fordi selve listestørrelsen tydeligvis er en mindre grense for algoritmens kjøretid. Derfor krever vi at listestørrelsen er et polynom i blokkens lengde på koden. En kombinatorisk konsekvens av dette kravet er at det pålegger en øvre grense for frekvensen av en kode. Listekoding lover å møte denne øvre grensen. Det er vist ikke-konstruktivt at det eksisterer en takstkode som kan listes dekodet opp til en brøkdel av feil som nærmer seg . Mengden omtales i litteraturen som listekodingskapasitet. Dette er en betydelig gevinst sammenlignet med den unike dekodingsmodellen ettersom vi nå har potensial til å rette opp dobbelt så mange feil. Naturligvis må vi ha minst en brøkdel av de overførte symbolene for å være riktige for å gjenopprette meldingen. Dette er en informasjonsteoretisk undergrense for antall riktige symboler som kreves for å utføre dekoding og med listekoding kan vi potensielt oppnå denne informasjonsteoretiske grensen. For å realisere dette potensialet, trenger vi imidlertid eksplisitte koder (koder som kan konstrueres i polynomisk tid) og effektive algoritmer for å utføre koding og dekoding.
( p , L ) -liste-avkodbarhet
For en hvilken som helst feilfraksjon og et helt tall sies en kode å være avkodbar i listen opp til en brøkdel av feil med listestørrelse på det meste eller -liste-avkodbar hvis antallet kodeord innen Hamming-avstand fra det høyeste for hvert er
Kombinatorikk av avkoding av lister
Forholdet mellom listens avkodbarhet for en kode og andre grunnleggende parametere som minimum avstand og hastighet har vært ganske godt studert. Det har vist seg at hver kode kan dekoderes ved bruk av små lister utover halvparten av minimumsavstanden opp til en grense kalt Johnson-radius. Dette er ganske viktig fordi det beviser eksistensen av -listekoderbare koder med god hastighet med en listedekodingsradius som er mye større enn med andre ord, Johnson- utelukket utelukker muligheten for å ha et stort antall kodeord i en Hamming-ball av radius litt større enn som betyr at det er mulig å rette opp langt flere feil med listekoding.
Listekodingskapasitet
-
Teorem (List-dekodingskapasitet). La og De følgende to utsagnene holder for stor nok blokklengde .
- i) Hvis , så finnes det en- liste avkodbar kode.
- ii) Hvis , så har hver- liste-dekoderbare kode .
- Hvor
- er -ary entropiefunksjon definert for og utvidet av kontinuitet til
Hva dette betyr er at for hastigheter som nærmer seg kanalkapasiteten, finnes det listekodbare koder med lister av polynomstørrelse som muliggjør effektive dekodingsalgoritmer, mens for hastigheter som overstiger kanalkapasiteten blir listestørrelsen eksponentiell som utelukker eksistensen av effektive dekodingsalgoritmer.
Beviset for listekodingskapasitet er betydelig ved at det nøyaktig samsvarer med kapasiteten til a- symmetrisk kanal . Faktisk bør begrepet "listekodingskapasitet" faktisk leses som kapasiteten til en motstandskanal under listekoding. Beviset for listekodingskapasitet er også et viktig resultat som peker på den optimale avveiningen mellom frekvensen av en kode og brøkdelen av feil som kan rettes under listekoding.
Bevisskisse
Ideen bak beviset ligner på Shannons bevis for kapasitet på den binære symmetriske kanalen der en tilfeldig kode er valgt og viser at den er -liste-dekoderbar med stor sannsynlighet så lenge frekvensen for hastigheter som overstiger ovennevnte mengde, er den kan vises at listestørrelsen blir superpolynomialt stor.
En "dårlig" hendelse er definert som en der, gitt et mottatt ord og meldinger , så skjer det at for hvert sted er brøkdelen av feilene vi ønsker å rette opp og er Hamming-radien med det mottatte ordet som sentrum .
Nå er sannsynligheten for at et kodeord tilknyttet en fast melding ligger i en Hamming-ball gitt av
der mengden er volumet til en Hamming-ball med radius med det mottatte ordet som sentrum. Ulikheten i forholdet ovenfor følger fra den øvre grensen på volumet til en Hamming-ball. Mengden gir et veldig godt estimat på volumet til en Hamming-ball med radius sentrert om et hvilket som helst ord på Sagt på en annen måte, volumet til en Hamming-ball er oversettelsesinvariant. For å fortsette med bevisskissen, trylle vi foreningen bundet i sannsynlighetsteori som forteller oss at sannsynligheten for at en dårlig hendelse skal skje for en gitt er øvre begrenset av mengden .
Med det ovenstående i bakhodet, kan sannsynligheten for at "noen" dårlig hendelse skal skje være mindre enn . For å vise dette, jobber vi over alle mulige mottatte ord og alle mulige delmengder av meldinger i
Nå som vi vender oss mot beviset til del (ii), må vi vise at det er superpolynomisk mange kodeord rundt hvert når frekvensen overstiger listekodingskapasiteten. Vi må vise at det er superpolynomielt stort hvis hastigheten er . Fix et kodeord . Nå, for hvert utvalgte tilfeldig, har vi det
siden Hamming balls er oversettelsesinvolant. Fra definisjonen av volumet til en Hamming-ball og det faktum som er valgt jevnlig tilfeldig fra vi også
La oss nå definere en indikatorvariabel slik
Tar forventningen om volumet til en Hamming-ball vi har
Derfor har vi med den sannsynlige metoden vist at hvis hastigheten overstiger listekodingskapasiteten, så blir listestørrelsen superpolynomialt stor. Dette fullfører prøveskissen for listekodingskapasitet.
Liste-dekodingsalgoritmer
I perioden 1995 til 2007 utviklet kodningsteorifellesskapet gradvis mer effektive algoritmer for avkoding av lister. Algoritmer for Reed – Solomon-koder som kan dekode opp til Johnson-radius som er der hvor er normalisert avstand eller relativ avstand. For Reed-Solomon-koder, betyr det imidlertid at en brøkdel av feil kan rettes. Noen av de mest fremtredende listekodingsalgoritmene er følgende:
- Sudan '95 - Den første kjente ikke-trivielle listekodingsalgoritmen for Reed – Solomon-koder som oppnådde effektiv listekoding opp til feil utviklet av Madhu Sudan .
- Guruswami – Sudan '98 - En forbedring av den ovennevnte algoritmen for listekoding av Reed – Solomon koder opp til feil fra Madhu Sudan og hans daværende doktorgradsstipendiat Venkatesan Guruswami .
- Parvaresh – Vardy '05 - I et gjennombruddspapir presenterte Farzad Parvaresh og Alexander Vardy koder som kan listes dekodet utover radius for lave priser . Deres koder er varianter av Reed-Solomon-koder som oppnås ved å evaluere korrelerte polynomer i stedet for akkurat som for vanlige Reed-Solomon-koder.
- Guruswami – Rudra '06 - I enda et gjennombrudd gir Venkatesan Guruswami og Atri Rudra eksplisitte koder som oppnår listekodingskapasitet , det vil si at de kan listes avkodes opp til radius for enhver . Dette er med andre ord feilretting med optimal redundans. Dette svarte på et spørsmål som hadde vært åpent i omtrent 50 år. Dette arbeidet er invitert til forskningshøydepunkter i kommunikasjonen av ACM (som er "viet til de viktigste forskningsresultatene publisert i informatikk de siste årene") og ble nevnt i en artikkel med tittelen "Coding and Computing Join Forces" i utgaven 21. september 2007 av Science magazine. Kodene som de får, kalles foldede Reed-Solomon-koder som ikke er annet enn vanlige Reed-Solomon-koder, men sett på som en kode over et større alfabet ved nøye pakking av kodeordssymboler.
På grunn av deres allestedsnærhet og de fine algebraiske egenskapene de har, var avkodingsalgoritmer for Reed – Solomon-koder et hovedfokus for forskere. Listekodingsproblemet for Reed – Solomon-koder kan formuleres som følger:
Input : For en Reed-Solomon-kode får vi paret for , hvor er th-bit av det mottatte ordet og 's er forskjellige punkter i det endelige feltet og en feilparameter .
Utgang : Målet er å finne alle polynomier på det høyeste som er meldingslengden slik at for minst verdier av . Her vil vi gjerne ha så lite som mulig slik at større antall feil kan tolereres.
Med formuleringen ovenfor er den generelle strukturen for listekodingsalgoritmer for Reed-Solomon-koder som følger:
Trinn 1 : (Interpolasjon) Finn en ikke-null bivariat polynom slik at for .
Trinn 2 : (Root funn / Faktorisering) Utgang alle grad polynomer slik at er en faktor på f.eks . For hvert av disse polynomene, sjekk om det er minst verdier av . Hvis ja, ta med et slikt polynom i utgangslisten.
Med tanke på det faktum at bivariate polynomier kan faktoreres effektivt, kjører den ovennevnte algoritmen i polynomisk tid.
Bruksområder i kompleksitetsteori og kryptografi
Algoritmer utviklet for listekoding av flere interessante kodefamilier har funnet interessante anvendelser innen beregningskompleksitet og kryptografifeltet . Følgende er en eksempelliste over applikasjoner utenfor kodingsteorien:
- Konstruksjon av hard-core predikater fra enveis permutasjoner .
- Forutsigelse av vitner for NP-søkeproblemer.
- Forsterkende hardhet for boolske funksjoner.
- Gjennomsnittlig sakshårdhet for permanente av tilfeldige matriser.
- Avtrekk og Pseudorandom generatorer .
- Effektiv forrædersporing.
Eksterne linker
- En undersøkelse av listekoding av Madhu Sudan
- Notater fra et kurs undervist av Madhu Sudan
- Notater fra et kurs undervist av Luca Trevisan
- Notater fra et kurs undervist av Venkatesan Guruswami
- Notater fra et kurs undervist av Atri Rudra
- P. Elias, "Liste dekoding for støyende kanaler," Teknisk rapport 335, Research Laboratory of Electronics, MIT, 1957.
- P. Elias, "Feilretting av koder for listekoding," IEEE Transactions on Information Theory, vol. 37, s. 5–12, 1991.
- JM Wozencraft, "List dekoding", kvartalsvis fremdriftsrapport, Research Laboratory of Electronics, MIT, vol. 48, s. 90–95, 1958.
- Venkatesan Guruswami 's PhD-avhandling
- Algoritmiske resultater i listekoding
- Brettet vass – Salomonkode