"自律的に行動するロボットであって、自己とすれ違う歩行者の軌跡を示す歩行者モデルが記憶された記憶手段、自己の位置を検出する第1検出手段、歩行者の位置を検出する第2検出手段、前記第1および第2検出手段の検出結果と前記歩行者モデルとに基づいて自己とすれ違う歩行者の軌跡を予測する予測手段、および前記予測手段の予測結果に応じて自己の回避行動を決定する回避行動決定手段を備える、ロボット。前記予測手段は、前記歩行者モデルに従って予測した予測軌跡と前記第2検出手段が検出した位置に基づく実測軌跡との一致度合いを計算し、計算した一致度合いが閾値よりも高い場合には前記歩行者モデルに従って当該予測軌跡から後の軌跡を、低い場合には前記歩行者モデルに基づく補間によって当該実測軌跡から後の軌跡をそれぞれ予測する、請求項1記載のロボット。前記回避行動決定手段は、前記予測手段の予測結果に基づいて、自己とすれ違う歩行者を、当該歩行者が自己を大きく避ける場合には小さく、当該歩行者が自己を避けないか小さく避ける場合には大きく、避けるように自己の回避経路を計算する計算手段を含む、請求項1または2記載のロボット。前記回避行動決定手段は、前記予測手段の予測結果および前記計算手段の計算結果に基づいて、自己とすれ違う歩行者との間の最近接距離が閾値以上であるか否かを判別する判別手段、および前記判別手段によって最近接距離が閾値以上であると判別された場合に自己を前記計算手段の計算結果に従って移動させるための移動制御情報を作成する第1作成手段を含む、請求項3記載のロボット。前記回避行動決定手段は、前記判別手段によって最近接距離が閾値未満であると判別された場合に自己を停止させるための移動制御情報を作成する第2作成手段をさらに含む、請求項4記載のロボット。前記回避行動決定手段は、前記判別手段によって最近接距離が閾値未満であると判別された場合に音声および/または身振り手振りによって当該歩行者の回避行動を誘発する動作を行わせるための動作制御情報を作成する第3作成手段をさらに含む、請求項5記載のロボット。移動体を自律的に移動させるための制御システムであって、前記移動体とすれ違う歩行者の軌跡を示す歩行者モデルが記憶された記憶手段、前記移動体の位置を検出する第1検出手段、歩行者の位置を検出する第2検出手段、前記第1および第2検出手段の検出結果と前記歩行者モデルとに基づいて前記移動体とすれ違う歩行者の軌跡を予測する予測手段、および前記予測手段の予測結果に応じて前記移動体の回避経路を計算する計算手段を備える、制御システム。移動体を自律的に移動させるための制御システムのコンピュータを、前記移動体とすれ違う歩行者の軌跡を示す歩行者モデルが記憶された記憶手段、前記移動体の位置を検出する第1検出手段、歩行者の位置を検出する第2検出手段、前記第1および第2検出手段の検出結果と前記歩行者モデルとに基づいて前記移動体とすれ違う歩行者の軌跡を予測する予測手段、および前記予測手段の予測結果に応じて前記移動体の回避経路を計算する計算手段として機能させる、制御プログラム。ところで、一般に、歩行者同士がすれ違う際には、双方が回避行動をとるつまり進路を少しずつ譲り合うことが多い。歩行者は、すれ違う相手がロボットの場合にも回避行動をとる可能性が高く、むしろ相手が人の場合よりも大きい回避行動をとる傾向が見られる。そこで、歩行者も回避行動をとると予想される場合には、ロボットは、自己の回避行動を小さくすることで、周囲の通行への影響を抑制しながら歩行者と安全にすれ違うことができる。しかしながら、上記の背景技術では、歩行者側が回避行動をとる可能性について何ら考慮していないので、ロボット側の回避行動を制御することができなかった。それゆえに、この発明の主たる目的は、新規な、自律行動型のロボットを提供することである。この発明の他の目的は、歩行者とすれ違う際に当該歩行者の回避行動軌跡を予測することで、周囲の通行への影響を抑制しながら歩行者と安全にすれ違うことができる、自律行動型のロボットを提供することである。この発明は、上記の課題を解決するために、以下の構成を採用した。なお、括弧内の参照符号および補足説明等は、本発明の理解を助けるために後述する実施の形態との対応関係を示したものであって、本発明を何ら限定するものではない。第1の発明は、自律的に行動するロボットであって、自己とすれ違う歩行者の軌跡を示す歩行者モデルが記憶された記憶手段、自己の位置を検出する第1検出手段、歩行者の位置を検出する第2検出手段、第1および第2検出手段の検出結果と歩行者モデルとに基づいて自己とすれ違う歩行者の軌跡を予測する予測手段、および予測手段の予測結果に応じて自己の回避行動を決定する回避行動決定手段を備える。第1の発明では、ロボット10は、自己ロボット自身とすれ違う歩行者の軌跡を示す歩行者モデル150を記憶手段140に記憶しており、自己の位置を第1検出手段S5で、歩行者の位置を第2検出手段S7でそれぞれ検出して、これらの検出結果と歩行者モデルとに基づいて、自己とすれ違う歩行者の軌跡を予測手段S39~S45,S61~S65で予測する。そして、この予測結果に応じて、自己の回避行動を回避行動決定手段S67~S75で決定する。なお、歩行者が自己とすれ違うか否かは、たとえば、歩行者および自己が共に回避行動をとらなかったと仮定して、歩行者および自己それぞれについて、現時点T=0までの軌跡に基づいて所定時間後T=T0までの軌跡を予測し、予測した2つの軌跡を比較することにより判定する。ある実施例では、時刻T0におけるロボットの位置を中心とする半径Dのすれ違い判定円を利用して、時刻T0以前に歩行者がすれ違い判定円内に入ればすれ違うと判定し、時刻T0以前に歩行者がすれ違い判定円内に入らなければすれ違わないと判定する。第1の発明によれば、自己とすれ違う歩行者の軌跡を予測して自己の回避行動を決定するので、周囲の通行への影響を抑制しながら歩行者と安全にすれ違うことができる。第2の発明は、第1の発明に従属するロボットであって、予測手段は、歩行者モデルに従って予測した予測軌跡と第2検出手段が検出した位置に基づく実測軌跡との一致度合いを計算しS39~S45、計算した一致度合いが閾値よりも高い場合には歩行者モデルに従って当該予測軌跡から後の軌跡を、低い場合には歩行者モデルに基づく補間によって当該実測軌跡から後の軌跡をそれぞれ予測するS61~S65。なお、補間は、ある実施例では線形補間であるが、非線形補間でもよい。第2の発明によれば、ある時点T=T0-T1までの予測軌跡および実測軌跡の一致度合いに応じて、その後の軌跡の予測方法を切り換える具体的には、一致度合いが高ければ歩行者モデルに従う予測を継続し、一致度合いが低ければ歩行者モデルに基づく補間による予測に切り換えるので、歩行者モデルを用いて精度よく軌跡を予測することができる。第3の発明は、第1または第2の発明に従属するロボットであって、回避行動決定手段は、予測手段の予測結果に基づいて、自己とすれ違う歩行者を、当該歩行者が自己を大きく避ける場合には小さく、当該歩行者が自己を避けないか小さく避ける場合には大きく、避けるように自己の回避経路を計算する計算手段S67を含む。第3の発明によれば、自己とすれ違う歩行者との間の距離を極力一定以上に保つことができる。第4の発明は、第3の発明に従属するロボットであって、回避行動決定手段は、予測手段の予測結果および計算手段の計算結果に基づいて、自己とすれ違う歩行者との間の最近接距離が閾値以上であるか否かを判別する判別手段S69、および、判別手段によって最近接距離が閾値以上であると判別された場合に自己を計算手段の計算結果に従って移動させるための移動制御情報168aを作成する第1作成手段S71を含む。第4の発明によれば、歩行者と一定以上の距離を保って安全にすれ違うことができる。第5の発明は、第4の発明に従属するロボットであって、回避行動決定手段は、判別手段によって最近接距離が閾値未満であると判別された場合に自己を停止させるための移動制御情報168aを作成する第2作成手段S73をさらに含む。第5の発明によれば、一定以上の距離を保てない場合には緊急停止することで、安全性が高まる。第6の発明は、第5の発明に従属するロボットであって、回避行動決定手段は、判別手段によって最近接距離が閾値未満であると判別された場合に音声および/または身振り手振りによって当該歩行者の回避行動を誘発する動作を行わせるための動作制御情報168bを作成する第3作成手段をさらに含む。第6の発明によれば、一定以上の距離を保てない場合には、自ら緊急停止するだけでなく、歩行者側の回避行動を誘発することで、いっそう安全性が高まる。第7の発明は、移動体10Aを自律的に移動させるための制御システム100であって、移動体とすれ違う歩行者の軌跡を示す歩行者モデル150が記憶された記憶手段140、移動体の位置を検出する第1検出手段S5、歩行者の位置を検出する第2検出手段S7、第1および第2検出手段の検出結果と歩行者モデル150とに基づいて移動体とすれ違う歩行者の軌跡を予測する予測手段S39~S45,S61~S65、および予測手段の予測結果に応じて移動体の回避経路を計算する計算手段S67を備える。第8の発明は、制御プログラム142,144であって、移動体10を自律的に移動させるための制御システム100のコンピュータ12を、移動体とすれ違う歩行者の軌跡を示す歩行者モデル150が記憶された記憶手段140、移動体の位置を検出する第1検出手段S5、歩行者の位置を検出する第2検出手段S7、第1および第2検出手段の検出結果と歩行者モデル150とに基づいて移動体とすれ違う歩行者の軌跡を予測する予測手段S39~S45,S61~S65、および予測手段の予測結果に応じて移動体の回避経路を計算する計算手段S67として機能させる。第7,第8の各発明によれば、移動体とすれ違う歩行者の軌跡を予測して移動体の回避経路を計算するので、周囲の通行への影響を抑制しながら移動体を歩行者と安全にすれ違わせることができる。この発明によれば、歩行者とすれ違う際に当該歩行者の回避行動軌跡を予測することで、周囲の通行への影響を抑制しながら歩行者と安全にすれ違うことができる、自律行動型のロボットが実現される。また、周囲の通行への影響を抑制しながら移動体を歩行者と安全にすれ違わせることができる、制御装置および制御プログラムが実現される。この発明の上述の目的,その他の目的,特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。図1を参照して、この発明の一実施例である移動ロボット10は、自律行動型のロボットであり、予め記憶した地図間取り図情報および自身に備わる各種センサからのセンサ情報に基づいて自律的に行動する移動および動作することができる。最初、概要を説明する。移動ロボット10は、複数たとえば4つのレーザレンジファインダ以下LRF40を備えている。LRF40は、自身から目標歩行者,障害物などないし周辺環境通路沿いの壁面,道路沿いの建造物などまでの距離を計測し、距離データを出力する。移動ロボット10は、自身が行動する環境En:図3参照に関する地図情報162:図4参照を記憶しており、この地図情報に基づいて移動しながら、LRF40から距離データおよび図2に示す右左の車輪速度センサ112aおよび112bの出力データを取得して、取得した距離データ等に基づいて環境における移動ロボット10自身の位置自己位置および移動方向を計算し、さらに目標歩行者の位置および移動方向をも計算する。ここで、LRFは一般に、レーザーを照射し、それが目標で反射して戻ってくるまでの時間に基づいて、当該目標までの距離を計測するものである。LRF40は、たとえば、トランスミッタ図示せずから照射したレーザーを回転ミラー図示せずで反射させて、前方を扇状に一定角度たとえば0.5度ずつスキャンすることで、単に目標までの距離を計測するだけでなく、目標の表面に関する2次元距離情報表面の形状を角度および距離の2変数で記述した情報も生成することができる。LRF40からの距離データには、このような2次元距離情報が含まれており、移動ロボット10は、2次元距離情報に基づいて目標を識別することができる。なお、移動ロボット10に搭載されて距離を計測するセンサ距離センサは、LRFに限らず、たとえば赤外線距離センサ,レーダ,ソナーなどでもよい。移動ロボット10では、記憶している地図情報とLRF40からの距離データ2次元距離情報を含む各種のセンサ情報とに基づいて動作制御情報が生成され、この生成された動作制御情報に基づいて各種モータ92~98,110,36aおよび36bやスピーカ64が駆動される。こうして、移動ロボット10の自律的な行動たとえば自動走行,発話動作,身体動作身振り手振りなどが実現される。特に、移動ロボット10は、歩行者とすれ違う際に、歩行者モデル150に基づき歩行者の回避行動移動ロボット10を避けて迂回する軌跡を予測して、周囲の通行への影響も抑制しつつ歩行者との衝突を回避するように、自己の回避行動を決定たとえば回避経路を計算したり緊急停止したり警告音を発したりすることができる。次に、各要素について詳しく説明する。図1は、この実施例の移動ロボット10の外観を示す正面図である。図1を参照して、移動ロボット10は台車30を含み、台車30の下面には右車輪32aおよび左車輪32b特に区別しない場合には車輪32と記すならびに1つの従輪34が設けられる。右車輪32aおよび左車輪32bは、右車輪モータ36aおよび左車輪モータ36b図2参照によってそれぞれ独立に駆動され、台車30ひいては移動ロボット10全体を前後左右の任意方向に動かすことができる。また、従輪34は車輪32を補助する補助輪である。台車30の上には、円柱形のセンサ取り付けパネル38が設けられ、このセンサ取り付けパネル38には、多数の赤外線距離センサ40が取り付けられる。これらの赤外線距離センサ40は、センサ取り付けパネル38つまり移動ロボット10自身と、その周囲の物体人間や障害物などとの距離を測定するものである。なお、この実施例では、距離センサとして、赤外線距離センサを用いるようにしてあるが、赤外線距離センサに代えて、小型のLRF、超音波距離センサまたはミリ波レーダなどを用いることもできるし、これらを適宜組み合わせて用いてもよい。センサ取り付けパネル38の上には、胴体42が直立するように設けられる。また、胴体42の前方中央上部人の胸に相当する位置には、上述した赤外線距離センサ40がさらに設けられており、これによって前方の対象たとえば人間との距離を計測する。また、胴体42には、その側面側上端部のほぼ中央から伸びる支柱44が設けられ、支柱44の上には、アンテナ118ならびに全方位カメラ46が設けられる。アンテナ118は、図示しない外部コンピュータたとえばPCと無線通信を行うためのアンテナであり、PCからの無線信号を受信し、PCに無線信号を送信する。全方位カメラ46は、移動ロボット10の周囲を撮影するものであり、後述する眼カメラ70とは区別される。全方位カメラ46としては、たとえばCCDやCMOSのような固体撮像素子を用いるカメラを採用することができる。なお、これら赤外線距離センサ40,アンテナ118および全方位カメラ46の設置位置は、当該部位に限定されず適宜変更されてもよい。胴体42の両側面上端部人の肩に相当する位置には、それぞれ、肩関節48Rおよび肩関節48Lによって、上腕50Rおよび上腕50Lが設けられる。図示は省略するが、肩関節48Rおよび肩関節48Lは、それぞれ、直交する3軸の自由度を有する。すなわち、肩関節48Rは、直交する3軸のそれぞれの軸廻りにおいて上腕50Rの角度を制御できる。肩関節48Rの或る軸ヨー軸は、上腕50Rの長手方向または軸に平行な軸であり、他の2軸ピッチ軸およびロール軸は、その軸にそれぞれ異なる方向から直交する軸である。同様にして、肩関節48Lは、直交する3軸のそれぞれの軸廻りにおいて上腕50Lの角度を制御できる。肩関節48Lの或る軸ヨー軸は、上腕50Lの長手方向または軸に平行な軸であり、他の2軸ピッチ軸およびロール軸は、その軸にそれぞれ異なる方向から直交する軸である。また、上腕50Rおよび上腕50Lのそれぞれの先端には、肘関節52Rおよび肘関節52Lが設けられる。図示は省略するが、肘関節52Rおよび肘関節52Lは、それぞれ1軸の自由度を有し、この軸ピッチ軸の軸回りにおいて前腕54Rおよび前腕54Lの角度を制御できる。前腕54Rおよび前腕54Lのそれぞれの先端には、人の手に相当する球体56Rおよび球体56Lがそれぞれ固定的に設けられる。ただし、指や掌の機能が必要な場合には、人間の手の形をした手を用いることも可能である。また、図示は省略するが、台車30の前面、肩関節48Rと肩関節48Lとを含む肩に相当する部位、上腕50R、上腕50L、前腕54R、前腕54L、球体56Rおよび球体56Lには、それぞれ、接触センサ58図2で包括的に示すが設けられる。台車30の前面の接触センサ58は、台車30への人間や他の障害物の接触を検知する。したがって、移動ロボット10は、その自身の移動中に障害物との接触が有ると、それを検知し、直ちに車輪32の駆動を停止して移動ロボット10の移動を急停止させることができる。また、その他の接触センサ58は、当該各部位に触れたかどうかを検知する。なお、接触センサ58の設置位置は、当該部位に限定されず、適宜な位置人の胸、腹、脇、背中および腰に相当する位置に設けられてもよい。胴体42の中央上部人の首に相当する位置には首関節60が設けられ、さらにその上には頭部62が設けられる。図示は省略するが、首関節60は、3軸の自由度を有し、3軸の各軸廻りに角度制御可能である。或る軸ヨー軸は移動ロボット10の真上鉛直上向きに向かう軸であり、他の2軸ピッチ軸、ロール軸は、それぞれ、それと異なる方向で直交する軸である。頭部62には、人の口に相当する位置に、スピーカ64が設けられる。スピーカ64は、移動ロボット10が、それの周辺の人間に対して音声ないし音によってコミュニケーションを取るために用いられる。また、人の耳に相当する位置には、マイク66Rおよびマイク66Lが設けられる。以下、右のマイク66Rと左のマイク66Lとをまとめてマイク66と言うことがある。マイク66は、周囲の音、とりわけコミュニケーションを実行する対象である人間の音声を取り込む。さらに、人の目に相当する位置には、眼球部68Rおよび眼球部68Lが設けられる。眼球部68Rおよび眼球部68Lは、それぞれ眼カメラ70Rおよび眼カメラ70Lを含む。以下、右の眼球部68Rと左の眼球部68Lとをまとめて眼球部68と言うことがある。また、右の眼カメラ70Rと左の眼カメラ70Lとをまとめて眼カメラ70と言うことがある。眼カメラ70は、移動ロボット10自身から見える前方の視界や、移動ロボット10に接近した人間の顔や他の部分ないし物体などを撮影して、それに対応する映像信号を取り込む。また、眼カメラ70は、上述した全方位カメラ46と同様のカメラを用いることができる。たとえば、眼カメラ70は、眼球部68内に固定され、眼球部68は、眼球支持部図示せずを介して頭部62内の所定位置に取り付けられる。図示は省略するが、眼球支持部は、2軸の自由度を有し、それらの各軸廻りに角度制御可能である。たとえば、この2軸の一方は、頭部62の上に向かう方向の軸ヨー軸であり、他方は、一方の軸に直交しかつ頭部62の正面側顔が向く方向に直行する方向の軸ピッチ軸である。眼球支持部がこの2軸の各軸廻りに回転されることによって、眼球部68ないし眼カメラ70の先端正面側が変位され、カメラ軸すなわち視線方向が移動される。なお、上述のスピーカ64、マイク66および眼カメラ70の設置位置は、当該部位に限定されず、適宜な位置に設けられてよい。このように、この実施例の移動ロボット10は、車輪32の独立2軸駆動、肩関節48の3自由度左右で6自由度、肘関節52の1自由度左右で2自由度、首関節60の3自由度および眼球支持部の2自由度左右で4自由度の合計17自由度を有する。図2は、移動ロボット10の電気的な構成を示すブロック図である。図2を参照して、移動ロボット10は、CPU80を含む。CPU80は、マイクロコンピュータ或いはプロセッサとも呼ばれ、バス82を介して、メモリ84、モータ制御ボード86、センサ入力/出力ボード88および音声入力/出力ボード90に接続される。CPU80は、RTC80aを含んでおり、各センサからの信号ないしデータセンサ情報に対してRTCに基づく時刻データを付加する。また、CPU80は、任意の時刻からの経過時間を計時するためのタイマTも含む。メモリ84は、図示は省略をするが、不揮発メモリ保存領域としてSSDおよびROMと、揮発メモリ一時記憶領域としてRAMとを含む。SSD,ROMつまり保存領域140:図8参照には、移動ロボット10自身の位置自己位置および歩行者の位置を検出して回避行動を決定するための各種のプログラム後述が予め記憶される。RAMつまり一時記憶領域160:図8参照は、ワークメモリないしバッファメモリとして、地図情報を一時保持したり、プログラムによって参照される各種の情報後述を更新可能に記憶したりする。モータ制御ボード86は、たとえばDSPで構成され、各腕や首関節および眼球部などの各軸モータの駆動を制御する。すなわち、モータ制御ボード86は、CPU80からの制御データを受け、右眼球部68Rの2軸のそれぞれの角度を制御する2つのモータ図2では、まとめて右眼球モータ92と示す。の回転角度を制御する。同様に、モータ制御ボード86は、CPU80からの制御データを受け、左眼球部68Lの2軸のそれぞれの角度を制御する2つのモータ図2では、まとめて左眼球モータ94と示す。の回転角度を制御する。また、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Rの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Rの角度を制御する1つのモータとの計4つのモータ図2では、まとめて右腕モータ96と示す。の回転角度を制御する。同様に、モータ制御ボード86は、CPU80からの制御データを受け、肩関節48Lの直交する3軸のそれぞれの角度を制御する3つのモータと肘関節52Lの角度を制御する1つのモータとの計4つのモータ図2では、まとめて左腕モータ98と示す。の回転角度を制御する。さらに、モータ制御ボード86は、CPU80からの制御データを受け、首関節60の直交する3軸のそれぞれの角度を制御する3つのモータ図2では、まとめて頭部モータ110と示す。の回転角度を制御する。そして、モータ制御ボード86は、CPU80からの制御データを受け、右車輪32aを駆動する右車輪モータ36a、左車輪32bを駆動する左車輪モータ36bの回転角度を、それぞれ個別に制御する。なお、この実施例では、車輪モータ36を除くモータは、制御を簡素化するためにステッピングモータすなわち、パルスモータを用いる。ただし、車輪モータ36と同様に直流モータを用いるようにしてもよい。また、移動ロボット10の身体部位を駆動するアクチュエータは、電流を動力源とするモータに限らず適宜変更されてもよい。たとえば、他の実施例では、エアアクチュエータなどが適用されてもよい。センサ入力/出力ボード88は、モータ制御ボード86と同様に、たとえばDSPで構成され、各センサからの信号センサ情報を取り込んでCPU80に与える。すなわち、赤外線距離センサ40のそれぞれからの反射時間に関するデータがこのセンサ入力/出力ボード88を通じてCPU80に入力される。また、全方位カメラ46からの映像信号が、必要に応じてセンサ入力/出力ボード88で所定の処理を施してからCPU80に入力される。眼カメラ70からの映像信号も、同様に、CPU80に入力される。また、上述した複数の接触センサ58図2では、まとめて接触センサ58と示す。からの信号がセンサ入力/出力ボード88を介してCPU80に与えられる。また、センサ入力/出力ボード88には、右車輪32aの回転速度車輪速を検出する右車輪速センサ112a、左車輪32bの回転速度を検出する左車輪速センサ112bがさらに接続される。そして、右車輪速センサ112aおよび左車輪速センサ112bからのそれぞれから、一定時間における右車輪32aおよび左車輪32bの回転数車輪速に関するデータが、センサ入力/出力ボート88を通じて、CPU80に入力される。音声入力/出力ボード90も、他の入力/出力ボードと同様にたとえばDSPで構成され、図2ではCPU80,メモリ84または音声入力/出力ボード90から与えられる音声合成データに従った音声または声がスピーカ64から出力される。また、マイク66からの音声入力が、音声入力/出力ボード90を介してCPU80に与えられる。また、CPU80は、バス82を介して通信LANボード114に接続される。通信LANボード114は、たとえばDSPで構成され、CPU80から与えられた送信データを無線通信回路116に与え、無線通信回路116は送信データを、アンテナ118からネットワーク200を介して図示しないPC,遠隔操作装置など以下PC等に送信する。また、通信LANボード114は、無線通信回路116を介してアンテナ118でPC等からデータを受信し、受信したデータをCPU80に与える。以上のように構成された移動ロボット10は、たとえば図3に示すように、ショッピングセンタなどの環境En内を自動走行しつつ、自己および歩行者ID:0,1,2,...の位置を検出し、自己とすれ違う歩行者ここでは歩行者0を特定してその軌跡を予測し、予測結果に応じた回避行動をとる歩行者と一定以上の距離を保ってすれ違う回避経路を計算することで、周囲たとえば歩行者1,2の通行への影響を抑制しながら、歩行者0と安全にすれ違うことができる。以下には、移動ロボット10が行う回避行動およびそれを実現するためにCPU80が実行する情報処理について、図4のメモリマップ、図6~図9のフローチャート、ならびに図5および図10~図13の図解図を用いて詳しく説明する。図4を参照して、メモリ84は保存領域140および一時記憶領域160を含み、保存領域140には位置検出プログラム142,回避行動決定プログラム144,行動制御プログラム146および歩行者モデル150が記憶され、一時記憶領域160には地図情報162,自己位置情報164,歩行者位置情報166および行動制御情報168が一時記憶される。位置検出プログラム142は、LRF40からの距離データおよび右左の車輪速度センサ112aおよび112bの出力データと地図情報162とに基づいて移動ロボット10自身および歩行者の位置を検出し、さらに検出結果に基づいて各々の移動方向および軌跡を計算するためのプログラムであり、図6のフローチャートに対応する。位置検出プログラム142の検出結果は、自己位置情報164および歩行者位置情報166後述に反映される。すなわち、自己位置情報164には、移動ロボット10自身について、現時点における位置および移動方向、ならびに現時点までの軌跡が記述される。歩行者位置情報166には、図5に示すように、各歩行者について、歩行者ID,現時点における位置および移動方向、ならびに現時点までの軌跡が記述され、さらにロボットとすれ違う時刻も記述される。回避行動決定プログラム144は、自己位置情報164および歩行者位置情報166と歩行者モデル150とに基づいて、自己とすれ違う歩行者の回避行動を予測し、予測結果に応じて自己の回避行動を決定するためのプログラムであり、図7および図8のフローチャートに対応する。回避行動決定プログラム144の決定結果は、行動制御情報168に反映される。行動制御プログラム146は、行動制御情報168に基づいて移動ロボット10の行動移動および動作を制御するためのプログラムであり、図9に示すフローチャートに対応する。行動制御プログラム146には移動制御プログラム146aおよび動作制御プログラム146bが含まれ、行動制御情報168には移動制御情報168aおよび動作制御情報168bが含まれている。移動制御プログラム146aは、移動制御情報168aに基づいて移動ロボット10の移動を制御するためのプログラムであり、図9のステップS85に対応する。動作制御プログラム146bは、動作制御情報168bに基づいて移動ロボット10の動作を制御するためのプログラムであり、図9のステップS89に対応する。歩行者モデル150は、歩行者がロボットとすれ違う際にとる回避行動ロボットを避けて迂回する軌跡を示すモデルであり、対面すれ違い時のモデル図11参照および追い越しすれ違い時のモデル図12参照を含む。なお、歩行者モデル150は、事前に歩行者がロボットとすれ違う際にとる回避行動を計測した結果に基づいて作成される。CPU80は、メモリ84に記憶された各種のプログラム142~146およびデータ150,162~186に基づいて、図6のフローに従う位置検出処理と、図7および図8のフローに従う回避行動制御処理と、図9のフローに従う行動制御処理とを並列的に実行する。まず、位置検出処理について説明する。図6を参照して、最初、ステップS1で終了処理が行われたか否かを判別し、YESであればこの位置検出処理を終了する。ステップS1でNOであれば、ステップS3でLRF40から距離データを取得した後、ステップS5およびS7に進んで自己および歩行者の位置検出を行う。具体的には、ステップS5で、取得した距離データおよび地図情報162に基づいて自己位置を検出する。また、前回の検出結果と今回の検出結果との比較に基づいて移動方向を計算し、さらに、初回から今回までの一連の検出結果から軌跡を計算する。これらの検出結果および計算結果は、自己位置情報164に記述される。ステップS7では、取得した距離データおよび地図情報162に基づいて各歩行者ID:0,1,2,...,Lの位置を検出する。また、各歩行者について、前回の検出結果と今回の検出結果との比較に基づいて移動方向を計算し、さらに、初回から今回までの一連の検出結果から軌跡を計算する。これらの検出結果および計算結果は、歩行者位置情報166に記述される。その後、ステップS1に戻って、上記と同様の処理をたとえば50分の1秒毎に繰り返す。こうして、自己位置情報164および歩行者位置情報166は、最新の距離データに基づきアルタイムに更新される。なお、ステップS5およびS7で位置検出等を行う際には、LRF40から距離データに加えて、右左の車輪側センサ112aおよび112bの出力も参照してよい。パーティクルフィルタ,カルマンフィルタ等の時系列フィルタを用いて位置や移動方向を推定することも可能である。次に、回避行動決定処理について説明する。図7を参照して、最初のステップS21で終了処理が行われたか否かを判別し、YESであればこの回避行動決定処理を終了する。ステップS21でNOであれば、ステップS23で変数Xに初期値0をセットした後、ステップS25に進む。ステップS25では、タイマTをリセットT=0およびスタートする。次のステップS27では、変数Xが現時点で検出されている歩行者の数L以下歩行者数Lを超えたX>Lであるか否かを判別し、ここでNOであればステップS29~S35を、YESであればステップS37~S47を実行する。X≦Lの場合、まずステップS29で、自己位置情報164から自己の軌跡を、歩行者位置情報166から歩行者Xの軌跡をそれぞれ取得する。そして、図10に示すように、自己ロボットRおよび歩行者Xそれぞれの軌跡実測軌跡に基づいて、時刻T0までのそれぞれの軌跡を予測する。次に、ステップS31で、自己および歩行者Xそれぞれの予測軌跡に基づいて、歩行者Xおよび自己が共に回避行動をとらなかった場合に、歩行者Xは自己とT0秒以内にすれ違うか否かを判定する。このステップS31の判定は、たとえば図10に示すような、時刻T0における移動ロボット10図中ロボットRの位置を中心とする半径Dのすれ違い判定円を利用して行われる。移動ロボット10は、時刻T0までの歩行者Xおよび自己それぞれの予測軌跡を互いに比較して、時刻T0以前に歩行者Xがすれ違い判定円内に入ればステップS31でYESと判定し、時刻T0以前に歩行者Xがすれ違い判定円内に入らなければステップS31でNOと判定する。テップS31でYESであれば、ステップS33で自己と歩行者Xがすれ違う時刻を計算した後、ステップS35に進む。ステップS31でNOであれば、ステップS33をスキップしてステップS35に進む。歩行者Xに関するステップS31の判定結果およびステップS33の計算結果は、歩行者位置情報166図5参照に反映される。ステップS35では、変数XをインクリメントするX=X1。その後、ステップS25に戻って上記と同様の処理を繰り返す。このステップS25~S35のループ処理によって、各歩行者0,1,2,...,Lについての判定結果および計算結果が、歩行者位置情報166に順次反映されていく。こうして歩行者0~Lに関する歩行者位置情報166が完成した後に、ステップS35のインクリメントを経てステップS25に戻ると、次のステップS27の判別結果はYESとなって、ステップS37~S47の一連の処理が実行される。ステップS37では、歩行者位置情報166を参照して、歩行者0~Lのうち自己とすれ違う時刻が最も早い歩行者を特定し、その歩行者を歩行者Thとする。ステップS39では、図11または図12に示すように、歩行者モデル150に従って、歩行者ThのT0-T1秒後までの軌跡を予測する。そして、ステップS41で、タイマTの値を参照して、T0-T1秒が経過したか否かを判別し、NOであれば一定時間毎に同様の判別を繰り返す。ステップS41の判別結果がNOからYESに変化すると、ステップS43に進んで、歩行者位置情報166から歩行者ThのT0-T1秒後までの軌跡を取得する。次のステップS45では、ステップS39で予測した軌跡予測軌跡と、ステップS43で取得した軌跡実測軌跡とを比較して、両者の一致度合いを計算する。なお、一致度合いは、簡単には、実測軌跡が予測軌跡と完全に一致する場合を1とし、実測軌跡が単なる直進である場合を0として、0から1までの数値で表現すればよい。その次のステップS47では、こうして計算した一致度合いに基づいて、歩行者Thとの衝突を避ける回避行動を決定する。この回避行動決定処理が完了すると、ステップS21に戻って上記と同様の処理を繰り返す。上記ステップS47の回避行動決定処理は、詳しくは図8に示すフローサブルーチンに従って実行される。図8を参照して、最初、ステップS61で一致度合いが閾値たとえば0.9より高いか否かを判別し、ここでYESであれば、ステップS63で歩行者モデル150に従って歩行者ThのT0秒後までの軌跡を予測した後、ステップS67に進む。一方、ステップS61でNOであれば、ステップS65で、歩行者ThのT0-T1秒後までの実測軌跡から、歩行者ThのT0秒後までの軌跡を、たとえば歩行者モデル150に基づく線形補間によって予測する。いずれかの方法で予測を行った後、ステップS67に進む。ステップS67では、ステップS63またはS65の予測結果に基づいて、歩行者Thと一定以上の距離たとえばETHallが定義する社会的距離:1.2m以上を極力保つように、自己の回避経路を決定する。したがって、図11に実線で示したように、歩行者Thが歩行者モデル150の示す軌跡に沿って移動した場合一致度合い=1、移動ロボット10は、歩行者モデルに対応する回避経路歩行者モデルの示す軌跡に対して点対称な軌跡をとる。つまり、歩行者Thと移動ロボット10は、少しずつ均等に避け合うことで、すれ違い時に一定以上の距離が保たれる。一方、図11に点線で示したように、歩行者Thが全く避けずに直進した場合には一致度合い=0、すれ違い時に一定以上の距離が保たれるように、大きく回避する経路をとる。また、上記2つの場合の中間の例として、図13Aに示したように、歩行者Thがある程度避けたものの、歩行者モデルの示す軌跡ほどには避けなかった場合、T=0~T=T0-T1の期間における予測軌跡および実測軌跡の比較に基づいて、両者の一致度合いが、たとえば0.6のように計算される。この一致度合いは、閾値よりも小さいので、T=T0-T1~T=T0の期間における予測軌跡は、実測軌跡から、歩行者モデルに基づく線形補間によって、たとえば図13Aに二点差線で示されるように計算される。そして、この予測軌跡に対応する回避経路として、すれ違い時に一定以上の距離が保たれるという条件下で、図13Aに太い実線で示されるような回避経路、つまり歩行者モデルに対応する回避経路と人が避けない場合の回避経路とを適宜な比率で内分したような回避経路が計算される。この回避経路では、回避を開始するタイミングも、歩行者モデルに対応する回避経路の場合より早くなっている。このように、歩行者Thが少ししか避けない場合には、移動ロボット10は、大きく素早く避けることで、すれ違い時に一定以上の距離を保つことができる。さらに、もう一つの例として、図13Bに示したように、歩行者Thが歩行者モデルの示す軌跡よりも大きく避けた場合、T=0~T=T0-T1の期間における予測軌跡および実測軌跡の比較に基づいて一致度合いが計算され、計算結果がたとえば0.6であれば、T=T0-T1~T=T0の期間における予測軌跡は、実測軌跡から、同様の歩行者モデルに基づく線形補間によって、たとえば図13Bに二点差線で示されるように計算される。そして、この予測軌跡に対応する回避経路として、図13Bに太い実線で示されるような回避経路、つまり歩行者モデルに対応する回避経路と人が避けない場合の回避経路とを適宜な比率で外分したような回避経路が計算される。この回避経路では、回避を開始するタイミングも、歩行者モデルに対応する回避経路の場合より遅くなっている。このように、歩行者Thが大きく避けた場合には、移動ロボット10は、小さくゆっくり避けても、すれ違い時に一定以上の距離を保つことができる。なお、図11および図13では、歩行者ThとロボットRは対面してすれ違っているが、歩行者ThがロボットRを追い越す際にも、同様の手順で回避経路が計算される。具体的には、図12に実線で示すように、歩行者が歩行者モデルの示す軌跡に沿ってロボットRを追い越す場合、ロボットRは、すれ違い時に一定以上の距離が保たれるという条件下で、歩行者モデルに対応する回避経路歩行者が避ける向きとは反対の向きに小さく回避する経路をとる。一方、図12に点線で示すように、歩行者が背後からロボットRを避けることなく直進してくる場合、ロボットRは、同様の条件下で、歩行者に対して大きく避ける回避経路をとる。こうして回避経路の計算が完了すると、ステップS69に進む。再び図8を参照して、ステップS69では、ステップS63またはS65で予測した軌跡歩行者Th側の回避経路とステップS67で計算した自己の回避経路との比較に基づいて、歩行者Thとすれ違う際の最近接距離が一定1.2m以上であるか否かを判別する。ここYESであれば、ステップS67の計算結果に従う移動制御情報168aをステップS71で作成し、その後、上位のフロー図7に戻る。ステップS69でNOであれば、ステップS73で緊急停止を示す移動制御情報168aを作成する。場合によっては、さらにステップS75で、スピーカ64から警告音を出力したり身振り手振りで危険を知らせたりするための動作制御情報168bを作成してもよい。その後、上位のフロー図7に戻る。次に、行動制御処理について説明する。図9を参照して、最初、終了処理が行われたか否かをステップS81で判別し、YESであればこの行動制御処理を終了する。ステップS81でNOであれば、ステップS83で移動制御情報168aが生成されたか否かをさらに判別し、ここでYESであればステップS85を経てステップS87に進む。ステップS83でNOであれば、直ちにステップS87に進む。ステップS85では、回避行動決定処理の結果が反映された移動制御情報168aに基づいて、右左の車輪モータ36aおよび36bを駆動する。その結果、移動ロボット10は、歩行者Thの軌跡に応じた回避経路に沿って移動し、一定以上の距離を保って歩行者Thとすれ違うことができる。歩行者thと一定以上の距離を保つことができない場合には、緊急停止によって衝突またはニアミスを回避する。ステップS87では、動作制御情報168bが生成されたか否かをさらに判別し、ここでYESであればステップS89を経てステップS81に戻る。ステップS87でNOであれば、直ちにステップS81に戻る。ステップS89では、回避行動決定処理の結果が反映された動作制御情報168bに基づいて、スピーカ64や頭部モータ110、右左の腕モータ96および98などを駆動する。その結果、移動ロボット10は、警告音や身振り手振りによって、ぶつかってきそうな歩行者Thの注意さらには回避行動を促すことができる。以上から明らかなように、この実施例の移動ロボット10は、自己とすれ違う歩行者Th:図11~図13参照の軌跡を示す歩行者モデル150をメモリ84の保存領域140に記憶している。CPU40は、自己および歩行者の位置を検出してS5,S7、検出結果および歩行者モデル150に基づいて自己とすれ違う歩行者の軌跡を予測しS39~S45,S61~S65、予測結果に応じて自己の回避行動を決定するS67~S75。したがって、周囲の通行への影響を抑制しながら歩行者と安全にすれ違うことができる。なお、この実施例では、歩行者の属性は特に考慮していないが、たとえば年齢層子供/大人/高齢者や性別といった属性毎に歩行者モデルを準備して、歩行者の軌跡を予測する際にその属性を検出して該当する歩行者モデルを用いたり、自己の回避行動を決定する際に歩行者の属性によって回避の程度や行動内容を変えたりしてもよい。これによって、たとえば、高齢者とすれ違う場合に距離を大きくとったり、子供とすれ違う場合に発話による注意喚起を行ったり、といったきめ細かな対応が可能になる。なお、この実施例では、移動ロボット10が自己および歩行者の位置を検出したが、図示しない位置検出システムにその一部または全部を担当させてもよい。この場合、位置検出システムは、環境Enに配置されたLRF,赤外線距離センサなどの距離計測装置図示せずを含み、こうした距離計測装置からの計測データさらには移動ロボット10に搭載されたLRF40からの距離データに基づいて移動ロボット10および歩行者の位置を検出し、検出結果を移動ロボット10に通知する。移動ロボット10は、通知された位置に基づいて、上述と同様の回避行動制御処理図7,図8参照を実行する。以上の説明では、一例として移動ロボット10について説明したが、この発明は、無人カートなどロボット以外の移動体にも適用できる。この場合、移動体を自律的に移動させる自動走行させるための制御システムのコンピュータが、上述と同様の回避行動制御処理を実行する。このような制御システムを図14に示す。図14を参照して、ロボット,無人カートといった移動体10Aを制御する制御システム100は、キーボードなどの入力器12a,モニタなどの表示器12b,CPU12cおよびメモリ12dなどを備えたコンピュータ12と、環境に配置された複数のLRF14とを含む。メモリ12dには、図4に示したものと同様のプログラム142~146,歩行者モデル150および情報162~168が格納されただし、無人カートの場合には、動作制御プログラム146bおよび動作制御情報168bは省略してよい、CPU12cは、これらのプログラムに従って図6~図9に示すフローと同様の処理たたし自己は移動体と読み替えるを実行する。このような制御システム100のコンピュータ12の制御下で、移動体10Aの自律的な移動が実現される。"