地球の裏側とのテレプレゼンス(自分があたかも遠隔地にいるかのように感じられる技術)の将来性について書かれた文章を読んだのをきっかけに、自分なりにいくつか調べて纏めてみた。もっとも、その文章にはいくつもおかしい点があるように思えたので、自分で調べてみようと思った訳なのだが。通信の分野は正直なところ興味もなく、疎かったのだが、調べてみると色々と面白かった。調べていて感じたのは、この分野の研究は、ここ10年で色々と進展している一方で、過去の、ときには他分野の有効な研究を見落として、素人目にも時代遅れと感じる実験や考察によるレポートも散見された。
まず視覚、聴覚、触覚、味覚、嗅覚という五感のうち、スカイプ技術でも対象になっている視覚、聴覚がまずはベースになる。最近いくつかの会社が「テレプレゼンス」と称した、スカイプの高性能版を出している。ただ、当然のことながらその他の3つの感覚も取り入れた技術も研究されているし、実用化されているものもあるようだ。
これは外科手術への応用記事
さて、この外科手術の記事にあるように、操作する人は患者と同室でも、別室でも、場合によっては別の建物でも良いことになっている。では、地球の裏側ではどうなのだろうか。この場合、問題になって来るのは遅延や同期の問題である。地球を半周するには光速でも約0.07秒、通信速度も光速を超えることはできない上に、経路や情報処理にかかる時間も必要なので、どれだけ少なく見積もっても片道0.1秒、いやもっと必要なのではないだろうか。では、この遅延が致命的かというと結局は用途次第なのではないだろうか。
例えば、ただ遠隔地のレクチャーを聞くだけなら、どれだけ遅延があろうと特には問題にはならないが、会話をするとなると若干問題になる。それがもし乗り物の操作とかになるともっと問題になるが、もしかすると一番問題になるのはお互いが遠隔地から操作する相手と対戦するボクシングゲームなどかもしれない。ちなみに卓球やテニスゲームは相手が打ったときのパラメーターだけ送信すれば、そのあとの球の軌道、打ち返すときの計算はこちら側でできるのでハードルは低いが、ボクシングは、もし、グローブに加速度センサーを付けて、体の動きもカメラなどで把握して、当たり判定、当たったときのフィードバックまで盛り込むと、かなりハードルが高いように思われる。
ちなみに、音楽の二重奏の練習は、ただ、相手の演奏に合わせて弾くだけなら、少々の遅延は大丈夫である。むしろ極端な話、お互いが10分前に録音した音源をメールで送って、再生しながら演奏しても一応は成り立つ訳だから。でも、それではもちろん、相手の変化に合わせて、こちらも対応し、さらに相手が、といった二重奏の醍醐味は無くなってしまうし、他にも問題はでてくる。また、他の多くの例でもそうだが、特にこの場合は映像と音声の同期が大事になる。合図しているのに弾き始めないとか、弾いている振りをしているのに音が出ないとかでは問題がある。
同期の問題(例えば映像と音声のズレ)は適当なバッファ(短期的にデータを保存しておいて、速度を合わせること)を取ることにより、ある程度は解消されるが、バッファを大きく取りすぎると遅延が大きくなりすぎることになる。つまり一般に、単方向の通信の場合はバッファを大きくとれば良く、双方向の場合は遅延と同期とが折衝する場所を見つけなければならない。
力覚・聴覚・視覚メディア伝送におけるメディア同期制御に関する研究
が分かりやすい。このレポートによると単方向の場合、遅延の標準偏差の倍程度のバッファを取れば良いようだ。双方向の場合はそれだけとると遅延が大きくなり過ぎ、グラフが判読し難いが、標準偏差程度が最適なのかもしれない。ただ、線形的でないだろうし、バッファの技術もいろいろあるだろうし、何よりも用途によっても変わってくるだろうので、その都度最適なバッファ量は考慮する必要がありそうだ。
つまり、バッファを使って同期をとる場合、遅延そのものだけでなく、その標準偏差(ばらつき度合い)も大事な要素になってくる訳である。そうすると、例え 地球の反対側と0.1秒で通信できるようになったとしても、コンスタントにその速度が出るかが重要である。ちなみに先のレポートの場合は0.1秒の遅延は双方向ではかなりのマイナスポイントとされている。というより、グラフの範囲の外である。
特に力覚(触覚)を双方向で扱う場合、遅延の問題は顕著になるのかもしれない。では、全く望みがないかと言えば、例えば、地球の裏側にある車をシミュレーターのようなものを使って操縦することを考えてみよう。もちろん超低速なら特に問題は起こらないが、ある程度の速度を出すとすると、あらかじめ現地の地形をスキャンしてインプットしておくと良いかもしれない。また、操縦による車の挙動(傾きなど)のフィードバックも現地の車のセンサーのデータを受信して反映するのではなく、操縦シミュレーター側で計算して、「この操作ならこの傾きのはずだ」という計算を用いれば良いかもしれない。ただ、現地とのズレが起こると困るのでそれは適宜修正を入れる必要が有る訳だが。また、シミュレータには組み込まれていないアクション、突然の路面変化や鹿の飛び出しなどへの対応は通信速度に依存する。ちなみに、これと似た技術は昔から、ネットワーク対戦ゲームで使われている。
低速インターネット向け通信アクションゲーム
にあるように「ゲーム世界を同一の空間座標系を有し,プレイヤー A の操作するキャラクタが属する世界 A とプレイヤー B の操作するキャラクタが属する世界 B に分ける.ゲーム機 A では世界 A をプレイヤー A の入力に即応して更新し,ゲーム機 B では世界 B をプレイヤー B の入力に即応して更新する.さらにゲーム機 A では世界 B の様子を遅れて再現し,ゲーム機 B では世界 A の様子を遅れて再現することで通信遅延を吸収する.」という仕組みである。ただ、ここでもその用途の向き不向きが示されているように、「補正の際に一旦プレイヤーに提示されたイベントなどが取り消されることもあるため,パズル性を伴うゲームを行うのには難がある.」などの問題が有る。
昔のネットワーク対戦ゲームはエアーコンバット(戦闘機対戦)ものが多かったのも納得出来る。機関砲は1発1発の当たり外れを評価しなくても、照準と距離を基に確率的に出せばよい訳だし、ミサイルは1発発射してしまえば、そのあとの軌道の計算は相手方の世界でしてもらえば、通信の負担から解放される。また、接触戦はかなり珍しく、ある程度の距離を保った状態で、連続的に少ない量だけ機体の位置は変位し、しかも急停車などは然程起こらないので、低速度回線での対戦ゲームには非常に向いていると言えるのだろう。
では、より遅延の少なさ、同期の精度が求められる用途では地球の裏側ではどうしようもないかというと、例えば「時差馴応」を応用することにより、若干の可能性が開けるのではという気がしている。
事前の経験に影響されるヒトの行動や知覚
が分かりやすい。しかもただ順応するという現象だけでなく、順応のモデルもある程度はっきりしているようだ。「こういったヒトの情報処理の特性を明らかにすることで、スポーツ選手の技能解明につながったり、将来的にはロボットの情報処理にも役立つのではないかと思います。」と書かれている通り、可能性はあると思う。ただ、この場合も遅延はもちろん、遅延の標準偏差を最小限にすることが必要不可欠と思われる。
個人的にはロボットの情報処理よりも、スポーツ選手の技能解明の方にむしろ興味が合ったりするのだが。(卓球もっと強くなりたいな・・・)
ちなみに同じ方が、野球でバッターがコースを決め打ちすることや、ピッチャーが外角でカウントを整えて内角勝負するといったことが合理的であることを示唆するレポートを書いていて非常に興味深い。
知覚-運動系におけるベイズ統合-ヒット率を最大化す るための脳の方略-
と言う訳で、テレプレゼンスの話が結局はスポーツに帰着した訳で、色々な話が繋がるのは面白いですね。