個人用知的移動体プロジェクト

プロジェクトリーダー

長尾 確

プロジェクトメンバー

1 はじめに

個人用知的移動体は、搭乗者である人間や、自分を取り巻く環境に適応することで、搭乗者を支援する知的な乗り物です。 この研究が目指すのは、乗り物の知能化によってもたらされる物理世界と情報世界の密な連携です。私たちが生活している物理世界は様々な形で情報世界、つまりコンピュータとネットワークによって実現される仮想的な世界とつながっています。

近年、さまざまな情報サービスが提供されるようになってきています。近い将来、人が意識することなく、身近にあたりまえのように情報世界が存在する環境が実現すると思われます。

そのひとつの形が、現在のスマートフォンのように人が情報端末を持ち歩いて必要に応じて情報世界にアクセスするというやり方ではなく、情報環境そのものがが人と共に移動し、いつでもどこでも情報世界と結びついているというスタイルです。

私たちが研究しているのは、そのような考え方(これを搭乗型コンピューティングと呼びます)を具体化するための、乗り物およびそのインフラ技術です。

この研究で開発した乗り物をAT (Attentive Townvehicle)と呼んでいます。ATには、様々なタイプがあり、現在、10号機と11号機が存在します(図1参照)。10号機と11号機の特徴は、搭乗者の姿勢(体の動き)を認識するセンサーを持っていることです。

AT10号機と11号機

図1: AT10号機と11号機

現在、ATプロジェクトでは、特に、移動体の自動走行、屋内環境の自動地図生成、移動体の直感的なユーザーインタフェース、移動体間の連携・協調に力を入れています。 それぞれについて、以下に説明します。

2 移動体の自動走行

ATは自律的に移動する仕組みを持っています。この仕組みは移動ロボットの基本的な機能として数多く研究されており、その多くは次の4つのステップによって実現されます。

  1. 環境地図生成 ATが環境を認識するために事前に用意すべき地図(環境地図)の生成の仕組みです。
  2. 自己位置推定 1で作られた環境地図上で現在の自分の姿勢(位置と向き)を推定する機能です。
  3. 経路生成 指定された目的地まで環境地図上のどこを走るかを決定する機能です。
  4. 経路を走行するための駆動系の制御 3で生成した経路を実際に走行するための制御手法です。

1については、移動体を適当に走らせ、その時のセンサーのログ情報から図2のような環境地図を作成します。 白い領域は何もない走行可能な領域、黒い領域は壁などの障害物によって通れない領域、灰色の領域はセンサーで取得できなかった未知の領域を表します。

環境地図

図2: 環境地図

2については、1で作った環境地図と現在のセンサーの値を比べることで確率的に自分の姿勢を推定します。そのためにパーティクルフィルタという手法を用いています。3については、まず、図3の水色の点と線で示すような、通行可能な領域のグラフ構造を生成します。移動体の現在位置と目的地が与えられたときに、このグラフ構造にAスター探索法というアルゴリズムを適用して、最短の経路を選択します。

経路生成

図3: 経路生成

4については、生成した経路をなめらかに走行するために、生成した経路上で目標とする点(図4の緑色の円で示される点)を現在位置と経路から逐次決定し、その点へ行くための左右のタイヤの速度(回転方向と速さ)を決定します(図4の青の矢印)。

ATの制御

図4: ATの制御

このようにしてATは自動走行を行います。

3 屋内環境の自動地図生成

環境地図は移動体が自動走行するために必要ですが、人間が屋内環境を把握するためには、より詳細な地図が必要です。

そこで、私たちは無人で走行するタイプの移動体(自律移動ロボット)を作成し、3次元情報を含む詳細な地図を生成する仕組みを実現しました。

3.1 小型無人移動体を用いた屋内3次元地図の自動生成

複雑な建物内の形状を直感的に表現するためには立体的な地図が適しています。しかし、3次元地図の作成には非常に高いコストがかかり、屋内の状況が頻繁に変化する場合などの運用が困難です。

そこで、自律走行可能な小型無人移動体(SUV: Small Unmanned Vehicle)を用いて屋内の様々なデータを自動的に収集し、そのデータに基づいて3次元地図の生成を行う仕組みを実現しました。 SUVは直径30cmの円柱状の2輪走行機構にレーザーレンジセンサーとRGB-Dカメラ(Kinectセンサー)を装着し、ノートPCを搭載したものです(図5参照)。

小型無人移動体SUV

図5: 小型無人移動体SUV

SUVは前述の環境地図の生成にも利用されます。

3次元地図の生成は、データの収集、センサーデータの重ね合わせ、点群データのポリゴン化の大きく三つの手順から成ります。データの収集では、SUVのRGB-Dカメラのセンサーデータとデータ記録時のSUVの位置情報を同時に収集します。

センサーデータの重ね合わせでは、RGB-Dカメラのフレーム間の3次元の点群と画像特徴点、およびセンサーデータと環境地図の対応関係を利用して重ね合わせを行います。

センサーデータは点の集合であり、重ね合わせただけではデータ量が非常に大きく扱いづらいため、点群データのポリゴン化では、建物の内装を構成する主な要素である壁や床といった平面を点群データから抽出しポリゴン化することで、3次元地図のデータ量を大幅に削減しました。

実際に生成した3次元地図を図6に示します。

3次元地図

図6: 3次元地図

この3次元地図がSUVやATを用いた実世界情報サービスに利用されます。

3.2 屋内3次元地図のWebサービス化による実世界情報の高度利用

多くのユーザーが利用する施設にとって、実際に施設を利用したユーザーからの情報は非常に有益で、その情報を集積し、共有する事は、他の多くのユーザーの施設内での活動を促進させるために役に立つと思われます。そこで、SUVを用いて自動生成した3次元地図をWeb上で利用可能にし、ユーザーが地図にアノテーションを施すことで、実世界の情報を高度に利用する仕組みを開発しました。

アノテーションを含む3次元地図を利用した例として、3次元地図とSUVを用いた位置情報に基づく高度なナビゲーションシステムを実現しました。地図ブラウザからSUVに目的地を伝達すると、その場所まで先導してもらうことができます。

ナビゲーションの様子を図7に示します。この図の左はナビゲーションの様子を表し、右はユーザーのタブレットで操作できる地図ブラウザに表示されている内容を表しています。

SUVによる道案内

図7: SUVによる道案内

その際、SUVの位置情報と連動して3次元地図を変化させることができ、アノテーションを利用して経路上にある対象物を紹介することができます。

さらに、地図の利用履歴をライフログ化しデータを蓄積し続けることで、日常的な人の流動などの人間の社会活動を精密に再現し、詳細に分析することが可能となります。

環境地図は移動体が自動走行するために必要ですが、人間が屋内環境を把握するためには、より詳細な地図が必要です。

そこで、私たちは無人で走行するタイプの移動体(自律移動ロボット)を作成し、3次元情報を含む詳細な地図を生成する仕組みを実現しました。

4 移動体の直感的なユーザーインタフェース

近年、ジェスチャ認識デバイスが急速に発達してきており、それに伴ってジェスチャ認識技術も急速に発達してきています。非接触型ユーザーインタフェースとしてのジェスチャは、機械の操作インタフェースとしてボタンやリモコンなどを使用するよりも直感的であり、また、操作者の大まかな動きで機械を操作することが可能となるため、さまざまな分野への応用が期待されています。

本研究では日常的に用いられる指さし動作に着目し、搭乗者の直感に合ったATの操縦インタフェースとして、ATの搭乗者が指さしている対象を認識することで、自動走行の目的地を決定する仕組みを実現しました。

ATには、Kinectと呼ばれる深度センサーが搭載されており、これによりATは搭乗者の肩・肘・手などの関節がどの辺りにあるのかという情報を取得することが可能となります。

KinectとKinectが取得した搭乗者の上半身の骨格情報を図8に示します。

Kinectよるボーントラッキング

図8: Kinectよるボーントラッキング

また、前述のように、屋内3次元地図を作成しているため、ATはこの3次元地図から周囲の環境の中で自動走行の目的地となり得る場所や物体の座標を取得することが可能となります。

この情報とセンサーから取得した搭乗者の骨格情報を組み合わせることで、ATは搭乗者が指をさしている対象を認識することが可能となります。

図9に搭乗者の骨格と指さしの対象となる場所や物体の座標を立体的に表している様子を示します。なお、搭乗者の指さし方向は搭乗者の肩・肘・手の座標から求めています。

指さし対象認識

図9: 指さし対象認識

ATは、このようにして得られた搭乗者の指さし方向の直線と指さしの対象となる場所や物体の座標との距離を計算し、搭乗者が指さしていると思われる対象を認識し、その場所に向かって自動走行の経路を作成することができます。

5 移動体間の連携・協調

ATとSUV、あるいはAT同士が連携・協調する仕組みについても研究を行っています。

5.1 小型無人移動体との連携による個人用知的移動体の安全自動走行

自動走行する移動体の問題の一つは搭乗者の安全性です。

この問題に対して移動体自身が持つセンサーでは十分に対処できないため、いかに環境側に周囲の情報を収集し伝達する仕組みを実現するか、ということが重要となります。

そこで、私たちは、前述の小型無人移動体(SUV)をATの拡張センサーとして用いる手法を研究しています。

具体的には、ATが走行する経路上で、死角等があり特に走行に注意するべき場所を自動で検出して、その場所に小型無人移動体が自律的に移動し、ATの代わりに周囲の状況をセンシングすることでATの安全自動走行を実現します。

さらに、大規模な実験による評価のためにシミュレータを作成し、この手法がATの安全性を向上させるのに効果的であることを確認しました。

ATの搭乗者が目的地を入力すると、ATは目的地まで最短経路を計算し、その経路をSUVに送信します。走行経路を共有することにより、ATとSUVは同時に同じ経路の走行することができます。

図10の左は実際にATとSUVが連携走行している様子です。また、図10の右は連携走行時にATのコンソールに表示される情報です。

ATとSUVの連携

図10: ATとSUVの連携

このコンソール画面には、環境中の地図の中に、通信で得られるSUVの位置とセンサー情報(ピンク色)と、自身の位置とセンサー情報(青色)が表示されます。 この情報を使い、ATは自身のセンサーでは死角となる領域をセンシングすることができます。

SUVはATの前をただ走行するだけではなく、経路上に死角等があり特に走行に注意するべき場所(注意区間)を重点的にセンシングするように走行します。注意区間は環境の壁や静止障害物などの位置関係を表す地図(環境地図)を使って検出します。経路が計算されると、その経路上の、左右の初めて視認できる(つまり、移動体がセンシングできる)領域が急増する区間を注意区間として検出します。

図11に、環境地図上で現在位置と目的地を入力したときに検出された注意区間を示します。

注意区間

図11: 注意区間

さらに、私たちは、SUVの連携走行によってATの自動走行がどの程度安全になっているのかを評価するために、3Dグラフィックによって構築された仮想世界で大規模実験を行っています。

図12はシミュレータによって検出された、ATが単体走行をしている際の危険な状況の一例です。

ビークルシミュレータ

図12: ビークルシミュレータ

実世界に近い条件で、SUVと連携走行する状況とそうでない状況でのATの自動走行を、数多く繰り返してシミュレーションを行いました。 蓄えられたログデータベースから、どのような頻度で危険な状況があったのかを調査することによって、SUVがATの安全性を向上させるのに効果的であることを確認しました。

5.2 交差点における複数移動体の協調による安全走行

複数の移動体が交差点に接近している状況で、すべての移動体が停止せずに走行できれば移動の効率や快適さが向上すると思われます。私たちは、自動走行する複数の移動体が互いに協調し、適切に速度調整を行うことで、衝突する危険性を避けつつ、停止せずに交差点を走行する仕組みを研究しています。

その特徴は、移動体間の情報の共有の仕方にあります。同じ環境地図を共有している移動体は、位置情報サーバーと呼ばれる、複数移動体の位置と走行状況と経路を管理しているサーバーと通信し、その位置と速度に関する情報を常に送信しています。その情報から、交差点でニアミスする可能性を計算し、その可能性の高い移動体に通知します。

通知された複数の移動体は、ネゴシエーションプロトコルを用いてお互いの利益が均衡する戦略(ここでは速度調整)を行って、それに基づいて交差点を走行します。

図13は2台のATがお互いに協調して交差点で停止することなく、ぶつからずに走行している様子です。

交差点におけるAT間協調

図13: 交差点におけるAT間協調

このように、私たちは、ATやSUVを用いて、さまざまな研究を行っています。