(57)【特許請求の範囲】
【請求項１】
操作者の移動命令に基づいて自走するロボットであって、
Ａ）所定時間ごとに周辺の環境との距離データを検出し、あらかじめ記憶された環境把握規則を用いて、時系列順の所定数の周辺環境データで構成された周辺環境組データを生成する周辺環境組データ生成手段、
Ｂ）前記移動中に操作者から単語が与えられると、第１型データテーブルを生成して、各項目にする周辺環境組データを記憶させる第１型データテーブル生成手段、
b1)前記第１型データテーブルは、単語を記憶する単語項目、前記生成された周辺環境組データを記憶する周辺環境組データ項目、および前記各周辺環境データに対応する移動命令を記憶する移動命令項目を有する、
Ｃ）前記単語項目が同じ第１型データテーブルについて、周辺環境組データ項目に記憶された周辺環境組データの一致演算を行い、一致する周辺環境組データはそのまま、異なる場合には全文字列一致可能文字列に変換したデータに置き換えて記憶する第１抽象化手段であって、いずれかの第１型データテーブルについて、周辺環境組データ項目および対応する移動命令の組み合わせが、他の第１型データテーブルの周辺環境組データ項目およびその移動命令の組み合わせと一致するか否か判断し、一致する組み合わせが存在する場合には、以下の第２型データテーブルを生成するとともに、一致する組み合わせが複数である場合には、引用単語項目に引用単語を前記複数回記憶する第１抽象化手段、
c1)前記第２型データテーブルは、以下の２つの項目を有している、c11)前記第１データテーブルの単語を記憶する単語項目および、c12)前記生成された周辺環境組データを記憶する周辺環境組データ項目および前記各周辺環境データに対応する移動命令を記憶する移動命令項目に代えて、当該一致する他の対応周辺環境組データの単語項目を記憶する引用単語項目、
Ｄ）前記第２型データテーブルの単語項目が一部または全部重複する第２型データテーブルについて、前記引用単語項目に記憶された引用単語の一致演算を行い、一致する場合にはそのまま、異なる場合には全文字列一致可能文字列に変換したデータに置き換えるとともに、当該単語項目に記憶された単語の各文字についても一致する場合にはそのまま、異なる場合には全文字列一致可能文字列に変換したデータに置き換えて記憶する第２抽象化手段であって、前記複数の引用単語項目に記憶された引用単語を全文字列一致可能文字列に変換する場合には、各第２型データテーブルについて、引用単語項目に記憶された引用単語が同じである場合には、その情報を同一情報として記憶する第２抽象化手段、
Ｅ）以下のe1)〜e2)を有する対応動作特定手段、
e1)操作者から単語が与えられると、かかる単語と、前記第２抽象化手段に記憶された各第２型データテーブルの単語項目に記憶された単語とを比較して、操作者から与えられた単語が、前記第２型データテーブルの単語項目に記憶された単語の全文字列一致可能文字以外の文字列と一致するか否か判断し、一致する場合には、その第２データテーブルを特定するとともに、操作者から与えられた単語のうち前記特定した第２型データテーブルの単語項目に記憶された単語の全文字列一致可能文字と合致させた文字列については、前記第１抽象化手段に記憶された第１型データテーブルのうち、当該文字列と単語項目に記憶された単語とが一致する第１型データテーブルを特定するデータテーブル特定手段、
e2)当該引用単語に代えて前記特定した第１型データテーブルの周辺環境組データおよびこれに対応する移動命令に置換する動作特定手段であって、前記特定した第２データテーブルの引用単語に同一情報が付加されている場合には、全引用単語について置換処理を行う、
を備えたことを特徴とするロボット。
【請求項２】
操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が、複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、第１型の候補として記憶する第１抽象化手段、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い、第２型の候補として記憶する第２抽象化手段、
前記操作者から単語が与えられると、前記第１抽象化手段に記憶された前記第１型の候補のいずれか、および前記第２抽象化手段に記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成する環境動作データ生成手段、
を備えたことを特徴とする単語学習装置。
【請求項３】
操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、第１型の候補として記憶する第１抽象化手段、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い、第２型の候補として記憶する第２抽象化手段、
を備えたことを特徴とする単語学習用装置。
【請求項４】
請求項３の単語学習装置において、
前記引用単語について、同じ引用単語については同じブロックＩＤを、異なる引用単語については異なるブロックＩＤを、前記引用単語に代えて置換すること、
を特徴とするもの。
【請求項５】
請求項３の単語学習装置において、
前記移動物体から与えられる検出された周辺環境データは、所定時間ごとに周辺の環境との距離データを検出し、あらかじめ記憶された環境把握規則を用いて、抽象化して生成された時系列順の所定数の周辺環境データで構成されていること、
を特徴とするもの。
【請求項６】
操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、第１型の候補として記憶する第１抽象化手段、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、各候補について、前記引用単語が複数含まれているか否かの付加判断も実行する抽象化処理を行い、第２型の候補として記憶する第２抽象化手段、
を備えたことを特徴とする単語学習用装置。
【請求項７】
操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させ、かかる学習データを用いて環境動作データを生成する環境動作データ生成装置であって、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い生成された第１型の候補を記憶する第１候補記憶手段、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い生成された第２型の候補を記憶する第２候補記憶手段、
前記操作者から単語が与えられると、前記第１候補記憶手段に記憶された前記第１型の候補のいずれか、および前記第２候補記憶手段に記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成する環境動作データ生成手段、
を備えたことを特徴とする環境動作データ生成装置。
【請求項８】
操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、
所定のデータ構造のデータ群が複数与えられると、前記データ構造を変更することなくデータ内容の抽象化を実行する抽象化手段であって、前記移動物体から与えられる、検出された周辺環境データ、移動命令および単語で構成されたデータ構造を有する単語付き環境動作データを抽象化して、単語付き環境動作データを第１型の候補として生成する抽象化手段、
前記第１記憶手段に記憶された第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させて、変換第１型候補を生成する変換候補生成手段、
を備え、
前記抽象化手段は、前記変換第１型候補を抽象化することにより、変換第１型候補を第２型の候補を生成し、
さらに、
前記操作者から単語が与えられると、前記第１記憶手段に記憶された前記第１型の候補のいずれか、および前記第２記憶手段に記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換して、前記操作者から与えられた単語に対応する環境動作データを生成する環境動作データ生成手段、
を備えたことを特徴とする単語学習装置。
【請求項９】
操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習方法であって、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、これにより複数の第１型の候補を生成し、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い、第２型の候補を生成すること、
を備えたことを特徴とする単語学習方法。
【請求項１０】
操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させ、かかる学習データを用いて環境動作データを生成する環境動作データ生成方法であって、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い生成された第１型の候補を記憶しておき、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い生成された第２型の候補を記憶しておき、
前記操作者から単語が与えられると、前記記憶された前記第１型の候補のいずれか、および前記記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成すること、
を特徴とする環境動作データ生成方法。
【請求項１１】
コンピュータを、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置として機能させるためのプログラムであって、
前記プログラムは、前記コンピュータに、以下の処理を実行させるためのプログラムであること、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、これにより複数の第１型の候補を生成し、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い、第２型の候補を生成する、
を特徴とするコンピュータ可読のプログラム。
【請求項１２】
コンピュータを、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させ、かかる学習データを用いて環境動作データを生成する環境動作データ生成装置として機能させるためのプログラムであって、前記プログラムは、前記コンピュータに、以下の処理を実行させるためのプログラムであること、
前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い生成された第１型の候補を記憶しておき、
前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い生成された第２型の候補を記憶しておき、
前記操作者から単語が与えられると、前記記憶された前記第１型の候補のいずれか、および前記記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成する、
を特徴とするコンピュータ可読のプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、移動物体の単語学習に関する。
【０００２】
【関連技術および発明が解決しようとする課題】
出願人は特願２０００−２３５３５２号にて、動作制御データ生成装置を既に出願しており、これによりロボットに動作およびこれと対応する単語を学習させることができる。簡単に説明すると、「1)ロボットを図６に示すような環境下で移動命令を与え任意に移動させる」、「2)その際、記憶させたい学習単語「交差点前進」、「三叉路右折」などをあわせて記憶させる」、「3)ロボットは同じ学習単語が与えられた環境データを一般化して、各学習単語についての環境データを生成する」というものである。
【０００３】
上記動作と単語との対応を上記手法にて学習させる場合に、繰り返しの概念を有する単語を学習させる場合に、当該動作を所定回数繰り返さなければならない。例えば、「３回橋を渡る」という単語に対応する動作をロボットに学習させる場合、橋を渡るという動作を３回繰り返し教えなければならない。
【０００４】
かかる問題を解決するために繰り返しとはどのような処理すべきかを、あらかじめプログラムしておくことは煩雑である。
【０００５】
この発明は上記問題を解決し、あらかじめ個々の学習処理についてのプログラムを用意することなく、移動物体が学習可能な移動物体学習方法またはその装置を提供することを目的とする。
【０００６】
さらに詳しくは、移動物体が繰り返しの概念を簡易に学習することができる繰り返し概念学習方法またはその装置を提供することを目的とする。
【０００７】
【課題を解決するための手段および発明の効果】
１）本発明にかかるロボットは、操作者の移動命令に基づいて自走するロボットであって、Ａ）所定時間ごとに周辺の環境との距離データを検出し、あらかじめ記憶された環境把握規則を用いて、時系列順の所定数の周辺環境データで構成された周辺環境組データを生成する周辺環境組データ生成手段、Ｂ）前記移動中に操作者から単語が与えられると、第１型データテーブルを生成して、各項目にする周辺環境組データを記憶させる第１型データテーブル生成手段、b1)前記第１型データテーブルは、単語を記憶する単語項目、前記生成された周辺環境組データを記憶する周辺環境組データ項目、および前記各周辺環境データに対応する移動命令を記憶する移動命令項目を有する、Ｃ）前記単語項目が同じ第１型データテーブルについて、周辺環境組データ項目に記憶された周辺環境組データの一致演算を行い、一致する周辺環境組データはそのまま、異なる場合には全文字列一致可能文字列に変換したデータに置き換えて記憶する第１抽象化手段であって、いずれかの第１型データテーブルについて、周辺環境組データ項目および対応する移動命令の組み合わせが、他の第１型データテーブルの周辺環境組データ項目およびその移動命令の組み合わせと一致するか否か判断し、一致する組み合わせが存在する場合には、以下の第２型データテーブルを生成するとともに、一致する組み合わせが複数である場合には、引用単語項目に引用単語を前記複数回記憶する第１抽象化手段、c1)前記第２型データテーブルは、以下の２つの項目を有している、c11)前記第１データテーブルの単語を記憶する単語項目および、c12)前記生成された周辺環境組データを記憶する周辺環境組データ項目および前記各周辺環境データに対応する移動命令を記憶する移動命令項目に代えて、当該一致する他の対応周辺環境組データの単語項目を記憶する引用単語項目、Ｄ）前記第２型データテーブルの単語項目が一部または全部重複する第２型データテーブルについて、前記引用単語項目に記憶された引用単語の一致演算を行い、一致する場合にはそのまま、異なる場合には全文字列一致可能文字列に変換したデータに置き換えるとともに、当該単語項目に記憶された単語の各文字についても一致する場合にはそのまま、異なる場合には全文字列一致可能文字列に変換したデータに置き換えて記憶する第２抽象化手段であって、前記複数の引用単語項目に記憶された引用単語を全文字列一致可能文字列に変換する場合には、各第２型データテーブルについて、引用単語項目に記憶された引用単語が同じである場合には、その情報を同一情報として記憶する第２抽象化手段をそなえている。このように、第２抽象化手段は、引用単語に変換してから、前記全文字列一致可能文字列に変換することにより、前記単語項目に共通の文字列があり、かつ引用単語文字列の個数が同じ場合には、前記前記全文字列一致可能文字列に変換が可能となる。また、前記同一情報が付加されている。これにより、繰り返し用の候補枠を生成することができる。
【０００８】
また、本発明にかかるロボットは、Ｅ）以下のe1)〜e2)を有する対応動作特定手段、e1)操作者から単語が与えられると、かかる単語と、前記第２抽象化手段に記憶された各第２型データテーブルの単語項目に記憶された単語とを比較して、操作者から与えられた単語が、前記第２型データテーブルの単語項目に記憶された単語の全文字列一致可能文字以外の文字列と一致するか否か判断し、一致する場合には、その第２データテーブルを特定するとともに、操作者から与えられた単語のうち前記特定した第２型データテーブルの単語項目に記憶された単語の全文字列一致可能文字と合致させた文字列については、前記第１抽象化手段に記憶された第１型データテーブルのうち、当該文字列と単語項目に記憶された単語とが一致する第１型データテーブルを特定するデータテーブル特定手段、e2)当該引用単語に代えて前記特定した第１型データテーブルの周辺環境組データおよびこれに対応する移動命令に置換する動作特定手段であって、前記特定した第２データテーブルの引用単語に同一情報が付加されている場合には、全引用単語について置換処理を行う。これにより、前記繰り返し用の候補枠を用いて環境動作データを生成することができる。
【０００９】
なお、周辺環境組データ生成手段は、実施形態では図７ステップＳ１からステップＳ５までのＣＰＵの処理が該当し、第１型データテーブル生成手段は図３８に示すデータを生成する図３７ステップＳ１０７のＣＰＵの処理に該当し、第１抽象化手段は、図４１に示すデータを生成する図３７ステップＳ１１１のＣＰＵの処理に該当し、第２抽象化手段は、図４２に示すデータを生成する図３７ステップＳ１１３のＣＰＵの処理に該当し、対応動作特定手段は図３７ステップＳ１１７，ステップＳ１１９のＣＰＵの処理に該当する。
【００１０】
２）本発明にかかる単語学習装置は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、Ａ）前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が、複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、第１型の候補として記憶する第１抽象化手段、Ｂ）前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い、第２型の候補として記憶する第２抽象化手段を備えている。このように、第２抽象化手段は、前記第１の候補の環境動作データ部分を引用単語に変換してから、前記抽象化を行うので、前記単語の一部または全部が一致しかつ引用単語文字列の個数が同じ候補については、前記前記全文字列一致可能文字列に変換が可能となる。また、前記繰り返し情報が付加されている。これにより、繰り返し用の候補枠を生成することができる。
【００１１】
さらに、本発明にかかる単語学習装置は、Ｃ）前記操作者から単語が与えられると、前記第１抽象化手段に記憶された前記第１型の候補のいずれか、および前記第２抽象化手段に記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成する環境動作データ生成手段を備えている。これにより、前記繰り返し用の候補枠を用いて環境動作データを生成することができる。
【００１２】
なお、第１抽象化手段は、図３８に示すデータを生成する図３７ステップＳ１０７のＣＰＵの処理に該当し、第２抽象化手段は図４２に示すデータを生成する図３７ステップＳ１１１，ステップＳ１１３のＣＰＵの処理に該当し、環境動作データ生成手段は、図３７ステップＳ１１７、ステップＳ１１９のＣＰＵの処理に該当する。
【００１３】
３）本発明にかかる単語学習装置は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、Ａ）前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、第１型の候補として記憶する第１抽象化手段、Ｂ）前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かを付加する処理を含む抽象化処理を行い、第２型の候補として記憶する第２抽象化手段を備えている。このように、第２抽象化手段は、前記第１の候補の環境動作データ部分を引用単語に変換してから、前記抽象化を行うので、前記単語の一部または全部が一致しかつ引用単語文字列の個数が同じ候補については、前記前記全文字列一致可能文字列に変換が可能となる。また、前記繰り返し情報が付加されている。これにより、繰り返し用の候補枠を生成することができる。
【００１４】
４）本発明にかかる単語学習装置においては、前記引用単語について、同じ引用単語については同じブロックＩＤを、異なる引用単語については異なるブロックＩＤを、前記引用単語の代えて置換する。したがって、付与するブロックＩＤに基づいて前記繰り返し用の候補枠を生成することができる。
【００１５】
５）本発明にかかる単語学習装置においては、前記移動物体から与えられる検出された周辺環境データは、所定時間ごとに周辺の環境との距離データを検出し、あらかじめ記憶された環境把握規則を用いて、抽象化して生成された時系列順の所定数の周辺環境データで構成されている。したがって、距離データから前記周辺環境データを生成することができる。
【００１６】
６）本発明にかかる単語学習装置は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、Ａ）前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、第１型の候補として記憶する第１抽象化手段、Ｂ）前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、各候補について、前記引用単語が複数含まれているか否かの付加判断も実行する抽象化処理を行い、第２型の候補として記憶する第２抽象化手段を備えている。このように、第２抽象化手段は、前記第１の候補の環境動作データ部分を引用単語に変換してから、前記抽象化を行うので、前記単語の一部または全部が一致しかつ引用単語文字列の個数が同じ候補については、前記前記全文字列一致可能文字列に変換が可能となる。また、前記繰り返し情報が付加されている。これにより、繰り返し用の候補枠を生成することができる。
【００１７】
７）本発明にかかる環境動作データ生成装置は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させ、かかる学習データを用いて環境動作データを生成する環境動作データ生成装置であって、Ａ）前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い生成された第１型の候補を記憶する第１候補記憶手段、Ｂ）前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い生成された第２型の候補を記憶する第２候補記憶手段、Ｃ）前記操作者から単語が与えられると、前記第１候補記憶手段に記憶された前記第１型の候補のいずれか、および前記第２候補記憶手段に記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成する環境動作データ生成手段を備えている。したがって、あらかじめ記憶した繰り返し用の候補枠を用いて環境動作データを生成することができる。
【００１８】
８）本発明にかかる単語学習装置は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、Ａ）所定のデータ構造のデータ群が複数与えられると、前記データ構造を変更することなくデータ内容の抽象化を実行する抽象化手段であって、前記移動物体から与えられる、検出された周辺環境データ、移動命令および単語で構成されたデータ構造を有する単語付き環境動作データを抽象化して、単語付き環境動作データを第１型の候補を生成する抽象化手段、Ｂ）前記第１記憶手段に記憶された第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させて、変換第１型候補を生成する変換候補生成手段を備え、Ｃ）前記抽象化手段は、前記変換第１型候補を抽象化することにより、変換第１型候補を第２型の候補を生成する。このように、抽象化手段は、前記変換第１型候補に変換してから、前記抽象化を行うので、前記単語の一部または全部が一致しかつ引用単語文字列の個数が同じ候補については、前記前記全文字列一致可能文字列に変換が可能となる。これにより、繰り返し用の候補枠を生成することができる。さらに、Ｄ）前記操作者から単語が与えられると、前記第１記憶手段に記憶された前記第１型の候補のいずれか、および前記第２記憶手段に記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換して、前記操作者から与えられた単語に対応する環境動作データを生成する環境動作データ生成手段を備えている。これにより、環境動作データを生成することができる。
【００１９】
抽象化手段は、図３７ステップＳ１０７、ステップＳ１１３のＣＰＵの処理に該当し、変換候補生成手段は図４１に示すデータを生成するためのステップＳ１１１の処理が該当し、環境動作データ生成手段は、図３７ステップＳ１１７、ステップＳ１１９のＣＰＵの処理に該当する。
【００２０】
９）本発明にかかる単語学習方法は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習方法であって、Ａ）前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、これにより複数の第１型の候補を生成し、Ｂ）前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い、第２型の候補を生成する。このように、前記第１の候補の環境動作データ部分を引用単語に変換してから、前記抽象化を行うので、前記単語の一部または全部が一致しかつ引用単語文字列の個数が同じ候補については、前記前記全文字列一致可能文字列に変換が可能となる。また、前記繰り返し情報が付加されている。これにより、繰り返し用の候補枠を生成することができる。
【００２１】
１０）本発明にかかる環境動作データ生成方法は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させ、かかる学習データを用いて環境動作データを生成する環境動作データ生成方法であって、Ａ）前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い生成された第１型の候補を記憶しておき、Ｂ）前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い生成された第２型の候補を記憶しておき、Ｃ）前記操作者から単語が与えられると、前記記憶された前記第１型の候補のいずれか、および前記記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成する。したがって、あらかじめ記憶した繰り返し用の候補枠を用いて環境動作データを生成することができる。
【００２２】
特許請求の範囲で用いた用語と実施形態との対応について説明をする。
【００２３】
「文字列の一部または全部が一致する単語に基づく抽象化処理」とは、実施形態では、例えば、環境単語および動作単語が同じデータである図２１Ａに示すデータと図２１Ｂに示すデータから、図２１Ｃに示すデータを生成することが該当する。
【００２４】
「当該候補の単語の一部または全部が一致する他の候補が存在する場合」とは、実施形態では、「３回交差点右回」、「３回交差点左回」が存在する場合が該当する。
【００２５】
「前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理」とは、実施形態では、図４２に示す個別枠が同じデータが格納されていたことを付加する処理に該当する。
【００２６】
「前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理」とは、実施形態では、図４２に示す個別枠が同じデータが格納されていたことを付加する処理に該当する。
【００２７】
「前記データ構造を変更することなくデータ内容の抽象化を実行する」とは、例えば、図１８Ａおよび図１８Ｂに示すデータから図１８Ｃに示すデータを生成することが該当する。また、図４１に示すデータから図４２に示すデータを生成することも該当する。
【００２８】
「環境動作を表す単語」とは実施形態では、環境単語および動作単語の組データに該当する。
【００２９】
【発明の実施の形態】
Ａ）先の出願における開示
本願発明の実施形態を説明する前に先の出願において開示した技術について説明する。
【００３０】
１．機能ブロック図の説明
図１に示す移動物体動作制御データ生成装置１０は、通路および各通路が交わる通路交わり点で構成された環境下で、移動物体の動作を人間が用いる環境特定単語で制御するために、移動物体１に前記環境特定単語を学習させる装置であって、第１の記憶手段３、付加手段５、第１規則記憶手段７、抽象化集合環境データ特定手段９、第２の記憶手段１１、連データ決定手段１３、および生成手段１５を備えている
まず、移動物体１について説明する。移動物体１は、操作者から前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、自らを移動させる駆動手段４、および所定時間毎に方向別距離データの集合である集合距離データを計測する集合距離データ計測手段２を備えている。
【００３１】
第１の記憶手段３は、前記所定時間ごとの集合距離データを、前記移動物体の動作データとともに記憶する。付加手段５は、前記移動中に前記通路交わり点にて、操作者から当該環境を表す環境特定単語が与えられると、前記集合距離データに付加して記憶させる。第１規則記憶手段７は、前記集合距離データを構成する方向別距離データの値の相互関係と周辺環境の抽象化環境データとの対応規則を記憶する。抽象化集合環境データ特定手段９は、前記対応規則に基づいて、第１の記憶手段３に記憶された前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定する。第２の記憶手段１１は、前記方向別の抽象化集合環境データを記憶する。連データ決定手段１３は、第２の記憶手段１１に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目抽象化集合環境データとして決定し、前記注目抽象化集合環境データとともに、その前後所定数の抽象化集合環境データを連データとして決定する。生成手段１５は、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する連データとして生成する。
【００３２】
このように、所定時間ごとの集合距離データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者が環境特定単語を与えるだけで、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【００３３】
また、共通抽象化集合環境データの生成においては、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。したがって、環境特定単語および動作が同じ連データを一般化した動作指令連データを生成することができる。
【００３４】
２．ハードウェア構成
図１に示す動作制御データ生成装置１０を備えた動作計画決定ロボット（以下ロボットと略す）２０について説明する。
【００３５】
ロボット２０は図２に示すように、一対の前輪４７，一対の後輪４８で自走可能であり、側壁には５つのセンサ４０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）未満であれば乗り上げて移動し、前記値以上であれば迂回するなどを学習させることができる。さらに、上り坂とか下り坂などを環境特定単語として入力するようにしてもよい。
【００８５】
また、上記実施形態においては、環境データとしてロボットの周辺の環境との距離を用いた場合について説明したが、表面の材質、色、その他センサで検出できる環境データであればどのようなものを用いてもよい。
【００８６】
また、自分自身以外は移動しない場合について説明したが、相手物が移動してくる場合に、相手物の移動速度、保有エネルギー、物体の形状等、異なる修正ルールを記憶しておき、修正するようにすればよい。
【００８７】
また、本実施形態においては、ロボットに適用した場合について説明したが、コンピュータゲームにも同様に適用できる。例えば、コンピュータを用いたゲームで、ユーザは、ある物体の過去の動きからその物体の動くルールを推測して、先回りしてその物体を破壊する得点を競うなどに適用可能である。
【００８８】
本実施形態においては、図１に示す機能を実現する為に、ＣＰＵ２３を用い、ソフトウェアによってこれを実現している。しかし、その一部もしくは全てを、ロジック回路等のハードウェアによって実現してもよい。
【００８９】
上記移動物体動作制御データ生成装置においては、移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体の動作制御用のデータを生成する移動物体動作制御データ生成装置であって、Ｂ）前記移動物体は、b1)操作者から前記移動物体を前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、前記移動物体を移動させる駆動手段、b2)所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを計測する集合環境データ計測手段を備え、Ｃ）移動物体動作制御データ生成装置移動物体動作制御データ生成装置は、c1)前記集合環境データ計測手段が計測した前記所定時間ごとの集合環境データを、前記移動物体の動作データとともに記憶する第１の記憶手段、c2)前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶させる付加手段、c3)前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則を記憶した第１規則記憶手段、c4)前記対応規則に基づいて、前記第１の記憶手段に記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定する抽象化集合環境データ特定手段、c5)前記方向別の抽象化集合環境データを記憶する第２の記憶手段、c6)前記第２の記憶手段に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定する連データ決定手段、c7)前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する環境動作データ生成手段を備えている。
【００９０】
このように、所定時間ごとの集合環境データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者は環境特定単語を与えるだけで、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【００９１】
上記移動物体動作制御データ生成装置においては、前記生成手段は、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。したがって、環境特定単語および動作が同じ連データを一般化した動作指令連データを生成することができる。
【００９２】
上記移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する方向別抽象化環境データの値を、注目環境集合環境データを中心に鏡対称入れ替えを行なう。したがって、時間軸方向に対して、対象である状況下において、一方だけでも検出すれば、他方については、現実に動作させなくても、前記連データを取得することができる。
【００９３】
上記移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する各方向別抽象化環境データについて、その値を進行方向に対して直交する方向に鏡対称入れ替えを行なう。したがって、前記進行方向に対して直交する方向に対して、対象である状況下において、一方だけでも検出すれば、他方については現実に動作させなくても、前記連データを取得することができる。
【００９４】
上記移動物体動作制御データ生成装置においては、前記生成された複数の環境データについて、動作の回転方向が異なる場合には、さらに、各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データとする。したがって、左右の回転方向を覗いた一般化した動作指令連データを得ることができる。
【００９５】
上記移動物体動作制御データ生成装置においては、前記得られた複数の動作指令連データについて、操作者によって、試運用し、仮に適用した場合に、他の動作指令連データと区別できないほど、抽象化されたものは削除する。このように候補を複数作成し、条件に合致しないものを排除することにより、過度に一般化された候補による誤動作を防止できる。
【００９６】
上記移動物体動作制御データ生成装置の使用方法においては、操作者は、前記移動物体を前記環境下にて、任意に移動させて前記移動物体の動作を制御するデータを生成させる。したがって、操作者は全パターンについて、これを分析してその動きをさせなくても、前記移動物体に環境特定単語に対応する動作指令連データを学習させることができる。
【００９７】
上記移動物体動作制御データ生成装置は、Ａ）通路および各通路が交わる通路交わり点で構成された環境下で、移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体に前記環境特定単語を学習させる移動物体動作制御データ生成装置であって、Ｂ）前記移動物体は、b1)操作者から前記移動物体を前記環境下にて移動させる移動命令が与えられると、当該移動命令に基づいて、前記移動物体を移動させる駆動手段、b2)所定時間毎に方向別距離データの集合である集合距離データを計測する集合距離データ計測手段を備え、Ｃ）前記移動物体動作制御データ生成装置は、c1)前記所定時間ごとの集合距離データを、前記移動物体の動作データとともに記憶する第１の記憶手段、c2)前記移動中に前記通路交わり点にて、操作者から当該環境を表す環境特定単語が与えられると、前記集合距離データに付加して記憶させる付加手段、c3)前記集合距離データを構成する方向別距離データの値の相互関係と周辺環境の抽象化環境データとの対応規則を記憶した第１規則記憶手段、c4)前記対応規則に基づいて、前記第１の記憶手段に記憶された前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定する抽象化集合環境データ特定手段、c5)前記方向別の抽象化集合環境データを記憶する第２の記憶手段、c6)前記第２の記憶手段に記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目抽象化集合環境データとして決定し、前記注目抽象化集合環境データとともに、その前後所定数の抽象化集合環境データを連データとして決定する連データ決定手段、c7)前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する連データとして生成する環境動作データ生成手段を備えている。
【００９８】
このように、所定時間ごとの集合距離データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合距離データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者から与えられた環境特定単語により、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【００９９】
また、共通抽象化集合環境データの生成においては、前記複数の連データのうち、環境特定単語および動作が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。したがって、環境特定単語および動作が同じ連データを一般化した動作指令連データを生成することができる。
【０１００】
上記移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する方向別抽象化環境データの値を、注目抽象化集合環境データを中心に鏡対称入れ替えを行なう。
【０１０１】
値を、注目環境集合環境データを中心に鏡対称入れ替えを行なう。したがって、時間軸方向に対して、対象である状況下において、一方だけでも検出すれば、他方については、現実に動作させなくても、前記連データを取得することができる。
【０１０２】
上記移動物体動作制御データ生成装置においては、前記生成手段は、前記抽出した連データの各方向別環境データについて、異なる値の方向別抽象化環境データを捨てる場合に、連データを構成する各方向別抽象化環境データについて、その値を進行方向に対して直交する方向に鏡対称入れ替えを行なう。したがって、前記進行方向に対して直交する方向に対して、対象である状況下において、一方だけでも検出すれば、他方については現実に動作させなくても、前記連データを取得することができる。
【０１０３】
上記移動物体動作制御データ生成方法は、移動物体の動作を人間が用いる環境特定単語で制御するために、前記移動物体の動作制御用のデータを生成する移動物体動作制御データ生成方法であって、1)前記移動物体を移動させつつ、所定時間毎に前記移動物体の方向別周辺環境データの集合である集合環境データを計測し、2)前記所定時間ごとの集合環境データを、前記移動物体の動作データとともに記憶し、3)前記移動中に操作者から当該環境を表す環境特定単語が与えられると、前記集合環境データに付加して記憶し、4)あらかじめ記憶した前記方向別環境データの相互関係と周辺環境の抽象化環境データとの対応規則に基づいて、前記記憶された前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定して記憶し、5)前記記憶された抽象化集合環境データのうち、前記環境特定単語が付加されている抽象化集合環境データを注目集合環境データとして決定し、前記注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、6)前記複数の連データのうち、環境特定単語が同じ連データを抽出し、かかる連データの各方向別抽象化環境データについて、異なる値の方向別抽象化環境データを捨てて、同じ値の方向別抽象化環境データを有する共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成する。
【０１０４】
このように、所定時間ごとの集合環境データおよび前記移動物体の動作データを与えられた環境特定単語とともに記憶し、前記対応規則に基づいて、前記所定時間毎の集合環境データから、周辺環境の抽象化集合環境データを特定し、前記抽象化集合環境データのうち、注目集合環境データとともに、その前後所定数の集合環境データを連データとして決定し、前記複数の連データに基づき、共通抽象化集合環境データで構成された連データを当該環境特定単語に対応する動作指令連データとして生成している。したがって、操作者から与えられた環境特定単語により、前記動作指令連データに基づく動作制御が可能となる。また、環境特定単語によってで前記移動物体の動作を制御できるので、プログラミングも簡易となる。
【０１０５】
以下に、上記開示で用いた用語について説明をする。
【０１０６】
「環境特定単語」:移動物体が移動する際の周りの環境を示す単語であり、上記実施形態では、交差点、三叉路等が該当する。
【０１０７】
「集合環境データ」:方向別周辺環境データの集合であり、上記実施形態では、左、左前、前、右前、右の５つセンサの方向別周辺環境データの集合をいい、方向別周辺環境データを含む概念である。
【０１０８】
「方向別周辺環境データ」:上記実施形態では、図１１に示す各時刻毎の各センサの距離（４０）などが該当し、方向別距離データを含む概念である。
【０１０９】
「動作データ」:移動物体の移動状態を示すデータであり、上記実施形態では、移動物体に対して操作者によって与えられている駆動命令に基づくデータが該当する。
【０１１０】
「抽象化環境データ」:上記実施形態では、図５に示すテーブルにおける「その方向に面あり」などが該当する。
【０１１１】
「抽象化集合環境データ」:上記実施形態では、図１２〜図１６に示す各時刻毎の「面」、「空き」などが該当する。
【０１１２】
「集合環境データ」:方向別周辺環境データの集合であり、上記実施形態では、左、左前、前、右前、右の５つセンサの方向別周辺環境データの集合をいう。
【０１１３】
「注目集合環境データ」:操作者から与えられた環境特定単語が付加された抽象化集合環境データをいう。
【０１１４】
「連データ」:注目集合環境データとその前後所定数の集合環境データで構成された集合環境データの集まりをいう。
【０１１５】
「鏡対称入れ替え」:上記実施形態では、前進方向に対する鏡対称入れ替え処理、およびまたは時間軸方向に対する鏡対称入れ替え処理が該当する。
【０１１６】
「方向別距離データ」:上記実施形態では、図１１に示す各時刻毎の各センサの距離（４０）などが該当する。
【０１１７】
「集合距離データ」:方向別距離データの集合をいう。
【０１１８】
「通路交わり点」:上記実施形態では、交差点、三叉路、曲がり角など、通路が交わる（接続される）点をいう。
【０１１９】
Ｂ）第１の実施形態（繰り返し学習）
前記ロボット２０に、さらに、繰り返し概念を学習する機能を追加した繰り返し概念学習可能装置について図３６〜図４２を用いて説明する。
【０１２０】
上記実施形態においては、操作者が学習を希望する単語を入力しつつロボットを移動させれば、ロボットが与えられた単語と同じ単語を有するデータを抽象化する。したがって、例えば単語「３回交差点直進」を学習させる場合、その動作をさせれば同様に、当該単語に対応する動作を学習させることができる。しかし、全ての単語の学習において実際に動作させて学習させるのは煩雑である。この実施形態では、ロボット２０に繰り返し概念を学習させて、既に記憶されている単語を組み合わせることにより、新たな単語と動作との関係を生成する。
【０１２１】
単語学習装置２００は、操作者から移動命令を受けるとこれに基づいて移動しつつ周辺環境を検出する移動物体に、ある環境下における動作を表す環境動作を表す単語を与えて、前記単語と前記環境動作との関係を学習させる単語学習装置であって、第１抽象化手段２０３、第２抽象化手段２０５、環境動作データ生成手段２０７および記憶手段２０９を備えている。
【０１２２】
第１抽象化手段２０３は、前記移動物体から与えられる検出された周辺環境データ、移動命令および、単語が、複数与えられると、文字列の一部または全部が一致する単語に基づいて、抽象化処理を行い、第１型の候補として記憶する。第２抽象化手段２０５は、前記第１型の候補について、他の候補の環境動作データを一部に含む単語が存在する場合には、当該環境動作データ部分のデータに代えて当該候補の単語を引用単語として置換させるとともに、当該候補の単語の一部または全部が一致する他の候補が存在する場合には、前記引用単語が繰り返されているか否かの繰り返し情報を付加する処理を含む抽象化処理を行い、第２型の候補として記憶する。このように、前記第１の候補の環境動作データ部分を引用単語に変換してから、前記抽象化を行うので、前記単語の一部または全部が一致しかつ引用単語文字列の個数が同じ候補については、前記前記全文字列一致可能文字列に変換が可能となる。また、前記繰り返し情報が付加されている。これにより、繰り返し用の候補枠を生成することができる。
【０１２３】
また、環境動作データ生成手段２０７は前記操作者から単語が与えられると、前記第１抽象化手段に記憶された前記第１型の候補のいずれか、および前記第２抽象化手段に記憶された前記第２型の候補を組み合わせて、当該操作者から与えられた単語に対する環境動作を生成する手段であって、前記第２型の候補のうち抽象化されたことにより非特定である部分の文字列に前記いずれかの第１型の候補の単語を代入して、これにより、操作者から与えられた単語を生成可能な組み合わせを決定し、特定された第２型の候補の引用単語を前記第１型の候補の環境動作データに置換するとともに、前記繰り返し情報が付加されている場合には、全引用単語について前記置換処理を繰り返して、前記操作者から与えられた単語に対応する環境動作データを生成する。したがって、前記繰り返し用の候補枠を用いて環境動作データを生成することができる。記憶手段２０９は、生成された環境動作データを記憶する。
【０１２４】
ハードウェア構成については、既に説明したものと同様であるので説明は省略する（図２〜図５参照）。
【０１２５】
つぎに、この場合のＲＯＭ２５に追加記憶されるプログラムについて説明する。なお、以下では、単語「３回交差点直進」という動作を、ロボット２０に直接入力することなく、対応する動作を学習させる場合について説明する。
【０１２６】
ＲＯＭ２５には、既に説明したように、図７〜図１０に示す複数のプログラムが記憶されており、抽象化連データが生成される。図３７では、図７ステップＳ１〜ステップＳ５の処理を含めて記述している。
【０１２７】
操作者は動作単語および環境単語を入力しつつ、学習させたい動作命令を与える。ＣＰＵ２３は、かかる単語入力があるか否か判断しており（図３７ステップＳ１０１）、単語入力があると検出された環境動作と関連づけて記憶する（ステップＳ１０３）。ＣＰＵ２３は単語入力が終了したか否か判断しており（ステップＳ１０５）、単語入力が終了すると抽象化処理を行う（ステップＳ１０７）。
【０１２８】
なお、単語入力が終了したか否かは、例えば、単語入力終了命令が与えられたか否かや、または所定時間経過しても新たな単語入力がないか等で判断すればよい。
【０１２９】
かかる処理（ステップＳ１０１〜ステップＳ１０７）によって、図３８に示すような環境動作単語ごとの周辺環境データが生成される。例えば、環境動作単語「交差点右回」の具体的データは、グループＫ１である。グループＫＩのデータ構造は、既に説明したは図１８Ｃに示すように、抽象化された周辺環境データ、駆動命令、および環境単語、動作単語が時系列で構成されたデータである。なお、この実施形態における環境動作単語とは、図１８Ｃの、環境単語および動作単語をまとめた概念である。
【０１３０】
このようにして、環境動作単語と、抽象化環境データおよび駆動命令との対応データが第１型の候補データとして複数の候補データが生成される。
【０１３１】
つぎに、操作者は、同様にして、繰り返し回数を含む環境動作単語をロボット２０に学習させる。この場合、単語「３回交差点直進」を直接学習させるわけではなく、単語「３回交差点右回」、「３回三叉路右回」、「３回三叉路左回」、「４回三叉路右回」、「４回三叉路左回」などを学習させる。具体的なデータは、例えば、単語「３回交差点右回」については、図１８Ｃに示す「交差点右回」のt-2〜t+2までのデータが３回繰り返されたデータとなる（図３９参照）。かかる動作を実行することにより、ステップＳ１０１〜ステップＳ１０７の処理により、図４０に示すような第１型の候補データが生成される。
【０１３２】
ＣＰＵ２３は、生成された第１型の候補データについて、他の第１型の候補データの単語に置き換えて定義できるか否かを判断し（図３７ステップＳ１０９）、可能である場合は置換処理を実行する（ステップＳ１１１）。例えば、図３９に示す第１型の候補データについては、１５個の時系列データがあり、最初から５つ分を単語「交差点右回」に置換して表すことができる。なお、このように元のデータに代えて用いられる単語を以下引用単語という。
【０１３３】
ＣＰＵ２３は、ステップＳ１０９からステップＳ１１１の処理を繰り返す。これより、図４０に示す第１型の候補データは、図４１に示すように他の第１型データの単語で定義されたデータとなる。
【０１３４】
他の単語「３回三叉路右回」、「３回三叉路左回」、「４回三叉路右回」、「４回三叉路左回」なども同様にして引用単語で定義されたデータに変換される。
【０１３５】
ＣＰＵ２３は、かかる変換後のデータについて、抽象化処理を行う（ステップＳ１１３）。ステップＳ１１３における抽象化処理について具体例を用いて説明する。ステップＳ１０７では同じ単語で抽象化処理を行ったが、このステップでは、各候補の単語の一部または全部が一致する他の候補が存在するか否か判断し、存在する場合に、これらを抽象化する。例えば、単語「３回交差点右回」と単語「３回三叉路右回」、単語「３回三叉路左回」は文字列「３回」が一致するので、これらの３つの候補について抽象化が実行される。かかる抽象化処理では、次のような個別枠が３つ生成される。一つ目の引用単語の部分を比べると、両者は全く一致しない。したがって、結局中身が消された個別枠が１つ生成される。これを２つ目、３つ目と実行することにより、３つの中身のない個別枠が生成される。また、かかる抽象化においては、各個別枠のデータは同じである。例えば、単語「３回交差点右回」は、交差点右回、交差点右回、交差点右回と同じであり、単語「３回三叉路左回」は、三叉路左回、三叉路左回、三叉路左回と同じである。したがって、かかる抽象化において、両者に共通の引用単語が同じであることも抽象化される。すなわち、抽象化処理においては、引用単語が繰り返されているか否かの繰り返し情報として、各個別枠に記録されていたデータは同じであったということが生成されて、これを付加する処理を含む処理が実行される。これより、図４２に示すように、単語「３回？」は、個別枠が３つで、かつその中身のデータは同じものという付加情報が付加された第２型の候補データが生成される。
【０１３６】
なお、かかる抽象化処理においては、各候補の単語の一部または全部が一致する他の候補が存在するか否か判断し、存在する場合に、これらを抽象化する。したがって、図４２に示すように抽象化の程度の異なる他の第２型の候補データ「３回三叉路？」、「４回？」、「４回三叉路？」なども生成される。
【０１３７】
つぎに、操作者は、実際の動作をさせることなく学習させたい動作単語を入力する。ＣＰＵ２３は、かかる単語が入力されたか否かを判断しており（ステップＳ１１５）、入力されると、与えられた単語を生成するために、第１型の候補および第２型の候補から組み合わせ可能なものを選定する（ステップＳ１１７）。例えば、この場合、操作者から、生成希望の単語として単語「３回交差点直進」が入力されるので、第２型の候補である単語「３回？」と第１型の候補である単語「交差点直進」とを組みあわせることにより、学習させたい動作単語が生成可能である。かかる判断は、文字列マッチングを行えばよい。？部分は、どの文字列とも合致するからである。
【０１３８】
ＣＰＵ２３は、第１型の候補および第２型の候補を用いて、生成希望の単語を生成する（ステップＳ１１９）。具体的には、図４２に示す単語「３回？」の個別枠に、単語「交差点直進」の具体的な環境動作データ（図３８参照）を代入する。また、この場合、第２型の候補である単語「３回？」には、各個別枠に同じデータであるという付加情報が付加されているので、個別枠の数だけ、前記代入が行われる。これにより、単語「３回交差点直進」の環境動作データが生成される。データ形式としては、図３９に示すような時系列データとなる。これにより、単語が与えられれば、かかる環境動作データに基づいて、対応する動作をロボット２０は実行することができる。
【０１３９】
なお、本実施形態においては、ステップＳ１１７における組み合わせの決定時に、単語の文字列マッチングで組み合わせ可能か否かを判断している。したがって、ステップＳ１１３にて、抽象化の程度の異なる種種の候補が生成されても、不要な候補については組み合わせ特定時に排除される。例えば、「３回交差点右回」、「３回交差点左回」によって、「３回交差点？回」という候補も生成されるが、実際にはかかる候補は適用されない。また、「３回交差点右回」、「４回三叉路右回」から「？回？右回」なども生成されるが、同様に適用段階で排除される。何回かの適用処理を経ても生成に用いられなかった第２型の候補については候補から削除するようにしてもよい。
【０１４０】
このように、抽象化処理にて、第２型の候補の単語の一部を、全文字列一致可能文字列に置換して記憶しておき、当該候補の枠を用いて、第１型の候補を代入することにより、学習させたい環境動作単語の環境動作を現実にロボットに与えなくても、学習が可能である。
【０１４１】
また、個別枠のＩＤとして引用単語を用いることにより、第１型の候補を表す単語の文字列数が異なる場合であっても、抽象化が可能である。なお、引用単語に代えて個別枠のＩＤを採用してもよい。
【０１４２】
なお、上記実施形態においては、繰り返しの為の枠を生成してから、実際の適用をするようにしたが、既に該当する第２型の候補および第１型の候補が存在するか否か判断し、存在する場合にはそれらを採用するようにしてもよい。この場合、図３７ステップＳ１１３までの処理を実行することなく、操作者の希望する単語を学習させることができる。
【０１４３】
また、？部分の文字列の数は任意に一致可能とした。たとえば、単語「３回交差点直進」は、第２型の候補「３回？」と第１型の候補「交差点直進」によって、生成可能であり、すなわち、？部分との一致判断において文字列の数を考慮しないようにした。しかし、文字列の数まで一致するか否か判断するようにしてもよい。この場合、抽象化された候補としては、例えば、「３回？？？？？？」のように、文字列の数だけ全文字列一致可能文字列に置換される。
【０１４４】
また、本実施形態においては、現実に学習させたい繰り返し動作を１回だけ第１型の候補に記憶しておけば、第２型の候補を用いて、所定回数これを繰り返す環境動作を学習させることができる。したがって、本実施形態のように、学習させたい単語および対応する環境動作を現実にロボットに入力して学習させる場合であっても、繰り返し動作の学習は簡易となる。
【０１４５】
なお、上記先の出願で開示した技術と任意に組み合わせることができる。また、センサが検出する環境データを距離データとしたが、その他、環境の特徴であればどのようなものであってもよく、例えば、色、光度、表面の特徴、表面の堅さなどであってもよい。さらに、重力センサなどを用いて３次元的な環境データの変化を検出するようにしてもよい。
【０１４６】
また、この例ではロボットについて適用した場合について説明したが、移動物体が自走式であればどのようなものであっても適用することができる。例えば、コンピュータゲームにおける物体に単語と動きとの関係を学習させる場合などについても適用可能である。
【図面の簡単な説明】
【図１】移動物体動作制御データ生成装置１０の機能ブロック図である。
【図２】図１に示す移動物体動作制御データ生成装置を備えたロボット２０の外観図である。
【図３】５つのセンサの検出方向を示す図である。
【図４】ロボット２０のハードウエア構成の一例を示す図である。
【図５】方向別距離データから方向別環境データを生成するテーブルを示す。
【図６】ロボット２０を動作させる軌跡を示す図である。
【図７】全体のフローチャートである。
【図８】駆動処理のフローチャートである。
【図９】センサ値の検出処理のフローチャートである。
【図１０】環境特定単語の入力処理のフローチャートである。
【図１１】検出されたセンサ値の一例を示す。
【図１２】前記センサ値から生成された抽象化環境データである。
【図１３】前記センサ値から生成された抽象化環境データである。
【図１４】前記センサ値から生成された抽象化環境データである。
【図１５】前記センサ値から生成された抽象化環境データである。
【図１６】前記センサ値から生成された抽象化環境データである。
【図１７】抽象化連データの生成処理のフローチャートである。
【図１８】各グループにおける一般化の処理を説明するための図である。
【図１９】各グループにおける一般化の処理を説明するための図である。
【図２０】各グループにおける一般化の処理を説明するための図である。
【図２１】各グループにおける一般化の処理を説明するための図である。
【図２２】通路・前進における動作指令データを示す。
【図２３】ロボット２０を動作させる環境を示す。
【図２４】三叉路における異なるパターンの動作例を示す。
【図２５】図２４において検出されたセンサ値から得られたデータを示す。
【図２６】図２４において検出されたセンサ値を左右方向に鏡対称入れ替え処理をした場合のデータを示す。
【図２７】図２４において検出されたセンサ値を時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図２８】図２４において検出されたセンサ値を左右方向および時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図２９】三叉路における異なるパターンの動作例を示す。
【図３０】図２９において検出されたセンサ値から得られたデータを示す。
【図３１】図２９において検出されたセンサ値を左右方向に鏡対称入れ替え処理をした場合のデータを示す。
【図３２】図２９において検出されたセンサ値を時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図３３】図２９において検出されたセンサ値を左右方向および時間軸方向に鏡対称入れ替え処理をした場合のデータを示す。
【図３４】三叉路にて、右回り、左回りをまとめて、回転にした場合のデータである。
【図３５】交差点にて、右回り、左回りをまとめて、回転にした場合のデータである。
【図３６】本発明にかかる単語学習装置の機能ブロック図である。
【図３７】学習を希望する単語の環境動作データを生成するフローチャートである。
【図３８】第１型の候補データのデータ構造を示す図である。
【図３９】繰り返しを含む環境動作データを示す図である。
【図４０】図３９に示す繰り返しを含む環境動作データが複数存在する場合を示すデータを示す図である。
【図４１】図４０に示す環境動作データを引用単語で定義した場合のデータ構造を示す図である。
【図４２】図４１に示す単語を抽象化した場合のデータ構造を示す図である。
【符号の説明】
２３・・・・・・・・・・・ＣＰＵ
２７・・・・・・・・・・・メモリ
４０s1〜４０s5・・・・・・センサ
【図１】
0003653224.tif 000002
【図２】
0003653224.tif 000003
【図３】
0003653224.tif 000004
【図４】
0003653224.tif 000005
【図５】
0003653224.tif 000006
【図６】
0003653224.tif 000007
【図７】
0003653224.tif 000008
【図８】
0003653224.tif 000009
【図９】
0003653224.tif 000010
【図１０】
0003653224.tif 000011
【図１１】
0003653224.tif 000012
【図１２】
0003653224.tif 000013
【図１３】
0003653224.tif 000014
【図１４】
0003653224.tif 000015
【図１５】
0003653224.tif 000016
【図１６】
0003653224.tif 000017
【図１７】
0003653224.tif 000018
【図１８】
0003653224.tif 000019
【図１９】
0003653224.tif 000020
【図２０】
0003653224.tif 000021
【図２１】
0003653224.tif 000022
【図２２】
0003653224.tif 000023
【図２３】
0003653224.tif 000024
【図２４】
0003653224.tif 000025
【図２５】
0003653224.tif 000026
【図２６】
0003653224.tif 000027
【図２７】
0003653224.tif 000028
【図２８】
0003653224.tif 000029
【図２９】
0003653224.tif 000030
【図３０】
0003653224.tif 000031
【図３１】
0003653224.tif 000032
【図３２】
0003653224.tif 000033
【図３３】
0003653224.tif 000034
【図３４】
0003653224.tif 000035
【図３５】
0003653224.tif 000036
【図３６】
0003653224.tif 000037
【図３７】
0003653224.tif 000038
【図３８】
0003653224.tif 000039
【図３９】
0003653224.tif 000040
【図４０】
0003653224.tif 000041
【図４１】
0003653224.tif 000042
【図４２】
0003653224.tif 000043