A Hamming-távolság matematikai fogalom, amelyet Richard Hamming határozott meg , és a számítógépeket a jelfeldolgozásban és a távközlésben használta . Fontos szerepet játszik a korrekciós kódok algebrai elméletében . Ez lehetővé teszi a szimbólumok két szekvenciája közötti különbség számszerűsítését. Ez a kifejezés matematikai értelmében vett távolság . Két azonos hosszúságú szimbólum-szekvenciával hozzárendeli azoknak a pozícióknak a számát, ahol a két szekvencia eltér.
A Hamming-súly megfelel a véges mező elemeinek láncában szereplő nem nulla elemek számának .
A Hamming-távolság Richard Hammingnek ( 1915 - 1998 ) köszönheti nevét . Ezt a módszert az cikkből a kódot elmélet . A távközlésben arra használják, hogy megszámolja a sérült bitek számát egy adott hosszúságú üzenet továbbításakor. A Hamming-súly a nullától eltérő bitek száma, számos területen alkalmazzák, például információelméletben , kódolási elméletben és kriptográfiában . Azonban a változó hosszúságú szekvenciák vagy a karakterláncok összehasonlításához, amelyek nemcsak helyettesítéseken, hanem beillesztéseken vagy törléseken is áteshetnek, kifinomultabb mutatók, például Levenshtein távolsága megfelelőbb.
A javító kódok forrása az adatátviteli probléma. Néha az adatátvitel megbízhatatlan kommunikációs csatornán történik. A javító kód célja az információ-redundancia biztosítása oly módon, hogy a hiba észlelhető, vagy akár kijavítható legyen.
Egy üzenet tagja egy sor E álló kész lakosztályok levelek közül egy ábécé A . A redundancia hozzájárulása az E inj injektív alkalmazásának eredménye az F készletben, amely szintén A ábécé betűinek véges szekvenciáiból áll . A lakosztályok mindegyike F választjuk eleve hosszabb E . Az φ ( E ) halmazt kódnak hívjuk, és a kód ezen set ( m ) halmazának eleme . Az φ (m) átvitelének előnyét m helyett a jobb oldali ábra szemlélteti.
A redundancia nélküli kód esete az ábra bal oldalán látható. F ekkor egyenlő E-vel és φ az azonosság. Ha egy zöld színű üzenetet továbbítás közben átalakítanak, akkor új, piros színű üzenetet továbbítanak. Nincs információ arra vonatkozóan, hogy hibát követtek volna el.
Ennek az állapotnak a leküzdésére a cél az, hogy a kód szavait, amelyek a zöld pontoktól jobbra látható ábrának megfelelnek, hibákat tartalmazó üzenetekkel vegyék körül. Ezeket az elbocsátásokat a narancssárga rács metszéspontjai szemléltetik. Ha egyetlen hiba lép fel, akkor az átvitt üzenet piros pontnak felel meg. Ha a redundancia ügyesen felépült, csak egy zöld pont van a kapott piros ponthoz közel, a hiba kijavítható.
A Hamming-távolság megfelel az ábrán a rács legkisebb azon szakaszainak számának, amelyeket két pont összekapcsolásához keresztezni kell.
Formálisan, ha d (.,.) A Hamming-távolságot jelöli:
A jelölési # E jelöli a bíboros a készlet E .
Fontos eset a gyakorlatban a bináris szimbólumoké. Más szavakkal: A = {0,1}, akkor írhatunk, ha ⊕ a kizárólagos vagy .
Abban a gyakori esetben, amikor az ábécé egy véges mező , az F vektortér- szerkezete n dimenzió . A távolság ekkor egy álnormából származik :
Az ábécé gyakran F 2 , két elem mezője {0,1}. A Hamming-súly álnorma, mert:
Ha azonban az ábécé véges mező, akkor a távolság a Hamming-súlyból származik, sőt:
Vegye figyelembe a következő bináris szekvenciákat:
Közötti távolság a és b értéke 3 , mert 3 bit különböznek.
Fontos eset, amikor az ábécé a kétrészes {0,1} mező. Ezután egy levelet kissé hívnak . Széles körben használják az informatikában és a telekommunikációban.
Lehetséges grafikusan szemléltetni a kódot és a különböző szavak közötti távolságokat.
Az esetet, amikor egy szónak három betűje van, a bal oldali ábra szemlélteti. A 010 és 111 közötti távolság egyenlő kettővel, mert a két pont összekapcsolásához két szegmenst kell megtenni. A 100 és 011 pontok összekapcsolásának távolsága három.
A jobb oldali ábra egy négyes méretű bináris hiperkockát szemléltet . A 0110 és 1110 közötti távolság egyenlő, míg a 0100 és 1001 közötti távolság három.
A Hamming súlya egy elem egy megfelel a távolságot a szót nulla amelyek csak nulla koordinátáit és a .
A Hamming-távolság a kifejezés matematikai értelmében vett távolság :
(szimmetria) | |
(elválasztás) | |
(háromszög egyenlőtlenség) |
A harmadik tulajdonság bizonyult egy indukciós a n .
A minimális távolság δ a kód két szava közötti minimális távolság. Ez lehetővé teszi a maximális számú javítható hibák t kell meghatározni. A t értéke valóban a legnagyobb egész szám értéke, szigorúan kisebb, mint δ / 2.
Ha M számát jelöli, szó a kódot, q a betűk száma az ábécé A az F és V t számosságának zárt labdát sugarú t , akkor a következő növekedése igazolt:
Ez a növekedés Borne de Hamming nevet viseli .
Abban az esetben, egy lineáris kód , és ha k jelöli a hossza a szavak a kódok, van egy másik növekedése, az úgynevezett Singleton kötött:
7 bites adat | paritásos bitdel |
---|---|
0000000 | 0 0000000 |
1010001 | 1 1010001 |
1101001 | 0 1101001 |
1111111 | 1 1111111 |
Az ellenőrző összeg egyszerű példa a Hamming-távolság használatára. A kód két szava közötti minimális távolság egyenlő kettővel . Következésképpen, ha egyetlen hiba történik, akkor azt észlelik. Viszonteladás nélkül azonban nem javítható. Valóban, vannak eleve több kódszót távol egyik a hibás üzenet.
A legegyszerűbb példa a paritásbit . Ellenőrző összegnek felel meg abban az esetben, ha a test bináris, vagyis két nulla és egy elemet tartalmaz .
Tegyük fel, hogy a cél hét bit átvitele . A paritásbitet nullának definiáljuk, ha a többi bit összege páros, egy pedig más. A továbbított nyolc bit először az paritásbit, majd az üzenet hét bitje. Megfelel a páros paritásbitnek, vagyis a jobb oldali táblázat második oszlopának. Küldött üzeneteket nyolc bit mindig nulla paritás , így ha hiba történik, a nulla lesz egy , vagy fordítva; a vevő tudja, hogy változás történt. Valójában a bitek összege páratlan lesz, ami átviteli hiba nélkül nem lehetséges.
A Hamming-kód valamivel összetettebb példa, mint az előző. A kód két szava közötti minimális távolság három. Ha egy sérülés történik, akkor a fogadott üzenet a parttól egy egyetlen pont a kódot. Így lehetséges egy hiba automatikus kijavítása, ha tudjuk, hogy a hiba egyedi.
A lineáris kódok a két előző példát tartalmazó családot alkotnak. Az ábécé véges mező , az E és F halmaz vektorterek, a map térkép pedig lineáris. A Hamming-távolság az álnormából származik: a Hamming-súlyból. Ezt az összefüggést általában az ipar használja.
Ez a kódcsalád a lineáris kód egy adott esetének felel meg. Az E és F struktúrák gyűrűs szerkezettel vannak gazdagítva, amely algebra státuszt ad nekik . Ez a véges mezők kiterjesztéseire vonatkozó polinomelméleten alapuló szerkezet lehetővé teszi a lehető legkisebb távolságok megalkotását.
Számos kód épül erre az elméletre. Úgy tűnik, hogy a Hamming-kód ezek speciális esete. Megemlíthetjük például a kompaktlemezekhez használt BCH vagy Reed-Salamon kódokat is .