(57)【特許請求の範囲】
【請求項１】
Ａ）移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体の動作制御用のデータを生成する移動物体動作制御データ生成装置であって、
Ｂ）前記移動物体は、
b1)操作者から前記移動物体を前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、前記移動物体を移動させる駆動手段、
b2)所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを計測する集合環境データ計測手段、
を備え、
Ｃ）前記移動物体動作制御データ生成装置は、
c1)前記集合環境データ計測手段が計測した前記所定時間ごとの集合環境データを、前記移動物体の動作データとともに記憶する第１の記憶手段、
c2)前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶させる付加手段、
c3)前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則を記憶した第１規則記憶手段、
c4)前記対応規則に基づいて、前記第１の記憶手段に記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定する抽象化集合環境データ特定手段、
c5)前記方向別の抽象化集合環境データを記憶する第２の記憶手段、
c6)前記第２の記憶手段に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定する連データ決定手段、
c7)前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する生成手段、
を備えたことを特徴とする移動物体動作制御データ生成装置。
【請求項２】
請求項１の移動物体動作制御データ生成装置において、
前記生成手段は、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成すること、
を特徴とするもの。
【請求項３】
請求項２の移動物体動作制御データ生成装置において、
前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する方向別抽象化環境データの値を、注目環境集合環境データを中心に鏡対称入れ替えを行なうこと、
を備えたことを特徴とするもの。
【請求項４】
請求項２または請求項３の移動物体動作制御データ生成装置において、
前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する各方向別抽象化環境データについて、その値を進行方向に対して直交する方向に鏡対称入れ替えを行なうこと、
を備えたことを特徴とするもの。
【請求項５】
請求項２の移動物体動作制御データ生成装置において、
前記生成された複数の環境データについて、動作の回転方向が異なる場合には、さらに、各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データとすること、
を特徴とするもの。
【請求項６】
請求項２の移動物体動作制御データ生成装置において、
前記得られた複数の動作指令連データについて、操作者によって、試運用し、仮に適用した場合に、他の動作指令連データと区別できないほど、抽象化されたものは削除すること、
を特徴とするもの。
【請求項７】
請求項２の移動物体動作制御データ生成装置の使用方法であって、
操作者は、前記移動物体を前記環境下にて、任意に移動させて前記移動物体の動作を制御するデータを生成させること、
を特徴とするもの。
【請求項８】
Ａ）通路および各通路が交わる通路交わり点で構成された環境下で、移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体に前記環境特定単語を学習させる移動物体動作制御データ生成装置であって、
Ｂ）前記移動物体は、
b1)操作者から前記移動物体を前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、前記移動物体を移動させる駆動手段、
b2)所定時間毎に方向別距離データの集合である集合距離データを計測する集合距離データ計測手段、
を備え、
Ｃ）前記移動物体動作制御データ生成装置は、
c1)前記所定時間ごとの集合距離データを、前記移動物体の動作データとともに記憶する第１の記憶手段、
c2)前記移動中に前記通路交わり点にて、操作者から当該環境を表す環境特定単語が与えられると、前記集合距離データに付加して記憶させる付加手段、
c3)前記集合距離データを構成する方向別距離データの値の相互関係と周辺環境の抽象化環境データとの対応規則を記憶した第１規則記憶手段、
c4)前記対応規則に基づいて、前記第１の記憶手段に記憶された前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定する抽象化集合環境データ特定手段、
c5)前記方向別の抽象化集合環境データを記憶する第２の記憶手段、
c6)前記第２の記憶手段に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目抽象化集合環境データとして決定し、前記注目抽象化集合環境データとともに、その前後所定数の抽象化集合環境データを連データとして決定する連データ決定手段、
c7)前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する連データとして生成する生成手段、
を備えたことを特徴とするもの。
【請求項９】
請求項８の移動物体動作制御データ生成装置において、
前記生成手段は、前記抽出した連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する方向別抽象化環境データの値を、注目抽象化集合環境データを中心に鏡対称入れ替えを行なうこと、
を特徴とするもの。
【請求項１０】
請求項８または請求項９の移動物体動作制御データ生成装置において、
前記生成手段は、前記抽出した連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する各方向別抽象化環境データについて、その値を進行方向に対して直交する方向に鏡対称入れ替えを行なうこと、
を特徴とするもの。
【請求項１１】
移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体の動作制御用のデータを生成する移動物体動作制御データ生成方法であって、
前記移動物体を移動させつつ、所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを計測し、
前記所定時間ごとの集合環境データを、前記移動物体の動作データとともに記憶し、
前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶し、
あらかじめ記憶した前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則に基づいて、前記記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定して記憶し、
前記記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、
前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成すること、
を特徴とする移動物体動作制御データ生成方法。
【請求項１２】
入力装置、制御装置、および記憶装置を備えたコンピュータを、移動物体の動作を人間が用いる環境特定単語で制御するために前記移動物体の動作制御用のデータを生成する移動物体動作制御データ生成装置として機能させるためのプログラムを記録した記録媒体であって、
前記プログラムは、前記コンピュータに、以下の処理を実行させるためのプログラムであること、
前記移動物体が、操作者から与えられた移動命令に基づいて、移動した際に計測された所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを、前記移動物体の動作データとともに記憶し、
前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶し、
あらかじめ記憶した前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則に基づいて、前記記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定して記憶し、
前記記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、
前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成すること、
を特徴とするプログラムを記録した記録媒体。
【請求項１３】
コンピュータによって生成された、移動物体の動作を人間が用いる環境特定単語で制御するために前記移動物体の動作制御用のデータを記録した記録媒体であって、
前記移動物体の動作制御用のデータは、以下の手法により生成されたこと、
前記移動物体が、操作者から与えられた移動命令に基づいて、移動した際に計測された所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを、前記移動物体の動作データとともに記憶し、
前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶し、
あらかじめ記憶した前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則に基づいて、前記記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定して記憶し、
前記記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、
前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する、
を特徴とする動作制御用のデータを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、移動物体の動作制御データ生成方法に関し、特に、動作制御データの生成手法に関する。
【０００２】
【従来技術および発明が解決しようとする課題】
従来、ロボットの動作プログラミングを簡易にするために、種々の試みがなされている。その一つとして、特開平６−２１４６４５号公報には、途中に種々の障害物が散在していても、任意の走行パターンを学習させて、そのパターン通りに走行させることができるロボットの学習方法が開示されている。簡単に説明する。学習モードに切り換えて、ロボットを実際に動作させ、動作開始からストップキーを押すまでの障害物との距離および指示した方向を記憶装置に記憶する。自動走行モードに切り換えて、前記記憶装置のデータを順次読み出し、その読み出した方向及び距離と、方向測定手段による測定方向及び距離測定手段による測定距離とを比較しながら走行させるというものである。かかる学習方式により、ロボットへのプログラミングが不要となる。
【０００３】
しかしながら、上記制御方法においては、以下のような問題があった。センシング内容と動作指示をそのままの形で記憶すると周りの環境が少し異なるだけで、記憶したセンシング内容と一致しなくなり、動作を再現できない。かかる問題を解決するために、異なる環境ごとに全データを記憶することも考えられるが、これでは、膨大な記憶容量が必要となる。
【０００４】
かかる問題はロボットを自走させる場合だけでなく、ゲームにおけるキャラクターの動きについても同様である。
【０００５】
この発明は上記問題を解決し、移動物体の動作プログラミングを簡易にすることができる移動物体の動作学習方法または移動物体の動作決定装置を提供することを目的とする。
【０００６】
【課題を解決するための手段および発明の効果】
１）本発明にかかる移動物体動作制御データ生成装置においては、移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体の動作制御用のデータを生成する移動物体動作制御データ生成装置であって、Ｂ）前記移動物体は、b1)操作者から前記移動物体を前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、前記移動物体を移動させる駆動手段、b2)所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを計測する集合環境データ計測手段を備え、Ｃ）移動物体動作制御データ生成装置移動物体動作制御データ生成装置は、c1)前記集合環境データ計測手段が計測した前記所定時間ごとの集合環境データを、前記移動物体の動作データとともに記憶する第１の記憶手段、c2)前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶させる付加手段、c3)前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則を記憶した第１規則記憶手段、c4)前記対応規則に基づいて、前記第１の記憶手段に記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定する抽象化集合環境データ特定手段、c5)前記方向別の抽象化集合環境データを記憶する第２の記憶手段、c6)前記第２の記憶手段に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定する連データ決定手段、c7)前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する生成手を備えている。
【０００７】
このように、所定時間ごとの集合環境データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者は環境特定単語を与えるだけで、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【０００８】
２)本発明にかかる移動物体動作制御データ生成装置においては、前記生成手段は、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。したがって、環境特定単語および動作が同じ連データを一般化した動作指令連データを生成することができる。
【０００９】
３)本発明にかかる移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する方向別抽象化環境データの値を、注目環境集合環境データを中心に鏡対称入れ替えを行なう。したがって、時間軸方向に対して、対象である状況下において、一方だけでも検出すれば、他方については、現実に動作させなくても、前記連データを取得することができる。
【００１０】
４)本発明にかかる移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する各方向別抽象化環境データについて、その値を進行方向に対して直交する方向に鏡対称入れ替えを行なう。したがって、前記進行方向に対して直交する方向に対して、対象である状況下において、一方だけでも検出すれば、他方については現実に動作させなくても、前記連データを取得することができる。
【００１１】
５)本発明にかかる移動物体動作制御データ生成装置においては、前記生成された複数の環境データについて、動作の回転方向が異なる場合には、さらに、各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データとする。したがって、左右の回転方向を覗いた一般化した動作指令連データを得ることができる。
【００１２】
６)本発明にかかる移動物体動作制御データ生成装置においては、前記得られた複数の動作指令連データについて、操作者によって、試運用し、仮に適用した場合に、他の動作指令連データと区別できないほど、抽象化されたものは削除する。このように候補を複数作成し、条件に合致しないものを排除することにより、過度に一般化された候補による誤動作を防止できる。
【００１３】
７)本発明にかかる移動物体動作制御データ生成装置の使用方法においては、操作者は、前記移動物体を前記環境下にて、任意に移動させて前記移動物体の動作を制御するデータを生成させる。したがって、操作者は全パターンについて、これを分析してその動きをさせなくても、前記移動物体に環境特定単語に対応する動作指令連データを学習させることができる。
【００１４】
８)本発明にかかる移動物体動作制御データ生成装置は、Ａ）通路および各通路が交わる通路交わり点で構成された環境下で、移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体に前記環境特定単語を学習させる移動物体動作制御データ生成装置であって、Ｂ）前記移動物体は、b1)操作者から前記移動物体を前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、前記移動物体を移動させる駆動手段、b2)所定時間毎に方向別距離データの集合である集合距離データを計測する集合距離データ計測手段を備え、Ｃ）前記移動物体動作制御データ生成装置は、c1)前記所定時間ごとの集合距離データを、前記移動物体の動作データとともに記憶する第１の記憶手段、c2)前記移動中に前記通路交わり点にて、操作者から当該環境を表す環境特定単語が与えられると、前記集合距離データに付加して記憶させる付加手段、c3)前記集合距離データを構成する方向別距離データの値の相互関係と周辺環境の抽象化環境データとの対応規則を記憶した第１規則記憶手段、c4)前記対応規則に基づいて、前記第１の記憶手段に記憶された前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定する抽象化集合環境データ特定手段、c5)前記方向別の抽象化集合環境データを記憶する第２の記憶手段、c6)前記第２の記憶手段に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目抽象化集合環境データとして決定し、前記注目抽象化集合環境データとともに、その前後所定数の抽象化集合環境データを連データとして決定する連データ決定手段、c7)前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する連データとして生成する生成手段を備えている。
【００１５】
このように、所定時間ごとの集合距離データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者から与えられた環境特定単語により、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【００１６】
また、共通抽象化集合環境データの生成においては、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。したがって、環境特定単語および動作が同じ連データを一般化した動作指令連データを生成することができる。
【００１７】
９)本発明にかかる移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する方向別抽象化環境データの値を、注目抽象化集合環境データを中心に鏡対称入れ替えを行なう。
【００１８】
値を、注目環境集合環境データを中心に鏡対称入れ替えを行なう。したがって、時間軸方向に対して、対象である状況下において、一方だけでも検出すれば、他方については、現実に動作させなくても、前記連データを取得することができる。
【００１９】
１０)本発明にかかる移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する各方向別抽象化環境データについて、その値を進行方向に対して直交する方向に鏡対称入れ替えを行なう。したがって、前記進行方向に対して直交する方向に対して、対象である状況下において、一方だけでも検出すれば、他方については現実に動作させなくても、前記連データを取得することができる。
【００２０】
１１)本発明にかかる移動物体動作制御データ生成方法は、移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体の動作制御用のデータを生成する移動物体動作制御データ生成方法であって、1)前記移動物体を移動させつつ、所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを計測し、2)前記所定時間ごとの集合環境データを、前記移動物体の動作データとともに記憶し、3)前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶し、4)あらかじめ記憶した前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則に基づいて、前記記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定して記憶し、5)前記記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、6)前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。
【００２１】
このように、所定時間ごとの集合環境データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者から与えられた環境特定単語により、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【００２２】
以下に、特許請求の範囲に用いた用語と実施形態との関係について説明をする。
【００２３】
「環境特定単語」:移動物体が移動する際の周りの環境を示す単語であり、実施形態では、交差点、三叉路等が該当する。
【００２４】
「集合環境データ」:方向別周辺環境データの集合であり、実施形態では、左、左前、前、右前、右の５つセンサの方向別周辺環境データの集合をいい、方向別周辺環境データを含む概念である。
【００２５】
「方向別周辺環境データ」:実施形態では、図１１に示す各時刻毎の各センサの距離（４０）などが該当し、方向別距離データを含む概念である。
【００２６】
「動作データ」:移動物体の移動状態を示すデータであり、実施形態では、移動物体に対して操作者によって与えられている駆動命令に基づくデータが該当する。
【００２７】
「抽象化環境データ」:実施形態では、図５に示すテーブルにおける「その方向に面あり」などが該当する。
【００２８】
「抽象化集合環境データ」:実施形態では、図１２〜図１６に示す各時刻毎の「面」、「空き」などが該当する。
【００２９】
「集合環境データ」:方向別周辺環境データの集合であり、実施形態では、左、左前、前、右前、右の５つセンサの方向別周辺環境データの集合をいう。
【００３０】
「注目集合環境データ」:操作者から与えられた環境特定単語が付加された抽象化集合環境データをいう。
【００３１】
「連データ」:注目集合環境データとその前後所定数の集合環境データで構成された集合環境データの集まりをいう。
【００３２】
「鏡対称入れ替え」:実施形態では、前進方向に対する鏡対称入れ替え処理、およびまたは時間軸方向に対する鏡対称入れ替え処理が該当する。
【００３３】
「方向別距離データ」:実施形態では、図１１に示す各時刻毎の各センサの距離（４０）などが該当する。
【００３４】
「集合距離データ」:方向別距離データの集合をいう。
【００３５】
「通路交わり点」:実施形態では、交差点、三叉路、曲がり角など、通路が交わる（接続される）点をいう。
【００３６】
【発明の実施の形態】
１．機能ブロック図の説明
本発明の一実施形態を図面に基づいて説明する。図１に示す移動物体動作制御データ生成装置１０は、通路および各通路が交わる通路交わり点で構成された環境下で、移動物体の動作を人間が用いる環境特定単語で制御するために、移動物体１に前記環境特定単語を学習させる装置であって、第１の記憶手段３、付加手段５、第１規則記憶手段７、抽象化集合環境データ特定手段９、第２の記憶手段１１、連データ決定手段１３、および生成手段１５を備えている
まず、移動物体１について説明する。移動物体１は、操作者から前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、自らを移動させる駆動手段４、および所定時間毎に方向別距離データの集合である集合距離データを計測する集合距離データ計測手段２を備えている。
【００３７】
第１の記憶手段３は、前記所定時間ごとの集合距離データを、前記移動物体の動作データとともに記憶する。付加手段５は、前記移動中に前記通路交わり点にて、操作者から当該環境を表す環境特定単語が与えられると、前記集合距離データに付加して記憶させる。第１規則記憶手段７は、前記集合距離データを構成する方向別距離データの値の相互関係と周辺環境の抽象化環境データとの対応規則を記憶する。抽象化集合環境データ特定手段９は、前記対応規則に基づいて、第１の記憶手段３に記憶された前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定する。第２の記憶手段１１は、前記方向別の抽象化集合環境データを記憶する。連データ決定手段１３は、第２の記憶手段１１に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目抽象化集合環境データとして決定し、前記注目抽象化集合環境データとともに、その前後所定数の抽象化集合環境データを連データとして決定する。生成手段１５は、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する連データとして生成する。
【００３８】
このように、所定時間ごとの集合距離データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者が環境特定単語を与えるだけで、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【００３９】
また、共通抽象化集合環境データの生成においては、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。したがって、環境特定単語および動作が同じ連データを一般化した動作指令連データを生成することができる。
【００４０】
２．ハードウェア構成
図１に示す動作制御データ生成装置１０を備えた動作計画決定ロボット（以下ロボットと略す）２０について説明する。
【００４１】
ロボット２０は図２に示すように、一対の前輪４７，一対の後輪４８で自走可能であり、側壁には５つのセンサ４０s1〜４０s5が設けられている。５つのセンサは図３に示すように、かかるセンサにより全周に渡って障害物との距離を測定することができる。ロボット２０はリモコンからの駆動命令をアンテナ２１で受信して、かかる駆動命令に基づいて、自走する。
【００４２】
ロボット２０のハードウェア構成について図４を用いて説明する。ロボット２０は、ＣＰＵ２３、ＲＡＭ２７、キーボード２８、インターフェイス３１、通信ボード２８およびバスライン２９を備えている。ＣＰＵ２３は、ＲＯＭ２５に記憶された制御プログラムにしたがいバスライン２９を介して、各部を制御する。
【００４３】
なお、この制御プログラムは、ＰＣカード等の記録媒体から読み出してＲＯＭ２５に書き込むようにしてもよい。なお、ＰＣカード以外に、フレキシブルディスク、ＣＤ−ＲＯＭ、ＩＣカード等のプログラムを実体的に一体化したコンピュータ可読の記録媒体から、ＲＯＭ２５にインストールさせるようにしてもよい。さらに、通信回線を用いてダウンロードするようにしてもよい。
【００４４】
操作者の与えた開始命令、終了命令、各種の駆動命令は、通信ボード２８を介して、ＣＰＵ２３に与えられる。インターフェイス３１には、５つのセンサ４０s1〜４０s5が接続されている。
【００４５】
また、インターフェイス３１には、後輪駆動モータＭを駆動制御するモータ駆動部３７、ハンドリング制御を行うモータ駆動部３８が接続されている。モータ駆動部３７は図２に示す後輪４７を、モータ駆動部３８は前輪４８をそれぞれ制御する。
【００４６】
ＲＡＭ２７にはその他、各種の演算結果等が記憶される。
【００４７】
ＲＯＭ２５には、図５に示すように、環境データと抽象化環境データの対応テーブルが記憶されている。かかる対応テーブルにより、ロボット２０は、５つのセンサから抽出したセンサ値に応じて、周りの環境を把握することができる。この意味では、環境データは条件（具体的数値）であり、抽象化環境データは結果（検出された環境を表すデータ）の関係にある。
【００４８】
３．フローチャート
つぎに、ＲＯＭ２５に記憶されているプログラムについて説明する。ＲＯＭ２５には、図７〜図１０に示す複数のプログラムが記憶されている。
【００４９】
図７は、全体のフローチャートである。操作者は、図６に示す軌跡１２０に沿ってロボット２０が移動するように、リモコン（図示せず）から動作制御命令を与える。かかる動作制御命令は、図４に示す通信ボード２８で受信され、ＣＰＵ２３に与えられる。ＣＰＵ２３は、図８に示す駆動処理プログラムに基づいて駆動処理を行う。具体的には、ＣＰＵ２３は、移動命令である駆動命令が与えられるか否か判断しており（図８ステップＳ１１）、駆動命令が与えられると、かかる駆動命令を実行する信号をモータ駆動部３７，３９に与える（ステップＳ１３）。これにより、モータＭ１,Ｍ２が駆動され、ロボット２０は図６に示す軌跡１２０に沿って移動する。なお、与えられた駆動命令はＲＡＭ２７に一時的に記憶される（ステップＳ１５）。
【００５０】
移動に際して、ＣＰＵ２３は、センサ値の検出処理を行う（図７ステップＳ１）。かかる検出処理の詳細について、図９を用いて説明する。ＣＰＵ２３は、所定時間（この場合Δt秒）が経過するか否か判断しており（図９ステップＳ２１）、所定時間が経過すると、５つのセンサ４０ｓ1〜４０ｓ5の検出値を記憶する（ステップＳ２３）。ＣＰＵ２３は、現在の駆動命令とともに、集合データとしてＲＡＭ２７に記憶する（ステップＳ２５）。これにより、図１１Ａに示す時刻ｔ１の時の各センサの値およびそのときの動きが記憶される。ステップＳ２１〜ステップＳ２５の処理を繰り返すことにより、図１１Ａに示すように、所定時間間隔毎の集合距離データが複数ＲＡＭ２７に記憶される。
【００５１】
なお、各センサはロボット２０のボディ（側壁）に設けられているので、ロボット２０が回転すると一緒に回転する。したがって、各センサ値はロボット２０が回転中は検出しないようにしている。また、図１１Ａにおいて、回転前と回転後でセンサ値が全く異なる値となっているのはそのためである。このようにロボットの進行方向をＹ方向とする座標系で数値を検出することにより、ロボットの進行方向に対する相対的な環境データを抽出することができる。
【００５２】
なお、操作者は、ロボット２０が移動中に、学習させる環境特定単語および動作特定単語を適当なタイミングで入力する。例えば、時刻t１では「通路・前進」、時刻t７では「交差点・右折」、時刻t１０では「通路・前進」・・・というように、リモコン（図示せず）を操作して、ロボット２０に与える。
【００５３】
ロボット２０では、移動中は、図９に示すプログラムとともに、図１０に示すプログラムも実行されている。ＣＰＵ２３は、環境特定単語および動作特定単語が操作者から与えられるか否か判断しており（ステップＳ３１）、環境特定単語および動作特定単語が操作者から与えられると、そのタイミングで、前記集合距離データに付加する。
【００５４】
これにより、図１１Ｂに示すように、環境特定単語および動作特定単語が付加された集合距離データが生成される。
【００５５】
つぎに、ＣＰＵ２３は、前記集合距離データに基づいて、周辺環境の抽象化環境データを生成する（図７ステップＳ３）。抽象化環境データ生成処理について、簡単に説明する。図１１Ａに示すように各時刻毎に５つの方向別距離データが計測されている。これを集合距離データという。かかる集合距離データについて、図５に示す対応テーブルを用いて、方向別距離データから方向別環境データを生成する。例えば、時刻ｔ１、ｔ２において、左方向は、センサ値がともに「４０」で、かつ、動作はともに「前進」である。したがって、ルール３により、面があると判断する。左前方向、右前方向、右方向についても、同様である。
【００５６】
なお、前方向はセンサ値が無限大であるので、「空き」であると判断する。また、時刻t2から時刻t3にて、前方向は、「無限大」から「８５」と、センサ値が大幅に異なる。したがって、ルール４によって、それらの間に端があると判断する。左前方向も同様である。
【００５７】
なお、本実施形態においては、５方向の距離を計測するようにしたので、ルール１，２を適用できる場合が生じていないが、左後ろ、右後ろ、後ろなどの８方向の距離を計測した場合には、ルール１，２を適用して、抽象化環境データを生成することができる。さらに、細かく、例えば、１２方向，１６方向などより多くの方向にセンサを設けて、その値を計測するようにしてもよい。
【００５８】
これにより、図１２〜図１６に示すような抽象化環境データが生成される。
【００５９】
つぎに、ＣＰＵ２３は、図７ステップＳ５に示す抽象化連データの生成処理を行う。抽象化連データの生成処理について、図１７を用いて説明する。ＣＰＵ２３は、連データを決定する（図１７ステップＳ４１）。連データとは、「通路」、「交差点」・・などの環境特定単語が付加されている抽象化集合環境データを中心とする前後所定個数の抽象化集合環境データの集まりをいう。本実施形態においては、前記連データの中心となる抽象化集合環境データを注目集合環境データといい、かかる注目集合環境データを中心として、前後２つずつ、計５つの抽象化集合環境データを１つの連データとして、決定するようにした。これにより、図１２から図１６に示す抽象化集合環境データによって、複数の連データが決定される。
【００６０】
つぎに、ＣＰＵ２３は、環境特定単語および駆動命令が同じ連データをグループ化する（図１７ステップＳ４３）。たとえば、環境特定単語「三叉路」駆動命令「右回り」である連データは、t7を注目集合環境データとするt5からt9の連データ、t23を注目集合環境データとするt21からt26の連データである。したがって、これらが１つのグループとされる。同様にして、環境特定単語「通路」駆動命令「前進」である連データは、t10、t18、t29,t39,t47,t55,t64,t73,t82,t90,t100を注目集合環境データとする連データである。環境特定単語「交差点」駆動命令「左回り」である連データは、t14,t60である。環境特定単語「交差点」駆動命令「右回り」である連データは、t51,t86である。環境特定単語「三叉路」駆動命令「左回り」である連データは、t77,t96である。環境特定単語「曲がり角」駆動命令「右回り」である連データは、t43である。単語「曲がり角」駆動命令「左回り」である連データは、t69である。環境特定単語「交差点」駆動命令「前進」である連データは、t35である。環境特定単語「三叉路」駆動命令「直進」である連データは、t105である。
【００６１】
つぎに、処理対象グループ番号iを初期化し（図１７ステップＳ４５）、i番目のグループについて、一般化処理を行う（ステップＳ４７）。一般化処理とは、各グループに属する連データの各方向別環境データを抽象化することをいう。例えば、環境特定単語「交差点」駆動命令「右回り」であるグループでは、注目集合環境データt51,t87を中心として、両者を重ねあわせる。この場合、図１８Ａ，Ｂに示すように、t49とt85では、左、前、右前、右が一致し、t50とt86では左、左前、〜右のすべてが一致し、t52とt88では左、左前、〜右のすべてが一致し、t53とt89では左、左前、〜右のすべてが一致する。したがって、環境特定単語「交差点」駆動命令「右回り」のグループとしては、図１８Ｃに示すように、一般化される。
【００６２】
つぎに、ＣＰＵ２３は、全グループについて一般化処理が終了したか否か判断する（ステップＳ４９）。全グループについて一般化処理が終了していなければ、処理対象グループ番号iをインクリメントＣＰＵ（ステップＳ５１）、ステップＳ４７の処理を繰り返す。
【００６３】
このようにして、環境特定単語と駆動命令のペアが「三叉路・右回り」、「三叉路・左回り」、「三叉路・直進」、「通路・前進」、「交差点、左回り」、「交差点・右回り」、「交差点・前進」、「曲がり角・右回り」、「曲がり角・左回り」についてそれぞれ、生成される。図１９に、２つの連データから、環境特定単語と駆動命令のペアが「交差点・左回り」が生成される様子を示す。図２０に、２つの連データから、環境特定単語と駆動命令のペアが「三叉路・右回り」を、図２１に、２つの連データから、環境特定単語と駆動命令のペアがそれぞれ「三叉路・左回り」、「交差点・右回り」である場合を示す。図２２に環境特定単語と駆動命令のペアが「通路・直進」の抽象化連データを示す。
【００６４】
このようにして、駆動命令が異なる環境特定単語ごとに、抽象化連データが生成される。
【００６５】
かかる抽象化連データを動作指令連データとして、ロボット２０に記憶させておき、操作者が、環境特定単語とともに、動作特定単語をロボット２０に与えると、図６において、軌跡１２０以外の軌跡についても、操作者の意図する動きをロボット２０にさせることができる。
【００６６】
例えば、図２３Ａにおいて、地点１３０にロボット２０がおかれ、軌跡１４０にて、ロボット２０を移動させたい場合には、操作者は、「通路・直進」、「三叉路・右回転」、「通路・直進」と命令を与える。ロボット２０は、「通路・直進」、「三叉路・右回転」の各動作指令連データを読み出す。ロボット２０は、定期的に環境データを検出して、検出した環境データが現在の動作指令連データのいずれかの動作指令データと一致するか否か判断し、一致する場合には、そのまま、その動作指令データによる駆動命令をモータ駆動部３７，３８に出力すればよい。一方、検出した環境データが現在の動作指令データと一致しなければ、つぎの、動作指令データと一致するか否かを判断するようにすればよい。これにより、順次、動作指令データに沿った制御がなされる。
【００６７】
例えば、図２２における１つめの動作指令データ（左:null,左前:面、前:空き,右:面，右前:null，動作:前進）から、モータの制御情報、「前進」を読み出し、モータ駆動部３７，３８に制御命令を与える。ロボットが動き出し、ＣＰＵ２３はΔt秒後のセンサ値が、現在の動作指令データ（１つめの動作指令データ）に一致するか否かを判断する。一致すれば、現在の動作「前進」を続ける。一方、一致しない場合には、２つめの動作指令データ（左:null,左前:面、前:null,右:面，右前:null，動作:前進）と一致するか否か判断する。この２つの動作指令データでも、一致しない場合には、３つめの動作指令データに一致するか否か判断する・・・と、並べられた動作指令データに沿って、動作が制御される。
【００６８】
なお、前記動作指令連データは、複数の動作指令データで構成されており、各動作指令連データにおける両端（例えば、＋２や−２）の動作指令データは、前記一般化の程度が高い。したがって、本来であれば、次の動作指令連データによる制御に移行していなければならない場合でも、移行していない場合がある。このような場合には、以下に説明するようにして、次の動作指令連データに移行させるようにすればよい。例えば、図２３Ｂに示すように、現在、動作指令連データＲ１で動作制御されている状態で、途中から動作指令連データＲ２による制御に切り替えられる場合において、環境ＣnからＣn+5まで移動物体が移動する場合、次のようにして、動作指令連データが切り替えられる。
【００６９】
検出環境Ｃn+3にて、動作指令連データＲ１の−２における動作指令データと一致し、つぎに、検出環境Ｃn+4にて、動作指令連データＲ１の−１における動作指令データと一致しているとする。かかる状況下で、検出環境Ｃn+5に進むと、動作指令連データＲ１の０における動作指令データと一致しない場合には、次の動作指令連データＲ２の０における動作指令データと一致するか否か判断する。一致する場合には、この動作指令連データにおける−２，−１の時の動作指令データが、検出環境Ｃn+4、Ｃn+3と一致するかを判断し、すべて一致する場合には、つぎの動作指令連データＲ２による動作制御に切り替えればよい。
【００７０】
なお、かかる検出環境は、前記Δt経過後でも、後述した時間軸圧縮をした場合としてもよい。
【００７１】
このようにして、本実施形態においては、前記動作指令連データを順に呼び出しておいて、周辺環境が変化して次の動作指令連データによる制御に移行するかが決定される。したがって、操作者は、制御を希望する順に、動作別の環境特定単語を与えるだけで、ロボットの環境特定単語に対する動作指令連データによってその動作が制御される。
【００７２】
４．他の実施形態
上記実施形態においては、ある環境下で、ロボットを移動させて、抽出した環境データについて、環境特定単語および駆動命令が同じ場合には、これらをまとめる一般化を行っている。しかし、かかる一般化は適度なものでなければ誤動作をおこすおそれがある。すなわち、過度に一般化されると、他の動作指令連データでも、条件が一致してしまう。また、上記実施形態においては、図６における環境下で、任意に移動させているので、各グループ毎の対象として、すべてのパターンが検出されない場合もある。
【００７３】
そこで、以下のようにして、方向性およびまたは時間軸に対して、鏡対称入れ替え処理をした候補を複数生成し、実際に動かしてみて、不適切な候補を排除することにより、より適切な一般化をすることができる。
【００７４】
例えば、三叉路の場合、同じ右折であっても、図２４Ａに示すような右折と、図２４Ｂに示すような右折とがある。この場合、両者の連データは、それぞれ、図２５Ａ、図２５Ｂに示すようなデータであり、このまま、一般化をすると、図２５Ｃに示すような、動作指令連データとなる。これに対して、いずれかを前進方向に対する鏡対称入れ替え処理をして、新たな候補を生成して、一般化すると、図２６Ｃに示すような動作指令連データが生成される。なお、この場合、例２のデータ（図２５Ｂのデータ）を左と右、左前と右前のデータをそれぞれ入れ替えている。
【００７５】
また、いずれかを時間軸方向に対する鏡対象入れ替え処理をして、一般化すると図２７Ｃに示すような動作指令連データとなる。なお、この場合、例２のデータ（図２５Ｂのデータ）をt+2を軸として、tとt+4、t+1とt3のデータをそれぞれ入れ替えている。
【００７６】
また、時間軸および前進方向に対する双方の鏡対象入れ替え処理をするようにしてもよい。この場合を、図２８Ｃに示す。
【００７７】
また、三叉路を直進する場合には、図２９Ａ，図２９Ｂのような場合が考えられる。この場合、両者の連データは、それぞれ、図３０Ａ、図３０Ｂに示すようなデータであり、このまま、一般化をすると、図３０Ｃに示すような、動作指令連データとなる。これに対して、同様に、前進方向に対する鏡対称入れ替え処理、時間軸方向に対する鏡対称入れ替え処理、前進および時間軸方向に対する鏡対称入れ替え処理をした場合を、それぞれ図３１Ｃ、図３２Ｃ、図３３Ｃに示すような動作指令連データとなる。
【００７８】
このようにして、生成された抽象化連データは、それぞれ候補として記憶しておく。そして、ロボット２０を動かしながら、かかる候補のうち、他のグループの条件と誤動作する候補は、過度の一般化が行われているとして、削除するようにするとともに、各グループについて、小グループ化して記憶しておき、現実の適用では、いずれか満足するものを選択するようにすればよい。このように、環境特定単語および駆動命令の組み合わせとしては同じであっても、全部まとめて一般化するのではなく、複数の小グループに区分して記憶しておき、実際の適用段階で、いずれか適する候補を特定することにより、過度の一般化による誤動作を回避することができる。
【００７９】
例えば、環境特定単語および駆動命令が同じ場合として、「三叉路・右折」として、候補が３つあり、前記前進方向に対する鏡対称入れ替え処理および時間軸方向に対する鏡対称入れ替え処理を行うことにより、候補が７つ得られたとする。これら７つをさらにそれぞれ小グループとして記憶しておき、テストすると、そのうちの２つの小グループについては、他のグループ（例えば、「交差点・右折」）と誤動作する場合には、これを削除し、残りの５つの小グループを「三叉路・右折」の候補として記憶しておく。そして、現実に操作者から「通路・前進」、「三叉路・右折」という動作指令が与えられた場合、現在の環境が前記５つの小グループのデータと一致するか否かを判断するようにすればよい。
【００８０】
なお、上記実施形態においては、駆動命令と環境特定単語とが同じ場合で一般化するようしたが、環境特定単語が同じであれば、回転方向を無視して、右回りと左回りとを回転として、一般化した候補を生成することもできる。かかる例を図３４に示す。図３４において、図３４Ａに示す「交差点・右回り」と図３４Ｂに示す「交差点・左回り」を方向性を除いて、図３４Ｃに示すように「交差点・回転」と一般化する。図３５は、「三叉路・右回り」と「三叉路・左回り」とから、「三叉路・回転」を生成した例を示す。このようなまとめる一般化については、右回りと左回りは回転として一般化するなどのルールをあらかじめ記憶しておけばよい。
【００８１】
さらに、駆動命令と環境特定単語とが同じ場合でなくても、環境特定単語が同じものをまとめる一般化をするようにしてもよい。
【００８２】
なお、一般化の程度の異なる複数の候補を生成して、検査を行い、過度の一般化が行われている場合には、これを排除し、複数の候補を記憶しておき、いずれかの動作指令連データで動作制御することにより、ロボットに所望の動きをさせることができる。
【００８３】
なお、単語入力のタイミングがずれる場合も考えられる。このような場合は、注目集合環境データの位置を時刻方向に前後ずらしてみて、最も一致する場合とすればよい。
【００８４】
前記前進方向に対する鏡対称入れ替え処理および時間軸方向に対する鏡対称入れ替え処理は、２つの場合について説明したが、３つ以上で合っても同様に適用できる。例えば、抽出された連データが３つ（連データ１，２，３）ある場合、それぞれ２つを用いて、鏡対称入れ替え処理なし、鏡対称入れ替え処理あり（前進方向およびまたは時間軸方向）をして組み合わせた場合の一般化、これに加えて、３つ全部を用いて、鏡対称入れ替え処理なし、鏡対称入れ替え処理あり（前進方向およびまたは時間軸方向）をして組み合わせた場合に一般化を行うようにすればよい。
【００８５】
本実施形態においては、センサ値として距離を用いたので、一般化処理とは各センサの値および所定のルールに基づいて、周辺環境の形状を把握する処理に該当する。ただし、これに限定されず、予め定められたルールの基づいて、環境集合データを抽象化（一般化）する処理はすべて含む。環境集合データとは、図３に示す５つのセンサに基づいて全方向の環境の組み合わせのデータをいう。
【００８６】
また、上記実施形態においては、センサから抽出したデータから環境データを生成したが、センサから抽出したデータを以下のように時間軸方向に圧縮するようにしてもよい。これは、周辺の環境の変化に比べて、センサが検出する時間間隔がかなり短い場合には、上記実施形態のように注目集合環境データの前２つ、後ろ２つが等しくなってしまう場合があるからである。
【００８７】
このように時間軸方向に圧縮しても、各データは時系列方向の意味合いは残しているので、問題はない。逆に、ロボットの移動速度にかかわらずに所望の動作をさせることができる。
【００８８】
また、端の認識については、当該端部が近づいてくるのか遠ざかっているのかについても判断するようにしてもよい。これにより、より正確に周辺環境の形状を把握することができる。例えば、時刻txとtx+1の間で、ある方向のセンサ値が「無限大」から「１００」となった場合には、端が近づいたと判断できる。また、時刻txとtx+1の間で、ある方向のセンサ値が「４５」から「１００」となった場合には、近い距離から遠い距離となる端があると判断できる。また、逆の場合、例えば、センサ値が「１００」から「４５」となった場合には、遠い距離から近い距離となる端があると判断できる。
【００８９】
上記実施形態においては、２次元の距離データを採用したが、３次元の距離データの場合も同様に適用できる。例えば、環境を構成する物体の高さを採用してもよい。例えば、高さが一定の値（例えば５mm）未満であれば乗り上げて移動し、前記値以上であれば迂回するなどを学習させることができる。さらに、上り坂とか下り坂などを環境特定単語として入力するようにしてもよい。
【００９０】
また、上記実施形態においては、環境データとしてロボットの周辺の環境との距離を用いた場合について説明したが、表面の材質、色、その他センサで検出できる環境データであればどのようなものを用いてもよい。
【００９１】
また、自分自身以外は移動しない場合について説明したが、相手物が移動してくる場合に、相手物の移動速度、保有エネルギー、物体の形状等、異なる修正ルールを記憶しておき、修正するようにすればよい。
【００９２】
また、本実施形態においては、ロボットに適用した場合について説明したが、コンピュータゲームにも同様に適用できる。例えば、コンピュータを用いたゲームで、ユーザは、ある物体の過去の動きからその物体の動くルールを推測して、先回りしてその物体を破壊する得点を競うなどに適用可能である。
【００９３】
本実施形態においては、図１に示す機能を実現する為に、ＣＰＵ２３を用い、ソフトウェアによってこれを実現している。しかし、その一部もしくは全てを、ロジック回路等のハードウェアによって実現してもよい。
【図面の簡単な説明】
【図１】本発明にかかる移動物体動作制御データ生成装置１０の機能ブロック図である。
【図２】図１に示す移動物体動作制御データ生成装置を備えたロボット２０の外観図である。
【図３】５つのセンサの検出方向を示す図である。
【図４】ロボット２０のハードウエア構成の一例を示す図である。
【図５】方向別距離データから方向別環境データを生成するテーブルを示す。
【図６】ロボット２０を動作させる軌跡を示す図である。
【図７】全体のフローチャートである。
【図８】駆動処理のフローチャートである。
【図９】センサ値の検出処理のフローチャートである。
【図１０】環境特定単語の入力処理のフローチャートである。
【図１１】検出されたセンサ値の一例を示す。
【図１２】前記センサ値から生成された抽象化環境データである。
【図１３】前記センサ値から生成された抽象化環境データである。
【図１４】前記センサ値から生成された抽象化環境データである。
【図１５】前記センサ値から生成された抽象化環境データである。
【図１６】前記センサ値から生成された抽象化環境データである。
【図１７】抽象化連データの生成処理のフローチャートである。
【図１８】各グループにおける一般化の処理を説明するための図である。
【図１９】各グループにおける一般化の処理を説明するための図である。
【図２０】各グループにおける一般化の処理を説明するための図である。
【図２１】各グループにおける一般化の処理を説明するための図である。
【図２２】通路・前進における動作指令データを示す。
【図２３】ロボット２０を動作させる環境を示す。
【図２４】三叉路における異なるパターンの動作例を示す。
【図２５】図２４において検出されたセンサ値から得られたデータを示す。
【図２６】図２４において検出されたセンサ値を左右方向に鏡対称入れ替え処理をした場合のデータを示す。
【図２７】図２４において検出されたセンサ値を時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図２８】図２４において検出されたセンサ値を左右方向および時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図２９】三叉路における異なるパターンの動作例を示す。
【図３０】図２９において検出されたセンサ値から得られたデータを示す。
【図３１】図２９において検出されたセンサ値を左右方向に鏡対称入れ替え処理をした場合のデータを示す。
【図３２】図２９において検出されたセンサ値を時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図３３】図２９において検出されたセンサ値を左右方向および時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図３４】三叉路にて、右回り、左回りをまとめて、回転にした場合のデータである。
【図３５】交差点にて、右回り、左回りをまとめて、回転にした場合のデータである。
【符号の説明】
２３・・・・・・・・・・・ＣＰＵ
２７・・・・・・・・・・・メモリ
４０s1〜４０s5・・・・・・センサ
【図１】
0003653212.tif 000002
【図２】
0003653212.tif 000003
【図３】
0003653212.tif 000004
【図４】
0003653212.tif 000005
【図５】
0003653212.tif 000006
【図６】
0003653212.tif 000007
【図７】
0003653212.tif 000008
【図８】
0003653212.tif 000009
【図９】
0003653212.tif 000010
【図１０】
0003653212.tif 000011
【図１１】
0003653212.tif 000012
【図１２】
0003653212.tif 000013
【図１３】
0003653212.tif 000014
【図１４】
0003653212.tif 000015
【図１５】
0003653212.tif 000016
【図１６】
0003653212.tif 000017
【図１７】
0003653212.tif 000018
【図１８】
0003653212.tif 000019
【図１９】
0003653212.tif 000020
【図２０】
0003653212.tif 000021
【図２１】
0003653212.tif 000022
【図２２】
0003653212.tif 000023
【図２３】
0003653212.tif 000024
【図２４】
0003653212.tif 000025
【図２５】
0003653212.tif 000026
【図２６】
0003653212.tif 000027
【図２７】
0003653212.tif 000028
【図２８】
0003653212.tif 000029
【図２９】
0003653212.tif 000030
【図３０】
0003653212.tif 000031
【図３１】
0003653212.tif 000032
【図３２】
0003653212.tif 000033
【図３３】
0003653212.tif 000034
【図３４】
0003653212.tif 000035
【図３５】
0003653212.tif 000036