Kā aprēķināt Hammingas attālumu

Mūsdienās gandrīz katrs mūsdienu dzīves aspekts ietver digitālās informācijas pārsūtīšanu vai nu starp atsevišķiem cilvēkiem, vai starp atsevišķiem serveriem vai sistēmām. Pārvaldot savus bankas kontus tiešsaistē, atjauniniet sociālo tīklu lapas vai pat atskaņojiet DVD ar pievienotu DVD atskaņotāju uz jūsu televizoru informācija digitāli pārvietojas no vienas vietas uz otru, izmantojot vadu vai bezvadu signāls. Lai šī informācija pārietu no vienas vietas uz otru, tā jāpārsūta, izmantojot datora kodu. Šajā "valodā" informācija pārvietojas, izmantojot 1 un 0 kombināciju, kas pazīstama kā binārs kods. Kļūda binārā koda pārejā no vienas sistēmas uz otru var nozīmēt, ka informācija netiek pareizi pārsūtīta, kas datora lietotājam var radīt daudz problēmu. Hamminga attālums ir veids, kā saprast, kā kodi atšķiras. Pēc tam to var izmantot kļūdu labošanai.

TL; DR (pārāk ilgi; Nelasīju)

Hamminga attālums attiecas uz punktu skaitu, kuros atšķiras divas binārā koda rindas, ko nosaka, vienkārši saskaitot to punktu skaitu, kur atšķiras divas koda rindas. Piemēram, attālums starp diviem kodvārdiem 10101010 un 01011010 ir četri: lai gan bez konteksta tas var nenozīmēt daudz, tas varētu nozīmēt, ka četros punktos kļūdas kodā ir radījušas to, ka audio fails netiek pareizi atskaņots, televizora attēli tiek parādīti nepareizi vai ir kritiska datora funkcija nepareizi interpretēts.

Kas ir Hamminga attālums?

Divu norādīto koda rindu Hamminga attālums ir punktu skaits, kuros līniju binārā koda vērtības ir atšķirīgas (pieņemot, ka abas koda rindas ir vienāda garuma). Tas var būt nedaudz mulsinošs, lai saprastu pirmajā piegājienā, tāpēc apsveriet šo vienkāršo piemēru: Viena vārda īsziņa tiek nosūtīta no tālruņa A uz tālruni B. Tulkojot binārā kodā, tālruņa A īsziņu attēlojošā koda rindiņa ir “101”, bet tālrunī B - koda rindiņā rakstīts "010". Salīdzinot šīs līnijas, jūs varat redzēt, ka katrā no trim punktiem ir dažādi simboli. Tas var liecināt, ka ziņojums netika nosūtīts pareizi.

Kā aprēķināt Hammingas attālumu

Vienkāršos scenārijos Hamminga attāluma aprēķināšana ir vienkārša, lai gan ir svarīgi atcerēties, ka Hamminga attālumu var aprēķināt tikai vienāda garuma līnijām. Jūs vienkārši saskaitāt to punktu skaitu, kur līnijām ir atšķirīgas vērtības. Iepriekš minētajā piemērā Hamminga attālums būtu trīs, jo līnijām ir dažādas vērtības trīs vietās. Šī salīdzinājuma veikšana kļūst laikietilpīgāka, jo garāka ir binārā koda rinda. Apsveriet nedaudz garāku piemēru ar divām koda rindām: 100110 un 110011. Abās šajās koda rindiņās ir seši informācijas punkti. Trīs no šiem punktiem vērtības ir atšķirīgas, tāpēc arī Hamminga attālums starp šīm divām līnijām ir trīs. Hamminga attāluma aprēķināšana ar lielāku datu kopu kļūst sarežģītāka un ietver sarežģītu vienādojumu un funkciju izmantošanu, piemēram, d = min {d (x, y): x, y∈C, x ≠ y}.

Kāpēc Hamminga attālums ir noderīgs?

Ārpus konteksta Hamminga attālums var šķist patvaļīgs. Tomēr tas ir svarīgs kodētāju mērījums. Hamminga attālums var palīdzēt kodētājiem rakstīt kodu, kas atklāj kļūdas un pat pats šīs kļūdas labo. Tas var arī palīdzēt cilvēkiem saprast, cik kods ir kļūdains. Hamminga attālums ir nosaukts Ričarda Veslija Hamminga vārdā, kurš mērījumus izstrādāja 1940. gadu beigās, kad viņš strādāja Bell Telephone Laboratories. Neskatoties uz to, ka Hammings mazināja jauninājumu svinības, tehnoloģiju nozare pievērsās uzmanībai un izmantoja to ļoti efektīvi, veicot koda problēmu novēršanu. Gandrīz 50 gadus pēc tam, kad Hammings atklāja mērījumu, Vācijas Eduarda Reima fonds 1996. gadā viņam piešķīra Eduarda Reima balvu par sasniegumiem tehnoloģijās. Turklāt I.E.E.E., liela profesionāla organizācija tehnoloģiju nozarē, izdod ikgadējo Richard W. Hamminga medaļa viņa godā.

  • Dalīties
instagram viewer