I dag involverer nesten alle aspekter av det moderne liv overføring av digital informasjon, enten mellom enkeltpersoner eller mellom individuelle servere eller systemer. Når du administrerer bankkontoer på nettet, oppdaterer du de sosiale mediesidene eller til og med spiller en DVD med en DVD-spiller tilkoblet til fjernsynet ditt, flyttes informasjon fra ett sted til et annet digitalt, enten gjennom en ledning eller via en trådløs signal. For at denne informasjonen skal gå fra ett sted til et annet, må den overføres via datamaskinkode. I dette "språket" beveger informasjon seg via en kombinasjon av 1 og 0, kjent som binær kode. En feil i den binære koden som beveger seg fra ett system til et annet, kan bety at informasjon ikke blir formidlet riktig, noe som kan forårsake mange problemer for databrukeren. Hamming avstand er en måte å forstå hvordan koder er forskjellige. Dette kan da brukes til å rette feil.
TL; DR (for lang; Leste ikke)
Hamming-avstand refererer til antall punkter der to linjer med binær kode skiller seg ut, bestemt ved å bare legge sammen antall flekker der to linjer med kode er forskjellige. For eksempel er avstanden mellom de to kodeordene 10101010 og 01011010 fire: mens dette kanskje ikke betyr mye uten sammenheng, kan dette bety at på fire punkter, feil i koden har resultert i at en lydfil ikke kan spilles ordentlig, det visuelle på en TV vises feil, eller at en kritisk datamaskinfunksjon blir feiltolket.
Hva er Hamming Distance?
Hamming-avstanden til to gitte kodelinjer er antall punkter der linjens binære kodeverdier er forskjellige (forutsatt at de to kodelinjene har samme lengde). Dette kan være litt forvirrende å forstå ved første pass, så vurder dette enkle eksemplet: En tekstmelding fra ett ord sendes fra telefon A til telefon B. Når den oversettes til binær kode, lyder kodelinjen som representerer tekstmeldingen på telefon A "101" og på telefon B den linje med kode lyder "010." Når du sammenligner disse linjene, kan du se at det er forskjellige symboler på hver av de tre punktene. Dette kan være et tegn på at meldingen ikke ble sendt riktig.
Hvordan beregne Hamming Distance
I enkle scenarier er det enkelt å beregne Hamming-avstand, men det er viktig å huske at Hamming-avstand bare kan beregnes for linjer som har samme lengde. Du legger bare opp antall flekker der linjene har forskjellige verdier. I eksemplet ovenfor vil Hamming-avstanden være tre, siden linjene har forskjellige verdier på tre punkter. Å gjøre denne sammenligningen blir mer tidkrevende jo lenger linjen med binær kode er. Tenk på et litt lengre eksempel, med to linjer med kode: 100110 og 110011. Disse kodelinjene inneholder begge seks informasjonspunkter. Verdiene er forskjellige i tre av disse punktene, så Hamming-avstanden mellom disse to linjene er også tre. Beregning av Hamming-avstand med et større datasett blir mer komplisert og innebærer bruk av intrikate ligninger og funksjoner som d = min {d (x, y): x, y∈C, x ≠ y}.
Hvorfor er Hamming Distance nyttig?
Utenfor sammenheng kan Hamming-avstand virke vilkårlig. Det er imidlertid en viktig måling for kodere. Hamming-avstand kan hjelpe kodere med å skrive kode som oppdager feil og til og med korrigerer disse feilene alene. Det kan også hjelpe folk å forstå hvor feilutsatt en kode er. Hamming-avstand er oppkalt etter Richard Wesley Hamming, som utviklet målingen på slutten av 1940-tallet da han jobbet ved Bell Telephone Laboratories. Selv om Hamming bagatelliserte feiringen av innovasjonen, tok teknologiindustrien merke til det og brukte det med stor effekt når feilsøking av kode var. Nesten 50 år etter at Hamming oppdaget målingen, fikk han Eduard Rheim Award for Achievement in Technology av Eduard Rheim Foundation i Tyskland i 1996. I tillegg gir I.E.E.E., en stor profesjonell organisasjon i teknologisektoren, ut den årlige Richard W. Hamming-medalje til hans ære.