(57)【特許請求の範囲】
【請求項１】
ロボットの基体を移動させる移動部と、
観客の位置を示す情報を取得する取得部と、
所定の領域内において前記観客に向けて説明を行うように制御する制御部であって、前記取得部により取得される前記観客の位置に基づいて、前記ロボットの立ち位置を決定し、前記決定した前記ロボットの立ち位置を実現するように、前記移動部を制御する制御部と、
前記ロボットの頭部を駆動し、前記ロボットの頭部の向きを変化させる頭部駆動部と、
を備え、
前記制御部は、
前記観客に頭部の正面または視線を向けた回数を所定の軸上に投影してカウントして投影データを記憶部に記憶しておき、前記投影データに基づいて移動するように前記移動部を制御し、
前記頭部の正面または視線を向けた観客であるか否かを、前記頭部駆動部に指示した方向を基準として定まる方向を中心とした所定範囲内に存在したか否かによって判定する、
ロボット。
【請求項２】
前記制御部は、観客に頭部の正面または視線を向けた時間を、観客毎に累積して記憶部に記憶しておき、前記累積した時間の短い観客に対して優先的に頭部の向きを向けるように、前記頭部駆動部を制御する、
請求項１記載のロボット。
【請求項３】
前記制御部は、前記観客に向けての説明の内容および形態を指定するシナリオデータを順次選択することで、前記ロボットの立ち位置および頭部の向きの配分態様を指定する動作モードを決定し、前記決定した動作モードと、前記取得部により取得される前記観客の位置とに基づいて、前記ロボットの立ち位置および頭部の向きを決定する、
請求項１または２記載のロボット。
【請求項４】
前記シナリオデータは、所定の箇所から前記観客の全体を見渡して説明を行う態様を指定するシナリオデータと、前記観客の一部に接近して説明を行う態様を指定するシナリオデータとを含む複数のシナリオデータの中から選択される、
請求項３記載のロボット。
【請求項５】
前記制御部は、前記投影データにおいて投影回数の少ない観客に接近するように前記移動部を制御する、
請求項１から４のいずれか１項記載のロボット。
【請求項６】
ロボットの基体を移動させる移動部と、観客の位置を示す情報を取得する取得部と、前記ロボットの頭部を駆動し、前記ロボットの頭部の向きを変化させる頭部駆動部とを備えるロボットを、所定の領域内において前記観客に向けて説明を行うように制御するロボットの制御方法であって、
前記取得部により取得される前記観客の位置と、前記観客に前記頭部の正面または視線を向けた回数を所定の軸上に投影してカウントした投影データとに基づいて、前記ロボットの立ち位置を決定し、
前記決定した前記ロボットの立ち位置を実現するように、前記移動部を制御し、
前記頭部の正面または視線を向けた観客であるか否かは、前記頭部駆動部に指示した方向を基準として定まる方向を中心とした所定範囲内に存在したか否かによって判定する、
ロボットの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット、およびロボットの制御方法に関する。
【背景技術】
【０００２】
従来、ロボットの近傍にいる視聴者の数を把握する視聴者状況把握部と、ロボットが説明を行う際にロボットが視聴者に対して行う動作パターンを複数記憶する動作パターン記憶部と、視聴者状況把握部が把握した視聴者の数に基づき、動作パターン記憶部から、いずれかの動作パターンを選択する動作パターン選択部と、動作パターン選択部が選択した動作パターンに基づき、ロボットの動作を決定し、視線モーションを生成する視線モーション生成部、を含むロボットが知られている（例えば、特許文献１参照）。
【０００３】
また、動作時間が互いに異なる値に決まっている複数の動作パターンのデータをデータベースに格納しておき、ロボットの発話開始前に生成される音声の波形データから発話時間の長さを測定し、発話時間に対して発話の開始と終了とに動作の開始と終了とが一致するように、データベースの内容から２つ以上の動作パターンの組合せ、再生順序及び再生タイミングを生成するロボットが知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−０５０４６１号公報
【特許文献２】特開２００４−０３４２７３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来のロボットは、観客の注意を十分に惹きつけることができない場合があった。
【０００６】
本発明は、このような事情を考慮してなされたものであり、観客の注意を効果的に惹きつけることが可能なロボット、およびロボットの制御方法を提供することを目的の一つとする。
【課題を解決するための手段】
【０００７】
請求項１に記載の発明は、ロボット（１）の基体（２０）を移動させる移動部（２６、２８、５０、６０）と、観客の位置を示す情報を取得する取得部（９２）と、所定の領域（ＳＴ）内において前記観客に向けて説明を行うように制御する制御部（９０）であって、前記取得部により取得される前記観客の位置に基づいて、前記ロボットの立ち位置を決定し、前記決定した前記ロボットの立ち位置を実現するように、前記移動部を制御する制御部と、前記ロボットの頭部を駆動し、前記ロボットの頭部の向きを変化させる頭部駆動部と、を備え、前記制御部は、前記観客に頭部の正面または視線を向けた回数を所定の軸上に投影してカウントして投影データ（８７）を記憶部（８０）に記憶しておき、前記投影データに基づいて移動するように前記移動部を制御し、前記頭部の正面または視線を向けた観客であるか否かを、前記頭部駆動部に指示した方向を基準として定まる方向を中心とした所定範囲内に存在したか否かによって判定するロボットである。
【０００９】
請求項２に記載の発明は、請求項１記載のロボットであって、前記制御部は、観客に頭部の正面または視線を向けた時間を、観客毎に累積して記憶部（８０）に記憶しておき、前記累積した時間の短い観客に対して優先的に頭部の向きを向けるように、前記頭部駆動部を制御するロボットである。
【００１０】
請求項３に記載の発明は、請求項１または２記載のロボットであって、前記制御部は、前記観客に向けての説明の内容および形態を指定するシナリオデータを順次選択することで、前記ロボットの立ち位置および頭部の向きの配分態様を指定する動作モードを決定し、前記決定した動作モードと、前記取得部により取得される前記観客の位置とに基づいて、前記ロボットの立ち位置および頭部の向きを決定するロボットである。
【００１１】
請求項４記載の発明は、請求項３記載のロボットであって、前記シナリオデータは、所定の箇所から前記観客の全体を見渡して説明を行う態様を指定するシナリオデータと、前記観客の一部に接近して説明を行う態様を指定するシナリオデータとを含む複数のシナリオデータの中から選択されるロボットである。
【００１２】
請求項５記載の発明は、請求項１から４のいずれか１項記載のロボットであって、前記制御部は、前記投影データにおいて投影回数の少ない観客に接近するように前記移動部を制御するロボットである。
【００１３】
請求項６記載の発明は、ロボットの基体を移動させる移動部と、観客の位置を示す情報を取得する取得部と、前記ロボットの頭部を駆動し、前記ロボットの頭部の向きを変化させる頭部駆動部とを備えるロボットを、所定の領域内において前記観客に向けて説明を行うように制御するロボットの制御方法であって、前記取得部により取得される前記観客の位置と、前記観客に前記頭部の正面または視線を向けた回数を所定の軸上に投影してカウントした投影データとに基づいて、前記ロボットの立ち位置を決定し、前記決定した前記ロボットの立ち位置を実現するように、前記移動部を制御し、前記頭部の正面または視線を向けた観客であるか否かは、前記頭部駆動部に指示した方向を基準として定まる方向を中心とした所定範囲内に存在したか否かによって判定するロボットの制御方法である。
【発明の効果】
【００１４】
請求項１、６記載の発明によれば、取得部により取得される前記観客の位置に基づいて、前記ロボットの立ち位置を決定し、前記決定した前記ロボットの立ち位置を実現するように、前記移動部を制御するため、観客の注意を効果的に惹きつけることができる。
【００１５】
請求項２〜５に記載の発明によれば、観客間での平等感を向上させることができる。
【図面の簡単な説明】
【００１６】
【図１】一実施形態に係るロボット１の外観構成の一例を示す図である。
【図２】ロボット１が備える機能構成の一例を示す図である。
【図３】ヨー方向、ピッチ方向、ロール方向の定義を説明するための図である。
【図４】シナリオデータＡが実行されることで実現される説明の形態を例示した図である。
【図５】シナリオデータＢが実行されることで実現される説明の形態を例示した図である。
【図６】シナリオデータＣが実行されることで実現される説明の形態を例示した図である。
【図７】シナリオデータ８４と、シナリオ／動作モード対応テーブル８５との関係を説明するための図である。
【図８】観客全体に対して説明する場面を説明するための図である。
【図９】現に視線方向を向けている観客Ａｔの近傍にいる観客Ａｓに対して累積時間を加算する処理を説明するための図である。
【図１０】観客の一部に接近して説明する場面を説明するための図である。
【図１１】観客の一部に接近して説明する場面の他の例を説明するための図である。
【図１２】現に視線方向を向けている観客Ａｔの近傍にいる観客Ａｓに対して注視回数ヒストグラム８７にカウント数を加算する処理を説明するための図である。
【図１３】本実施形態の制御部９０により実行される処理の流れの一例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
［構成］
以下、図面を参照し、本発明のロボット、およびロボットの制御方法の実施形態について説明する。以下に説明するロボットは、例えば、左右一対の脚部と左右一対の腕部とを備え、脚部の動作によって移動可能な人型ロボットである。なお、これに限らず、ロボットは、車輪やホバークラフト等によって移動可能なロボットであってもよいし、腕部を一つまたは三つ以上有するものであってもよい。本発明に係るロボットは、ステージ上で（所定の領域内において）、ステージ外にいる観客に向けて説明を行うように制御される。
【００１８】
図１は、一実施形態に係るロボット１の外観構成の一例を示す図である。また、図２は、ロボット１が備える機能構成の一例を示す図である。ロボット１は、例えば、頭部１０と、ボディ部２０と、左右一対の腕部３０と、左右一対の手部４０と、左右一対の脚部５０とを備える。なお、以下では、左右一対の構成要素について、左右いずれの構成要素であるかを区別せずに説明する。
【００１９】
頭部１０には、左右一対のカメラ１２が取り付けられている。カメラ１２は、例えば、ＣＣＤ（Charge  Coupled  Device）やＣＭＯＳ（Complementary  Metal  Oxide  Semiconductor）等の固体撮像素子を有するカメラである。カメラ１２は、可視光または赤外光を撮像し、撮像した画像を制御部９０に送信する。なお、カメラ１２は、単眼または３眼以上のカメラであってもよい。
【００２０】
ボディ部２０は、首関節部２２を介して頭部１０と連結され、肩関節部２４を介して腕部３０と連結され、腰関節部２６および股関節部２８を介して脚部５０と連結される。首関節部２２は、頭部１０をボディ部２０に対して、例えばヨー方向に１自由度で回動させる。以下の説明では、回動方向をヨー方向、ピッチ方向、ロール方向と表現して説明する。図３は、ヨー方向、ピッチ方向、ロール方向の定義を説明するための図である。図示するように、関節部Ａから見た被駆動部材Ｂの方向Ｃを軸として被駆動部材Ｂを回動させる方向をロール方向と定義する。また、方向Ｃ自体を第１の方向に回動させる方向をピッチ方向と、方向Ｃ自体を第１の方向に直交する第２の方向に回動させる方向をヨー方向と定義する。
【００２１】
肩関節部２４は、腕部３０をボディ部２０に対して、例えばヨー方向、ピッチ方向、およびロール方向に３自由度で回動させる。腰関節部２６は、股関節部２８をボディ部に対して、例えばロール方向に１自由度で回動させる。股関節部２８は、脚部５０を腰関節部２６に対して、例えばヨー方向、ピッチ方向、およびロール方向に３自由度で回動させる。なお、ボディ部２０には、図示しない腰カメラ等が内蔵されてよい。
【００２２】
腕部３０は、例えば、二の腕に相当する腕第１リンク部３２と、肘関節部３４と、前腕部に相当する腕第２リンク部３６と、手首関節部３８とを備える。肘関節部３４は、腕第２リンク部３６を腕第１リンク部３２に対して、例えばピッチ方向に（腕の内側に）１自由度で回動させる。手首関節部３８は、手部４０を腕第２リンク部３６に対して、例えばヨー方向、ピッチ方向、およびロール方向に３自由度で回動させる。
【００２３】
脚部５０は、例えば、脚第１リンク部５１と、膝関節部５２と、脚第２リンク部５３と、足首関節部５４と、足部５５とを備える。膝関節部５２は、脚第２リンク部５３を脚第１リンク部５１に対して、例えばピッチ方向に１自由度で回動させる。足首関節部５４は、足部５５を脚第２リンク部５３に対して、例えばピッチ方向およびヨー方向に２自由度で回動させる。
【００２４】
ロボット１は、関節部に回動力を付与し、被駆動部材（膝関節部５２であれば脚第２リンク部５３）を連結元部材（膝関節部５２であれば脚第１リンク部５１）に対して回動させるアクチュエータ群６０を備える。アクチュエータ群６０の各アクチュエータは、関節部毎に設けられてもよいし、複数の関節部に回動力を付与するアクチュエータが存在してもよい。また、アクチュエータは、関節部に内蔵されてもよいし、関節部の外に配置されてもよい。後者の場合、アクチュエータは、ワイヤーやベルト、プーリ、油圧機構等によって関節部や被駆動部材と接続されることで、関節部に回動力を付与する。
【００２５】
また、アクチュエータ群６０に含まれる各アクチュエータには、ロータリーエンコーダ群６２に含まれる各ロータリーエンコーダが取り付けられる。各ロータリーエンコーダは、対応するアクチュエータの回転角度をそれぞれ検出して制御部９０に送信する。なお、ロータリーエンコーダ群６２は、アクチュエータ群６０の回転角度ではなく、関節部の回転角度を検出してもよい。
【００２６】
ロボット１は、音声を出力するためのスピーカ７０を備える。スピーカ７０が出力する音声の内容は、制御部９０によって決定される。ロボット１は、更に、記憶部８０と、制御部９０とを備える。
【００２７】
記憶部８０は、例えば、ＲＡＭ（Random  Access  Memory）やＲＯＭ（Read  Only  Memory）、ＨＤＤ（Hard  Disk  Drive）、フラッシュメモリ等を含む。記憶部８０には、制御部９０が備えるＣＰＵ（Central  Processing  Unit）等のプロセッサが実行する制御プログラム８１、ロボット１が説明を行うステージの位置範囲を記述したステージデータ８２、ロボット１が説明のために出力する音声のデータである音声データ８３、観客に向けての説明の内容および形態を指定するシナリオデータ８４、シナリオデータ８４とロボット１の動作モードとの対応関係を規定するシナリオ／動作モード対応テーブル８５などが格納されている。また、記憶部８０には、各観客に視線を向けた時間を累積した累積時間データ８６、視線方向を向けた回数を所定の軸上に投影した注視回数ヒストグラム８７などが、制御部９０の処理に応じて書き込まれる。なお、本実施形態のロボット１は、眼に相当する部材（例えばカメラ１２）を自在に駆動する構成となっていないため、頭部の正面を向けることが、視線を向けているのと同じ印象を観客に与える。従って、以下の説明において、「視線方向を決定する」ことは、「頭部の向きを決定する」ことと同義である。なお視線方向とは、眼に相当する部材の光軸方向や正対方向など、人間の視線に相当する方向のことを指す。
【００２８】
制御部９０は、例えば、通信部９１と、環境認識部９２と、シナリオ選択部９３と、動作モード決定部９４と、立ち位置決定部９５と、視線方向決定部９６と、姿勢制御部９７と、音声制御部９８とを備える。これらの機能部のうち一部または全部は、制御部９０のプロセッサが、制御プログラム８１を実行することにより機能するソフトウェア機能部である。なお、これらの機能部のうち一部または全部は、ＬＳＩ（Large  Scale  Integration）やＡＳＩＣ（Application  Specific  Integrated  Circuit）等のハードウェア機能部であってもよい。
【００２９】
通信部９１は、外部カメラ１２０と通信を行い、外部カメラ１２０により撮像された画像を受信する。外部カメラ１２０は、ロボット１が説明を行うステージ上の天井等に設置され、観客の顔や頭部を撮像する（後述する図４〜６を参照）。
【００３０】
環境認識部９２は、通信部９１が取得した画像やロボット１が備えるカメラ１２により撮像された画像に基づいて、各観客の位置を認識する。環境認識部９２は、顔認識技術等によって各観客を識別し、各観客に観客ＩＤを付与して記憶部８０に格納する。なお、各観客を見分けて観客ＩＤを付与する機能は、ロボット１の外部の装置によって実行されてもよい。また、観客の認識は、観客が保持する通信タグ等との通信によって行われてもよい。また、環境認識部９２は、姿勢制御部９７による制御量をフィードバックすることで、ステージ上におけるロボット１の位置を認識する。
【００３１】
［シナリオデータ］
シナリオ選択部９３は、シナリオデータ８４を順次選択する。ロボット１が１回の説明を行うための１つの説明シナリオは、例えば複数のシナリオデータ８４によって構成されており、大本の説明シナリオにはシナリオデータ８４の遷移順序が記述されている。シナリオデータ８４の遷移は１本道であってもよいし、途中で、例えば挙手認識による観客Ａの反応によって遷移が分岐したりしてもよい。シナリオデータ８４には、所定の箇所から観客の全体を見渡して説明を行う態様を指定するシナリオデータＡ、観客の一部に接近して説明を行う態様を指定するシナリオデータＢ、ステージ奥に設置された説明対象（例えばスクリーン）を指し示して説明を行う態様を指定するシナリオデータＣ等、複数のものが記憶部８０に格納される。シナリオ選択部９３は、例えば、シナリオデータ８４に従って、各シナリオデータを順次選択する。
【００３２】
図４〜６は、ロボット１がシナリオデータ８４を実行することで実現される説明の形態を例示した図である。図４は、シナリオデータＡが実行されることで実現される説明の形態を例示した図である。シナリオデータＡが実行されると、ロボット１は、例えばステージＳＴの中央部に立ち、観客Ａの全体を見渡して説明を行う。図４における矩形枠内は、シナリオデータＡが実行された場合のロボット１の姿勢の一例である。
【００３３】
図５は、シナリオデータＢが実行されることで実現される説明の形態を例示した図である。シナリオデータＢが実行されると、ロボット１は、例えば観客Ａの一部に接近して、目前にいる観客Ａに顔向けをしながら説明を行う。図５における矩形枠内は、シナリオデータＢが実行された場合のロボット１の姿勢の一例である。
【００３４】
図６は、シナリオデータＣが実行されることで実現される説明の形態を例示した図である。シナリオデータＣが実行されると、ロボット１は、例えばステージＳＴの奥側に設置されたスクリーンＳＣを指し示しながら説明を行う。図６における矩形枠内は、シナリオデータＣが実行された場合のロボット１の姿勢の一例である。
【００３５】
動作モード決定部９４は、シナリオ選択部９３により選択されたシナリオデータ８４を用いてシナリオ／動作モード対応テーブル８５を検索し、ロボット１の動作モードを選択する。図７は、シナリオデータ８４と、シナリオ／動作モード対応テーブル８５との関係を説明するための図である。図示するように、シナリオデータには、音声内容、ジェスチャ、スクリーン画像、停止と移動のどちらを行うか、といった付随情報が付与されている。そして、動作モードとは、立ち位置と、視線配分の態様との双方を指定する情報である。
【００３６】
シナリオデータＡが実行される場合、ステージ中央で停止し、且つ視線配分モード（１）で視線配分を行う動作モードが選択される。各視線配分モードの詳細については後述する。また、シナリオデータＡからシナリオデータＢへの遷移状態では、ステージ前方に移動し、且つ視線配分モード（２）で視線配分を行う動作モードが選択される。また、シナリオデータＢが実行される場合、ステージ前方で停止し、且つ視線配分モード（３）で視線配分を行う動作モードが選択される。また、シナリオデータＢからシナリオデータＣへの遷移状態では、説明対象の横に移動し、且つ視線配分モード（２）で視線配分を行う動作モードが選択される。また、シナリオデータＣが実行される場合、説明対象の横で停止し、且つ視線配分モード（１）（４）で視線配分を行う動作モードが選択される。また、シナリオデータＣからシナリオデータＡへの遷移状態では、ステージ中央に移動し、且つ視線配分モード（２）で視線配分を行う動作モードが選択される。
【００３７】
立ち位置決定部９５は、動作モードによって指定される立ち位置に従って、ロボット１の立ち位置を決定し、姿勢制御部９７に出力する。また、視線方向決定部９６は、動作モードによって指定される視線配分モードに従ってロボット１の視線方向を決定し、姿勢制御部９７に出力する。姿勢制御部９７は、立ち位置決定部９５および視線方向決定部９６から入力されたロボット１の立ち位置と視線方向を実現するように、アクチュエータ群６０を制御する。音声制御部９８は、シナリオデータ８４に付随する音声を出力するように、スピーカ７０を制御する。
【００３８】
［動作モード］
以下、各動作モードにおけるロボット１の挙動について、より詳細に説明する。本実施形態におけるロボット１の挙動は、以下の知見に基づいている。まず、観客の注意を効果的に惹きつけるためには、以下の条件が必要であると考えられる。（１）観客全員に疎外感を与えない（２）観客を説明に引き込む（３）説明対象に観客の興味を誘導する。ここで、ロボット１が説明する内容に合わせて、立ち位置や視線配分の態様を適切に選択しないと、観客が説明内容に集中してくれなかったり、疎外感を感じて途中退場してしまったりするという知見が得られている。従って、観客全体を万遍なく見回す場合、素早く観客全体を見回したり、じっくり一人ひとりの顔を順に見つめながら観客全体を見回すなど、説明内容やシーン、また観客の位置分布に応じて、見回し方をコントロールするのが好ましい。このとき、以下の３点について両立させる必要がある。（１）スピード（見回しの所要時間、一人ひとりを見つめる時間）のコントロール（２）（１）の条件下で、観客の分布範囲全体を見回す（３）説明全体を通じて、観客全員に万遍なく視線配分する。また、ロボット１が観客に接近して説明する場合、一部の観客に接近して説明していると、離れた場所の聴衆が疎外感を感じるため、説明全体を通じて、観客全体に対して公平に接近する必要がある。また、説明途中で観客が増減して分布が変わった場合でも、それに合わせて万遍なく接近する位置を選択することが好ましい。これらの条件のうち少なくとも一部を満たすことで、観客の注意を効果的に惹きつけることができると考えられる。
【００３９】
［観客の全体を見渡して説明］
観客の全体を見渡して説明するシナリオデータＡが実行される際に指定される視線配分モード（１）とは、ある観客に視線方向を向けてから一定時間、その観客に視線方向を向け続け、一定時間が経過すると他の観客に視線方向を向けるというものである。ここで、「視線方向を向ける」とは、ロボット１の頭部１０の正対方向に観客がいることを意味してもよいし、黒目に相当する部材が駆動可能なロボットであれば、文字通り黒目を駆動して視線を向けることを意味してもよい。本実施形態では、観客にロボット１の頭部１０の正対方向を向けることを意味するものとする。
【００４０】
観客の全体を見渡して説明するという動作は、例えば、ステージ中央に前進、観客全体への問いかけの発話、その他の説明という動作を含む。ステージ中央に前進するときにロボット１は、前進に要する所要時間の間、観客の端から端までを見渡す動作を行う。
【００４１】
図８は、観客全体に対して説明する場面を説明するための図である。視線配分モード（１）において、視線方向決定部９６は、まず、シナリオデータ８４に付随する音声内容を参照し、問いかける内容の発話に要する時間Ｔを取得する。そして、視線方向決定部９６は、時間Ｔを、一人あたりの視線滞留時間ｔで除算して、視線方向を向ける観客Ａの数ｎを決定する。視線滞留時間ｔは、固定値（ｔ＝３［ｓｅｃ］程度）として計算してもよいし、変動値としてもよい。例えば、視線方向決定部９６は、Ｔ＝１２［ｓｅｃ］、ｔ＝３［ｓｅｃ］であれば、１２／３＝４人の観客Ａに視線方向を向けると決定する。
【００４２】
次に、視線方向決定部９６は、観客Ａが分布する領域Ｓを認識し、領域Ｓを、各分割領域内の観客Ａが同じ人数となるように、上記決定した視線方向を向ける観客Ａの数ｎで分割する。これによって、説明全体を通じて、観客Ａの間で視線配分される機会を均等にし、それぞれの観客Ａ間での平等感を向上させることができる。上記の例では、ｎ＝４であるため、領域Ｓを分割領域Ｓ１〜Ｓ４に分割する。そして、視線方向決定部９６は、分割領域Ｓ１内の観客Ａに視線を向けると、次に分割領域Ｓ１以外の分割領域内の観客Ａに視線を向けるというように、視線を向ける先の観客Ａが属する分割領域を順次切り替える。例えば、視線方向決定部９６は、分割領域Ｓ１→Ｓ２→Ｓ３→Ｓ４というように、左側から右側に向けて、或いは、この逆に右側から左側に向けて分割領域を選択し、選択した分割領域の中から、視線を向ける観客Ａを選択する。また、これに限らず視線方向決定部９６は、ランダムに分割領域を選択してもよい。
【００４３】
視線方向決定部９６は、選択した分割領域内で視線方向を向ける観客Ａを、累積時間データ８６を参照し、累積時間が少ない観客Ａを優先して選択する。図２に示すように、累積時間データ８６は、顔認識等の手法により識別される観客Ａの識別情報（観客ＩＤ）と、その観客Ａについての累積時間が対応付けられたデータである。累積時間データ８６は、シナリオデータ８４の中でどのシナリオデータが実行されているかに拘わらず、１回の説明を通じて累積して計算される。これにより、ロボット１は、観客間での平等感を向上させることができる。
【００４４】
ここで、累積時間の計算は、現に視線方向を向けている観客Ａｔだけでなく、その観客Ａに対してロボット１を基準とした方位が所定の角度範囲内（例えばプラスマイナス１０度以内）の観客Ａｓについて、観客Ａｔに対して加算する累積時間よりも少ない時間を、加算するようにしてもよい。図９は、現に視線方向を向けている観客Ａｔの近傍にいる観客Ａｓに対して累積時間を加算する処理を説明するための図である。図示するように、観客ＩＤ＝０００２の観客Ａに３［ｓｅｃ］の間、視線方向を向けた場合、例えば３［ｓｅｃ］の半分の１．５［ｓｅｃ］を累積時間に加算してよい。
【００４５】
更に、視線方向決定部９６は、大きく視線方向を変化させてから視線方向を向けた観客に対して、累積時間を通常よりも大きく重み付けして加算してもよい。こうすれば、わざわざ頭部１０を振って視線方向を向けてくれたと感じることが想定される観客に対して、累積時間が大きく加算されることになり、観客間の平等感を高めることができる。また、視線方向決定部９６は、ロボット１からの距離が近い観客に対し、同じ視線方向を向けた時間に対する累積時間の加算を大きくしてもよい。この場合、例えば、所定の角度範囲内において、ロボットの視線方向に近い角度にいる観客ほど重みを大きくする。ここで、ロボット１の視線方向上に存在する観客Ａであって、視線方向を向けている観客Ａｔとは別の観客Ａについては、角度差０°でも観客Ａｔよりも重みを小さくするようにする。例えば、同一方向上に大人と子供が重なっている場合もありうるからである。また、重み付けは、パン角とチルト角の双方を考慮して行ってもよい。
【００４６】
また、視線方向決定部９６は、異なる分割領域にいる観客同士であっても、位置が近い観客が存在することを考慮し、現に視線方向を向けている観客（以下、観客Ａｔ）に対してロボット１を基準とした方位が所定の角度範囲内（例えばプラスマイナス１０度以内）の観客（以下、観客Ａｓ）には、観客Ａｔに続いて、視線方向を向けないようにしてよい。こうすれば、連続して同じ観客ばかりに視線方向を向けているという印象を与えずに済む。
【００４７】
また、視線方向決定部９６は、問いかける内容でない発話を行う場面では、観客を端から端まで１５〜２０［ｓｅｃ］程度で見渡し、その間、上記と同様の一人あたりの視線滞留時間ｔの間、一人の観客に視線方向を向ける。係る動作は、ロボット１が所定のジェスチャをするときに中断されてよく、中断からの再開時には、中断前の状態が引き継がれる。ここで、ジェスチャの内容は、説明の内容（ロボット１自身に注目させたいのか、スクリーンＳＣに注目させたいのか）に応じて種類を異ならせてよい。例えば大切な説明をするためスクリーンＳＣに注目して欲しいときに、ロボット１が大きなジェスチャを行うと、観客の注目がロボット１に集中してしまうからである。また、ジェスチャの大小は、観客の盛り上がり具合に応じて変化させてよい。盛り上がり具合は、笑い声や歓声、拍手の大きさ、挙手のスピード等によって数値化される。
【００４８】
［観客の一部に接近して説明］
観客の一部に接近して説明するシナリオデータＢが実行される場合、立ち位置決定部９５は、以下の処理を行う。図１０は、観客の一部に接近して説明する場面を説明するための図である。立ち位置決定部９５は、まず、観客Ａが分布する領域Ｓを認識し、領域Ｓを、各分割領域の幅が所定距離（例えば２．５［ｍ］程度）以下となるように、均等に分割する。そして、立ち位置決定部９５は、注視回数ヒストグラム８７を参照し、対応する投影回数の最も少ない分割領域内の観客Ａに接近するように立ち位置を定める。
【００４９】
ここで、注視回数ヒストグラム８７とは、例えば、シナリオデータＢが実行されている間に、各観客に視線方向を向けた回数を、所定の軸上に投影してカウントしたデータである。図１０において、ステージＳＴの後端部に沿った直線ｘが、所定の軸の一例である。また、これに代えて、ステージＳＴの前端部に沿った曲線を所定の軸としてもよいし、ステージ上のある点を中心とした円弧を所定の軸としてもよい。更に、注視回数ヒストグラム８７は、実行されているシナリオデータに拘わらず、各観客に視線方向を向けた回数を所定の軸上に投影してカウントしたデータであってもよい。また、注視回数ヒストグラム８７に代えて、シナリオデータＢが実行されている間に、各観客に視線方向を向けた累積時間を、所定の軸上に投影してカウントした注視時間ヒストグラムを用いてもよい。
【００５０】
図１０の例では、注視回数ヒストグラム８７のうち分割領域Ｓ１に対応する部分のカウント数が、分割領域Ｓ２に対応する部分のカウント数よりも少ないため、立ち位置決定部９５は、分割領域Ｓ１内の観客Ａに接近して説明を行うと決定する。これにより、ロボット１は、観客間での平等感を向上させることができる。
【００５１】
ここで、観客分布が変動した場合について説明する。図１１は、観客の一部に接近して説明する場面の他の例を説明するための図である。図示するように、新たな観客Ａが流入して観客分布Ｓが変動した場合、立ち位置決定部９５は、観客Ａが分布する領域Ｓを再認識し、領域Ｓを、各分割領域の幅が所定距離以下となるように、均等に分割する。図１１の例では、領域Ｓを２分割したのでは各分割領域の幅が所定距離を超えるため、領域Ｓを３分割して分割領域Ｓ１〜Ｓ３を設定する。この場合、新たに設定された分割領域Ｓ１には、注視回数ヒストグラム８７上でカウント数が蓄積されていないため、立ち位置決定部９５は、分割領域Ｓ１内の観客Ａに接近して説明を行うと決定する。これにより、ロボット１は、時々刻々と変動する観客Ａの分布に対応した動作を行うことができる。
【００５２】
なお、シナリオデータＢが実行される場合においても、観客Ａｔに視線方向を向けた場合、ロボット１を基準とした方位が所定の角度範囲内の観客Ａｓについて、観客Ａｔに対して加算するカウント数よりも少ない数を、注視回数ヒストグラム８７に加算するようにしてもよい。図１２は、現に視線方向を向けている観客Ａｔの近傍にいる観客Ａｓに対して注視回数ヒストグラム８７にカウント数を加算する処理を説明するための図である。図示するように、観客Ａｔに視線方向を向けた場合、例えば０．５回分のカウント数を、注視回数ヒストグラム８７の観客Ａｓに対応する部分に加算してよい。
【００５３】
シナリオデータＢが実行される場合に指定される視線配分モード（３）とは、ロボット１が接近した分割領域内の観客に対し、前述した「累積時間」の少ない観客から順に、所定時間ｔ（例えば３［ｓｅｃ］）ずつ視線方向を向けるものである。視線方向決定部９６は、ロボット１が接近した分割領域内で視線方向を向ける観客を、累積時間データ８６を参照し、累積時間が少ない観客から順に選択する。
【００５４】
［説明対象を指し示して説明］
シナリオデータＣが選択されると、視線方向決定部９６は、視線配分モード（１）または（４）で視線方向を決定する。視線配分モード（１）は前述したものと同じであり、視線配分モード（４）は、説明対象（スクリーンＳＣ）を見続けるものである。
【００５５】
［遷移状態］
シナリオデータ間の遷移状態において、視線方向決定部９６は、移動に要する所要時間の間、観客の端から端までを見渡す動作を行う（視線配分モード（２））。ここで、シナリオデータＢに遷移する場合には、観客の端から端までに代えて、接近するエリアの端から端までを見渡してもよい。
【００５６】
［動作フロー］
図１３は、本実施形態の制御部９０により実行される処理の流れの一例を示すフローチャートである。まず、シナリオ選択部９３がシナリオデータを読み込み（ステップＳ２００）、動作モード決定部９４が動作モードを決定する（ステップＳ２０２）。次に、環境認識部９２が、観客の位置を示す情報を取得する（ステップＳ２０４）。次に、立ち位置決定部９５と視線方向決定部９６が、ロボット１の立ち位置と視線配分モードをそれぞれ決定する（ステップＳ２０６）。そして、姿勢制御部９７と音声制御部９８が、ステップＳ２０６で決定されたロボット１の立ち位置と視線配分モード、およびシナリオデータに付随する音声内容に基づいて、アクチュエータ群６０とスピーカ７０をそれぞれ制御する（ステップＳ２０８）。そして、制御部９０は、シナリオデータの全てが実行されたか否かを判定し、シナリオデータの全てが実行されていなければステップＳ２００に処理を戻し、シナリオデータの全てが実行されていれば本フローチャートの処理を終了する（ステップＳ２１０）。
【００５７】
以上説明した本実施形態のロボット１、およびロボット１の制御方法によれば、環境認識部９２により取得される観客の位置に基づいて、ロボット１の立ち位置を実現するように、アクチュエータ群６０を制御するため、観客の注意を効果的に惹きつけることができる。
【００５８】
なお、以上説明したロボット１の制御部９０の機能のうち、一部の機能が、ロボット１の外部に備えられてもよい。
【００５９】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【００６０】
１…ロボット、１０…頭部、２０…ボディ部、２２…首関節部、２６…腰関節部、２８…股関節部、３０…腕部、５０…脚部、６０…アクチュエータ群、６２…ロータリーエンコーダ群、７０…スピーカ、８０…記憶部、８４…シナリオデータ、９０…制御部、１２０…外部カメラ
【図１】
0005948359.tif 000002
【図２】
0005948359.tif 000003
【図３】
0005948359.tif 000004
【図４】
0005948359.tif 000005
【図５】
0005948359.tif 000006
【図６】
0005948359.tif 000007
【図７】
0005948359.tif 000008
【図８】
0005948359.tif 000009
【図９】
0005948359.tif 000010
【図１０】
0005948359.tif 000011
【図１１】
0005948359.tif 000012
【図１２】
0005948359.tif 000013
【図１３】
0005948359.tif 000014