コンテンツ
今日、現代生活のほとんどすべての側面には、個人間、または個々のサーバーまたはシステム間のデジタル情報の転送が含まれます。銀行口座をオンラインで管理したり、ソーシャルメディアページを更新したり、テレビに接続されたDVDプレーヤーでDVDを再生したりすると、コードを介して、または無線信号を介して、ある場所から別の場所にデジタルで情報が移動します。この情報をある場所から別の場所に渡すには、コンピューターコードを介して転送する必要があります。この「言語」では、情報はバイナリコードと呼ばれる1と0の組み合わせを介して移動します。あるシステムから別のシステムに移動するバイナリコードのエラーは、情報が適切に伝達されないことを意味し、コンピューターユーザーに多くの問題を引き起こす可能性があります。ハミング距離は、コードの違いを理解する方法です。これを使用してエラーを修正できます。
TL; DR(長すぎる;読まなかった)
ハミング距離は、2行のバイナリコードが異なるポイントの数を指し、2行のコードが異なるスポットの数を単純に加算することで決定されます。たとえば、2つのコードワード10101010と01011010の間の距離は4です。これはconなしではあまり意味しないかもしれませんが、4つのポイントでコードのエラーが原因でオーディオファイルが正しく再生されず、テレビが正しく表示されない、または重要なコンピューター機能が誤って解釈される。
ハミング距離とは
与えられた2行のコードのハミング距離は、行のバイナリコード値が異なるポイントの数です(コードの2行が同じ長さであると仮定)。これは最初のパスで理解するのが少しわかりにくいので、この簡単な例を考えてみましょう。1語が電話Aから電話Bに送信されます。バイナリコードに変換されると、電話Aを表すコード行は「101」になります電話機Bでは、コード行に「010」と表示されます。これらの線を比較すると、3つのスポットのそれぞれに異なるシンボルがあることがわかります。これは、が適切に送信されなかったことを示している可能性があります。
ハミング距離の計算方法
単純なシナリオでは、ハミング距離の計算は簡単ですが、ハミング距離は同じ長さのラインに対してのみ計算できることを覚えておくことが重要です。線の値が異なるスポットの数を単純に合計します。上記の例では、線は3つのスポットで異なる値を持っているため、ハミング距離は3になります。ただし、バイナリコードの行が長いほど、この比較を行うのに時間がかかります。 2行のコードである100110と110011の少し長い例を考えてみましょう。これらのコード行には両方とも6つの情報ポイントが含まれています。これらの3つのポイントで値が異なるため、これら2つのライン間のハミング距離も3です。より大きなデータセットでハミング距離を計算すると、より複雑になり、d = min {d(x、y):x、y∈C、x≠y}のような複雑な方程式と関数を使用する必要があります。
ハミング距離が有用な理由
意外なことに、ハミング距離は任意に見える可能性があります。ただし、これはコーダーにとって重要な測定です。ハミング距離は、コーダーがエラーを検出し、さらにそれらのエラーを修正するコードを書くのに役立ちます。また、コードがエラーを起こしやすいことを人々が理解するのにも役立ちます。ハミング距離は、1940年代後半にベル電話研究所で働いていたときに測定を開発したリチャードウェスリーハミングにちなんで命名されました。ハミングはイノベーションの称賛を軽視しましたが、テクノロジー業界は注意を払い、コードのトラブルシューティングを行う際に大きな効果を発揮しました。ハミングが測定値を発見してから約50年後、1996年にドイツのエドゥアルドハイム財団からエドゥアルドハイム賞が授与されました。さらに、テクノロジーセクターの大規模な専門組織であるIEEEは、毎年リチャードW.ハミングメダルに敬意を表して。