Inhoud
- TL; DR (te lang; niet gelezen)
- Wat is Hamming-afstand?
- Hoe Hamming-afstand te berekenen
- Waarom is Hamming-afstand nuttig?
Tegenwoordig omvat bijna elk aspect van het moderne leven de overdracht van digitale informatie, tussen individuele mensen of tussen individuele servers of systemen. Wanneer u uw bankrekeningen online beheert, uw sociale mediapagina's bijwerkt of zelfs een dvd afspeelt met een dvd-speler die op uw televisie is aangesloten, wordt informatie digitaal van de ene plaats naar de andere verplaatst, hetzij via een kabel of via een draadloos signaal. Om deze informatie van de ene naar de andere locatie te laten gaan, moet deze via computercode worden overgedragen. In deze 'taal' wordt informatie verplaatst via een combinatie van enen en nullen, ook wel binaire code genoemd. Een fout in de binaire code die van het ene systeem naar het andere wordt verplaatst, kan betekenen dat informatie niet correct wordt overgebracht, wat voor de computergebruiker veel problemen kan veroorzaken. Hamming-afstand is een manier om te begrijpen hoe codes verschillen. Dit kan vervolgens worden gebruikt om fouten te corrigeren.
TL; DR (te lang; niet gelezen)
Hamming-afstand verwijst naar het aantal punten waarop twee regels binaire code verschillen, bepaald door eenvoudigweg het aantal punten op te tellen waar twee regels code verschillen. De afstand tussen de twee codewoorden 10101010 en 01011010 is bijvoorbeeld vier: hoewel dit niet veel kan betekenen zonder con, kan dit betekenen dat op vier punten fouten in de code ertoe hebben geleid dat een audiobestand niet correct wordt afgespeeld, de beelden op een televisie wordt onjuist weergegeven of een kritieke computerfunctie wordt verkeerd geïnterpreteerd.
Wat is Hamming-afstand?
De Hamming-afstand van twee gegeven coderegels is het aantal punten waarop de binaire codewaarden van de regels verschillen (ervan uitgaande dat de twee coderegels dezelfde lengte hebben). Dit kan een beetje verwarrend zijn om te begrijpen bij het eerste pass, dus overweeg dit eenvoudige voorbeeld: een woord wordt van telefoon A naar telefoon B verzonden. Wanneer vertaald naar binaire code, staat de coderegel die op telefoon A voorstelt "101" en op telefoon B staat de coderegel "010." Als u deze lijnen vergelijkt, ziet u dat er verschillende symbolen zijn in elk van de drie vlekken. Dit kan een teken zijn dat het niet correct is verzonden.
Hoe Hamming-afstand te berekenen
In eenvoudige scenario's is het berekenen van de Hamming-afstand eenvoudig, hoewel het belangrijk is om te onthouden dat Hamming-afstand alleen kan worden berekend voor lijnen met dezelfde lengte. U telt eenvoudig het aantal punten op waar de lijnen verschillende waarden hebben. In het bovenstaande voorbeeld zou de Hamming-afstand drie zijn, omdat de lijnen verschillende waarden op drie plekken hebben. Het maken van deze vergelijking wordt echter meer tijdrovend naarmate de lijn met binaire code langer is. Overweeg een iets langer voorbeeld, met twee coderegels: 100110 en 110011. Deze coderegels bevatten beide zes informatiepunten. De waarden zijn verschillend op drie van die punten, dus de Hamming-afstand tussen deze twee lijnen is ook drie. Het berekenen van de Hamming-afstand met een grotere set gegevens wordt ingewikkelder en omvat het gebruik van ingewikkelde vergelijkingen en functies zoals d = min {d (x, y): x, y∈C, x ≠ y}.
Waarom is Hamming-afstand nuttig?
Uit con, kan Hamming afstand willekeurig lijken. Het is echter een belangrijke meting voor codeerders. Hamming-afstand kan codeerders helpen code te schrijven die fouten detecteert en zelfs zelf corrigeert. Het kan mensen ook helpen begrijpen hoe foutgevoelig een code is. De afstand van Hamming is vernoemd naar Richard Wesley Hamming, die de meting eind jaren veertig ontwikkelde toen hij bij Bell Telephone Laboratories werkte. Hoewel Hamming de viering van de innovatie heeft gebagatelliseerd, heeft de technologie-industrie dit opgemerkt en met groot effect gebruikt bij het oplossen van code. Bijna 50 jaar nadat Hamming de meting ontdekte, ontving hij de Eduard Rheim Award for Achievement in Technology van de Eduard Rheim Foundation in Duitsland in 1996. Daarnaast geeft de IEEE, een grote professionele organisatie in de technologiesector, de jaarlijkse Richard W. Hamming Medaille ter ere van hem.