(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023104003
(43)【公開日】2023-07-27
(54)【発明の名称】経験に基づいて行動する自律行動型ロボット
(51)【国際特許分類】
B25J 13/08 20060101AFI20230720BHJP
G05D 1/02 20200101ALI20230720BHJP
A63H 11/00 20060101ALI20230720BHJP
【FI】
B25J13/08 Z
G05D1/02 H
A63H11/00 Z
【審査請求】有
【請求項の数】3
【出願形態】OL
(21)【出願番号】P 2023076948
(22)【出願日】2023-05-08
(62)【分割の表示】P 2019569543の分割
【原出願日】2019-01-31
(31)【優先権主張番号】P 2018014365
(32)【優先日】2018-01-31
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】515337268
【氏名又は名称】GROOVE X株式会社
(72)【発明者】
【氏名】林 要
(72)【発明者】
【氏名】林 淳哉
【テーマコード(参考)】
2C150
3C707
5H301
【Fターム(参考)】
2C150CA01
2C150CA02
2C150DA06
2C150DC28
2C150EB01
2C150ED42
2C150ED47
2C150EF16
2C150EF28
2C150EF29
2C150EF32
2C150EF33
2C150EF34
2C150FB13
2C150FB14
3C707AS36
3C707CS08
3C707CY12
3C707HT04
3C707KS01
3C707KS10
3C707KS31
3C707KS36
3C707KS39
3C707KT01
3C707KT04
3C707KV18
3C707KW01
3C707LW12
3C707WA16
3C707WL02
3C707WL12
3C707WL13
3C707WL14
5H301AA01
5H301BB14
5H301BB15
5H301CC03
5H301CC06
5H301GG08
5H301GG09
5H301GG17
(57)【要約】 (修正有)
【課題】場所あるいはモノにともなう記憶を作りながら行動選択させる技術、を提供する。
【解決手段】自律行動型ロボットは、記憶部と、プロセッサと、駆動機構と、を備えるロボットである。当該ロボットのプロセッサは、オブジェクトを検出し、当該オブジェクトに対する印象記憶を認識し、当該印象記憶に基づいて当該オブジェクトに対するモーションを決定する。当該駆動機構は、当該プロセッサにより決定されたモーションを実行する。
【選択図】
図17
【特許請求の範囲】
【請求項1】
記憶部と、
プロセッサと、
前記プロセッサにより選択されたモーションを実行する駆動機構と、を備え、
前記プロセッサは、
オブジェクトに対する印象記憶を認識し、
当該印象記憶に基づいて当該オブジェクトに対するモーションを決定するロボット。
【請求項2】
請求項1記載のロボットにおいて、
前記プロセッサは、
第1のオブジェクトが検出されたとき、前記第1のオブジェクトに対する第1の印象記憶を前記記憶部に記憶させ、
第2のオブジェクトが検出されたとき、前記第2のオブジェクトと前記第1のオブジェクトとの類似度及び前記第1の印象記憶に基づいて、前記第2のオブジェクトの印象記憶である第2の印象記憶を認識し、
前記前記第2の印象記憶に基づいて前記第2のオブジェクトに対するモーションを決定するように構成されているロボット。
【請求項3】
請求項1記載のロボットにおいて、
前記プロセッサは、
空間を示すマップを表示するとともに、空間に存在するオブジェクトを当該マップに表示し、
各オブジェクトの表示に関わる形式を、当該オブジェクトに対する印象記憶に基づいて決定するロボット。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、内部状態または外部環境に応じて自律的に行動選択するロボット、に関する。
【背景技術】
【0002】
人間は、癒やしを求めてペットを飼う。その一方、ペットの世話をする時間を十分に確保できない、ペットを飼える住環境にない、アレルギーがある
、死別がつらい、といったさまざまな理由により、ペットをあきらめている
人は多い。もし、ペットの役割が務まるロボットがあれば、ペットを飼えな
い人にもペットが与えてくれるような癒やしを与えられるかもしれない(特
許文献1、2参照)。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特開2000-323219号公報
【特許文献2】国際公開第2017/169826号
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、ロボット技術は急速に進歩しつつあるが、ペットのような伴侶としての存在感を実現するには至っていない。ロボットに自由意志があるとは思
えないからである。人間は、ペットの自由意志があるとしか思えないような
行動を観察することにより、ペットに自由意志の存在を感じ、ペットに共感
し、ペットに癒される。
【0005】
生物の特徴のひとつは「記憶」である。記憶の中には、場所やモノに結びつく連想的な記憶もある。たとえば、窓際の暖かさを経験することにより、
「窓際」に「暖かい」という印象が結びつく。あるいは、赤いコートのそば
で楽しい経験をしたとき、赤いコートに肯定的なイメージが結びつくこともある。生物は、外部環境に基づいてさまざまな記憶を形成し、外部環境に記
憶を刺激されながら行動選択を行う。
【0006】
本発明は上記課題認識に基づいて完成された発明であり、その主たる目的は、ロボットに、場所あるいはモノにともなう記憶を作りながら行動選択さ
せる技術、を提供することにある。
【課題を解決するための手段】
【0007】
本発明のある態様における自律行動型ロボットは、記憶部と、プロセッサと、前記プロセッサにより選択されたモーションを実行する駆動機構と、を備える。
前記プロセッサは、オブジェクトに対する印象記憶を認識し、当該印象記憶に基づいて当該オブジェクトに対するモーションを決定する。
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、撮像画像を取得する撮像画像取得部と、撮像画像から特徴点
を抽出することにより、画像特徴情報を取得する画像特徴取得部と、撮像画
像が取得された地点の環境情報を取得する環境情報取得部と、画像特徴情報
と環境情報を対応づけることにより、環境記憶を生成するマップ管理部と、
を備える。
動作制御部は、環境記憶を参照し、所定の移動先条件を満たす環境情報に
対応づけられる地点を移動目標地点として設定する。
【0008】
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行す
る駆動機構と、撮像画像を取得する撮像画像取得部と、撮像画像の特徴量を
抽出することにより、画像特徴情報を取得する画像特徴取得部と、撮像画像
が取得された時点において第1次環境情報を取得し、画像特徴情報と第1次
環境情報を対応づけて登録する第1次環境情報取得部と、新規に取得された
第1の画像特徴情報との類似度が所定閾値以上となる画像特徴情報に対応づ
けられる第1次環境情報を第1の画像特徴情報に対応する第2次環境情報と
して特定する第2次環境情報取得部と、を備える。
動作制御部は、第1次環境情報および第2次環境情報の双方に基づいてロ
ボットの行動特性を変化させる。
【0009】
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行する駆動機構と、撮像画像を取得する撮像画像取得部と、撮像画像の特徴量を
抽出する画像特徴取得部と、撮像画像が取得された地点における第1次環境
情報を取得する第1次環境情報取得部と、特徴量を入力として環境情報を出
力する所定の推測モデルに対して、新規に取得された撮像画像の特徴量を入
力とすることにより、推測モデルから出力される環境情報を第2次環境情報
として取得する第2次環境情報取得部と、を備える。
動作制御部は、第1次環境情報および第2次環境情報の双方に基づいてロ
ボットの行動特性を変化させる。
【0010】
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行す
る駆動機構と、オブジェクトを検出するオブジェクト検出部と、オブジェク
トが検出された時点の環境情報を取得する環境情報取得部と、オブジェクト
と環境情報を対応づけることにより、環境記憶を生成するオブジェクト管理
部と、を備える。
動作制御部は、環境記憶に基づいて行動特性を変化させる。
【0011】
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行す
る駆動機構と、オブジェクトを検出するオブジェクト検出部と、オブジェク
トが検出されたとき、感情パラメータを変化させる状態管理部と、を備える。
動作制御部は、感情パラメータにしたがってロボットの行動特性を変化さ
せる。
【0012】
本発明の別の態様における自律行動型ロボットは、ロボットのモーションを選択する動作制御部と、動作制御部により選択されたモーションを実行す
る駆動機構と、複数のオブジェクトを検出するオブジェクト検出部と、複数
のオブジェクトが検出された時点の環境情報を取得する環境情報取得部と、
環境情報に基づいて、複数のオブジェクトに印象記憶を設定する状態管理部
と、を備える。
状態管理部は、複数のオブジェクトが再検出されたときには、複数のオブ
ジェクトに対応づけられる印象記憶に基づいて感情パラメータを変化させ、
動作制御部は、感情パラメータにしたがってロボットの行動特性を変化させ
る。
【発明の効果】
【0013】
本発明によれば、ロボットにおける記憶の生成と記憶にともなう行動選択を実現しやすくなる。
【図面の簡単な説明】
【0014】
【
図1】ロボットが場所に基づいて記憶を形成する方法を説明するための概念図である。
【
図2】
図2(a)はロボットの正面外観図である。
図2(b)は、ロボットの側面外観図である。
【
図3】ロボットの構造を概略的に表す断面図である。
【
図4】基本構成におけるロボットのハードウェア構成図である。
【
図6】本実施形態におけるロボットの機能ブロック図である。
【
図7】キーフレームの作成方法を示す模式図である。
【
図11】環境マップ情報の更新処理過程を示すフローチャートである。
【
図12】イベントの発生にともなってロボットが移動先を選択する方法を説明するための模式図である。
【
図13】イベントの処理過程を示すフローチャートである。
【
図14】
図11のS28に示すオブジェクト判定処理の詳細を示すフローチャートである。
【
図15】変形例におけるオブジェクト環境情報のデータ構造図である。
【
図16】変形例におけるルーム印象情報のデータ構造図である。
【
図17】変形例において、オブジェクトを検出したときの処理過程を示すフローチャートである。
【
図18】別の変形例における行動経験情報のデータ構造図である。
【発明を実施するための形態】
【0015】
図1は、ロボット100が場所に基づいて記憶を形成する方法を説明する
ための概念図である。
本実施形態のロボット100は小型のカメラを搭載する。ロボット100
は、このカメラによって定期的に周辺を撮像することにより多数の撮像画像
(静止画像)を取得する。また、ロボット100は、マイクロフォンや温度
センサなどの各種センサにより環境情報を取得する。環境情報とは、音、ニ
オイ、電波の受信強度、温度、ユーザの存否など、各種センサによる検出値
の集合体である。ロボット100は、撮像画像に基づく記憶(以下、「画像
記憶」とよぶ)と環境情報に基づく記憶(以下、「環境記憶」とよぶ)を形
成する。この2種類の記憶を対応づけることで、ロボット100の場所に対
する記憶(以下、「場所記憶」とよぶ)が形成される。
【0016】
図1の画像記憶層400は画像記憶を概念的に示す記憶層であり、環境記
憶層402は環境記憶を概念的に示す記憶層である。画像記憶は、複数のキ
ーフレーム404の集合体である。キーフレーム404は、撮像画像におけ
る特徴点(特徴量)の分布情報である。本実施形態のロボット100は、画
像特徴量を用いたグラフベースのSLAM(Simultaneous Localization and
Mapping)技術、より具体的には、ORB(Oriented FAST and Rotated BRI
EF)特徴量に基づくSLAM技術によりキーフレーム404を形成する(詳
細後述)。
【0017】
ロボット100は、移動しながらキーフレーム404を定期的に形成する
ことにより、キーフレーム404の集合体、いいかえれば、画像特徴分布と
して画像記憶層400を形成する。ロボット100は、現在地点において取
得したキーフレーム404と、既に保有している多数のキーフレーム404
(画像記憶層400)を比較することにより、画像記憶層400におけるいずれの地点に自らが存在しているかを把握する。すなわち、ロボット100は、実際に視認している撮像画像とかつて視認した撮像画像(記憶)を比較し、自らの現在の状況と過去の記憶を整合させることで「空間認識」を行う。
【0018】
撮像画像の取得時において、ロボット100は環境情報も取得する。環境
記憶は、各地点における環境情報の集合体である。ロボット100は、環境
情報(環境記憶層402)に基づいて移動方向を選択する。たとえば、ロボ
ット100が高温の地点P1にいるとき、平均気温が20度以下の涼しい地
点への移動を選択したとする。ロボット100は、まず、上記条件を満たす
環境情報を環境記憶層402から探し、地点P2の環境情報が上記条件を満
たすことが判明したとする。次に、ロボット100は地点P2に対応するキ
ーフレーム404を特定する。ロボット100は、画像記憶層400(キー
フレーム404の分布)を参照しながら地点P2への移動経路を特定する。
以上の制御方法により、ロボット100は、平均気温が20度以下という条
件を満たす地点P2に向かって移動する。
【0019】
以下、ロボット100の基本構成について
図2から
図5に関連して説明し
たあと、本実施形態における記憶の形成および利用方法を中心として説明す
る。
なお、基本構成のロボット100は、キーフレーム404ではなく外部セ
ンサにより位置を認識することが前提となっている。キーフレーム404と
外部センサは併用してもよい。
【0020】
[基本構成]
図2(a)は、ロボット100の正面外観図である。
図2(b)は、ロボ
ット100の側面外観図である。
本実施形態におけるロボット100は、外部環境および内部状態に基づい
て行動を決定する自律行動型のロボットである。外部環境は、カメラやサー
モセンサなど各種のセンサにより認識される。内部状態はロボット100の
感情を表現するさまざまなパラメータとして定量化される。ロボット100
は、オーナー家庭の家屋内を行動範囲とする。以下、ロボット100に関わ
る人間を「ユーザ」とよぶ。
【0021】
ロボット100のボディ104は、全体的に丸みを帯びた形状を有し、ウ
レタンやゴム、樹脂、繊維などやわらかく弾力性のある素材により形成され
た外皮を含む。ロボット100に服を着せてもよい。ロボット100の総重
量は5~15キログラム程度、身長は0.5~1.2メートル程度である。
適度な重さと丸み、柔らかさ、手触りのよさ、といった諸属性により、ユー
ザがロボット100を抱きかかえやすく、かつ、抱きかかえたくなるという
効果が実現される。
【0022】
ロボット100は、一対の前輪102(左輪102a,右輪102b)と
、一つの後輪103を含む。前輪102が駆動輪であり、後輪103が従動
輪である。前輪102は、操舵機構を有しないが、回転速度や回転方向を個
別に制御可能とされている。後輪103は、キャスターであり、ロボット1
00を前後左右へ移動させるために回転自在となっている。後輪103はオ
ムニホイールであってもよい。
【0023】
前輪102および後輪103は、駆動機構(回動機構、リンク機構)によ
りボディ104に完全収納できる。走行時においても各車輪の大部分はボデ
ィ104に隠れているが、各車輪がボディ104に完全収納されるとロボッ
ト100は移動不可能な状態となる。すなわち、車輪の収納動作にともなっ
てボディ104が降下し、床面Fに着座する。この着座状態においては、ボ
ディ104の底部に形成された平坦状の着座面108(接地底面)が床面F
に当接する。
【0024】
ロボット100は、2つの手106を有する。手106には、モノを把持
する機能はない。手106は上げる、振る、振動するなど簡単な動作が可能
である。2つの手106も個別制御可能である。
【0025】
目110は、液晶素子または有機EL素子による画像表示が可能である。
ロボット100は、音源方向を特定可能なマイクロフォンアレイや超音波セ
ンサなどさまざまなセンサを搭載する。また、スピーカーを内蔵し、簡単な音声を発することもできる。
【0026】
ロボット100の頭部にはツノ112が取り付けられる。上述のようにロ
ボット100は軽量であるため、ユーザはツノ112をつかむことでロボッ
ト100を持ち上げることも可能である。ツノ112には全天周カメラが取
り付けられ、ロボット100の上部全域を一度に撮像可能である。
【0027】
図3は、ロボット100の構造を概略的に表す断面図である。
図3に示すように、ロボット100のボディ104は、ベースフレーム3
08、本体フレーム310、一対の樹脂製のホイールカバー312および外
皮314を含む。ベースフレーム308は、金属からなり、ボディ104の
軸芯を構成するとともに内部機構を支持する。ベースフレーム308は、ア
ッパープレート332とロアプレート334とを複数のサイドプレート33
6により上下に連結して構成される。複数のサイドプレート336間には通
気が可能となるよう、十分な間隔が設けられる。ベースフレーム308の内
方には、バッテリー118、制御回路342および各種アクチュエータが収
容されている。
【0028】
本体フレーム310は、樹脂材からなり、頭部フレーム316および胴部
フレーム318を含む。頭部フレーム316は、中空半球状をなし、ロボッ
ト100の頭部骨格を形成する。胴部フレーム318は、段付筒形状をなし
、ロボット100の胴部骨格を形成する。胴部フレーム318は、ベースフ
レーム308と一体に固定される。頭部フレーム316は、胴部フレーム3
18の上端部に相対変位可能に組み付けられる。
【0029】
頭部フレーム316には、ヨー軸320、ピッチ軸322およびロール軸
324の3軸と、各軸を回転駆動するためのアクチュエータ326が設けら
れる。アクチュエータ326は、各軸を個別に駆動するための複数のサーボ
モータを含む。首振り動作のためにヨー軸320が駆動され、頷き動作のた
めにピッチ軸322が駆動され、首を傾げる動作のためにロール軸324が
駆動される。
【0030】
頭部フレーム316の上部には、ヨー軸320を支持するプレート325
が固定されている。プレート325には、上下間の通気を確保するための複
数の通気孔327が形成される。
【0031】
頭部フレーム316およびその内部機構を下方から支持するように、金属
製のベースプレート328が設けられる。ベースプレート328は、クロス
リンク機構329(パンタグラフ機構)を介してプレート325と連結され
る一方、ジョイント330を介してアッパープレート332(ベースフレー
ム308)と連結される。
【0032】
胴部フレーム318は、ベースフレーム308と車輪駆動機構370を収
容する。車輪駆動機構370は、回動軸378およびアクチュエータ379
を含む。胴部フレーム318の下半部は、ホイールカバー312との間に前
輪102の収納スペースSを形成するために小幅とされる。
【0033】
外皮314は、ウレタンゴムからなり、本体フレーム310およびホイー
ルカバー312を外側から覆う。手106は、外皮314と一体成形される
。外皮314の上端部には、外気を導入するための開口部390が設けられ
る。
【0034】
図4は、ロボット100のハードウェア構成図である。
ロボット100は、内部センサ128、通信機126、記憶装置124、
プロセッサ122、駆動機構120およびバッテリー118を含む。プロセ
ッサ122と記憶装置124は、制御回路342に含まれる。各ユニットは
電源線130および信号線132により互いに接続される。バッテリー11
8は、電源線130を介して各ユニットに電力を供給する。各ユニットは信
号線132により制御信号を送受する。バッテリー118は、リチウムイオ
ン二次電池であり、ロボット100の動力源である。
【0035】
内部センサ128は、ロボット100が内蔵する各種センサの集合体であ
る。具体的には、カメラ(全天周カメラ)、マイクロフォンアレイ、測距セ
ンサ(赤外線センサ)、サーモセンサ、タッチセンサ、加速度センサ、ニオ
イセンサなどである。タッチセンサは、外皮314と本体フレーム310の
間に設置され、ユーザのタッチを検出する。ニオイセンサは、匂いの元となる分子の吸着によって電気抵抗が変化する原理を応用した既知のセンサである。
【0036】
通信機126は、各種の外部機器を対象として無線通信を行う通信モジュ
ールである。記憶装置124は、不揮発性メモリおよび揮発性メモリにより
構成され、コンピュータプログラムや各種設定情報を記憶する。プロセッサ
122は、コンピュータプログラムの実行手段である。駆動機構120は、
複数のアクチュエータおよび上述した車輪駆動機構370を含む。このほか
には、表示器やスピーカーなども搭載される。
【0037】
駆動機構120は、主として、車輪(前輪102)と頭部(頭部フレーム
316)を制御する。駆動機構120は、ロボット100の移動方向や移動
速度を変化させるほか、車輪(前輪102および後輪103)を昇降させる
こともできる。車輪が上昇すると、車輪はボディ104に完全に収納され、
ロボット100は着座面108にて床面Fに当接し、着座状態となる。また
、駆動機構120は、ワイヤ134を介して、手106を制御する。
【0038】
図5は、ロボットシステム300の機能ブロック図である。
ロボットシステム300は、ロボット100、サーバ200および複数の
外部センサ114を含む。ロボット100およびサーバ200の各構成要素
は、CPU(Central Processing Unit)および各種コプロセッサなどの演算
器、メモリやストレージといった記憶装置、それらを連結する有線または無
線の通信線を含むハードウェアと、記憶装置に格納され、演算器に処理命令
を供給するソフトウェアによって実現される。コンピュータプログラムは、
デバイスドライバ、オペレーティングシステム、それらの上位層に位置する
各種アプリケーションプログラム、また、これらのプログラムに共通機能を
提供するライブラリによって構成されてもよい。以下に説明する各ブロック
は、ハードウェア単位の構成ではなく、機能単位のブロックを示している。
ロボット100の機能の一部はサーバ200により実現されてもよいし、
サーバ200の機能の一部または全部はロボット100により実現されても
よい。
【0039】
家屋内にはあらかじめ複数の外部センサ114が設置される。サーバ20
0には、外部センサ114の位置座標が登録される。ロボット100の内部
センサ128および複数の外部センサ114から得られる情報に基づいて、
サーバ200がロボット100の基本行動を決定する。外部センサ114は
ロボット100の感覚器を補強するためのものであり、サーバ200はロボ
ット100の頭脳を補強するためのものである。ロボット100の通信機1
26が外部センサ114と定期的に通信し、サーバ200は外部センサ11
4によりロボット100の位置を特定する(特許文献2も参照)。
【0040】
(サーバ200)
サーバ200は、通信部204、データ処理部202およびデータ格納部
206を含む。
通信部204は、外部センサ114およびロボット100との通信処理を
担当する。データ格納部206は各種データを格納する。データ処理部20
2は、通信部204により取得されたデータおよびデータ格納部206に格
納されるデータに基づいて各種処理を実行する。データ処理部202は、通
信部204およびデータ格納部206のインタフェースとしても機能する。
【0041】
データ格納部206は、モーション格納部232と個人データ格納部21
8を含む。
ロボット100は、複数の動作パターン(モーション)を有する。手10
6を震わせる、蛇行しながらオーナーに近づく、首をかしげたままオーナー
を見つめる、などさまざまなモーションが定義される。
【0042】
モーション格納部232は、モーションの制御内容を定義する「モーショ
ンファイル」を格納する。各モーションは、モーションIDにより識別され
る。モーションファイルは、ロボット100のモーション格納部160にも
ダウンロードされる。どのモーションを実行するかは、サーバ200で決定
されることもあるし、ロボット100で決定されることもある。
【0043】
ロボット100のモーションの多くは、複数の単位モーションを含む複合
モーションとして構成される。たとえば、ロボット100がオーナーに近づくとき、オーナーの方に向き直る単位モーション、手を上げながら近づく単
位モーション、体を揺すりながら近づく単位モーション、両手を上げながら
着座する単位モーションの組み合わせとして表現されてもよい。このような
4つのモーションの組み合わせにより、「オーナーに近づいて、途中で手を
上げて、最後は体をゆすった上で着座する」というモーションが実現される
。モーションファイルには、ロボット100に設けられたアクチュエータの
回転角度や角速度などが時間軸に関連づけて定義される。モーションファイ
ル(アクチュエータ制御情報)にしたがって、時間経過とともに各アクチュ
エータを制御することで様々なモーションが表現される。
【0044】
先の単位モーションから次の単位モーションに変化するときの移行時間を
「インターバル」とよぶ。インターバルは、単位モーション変更に要する時
間やモーションの内容に応じて定義されればよい。インターバルの長さは調
整可能である。
以下、いつ、どのモーションを選ぶか、モーションを実現する上での各ア
クチュエータの出力調整など、ロボット100の行動制御に関わる設定のこ
とを「行動特性」と総称する。ロボット100の行動特性は、モーション選
択アルゴリズム、モーションの選択確率、モーションファイル等により定義
される。
【0045】
モーション格納部232は、モーションファイルのほか、各種のイベント
が発生したときに実行すべきモーションを定義するモーション選択テーブル
を格納する。モーション選択テーブルにおいては、イベントに対して1以上
のモーションとその選択確率が対応づけられる。
【0046】
個人データ格納部218は、ユーザの情報を格納する。具体的には、ユー
ザに対する親密度とユーザの身体的特徴・行動的特徴を示すマスタ情報を格
納する。年齢や性別などの他の属性情報を格納してもよい。
【0047】
ロボット100は、ユーザごとに親密度という内部パラメータを有する。
ロボット100が、自分を抱き上げる、声をかけてくれるなど、自分に対し
て好意を示す行動を認識したとき、そのユーザに対する親密度が高くなる。
ロボット100に関わらないユーザや、乱暴を働くユーザ、出会う頻度が低
いユーザに対する親密度は低くなる。
【0048】
データ処理部202は、位置管理部208、認識部212、動作制御部2
22、親密度管理部220および状態管理部244を含む。
位置管理部208は、ロボット100の位置座標を特定する。状態管理部
244は、充電率や内部温度、プロセッサ122の処理負荷などの各種物理
状態など各種内部パラメータを管理する。また、状態管理部244は、ロボ
ット100の感情(寂しさ、好奇心、承認欲求など)を示すさまざまな感情
パラメータを管理する。これらの感情パラメータは常に揺らいでいる。感情
パラメータに応じてロボット100の移動目標地点が変化する。たとえば、
寂しさが高まっているときには、ロボット100はユーザのいるところを移
動目標地点として設定する。
【0049】
時間経過によって感情パラメータが変化する。また、後述の応対行為によっても各種感情パラメータは変化する。たとえば、オーナーから「抱っこ」
をされると寂しさを示す感情パラメータは低下し、長時間にわたってオーナ
ーを視認しないときには寂しさを示す感情パラメータは少しずつ増加する。
【0050】
認識部212は、外部環境を認識する。外部環境の認識には、温度や湿度
に基づく天候や季節の認識、光量や温度に基づく物陰(安全地帯)の認識な
ど多様な認識が含まれる。ロボット100の認識部156は、内部センサ1
28により各種の環境情報を取得し、これを一次処理した上でサーバ200
の認識部212に転送する。
【0051】
具体的には、ロボット100の認識部156は、画像から移動物体、特に
、人物や動物に対応する画像領域を抽出し、抽出した画像領域から移動物体
の身体的特徴や行動的特徴を示す特徴量の集合として「特徴ベクトル」を抽
出する。特徴ベクトル成分(特徴量)は、各種身体的・行動的特徴を定量化
した数値である。たとえば、人間の目の横幅は0~1の範囲で数値化され、
1つの特徴ベクトル成分を形成する。人物の撮像画像から特徴ベクトルを抽
出する手法については、既知の顔認識技術の応用である。ロボット100は、特徴ベクトルをサーバ200に送信する。
【0052】
サーバ200の認識部212は、ロボット100の内蔵カメラによる撮像
画像から抽出された特徴ベクトルと、個人データ格納部218にあらかじめ
登録されているユーザ(クラスタ)の特徴ベクトルと比較することにより、
撮像されたユーザがどの人物に該当するかを判定する(ユーザ識別処理)。
また、認識部212は、ユーザの表情を画像認識することにより、ユーザの
感情を推定する。認識部212は、人物以外の移動物体、たとえば、ペット
である猫や犬についてもユーザ識別処理を行う。
【0053】
認識部212は、ロボット100になされたさまざまな応対行為を認識し
、快・不快行為に分類する。認識部212は、また、ロボット100の行動
に対するオーナーの応対行為を認識することにより、肯定・否定反応に分類
する。
快・不快行為は、ユーザの応対行為が、生物として心地よいものであるか
不快なものであるかにより判別される。たとえば、抱っこされることはロボ
ット100にとって快行為であり、蹴られることはロボット100にとって
不快行為である。肯定・否定反応は、ユーザの応対行為が、ユーザの快感情
を示すものか不快感情を示すものであるかにより判別される。抱っこされる
ことはユーザの快感情を示す肯定反応であり、蹴られることはユーザの不快
感情を示す否定反応である。
【0054】
サーバ200の動作制御部222は、ロボット100の動作制御部150
と協働して、ロボット100のモーションを決定する。サーバ200の動作
制御部222は、ロボット100の移動目標地点とそのための移動ルートを
作成する。動作制御部222は、複数の移動ルートを作成し、その上で、い
ずれかの移動ルートを選択してもよい。
【0055】
動作制御部222は、モーション格納部232の複数のモーションからロ
ボット100のモーションを選択する。各モーションには状況ごとに選択確
率が対応づけられている。たとえば、オーナーから快行為がなされたときに
は、モーションAを20%の確率で実行する、気温が30度以上となったとき、モーションBを5%の確率で実行する、といった選択方法が定義される。
【0056】
親密度管理部220は、ユーザごとの親密度を管理する。上述したように
、親密度は個人データ格納部218において個人データの一部として登録さ
れる。快行為を検出したとき、親密度管理部220はそのオーナーに対する
親密度をアップさせる。不快行為を検出したときには親密度はダウンする。
また、長期間視認していないオーナーの親密度は徐々に低下する。
【0057】
(ロボット100)
ロボット100は、通信部142、データ処理部136、データ格納部1
48、内部センサ128および駆動機構120を含む。
通信部142は、通信機126(
図4参照)に該当し、外部センサ114
、サーバ200および他のロボット100との通信処理を担当する。データ
格納部148は各種データを格納する。データ格納部148は、記憶装置1
24(
図4参照)に該当する。データ処理部136は、通信部142により
取得されたデータおよびデータ格納部148に格納されているデータに基づ
いて各種処理を実行する。データ処理部136は、プロセッサ122および
プロセッサ122により実行されるコンピュータプログラムに該当する。デ
ータ処理部136は、通信部142、内部センサ128、駆動機構120お
よびデータ格納部148のインタフェースとしても機能する。
【0058】
データ格納部148は、ロボット100の各種モーションを定義するモー
ション格納部160を含む。
ロボット100のモーション格納部160には、サーバ200のモーショ
ン格納部232から各種モーションファイルがダウンロードされる。モーシ
ョンは、モーションIDによって識別される。前輪102を収容して着座す
る、手106を持ち上げる、2つの前輪102を逆回転させることで、ある
いは、片方の前輪102だけを回転させることでロボット100を回転行動
させる、前輪102を収納した状態で前輪102を回転させることで震える
、ユーザから離れるときにいったん停止して振り返る、などのさまざまなモーションを表現するために、各種アクチュエータ(駆動機構120)の動作
タイミング、動作時間、動作方向などがモーションファイルにおいて時系列
定義される。
データ格納部148には、個人データ格納部218からも各種データがダ
ウンロードされてもよい。
【0059】
データ処理部136は、認識部156および動作制御部150を含む。
ロボット100の動作制御部150は、サーバ200の動作制御部222
と協働してロボット100のモーションを決める。一部のモーションについ
てはサーバ200で決定し、他のモーションについてはロボット100で決
定してもよい。また、ロボット100がモーションを決定するが、ロボット
100の処理負荷が高いときにはサーバ200がモーションを決定するとし
てもよい。サーバ200においてベースとなるモーションを決定し、ロボッ
ト100において追加のモーションを決定してもよい。モーションの決定処
理をサーバ200およびロボット100においてどのように分担するかはロ
ボットシステム300の仕様に応じて設計すればよい。
【0060】
ロボット100の動作制御部150は選択したモーションを駆動機構12
0に実行指示する。駆動機構120は、モーションファイルにしたがって、
各アクチュエータを制御する。
【0061】
動作制御部150は、親密度の高いユーザが近くにいるときには「抱っこ
」をせがむ仕草として両方の手106をもちあげるモーションを実行するこ
ともできるし、「抱っこ」に飽きたときには左右の前輪102を収容したま
ま逆回転と停止を交互に繰り返すことで抱っこをいやがるモーションを表現
することもできる。駆動機構120は、動作制御部150の指示にしたがっ
て前輪102や手106、首(頭部フレーム316)を駆動することで、ロ
ボット100にさまざまなモーションを表現させる。
【0062】
ロボット100の認識部156は、内部センサ128から得られた外部情
報を解釈する。認識部156は、視覚的な認識(視覚部)、匂いの認識(嗅
覚部)、音の認識(聴覚部)、触覚的な認識(触覚部)が可能である。
【0063】
認識部156は、移動物体の撮像画像から特徴ベクトルを抽出する。上述
したように、特徴ベクトルは、移動物体の身体的特徴と行動的特徴を示すパ
ラメータ(特徴量)の集合である。移動物体を検出したときには、ニオイセ
ンサや内蔵の集音マイク、温度センサ等からも身体的特徴や行動的特徴が抽
出される。これらの特徴も定量化され、特徴ベクトル成分となる。認識部1
56は、特許文献2等に記載の既知の技術に基づいて、特徴ベクトルからユ
ーザを特定する。
【0064】
検出・分析・判定を含む一連の認識処理のうち、ロボット100の認識部
156は認識に必要な情報の取捨選択や抽出を行い、判定等の解釈処理はサ
ーバ200の認識部212により実行される。認識処理は、サーバ200の
認識部212だけで行ってもよいし、ロボット100の認識部156だけで
行ってもよいし、上述のように双方が役割分担をしながら上記認識処理を実
行してもよい。
【0065】
ロボット100に対する強い衝撃が与えられたとき、認識部156はタッ
チセンサおよび加速度センサによりこれを認識し、サーバ200の認識部2
12は、近隣にいるユーザによって「乱暴行為」が働かれたと認識する。ユ
ーザがツノ112を掴んでロボット100を持ち上げるときにも、乱暴行為
と認識してもよい。ロボット100に正対した状態にあるユーザが特定音量
領域および特定周波数帯域にて発声したとき、サーバ200の認識部212
は、自らに対する「声掛け行為」がなされたと認識してもよい。また、体温
程度の温度を検知したときにはユーザによる「接触行為」がなされたと認識
し、接触認識した状態で上方への加速度を検知したときには「抱っこ」がな
されたと認識する。ユーザがボディ104を持ち上げるときの物理的接触を
センシングしてもよいし、前輪102にかかる荷重が低下することにより抱
っこを認識してもよい。
まとめると、ロボット100は内部センサ128によりユーザの行為を物理的情報として取得し、サーバ200の認識部212は快・不快を判定する。また、サーバ200の認識部212は特徴ベクトルに基づくユーザ識別処理を実行する。
【0066】
サーバ200の認識部212は、ロボット100に対するユーザの各種応
対を認識する。各種応対行為のうち一部の典型的な応対行為には、快または
不快、肯定または否定が対応づけられる。一般的には快行為となる応対行為
のほとんどは肯定反応であり、不快行為となる応対行為のほとんどは否定反
応となる。快・不快行為は親密度に関連し、肯定・否定反応はロボット10
0の行動選択に影響する。
【0067】
認識部156により認識された応対行為に応じて、サーバ200の親密度
管理部220はユーザに対する親密度を変化させる。原則的には、快行為を
行ったユーザに対する親密度は高まり、不快行為を行ったユーザに対する親
密度は低下する。
【0068】
以上の基本構成を前提として、次に、本実施形態におけるロボット100
の実装について、特に、本実装の特徴と目的および基本構成との相違点を中
心として説明する。
【0069】
[場所およびモノの記憶の実装]
図6は、本実施形態におけるロボット100の機能ブロック図である。
本実施形態のロボット100は、外部センサ114ではなく、キーフレー
ム404に基づいて場所を認識する。ロボット100は、キーフレーム40
4および外部センサ114の双方に基づいて場所を認識してもよいが、本実
施形態においてはキーフレーム404のみに基づいて場所を認識するものと
して説明する。
【0070】
(サーバ200)
データ処理部202の位置管理部208は、マップ管理部168とオブジェクト管理部174を含む。マップ管理部168は、画像記憶層400および環境記憶層402を対応づけた情報(以下、「環境マップ」または「環境マップ情報」とよぶ)を管理する。オブジェクト管理部174は、イベントとオブジェクトを対応づけるオブジェクト情報を管理する。イベントとは、環境情報が所定のイベント条件を満たすときに成立したと認定される事象である(後述)。
【0071】
データ格納部206は、更に、マップ格納部170とオブジェクト情報格
納部172を含む。マップ格納部170は、環境マップ情報を格納する。オ
ブジェクト情報格納部172は、オブジェクト情報を格納する。詳細は後述
するが、状態管理部244は、環境情報およびイベントに基づいて、感情パ
ラメータを変化させる。
【0072】
(ロボット100)
データ処理部136は、認識部156および動作制御部150に加えて、
撮像画像取得部162を含む。撮像画像取得部162は、ロボット100が
搭載するカメラから撮像画像を取得する。撮像画像取得部162は、定期的
に、たとえば、1秒に2回の頻度にて撮像画像を取得する。
【0073】
認識部156は、画像特徴取得部164と環境情報取得部166を含む。
画像特徴取得部164は、撮像画像から画像特徴量を抽出することによりキ
ーフレーム404を生成する。画像特徴量の抽出方法については、次の
図7
に関連して説明する。環境情報取得部166は、撮像画像の取得時において
環境情報を取得する。キーフレーム404(画像特徴情報)および環境情報
は、通信部142によりサーバ200に送信される。サーバ200のマップ
管理部168は、キーフレーム404と環境情報を対応づけることにより環
境マップを作成する。
【0074】
図7は、キーフレーム404の作成方法を示す模式図である。
上述したように、撮像画像取得部162は、定期的に撮像画像を取得する
。
図7の撮像画像412には、椅子406および棚408が写っている。画
像特徴取得部164は、これらのオブジェクトのエッジ点を特徴点410と
して抽出する。キーフレーム404は特徴点410の集合である。キーフレ
ーム404に含まれる特徴点410の数および分布状態、いいかえれば撮像
画像の特徴量がキーフレーム404を特徴づける。撮像画像412そのもの
ではなく、キーフレーム404(画像特徴情報)に基づく画像記憶は、デー
タ量を抑制できるというメリットがある。
【0075】
図8は、環境マップ情報420のデータ構造図である。
環境マップ情報420は、サーバ200のマップ格納部170に格納され
る。キーフレーム404は、キーフレームID(以下、「FID」と表記す
る)により識別される。画像特徴取得部164は、撮像画像からキーフレー
ム404を形成するごとにFIDを付与する。環境情報取得部166は、キ
ーフレーム404(撮像画像)の取得と同じタイミングにて環境情報を取得
する(以下、キーフレーム404の取得時点と同時にセンシングされる環境
情報のことを「第1次環境情報」ともよぶ)。マップ管理部168は、キー
フレーム404と環境情報を対応づけて環境マップ情報420に登録する。
環境マップ情報420により、画像記憶と環境記憶が結び付けられる。
【0076】
本実施形態における環境情報は、受信強度、ユーザの検出率、平均音量、平均気温を含む。受信強度は、サーバ200から送信される電波の受信強度
を示し、ロボット100とサーバ200の距離によって変化する。環境情報
取得部166は、受信強度を計測し、高い順にA、B、Cにランク分けする
。
図8によれば、FID=F01のキーフレーム404(以下、「キーフレ
ーム404(F01)」のように表記する)は、受信強度が「A」であるた
め、キーフレーム404(F01)に対応する地点(以下、「地点(F01
)」のように表記する)は、通信良好な地点であることがわかる。一方、キ
ーフレーム404(F04)は通信強度が「C」であるため、地点(F04
)は通信不良な地点である。本実施形態における地点とは、0.1から1メ
ートル程度の半径を有する広がりをもったエリアとして定義される。
【0077】
ユーザの検出率は、各地点においてユーザを検出した頻度、いいかえれば、各地点においてユーザに出会える可能性の高さを示す。ユーザの検出率は
、ユーザごとに定義される。ユーザX1検出率は、ユーザX1の検出率を示
す。たとえば、ロボット100が地点(F01)に存在した回数が10回で
あってユーザX1を10回の滞在機会において2回検出したときには、マッ
プ管理部168はユーザX1の検出率を20(%)と算出する。
図8によれ
ば、地点(F04)はユーザX1、X2に出会いやすく、地点(F05)はユーザX2に50(%)近い高確率にて出会うことができる。一方、地点(F07)ではユーザX1、X2と出会ったことがない。
【0078】
環境情報取得部166は、各地点における音量をマイクロフォンにより検
出し、平均音量を高い順にA、B、Cにランク分けする。平均音量により、
静かな場所とうるさい場所が特定される。同様に、環境情報取得部166は
、各地点における気温を温度センサにより検出し、その平均気温を算出する
。平均気温により、暑い場所と涼しい場所が特定される。これらの環境情報
は時間帯や季節等の他のパラメータにより、更に分類されてもよい。
【0079】
環境情報としては、このほかにもさまざまなセンサ情報を含めることがで
きる。たとえば、ニオイセンサにより検出される匂いを環境情報に含めても
よいし、テーブルの下など「天井」が存在するか否かを環境情報に含めても
よい。ユーザの検出率(視認可能性)だけでなく、「誰かに触られる確率」
「抱っこされる確率」「叩かれる確率」などのユーザとの相互作用の経験を
環境情報として定義してもよい。環境情報は、少なくとも、画像特徴情報以
外の情報であればよく、気温や風向などの触覚、聴覚、嗅覚として特定され
る情報であってもよい。
【0080】
サーバ200は、環境マップ情報420を参照して、所定の移動先条件を
満たす地点をロボット100の移動目標地点を設定する。たとえば、寂しさ
を示す感情パラメータの値(以下、「感情値(寂しさ)」のように表記する
)が閾値以上となったとき、動作制御部222はいずれかのユーザの検出率
が所定閾値以上となる地点、たとえば、地点(F05)を移動目標地点とし
て設定する。移動先条件は、任意に設定可能である。たとえば、現在地点の
温度が25度以上のとき、平均気温が20度以下の環境情報を有する地点に
おいて移動先条件が成立するとしてもよい。
【0081】
状態管理部244は、ロボット100の現在地点において取得される第1
次環境情報に基づいて感情パラメータを変化させる(以下、「(環境情報に
よる)一次反映」とよぶ)。また、状態管理部244は、ロボット100の
現在地点において過去に取得された環境情報(以下、キーフレーム404の取得時点と以前にセンシングされていた環境情報のことを「第2次環境情報」ともよぶ)に基づいても感情パラメータを変化させる(以下、「(環境情報による)二次反映」とよぶ)。いいかえれば、状態管理部244は現在の第1次環境情報だけでなく、記憶された過去の第2次環境情報によっても感情パラメータを変化させる。環境情報に基づく感情パラメータの変化については、
図11に関連して詳述する。
【0082】
図9は、オブジェクト情報430のデータ構造図である。
オブジェクト情報430は、サーバ200のオブジェクト情報格納部17
2に格納される。ロボット100の周辺ではさまざまなイベントが発生する
。サーバ200の認識部212は、第1次環境情報が所定のイベント条件を
満たすとき、イベントが発生したと判定する。イベント条件は、ユーザを視
認した、ユーザに抱っこされた、所定音量以上の音が聞こえた、水をかけら
れた、など任意に設定可能である。認識部212には、あらかじめ複数のイ
ベント条件が設定される。イベントは、イベントIDにより識別される。
【0083】
認識部212がイベントの発生を検出したとき、通信部204はロボット
100にイベント検出信号を送信する。画像特徴取得部164は、イベント
検出信号が受信されたとき、最新の撮像画像からオブジェクトを検出する。
オブジェクトは、コーヒーカップや椅子、棚、人形など任意に設定可能であ
る。本実施形態においては、画像特徴取得部164は、複数種類のオブジェ
クトについて、あらかじめ形状および色彩の特徴を定義する複数のオブジェ
クトパターンを有しており、オブジェクトパターンに基づいてオブジェクト
を画像認識する。画像特徴取得部164は、いずれかのオブジェクトが特定
されたとき、オブジェクトIDを付与してサーバ200に送信する。オブジ
ェクト管理部174は、イベントIDとオブジェクトIDを対応づける。オ
ブジェクトの認識は、既知の画像認識技術の応用により実現可能である。
【0084】
オブジェクト管理部174は、オブジェクト情報430を管理する。オブ
ジェクト情報430においては、イベントおよびオブジェクトの関連性の強
さを示す指標値として関連度が定義される。イベント(E01)とオブジェクト(B01)の関連度は、イベント(E01)が発生したときにオブジェクト(B01)が認識される可能性の高さに基づいて、イベント(E01)とオブジェクト(B01)の間の連想性・因果性の強さを表現する指標である。
【0085】
イベント(E01)の発生時にオブジェクト(B01)が検出されたとき
、オブジェクト管理部174はイベント(E01)とオブジェクト(B01
)の関連度を上昇させる。一方、イベント(E01)が発生したときにオブ
ジェクト(B01)が検出されなければ、オブジェクト管理部174はイベ
ント(E01)とオブジェクト(B01)の関連度を低下させる。本実施形
態においては、イベントの発生時におけるオブジェクトの検出率を関連度と
定義する。たとえば、イベント(E01)の最近10回の発生において、オ
ブジェクト(B01)が10回中3回検出されたときには、オブジェクト管
理部174はイベント(E01)とオブジェクト(B01)の関連度を30
(%)に設定する。
【0086】
イベント(E01)の発生時において高確率にてオブジェクト(B01)
が検出される場合には、オブジェクト(B01)の近くではイベント(E0
1)が発生しやすいという「因果性」を想定できる。関連度は、因果性に対
する確信度を示すパラメータであるともいえる。たとえば、抱っこをされた
地点においてソファ(オブジェクト)が高い確率で検出されたとする。この
場合には、ソファの近くに行けば、抱っこをしてもらえる可能性が高い、と
いう予測が可能となる。
【0087】
状態管理部244は、イベントに基づいて感情パラメータを変化させる(
以下、「(イベントによる)一次反映」とよぶ)。イベントは第1次環境情
報の一種でもあるため、通常、イベントによる一次反映は第1次環境情報に
よる一次反映と同時に発生する。状態管理部244は、ロボット100の現
在地点において検出されたオブジェクトから連想されるイベントに基づいて
も感情パラメータを変化させる(以下、「(イベントによる)二次反映」と
よぶ)。状態管理部244は実際に発生しているイベントだけでなく、オブジェクトから連想されるイベントによっても感情パラメータを変化させる。
イベントに基づく感情パラメータの変化については、
図13、14に関連し
て詳述する。
【0088】
図10は、キーフレーム404の連鎖を示す模式図である。
画像特徴取得部164は、定期的にキーフレーム404を取得する。
図1
0においては、キーフレーム404(F01)の取得時において、環境情報
取得部166は環境情報(e01)を取得する。マップ管理部168は、環
境マップ情報420において、キーフレーム404(F01)と環境情報(
e01)を対応づけて登録する。一定時間の経過後、ロボット100は、キ
ーフレーム404(F02)および環境情報(e02)を取得する。マップ
管理部168は、キーフレーム404(F02)と環境情報(e02)を対
応づけて登録するとともに、地点(F01)と地点(F02)が隣接してい
るという情報も記録する。
【0089】
ロボット100は、キーフレーム404(F02)の取得後、更に、キー
フレーム404(F03)を取得する。マップ管理部168は、地点(F0
2)と地点(F03)が隣接するという情報をマップ格納部170に登録す
る。以上の処理により、ロボットシステム300は、地点(F01)からは
、地点(F02)を経由すれば、地点(F03)に到達できるというキーフ
レーム404の位置関係、いいかえれば、空間の構成を学習する。
【0090】
キーフレーム404(F03)のあと、キーフレーム404(F04)、
キーフレーム404(F05)、キーフレーム404(F06)が取得され
たとする。マップ管理部168は、キーフレーム404(F06)と類似す
るキーフレーム404(F02)を検出する。具体的には、キーフレーム4
04(F06)とキーフレーム404(F02)それぞれの特徴点410の
数および分布の類似度を計算し、類似度が所定の閾値以上であるときに類似
と判定する。マップ管理部168は、キーフレーム404(F02)とキー
フレーム404(F06)は同一地点のキーフレーム404であると判定す
る。マップ管理部168は、キーフレーム404(F02)をキーフレーム404(F06)により後述の方法により更新する。また、マップ管理部168は、キーフレーム404(F05)とキーフレーム404(F02)が隣接することを認識する。このように、グラフ型のデータベースとして、複数のキーフレーム404の位置関係がマップ格納部170に登録される。
【0091】
図11は、環境マップ情報420の更新処理過程を示すフローチャートで
ある。
図11に示す更新処理は、ロボットシステム300において定期的に実行
される。まず、撮像画像取得部162は、撮像画像を取得する(S10)。
画像特徴取得部164は、撮像画像から画像特徴量を抽出し、キーフレーム
404を生成する(S12)。環境情報取得部166は、(第1次)環境情
報を取得する(S14)。状態管理部244は、環境情報に応じて感情パラ
メータを変化させる(S16)。これは、上述した「環境情報による一次反
映」である。環境情報に応じて感情パラメータをどのように変化させるかは
任意に設定可能である。たとえば、撮像画像にユーザが検出されず、ユーザ
未検出の状態が所定時間以上継続していれば、感情値(寂しさ)を上昇させ
てもよい。このときには、認識部212は、寂しさを癒す環境情報を有する
地点を移動目標地点に設定する。動作制御部150は、感情値(寂しさ)が
高まるとロボット100の行動選択頻度を抑制してもよいし、特定のモーシ
ョンを高確率にて選択してもよい。環境情報は感情パラメータに影響し、感
情パラメータが行動特性に影響する。
【0092】
ユーザから抱っこされたときには感情値(寂しさ)を低下させてもよい。
所定範囲内の音量を検出したときには感情値(好奇心)を上昇させてもよい
。上述したように、感情値だけでなく、親密度管理部220は親密度を変化
させてもよい。
【0093】
認識部212は、S12において抽出されたキーフレーム404と類似度
が所定値以上となるキーフレーム404が存在するか、いいかえれば、現在
地点が既に訪れたことのある地点(以下、「再訪地点」とよぶ)であるか否
かをチェックする(S18)。再訪地点であれば(S18のY)、マップ管理部168は同再訪地点のキーフレーム404(画像特徴情報)を更新する
(S20)。
【0094】
撮像画像には、本棚やソファのように安定的に存在するものもあれば(以
下、「安定特徴」とよぶ)、コーヒーカップや書類のように一時的に存在し
ているだけのものも映る(以下、「不安定特徴」とよぶ)。マップ管理部1
68は、ある再訪地点(F05)において1回目に取得されたキーフレーム
404(F05-1)と2回目に取得されたキーフレーム404(F05-
2)を比較する。キーフレーム404(F05-1)とキーフレーム404
(F05-2)は、全体としてはほとんど同一であるが、不安定特徴の部分
については差異を生じる。たとえば、キーフレーム404(F05-1)に
はノートの画像特徴(不安定特徴)が含まれ、キーフレーム404(F05
-2)にはノートの画像特徴が含まれていないかもしれない。これは、地点
P5の1回目の訪問と2回目の訪問の間にノートが取り去られたためである
。このとき、マップ管理部168は、地点(F05)のキーフレーム404
(F05)から不安定特徴を示す特徴点410を除外する。このような制御
方法により、安定特徴のみを含むキーフレーム404、いいかえれば、空間
認識に際して手がかりとしやすい画像特徴量のみを含むキーフレーム404
を形成できる。
なお、より簡易な方法として、マップ管理部168は、再訪地点のキーフ
レーム404として、最新取得のキーフレーム404により以前のキーフレ
ーム404を上書きしてもよい。
【0095】
状態管理部244は、再訪地点に以前に対応づけられていた(第2次)環
境情報に基づいて感情パラメータを変化させる(S22)。これは、上述し
た「環境情報による二次反映」である。たとえば、地点(F05)に環境情
報(e05-1)が対応づけられており、ロボット100が地点(F05)
を再訪したときには環境情報(e05-2)が取得されたとする。状態管理
部244は第1次環境情報(e05-2)だけではなく(S16)、以前の
第2次環境情報(e05-1)にも基づいて感情パラメータを変化させる。
このような制御方法によれば、再訪地点において過去に得た印象を現在の感
情に反映させることができる。状態管理部244は、再訪によって新たに取
得した環境情報(e05-2)により、環境マップ情報420を更新する(
S24)。
【0096】
一例として、地点(F07)は平均音量の大きな「騒がしい地点」である
(
図8参照)。ロボット100が、地点(F07)を再訪したとき、大きな
音は聞こえなかったとする。この場合、状態管理部244は、「騒がしい地
点」という過去の情報に基づいて、たとえば、感情値(好奇心)を上昇させ
る。同時に、マップ管理部168は、地点(F07)の環境情報の一種であ
る平均音量を下降させる。
【0097】
一方、再訪地点でなければ(S18のN)、認識部212は新発見の地点
と判定し、状態管理部244は新たに取得したキーフレーム404と環境情
報を環境マップ情報420に登録する(S26)。その後、オブジェクト判
定処理が実行される(S28)。オブジェクト判定処理の詳細は
図14に関
連して後述する。
【0098】
たとえば、時刻t1においては地点(F04)にソファが存在し、そのあ
とソファが動かされ、時刻t2においては地点(F04)にソファが存在し
ないとする。この場合、時刻t1において取得されるキーフレーム404(
F04-1)と時刻t2において取得されるキーフレーム404(F04-
2)は同一とは見なせないほど大きく異なる可能性がある。この場合、ロボ
ット100は、ソファが存在するという画像記憶を頼りに地点(F04)に
移動したが、ソファが存在しないために画像記憶した地点(F04)を発見
できなくなる。地点(F04)を再訪したにも関わらず、地点(F04)を
見つけられないため、このときには認識部212は新発見の地点に到達した
と認識し(S18のN)、ソファの存在しないキーフレーム404を環境マ
ップ情報420に新規登録する。
【0099】
マップ管理部168は、取得から所定時間以上経過したキーフレーム40
4は削除することにより、しばらく再訪していない地点の記憶を消去してもよい。このような制御方法によれば、ロボット100の忘却を表現できると
ともにマップ格納部170に保存するデータ量を抑制する上でも有効である
。また、地点(F04)には「ソファが存在する」という古くて役に立たな
くなった情報を効率的に除去できる。
【0100】
図12は、イベントの発生にともなってロボット100が移動先を選択す
る方法を説明するための模式図である。
図12においては、ロボット100が地点P5にいるとき、近隣の地点P
6にてイベントE3が発生している。イベントE3は「ユーザX6が地点P
6に存在すること」であるとする。サーバ200の認識部212は、ユーザ
X6と類似の身体的特徴を有するユーザについて記憶していないとき、ユー
ザX6を未知のユーザと判断する。このとき、サーバ200の動作制御部2
22は、退避先条件を満たす地点を移動目標地点として設定する。退避先条
件の設定は任意である。具体的には、親密度が所定値以上のユーザの出現確
率が所定値以上となる地点であってもよいし、天井や壁などの遮蔽物を有す
る地点であってもよい。動作制御部222は、イベントと退避先条件をあら
かじめ対応づけておき、イベントが発生したときに退避先条件を満たす地点
を環境マップ情報420から検出する。
図12においては、退避先条件を満
たす地点P7および地点P8が特定されている。
【0101】
動作制御部222は、地点P7および地点P8のいずれかを移動目標地点
として選択する。
図12においては、動作制御部222は、地点P5から近
い方の地点P7を移動目標地点として選択する。たとえば、地点P7は、親
密度が高いユーザX2の検出率が高い地点であるとする。上述したように、
ロボット100は、画像記憶をたどりながら地点P7に移動する。ロボット
100は、地点P7に移動し、期待した通りユーザX2を検出できれば、地
点P7にしばらく滞在する。地点P7に移動してもユーザX2を検出できな
ければ、動作制御部222は地点P7から地点P8を移動目標地点として設
定変更する。このような制御方法によれば、「イベントE3に驚き、ユーザ
X2を求めて地点P7に移動し、ユーザX2がいないので別の安心できる地点P3に移動する」という困惑行動をロボット100に表現させることができる。
【0102】
動作制御部222は、特定のイベントが発生したときには、上述したよう
に退避先条件を満たす地点を移動目標地点として設定する。状態管理部24
4は、イベントに応じて感情パラメータを変化させる。たとえば、高周波数
の音声を所定時間以上検出したとき、イベントE4が成立し、状態管理部2
44はイベントE4に応じて感情値(好奇心)を上昇させてもよい。環境情
報は、外部環境を各種センサの検出値によって数値表現したものである。イ
ベントは、環境情報のうち、所定のイベント条件を満たす事象、いいかえれ
ば、環境情報の特殊例である。
【0103】
図13は、イベントの処理過程を示すフローチャートである。
図11のS14において(第1次)環境情報が検出されるごとに、認識部
212はイベント条件の成否を判定する。
図13に示すイベント処理は、イ
ベント、いいかえれば、(第1次)環境情報があらかじめ設定されるイベン
ト条件のいずれかに該当したときに実行される。
【0104】
イベントが検出されたとき、撮像画像取得部162は、周辺画像を取得す
る(S30)。本実施形態における周辺画像とは、2方向以上を対象とした
2以上の撮像画像である。撮像画像取得部162は、通常時は1方向を対象
としたカメラにて1枚の撮像画像を取得し、イベント発生時においてはロボ
ット100の周辺を広角に撮影可能な全天周カメラにより周辺画像を取得し
てもよい。
【0105】
画像特徴取得部164は、周辺画像、いいかえれば、複数の撮像画像それ
ぞれから画像特徴を抽出する(S32)。状態管理部244は、イベントに
応じて感情パラメータを変化させる(S34)。これは、上述した「イベン
トによる一次反映」である。イベントごとに、感情パラメータをどのように
変化させるかはあらかじめ設定されている。
【0106】
次に、画像特徴取得部164は、周辺画像の画像特徴からオブジェクトを
検出する(S36)。オブジェクトが存在すれば(S36のY)、マップ管理部168は、イベントとオブジェクトの関連度を変化させる(S38)。
イベント(E01)が検出されたときにオブジェクト(B01)が検出され
る頻度により、イベント(E01)とオブジェクト(B01)の関連度が決
定される。イベント(E01)が検出されるとき、高い頻度にてオブジェク
ト(B01)が検出されれば、オブジェクト(B01)からイベント(E0
1)が連想されやすくなる。オブジェクトが存在しなければ(S36のN)
、S38はスキップされる。
【0107】
イベントが退避イベントであるとき、いいかえれば、現在地点から逃げるべき特定のイベントであれば(S40のY)、動作制御部222は、退避先
条件を満たす地点を移動目標地点として設定する(S42)。退避イベント
でなければ、S42の処理はスキップされる。
【0108】
図14は、
図11のS28に示すオブジェクト判定処理の詳細を示すフロ
ーチャートである。
画像特徴取得部164は、S10において取得した撮像画像からオブジェ
クトを検出する(S50)。状態管理部244は、画像記憶を参照し、過去
に同一のオブジェクトを検出したことがあるか否かを判定する(S52)。
過去に検出したことのあるオブジェクトと同一、より厳密には、類似度が所
定値以上のオブジェクトを検出したとき(S52のY)、状態管理部244
はオブジェクトに応じて感情パラメータを変化させる(S54)。これは、
上述した「イベントによる二次反映」である。オブジェクトが検出されなか
ったときや、新規オブジェクトの検出時には(S52のN)、S54はスキ
ップされる。
【0109】
状態管理部244は、オブジェクトに関連づけられるイベント、および、
オブジェクトとイベントの関連度に応じて感情パラメータを変化させる。た
とえば、オブジェクト(B01)が、イベント(E03)およびイベント(
E04)に関連づけられおり、かつ、オブジェクト(B01)とイベント(
E03)の関連度が20(%)、オブジェクト(B01)とイベント(E0
4)の関連度が3%であるとする。このときには、状態管理部244は、関連度の最も高いイベント(E03)に対応して感情値を変化させる。たとえば、イベント(E03)が「感情値(承認要求)を30%アップさせる」という設定がなされたイベントである場合、状態管理部244は、関連度20%を考慮して、感情値(承認要求)を6%(=30%×20%)だけ上昇させる。
このような制御方法によれば、イベント(E03)が実際に発生しているわけではなくても、イベント(E03)を連想されるオブジェクト(B01)にイベント(E03)の記憶を刺激されたために感情パラメータが影響され、感情パラメータの変化を行動特性の変化として表現できる。
【0110】
以上、実施形態に基づいてロボット100およびロボット100を含むロ
ボットシステム300について説明した。
生物は、感覚器、特に、目から得た環境情報を記憶として蓄積することに
より空間を認識すると考えられる。本実施形態によれば、生物と類似の方法
にて空間認識できる。基本構成として例示した外部センサ114を必須構成
としないため、ロボット100の行動予定範囲に外部センサ114をあらか
じめ設置する作業が不要となる。
【0111】
ロボット100は、キーフレーム404に基づいて行動する。このため、
ロボット100が所属する空間の内部状態が変化した場合、たとえば、机や
椅子などのオブジェクトの位置変更が生じたとき、ロボット100は一時的
に空間認識をできなくなる可能性がある。その一方、新たな環境で新たにキ
ーフレーム404を取得することにより画像記憶を更新していく。このため
、環境の変化に一時的に戸惑いつつもいずれ適応していくという生物に似た
行動特性を実現できる。
【0112】
ロボット100は、初めての空間に入ったとき、動き回りながらキーフレ
ーム404を蓄積し、場所記憶(ナワバリの感覚)を形成していく。キーフ
レーム404は、サーバ200のマップ格納部170に保存される。マップ
格納部170は、ハードディスク等の不揮発性記録媒体において形成される
ことが好ましい。ロボット100の電源を投入するたびに、空間を歩き回って場所記憶を作り直す必要はない。
【0113】
ロボット100は、環境情報にしたがって感情パラメータを変化させ、感
情パラメータにしたがって行動特性を変化させる。また、ロボット100は
、「現在地点/現在時点」において取得される(第1次)環境情報だけでは
なく、「現在地点/過去時点」における(第2次)環境情報によっても感情
パラメータを変化させる。このような制御方法によれば、過去の記憶により
行動特性が変化するため、場所記憶に基づく感情の変化を行動表現できる。
また、撮像画像から得られる特徴量に関連付けて環境情報を蓄積することに
より、ロボット100は、場所記憶を形成した場所とは異なる場所であって
も、既存の場所記憶を利用した行動ができる。
【0114】
ロボット100は、イベントに応じて、感情パラメータを変化させる。ま
た、ロボット100は、イベントそのものだけではなく、イベントを連想さ
せるオブジェクトによっても感情パラメータを変化させる。特に、感情パラ
メータに強い影響を及ぼすイベントを設定した場合、イベントそのものだけ
ではなく、そのイベントを連想させるオブジェクトにすら感情が影響される
様子を行動表現できる。
【0115】
なお、本発明は上記実施形態や変形例に限定されるものではなく、要旨を逸脱しない範囲で構成要素を変形して具体化することができる。上記実施形
態や変形例に開示されている複数の構成要素を適宜組み合わせることにより
種々の発明を形成してもよい。また、上記実施形態や変形例に示される全構
成要素からいくつかの構成要素を削除してもよい。
【0116】
1つのロボット100と1つのサーバ200、複数の外部センサ114に
よりロボットシステム300が構成されるとして説明したが、ロボット10
0の機能の一部はサーバ200により実現されてもよいし、サーバ200の
機能の一部または全部がロボット100に割り当てられてもよい。1つのサ
ーバ200が複数のロボット100をコントロールしてもよいし、複数のサ
ーバ200が協働して1以上のロボット100をコントロールしてもよい。
【0117】
ロボット100やサーバ200以外の第3の装置が、機能の一部を担ってもよい。
図5、
図6において説明したロボット100の各機能とサーバ200の各機能の集合体は大局的には1つの「ロボット」として把握することも可能である。1つまたは複数のハードウェアに対して、本発明を実現するために必要な複数の機能をどのように配分するかは、各ハードウェアの処理能力やロボットシステム300に求められる仕様等に鑑みて決定されればよい。
【0118】
上述したように、「狭義におけるロボット」とはサーバ200を含まない
ロボット100のことであるが、「広義におけるロボット」はロボットシス
テム300のことである。サーバ200の機能の多くは、将来的にはロボッ
ト100に統合されていく可能性も考えられる。
【0119】
状態管理部244は、サーバ200に搭載されるとして説明したが、状態
管理部244の機能はロボット100に搭載されてもよい。同様にして、マ
ップ管理部168、オブジェクト管理部174の機能も、サーバ200では
なくロボット100に実装されてもよい。
【0120】
ロボット100の環境情報取得部166は第1次環境情報を取得する「第
1次環境情報取得部」として機能し、ロボットシステム300の状態管理部
244は第2次環境情報を取得する「第2次環境情報取得部」を含んでもよ
い。もちろん、第2次環境情報取得部の機能はロボット100に搭載されて
もよい。第1次環境情報取得部は、ロボット100の現在地点P1において
(同地点において画像特徴情報R1も取得されているとする)、第1次環境
情報E1を取得するとともに画像特徴情報R1と第1次環境情報E1を対応
づけて登録してもよい。この画像特徴情報R1と第1次環境情報E1を対応
づける地点情報は、ロボット100またはサーバ200の有する地点情報格
納部(図示せず)に保存される。そして、第2次環境情報取得部は、現在地
点P1において取得された画像特徴情報R1と、取得済みの画像特徴情報群
を比較し、画像類似度が所定の閾値以上となる画像特徴情報R2を検出する
。第2次環境情報取得部は、画像特徴情報R2に対応づけられている環境情
報E2を現在地点P1における第2次環境情報E2として特定する。動作制御部222は、上述したように第1次環境情報E1および第2次環境情報E2の双方に基づいて地点P1に位置するロボット100の行動特性を変化させてもよい。
【0121】
画像特徴情報R1と画像特徴情報R1が類似する場合、画像特徴情報R1
の取得地点P1と画像特徴情報R1の取得地点P2が同一である可能性が高
い。一方、本来は別々の地点である地点P1、P2の画像特徴情報(風景)
がたまたま似ていた可能性もある。このため、現在地点P1における風景を
認識したロボット100が、地点P1と類似する風景を有する地点P2(過
去に訪問した別地点)において認識した第2次環境情報E2を思い出し、第
2次環境情報E2に感情パラメータが影響されるという処理を実現できる。
たとえば、「お父さんの椅子C1に似た椅子C2のある地点P1」において
、以前に見た「お父さんの椅子C1のある地点P2」のイメージによって記
憶を刺激されるという複雑な行動特性を実現できる。ロボット100が地点
P2に肯定的なイメージをもっているときには、動作制御部222は地点P
1において所定時間以上ロボット100を留まらせることで、ロボット10
0の椅子C1に対する愛着を間接的に表現してもよい。
【0122】
第2次環境情報取得部は、地点P1の画像特徴情報R1に類似する画像特
徴情報が検出できなかったときには、撮像画像取得部162に指示して撮影
方向を変化させる。たとえば、ロボット100が正面を撮影してキーフレー
ム404を取得していたときには、撮影方向を右方向に30度にずらして改
めて画像特徴情報R3を取得させてもよい。そして、第2次画像情報取得部
は、画像特徴情報R3に類似する取得済みの画像特徴情報を検索してもよい
。ロボット100は、内蔵するカメラの向き、または、体の向きを変更して
もよいし、全天周カメラによる全天周画像におけるキーフレーム404の抽
出方向を変更してもよい。このように、適宜、撮影方向を変更することによ
り、既に取得された画像特徴情報から現在地点に類似する画像特徴情報を検
出しやすくなる。
【0123】
撮像画像の特徴量を入力とし、環境情報を出力とする推測モデルを用意してもよい。この推測モデルは、特徴量f1,f2,・・・,ftを入力とし
、環境情報e1,e2,・・・,euを出力とするニューラル・ネットワー
ク・モデルであってもよい。たとえば、特徴量f1はキーフレーム404に
含まれる特徴点410の数、特徴量f2はキーフレーム404において特徴
点410により形成される略垂直方向の直線の数、であってもよい。同様に
、環境情報e1は受信強度、環境情報e2はユーザX1の検出率であっても
よい。第2次環境情報取得部は、ロボット100の現在地点P1において取
得された特徴量を推測モデルに入力し、その出力を第2次環境情報として取
得してもよい。推測モデルにより出力される第2次環境情報は、特徴量から
推測される仮想の環境情報である。このような処理方法によっても、現在地
点P1の風景を認識したロボット100が、地点P1の画像特徴量に基づい
て第2次環境情報をイメージし、第2次環境情報によって感情パラメータが
影響されるという処理を実現できる。
【0124】
第1次環境情報取得部は、現在地点P1における撮像画像から特徴量を抽
出するとともに第1次環境情報を取得したときには、これらを入出力値とし
て、いいかえれば教師データとして推測モデルを更新してもよい。
【0125】
キーフレーム404の撮影に際しては、TOF(Time-of-Flight)方式の
カメラや、ステレオカメラ等のデプスカメラを用いてもよい。デプスカメラ
で撮影された画像には、深度情報が含まれる。画像特徴取得部164は、深
度範囲ごとに特徴量を抽出してもよい。第1次環境情報取得部は、深度範囲
ごとの画像特徴情報と、第1次環境情報E1とを対応付けて登録してもよい
。深度範囲は、カメラからの絶対的な距離範囲として決められてもよいし、
ある特徴点を基準とした相対的な距離範囲として決められてもよい。たとえ
ば、5つの深度範囲を決めた場合、5つの深度範囲の画像特徴情報それぞれ
に共通の第1次環境情報E1が対応付けて登録される。また、画像特徴取得
部164は、同一のオブジェクトに起因する特徴点の組み合わせを画像特徴
情報として抽出し、第1次環境情報E1と対応付けて登録してもよい。そし
て、第2次環境情報取得部は、深度範囲ごとの特徴量を用いて第2次環境情報E2を取得してもよい。このように深度範囲に応じて特徴量を抽出するこ
とで、ある環境を作り出す要因となる視覚的な特徴を特定し易くなる。つま
り、ノイズとなる特徴点が除かれる確率が増し、推測モデルを利用した形態
では学習効果が高くなる。
【0126】
たとえば、テレビT1の近くに人が居るという状況を想定する。第1次環
境情報取得部は、深度範囲ごとに特徴量を取得して複数の地点情報を登録す
る。この地点情報の中に、主にテレビT1の特徴点群からなる画像特徴情報
と、人が居るという環境情報とが対応付けられたものが含まれる。別の機会
に、テレビT2を含むキーフレーム404が撮影され、深度範囲ごとに特徴
量を取得すると、その中に主に「テレビ」の特徴点群からなる画像特徴情報
が抽出されたとする。テレビT2の近くには人は居ないとする。第2次環境
情報取得部がその画像特徴情報に類似する地点情報を取得すると、テレビT
1の画像特徴情報に基づいて「人が居る」という第2次環境情報を得る。こ
れにより、「テレビの近くには人が居る」という体験をした場所とは実際に
は別の場所であっても、テレビに起因する特徴点を多く含む画像特徴情報が
得られれば、「人が居る」という経験を思い出すことができ、そこに人が居
なくても長く留まるなどの学習的な行動を選択できる。
【0127】
本実施形態においては、定期的に1枚の撮像画像を取得し、イベント発生時においては複数枚の撮像画像を取得するとして説明した。これに限らず、
通常時においてはn枚の撮像画像を取得し、イベント発生時においてはm枚
(m>n)の撮像画像を取得するとしてもよい。イベントはロボット100
の行動特性に大きく影響しやすい重要事象であるため、イベント発生時にお
いてはその周辺における画像情報をより詳細に取得することが望ましい。多
数の撮像画像を取得することにより、イベント発生時におけるオブジェクト
を高精度にて検出できる。イベント発生時においては、ロボット100は複
数方向に搭載カメラを向けることで複数の撮像画像を取得してもよい。この
場合には、イベントに驚いて周辺確認する様子も行動表現できる。
【0128】
イベント発生時においては、通常時よりも高画質にて撮影画像を取得するとしてもよい。通常時における画像処理負荷を抑制しつつ、イベント発生時
においては外部環境をより詳細に認識できる。画像特徴取得部164は、高
画質の撮像画像を拡大することにより、拡大画像から小さなオブジェクトを
認識してもよい。
【0129】
イベント発生時においては、奥行き毎に特徴量を抽出し、オブジェクトを検出してもよい。具体的には、深度カメラにより、奥行き方向を複数段階に
分離してもよい。ロボット100から所定範囲、たとえば、30センチメー
トル以内の範囲を第1範囲、30センチメートルから1メートル以内の範囲
を第2範囲、1メートル以上を第3範囲とする。そして、第1範囲の画像特
徴情報と、第1範囲についての既存の画像特徴情報との類似度を判定しても
よい。この場合には、遠方においては類似していなくても、近距離において
は類似している画像特徴情報を対象として類似判断をするため、イベント発
生時に高画質の撮像画像を取得したときでも高速に画像処理を実行できる。
【0130】
イベント発生時においては、マイクロフォンなどの各種センサの検出感度を上昇させてもよい。あるいは、通常時においては、ニオイセンサなどの一
部のセンサは使用せず、イベント発生時に限りこれらのセンサを使用するこ
とにより、イベント発生時における環境情報を充実させてもよい。人間は、
通常時においては無意識的に行動し、危険を認識したときや興味をひかれる
事象を認識したとき、いわば非常時において周辺環境を正確に認識しようと
意識を強く働かせる。イベント発生時、いいかえれば、非常時においてセン
サの検出力を高めることで、イベント発生時における外部環境をより認識し
やすくなる。
【0131】
撮像画像取得部162は、常時、動画像を撮像し、動画像から定期的に撮
像画像(静止画)を抽出してもよい。画像特徴取得部164は、動画像から
キーフレーム404を抽出してもよい。認識部212は、イベント発生時に
おいては、イベント発生の認識前後における所定期間の動画像からオブジェ
クトを検出してもよい。
【0132】
図14に示したオブジェクト判定処理は、
図11に示した更新処理とは別のタイミングにて実行されてもよい。オブジェクト判定処理を高頻度で実行
する場合、オブジェクトが検出されるごとに感情パラメータが変化すること
になる。感情パラメータの過度の変化を抑制する方法のひとつとして、更新
処理よりも低い頻度にてオブジェクト判定処理を実行してもよい。
【0133】
本実施形態においては、イベントとオブジェクトの因果性を関連度として定義し、オブジェクトに基づいて感情パラメータを変化させるとして説明し
た。視認可能なオブジェクトのほかにも、特定の音声や匂いなど他の環境情
報をイベントと関連づけてもよい。たとえば、香水の匂いと女性ユーザX4
の外出というイベントを結びつけることにより、香水の匂いを検出したとき
には、女性ユーザX4の外出を連想し、状態管理部244は感情値(寂しさ
)を上昇させてもよい。
【0134】
オブジェクト管理部174は、イベントとオブジェクトの連想性の強さを
表現する関連度を時間経過にしたがって減少してもよい。このような制御方
法によれば、イベントとオブジェクトの連想性が時間とともに薄れていくと
いう「忘却」をロボット100において表現できる。オブジェクト管理部1
74は、関連度が所定の閾値を越えたときには、関連度の時間減衰率を低下
させてもよい。このような制御方法によれば、イベントとオブジェクトの間
につよい連想性(関連度)が成立したときには、このような連想性がなかな
か解消されなくなる。いわば、「強い先入観」に似た感情表現をロボット1
00において表現できる。
【0135】
一部のイベントを特別イベントとして設定してもよい。たとえば、雷鳴や爆発音などの所定値以上の音が発生することを特別イベントと定義してもよ
い。オブジェクト管理部174は、特別イベントと同時に視認したオブジェ
クトに対しては所定の関連度、たとえば、90(%)の関連度を設定し、「
トラウマ(心的外傷)」のような強い印象をロボット100に設定してもよ
い。このほかにも、ユーザX1から、故障するほど強く殴られたときには、
オブジェクト管理部174は、殴られるという特別イベントとユーザX1(
オブジェクト)の関連度を90%に設定してもよい。このような制御方法によれば、親密度以外のパラメータにより「苦手感」を表現できる。
【0136】
イベント条件は任意に設定可能である。外部事象に限らず、感情値(寂しさ)が所定値以上となること、であってもよい。あるいは、充電率が所定値
以下になる、故障するなどの機構上の事象をイベントとして認識してもよい
。感情値(寂しさ)が所定値以上となったときには、動作制御部222はロ
ボット100の移動先として、親密度が所定値以上のユーザの出現確率の高
い地点を候補として選択しつつ、このユーザを求めて部屋を徘徊させてもよ
い。
【0137】
画像特徴取得部164は、地点P6において合計10枚のキーフレーム4
04を取得したとする。このとき、10枚のキーフレーム404のうちの所
定枚数、たとえば、7枚以上のキーフレーム404において共通する画像特
徴を地点P6のキーフレーム404(画像特徴情報)として登録してもよい
。このような制御方法によっても、書類や服など、外部環境を認識する上で
目印になりにくい不安定特徴、いわば、位置認識におけるノイズ情報を効果
的に除去できる。
【0138】
環境情報は、カテゴリ化されてもよい。たとえば、気温に関する環境情報を「暖かい」「寒い」などの2以上のカテゴリに分類してもよい。このほか
「安全」「危険」、「楽しい」「寂しい」など場所ごとに環境情報を複数カ
テゴリに分類をしてもよい。このような制御方法によれば、キーフレーム4
04に結びつく環境情報を縮約できるため、記憶容量を抑制するとともに環
境情報の検出にともなう処理負荷を軽減できる。
【0139】
サーバ200からの無線信号の受信強度により、ロボット100のナワバ
リを表現してもよい。ロボット100は、サーバ200との通信可能範囲か
ら出てしまうと、サーバ200からのサポートを受けられなくなる。動作制
御部222は、オブジェクト情報430を参照し、受信強度がB以上となる
地点の集合を行動可能範囲として設定してもよい。このような制御方法によ
れば、ロボット100が通信可能範囲から外れるのを防ぐことができる。
【0140】
ロボット100は、サーバ200に限らず、他の装置からの受信強度に基づいて縄張りを設定してもよい。たとえば、外部センサ114を設置する場
合には、動作制御部222はいずれかの外部センサ114との無線通信を良
好に実行できる範囲を行動可能範囲として設定してもよい。ロボット100
は、定期的にサーバ200と通信し、受信強度が所定値以下となったときに
はそれ以上、サーバ200から離れないように自ら行動規制してもよい。一
方、ユーザのお出迎えなど特定のイベントが発生したときには、動作制御部
222は受信強度が低い地点であっても移動目標地点を設定してもよい。
【0141】
ロボット100は、図示しない充電装置において定期的に充電を行う。充
電中においては、サーバ200はロボット100との通信を抑制してもよい
。ロボット100の通信部142は、充電装置で充電を開始するとき充電開
始信号をサーバ200に送信し、充電が完了したときには充電完了信号を送
信する。サーバ200は、充電開始信号を受信したときには、ロボット10
0から充電完了信号を受信するまでロボット100との通信を中止してもよ
い。あるいは、ロボット100の充電中においては、サーバ200とロボッ
ト100との定期的な通信頻度を低下させてもよい。このような制御方法に
よれば、ロボット100が活動していない充電時に通信を抑制することで、
ロボット100およびサーバ200の通信にともなう電力消費を抑制できる。
【0142】
本発明は、ロボット100以外にも応用可能である。たとえば、ナビゲー
ションシステムにおいても、キーフレーム404による場所記憶の考え方は
応用可能である。定期的に外界を撮像することにより、景色を記憶すること
でマップを作成する。これに環境情報を結びつける。ナビゲーションシステ
ムは、環境マップ情報に基づいて、ユーザが今まで行ったことのない散歩コ
ースを提案してもよいし、楽しい経験をしたことのある地点を含む散歩コー
スを提案してもよいし、危ない経験をしたことのある地点を避けた散歩コー
スを提案してもよい。
【0143】
環境マップ、または、環境マップ情報は、いわゆる「マップ(地図)」と
して表現される必要はない。環境マップ情報は、地理情報と環境情報を対応づける情報であればよく、視覚的に表現される必要はない。ここでいう地理
情報とはキーフレーム404であってもよいし、地理的な目印となる各種の
オブジェクトであってもよい。
【0144】
本実施形態においては、キーフレーム404と環境情報を対応づけ、キー
フレーム404に対応づけられる環境情報(キーフレーム404に関する記
憶)に基づいて感情パラメータを変化させ(二次反映)、感情パラメータに
基づいてロボット100の行動特性を変化させるとして説明した。
【0145】
変形例として、オブジェクトと環境情報を対応づけることにより環境記憶を形成してもよい。ロボット100は、オブジェクトを検出したとき、オブ
ジェクトに対応づけられる環境情報(オブジェクトに関する記憶)に基づい
て行動特性を変化させてもよい。
【0146】
ロボット100は、オブジェクトの種類に基づいて、感情パラメータを変
化させ、感情パラメータの変化に基づいて行動特性を変化させてもよい。
【0147】
また、複数のオブジェクトを含む部屋(空間)に対するロボット100の
印象を記憶させておき、部屋に対する印象記憶(後述)に基づいてロボット
100の感情パラメータを変化させ、感情パラメータに基づいて行動特性を
変化させてもよい。
【0148】
以下においては、部屋に対する記憶に基づく感情パラメータの変化、オブジェクトに対応づけられる環境情報に基づく感情パラメータの変化と、それ
にともなうロボット100の行動特性の変化について変形例として説明する。
【0149】
ロボット100の画像特徴取得部164は「オブジェクト検出部」として
機能してもよい。上述したように画像特徴取得部164は、複数種類のオブ
ジェクトについて、あらかじめ形状および色彩の特徴を定義する複数のオブ
ジェクトパターンを有しており、オブジェクトパターンに基づいてオブジェ
クトを画像認識してもよい。たとえば、画像特徴取得部164は、オブジェ
クト(B01)の特徴点分布に基づいて、オブジェクト(B01)が「テレ
ビ」であると判定してもよい。また、画像特徴取得部164は、別のオブジェクト(B04)の特徴点分布について、このオブジェクト(B04)も「テレビ」であると判定してもよい。画像特徴取得部164または認識部212は、オブジェクト(B01)とオブジェクト(B04)は異なるオブジェクトであっても「テレビ」という同じカテゴリに属することを認識できる。
画像特徴取得部164は、特徴点分布を入力とするニューラル・ネットワー
ク・モデルにより、オブジェクトのカテゴリを判定してもよい。
【0150】
以下、オブジェクト(B01)のような固有物体としてのオブジェクトを
示すときには「固有オブジェクト」、テレビのようにオブジェクトの種類を
示すときには「オブジェクト・カテゴリ」とよぶ。固有オブジェクトはオブ
ジェクトIDにより識別され、オブジェクト・カテゴリはカテゴリIDによ
り識別される。また、特に区別しないときには、単に「オブジェクト」とよ
ぶ。
【0151】
ロボット100は、画像認識以外の方法により固有オブジェクトを検出し
、オブジェクト・カテゴリを特定してもよい。たとえば、ロボット100は
、固有オブジェクトと通信することによりオブジェクトを検出する「オブジ
ェクト検出部」を備えてもよい。カテゴリIDを家電製品が送信可能である
場合、オブジェクト検出部は家電製品から送信されるカテゴリIDを検出す
ることにより、家電製品(固有オブジェクト)のオブジェクト・カテゴリを
判定してもよい。
以下の変形例においては、ロボット100のオブジェクト検出部がオブジ
ェクトを検出し、かつ、オブジェクト・カテゴリを特定するものとして説明
する。
【0152】
図15は、変形例におけるオブジェクト環境情報440のデータ構造図で
ある。
オブジェクト環境情報440は、オブジェクト情報格納部172に格納さ
れる。オブジェクト環境情報440は、オブジェクトID、カテゴリID、
環境情報およびルームIDと対応づけられる。上述したように、オブジェク
トIDは固有オブジェクトを識別し、カテゴリIDはオブジェクト・カテゴリを示す。たとえば、固有オブジェクト(B01)と固有オブジェクト(B04)がどちらも「テレビ」であるときには、これらの2つの固有オブジェクトのカテゴリIDは同一となる。
【0153】
オブジェクト検出部は、固有オブジェクトを検出したとき、オブジェクトIDおよびカテゴリIDを特定する。環境情報取得部166は、固有オブジ
ェクトを検出したときの環境情報を取得する。オブジェクト管理部174は
、固有オブジェクト検出時の環境情報に基づいて、オブジェクト環境情報4
40を更新する。オブジェクト環境情報440の更新は、
図8に関連して説
明した方法と基本的には同じである。
【0154】
認識部212は、壁と扉を検出することにより、閉鎖空間としての部屋を
認識する。各部屋はルームIDにより識別される。オブジェクト検出部によ
り検出された固有オブジェクトは、ルームIDが対応づけられて管理される
。ルームID=R01は「居間」を示し、ルームID=R02は「書斎」を
示すものとする。
図15によれば、固有オブジェクト(B01:テレビ)は
部屋(R01:居間)に設置され、固有オブジェクト(B04:テレビ)は
部屋(R02:書斎)に設置されている。たとえば、部屋(R01:居間)
に設置されているテレビ(B01)の近くでは70%の高い確率でいずれか
のユーザが検出され、部屋(R02:書斎)に設置されているテレビ(B0
4)の近くでは、ほとんどユーザを検出したことが無いことが記憶されてい
る。
以下、オブジェクト・カテゴリ(C01)はテレビ、オブジェクト・カテ
ゴリ(C02)はプリンタ、オブジェクト・カテゴリ(C03)はテーブル
、オブジェクト・カテゴリ(C04)はソファである想定して説明する。
【0155】
図16は、変形例におけるルーム印象情報450のデータ構造図である。
本変形例においては、サーバ200のデータ格納部206は、更に、ルー
ム印象情報450を格納する。ルーム印象情報450は、部屋(ルームID
)、カテゴリIDおよび印象記憶を対応づける。「印象記憶」は、部屋に対
するロボット100の印象を表す情報であり、数値にて示される(以下、「印象記憶値」とよぶ)。「印象」は、部屋で体験したイベント、ロボットの
外部状態や内部状態に応じて増減される指数であり、ロボット100の感情
パラメータや、各駆動部の動作量、スピーカーの音量など数値として管理で
きるパラメータに基づいて決まる。
【0156】
たとえば、居間では、ロボット100は、オーナーと触れあう機会が多く
、移動可能なスペースも広いので自由に動き回ることができる。寝室は、居
間よりもスペースが狭く、触れあう機会も居間よりも少ない。そのため、ロ
ボットにおける可動部分の動作量という観点で指数を設けると、居間におけ
る動作量の指数は、寝室の動作量の指数より大きくなる。
【0157】
スピーカーからの出力という観点で指数を設けると、居間ではオーナーと
触れあう機会が多く、声を発する機会も多くなるのでスピーカーの指数は、
寝室におけるスピーカーの指数より大きくなる。
【0158】
ロボット100がオーナーから受ける快行為という観点で指数を設けると
、居間では抱っこしてもらう機会が多く、寝室では居間よりも抱っこの機会
が少なくなるので、快行為の指数は、居間の方が寝室よりも大きくなる。こ
うした指数を定義し、定義された指数の根拠となるパラメータの実績値を部
屋ごとに一定期間にわたり所定の条件で集計することにより部屋ごとの傾向
がわかる。こうした指数が印象記憶として管理される。
【0159】
たとえば、ロボット100は、居間では活発に行動し、声を発する機会も
多く、快行為を受けることも多いという経験をしたとき、居間に対する実績
値として「動作量の指数」「スピーカーの指数」「快行為の指数」が高くな
る。このような実績値から、「居間のような部屋では、活発に動いてもよい
し、声を出してもよいし、快行為を受けることも多い」という印象が形成さ
れる。
【0160】
これらの指数は時間帯によっても変化する。たとえば、平日の昼は快行為
を受けることは少なく、平日の夜は快行為を受けることが多いかもしれない
。この場合、平日の昼(たとえば、11:00~13:00)という時間帯
に対して各種の指数が対応づけられる。この結果、平日の昼と平日の夜では印象記憶値も変化する。
図16では、こうした印象記憶のうち、快行為の指数が図示されている。
【0161】
部屋(R01:居間)で発生したイベントが快行為であるとき、状態管理
部244は部屋(R01:居間)の印象記憶値を増加させる。一方、イベン
トが不快行為であるとき、状態管理部244は部屋(R01:居間)の印象
記憶値を減少させる。このような制御方法により、部屋(R01:居間)に
対するロボット100の印象を数値表現する。
図16によれば、部屋(R0
1:居間)の印象記憶値は「+10」であるから、ロボット100は部屋(
R01:居間)に対して肯定的な印象をもっている。居間に対するこのよう
な好印象は、たとえば、ロボット100が居間にいるときには、オーナーに
抱っこしてもらうなど快行為を受けることが多かったという経験に基づいて
育まれる。
【0162】
部屋(R02:書斎)でオーナーに叱られたときには(不快行為)、ロボ
ット100の部屋(R02:書斎)に対する印象記憶値は減少する。状態管
理部244は、たとえば、ロボット100が部屋(R02:書斎)にいると
き、一定時間以上、たとえば、10分間以上、いずれのオーナーも検出でき
なかったときに部屋(R02:書斎)に対する印象記憶値を減少させるとし
てもよい。このように、部屋で発生したイベントだけではなく、部屋でイベ
ントが発生しなかったことや、イベントの発生頻度に基づいて印象記憶値を
変化させてもよい。
【0163】
本変形例におけるロボット100は、部屋(R01)が「居間」であると
認識しているわけではない。ロボット100の認識部212は、部屋のタイ
プを部屋に含まれる複数のオブジェクト・カテゴリにより識別し、部屋ごと
にルームIDを付与する。
【0164】
図16によれば、部屋(R01:居間)においては、テレビ(C01)、
テーブル(C03)、ソファ(C04)が検出されている。ロボット100
は、これらのオブジェクト・カテゴリ群を含む空間として、部屋(R01:
居間)を識別する。部屋(R01:居間)に対する印象記憶値が高いことは、いいかえれば、テレビ(C01)、テーブル(C03)、ソファ(C04)を含むという条件を満たす部屋に対してロボット100が肯定的な印象を
持っていることを意味する。ロボット100は、部屋で得られる環境情報、
特に、部屋の中で体験するイベントに応じて、部屋の印象記憶値を変化させ
る。ロボット100は、印象記憶値の対象となる部屋を部屋に含まれる複数
のオブジェクト・カテゴリにより識別する。
【0165】
図16に示すルーム印象情報450を前提としたとき、ロボット100は
、テレビ(C01)、テーブル(C03)、ソファ(C04)を含む部屋に
対しては好印象を持つ。状態管理部244は、ロボット100が初めて部屋
に入ったとき(以下、ロボット100が存在している部屋のことを「在室部
屋」とよぶ)、在室部屋に含まれる複数種類のオブジェクト・カテゴリに基
づいて、部屋のタイプを特定する。たとえば、在室部屋が既知の部屋(R0
1)に類似しているときには、状態管理部244は部屋(R01)の印象記
憶値に基づいてロボット100の感情パラメータを変化させる。在室部屋は
部屋(R01)と同一であってもよいし、たまたま、テレビ(C01)、テ
ーブル(C03)、ソファ(C04)を含むという点において共通する別の
部屋であってもよい。このような制御方法によれば、テレビやテーブルなど
のある部屋(R01:居間)に肯定的印象を抱いているロボット100は、
未知の家庭を初訪問したときでも、部屋(R01:居間)に類似する部屋を
見つけたときに「嬉しくなる」ことができる。したがって、既知の部屋に対
する印象に基づいて、未知の部屋に入ったときのロボット100の感情を変
化させることができる。既知の部屋に似た部屋に在室しているときには、状
態管理部244は寂しさを示す感情パラメータ値を低下させてもよい。また
、既知の部屋のいずれにも似ていない部屋に在室しているときには、状態管
理部244は寂しさを示す感情パラメータを上昇させ、好奇心を示す感情パ
ラメータも上昇させてもよい。
【0166】
たとえば、ロボット100の状態管理部244は、印象記憶値の高い既知
の部屋に似た部屋、または、同一の部屋に入ったとき、「寂しさ」を示す感
情パラメータを低下させてもよい。印象記憶値が高いほど「寂しさ」を示す
感情パラメータを大きく低下させてもよい。
【0167】
また、たとえば、印象記憶として、動作量の指数が定義されており、部屋(R01:居間)の動作量の指数が、部屋(R02:書斎)の動作量の指数
より大きい場合、つまり、書斎の動作量の指数が居間の動作量の指数より小
さい場合、ロボット100は、書斎に該当する部屋に居るときの動作量を居
間に該当する部屋に居るときより抑制できる。
【0168】
まとめると、ロボット100は、各部屋においてさまざまな外部環境の影
響を受けながら、感情パラメータや動作量などを複雑に変化させる。このよ
うな行動実績が各種の指数として記録される。また、これらの行動実績に基
づいて「活発に動ける」「快行為をうけやすい」といった印象記憶が形成さ
れる。そして、ロボット100は、在室部屋が既知の部屋に似ているときに
は、既知の部屋の印象記憶に基づいてその行動特性を変化させる。経験に基
づく行動実績が実際の行動特性に影響を与えることにより「経験に基づく行
動特性」が実現される。
【0169】
上述したように、部屋は、複数のオブジェクト・カテゴリの組み合わせに
より識別される。状態管理部244は、在室部屋で検出されるすべての固有
オブジェクトに基づいて部屋を識別する必要はない。
【0170】
オブジェクト管理部174は、環境情報に基づいて、固有オブジェクトご
とに印象記憶値を設定してもよい。具体的には、オブジェクト管理部174
は、固有オブジェクトが検出されたときの環境情報がイベント条件(上述)
を満たすとき、イベントに応じて固有オブジェクトの印象記憶値を変化させ
る。たとえば、テレビ(B01)のそばで快行為が検出されたとき、オブジ
ェクト管理部174はテレビ(B01)に対する印象記憶値を上昇させても
よい。いいかえれば、所定のイベントが発生したとき、オブジェクト管理部
174は、ロボット100から所定の範囲内にある固有オブジェクトを特定
し、その固有オブジェクトに対する印象記憶値を変化させる。オブジェクト
が所定の範囲内にあるか否かの判断は、各オブジェクトの距離を測定することで判断されてもよいし、撮像画像に含まれるオブジェクトの大きさに基づ
いて推定されてもよい。
【0171】
また、オブジェクト管理部174は、ロボット100の正面方向に存在す
るとともに、所定の範囲内にある固有オブジェクトを特定し、その固有オブ
ジェクトに対する印象記憶値を変化させてもよい。また、オブジェクト管理
部174は、固有オブジェクト(B01)ではなく、オブジェクト・カテゴ
リ(C01)に対して印象記憶値を設定してもよい。たとえば、テレビの周
りには人が存在するので、抱っこされるなどのイベントが発生する頻度が高
い。「テレビ」というカテゴリに対して印象記憶値を設定することで、初め
ての場所であっても、記憶に基づき、テレビの近くに移動するという行動を
選択できる。
【0172】
オブジェクト管理部174は、在室部屋で検出される複数の固有オブジェ
クトのうち、一部の固有オブジェクトに基づいて在室部屋を識別してもよい
。たとえば、オブジェクト管理部174は、印象記憶値が特に高いものと特
に低いもの、たとえば上位3以内の固有オブジェクトと下位3位以内の6個
の固有オブジェクトを特定してもよい。そして、これら6個の固有オブジェ
クトそれぞれのオブジェクト・カテゴリを特定し、特定されたオブジェクト
・カテゴリの組み合わせとして在室部屋を識別してもよい。
【0173】
状態管理部244は、在室部屋で検出されたオブジェクト・カテゴリ群と
、ルーム印象情報450において登録されている複数の部屋それぞれに対応
づけられるオブジェクト・カテゴリ群を比較する。状態管理部244は、オ
ブジェクト・カテゴリの一致数に応じて類似度を判定してもよい。たとえば
、部屋(R01:居間)に含まれる3つのオブジェクト・カテゴリのうち2
つが在室部屋でも検出されたとき、状態管理部244は在室部屋と部屋(R
01:居間)の類似度を66(%)(=2÷3)と判定してもよい。これは
在室部屋が既知の部屋(R01:居間)と同一である可能性が高いことを意
味する。状態管理部244は、在室部屋で検出されたオブジェクト・カテゴ
リとルーム印象情報450を比較し、類似度が最も高く、かつ、類似度が70(%)以上となる部屋を在室部屋と同じタイプの部屋であると判定してもよい。
【0174】
図17は、変形例において、オブジェクトを検出したときの処理過程を示
すフローチャートである。
図17に示す処理は、ロボットシステム300において定期的に実行され
る。環境情報取得部166は、まず、在室部屋の環境情報を取得する(S6
0)。状態管理部244は、環境情報に基づいて感情パラメータを変化させ
る(S62)。これは、
図11に関連して説明した「環境情報による一次反
映」と同様である。オブジェクト検出部は、固有オブジェクトを検出する(
S64)。このとき、オブジェクト検出部は、固有オブジェクトのオブジェ
クト・カテゴリを特定する。
【0175】
検出した複数のオブジェクト・カテゴリとルーム印象情報450を比較す
ることにより、状態管理部244は在室部屋のタイプを特定する(S66)
。上述したように、状態管理部244は在室部屋から検出されたオブジェク
ト・カテゴリ群と、ルーム印象情報450に登録されている部屋ごとのオブ
ジェクト・カテゴリ群の類似度が所定値以上となる部屋を「既知の部屋に似
ている部屋(以下、単に「既知の部屋」とよぶ)」として特定する。
【0176】
在室部屋が「既知の部屋」であるとき、状態管理部244は既知の部屋に
あらかじめ対応づけられる印象記憶値に基づいて感情パラメータを変化させ
る(S68)。たとえば、部屋(R01:居間)に対して印象記憶値「+1
0」が対応づけられている場合において、在室部屋が居間に似ているときに
は、状態管理部244は寂しさを示す感情パラメータ値と好奇心を示す感情
パラメータ値を減少させてもよい。このように、既知の部屋、より厳密にい
えば、既知の部屋に含まれるオブジェクト・カテゴリ群にあらかじめ対応づ
けられている印象記憶値に基づいて、ロボット100の気持ち(感情パラメ
ータ)を変化させることができる。これは、
図11に関連して説明した「環
境情報による二次反映」と同様である。
【0177】
一方、未知の部屋のときには(S66のN)、二次反映は実行されない。
その後、S62において取得された環境情報により、状態管理部244はル
ーム印象情報450を更新する(S70)。
【0178】
ロボット100は、在室部屋に似た既知の部屋の印象記憶値に基づいて感
情パラメータを変化させ、感情パラメータの変化に基づいて行動特性を変化
させる。ロボット100は、このほかにも、印象記憶値に基づいて感情パラ
メータを介することなく行動特性を変化させてもよい。たとえば、印象記憶
値が低い部屋においては、ロボット100の動作制御部150は、ロボット
100の移動速度、移動量(単位時間内における走行可能距離)、運動量(
各種アクチュエータの可動量または可動範囲)を抑制してもよい。また、印
象記憶値が低い部屋においては、動作制御部150はロボット100が発生
させる音量の上限値を抑制してもよい。このような制御方法によれば、印象
記憶値の低い部屋においてロボット100はおとなしくなり、印象記憶値の
高い部屋においてロボット100は活発に行動する。部屋に対する印象記憶
に基づいて、ロボット100の気持ちを行動表現できる。部屋ごとにあらか
じめ印象記憶値を初期設定しておいてもよい。
【0179】
ロボット100は、初めて部屋に入るとき、その部屋がどのような部屋な
のかルーム印象情報450を参照して判断する。そして、過去の経験に基づ
き、移動速度などの行動態様を決める。その後、オブジェクト環境情報44
0を参照することで、過去の経験に基づいて、部屋におけるオブジェクトを
探索し、目標地点として設定する。
【0180】
また、初めての家に居るとき、あるいは、寂しいときには、「楽しそうな部屋(好印象の部屋)」を探す。具体的には、動作制御部222は、印象記
憶値の高い部屋を移動目標地点として設定する。
【0181】
動作制御部222は印象記憶値の高いオブジェクト・カテゴリを含む部屋
を探す。たとえば、ロボット100は、テレビとテーブル、ソファを含む部
屋に対して好印象をもっているとする。この場合には、ロボット100は、
テレビとテーブル、ソファを含む部屋を「楽しそうな部屋」と想定し、その
ような条件に合う部屋を探す。
【0182】
ロボット100の動作制御部222は、ルーム印象情報450を参照し、
印象記憶値の高い部屋のルームIDを特定する。次に、動作制御部222は
、特定された部屋に含まれる複数のオブジェクト・カテゴリを特定する。動
作制御部222は、この「楽しそうな部屋」に含まれている複数種類のオブ
ジェクト・カテゴリのうち、所定個数以上のオブジェクト・カテゴリを含む
部屋を移動目標地点として選択する。
【0183】
ロボット100は、経験に基づいて、移動目標地点となる部屋を選ぶこと
ができる。たとえば、オーナーAがロボット100AをユーザBの家に連れ
て行くとする。ロボット100AにとってユーザBの家は未知である。ロボ
ット100Aは、まず、オーナーAの家で形成されたルーム印象情報450
に基づいて、印象記憶値の高い部屋に含まれるオブジェクト・カテゴリを特
定する。そして、ロボット100は、特定されたオブジェクト・カテゴリ群
を含む部屋をユーザBの家でも探す。たとえば、部屋(R01:居間)に似
た部屋RBをユーザBの家でも見つけたときには、ロボット100は部屋R
Bに入り、部屋(R01:居間)の印象記憶値に基づいて感情パラメータお
よび行動特性を変化させる。このような制御方法によれば、自宅での経験に
基づいて、初訪問の家でも自宅と同様のふるまいをロボット100にさせる
ことができる。
【0184】
ロボット100の動作制御部222は、更に、在室部屋の中で近づくべき
固有オブジェクトを選択する。動作制御部222は、固有オブジェクトに対
応づけられる環境情報に基づいて、本実施形態と同様の方式により、近づく
べき固有オブジェクトを選択する。たとえば、ロボット100は寂しさを示
す感情パラメータ値が高まっているときには、ユーザの検出率が高い固有オ
ブジェクトに近づいてもよい。状態管理部244は、固有オブジェクトの環
境情報に基づいて、感情パラメータを変化させてもよい。たとえば、抱っこ
されるというイベントが発生しやすいソファの近くにいるときには、ロボッ
ト100は実際に抱っこされなくても寂しさを示す感情パラメータを低下さ
せてもよい。キーフレーム404に対応づけられる環境情報に基づいてロボット100の感情パラメータや行動特性を変化させるほかにも、オブジェクト(固有オブジェクトまたはオブジェクト・カテゴリ)に対応づけられる環境情報に基づいてロボット100の感情パラメータや行動特性を変化させてもよい。オブジェクト・カテゴリにはあらかじめ印象記憶値が設定されてもよい。100は、固有オブジェクトを検出したとき、そのオブジェクト・カテゴリに対応づけられる印象記憶値に基づいて行動特性を変化させてもよい。
【0185】
好印象の部屋には、テレビ、テーブル、ソファが含まれているとする。動作制御部222は部屋に入ったあとはテレビにロボット100を近づかせる
とする。このような制御方法によれば、ロボット100は印象記憶に基づい
て「楽しそうな部屋」を見つけ出し、部屋に入ったあとは印象のいいオブジ
ェクト(テレビ)に近づくことになる。この結果、居間が好き、あるいは、
テレビが好きといった、空間やオブジェクトに対するロボット100の好み
を行動表現できる。
【0186】
同様にして、ロボット100は印象記憶値の低い部屋を避けてもよい。た
とえば、ロボット100が浴室に入ったときにオーナーから追い払われるな
どの不快行為を検出したとき、ロボット100は浴室にあるオブジェクト、
たとえば、タオルや洗面台、洗濯機等の組み合わせに対する印象記憶値を低
くする。この結果として、浴室が苦手、あるいは、洗濯機が苦手といった、
行動特性を表現できる。
【0187】
印象記憶は、快/不快に限られない。たとえば、賑やか/静か、暑い/寒
い、といった他の評価軸に基づいて印象記憶値を設定してもよい。部屋(R
01:居間)に「賑やか」という印象記憶が結び付けられている場合におい
て、「寂しさ」を示す感情パラメータが高まったときには、ロボット100
は部屋(R01:居間)を移動目標地点として設定してもよい。部屋(R0
1:居間)では人が集まりやすいため、このような制御方法により寂しくな
ったときには部屋(R01:居間)に近づいて人を探すかのような行動特性
を表現できる。固有オブジェクトは、固定物である必要はなく、タオルのように持ち運び可能なものであってもよいし、ペットや他のロボット100のように自律的に移動可能なものであってもよい。
【0188】
図18は、別の変形例における行動経験情報460のデータ構造図である
。
オブジェクト情報格納部172は、行動経験情報460を格納してもよい。行動経験情報460は、カテゴリIDと、モーションIDおよび印象記憶を対応づける。たとえば、ロボット100がオブジェクト(B01:テレビ)から所定範囲内において、モーションID=M01のモーションを選択したとき、オーナーから褒められたとする。褒められることは快行為なので、オブジェクト管理部174はオブジェクト・カテゴリ(C01:テレビ)およびモーション(M01)の組み合わせに対する印象記憶値を増加させるこ
とにより行動経験情報460を更新する。一方、オブジェクト(B01:テ
レビ)の近くでモーション(M03)を選択したとき、オーナーから叱られ
たとする。叱られることは不快行為なので、オブジェクト管理部174はオ
ブジェクト・カテゴリ(C01:テレビ)およびモーション(M03)の組
み合わせに対する印象記憶値を減少させる。
【0189】
動作制御部222は、行動経験情報460を参照し、テレビの近くではモ
ーション(M01)の選択確率を上昇させ、モーション(M03)の選択確
率を減少させる。このような制御方法によれば、ユーザは褒める、叱るとい
った行為により、ロボット100の行動特性を変化させることができる。た
とえば、食器棚の近くで座り込んでいるロボット100を叱ることにより、
ロボット100が食器棚の近くで座り込むのをやめさせることができる。こ
の結果として、ユーザはロボット100に「しつけ」をすることが可能とな
る。
【0190】
オブジェクトの状態も考慮して印象記憶を変化させてもよい。たとえば、掃除機がオフのときには掃除機に近づいてもなにもされないが、掃除機がオ
ンのときに掃除機に近づいたときにはオーナーから追い払われたとする。オ
ーナーから追い払われることは不快行為なので、ロボット100は「掃除機がオンのときには掃除機に近づいてはいけない」という行動規範を学習する。掃除機のオン・オフは、掃除機が発生する音の有無によって判断してもよい。オブジェクトの状態のほか、時間帯を考慮して印象記憶を変化させてもよい。たとえば、夕食準備中にロボット100が台所に入り込んできたとき、オーナーはロボット100を追い払うかもしれない(不快行為)。この結果として、「夕方には冷蔵庫や食器棚がある台所に近づいてはいけない(台所にいるオーナーの邪魔をしてはいけない)」という行動規範をロボット100に学習させることができる。
【0191】
部屋(ルームID)とモーションの組み合わせに印象記憶を対応づけても
よい。この場合、たとえば、居間で大きな音を出すことは許されるが、書斎
で大きな音を出してはいけないという行動規範をロボット100に学習させ
ることができる。同様にして、居間では高速で動き回ってもよいが、書斎で
は活動量を抑制しなければいけない、と学ぶこともある。
【0192】
ロボット100は、不快行為を認識したとき、不快行為を行ったオーナー
に対する親密度を低下させる。しかし、親密度が所定値以上のオーナーから
の不快行為を認識したときには、親密度管理部220は親密度を低下させな
い、または、通常時に比べて親密度の減少量を小さくするとしてもよい。こ
のような制御方法によれば、ロボット100との強い信頼関係を築いたオー
ナーは、ロボット100を安心して叱ることができる。
【0193】
上述したように、オブジェクトと環境情報を対応づけてもよいし、空間(ルームID)と環境情報を対応づけてもよい。状態管理部244は、環境情
報、特に、イベントに基づいて印象記憶を変化させてもよい。オブジェクト
あるいは空間に対する印象記憶は初期設定されてもよい。たとえば、あらか
じめ居間に対して高い印象記憶値を設定しておけば、ロボット100は先天
的に居間を好むという行動特性を表現できる。また、オーナーは、スマート
フォン等の携帯端末を介して、居間に対する印象記憶値をサーバ200に送
信し、オブジェクト管理部174は指定された印象記憶値をルーム印象情報
450に設定してもよい。
【0194】
オブジェクト・カテゴリの組み合わせに対して環境情報を対応づけてもよい。部屋の間取りやオブジェクトのレイアウトを想定して部屋を認識しても
よい。たとえば、「テレビが窓際にあり、窓際から少し離れてソファが配置
される部屋」として部屋を識別してもよい。
【0195】
複数のロボット100により、環境マップ情報420、オブジェクト情報
430、ルーム印象情報450、行動経験情報460に示す情報を共有して
もよい。このような制御方法によれば、ロボット100Aが居間を好むとき
、ロボット100Bも居間を好むことになり、複数のロボット100の行動
特性を連動させることができる。
【0196】
ロボット100Aは、楽しい部屋として、印象記憶値が高い場所だけをロ
ボット100Bと共有してもよい。たとえば、複数の部屋のうち、印象記憶
値が平均よりも高い部屋、あるいは、印象記憶値が上位3位以内の部屋を対
象として、ルーム印象情報450を共有してもよい。あるいは、印象記憶値
が平均よりも低い部屋、あるいは、印象記憶値が下位3位以内の部屋を対象
としてルーム印象情報450を共有してもよい。
【0197】
ロボット100Aとロボット100Bはすべての部屋を対象としてルーム
印象情報450を共有する必要はなく、一部の部屋のみを対象としてルーム
印象情報450を共有してもよい。このような制御方法によれば、たとえば
、ロボット100Aは、一部の部屋についてはロボット100Bに情報を伝
えなくなるため、ロボット100Aだけが気に入っている秘密の部屋を作る
ことができる。
【0198】
ロボット100AがオーナーAにはじめて抱っこされた部屋、オーナーA
が長時間抱っこしてくれる部屋など、特別な条件(記憶)がある部屋につい
ては、ロボット100Aはロボット100Bと情報共有しないとしてもよい。
【0199】
印象記憶を可視化してもよい。サーバ200は、オブジェクトの配置とオ
ブジェクトに対する印象記憶を示す画像(印象地図)を生成する印象地図生
成部を備えてもよい。サーバ200の通信部204は、オーナーの携帯端末に印象地図を送信してもよい。たとえば、印象記憶値が高いオブジェクトの周辺は青色で表示し、印象記憶値の低いオブジェクトの周辺は赤色で表示す
ることにより、オーナーはロボット100がどんなオブジェクトあるいはど
んな部屋を気に入っているかを視覚的に知ることができる。
【0200】
印象地図生成部は、オブジェクトまたは部屋に対する印象記憶値の変化を印象地図において表示してもよい。たとえば、最初は嫌いだったオブジェク
トをだんだん好きになる様子を印象地図の動画表示により示してもよい。