Hoe de Hamming-afstand te berekenen

Tegenwoordig omvat bijna elk aspect van het moderne leven de overdracht van digitale informatie, hetzij tussen individuele mensen of tussen individuele servers of systemen. Wanneer u uw bankrekeningen online beheert, uw sociale media-pagina's bijwerkt of zelfs een dvd afspeelt met een aangesloten dvd-speler naar uw televisie, informatie gaat digitaal van de ene plaats naar de andere, hetzij via een snoer of via een draadloze verbinding signaal. Om deze informatie van de ene locatie naar de andere te laten gaan, moet deze worden overgedragen via computercode. In deze 'taal' beweegt informatie 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 gaat, kan betekenen dat informatie niet goed wordt overgebracht, wat veel problemen kan veroorzaken voor de computergebruiker. 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)

instagram story viewer

Hamming-afstand verwijst naar het aantal punten waarop twee regels binaire code verschillen, bepaald door simpelweg het aantal punten op te tellen waar twee regels code verschillen. De afstand tussen de twee codewoorden 10101010 en 0101010 is bijvoorbeeld vier: hoewel dit zonder context misschien niet veel betekent, zou dit kunnen betekenen dat op vier punten, fouten in de code hebben ertoe geleid dat een audiobestand niet goed wordt afgespeeld, dat de beelden op een televisie niet correct worden weergegeven of dat een kritieke computerfunctie 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 in het begin wat verwarrend zijn om te begrijpen, dus overweeg dit eenvoudige voorbeeld: een tekstbericht van één woord wordt verzonden van telefoon A naar telefoon B. Wanneer vertaald naar binaire code, luidt de regel code die het sms-bericht op telefoon A vertegenwoordigt "101" en op telefoon B de regel code leest "010." Als je deze lijnen vergelijkt, kun je zien dat er op elk van de drie plekken verschillende symbolen staan. Dit kan een teken zijn dat het bericht niet goed 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 de Hamming-afstand alleen kan worden berekend voor lijnen met dezelfde lengte. Je telt gewoon het aantal plekken op waar de lijnen verschillende waarden hebben. In het bovenstaande voorbeeld zou de Hamming-afstand drie zijn, omdat de lijnen op drie plaatsen verschillende waarden hebben. Het maken van deze vergelijking wordt echter tijdrovender naarmate de regel binaire code langer is. Overweeg een iets langer voorbeeld, met twee regels code: 100110 en 110011. Deze regels code bevatten beide zes informatiepunten. De waarden zijn verschillend in 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 Distance nuttig?

Uit context kan Hamming-afstand willekeurig lijken. Het is echter een belangrijke meting voor programmeurs. Hamming-afstand kan codeerders helpen code te schrijven die fouten detecteert en zelfs die fouten zelf corrigeert. Het kan mensen ook helpen begrijpen hoe foutgevoelig een code is. Hamming-afstand 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 bagatelliseerde, merkte de technologie-industrie het op en gebruikte het met veel succes bij het oplossen van problemen met code. Bijna 50 jaar nadat Hamming de meting ontdekte, kreeg hij in 1996 de Eduard Rheim Award for Achievement in Technology van de Eduard Rheim Foundation of Germany. Daarnaast geeft de I.E.E.E., een grote professionele organisatie in de technologiesector, de jaarlijkse Richard W. Hamming-medaille ter ere van hem.

Teachs.ru
  • Delen
instagram viewer