JP2002239952A - ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体 - Google Patents
ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体Info
- Publication number
- JP2002239952A JP2002239952A JP2001045690A JP2001045690A JP2002239952A JP 2002239952 A JP2002239952 A JP 2002239952A JP 2001045690 A JP2001045690 A JP 2001045690A JP 2001045690 A JP2001045690 A JP 2001045690A JP 2002239952 A JP2002239952 A JP 2002239952A
- Authority
- JP
- Japan
- Prior art keywords
- evaluation value
- action
- robot
- robot device
- behavior
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
Landscapes
- Manipulator (AREA)
Abstract
(57)【要約】
【課題】 行動範囲を広げる行動をより現実的なものと
して実行可能にする。 【解決手段】 ロボット装置は、検出手段が検出した実
センサー値Stを学習して、その後に検出手段が検出す
る実センサー値Stが入力されて、それに対応して学習
結果に基づいて得た予測センサー値St+1を出力し、
次時刻の実センサー値St+1と予測センサー値S
t+1との差が小になるほど大きいホーミング・リワー
ドRHt+1を出力するものである。これにより、RN
N103は、既存のセンサー予測値とセンサー実測値と
の差が小さいほど、ホーミング・リワードRHt+1の
値が大きくなるようにするが、これは、ホーム203に
近いほど、慣れた場所(学習している場所)であること
から、センサー予測値がセンサー実測値に近い値として
得ることができるからである。
して実行可能にする。 【解決手段】 ロボット装置は、検出手段が検出した実
センサー値Stを学習して、その後に検出手段が検出す
る実センサー値Stが入力されて、それに対応して学習
結果に基づいて得た予測センサー値St+1を出力し、
次時刻の実センサー値St+1と予測センサー値S
t+1との差が小になるほど大きいホーミング・リワー
ドRHt+1を出力するものである。これにより、RN
N103は、既存のセンサー予測値とセンサー実測値と
の差が小さいほど、ホーミング・リワードRHt+1の
値が大きくなるようにするが、これは、ホーム203に
近いほど、慣れた場所(学習している場所)であること
から、センサー予測値がセンサー実測値に近い値として
得ることができるからである。
Description
【0001】
【発明の属する技術分野】本発明は、ロボット装置、ロ
ボット装置の行動制御方法、プログラム及び記録媒体に
関し、詳しくは、自律的に行動するロボット装置に適用
するのに好適な場合に関する。
ボット装置の行動制御方法、プログラム及び記録媒体に
関し、詳しくは、自律的に行動するロボット装置に適用
するのに好適な場合に関する。
【0002】
【従来の技術】近年、外観形状が犬や猫等の動物に模し
て形成されたロボット装置が提供されている。そのよう
なロボット装置には、外部からの情報や内部の状態に応
じて自律的に動作するものがある。このようなロボット
装置は、複数の行動計画を有しており、上述したような
外部からの情報等に基づいて選択した一の行動計画に沿
って行動するようになされている。
て形成されたロボット装置が提供されている。そのよう
なロボット装置には、外部からの情報や内部の状態に応
じて自律的に動作するものがある。このようなロボット
装置は、複数の行動計画を有しており、上述したような
外部からの情報等に基づいて選択した一の行動計画に沿
って行動するようになされている。
【0003】
【発明が解決しようとする課題】ところで、ロボット装
置は、予め決められた情報に基づいて行動している。上
述したような予め用意された行動計画に基づいて行動を
決定するようにである。しかし、これではロボット装置
が真に自律的な行動をとっているとは言い難い。
置は、予め決められた情報に基づいて行動している。上
述したような予め用意された行動計画に基づいて行動を
決定するようにである。しかし、これではロボット装置
が真に自律的な行動をとっているとは言い難い。
【0004】例えば、ロボット装置が自律的な行動とし
て、積極的にその行動する範囲を広げる移動ができれ
ば、より娯楽性が増し、そのような行動は、より現実的
な動物としての行動として把握されるようになる。ま
た、このように行動範囲を広げていく場合には、基準位
置(例えば、ベース或いはホーム等)を用意して、それ
を基準として行動範囲を広げるようなことが考えられ
る。このようなことから、行動範囲を広げると同時に、
基準位置に戻る行動も、自律的な行動として必要になる
と考えられる。例えば、基準位置に戻る行動は、動物で
いえば、家に帰ること(例えば、帰巣すること)と等価
な行動であるとも言える。
て、積極的にその行動する範囲を広げる移動ができれ
ば、より娯楽性が増し、そのような行動は、より現実的
な動物としての行動として把握されるようになる。ま
た、このように行動範囲を広げていく場合には、基準位
置(例えば、ベース或いはホーム等)を用意して、それ
を基準として行動範囲を広げるようなことが考えられ
る。このようなことから、行動範囲を広げると同時に、
基準位置に戻る行動も、自律的な行動として必要になる
と考えられる。例えば、基準位置に戻る行動は、動物で
いえば、家に帰ること(例えば、帰巣すること)と等価
な行動であるとも言える。
【0005】そこで、本発明は、上述の実情に鑑みてな
されたものであり、行動範囲を広げる行動をより現実的
なものとして実行可能にするロボット装置、ロボット装
置の行動制御方法、プログラム及び記録媒体の提供を目
的としている。
されたものであり、行動範囲を広げる行動をより現実的
なものとして実行可能にするロボット装置、ロボット装
置の行動制御方法、プログラム及び記録媒体の提供を目
的としている。
【0006】
【課題を解決するための手段】本発明に係るロボット装
置は、上述の課題を解決するために、評価値が増加する
ように、行動をさせる行動制御手段を備えており、評価
値が、基準位置に近いほど増加するようになされてい
る。このようなロボット装置は、評価値が増加するよう
に行動することによって、結果的として基準位置に戻る
行動をするようになる。
置は、上述の課題を解決するために、評価値が増加する
ように、行動をさせる行動制御手段を備えており、評価
値が、基準位置に近いほど増加するようになされてい
る。このようなロボット装置は、評価値が増加するよう
に行動することによって、結果的として基準位置に戻る
行動をするようになる。
【0007】また、本発明に係るロボット装置の行動制
御方法は、上述の課題を解決するために、基準位置に近
いほど増加する評価値に基づいてロボット装置の行動を
制御し、評価値が増加するように、ロボット装置の行動
制御をする。このようなロボット装置の行動制御方法に
より、ロボット装置は、評価値が増加するように行動す
ることによって、結果的として基準位置に戻る行動をす
るようになる。
御方法は、上述の課題を解決するために、基準位置に近
いほど増加する評価値に基づいてロボット装置の行動を
制御し、評価値が増加するように、ロボット装置の行動
制御をする。このようなロボット装置の行動制御方法に
より、ロボット装置は、評価値が増加するように行動す
ることによって、結果的として基準位置に戻る行動をす
るようになる。
【0008】また、本発明に係るプログラムは、上述の
課題を解決するために、基準位置に近いほど増加する評
価値に基づいてロボット装置の行動を制御し、評価値が
増加するように、ロボット装置の行動制御を実行する。
このようなプログラムに基づいて行動制御を実行するロ
ボット装置は、評価値が増加するように行動することに
よって、結果的として基準位置に戻る行動をするように
なる。
課題を解決するために、基準位置に近いほど増加する評
価値に基づいてロボット装置の行動を制御し、評価値が
増加するように、ロボット装置の行動制御を実行する。
このようなプログラムに基づいて行動制御を実行するロ
ボット装置は、評価値が増加するように行動することに
よって、結果的として基準位置に戻る行動をするように
なる。
【0009】また、本発明に係る記録媒体は、上述の課
題を解決するために、基準位置に近いほど増加する評価
値に基づいてロボット装置の行動を制御し、評価値が増
加するように、ロボット装置の行動制御を実行するプロ
グラムが記録される。このような記録媒体に記録された
プログラムに基づいて行動制御を実行するロボット装置
は、評価値が増加するように行動することによって、結
果的として基準位置に戻る行動をするようになる。
題を解決するために、基準位置に近いほど増加する評価
値に基づいてロボット装置の行動を制御し、評価値が増
加するように、ロボット装置の行動制御を実行するプロ
グラムが記録される。このような記録媒体に記録された
プログラムに基づいて行動制御を実行するロボット装置
は、評価値が増加するように行動することによって、結
果的として基準位置に戻る行動をするようになる。
【0010】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を用いて詳細に説明する。この実施の形態は、
本発明を、周囲の環境(外的要因)や内部の状態(内的
要因)に応じて自律的に行動をする自律型のロボット装
置に適用したものである。
て、図面を用いて詳細に説明する。この実施の形態は、
本発明を、周囲の環境(外的要因)や内部の状態(内的
要因)に応じて自律的に行動をする自律型のロボット装
置に適用したものである。
【0011】図1に、このロボット装置1の外観の具体
例を示している。このロボット装置1は、「犬」等の動
物を模した形状の、いわゆるペット型ロボットとされ、
胴体部ユニット2の前後左右にそれぞれ脚部ユニット3
A,3B,3C,3Dが連結されると共に、胴体部ユニ
ット2の前端部及び後端部にそれぞれ頭部ユニット4及
び尻尾部ユニット5が連結されて構成されている。この
ように構成されるロボット装置1は、制御プログラムに
基づいて、自己(内部)及び周囲(外部)の状況や、使
用者からの指示及び働きかけに応じて、脚部ユニット3
A,3B,3C,3D等の動作部を動作させて、自律的
に行動するようになされている。
例を示している。このロボット装置1は、「犬」等の動
物を模した形状の、いわゆるペット型ロボットとされ、
胴体部ユニット2の前後左右にそれぞれ脚部ユニット3
A,3B,3C,3Dが連結されると共に、胴体部ユニ
ット2の前端部及び後端部にそれぞれ頭部ユニット4及
び尻尾部ユニット5が連結されて構成されている。この
ように構成されるロボット装置1は、制御プログラムに
基づいて、自己(内部)及び周囲(外部)の状況や、使
用者からの指示及び働きかけに応じて、脚部ユニット3
A,3B,3C,3D等の動作部を動作させて、自律的
に行動するようになされている。
【0012】(1)本発明が適用されたロボット装置 このロボット装置1は、自律的な行動として、その行動
範囲を積極的に広げることができるようになされてい
る。例えば、図2に示すように、ロボット装置1は、物
理的な境界とされる壁200,201や物体202によ
って必然的に形成される経路内を選択的に移動してい
き、行動範囲を広げていくようになされている。ロボッ
ト装置1は、このような行動範囲の拡張を、報酬(rewa
rd)に基づいて実行している。例えば、一般的には、報
酬は、モチベーションとした作用するものである。この
報酬に基づく行動範囲の拡張については、後で詳述す
る。
範囲を積極的に広げることができるようになされてい
る。例えば、図2に示すように、ロボット装置1は、物
理的な境界とされる壁200,201や物体202によ
って必然的に形成される経路内を選択的に移動してい
き、行動範囲を広げていくようになされている。ロボッ
ト装置1は、このような行動範囲の拡張を、報酬(rewa
rd)に基づいて実行している。例えば、一般的には、報
酬は、モチベーションとした作用するものである。この
報酬に基づく行動範囲の拡張については、後で詳述す
る。
【0013】そして、このロボット装置1は、そのよう
に行動範囲を積極的に広げつつも、行動を広げる基準と
される基準位置(以下、ホームという。)に自律的な行
動として戻ることができるようにもなされている。すな
わち、図2に示すように、ロボット装置1は、ホーム2
03を基準として行動範囲を広げつつも、そのホーム2
03に、自律的に戻ること(例えば、帰巣すること)が
できるようになされている。
に行動範囲を積極的に広げつつも、行動を広げる基準と
される基準位置(以下、ホームという。)に自律的な行
動として戻ることができるようにもなされている。すな
わち、図2に示すように、ロボット装置1は、ホーム2
03を基準として行動範囲を広げつつも、そのホーム2
03に、自律的に戻ること(例えば、帰巣すること)が
できるようになされている。
【0014】以上のような行動により、ロボット装置1
は、積極的に行動範囲を広げる行動を、より自然な形と
して実行している。次に、ロボット装置1による行動範
囲(或いは活動範囲)を広げるための行動制御と、その
ようなロボット装置1がホーム203に戻るための行動
制御とについて説明する。
は、積極的に行動範囲を広げる行動を、より自然な形と
して実行している。次に、ロボット装置1による行動範
囲(或いは活動範囲)を広げるための行動制御と、その
ようなロボット装置1がホーム203に戻るための行動
制御とについて説明する。
【0015】(1−1)ロボット装置による行動範囲を
広げる行動制御 例えば、行動範囲を広げた場合、一般的に、認知される
外部環境は未知のものとなる。すなわち、行動範囲を広
げた外界は経験のない情報として知覚される。このよう
なことを利用して、ロボット装置1は、積極的に未知の
情報が得られるように行動することで、行動範囲を広げ
ている。
広げる行動制御 例えば、行動範囲を広げた場合、一般的に、認知される
外部環境は未知のものとなる。すなわち、行動範囲を広
げた外界は経験のない情報として知覚される。このよう
なことを利用して、ロボット装置1は、積極的に未知の
情報が得られるように行動することで、行動範囲を広げ
ている。
【0016】これを実現するために、ロボット装置1
は、行動により場所を移動して得られる外部環境を学習
していく。そして、ロボット装置1は、学習結果と入力
されてくる情報(具体的には、センサー情報)に基づい
て、その入力を未だ学習していないことを検出する。例
えば、入力されてくるセンサー情報と学習結果により得
られる情報(例えば、予測情報)との差を求め、その差
から未だ学習していないことを検出する。ここで、セン
サー情報とは、例えば、撮像装置からの撮像信号等であ
る。
は、行動により場所を移動して得られる外部環境を学習
していく。そして、ロボット装置1は、学習結果と入力
されてくる情報(具体的には、センサー情報)に基づい
て、その入力を未だ学習していないことを検出する。例
えば、入力されてくるセンサー情報と学習結果により得
られる情報(例えば、予測情報)との差を求め、その差
から未だ学習していないことを検出する。ここで、セン
サー情報とは、例えば、撮像装置からの撮像信号等であ
る。
【0017】ロボット装置1は、上述したような差が発
生するように学習し、そのような差を大きくするように
行動することで、結果として行動範囲を広げる行動をす
ることができるようになされている。そして、ロボット
装置1においては、そのような差を、「報酬」といった
評価値として与えている。これにより、ロボット装置1
は、報酬が大きくなるように行動し、結果として行動範
囲を広げる行動をすることになる。
生するように学習し、そのような差を大きくするように
行動することで、結果として行動範囲を広げる行動をす
ることができるようになされている。そして、ロボット
装置1においては、そのような差を、「報酬」といった
評価値として与えている。これにより、ロボット装置1
は、報酬が大きくなるように行動し、結果として行動範
囲を広げる行動をすることになる。
【0018】(1−1−1)情報を学習するニューラル
ネットワークの基本動作 先ず、実施の形態において情報を学習するために使用す
るシステムについて説明する。実施の形態では、学習シ
ステムとしてニューラルネットワークを用いている。図
3には、センサー情報の学習のためのニューラルネット
ワーク103の構成を示している。図3に示すように、
ニューラルネットワーク103は、入力層1031、隠
れ層(或いは中間層)1032及び出力層1033に階
層化されている。このニューラルネットワーク103
は、出力層1033から入力層1031に向かってフィ
ードバックするループを有するリカレント型ニューラル
ネットワーク(以下、RNNという。)である。
ネットワークの基本動作 先ず、実施の形態において情報を学習するために使用す
るシステムについて説明する。実施の形態では、学習シ
ステムとしてニューラルネットワークを用いている。図
3には、センサー情報の学習のためのニューラルネット
ワーク103の構成を示している。図3に示すように、
ニューラルネットワーク103は、入力層1031、隠
れ層(或いは中間層)1032及び出力層1033に階
層化されている。このニューラルネットワーク103
は、出力層1033から入力層1031に向かってフィ
ードバックするループを有するリカレント型ニューラル
ネットワーク(以下、RNNという。)である。
【0019】RNN103を構成する入力層1031、
隠れ層1032及び出力層1033はそれぞれ、所定の
数のニューロンを有し、各層間で各ニューロンが結合さ
れている。そして、このニューロンは、各層間でランダ
ムに結合されている。そして、出力層1033の一部の
ニューロンは、フィードバックニューロンとされるコン
テキスト(context)として、入力層1031に結合さ
れている。例えば、出力層1033のニューロンの数が
14のニューロンである場合において、出力層1033
の2つのニューロンがコンテキストとして入力層103
1に結合されている。そして、各層間のニューロンの結
合は重み係数として観念されるものである。このような
RNN103において、学習は次のようにしてなされ
る。なお、ここでいう学習とは、このような各層間のニ
ューロンを結合している重み係数をチューニングし、記
憶していくことである。
隠れ層1032及び出力層1033はそれぞれ、所定の
数のニューロンを有し、各層間で各ニューロンが結合さ
れている。そして、このニューロンは、各層間でランダ
ムに結合されている。そして、出力層1033の一部の
ニューロンは、フィードバックニューロンとされるコン
テキスト(context)として、入力層1031に結合さ
れている。例えば、出力層1033のニューロンの数が
14のニューロンである場合において、出力層1033
の2つのニューロンがコンテキストとして入力層103
1に結合されている。そして、各層間のニューロンの結
合は重み係数として観念されるものである。このような
RNN103において、学習は次のようにしてなされ
る。なお、ここでいう学習とは、このような各層間のニ
ューロンを結合している重み係数をチューニングし、記
憶していくことである。
【0020】RNN103では、学習対象として入力さ
れた情報が入力層1031から出力層1033に向かっ
て入力されることで学習が行われる。例えば、学習対象
とされる情報はベクトル値として入力される。各層で
は、そのような入力ベクトルに対して、各ニューロンに
て重み係数を乗算して、後の層の他のニューロンに出力
する。
れた情報が入力層1031から出力層1033に向かっ
て入力されることで学習が行われる。例えば、学習対象
とされる情報はベクトル値として入力される。各層で
は、そのような入力ベクトルに対して、各ニューロンに
て重み係数を乗算して、後の層の他のニューロンに出力
する。
【0021】具体的には、RNN103において、セン
サーの状態に対応する値St(或いはS(t)と記
す。)が入力層1031に入力されると、隠れ層103
2を介して、出力層1033のニューロンに供給され
る。そして、出力層1033のニューロンからは、セン
サーの状態に対応するSt+1が出力される。
サーの状態に対応する値St(或いはS(t)と記
す。)が入力層1031に入力されると、隠れ層103
2を介して、出力層1033のニューロンに供給され
る。そして、出力層1033のニューロンからは、セン
サーの状態に対応するSt+1が出力される。
【0022】ここで、例えば、センサーの状態に対応す
る値とは、外部環境検出手段とされる撮像装置、マイク
等により検出される撮像画像信号、音声信号等、或いは
脚部ユニットの回動状態を示すポテンショメータによる
回転検出値等である。また、例えば、画像撮像信号や音
声信号については、全部を学習対象とすると学習対象の
情報量が多くなることから、特徴量を検出して、その特
徴量を学習対象として学習を実行するようにしている。
また、例えば、撮像装置については、ロボット装置1
は、CCD(Charge Coupled Device)カメラとして備
えており、このCCDカメラによって得られる撮像信号
の特徴量を得ている。
る値とは、外部環境検出手段とされる撮像装置、マイク
等により検出される撮像画像信号、音声信号等、或いは
脚部ユニットの回動状態を示すポテンショメータによる
回転検出値等である。また、例えば、画像撮像信号や音
声信号については、全部を学習対象とすると学習対象の
情報量が多くなることから、特徴量を検出して、その特
徴量を学習対象として学習を実行するようにしている。
また、例えば、撮像装置については、ロボット装置1
は、CCD(Charge Coupled Device)カメラとして備
えており、このCCDカメラによって得られる撮像信号
の特徴量を得ている。
【0023】そして、学習では、誤算逆伝播法とされ
る、いわゆるバックプロパゲーション法により、重み係
数(例えば、重みマトリックスともいう。)を更新して
いる。ここで、誤算逆伝播法とは、概略としては、出力
層1033から出力された値(例えば、センサーの予測
値)と、実際に次時刻で得られた値(例えば、センサー
の予測値)の誤差を、出力層1033から入力層103
1に向けてフィードバックさせる、といったものであ
る。
る、いわゆるバックプロパゲーション法により、重み係
数(例えば、重みマトリックスともいう。)を更新して
いる。ここで、誤算逆伝播法とは、概略としては、出力
層1033から出力された値(例えば、センサーの予測
値)と、実際に次時刻で得られた値(例えば、センサー
の予測値)の誤差を、出力層1033から入力層103
1に向けてフィードバックさせる、といったものであ
る。
【0024】具体的には、学習では、出力されたセンサ
ーの予測値St+1(或いはS(t+1)と記す。)と
実際に次時刻に計測されたセンサーの値St+1との誤
差を、出力層1033から入力層1031にフィードバ
ックさせる。
ーの予測値St+1(或いはS(t+1)と記す。)と
実際に次時刻に計測されたセンサーの値St+1との誤
差を、出力層1033から入力層1031にフィードバ
ックさせる。
【0025】以上のようなRNN103に基づく学習シ
ステムにより、ロボット装置1は、センサー情報を入力
とした学習を行っている。
ステムにより、ロボット装置1は、センサー情報を入力
とした学習を行っている。
【0026】(1−1−2)報酬とセンサー情報とを結
びつけた学習 図4には、入力に対して報酬を出力するRNNを示して
いる。なお、この図4は、RNN103を簡略化したも
のとして示している。
びつけた学習 図4には、入力に対して報酬を出力するRNNを示して
いる。なお、この図4は、RNN103を簡略化したも
のとして示している。
【0027】このRNN103は、学習の際には、同時
に出力されたセンサー予測値とセンサー実測値との差分
が大きい場合、すなわち、センサー予測値がセンサー実
測値からかけ離れているほど、高い報酬を与えるように
学習可能にするものである。すなわち、センサー値につ
いての予測値と実測値との差分に応じた報酬を学習する
ものであり、差分が大きいほど報酬が多くなる(値が大
きくなる)ように学習して、差分が小さいほど報酬が少
なくなる(値が小さくなる)ように学習する。このよう
な学習により、学習後のRNN103では、センサー実
測値(入力されてくるセンサー情報)とセンサー予測値
(学習結果を利用して予測値として出力されるセンサー
情報)との差分が大きいほど、すなわち、不測の事態を
起こす行動をとるほど、高い報酬が得られるようにな
る。
に出力されたセンサー予測値とセンサー実測値との差分
が大きい場合、すなわち、センサー予測値がセンサー実
測値からかけ離れているほど、高い報酬を与えるように
学習可能にするものである。すなわち、センサー値につ
いての予測値と実測値との差分に応じた報酬を学習する
ものであり、差分が大きいほど報酬が多くなる(値が大
きくなる)ように学習して、差分が小さいほど報酬が少
なくなる(値が小さくなる)ように学習する。このよう
な学習により、学習後のRNN103では、センサー実
測値(入力されてくるセンサー情報)とセンサー予測値
(学習結果を利用して予測値として出力されるセンサー
情報)との差分が大きいほど、すなわち、不測の事態を
起こす行動をとるほど、高い報酬が得られるようにな
る。
【0028】図5には、学習が進んだRNN103から
得られる報酬に基づいて一の行動が選択される場合を示
している。
得られる報酬に基づいて一の行動が選択される場合を示
している。
【0029】後述するところであるが、ロボット装置1
は、複数の行動計画データA1,A 2,・・・,Anを
有しており、外部情報等の条件に基づいて一の行動計画
データを選択して、その行動計画データに基づいて行動
をすることができるようになされている。図5に示す行
動選択部104は、そのような一の行動計画データを選
択する部分を構成しており、その選択を、より高い報酬
が得られるであろう行動計画データが選択されるように
なされている。なお、この行動選択部104とRNN1
03は、一体とされたモジュール105として構成され
ることとしても良い。
は、複数の行動計画データA1,A 2,・・・,Anを
有しており、外部情報等の条件に基づいて一の行動計画
データを選択して、その行動計画データに基づいて行動
をすることができるようになされている。図5に示す行
動選択部104は、そのような一の行動計画データを選
択する部分を構成しており、その選択を、より高い報酬
が得られるであろう行動計画データが選択されるように
なされている。なお、この行動選択部104とRNN1
03は、一体とされたモジュール105として構成され
ることとしても良い。
【0030】行動選択部104については、具体的に
は、実際の行動をする前に、行動計画データに基づいて
得られるであろうセンサー値或いはアクションデータを
学習後のRNNに与えることによって各行動計画データ
毎に報酬を得ている。すなわち、行動選択部104は、
各行動計画データに基づいて行動を仮想的に試行して、
各行動計画データについての報酬値を得ているといえ
る。例えば、ロボット装置1におけるこのような処理
は、報酬を基準としてメモリの内部リハーサルを実行す
る処理として把握されるものである。そして、行動選択
部104は、そのようにして得た報酬値に基づいて、そ
の報酬値を大きくするような行動計画データを選択す
る。
は、実際の行動をする前に、行動計画データに基づいて
得られるであろうセンサー値或いはアクションデータを
学習後のRNNに与えることによって各行動計画データ
毎に報酬を得ている。すなわち、行動選択部104は、
各行動計画データに基づいて行動を仮想的に試行して、
各行動計画データについての報酬値を得ているといえ
る。例えば、ロボット装置1におけるこのような処理
は、報酬を基準としてメモリの内部リハーサルを実行す
る処理として把握されるものである。そして、行動選択
部104は、そのようにして得た報酬値に基づいて、そ
の報酬値を大きくするような行動計画データを選択す
る。
【0031】このような行動選択部104により、ロボ
ット装置1は、より報酬が高くなるような行動を、実際
の行動を起こすことなく選択することができるようにな
る。これにより、そのような行動計画データの選択が、
今まで経験したことのないような行動や外界の行動(セ
ンサー入力)を選択したことになることから、ロボット
装置1は、結果として、行動範囲を広げるような自律的
に行動することができるようになる。
ット装置1は、より報酬が高くなるような行動を、実際
の行動を起こすことなく選択することができるようにな
る。これにより、そのような行動計画データの選択が、
今まで経験したことのないような行動や外界の行動(セ
ンサー入力)を選択したことになることから、ロボット
装置1は、結果として、行動範囲を広げるような自律的
に行動することができるようになる。
【0032】そして、ロボット装置1は、そのようなR
NN103に基づいてした行動範囲を広げる行動により
内部マッピングを形成していくことにより、極めて安定
して、センサーを介して新規の行動領域を認識できるよ
うになる。
NN103に基づいてした行動範囲を広げる行動により
内部マッピングを形成していくことにより、極めて安定
して、センサーを介して新規の行動領域を認識できるよ
うになる。
【0033】(1−2)ロボット装置がホーム(基準位
置)に戻るための行動制御 ロボット装置1がホーム203に戻るための行動制御に
ついて説明する。例えば、ロボット装置1は、上述した
行動範囲を広げていく場合と同様に、報酬に基づいてホ
ーム203に戻ることができるようになされている。例
えば、ホーム203に戻るための評価値とされる報酬
を、ホーミング・リワード(homing reward)と言う。
置)に戻るための行動制御 ロボット装置1がホーム203に戻るための行動制御に
ついて説明する。例えば、ロボット装置1は、上述した
行動範囲を広げていく場合と同様に、報酬に基づいてホ
ーム203に戻ることができるようになされている。例
えば、ホーム203に戻るための評価値とされる報酬
を、ホーミング・リワード(homing reward)と言う。
【0034】図6には、ホーミング・リワードをも考慮
に入れたRNN103の構成について示している。この
図6に示すRNN103は、上述したような行動範囲を
広げるための報酬RNtについての学習をする他に、ホ
ーミング・リワードRHtについても学習するように構
成されている。
に入れたRNN103の構成について示している。この
図6に示すRNN103は、上述したような行動範囲を
広げるための報酬RNtについての学習をする他に、ホ
ーミング・リワードRHtについても学習するように構
成されている。
【0035】このRNN103は、撮像装置等の検出手
段が検出した実外部環境情報とされるセンサー入力(例
えば、撮像信号等)を学習して、検出手段が検出する実
外部環境情報と、学習結果に基づいて得た予測外部環境
情報(予測される撮像信号等)との差が小になるほど大
きい評価値とされるホーミング・リワードRHt+1を
出力する学習手段とされるものである。すなわち、この
RNN103は、検出手段が検出した実センサー値St
を学習して、その後に検出手段が検出する実センサー値
Stが入力されて、それに対応して学習結果に基づいて
得た予測センサー値St+1を出力し、次時刻の実セン
サー値St+1と予測センサー値St+ 1との差が小に
なるほど大きいホーミング・リワードRHt+1を出力
するものである。これにより、RNN103は、既存の
センサー予測値とセンサー実測値との差が小さいほど、
ホーミング・リワードRHt+1の値が大きくなるよう
にするが、これは、ホーム203に近いほど、慣れた場
所(学習している場所)であることから、センサー予測
値がセンサー実測値に近い値として得ることができるか
らである。
段が検出した実外部環境情報とされるセンサー入力(例
えば、撮像信号等)を学習して、検出手段が検出する実
外部環境情報と、学習結果に基づいて得た予測外部環境
情報(予測される撮像信号等)との差が小になるほど大
きい評価値とされるホーミング・リワードRHt+1を
出力する学習手段とされるものである。すなわち、この
RNN103は、検出手段が検出した実センサー値St
を学習して、その後に検出手段が検出する実センサー値
Stが入力されて、それに対応して学習結果に基づいて
得た予測センサー値St+1を出力し、次時刻の実セン
サー値St+1と予測センサー値St+ 1との差が小に
なるほど大きいホーミング・リワードRHt+1を出力
するものである。これにより、RNN103は、既存の
センサー予測値とセンサー実測値との差が小さいほど、
ホーミング・リワードRHt+1の値が大きくなるよう
にするが、これは、ホーム203に近いほど、慣れた場
所(学習している場所)であることから、センサー予測
値がセンサー実測値に近い値として得ることができるか
らである。
【0036】また、このRNN103は、基準位置とさ
れるホーム203に近づくほど評価値とされるホーミン
グ・リワードRHtを増加させることから、ホーム20
3から近い環境に移動するに従って評価値を増加させる
評価値生成手段としても把握されるものでもある。
れるホーム203に近づくほど評価値とされるホーミン
グ・リワードRHtを増加させることから、ホーム20
3から近い環境に移動するに従って評価値を増加させる
評価値生成手段としても把握されるものでもある。
【0037】このようなRNN103によりホーミング
・リワードに基づいて学習することで、ホーミング・リ
ワードの値が大きくなるようなセンサー情報を得るよう
に行動することで、馴染みの環境へ移動するようにな
り、最終的に、ロボット装置1がホーム203に戻るこ
とができるようになる。このようにロボット装置1は、
ホーミング・リワードを新たに定義して、そのホーミン
グ・リワードに基づいて行動をすることにより、ホーム
203に戻ることができるようになる。
・リワードに基づいて学習することで、ホーミング・リ
ワードの値が大きくなるようなセンサー情報を得るよう
に行動することで、馴染みの環境へ移動するようにな
り、最終的に、ロボット装置1がホーム203に戻るこ
とができるようになる。このようにロボット装置1は、
ホーミング・リワードを新たに定義して、そのホーミン
グ・リワードに基づいて行動をすることにより、ホーム
203に戻ることができるようになる。
【0038】なお、ロボット装置1は、上述した行動範
囲を広げるための報酬(以下、ノベリティ・リワードと
いう。)とホーミング・リワードとを比較考量して、行
動をすることもできる。この場合、ロボット装置1は、
候補として挙げた行動計画データから、より高い値とし
て予測するノベリティ・リワード或いはホーミング・リ
ワードに基づいて行動を選択するようにする。すなわ
ち、ノベリティ・リワード或いはホーミング・リワード
について、値がより高く期待される行動を選択するよう
にする。例えば、ノベリティ・リワード及びホーミング
・リワードそれぞれについて閾値を設定して、それぞれ
閾値と比較した結果に基づいて行動を選択するようにす
る。これにより、ロボット装置1は、ノベリティ・リワ
ード及びホーミング・リワードを比較考量して、より高
い値が得られる行動をするようになる。
囲を広げるための報酬(以下、ノベリティ・リワードと
いう。)とホーミング・リワードとを比較考量して、行
動をすることもできる。この場合、ロボット装置1は、
候補として挙げた行動計画データから、より高い値とし
て予測するノベリティ・リワード或いはホーミング・リ
ワードに基づいて行動を選択するようにする。すなわ
ち、ノベリティ・リワード或いはホーミング・リワード
について、値がより高く期待される行動を選択するよう
にする。例えば、ノベリティ・リワード及びホーミング
・リワードそれぞれについて閾値を設定して、それぞれ
閾値と比較した結果に基づいて行動を選択するようにす
る。これにより、ロボット装置1は、ノベリティ・リワ
ード及びホーミング・リワードを比較考量して、より高
い値が得られる行動をするようになる。
【0039】さらに、上述したノベリティ・リワードと
ホーミング・リワードとに、優先度を与えることもでき
る。例えば、初期の段階では、ホーミング・リワードに
より高い優先度を与え、ロボット装置1がマッピングす
る領域についての知識を増やすにつれて、すなわち、行
動範囲を広げるに従ってノベルティ・リワードの優先度
を増すようにする。これにより、ロボット装置1は、初
期の段階では行動範囲を広げても直ぐにホーム203に
戻るようにして、行動範囲が広がるに従ってホーム20
3に戻る回数を減らして、積極的に行動範囲を広げるよ
うにすることができる。
ホーミング・リワードとに、優先度を与えることもでき
る。例えば、初期の段階では、ホーミング・リワードに
より高い優先度を与え、ロボット装置1がマッピングす
る領域についての知識を増やすにつれて、すなわち、行
動範囲を広げるに従ってノベルティ・リワードの優先度
を増すようにする。これにより、ロボット装置1は、初
期の段階では行動範囲を広げても直ぐにホーム203に
戻るようにして、行動範囲が広がるに従ってホーム20
3に戻る回数を減らして、積極的に行動範囲を広げるよ
うにすることができる。
【0040】以上のように、ロボット装置1は、ホーム
203に戻ることを学習機能に取り入れて行動すること
ができるようになる。これにより、ロボット装置1は、
ホーム203を基準として行動範囲を広げつつも、その
ホーム203に自律的に戻ること(例えば、帰巣するこ
と)ができる。
203に戻ることを学習機能に取り入れて行動すること
ができるようになる。これにより、ロボット装置1は、
ホーム203を基準として行動範囲を広げつつも、その
ホーム203に自律的に戻ること(例えば、帰巣するこ
と)ができる。
【0041】ここで、単にロボット装置1が報酬を基準
として行動範囲を広げる行動の機能だけを有する場合を
考えてみる。
として行動範囲を広げる行動の機能だけを有する場合を
考えてみる。
【0042】上述したようなロボット装置1が行動範囲
を広げる機能は、ロボット装置1がマッピング及びロー
カリゼーションを行う機能とされるものであって、目標
位置を記憶し、思い出すためのRNNを用いる手法とも
言える。この機能により、ロボット装置1は、ホーム2
03に置かれ、その位置の周辺領域を探査し始め、ある
物理的な境界線に到達する。そのとき、ロボット装置1
は、探索する領域についての知識を獲得しながら、報酬
を基準としてメモリの内部リハーサルを実行して、行動
範囲を広げていく。そして、ロボット装置1は、このよ
うな動作を何度か反復実行することにより、探査する領
域についての知識を獲得し、その領域でどのように移動
するかを知る能力を得ることができる。
を広げる機能は、ロボット装置1がマッピング及びロー
カリゼーションを行う機能とされるものであって、目標
位置を記憶し、思い出すためのRNNを用いる手法とも
言える。この機能により、ロボット装置1は、ホーム2
03に置かれ、その位置の周辺領域を探査し始め、ある
物理的な境界線に到達する。そのとき、ロボット装置1
は、探索する領域についての知識を獲得しながら、報酬
を基準としてメモリの内部リハーサルを実行して、行動
範囲を広げていく。そして、ロボット装置1は、このよ
うな動作を何度か反復実行することにより、探査する領
域についての知識を獲得し、その領域でどのように移動
するかを知る能力を得ることができる。
【0043】しかし、このように行動範囲を学習するた
めには、基準位置から開始する行動の数度の実行が必要
とされるが、例えば、行動範囲を広げていく機能だけで
は、ロボット装置1は、基準位置とされるホーム203
に戻ることはできない。例えば、ホーム203に戻るた
めには、補助が必要になり、具体的には、ユーザによる
手動で戻されるような手助けが必要になる。これは、ノ
ベルティ・リワードのみを行動基準として用いる場合で
は、ロボット装置1がよく知らない場所に行くことの方
を好んで選択するとき(所望の目標位置はその時点での
目標位置とは異なる)、その度にロボット装置1を手動
でホームポジションに戻す必要があるという問題にな
る。それ故、ロボット装置1が、再び次の反復行為を開
始するために自力で行動範囲拡張のための基準位置に戻
ることができるとすれば、それは非常に重要なことであ
る。
めには、基準位置から開始する行動の数度の実行が必要
とされるが、例えば、行動範囲を広げていく機能だけで
は、ロボット装置1は、基準位置とされるホーム203
に戻ることはできない。例えば、ホーム203に戻るた
めには、補助が必要になり、具体的には、ユーザによる
手動で戻されるような手助けが必要になる。これは、ノ
ベルティ・リワードのみを行動基準として用いる場合で
は、ロボット装置1がよく知らない場所に行くことの方
を好んで選択するとき(所望の目標位置はその時点での
目標位置とは異なる)、その度にロボット装置1を手動
でホームポジションに戻す必要があるという問題にな
る。それ故、ロボット装置1が、再び次の反復行為を開
始するために自力で行動範囲拡張のための基準位置に戻
ることができるとすれば、それは非常に重要なことであ
る。
【0044】このようなことから、ホーミング・リワー
ドを別に規定して、それに基づいて行動の選択もするこ
とによって、ロボット装置1は、行動範囲を広げる、す
なわち未知の知識を獲得するとともに、そのような行動
によってホーム203に帰れなくなることを防止して、
確実に自律行動としてホーム203に戻ることができる
ようになされている。なお、上述の実施の形態では、ロ
ボット装置1がノベルティ・リワードやホーミング・リ
ワードといった報酬の概念を基準にして行動を選択して
いく場合を説明しているが、これに限定されるものでは
ない。例えば、ロボット装置1は、精神的な基準として
取り入れることもできる。これにより、ロボット装置1
は、例えば精神的に安定するように行動することもでき
る。
ドを別に規定して、それに基づいて行動の選択もするこ
とによって、ロボット装置1は、行動範囲を広げる、す
なわち未知の知識を獲得するとともに、そのような行動
によってホーム203に帰れなくなることを防止して、
確実に自律行動としてホーム203に戻ることができる
ようになされている。なお、上述の実施の形態では、ロ
ボット装置1がノベルティ・リワードやホーミング・リ
ワードといった報酬の概念を基準にして行動を選択して
いく場合を説明しているが、これに限定されるものでは
ない。例えば、ロボット装置1は、精神的な基準として
取り入れることもできる。これにより、ロボット装置1
は、例えば精神的に安定するように行動することもでき
る。
【0045】また、上述の実施の形態では、ロボット装
置1は、RNNを利用してホーム203に戻るためのシ
ステムを構成した場合を説明した。しかし、これに限定
されるものではなく、ロボット装置1は、ホーム203
を認識するホーム認識手段、ホーム203が位置すると
ころまでの距離を測る測定手段、或いはホーム203に
戻るまでのコストを概算する概算手段を備えることによ
り、これらの手段を用いてホーム203に戻るように行
動することもできる。
置1は、RNNを利用してホーム203に戻るためのシ
ステムを構成した場合を説明した。しかし、これに限定
されるものではなく、ロボット装置1は、ホーム203
を認識するホーム認識手段、ホーム203が位置すると
ころまでの距離を測る測定手段、或いはホーム203に
戻るまでのコストを概算する概算手段を備えることによ
り、これらの手段を用いてホーム203に戻るように行
動することもできる。
【0046】(2)ロボット装置の具体的な構成 上述の図1に示すように、「犬」等の動物に模した形状
のいわゆるペット型ロボットとされ、胴体部ユニット2
の前後左右にそれぞれ脚部ユニット3A,3B,3C,
3Dが連結されると共に、胴体部ユニット2の前端部及
び後端部にそれぞれ頭部ユニット4及び尻尾部ユニット
5が連結されて構成されている。
のいわゆるペット型ロボットとされ、胴体部ユニット2
の前後左右にそれぞれ脚部ユニット3A,3B,3C,
3Dが連結されると共に、胴体部ユニット2の前端部及
び後端部にそれぞれ頭部ユニット4及び尻尾部ユニット
5が連結されて構成されている。
【0047】胴体部ユニット2には、図7に示すよう
に、CPU(Central Processing Unit)10、DRA
M(Dynamic Random Access Memory)11、フラッシュ
ROM(Read 0nly Memory)12、PC(Personal Co
mputer)カードインターフェース回路13及び信号処理
回路14が内部バス15を介して相互に接続されること
により形成されたコントロール部16と、このロボット
装置1の動力源としてのバッテリ17とが収納されてい
る。また、胴体部ユニット2には、ロボット装置1の向
きや動きの加速度を検出するための角速度センサー18
及び加速度センサー19なども収納されている。
に、CPU(Central Processing Unit)10、DRA
M(Dynamic Random Access Memory)11、フラッシュ
ROM(Read 0nly Memory)12、PC(Personal Co
mputer)カードインターフェース回路13及び信号処理
回路14が内部バス15を介して相互に接続されること
により形成されたコントロール部16と、このロボット
装置1の動力源としてのバッテリ17とが収納されてい
る。また、胴体部ユニット2には、ロボット装置1の向
きや動きの加速度を検出するための角速度センサー18
及び加速度センサー19なども収納されている。
【0048】また、頭部ユニット4には、外部の状況を
撮像するためのCCD(Charge Coupled Device)カメ
ラ20と、使用者からの「撫でる」や「叩く」といった
物理的な働きかけにより受けた圧力を検出するためのタ
ッチセンサー21と、前方に位置する物体までの距離を
測定するための距離センサー22と、外部音を集音する
ためのマイクロホン23と、鳴き声等の音声を出力する
ためのスピーカ24と、ロボット装置1の「目」に相当
するLED(Light Emitting Diode)(図示せず)とな
どがそれぞれ所定位置に配置されている。
撮像するためのCCD(Charge Coupled Device)カメ
ラ20と、使用者からの「撫でる」や「叩く」といった
物理的な働きかけにより受けた圧力を検出するためのタ
ッチセンサー21と、前方に位置する物体までの距離を
測定するための距離センサー22と、外部音を集音する
ためのマイクロホン23と、鳴き声等の音声を出力する
ためのスピーカ24と、ロボット装置1の「目」に相当
するLED(Light Emitting Diode)(図示せず)とな
どがそれぞれ所定位置に配置されている。
【0049】さらに、各脚部ユニット3A〜3Dの関節
部分や各脚部ユニット3A〜3D及び胴体部ユニット2
の各連結部分、頭部ユニット4及び胴体部ユニット2の
連結部分、並びに尻尾部ユニット5の尻尾5Aの連結部
分などにはそれぞれ自由度数分のアクチュエータ251
〜25n及びポテンショメータ261〜26nが配設さ
れている。例えば、アクチュエータ251〜25nはサ
ーボモータを構成として有している。サーボモータの駆
動により、脚部ユニット3A〜3Dが制御されて、目標
の姿勢或いは動作に遷移する。
部分や各脚部ユニット3A〜3D及び胴体部ユニット2
の各連結部分、頭部ユニット4及び胴体部ユニット2の
連結部分、並びに尻尾部ユニット5の尻尾5Aの連結部
分などにはそれぞれ自由度数分のアクチュエータ251
〜25n及びポテンショメータ261〜26nが配設さ
れている。例えば、アクチュエータ251〜25nはサ
ーボモータを構成として有している。サーボモータの駆
動により、脚部ユニット3A〜3Dが制御されて、目標
の姿勢或いは動作に遷移する。
【0050】そして、これら角速度センサー18、加速
度センサー19、タッチセンサー21、距離センサー2
2、マイクロホン23、スピーカ24及び各ポテンショ
メータ261〜26nなどの各種センサー並びにLED
及び各アクチュエータ251〜25nは、それぞれ対応
するハブ271〜27nを介してコントロール部16の
信号処理回路14と接続され、CCDカメラ20及びバ
ッテリ17は、それぞれ信号処理回路14と直接接続さ
れている。
度センサー19、タッチセンサー21、距離センサー2
2、マイクロホン23、スピーカ24及び各ポテンショ
メータ261〜26nなどの各種センサー並びにLED
及び各アクチュエータ251〜25nは、それぞれ対応
するハブ271〜27nを介してコントロール部16の
信号処理回路14と接続され、CCDカメラ20及びバ
ッテリ17は、それぞれ信号処理回路14と直接接続さ
れている。
【0051】信号処理回路l4は、上述の各センサーか
ら供給されるセンサーデータや画像データ及び音声デー
タを順次取り込み、これらをそれぞれ内部バス15を介
してDRAM11内の所定位置に順次格納する。また信
号処理回路14は、これと共にバッテリ17から供給さ
れるバッテリ残量を表すバッテリ残量データを順次取り
込み、これをDRAM11内の所定位置に格納する。
ら供給されるセンサーデータや画像データ及び音声デー
タを順次取り込み、これらをそれぞれ内部バス15を介
してDRAM11内の所定位置に順次格納する。また信
号処理回路14は、これと共にバッテリ17から供給さ
れるバッテリ残量を表すバッテリ残量データを順次取り
込み、これをDRAM11内の所定位置に格納する。
【0052】このようにしてDRAM11に格納された
各センサーデータ、画像データ、音声データ及びバッテ
リ残量データは、この後CPU10がこのロボット装置
1の動作制御を行う際に利用される。
各センサーデータ、画像データ、音声データ及びバッテ
リ残量データは、この後CPU10がこのロボット装置
1の動作制御を行う際に利用される。
【0053】実際上CPU10は、ロボット装置1の電
源が投入された初期時、胴体部ユニット2の図示しない
PCカードスロットに装填されたメモリカード28又は
フラッシュROM12に格納された制御プログラムをP
Cカードインターフェース回路13を介して又は直接読
み出し、これをDRAM11に格納する。
源が投入された初期時、胴体部ユニット2の図示しない
PCカードスロットに装填されたメモリカード28又は
フラッシュROM12に格納された制御プログラムをP
Cカードインターフェース回路13を介して又は直接読
み出し、これをDRAM11に格納する。
【0054】また、CPU10は、この後上述のように
信号処理回路14よりDRAM11に順次格納される各
センサーデータ、画像データ、音声データ及びバッテリ
残量データに基づいて自己及び周囲の状況や、使用者か
らの指示及び働きかけの有無などを判断する。
信号処理回路14よりDRAM11に順次格納される各
センサーデータ、画像データ、音声データ及びバッテリ
残量データに基づいて自己及び周囲の状況や、使用者か
らの指示及び働きかけの有無などを判断する。
【0055】さらに、CPU10は、この判断結果及び
DRAM11に格納しだ制御プログラムに基づいて続く
行動を決定すると共に、当該決定結果に基づいて必要な
アクチュエータ251〜25nを駆動させることによ
り、頭部ユニット4を上下左右に振らせたり、尻尾部ユ
ニット5の尻尾5Aを動かせたり、各脚部ユニット3A
〜3Dを駆動させて歩行させるなどの行動を行わせる。
DRAM11に格納しだ制御プログラムに基づいて続く
行動を決定すると共に、当該決定結果に基づいて必要な
アクチュエータ251〜25nを駆動させることによ
り、頭部ユニット4を上下左右に振らせたり、尻尾部ユ
ニット5の尻尾5Aを動かせたり、各脚部ユニット3A
〜3Dを駆動させて歩行させるなどの行動を行わせる。
【0056】また、この際CPU10は、必要に応じて
音声データを生成し、これを信号処理回路14を介して
音声信号としてスピーカ24に与えることにより当該音
声信号に基づく音声を外部に出力させたり、上述のLE
Dを点灯、消灯又は点滅させる。
音声データを生成し、これを信号処理回路14を介して
音声信号としてスピーカ24に与えることにより当該音
声信号に基づく音声を外部に出力させたり、上述のLE
Dを点灯、消灯又は点滅させる。
【0057】このようにしてこのロボット装置1におい
ては、自己及び周囲の状況や、使用者からの指示及び働
きかけに応じて自律的に行動し得るようになされてい
る。
ては、自己及び周囲の状況や、使用者からの指示及び働
きかけに応じて自律的に行動し得るようになされてい
る。
【0058】(3)制御プログラムのソフトウェア構成 ここで、ロボット装置1における上述の制御プログラム
のソフトウェア構成は、図8に示すようになる。この図
8において、デバイス・ドライバ・レイヤ30は、この
制御プログラムの最下位層に位置し、複数のデバイス・
ドライバからなるデバイス・ドライバ・セット31から
構成されている。この場合、各デバイス・ドライバは、
CCDカメラ20(図7)やタイマ等の通常のコンピュ
ータで用いられるハードウェアに直接アクセスするごと
を許されたオブジェクトであり、対応するハードウェア
からの割り込みを受けて処理を行う。
のソフトウェア構成は、図8に示すようになる。この図
8において、デバイス・ドライバ・レイヤ30は、この
制御プログラムの最下位層に位置し、複数のデバイス・
ドライバからなるデバイス・ドライバ・セット31から
構成されている。この場合、各デバイス・ドライバは、
CCDカメラ20(図7)やタイマ等の通常のコンピュ
ータで用いられるハードウェアに直接アクセスするごと
を許されたオブジェクトであり、対応するハードウェア
からの割り込みを受けて処理を行う。
【0059】また、ロボティック・サーバ・オブジェク
ト32は、デバイス・ドライバ・レイヤ30の最下位層
に位置し、例えば上述の各種センサーやアクチュエータ
25 1〜25n等のハードウェアにアクセスするための
インターフェースを提供するソフトウェア群でなるバー
チャル・ロボット33と、電源の切換えなどを管理する
ソフトウェア群でなるパワーマネージャ34と、他の種
々のデバイス・ドライバを管理するソフトウェア群でな
るデバイス・ドライバ・マネージャ35と、ロボット装
置1の機構を管理するソフトウェア群でなるデザインド
・ロボット36とから構成されている。
ト32は、デバイス・ドライバ・レイヤ30の最下位層
に位置し、例えば上述の各種センサーやアクチュエータ
25 1〜25n等のハードウェアにアクセスするための
インターフェースを提供するソフトウェア群でなるバー
チャル・ロボット33と、電源の切換えなどを管理する
ソフトウェア群でなるパワーマネージャ34と、他の種
々のデバイス・ドライバを管理するソフトウェア群でな
るデバイス・ドライバ・マネージャ35と、ロボット装
置1の機構を管理するソフトウェア群でなるデザインド
・ロボット36とから構成されている。
【0060】マネージャ・オブジェクト37は、オブジ
ェクト・マネージャ38及びサービス・マネージャ39
から構成されている。オブジェクト・マネージャ38
は、ロボティック・サーバ・オブジェクト32、ミドル
・ウェア・レイヤ40、及びアプリケーション・レイヤ
41に含まれる各ソフトウェア群の起動や終了を管理す
るソフトウェア群であり、サービス・マネージャ39
は、メモリカード28(図7)に格納されたコネクショ
ンファイルに記述されている各オブジェクト間の接続情
報に基づいて各オブジェクトの接続を管理するソフトウ
ェア群である。
ェクト・マネージャ38及びサービス・マネージャ39
から構成されている。オブジェクト・マネージャ38
は、ロボティック・サーバ・オブジェクト32、ミドル
・ウェア・レイヤ40、及びアプリケーション・レイヤ
41に含まれる各ソフトウェア群の起動や終了を管理す
るソフトウェア群であり、サービス・マネージャ39
は、メモリカード28(図7)に格納されたコネクショ
ンファイルに記述されている各オブジェクト間の接続情
報に基づいて各オブジェクトの接続を管理するソフトウ
ェア群である。
【0061】ミドル・ウェア・レイヤ40は、ロボティ
ック・サーバ・オブジェクト32の上位層に位置し、画
像処理や音声処理などのこのロボット装置1の基本的な
機能を提供するソフトウェア群から構成されている。ま
た、アプリケーション・レイヤ41は、ミドル・ウェア
・レイヤ40の上位層に位置し、当該ミドル・ウェア・
レイヤ40を構成する各ソフトウェア群によって処理さ
れた処理結果に基づいてロボット装置1の行動を決定す
るためのソフトウェア群から構成されている。
ック・サーバ・オブジェクト32の上位層に位置し、画
像処理や音声処理などのこのロボット装置1の基本的な
機能を提供するソフトウェア群から構成されている。ま
た、アプリケーション・レイヤ41は、ミドル・ウェア
・レイヤ40の上位層に位置し、当該ミドル・ウェア・
レイヤ40を構成する各ソフトウェア群によって処理さ
れた処理結果に基づいてロボット装置1の行動を決定す
るためのソフトウェア群から構成されている。
【0062】なお、ミドル・ウェア・レイヤ40及びア
プリケーション・レイヤ41の具体なソフトウェア構成
をそれぞれ図9に示す。
プリケーション・レイヤ41の具体なソフトウェア構成
をそれぞれ図9に示す。
【0063】ミドル・ウェア・レイヤ40は、図9に示
すように、騒音検出用、温度検出用、明るさ検出用、音
階認識用、距離検出用、姿勢検出用、タッチセンサー
用、動き検出用及び色認識用の各信号処理モジュール5
0〜58並びに入力セマンティクスコンバータモジュー
ル59などを有する認識系60と、出力セマンティクス
コンバータモジュール68並びに姿勢管理用、トラッキ
ング用、モーション再生用、歩行用、転倒復帰用、LE
D点灯用及び音再生用の各信号処理モジュール61〜6
7などを有する出力系69とから構成されている。
すように、騒音検出用、温度検出用、明るさ検出用、音
階認識用、距離検出用、姿勢検出用、タッチセンサー
用、動き検出用及び色認識用の各信号処理モジュール5
0〜58並びに入力セマンティクスコンバータモジュー
ル59などを有する認識系60と、出力セマンティクス
コンバータモジュール68並びに姿勢管理用、トラッキ
ング用、モーション再生用、歩行用、転倒復帰用、LE
D点灯用及び音再生用の各信号処理モジュール61〜6
7などを有する出力系69とから構成されている。
【0064】認識系60の各信号処理モジュール50〜
58は、ロボティック・サーバ・オブジェクト32のバ
ーチャル・ロボット33によりDRAM11(図7)か
ら読み出される各センサーデータや画像データ及び音声
データのうちの対応するデータを取り込み、当該データ
に基づいて所定の処理を施して、処理結果を入力セマン
ティクスコンバータモジュール59に与える。ここで、
例えば、バーチャル・ロボット33は、所定の通信規約
によって、信号の授受或いは変換をする部分として構成
されている。
58は、ロボティック・サーバ・オブジェクト32のバ
ーチャル・ロボット33によりDRAM11(図7)か
ら読み出される各センサーデータや画像データ及び音声
データのうちの対応するデータを取り込み、当該データ
に基づいて所定の処理を施して、処理結果を入力セマン
ティクスコンバータモジュール59に与える。ここで、
例えば、バーチャル・ロボット33は、所定の通信規約
によって、信号の授受或いは変換をする部分として構成
されている。
【0065】入力セマンティクスコンバータモジュール
59は、これら各信号処理モジュール50〜58から与
えられる処理結果に基づいて、「うるさい」、「暑
い」、「明るい」、「ボールを検出した」、「転倒を検
出した」、「撫でられた」、「叩かれた」、「ドミソの
音階が聞こえた」、「動く物体を検出した」又は「障害
物を検出した」などの自己及び周囲の状況や、使用者か
らの指令及び働きかけを認識し、認識結果をアプリケー
ション・レイヤ41(図7)に出力する。
59は、これら各信号処理モジュール50〜58から与
えられる処理結果に基づいて、「うるさい」、「暑
い」、「明るい」、「ボールを検出した」、「転倒を検
出した」、「撫でられた」、「叩かれた」、「ドミソの
音階が聞こえた」、「動く物体を検出した」又は「障害
物を検出した」などの自己及び周囲の状況や、使用者か
らの指令及び働きかけを認識し、認識結果をアプリケー
ション・レイヤ41(図7)に出力する。
【0066】アプリケーション・レイヤ4lは、図10
に示すように、行動モデルライブラリ70、行動切換え
モジュール71、学習モジュール72、感情モデル73
及び本能モデル74の5つのモジュールから構成されて
いる。
に示すように、行動モデルライブラリ70、行動切換え
モジュール71、学習モジュール72、感情モデル73
及び本能モデル74の5つのモジュールから構成されて
いる。
【0067】行動モデルライブラリ70には、図11に
示すように、「バッテリ残量が少なくなった場合」、
「転倒復帰する」、「障害物を回避する場合」、「感情
を表現する場合」、「ボールを検出した場合」などの予
め選択されたいくつかの条件項目にそれぞれ対応させ
て、それぞれ独立した行動モデル701〜70nが設け
られている。
示すように、「バッテリ残量が少なくなった場合」、
「転倒復帰する」、「障害物を回避する場合」、「感情
を表現する場合」、「ボールを検出した場合」などの予
め選択されたいくつかの条件項目にそれぞれ対応させ
て、それぞれ独立した行動モデル701〜70nが設け
られている。
【0068】そして、これら行動モデル701〜70n
は、それぞれ入力セマンティクスコンバータモジュール
59から認識結果が与えられたときや、最後の認識結果
が与えられてから一定時間が経過したときなどに、必要
に応じて後述のように感情モデル73に保持されている
対応する情動のパラメータ値や、本能モデル74に保持
されている対応する欲求のパラメータ値を参照しながら
続く行動をそれぞれ決定し、決定結果を行動切換えモジ
ュール71に出力する。
は、それぞれ入力セマンティクスコンバータモジュール
59から認識結果が与えられたときや、最後の認識結果
が与えられてから一定時間が経過したときなどに、必要
に応じて後述のように感情モデル73に保持されている
対応する情動のパラメータ値や、本能モデル74に保持
されている対応する欲求のパラメータ値を参照しながら
続く行動をそれぞれ決定し、決定結果を行動切換えモジ
ュール71に出力する。
【0069】なお、この実施の形態の場合、各行動モデ
ル701〜70nは、次の行動を決定する手法として、
図12に示すような1つのノード(状態)NODE0〜
NODEnから他のどのノードNODE0〜NODEn
に遷移するかを各ノードNODE0〜NODEnに間を
接続するアークARC1〜ARCn1に対してそれぞれ
設定された遷移確率P1〜Pnに基づいて確率的に決定
する有限確率オートマトンと呼ばれるアルゴリズムを用
いる。
ル701〜70nは、次の行動を決定する手法として、
図12に示すような1つのノード(状態)NODE0〜
NODEnから他のどのノードNODE0〜NODEn
に遷移するかを各ノードNODE0〜NODEnに間を
接続するアークARC1〜ARCn1に対してそれぞれ
設定された遷移確率P1〜Pnに基づいて確率的に決定
する有限確率オートマトンと呼ばれるアルゴリズムを用
いる。
【0070】具体的に、各行動モデル701〜70
nは、それぞれ自己の行動モデル701〜70nを形成
するノードNODE0〜NODEnにそれぞれ対応させ
て、これらノードNODE0〜NODEnごとに図13
に示すような状態遷移表80を有している。
nは、それぞれ自己の行動モデル701〜70nを形成
するノードNODE0〜NODEnにそれぞれ対応させ
て、これらノードNODE0〜NODEnごとに図13
に示すような状態遷移表80を有している。
【0071】この状態遷移表80では、そのノードNO
DE0〜NODEnにおいて遷移条件とする入力イベン
ト(認識結果)が「入力イベント名」の行に優先順に列
記され、その遷移条件についてのさらなる条件が「デー
タ名」及び「データ範囲」の行における対応する列に記
述されている。
DE0〜NODEnにおいて遷移条件とする入力イベン
ト(認識結果)が「入力イベント名」の行に優先順に列
記され、その遷移条件についてのさらなる条件が「デー
タ名」及び「データ範囲」の行における対応する列に記
述されている。
【0072】したがって、図13の状態遷移表80で表
されるノードNODE100では、「ボールを検出(B
ALL)」という認識結果が与えられた場合に、当該認
識結果と共に与えられるそのボールの「大きさ(SIZ
E)」が「0から1000」の範囲であることや、「障害物
を検出(OBSTACLE)」という認識結果が与えら
れた場合に、当該認識結果と共に与えられるその障害物
までの「距離(DISTANCE)」が「0から100」の
範囲であることが他のノードに遷移するための条件とな
っている。
されるノードNODE100では、「ボールを検出(B
ALL)」という認識結果が与えられた場合に、当該認
識結果と共に与えられるそのボールの「大きさ(SIZ
E)」が「0から1000」の範囲であることや、「障害物
を検出(OBSTACLE)」という認識結果が与えら
れた場合に、当該認識結果と共に与えられるその障害物
までの「距離(DISTANCE)」が「0から100」の
範囲であることが他のノードに遷移するための条件とな
っている。
【0073】また、このノードNODE100では、認
識結果の入力がない場合においても、行動モデル701
〜70nが周期的に参照する感情モデル73及び本能モ
デル74にそれぞれ保持された各情動及び各欲求のパラ
メータ値のうち、感情モデル73に保持された「喜び
(JOY)」、「驚き(SURPRISE)」若しくは
「悲しみ(SUDNESS)」のいずれかのパラメータ
値が「50から100」の範囲であるときには他のノードに
遷移することができるようになっている。
識結果の入力がない場合においても、行動モデル701
〜70nが周期的に参照する感情モデル73及び本能モ
デル74にそれぞれ保持された各情動及び各欲求のパラ
メータ値のうち、感情モデル73に保持された「喜び
(JOY)」、「驚き(SURPRISE)」若しくは
「悲しみ(SUDNESS)」のいずれかのパラメータ
値が「50から100」の範囲であるときには他のノードに
遷移することができるようになっている。
【0074】また、状態遷移表80では、「他のノード
ヘの遷移確率」の欄における「遷移先ノード」の列にそ
のノードNODE0〜 NODEnから遷移できるノー
ド名が列記されていると共に、「入力イベント名」、
「データ値」及び「データの範囲」の行に記述された全
ての条件が揃ったときに遷移できる他の各ノードNOD
E0〜NODEnへの遷移確率が「他のノードヘの遷移
確率」の欄内の対応する箇所にそれぞれ記述され、その
ノードNODE0〜NODEnに遷移する際に出力すべ
き行動が「他のノードヘの遷移確率」の欄における「出
力行動」の行に記述されている。なお、「他のノードヘ
の遷移確率」の欄における各行の確率の和は100
[%]となっている。
ヘの遷移確率」の欄における「遷移先ノード」の列にそ
のノードNODE0〜 NODEnから遷移できるノー
ド名が列記されていると共に、「入力イベント名」、
「データ値」及び「データの範囲」の行に記述された全
ての条件が揃ったときに遷移できる他の各ノードNOD
E0〜NODEnへの遷移確率が「他のノードヘの遷移
確率」の欄内の対応する箇所にそれぞれ記述され、その
ノードNODE0〜NODEnに遷移する際に出力すべ
き行動が「他のノードヘの遷移確率」の欄における「出
力行動」の行に記述されている。なお、「他のノードヘ
の遷移確率」の欄における各行の確率の和は100
[%]となっている。
【0075】したがって、図13の状態遷移表80で表
されるノードNODE100では、例えば「ボールを検
出(BALL)」し、そのボールの「SIZE(大き
さ)」が「0から1000」の範囲であるという認識結果が
与えられた場合には、「30[%]」の確率で「ノードN
ODE120(node 120)」に遷移でき、そのとき「A
CTION1」の行動が出力されることとなる。
されるノードNODE100では、例えば「ボールを検
出(BALL)」し、そのボールの「SIZE(大き
さ)」が「0から1000」の範囲であるという認識結果が
与えられた場合には、「30[%]」の確率で「ノードN
ODE120(node 120)」に遷移でき、そのとき「A
CTION1」の行動が出力されることとなる。
【0076】各行動モデル701〜70nは、それぞれ
このような状態遷移表80として記述されたノードNO
DE0〜 NODEnがいくつも繋がるようにして構成
されており、入力セマンティクスコンバータモジュール
59から認識結果が与えられたときなどに、対応するノ
ードNODE0〜NODEnの状態遷移表を利用して確
率的に次の行動を決定し、決定結果を行動切換えモジュ
ール71に出力するようになされている。
このような状態遷移表80として記述されたノードNO
DE0〜 NODEnがいくつも繋がるようにして構成
されており、入力セマンティクスコンバータモジュール
59から認識結果が与えられたときなどに、対応するノ
ードNODE0〜NODEnの状態遷移表を利用して確
率的に次の行動を決定し、決定結果を行動切換えモジュ
ール71に出力するようになされている。
【0077】図10に示す行動切換えモジュール71
は、行動モデルライブラリ70の各行動モデル701〜
70nからそれぞれ出力される行動のうち、予め定めら
れた優先順位の高い行動モデル701〜70nから出力
された行動を選択し、当該行動を実行すべき旨のコマン
ド(以下、これを行動コマンドという。)をミドル・ウ
ェア・レイヤ40の出力セマンティクスコンバータモジ
ュール68に送出する。なお、この実施の形態において
は、図11において下側に表記された行動モデル701
〜70nほど優先順位が高く設定されている。
は、行動モデルライブラリ70の各行動モデル701〜
70nからそれぞれ出力される行動のうち、予め定めら
れた優先順位の高い行動モデル701〜70nから出力
された行動を選択し、当該行動を実行すべき旨のコマン
ド(以下、これを行動コマンドという。)をミドル・ウ
ェア・レイヤ40の出力セマンティクスコンバータモジ
ュール68に送出する。なお、この実施の形態において
は、図11において下側に表記された行動モデル701
〜70nほど優先順位が高く設定されている。
【0078】また、行動切換えモジュール71は、行動
完了後に出力セマンティクスコンバータモジュール68
から与えられる行動完了情報に基づいて、その行動が完
了したことを学習モジュール72、感情モデル73及び
本能モデル74に通知する。
完了後に出力セマンティクスコンバータモジュール68
から与えられる行動完了情報に基づいて、その行動が完
了したことを学習モジュール72、感情モデル73及び
本能モデル74に通知する。
【0079】一方、学習モジュール72は、入力セマン
ティクスコンバータモジュール59から与えられる認識
結果のうち、「叩かれた」や「撫でられた」など、使用
者からの働きかけとして受けた教示の認識結果を入力す
る。
ティクスコンバータモジュール59から与えられる認識
結果のうち、「叩かれた」や「撫でられた」など、使用
者からの働きかけとして受けた教示の認識結果を入力す
る。
【0080】そして、学習モジュール72は、この認識
結果及び行動切換えモジュール71からの通知に基づい
て、「叩かれた(叱られた)」ときにはその行動の発現
確率を低下させ、「撫でられた(褒められた)」ときに
はその行動の発現確率を上昇させるように、行動モデル
ライブラリ70における対応する行動モデル701〜7
0nの対応する遷移確率を変更する。
結果及び行動切換えモジュール71からの通知に基づい
て、「叩かれた(叱られた)」ときにはその行動の発現
確率を低下させ、「撫でられた(褒められた)」ときに
はその行動の発現確率を上昇させるように、行動モデル
ライブラリ70における対応する行動モデル701〜7
0nの対応する遷移確率を変更する。
【0081】他方、感情モデル73は、「喜び(jo
y)」、「悲しみ(sadness)」、「怒り(anger)」、
「驚き(surprise)」、「嫌悪(disgust)」及び「恐
れ(fear)」の合計6つの情動について、各情動ごとに
その情動の強さを表すパラメータを保持している。そし
て、感情モデル73は、これら各情動のパラメータ値
を、それぞれ入力セマンティクスコンバータモジュール
59から与えられる「叩かれた」及び「撫でられた」な
どの特定の認識結果と、経過時間及び行動切換えモジュ
ール71からの通知となどに基づいて周期的に更新す
る。
y)」、「悲しみ(sadness)」、「怒り(anger)」、
「驚き(surprise)」、「嫌悪(disgust)」及び「恐
れ(fear)」の合計6つの情動について、各情動ごとに
その情動の強さを表すパラメータを保持している。そし
て、感情モデル73は、これら各情動のパラメータ値
を、それぞれ入力セマンティクスコンバータモジュール
59から与えられる「叩かれた」及び「撫でられた」な
どの特定の認識結果と、経過時間及び行動切換えモジュ
ール71からの通知となどに基づいて周期的に更新す
る。
【0082】具体的には、感情モデル73は、入力セマ
ンティクスコンバータモジュール59から与えられる認
識結果と、そのときのロボット装置1の行動と、前回更
新してからの経過時間となどに基づいて所定の演算式に
より算出されるそのときのその情動の変動量を△E
[t]、現在のその情動のパラメータ値をE[t]、そ
の情動の感度を表す係数をkeとして、(1)式によっ
て次の周期におけるその情動のパラメータ値E[t+
1]を算出し、これを現在のその情動のパラメータ値E
[t]と置き換えるようにしてその情動のパラメータ値
を更新する。また、感情モデル73は、これと同様にし
て全ての情動のパラメータ値を更新する。
ンティクスコンバータモジュール59から与えられる認
識結果と、そのときのロボット装置1の行動と、前回更
新してからの経過時間となどに基づいて所定の演算式に
より算出されるそのときのその情動の変動量を△E
[t]、現在のその情動のパラメータ値をE[t]、そ
の情動の感度を表す係数をkeとして、(1)式によっ
て次の周期におけるその情動のパラメータ値E[t+
1]を算出し、これを現在のその情動のパラメータ値E
[t]と置き換えるようにしてその情動のパラメータ値
を更新する。また、感情モデル73は、これと同様にし
て全ての情動のパラメータ値を更新する。
【0083】
【数1】
【0084】なお、各認識結果や出力セマンティクスコ
ンバータモジュール68からの通知が各情動のパラメー
タ値の変動量△E[t]にどの程度の影響を与えるかは
予め決められており、例えば「叩かれた」といった認識
結果は「怒り」の情動のパラメータ値の変動量△E
[t]に大きな影響を与え、「撫でられた」といった認
識結果は「喜び」の情動のパラメータ値の変動量△E
[t]に大きな影響を与えるようになっている。
ンバータモジュール68からの通知が各情動のパラメー
タ値の変動量△E[t]にどの程度の影響を与えるかは
予め決められており、例えば「叩かれた」といった認識
結果は「怒り」の情動のパラメータ値の変動量△E
[t]に大きな影響を与え、「撫でられた」といった認
識結果は「喜び」の情動のパラメータ値の変動量△E
[t]に大きな影響を与えるようになっている。
【0085】ここで、出力セマンティクスコンバータモ
ジュール68からの通知とは、いわゆる行動のフィード
バック情報(行動完了情報)であり、行動の出現結果の
情報であり、感情モデル73は、このような情報によっ
ても感情を変化させる。これは、例えば、「吠える」と
いった行動により怒りの感情レベルが下がるといったよ
うなことである。なお、出力セマンティクスコンバータ
モジュール68からの通知は、上述した学習モジュール
72にも入力されており、学習モジュール72は、その
通知に基づいて行動モデル701〜70nの対応する遷
移確率を変更する。
ジュール68からの通知とは、いわゆる行動のフィード
バック情報(行動完了情報)であり、行動の出現結果の
情報であり、感情モデル73は、このような情報によっ
ても感情を変化させる。これは、例えば、「吠える」と
いった行動により怒りの感情レベルが下がるといったよ
うなことである。なお、出力セマンティクスコンバータ
モジュール68からの通知は、上述した学習モジュール
72にも入力されており、学習モジュール72は、その
通知に基づいて行動モデル701〜70nの対応する遷
移確率を変更する。
【0086】なお、行動結果のフィードバックは、行動
切換えモジュレータ71の出力(感情が付加された行
動)によりなされるものであってもよい。
切換えモジュレータ71の出力(感情が付加された行
動)によりなされるものであってもよい。
【0087】一方、本能モデル74は、「運動欲(exer
cise)」、「愛情欲(affection)」、「食欲(appetit
e)」及び「好奇心(curiosity)」の互いに独立した4
つの欲求について、これら欲求ごとにその欲求の強さを
表すパラメータを保持している。そして、本能モデル7
4は、これらの欲求のパラメータ値を、それぞれ入力セ
マンティクスコンバータモジュール59から与えられる
認識結果や、経過時間及び行動切換えモジュール71か
らの通知などに基づいて周期的に更新する。
cise)」、「愛情欲(affection)」、「食欲(appetit
e)」及び「好奇心(curiosity)」の互いに独立した4
つの欲求について、これら欲求ごとにその欲求の強さを
表すパラメータを保持している。そして、本能モデル7
4は、これらの欲求のパラメータ値を、それぞれ入力セ
マンティクスコンバータモジュール59から与えられる
認識結果や、経過時間及び行動切換えモジュール71か
らの通知などに基づいて周期的に更新する。
【0088】具体的には、本能モデル74は、「運動
欲」、「愛情欲」及び「好奇心」については、認識結
果、経過時間及び出力セマンティクスコンバータモジュ
ール68からの通知などに基づいて所定の演算式により
算出されるそのときのその欲求の変動量をΔI[k]、
現在のその欲求のパラメータ値をI[k]、その欲求の
感度を表す係数kiとして、所定周期で(2)式を用い
て次の周期におけるその欲求のパラメータ値I[k+
1]を算出し、この演算結果を現在のその欲求のパラメ
ータ値I[k]と置き換えるようにしてその欲求のパラ
メータ値を更新する。また、本能モデル74は、これと
同様にして「食欲」を除く各欲求のパラメータ値を更新
する。
欲」、「愛情欲」及び「好奇心」については、認識結
果、経過時間及び出力セマンティクスコンバータモジュ
ール68からの通知などに基づいて所定の演算式により
算出されるそのときのその欲求の変動量をΔI[k]、
現在のその欲求のパラメータ値をI[k]、その欲求の
感度を表す係数kiとして、所定周期で(2)式を用い
て次の周期におけるその欲求のパラメータ値I[k+
1]を算出し、この演算結果を現在のその欲求のパラメ
ータ値I[k]と置き換えるようにしてその欲求のパラ
メータ値を更新する。また、本能モデル74は、これと
同様にして「食欲」を除く各欲求のパラメータ値を更新
する。
【0089】
【数2】
【0090】なお、認識結果及び出力セマンティクスコ
ンバータモジュール68からの通知などが各欲求のパラ
メータ値の変動量△I[k]にどの程度の影響を与える
かは予め決められており、例えば出力セマンティクスコ
ンバータモジュール68からの通知は、「疲れ」のパラ
メータ値の変動量△I[k]に大きな影響を与えるよう
になっている。
ンバータモジュール68からの通知などが各欲求のパラ
メータ値の変動量△I[k]にどの程度の影響を与える
かは予め決められており、例えば出力セマンティクスコ
ンバータモジュール68からの通知は、「疲れ」のパラ
メータ値の変動量△I[k]に大きな影響を与えるよう
になっている。
【0091】なお、本実施の形態においては、各情動及
び各欲求(本能)のパラメータ値がそれぞれ0から100ま
での範囲で変動するように規制されており、また係数k
e、kiの値も各情動及び各欲求ごとに個別に設定され
ている。
び各欲求(本能)のパラメータ値がそれぞれ0から100ま
での範囲で変動するように規制されており、また係数k
e、kiの値も各情動及び各欲求ごとに個別に設定され
ている。
【0092】一方、ミドル・ウェア・レイヤ40の出力
セマンティクスコンバータモジュール68は、図9に示
すように、上述のようにしてアプリケーション・レイヤ
41の行動切換えモジュール71から与えられる「前
進」、「喜ぶ」、「鳴く」又は「トラッキング(ボール
を追いかける)」といった抽象的な行動コマンドを出力
系69の対応する信号処理モジュール61〜67に与え
る。
セマンティクスコンバータモジュール68は、図9に示
すように、上述のようにしてアプリケーション・レイヤ
41の行動切換えモジュール71から与えられる「前
進」、「喜ぶ」、「鳴く」又は「トラッキング(ボール
を追いかける)」といった抽象的な行動コマンドを出力
系69の対応する信号処理モジュール61〜67に与え
る。
【0093】そしてこれら信号処理モジュール61〜6
7は、行動コマンドが与えられると当該行動コマンドに
基づいて、その行動を行うために対応するアクチュエー
タ251〜25n(図7)に与えるべきサーボ指令値
や、スピーカ24(図7)から出力する音の音声データ
及び又は「目」のLEDに与える駆動データを生成し、
これらのデータをロボティック・サーバ・オブジェクト
32のバーチャル・ロボット33及び信号処理回路14
(図7)を順次介して対応するアクチュエータ251〜
25n又はスピーカ24又はLEDに順次送出する。
7は、行動コマンドが与えられると当該行動コマンドに
基づいて、その行動を行うために対応するアクチュエー
タ251〜25n(図7)に与えるべきサーボ指令値
や、スピーカ24(図7)から出力する音の音声データ
及び又は「目」のLEDに与える駆動データを生成し、
これらのデータをロボティック・サーバ・オブジェクト
32のバーチャル・ロボット33及び信号処理回路14
(図7)を順次介して対応するアクチュエータ251〜
25n又はスピーカ24又はLEDに順次送出する。
【0094】このようにしてロボット装置1において
は、制御プログラムに基づいて、自己(内部)及び周囲
(外部)の状況や、使用者からの指示及び働きかけに応
じた自律的な行動を行うことができるようになされてい
る。
は、制御プログラムに基づいて、自己(内部)及び周囲
(外部)の状況や、使用者からの指示及び働きかけに応
じた自律的な行動を行うことができるようになされてい
る。
【0095】そして、ロボット装置1は、上述したよう
に、専用のセンサーを何ら必要とせずに、制御信号によ
って外力の情報を検出することができ、例えば、その検
出した外力を利用することによって、他の姿勢に遷移し
たり、感情等の内部状態を変化させることができる。
に、専用のセンサーを何ら必要とせずに、制御信号によ
って外力の情報を検出することができ、例えば、その検
出した外力を利用することによって、他の姿勢に遷移し
たり、感情等の内部状態を変化させることができる。
【0096】なお、上述の実施の形態では、本発明を、
ロボット装置1自体に適用した場合について説明した
が、これに限定されるものではない。例えば、上述した
ような処理をロボット装置1に実行させるプログラムや
そのようなプログラムが記録された記録媒体に適用する
こともできる。この場合、例えば、記録媒体からプログ
ラムをロボット装置1に取り込むことにより、ロボット
装置1は、プログラムの実行により、上述したよう行動
制御をすることができるようになる。
ロボット装置1自体に適用した場合について説明した
が、これに限定されるものではない。例えば、上述した
ような処理をロボット装置1に実行させるプログラムや
そのようなプログラムが記録された記録媒体に適用する
こともできる。この場合、例えば、記録媒体からプログ
ラムをロボット装置1に取り込むことにより、ロボット
装置1は、プログラムの実行により、上述したよう行動
制御をすることができるようになる。
【0097】また、ロボット装置1は、他の学習手法に
よる学習システムを有することもできる。ロボット装置
1は具体的には、他の学習システムとして、図3に示し
たRNN103の逆変換として位置付けられる、いわゆ
るインバースRNN(或いはRNN−1)を用いた学習
システムを有している。このインバースRNNにより、
RNNの学習結果に基づいて予測することができる。
よる学習システムを有することもできる。ロボット装置
1は具体的には、他の学習システムとして、図3に示し
たRNN103の逆変換として位置付けられる、いわゆ
るインバースRNN(或いはRNN−1)を用いた学習
システムを有している。このインバースRNNにより、
RNNの学習結果に基づいて予測することができる。
【0098】例えば、インバースRNNは、図3に示し
たRNN103に対応して図示すると、図14に示すよ
うになり、入力層1031、隠れ層(或いは中間層)1
03 2及び出力層1033によって構成されている。以
下に、このようなインバースRNN103による処理に
ついて、上述の図3に示したRNN103の処理を含め
て説明する。例えば、RNNで考えた場合に、入力され
る値はセンサーの状態を示すセンサー出力とモータの状
態を示すモータ出力になり、それに対応した出力値は、
予測値(以下、センサー予測値という。)になる場合を
例として説明する。
たRNN103に対応して図示すると、図14に示すよ
うになり、入力層1031、隠れ層(或いは中間層)1
03 2及び出力層1033によって構成されている。以
下に、このようなインバースRNN103による処理に
ついて、上述の図3に示したRNN103の処理を含め
て説明する。例えば、RNNで考えた場合に、入力され
る値はセンサーの状態を示すセンサー出力とモータの状
態を示すモータ出力になり、それに対応した出力値は、
予測値(以下、センサー予測値という。)になる場合を
例として説明する。
【0099】RNN103には、入力層1031に、セ
ンサー出力StとアクションのデータAtとが入力さ
れ、出力層1033は、この入力に対応するセンサーの
状態に対する出力St+1とアクションに対する出力A
t+1とをする。そして、RNN103では、その出力
の一部が、コンテキスト(context)Ctとして、入力
層1031にフィードバックされる。また、RNN10
3では、例えば、出力されたセンサー予測値St+1と
実際に次時刻で計測されたセンサーの値St+1の誤差
に基づいてバックプロパゲーション法により実行され
る。RNN103では、このような入力層1031への
情報の入力により、学習結果として、各層における重み
係数が決定される。
ンサー出力StとアクションのデータAtとが入力さ
れ、出力層1033は、この入力に対応するセンサーの
状態に対する出力St+1とアクションに対する出力A
t+1とをする。そして、RNN103では、その出力
の一部が、コンテキスト(context)Ctとして、入力
層1031にフィードバックされる。また、RNN10
3では、例えば、出力されたセンサー予測値St+1と
実際に次時刻で計測されたセンサーの値St+1の誤差
に基づいてバックプロパゲーション法により実行され
る。RNN103では、このような入力層1031への
情報の入力により、学習結果として、各層における重み
係数が決定される。
【0100】一方、インバースRNN103では、その
ようなRNN103の逆変換として、学習結果に基づい
て予測値を得ることができる。具体的には、インバース
RNN103は、図14に示すように、時刻nのセンサ
ー予測出力SnとコンテキストCnが与えられる。これ
により、インバースRNN103は、時刻n−1のセン
サー入力とアクションの状態入力とコンテキストC
n−1とを出力するようになる。そして、インバースR
NN103では、上述のRNN103と同様にバックプ
ロパゲーション法により、フォワードダイナミクスへの
入力と、出力結果との誤差を使用した処理を行う。
ようなRNN103の逆変換として、学習結果に基づい
て予測値を得ることができる。具体的には、インバース
RNN103は、図14に示すように、時刻nのセンサ
ー予測出力SnとコンテキストCnが与えられる。これ
により、インバースRNN103は、時刻n−1のセン
サー入力とアクションの状態入力とコンテキストC
n−1とを出力するようになる。そして、インバースR
NN103では、上述のRNN103と同様にバックプ
ロパゲーション法により、フォワードダイナミクスへの
入力と、出力結果との誤差を使用した処理を行う。
【0101】インバースRNN103は、以上のような
処理結果として、センサー入力とコンテキストとを順次
入力にフォードバックすることで、時間をさかのぼって
モータの状態の順を予測値として出力する。そして、最
終的には、時刻nのセンサー出力Snを得るためのアク
ションの時系列A1,A2,・・・,An−1を得るこ
とができるようになる。
処理結果として、センサー入力とコンテキストとを順次
入力にフォードバックすることで、時間をさかのぼって
モータの状態の順を予測値として出力する。そして、最
終的には、時刻nのセンサー出力Snを得るためのアク
ションの時系列A1,A2,・・・,An−1を得るこ
とができるようになる。
【0102】このようなインバースRNN103によ
り、ロボット装置1は、学習後において、予め得ている
学習結果に基づいてそれが予め教示された動作になるで
あろうことを予測して、動作を自律動作として出現させ
ることができるようになる。
り、ロボット装置1は、学習後において、予め得ている
学習結果に基づいてそれが予め教示された動作になるで
あろうことを予測して、動作を自律動作として出現させ
ることができるようになる。
【0103】これにより、ロボット装置1は、RNN1
03によりセンサー情報から教示された動作を学習し
て、学習後においては、入力されたセンサー情報から次
の時間での出力すべきアクションを予測することで、学
習した姿勢とされる希望の姿勢(起想した姿勢)に自律
的に遷移することができるようになる。
03によりセンサー情報から教示された動作を学習し
て、学習後においては、入力されたセンサー情報から次
の時間での出力すべきアクションを予測することで、学
習した姿勢とされる希望の姿勢(起想した姿勢)に自律
的に遷移することができるようになる。
【0104】なお、この例では、センサーの状態ととも
に入力するデータがアクションについてのデータとして
いるが、具体的には、アクションについてのデータをモ
ータのデータとすることができる。例えば、この場合、
学習時には、RNNには、時系列のセンサーの状態を示
す時系列S1,S2,・・・,Sn−1とともに、モー
タの時系列m1,m2,・・・,mn−1が入力される
ようになる。
に入力するデータがアクションについてのデータとして
いるが、具体的には、アクションについてのデータをモ
ータのデータとすることができる。例えば、この場合、
学習時には、RNNには、時系列のセンサーの状態を示
す時系列S1,S2,・・・,Sn−1とともに、モー
タの時系列m1,m2,・・・,mn−1が入力される
ようになる。
【0105】以上のようなRNN及びRNNインバース
は、具体的には、図15に示すRNNモジュール112
として構成されている。
は、具体的には、図15に示すRNNモジュール112
として構成されている。
【0106】このロボット装置1は、図15に示すよう
に、上述のバーチャルロボット33、並びに姿勢管理用
トラッキングモジュールモジュール用、モーション再生
用、転倒復帰用及び歩行用の信号処理モジュール61〜
64の他に、行動計画モジュール111、RNNモジュ
ール112及び特徴量抽出モジュール113を備えてい
る。例えば、このような各構成部分は、制御プログラム
として構成されている。具体的には、上述の図8に示し
たミドル・ウェア・レイヤ40を構成しており、上述し
たように姿勢管理用トラッキングモジュールモジュール
用、モーション再生用、転倒復帰用及び歩行用の各信号
処理モジュール61〜64については、出力系69にお
いて構成されており、特徴量抽出モジュール113につ
いては、認識系60において構成されている。
に、上述のバーチャルロボット33、並びに姿勢管理用
トラッキングモジュールモジュール用、モーション再生
用、転倒復帰用及び歩行用の信号処理モジュール61〜
64の他に、行動計画モジュール111、RNNモジュ
ール112及び特徴量抽出モジュール113を備えてい
る。例えば、このような各構成部分は、制御プログラム
として構成されている。具体的には、上述の図8に示し
たミドル・ウェア・レイヤ40を構成しており、上述し
たように姿勢管理用トラッキングモジュールモジュール
用、モーション再生用、転倒復帰用及び歩行用の各信号
処理モジュール61〜64については、出力系69にお
いて構成されており、特徴量抽出モジュール113につ
いては、認識系60において構成されている。
【0107】図15のように示される構成において、ロ
ボット装置1において検出された各種センサー情報は、
特徴量抽出モジュール113に入力される。
ボット装置1において検出された各種センサー情報は、
特徴量抽出モジュール113に入力される。
【0108】特徴量抽出モジュール113では、各種セ
ンサー情報を処理して、センサー情報から特徴量を抽出
し、センサー特徴量を得る。そして、特徴量抽出モジュ
ール113は、センサー特徴量を、RNNモジュール1
12に出力する。
ンサー情報を処理して、センサー情報から特徴量を抽出
し、センサー特徴量を得る。そして、特徴量抽出モジュ
ール113は、センサー特徴量を、RNNモジュール1
12に出力する。
【0109】RNNモジュール112は、情報の学習
と、その学習結果を利用した情報の予測を行う機能を有
している。例えば、RNNモジュール112は、図16
に示すように構成されている。また、例えば、このRN
Nモジュール112は、図10に示した学習モジュール
72として制御プログラムによって構成されている。
と、その学習結果を利用した情報の予測を行う機能を有
している。例えば、RNNモジュール112は、図16
に示すように構成されている。また、例えば、このRN
Nモジュール112は、図10に示した学習モジュール
72として制御プログラムによって構成されている。
【0110】このようなRNNモジュール112には、
センサー情報が入力として与えられると同時に、行動計
画モジュール111から出力されるコマンドAtも入力
として与えられる。RNNモジュール112では、入力
されるセンサー特徴量とコマンドとを使用して、RNN
としてのフォワードモデル1121とインバースRNN
としてのインバースモデル1122とによる学習を行
う。
センサー情報が入力として与えられると同時に、行動計
画モジュール111から出力されるコマンドAtも入力
として与えられる。RNNモジュール112では、入力
されるセンサー特徴量とコマンドとを使用して、RNN
としてのフォワードモデル1121とインバースRNN
としてのインバースモデル1122とによる学習を行
う。
【0111】学習の際には、RNNモジュール112
は、フォワードモデル1121により、入力されてくる
センサー情報St等から次時刻のセンサー情報(センサ
ー予測値)St+1及びコンテキストCt+1を得る。
RNNモジュール112において得られた次時刻のセン
サー情報St+1及びコンテキストCt+1は、行動計
画モジュール111において記憶される。例えば、行動
計画モジュール111は、必要に応じて内部状態に関連
付けて記憶する。例えば、内部状態とは、感情等であ
る。
は、フォワードモデル1121により、入力されてくる
センサー情報St等から次時刻のセンサー情報(センサ
ー予測値)St+1及びコンテキストCt+1を得る。
RNNモジュール112において得られた次時刻のセン
サー情報St+1及びコンテキストCt+1は、行動計
画モジュール111において記憶される。例えば、行動
計画モジュール111は、必要に応じて内部状態に関連
付けて記憶する。例えば、内部状態とは、感情等であ
る。
【0112】行動計画モジュール111は、ロボット装
置1の行動の計画を決定する部分である。行動計画モジ
ュール111は、例えば、図10に示した行動モデルラ
イブラリ70として構成されている。学習(学習フェイ
ズ)の際(すなわち、未だ完全に学習されていない場
合)には、行動計画モジュール111は、上述したよう
な行動モデルライブラリ70の行動モデル701〜70
nのうちの一の所望の行動モデルに基づいてロボット装
置1の行動を決定するようにしている。行動計画モジュ
ール111は、図15に示すように、行動計画に応じた
行動情報Atを、姿勢管理モジュール61に出力してい
る。そして、姿勢管理モジュール61以降の処理によ
り、そのような行動情報Atに基づいて動作の制御がな
されるようになる。
置1の行動の計画を決定する部分である。行動計画モジ
ュール111は、例えば、図10に示した行動モデルラ
イブラリ70として構成されている。学習(学習フェイ
ズ)の際(すなわち、未だ完全に学習されていない場
合)には、行動計画モジュール111は、上述したよう
な行動モデルライブラリ70の行動モデル701〜70
nのうちの一の所望の行動モデルに基づいてロボット装
置1の行動を決定するようにしている。行動計画モジュ
ール111は、図15に示すように、行動計画に応じた
行動情報Atを、姿勢管理モジュール61に出力してい
る。そして、姿勢管理モジュール61以降の処理によ
り、そのような行動情報Atに基づいて動作の制御がな
されるようになる。
【0113】また、行動計画モジュール111は、RN
Nモジュール112の学習が進んだ状態(すなわち、あ
る程度学習をした後)で、行動計画モジュール111の
内部にて記憶されたセンサー情報とコンテキストを起想
させる必要が起こったときに、起想させたいセンサー情
報SとコンテキストCとを取り出し、それをインバース
RNNとされるフォワードモデル1122の入力として
RNNモジュール112に与える。
Nモジュール112の学習が進んだ状態(すなわち、あ
る程度学習をした後)で、行動計画モジュール111の
内部にて記憶されたセンサー情報とコンテキストを起想
させる必要が起こったときに、起想させたいセンサー情
報SとコンテキストCとを取り出し、それをインバース
RNNとされるフォワードモデル1122の入力として
RNNモジュール112に与える。
【0114】RNNモジュール112では、この入力か
ら、インバースRNNにより、実現する(想起する)ア
クションの時系列A1,A2,・・・,Anを順次計算
し、姿勢管理モジュール61に対して送信する。これに
より、行動計画モジュール111の期待する入力が得ら
れるようにロボット装置1の行動が実行されるするよう
になる。
ら、インバースRNNにより、実現する(想起する)ア
クションの時系列A1,A2,・・・,Anを順次計算
し、姿勢管理モジュール61に対して送信する。これに
より、行動計画モジュール111の期待する入力が得ら
れるようにロボット装置1の行動が実行されるするよう
になる。
【0115】以上のように、ロボット装置1によれば、
ユーザが直接ロボット装置1に対して力を加えること
で、ユーザとロボット装置1との間で直感的なインター
フェースを形成することができ、しかも、繰り返して同
じ操作を教えることによって、後に、ロボット装置1自
身が採るべき動作を予測し、最後まで操作しなくても自
律的に動作するようになる。
ユーザが直接ロボット装置1に対して力を加えること
で、ユーザとロボット装置1との間で直感的なインター
フェースを形成することができ、しかも、繰り返して同
じ操作を教えることによって、後に、ロボット装置1自
身が採るべき動作を予測し、最後まで操作しなくても自
律的に動作するようになる。
【0116】
【発明の効果】本発明に係るロボット装置は、評価値が
増加するように、行動をさせる行動制御手段を備えてお
り、評価値が、基準位置に近いほど増加するようになさ
れている。これにより、ロボット装置は、評価値が増加
するように行動することによって、結果的として基準位
置に戻る行動をするようになる。このようなロボット装
置は、例えば、行動範囲を広げる行動をより現実的に実
行することができるようになる。
増加するように、行動をさせる行動制御手段を備えてお
り、評価値が、基準位置に近いほど増加するようになさ
れている。これにより、ロボット装置は、評価値が増加
するように行動することによって、結果的として基準位
置に戻る行動をするようになる。このようなロボット装
置は、例えば、行動範囲を広げる行動をより現実的に実
行することができるようになる。
【0117】また、本発明に係るロボット装置の行動制
御方法は、基準位置に近いほど増加する評価値に基づい
てロボット装置の行動を制御し、評価値が増加するよう
に、ロボット装置の行動制御をすることにより、このよ
うなロボット装置の行動制御方法によって制御されるロ
ボット装置は、評価値が増加するように行動することに
よって、結果的として基準位置に戻る行動をするように
なる。このようなロボット装置は、例えば、行動範囲を
広げる行動をより現実的に実行することができるように
なる。
御方法は、基準位置に近いほど増加する評価値に基づい
てロボット装置の行動を制御し、評価値が増加するよう
に、ロボット装置の行動制御をすることにより、このよ
うなロボット装置の行動制御方法によって制御されるロ
ボット装置は、評価値が増加するように行動することに
よって、結果的として基準位置に戻る行動をするように
なる。このようなロボット装置は、例えば、行動範囲を
広げる行動をより現実的に実行することができるように
なる。
【0118】また、本発明に係るプログラムは、基準位
置に近いほど増加する評価値に基づいてロボット装置の
行動を制御し、評価値が増加するように、ロボット装置
の行動制御を実行するものであり、このようなプログラ
ムに基づいて行動制御を実行するロボット装置は、評価
値が増加するように行動することによって、結果的とし
て基準位置に戻る行動をするようになる。このようなロ
ボット装置は、例えば、行動範囲を広げる行動をより現
実的に実行することができるようになる。
置に近いほど増加する評価値に基づいてロボット装置の
行動を制御し、評価値が増加するように、ロボット装置
の行動制御を実行するものであり、このようなプログラ
ムに基づいて行動制御を実行するロボット装置は、評価
値が増加するように行動することによって、結果的とし
て基準位置に戻る行動をするようになる。このようなロ
ボット装置は、例えば、行動範囲を広げる行動をより現
実的に実行することができるようになる。
【0119】また、本発明に係る記録媒体は、基準位置
に近いほど増加する評価値に基づいてロボット装置の行
動を制御し、評価値が増加するように、ロボット装置の
行動制御を実行するプログラムが記録されるものであ
り、このような記録媒体に記録されたプログラムに基づ
いて行動制御を実行するロボット装置は、評価値が増加
するように行動することによって、結果的として基準位
置に戻る行動をするようになる。このようなロボット装
置は、例えば、行動範囲を広げる行動をより現実的に実
行することができるようになる。
に近いほど増加する評価値に基づいてロボット装置の行
動を制御し、評価値が増加するように、ロボット装置の
行動制御を実行するプログラムが記録されるものであ
り、このような記録媒体に記録されたプログラムに基づ
いて行動制御を実行するロボット装置は、評価値が増加
するように行動することによって、結果的として基準位
置に戻る行動をするようになる。このようなロボット装
置は、例えば、行動範囲を広げる行動をより現実的に実
行することができるようになる。
【図1】本発明の実施の形態であるロボット装置の外観
構成を示す斜視図である。
構成を示す斜視図である。
【図2】上述のロボット装置による行動範囲を広げる行
動を説明するために使用した図である。
動を説明するために使用した図である。
【図3】ロボット装置が備える学習システムとされるR
NNの構成を示す図である。
NNの構成を示す図である。
【図4】行動に関連して報酬についても学習をするRN
Nの構成を示す図である。
Nの構成を示す図である。
【図5】行動選択をする具体的な構成を示すブロック図
である。
である。
【図6】ホーミング・リワードについても学習するRN
Nの構成を示す図である。
Nの構成を示す図である。
【図7】上述のロボット装置の回路構成を示すブロック
図である。
図である。
【図8】上述のロボット装置のソフトウェア構成を示す
ブロック図である。
ブロック図である。
【図9】上述のロボット装置のソフトウェア構成におけ
るミドル・ウェア・レイヤの構成を示すブロック図であ
る。
るミドル・ウェア・レイヤの構成を示すブロック図であ
る。
【図10】上述のロボット装置のソフトウェア構成にお
けるアプリケーション・レイヤの構成を示すブロック図
である。
けるアプリケーション・レイヤの構成を示すブロック図
である。
【図11】上述のアプリケーション・レイヤの行動モデ
ルライブラリの構成を示すブロック図である。
ルライブラリの構成を示すブロック図である。
【図12】ロボット装置の行動決定のための情報となる
有限確率オートマトンを説明するために使用した図であ
る。
有限確率オートマトンを説明するために使用した図であ
る。
【図13】有限確率オートマトンの各ノードに用意され
た状態遷移表を示す図である。
た状態遷移表を示す図である。
【図14】インバースRNNの構成を示す図である。
【図15】RNNモジュールを取り得れた構成を示す図
である。
である。
【図16】RNNとインバースRNNとによって構成さ
れるRNNモジュールの構成を示す図である。
れるRNNモジュールの構成を示す図である。
1 ロボット装置、103 RNN(インバースRN
N)
N)
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 3C007 AS36 BS09 CX01 CY02 ES09 HS04 HS27 JS07 KS12 KS16 KS19 KS20 KS36 KS38 KS39 KT02 KT11 KV01 KV06 KV18 LS15 LV05 LV14 LW03 LW12 LW15 MS07 MS09 MS27 MT14 WA04 WA14 WA28 WB01 WB09 WB14 WB15 WB16 WB26 WC13 WC30
Claims (16)
- 【請求項1】 評価値が増加するように、行動をさせる
行動制御手段を備え、 上記評価値が、基準位置に近いほど増加すること を特徴とするロボット装置。 - 【請求項2】 上記基準位置から近い環境に移動するに
従って評価値を増加させる評価値生成手段を備え、 上記行動制御手段は、上記評価値生成手段が生成する評
価値に基づいて行動をさせることを特徴とする請求項1
記載のロボット装置。 - 【請求項3】 外部環境を検出する検出手段と、 上記検出手段が検出した実外部環境情報を学習して、上
記検出手段が検出する実外部環境情報と、学習結果に基
づいて得た予測外部環境情報との差が小になるほど大き
い評価値を出力する学習手段とを備え、 上記行動制御手段は、上記学習手段が出力する上記評価
値に基づいて行動をさせることを特徴とする請求項1記
載のロボット装置。 - 【請求項4】 上記検出手段は、上記外部環境情報に応
じたセンサー値を出力し、 上記学習手段は、上記検出手段が検出した実センサー値
を学習して、上記検出手段が検出する実センサー値が入
力されて、それに対応して学習結果に基づいて得た予測
センサー値を出力し、上記実センサー値と上記予測セン
サー値との差が小になるほど大きい評価値を出力するこ
とを特徴とする請求項3記載のロボット装置。 - 【請求項5】 実行される行動を規定する行動計画デー
タが複数記憶された記憶手段と、上記評価値が最大にな
る一の行動計画データを選択する行動計画選択手段とを
備えており、 上記学習手段は、上記行動計画データに基づいて行動す
ると仮定した場合に上記検出手段から得られるであろう
実外部環境情報と、学習結果に基づいて得た予測外部環
境情報との差が小になるほど大きい評価値を出力し、 上記行動計画選択手段は、上記学習手段が出力する上記
評価値に基づいて一の行動計画データを選択し、 上記行動制御手段は、上記行動計画選択手段が選択した
行動計画データに基づいて行動をさせることを特徴とす
る請求項3記載のロボット装置。 - 【請求項6】 上記学習手段は、上記検出手段が検出し
た実外部環境情報が、入力層、隠れ層及び出力層に向か
って入力されるニューラルネットワークにより学習をす
ることを特徴とする請求項4記載のロボット装置。 - 【請求項7】 上記ニューラルネットワークが、上記出
力層から上記入力層に向かってフィードバックするルー
プを有するリカレントニューラルネットワークであるこ
とを特徴とする請求項6記載のロボット装置。 - 【請求項8】 上記基準位置から離れるほど大きくなる
第2の評価値があり、 上記行動制御手段は、上記第2の評価値が大きくなるよ
うに、自律的な行動をさせてもいることを特徴とする請
求項1記載のロボット装置。 - 【請求項9】 基準位置に近いほど大きくなる上記評価
値と、上記第2の評価値とを比較した比較結果に基づい
て行動をさせることを特徴とする請求項8記載のロボッ
ト装置。 - 【請求項10】 上記基準位置が、行動範囲を広げるた
めの基点であることを特徴とする請求項1記載のロボッ
ト装置。 - 【請求項11】 基準位置に近いほど増加する評価値に
基づいてロボット装置の行動を制御し、上記評価値が増
加するように、ロボット装置の行動制御をすることを特
徴とするロボット装置の行動制御方法。 - 【請求項12】 上記基準位置から近い環境にロボット
装置が移動するに従って評価値を増加させる評価値生成
工程を有し、 上記評価値生成工程にて生成される評価値に基づいてロ
ボット装置の行動制御をすることを特徴とする請求項1
1記載のロボット装置の行動制御方法。 - 【請求項13】 基準位置に近いほど増加する評価値に
基づいてロボット装置の行動を制御し、上記評価値が増
加するように、ロボット装置の行動制御を実行すること
を特徴とするプログラム。 - 【請求項14】 上記基準位置から近い環境にロボット
装置が移動するに従って評価値を増加させる評価値生成
工程を有し、 上記評価値生成工程にて生成される評価値に基づいてロ
ボット装置の行動制御を実行することを特徴とする請求
項13記載のプログラム。 - 【請求項15】 基準位置に近いほど増加する評価値に
基づいてロボット装置の行動を制御し、上記評価値が増
加するように、ロボット装置の行動制御を実行するプロ
グラムが記録されることを特徴とする記録媒体。 - 【請求項16】 上記基準位置から近い環境にロボット
装置が移動するに従って評価値を増加させる評価値生成
工程を有し、 上記評価値生成工程にて生成される評価値に基づいてロ
ボット装置の行動制御を実行するプログラムが記録され
ることを特徴とする請求項15記載の記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001045690A JP2002239952A (ja) | 2001-02-21 | 2001-02-21 | ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001045690A JP2002239952A (ja) | 2001-02-21 | 2001-02-21 | ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002239952A true JP2002239952A (ja) | 2002-08-28 |
Family
ID=18907430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001045690A Withdrawn JP2002239952A (ja) | 2001-02-21 | 2001-02-21 | ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2002239952A (ja) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004291228A (ja) * | 2003-03-11 | 2004-10-21 | Sony Corp | ロボット装置及びロボット装置の行動制御方法、並びにコンピュータ・プログラム |
JP2005300692A (ja) * | 2004-04-07 | 2005-10-27 | Sony Corp | ロボットの行動制御システム及び行動制御方法、並びにロボット装置 |
JP2006201665A (ja) * | 2005-01-24 | 2006-08-03 | Sony Corp | 情報処理装置、情報処理方法、およびプログラム |
JP2006285882A (ja) * | 2005-04-05 | 2006-10-19 | Sony Corp | 情報処理装置、情報処理方法、およびプログラム |
JP2006285898A (ja) * | 2005-04-05 | 2006-10-19 | Sony Corp | 制御装置および方法、並びにプログラム |
JP2010510895A (ja) * | 2006-11-30 | 2010-04-08 | 韓國電子通信研究院 | ロボットの姿勢検出装置及びその方法 |
US8195586B2 (en) | 2008-05-28 | 2012-06-05 | Sony Corporation | Data processing apparatus, data processing method, and computer program for setting targets in a range and taking action to attain the target |
WO2020153297A1 (ja) * | 2019-01-25 | 2020-07-30 | 株式会社ソニー・インタラクティブエンタテインメント | ロボット制御システム |
CN118111462A (zh) * | 2024-03-04 | 2024-05-31 | 中南大学 | 一种机器人无地图导航方法 |
US12103162B2 (en) | 2019-01-25 | 2024-10-01 | Sony Interactive Entertainment Inc. | Robotic device having an image analysis system |
-
2001
- 2001-02-21 JP JP2001045690A patent/JP2002239952A/ja not_active Withdrawn
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4552465B2 (ja) * | 2003-03-11 | 2010-09-29 | ソニー株式会社 | 情報処理装置、ロボット装置の行動制御方法、ロボット装置及びコンピュータ・プログラム |
JP2004291228A (ja) * | 2003-03-11 | 2004-10-21 | Sony Corp | ロボット装置及びロボット装置の行動制御方法、並びにコンピュータ・プログラム |
JP2005300692A (ja) * | 2004-04-07 | 2005-10-27 | Sony Corp | ロボットの行動制御システム及び行動制御方法、並びにロボット装置 |
US8145492B2 (en) | 2004-04-07 | 2012-03-27 | Sony Corporation | Robot behavior control system and method, and robot apparatus |
JP4661074B2 (ja) * | 2004-04-07 | 2011-03-30 | ソニー株式会社 | 情報処理システム、情報処理方法、並びにロボット装置 |
JP2006201665A (ja) * | 2005-01-24 | 2006-08-03 | Sony Corp | 情報処理装置、情報処理方法、およびプログラム |
JP4534769B2 (ja) * | 2005-01-24 | 2010-09-01 | ソニー株式会社 | 情報処理装置、情報処理方法、およびプログラム |
JP2006285898A (ja) * | 2005-04-05 | 2006-10-19 | Sony Corp | 制御装置および方法、並びにプログラム |
JP2006285882A (ja) * | 2005-04-05 | 2006-10-19 | Sony Corp | 情報処理装置、情報処理方法、およびプログラム |
JP2010510895A (ja) * | 2006-11-30 | 2010-04-08 | 韓國電子通信研究院 | ロボットの姿勢検出装置及びその方法 |
US8195586B2 (en) | 2008-05-28 | 2012-06-05 | Sony Corporation | Data processing apparatus, data processing method, and computer program for setting targets in a range and taking action to attain the target |
WO2020153297A1 (ja) * | 2019-01-25 | 2020-07-30 | 株式会社ソニー・インタラクティブエンタテインメント | ロボット制御システム |
JP2020116710A (ja) * | 2019-01-25 | 2020-08-06 | 株式会社ソニー・インタラクティブエンタテインメント | ロボット制御システム |
JP7417356B2 (ja) | 2019-01-25 | 2024-01-18 | 株式会社ソニー・インタラクティブエンタテインメント | ロボット制御システム |
US12103162B2 (en) | 2019-01-25 | 2024-10-01 | Sony Interactive Entertainment Inc. | Robotic device having an image analysis system |
CN118111462A (zh) * | 2024-03-04 | 2024-05-31 | 中南大学 | 一种机器人无地图导航方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002239960A (ja) | ロボット装置の動作制御方法、プログラム、記録媒体及びロボット装置 | |
US8145492B2 (en) | Robot behavior control system and method, and robot apparatus | |
KR100864339B1 (ko) | 로봇 장치 및 로봇 장치의 행동 제어 방법 | |
EP1508409A1 (en) | Robot device and robot control method | |
JP2002239963A (ja) | ロボット装置、ロボット装置の動作制御方法、プログラム及び記録媒体 | |
KR20010095176A (ko) | 로봇 및 로봇의 행동 결정 방법 | |
JP2005193331A (ja) | ロボット装置及びその情動表出方法 | |
KR20080074758A (ko) | 소프트웨어 로봇 장치와 그 장치에서 소프트웨어 로봇의행동 발현 방법 | |
US20080058988A1 (en) | Robots with autonomous behavior | |
JP2002239952A (ja) | ロボット装置、ロボット装置の行動制御方法、プログラム及び記録媒体 | |
JP2003159674A (ja) | ロボット装置、ロボット装置の外力検出方法及びロボット装置の外力検出プログラム、並びにロボット装置の外力検出のためのキャリブレーション方法及びロボット装置の外力検出のためのキャリブレーションプログラム | |
JP2004298975A (ja) | ロボット装置、障害物探索方法 | |
JP4296736B2 (ja) | ロボット装置 | |
JP2003136456A (ja) | ロボット装置、ロボット装置の明るさ検出方法、明るさ検出プログラム及び記録媒体 | |
KR20020067694A (ko) | 로봇 장치 및 로봇 장치의 동작 제어 방법 | |
JP2002205289A (ja) | ロボット装置の動作制御方法、プログラム、記録媒体及びロボット装置 | |
JP2003271958A (ja) | 画像処理方法、その装置、そのプログラム、その記録媒体及び画像処理装置搭載型ロボット装置 | |
JP2004130427A (ja) | ロボット装置及びロボット装置の動作制御方法 | |
JP4193098B2 (ja) | トラッキング装置、トラッキング装置のトラッキング方法及びロボット装置 | |
JP2001157980A (ja) | ロボット装置及びその制御方法 | |
JP2002120183A (ja) | ロボット装置及びロボット装置の入力情報検出方法 | |
JP2001154707A (ja) | ロボット装置及びその制御方法 | |
JP4379052B2 (ja) | 動体検出装置、動体検出方法、及びロボット装置 | |
JP2001157979A (ja) | ロボット装置及びその制御方法 | |
JP2001157981A (ja) | ロボット装置及びその制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080513 |