0:00:03.736,0:00:06.049 ある問題に取り掛かろう。 0:00:06.049,0:00:07.761 [風が吹く音] 0:00:14.514,0:00:16.356 アリスとボブは樹上に家を構えて住んでいる。 0:00:16.356,0:00:18.135 2人の家は遠く離れているため、 0:00:18.135,0:00:20.931 互いを目視することはできないが、 0:00:20.931,0:00:23.273 意思疎通を行いたい。 0:00:23.273,0:00:25.054 そこで2つの家の間に、 0:00:25.054,0:00:26.737 針金を張ることにした。 0:00:39.945,0:00:41.651 針金を強く張り、 0:00:41.651,0:00:44.973 末端にブリキの缶を取り付けた。 0:00:52.215,0:00:53.899 そして互いの声を弱い信号として、 0:00:53.899,0:00:55.884 針金越しに送れるようにした。 0:00:58.915,0:01:01.515 [ボブのくぐもった声] もしもし? 0:01:01.515,0:01:05.573 [アリスのくぐもった声] もしもし、聞こえないよ。 0:01:05.581,0:01:08.688 [ボブのくぐもった声] こっちも辛うじて聞き取れるくらいだ。 0:01:08.688,0:01:14.591 [アリスのくぐもった声] 1. 2. 3. 4. 5. 0:01:14.591,0:01:18.299 しかし、問題があった: 0:01:18.299,0:01:20.682 「ノイズ」だ。 0:01:20.682,0:01:22.255 風が強い日は決まって、 0:01:22.255,0:01:24.170 ノイズにかき消され、 0:01:24.170,0:01:26.927 信号を聞き取れない。 0:01:28.897,0:01:30.259 そこで信号のエネルギーをー 0:01:30.259,0:01:32.439 増加させ、ノイズ下でも信号をー 0:01:32.439,0:01:34.931 識別できるようにする必要があった。 0:01:34.931,0:01:37.126 ここでボブに案が閃いた。 0:01:40.446,0:01:42.859 針金をはじく音なら、 0:01:42.859,0:01:46.599 ノイズの中でも認識しやすい。 0:01:46.599,0:01:48.979 そうすると新たな問題が生じた。 0:01:48.979,0:01:53.165 どうすればメッセージを「はじき方」に変換できるだろう? 0:01:56.571,0:01:57.979 さて彼らは、 0:01:57.979,0:02:00.140 遠距離間でボードゲームをしたいため、 0:02:00.140,0:02:03.270 最もありがちなメッセージの1つであるー 0:02:03.270,0:02:06.075 サイコロ2つを振った数値の送信に取り組んだ。 0:02:06.075,0:02:08.630 ここで送信するメッセージは、 0:02:08.630,0:02:10.869 有限個の記号、 0:02:10.869,0:02:13.840 この場合11通りの数値から、 0:02:13.840,0:02:17.090 1つを選択したものとみなせる。 0:02:17.090,0:02:19.997 これを「離散情報源」という。 0:02:23.962,0:02:27.455 最初、彼らは最もシンプルな方法を採用した。 0:02:27.455,0:02:30.610 はじく回数で結果を送信するのだ。 0:02:30.610,0:02:33.803 つまり「3」を送信するためには3回はじく。 0:02:33.803,0:02:35.626 「9」なら9回はじき、 0:02:35.626,0:02:38.176 「12」なら12回はじく。 0:02:38.176,0:02:40.510 しかし、これでは必要以上に時間がかかるとー 0:02:40.510,0:02:43.262 すぐに気付いた。 0:02:44.416,0:02:48.476 経験から、はじくスピードは最大でー 0:02:48.476,0:02:50.919 毎秒2回だと分かった。 0:02:50.919,0:02:53.769 これ以上だと信号が混ざってしまう。 0:02:53.769,0:02:57.340 つまり、毎秒2回弾きが、 0:02:57.340,0:03:00.736 この通信手段の「通信路容量」とみなせる。 0:03:00.736,0:03:05.841 [弾く音] 0:03:05.841,0:03:06.945 それから、最もー 0:03:06.945,0:03:09.745 出やすい目は7だと分かった。 0:03:09.745,0:03:14.355 さて、7を送信するには3.5秒かかる。 0:03:14.355,0:03:20.173 [7回弾く音] 0:03:21.775,0:03:24.486 ここでアリスは、符号化の方法を変えることで、 0:03:24.486,0:03:27.429 ずっと良くできることに気付いた。 0:03:27.429,0:03:29.894 彼女は、それぞれの目が出る確率に、 0:03:29.894,0:03:31.704 簡単な規則がある事に目をつけた。 0:03:31.704,0:03:33.853 2が出るのは1通り。 0:03:33.853,0:03:35.879 3が出るのは2通り。 0:03:35.879,0:03:38.020 4が出るのは3通り。 0:03:38.020,0:03:40.330 5が出るのは4通り。 0:03:40.330,0:03:42.618 6が出るのは5通り。 0:03:42.618,0:03:44.724 7が出るのは6通りで、 0:03:44.724,0:03:46.277 これが最も出やすい。 0:03:46.277,0:03:48.597 8が出るのは5通り。 0:03:48.597,0:03:50.319 9には4通り。 0:03:50.319,0:03:53.728 以下続いて、12では1通りに戻る。 0:03:53.728,0:03:54.886 このグラフは、 0:03:54.886,0:03:57.927 結果ごとの場合の数を表していて、 0:03:57.927,0:04:00.089 明確なパターンが見て取れる。 0:04:00.089,0:04:02.141 それでは、グラフを 0:04:02.141,0:04:05.359 「数値 対 はじく回数」 に変えてみよう。 0:04:05.359,0:04:06.799 彼女は、最も出やすい数であるー 0:04:06.799,0:04:08.110 7を、 0:04:08.110,0:04:12.009 最も短い信号である1回はじきに割り当てた。 0:04:12.009,0:04:14.230 [1回弾く音] 0:04:14.230,0:04:17.125 それからその次に出やすい数を割り当てた。 0:04:17.125,0:04:20.076 同確率の時は、ランダムに選んだ。 0:04:20.076,0:04:22.959 今回は6を2回に、 0:04:22.959,0:04:25.427 8を3回に、 0:04:25.427,0:04:28.232 戻って5を4回に、 0:04:28.232,0:04:30.344 それから9を5回、 0:04:30.344,0:04:33.793 次に5を…と割り当て、最後の12には 0:04:33.793,0:04:36.403 11回はじきを割り当てた。 0:04:36.403,0:04:39.444 すると、最も出やすい7をー 0:04:39.444,0:04:41.800 1秒とかからずに送ることができる。 0:04:41.800,0:04:43.788 大きな改善だ。 0:04:43.788,0:04:46.050 この簡単な改善で、 0:04:46.050,0:04:51.964 同じ時間でも平均的にはより多くの情報を送れるようになった。 0:04:51.964,0:04:54.440 実際、この簡単な例では、 0:04:54.440,0:04:56.020 この符号化手法が最も良い。 0:04:56.020,0:04:57.649 しかし、はじくだけでー 0:04:57.649,0:05:00.030 サイコロ2つの結果を送る、 0:05:00.030,0:05:04.671 もっと速い方法を思いついたなら話は別だ。 0:05:04.671,0:05:08.715 さて、針金で何度か遊んだ後、 0:05:08.715,0:05:11.094 ボブに新たなアイデアが閃いた。