(57)【特許請求の範囲】
【請求項１】
互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および前記自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、前記各プログラムに対応する識別子を送信して該当プログラムを実行させるコミュニケーションロボット用制御システムであって、
複数の前記自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の前記感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段、
複数の前記自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示手段、
複数の前記感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示手段、
前記第１表示手段によって表示されたリストから利用者の操作に応じて行動を決定する第１決定手段、
前記第２表示手段によって表示されたリストから利用者の操作に応じて感情を決定する第２決定手段、
前記第２決定手段によって決定された感情が前記第１決定手段によって決定された行動に適するか否かを判定する判定手段、
前記判定手段により前記第２決定手段が決定した感情が前記第１決定手段が決定した行動に適すると判定されたときに、前記第１記憶手段に記憶されている前記第１決定手段が決定した行動に対応する前記自発的行動プログラムの行動識別子と、前記第１記憶手段に記憶されている前記第２決定手段が決定した感情に対応する前記感情補正変換プログラムの感情識別子とを記憶する第２記憶手段、および
利用者の操作に応じて前記第２記憶手段における行動識別子と感情識別子との記憶の履歴を前記コミュニケーションロボットに送信する第１送信手段を備える、コミュニケーションロボット用制御システム。
【請求項２】
前記判定手段により前記第２決定手段が決定した感情が前記第１決定手段が決定した行動に適すると判定されたときに、前記第１記憶手段に記憶されている前記第１決定手段が決定した行動に対応する前記自発的行動プログラムに対応する行動識別子と、前記第１記憶手段に記憶されている前記第２決定手段が決定した感情に対応する前記感情補正変換プログラムに対応する感情識別子とを前記コミュニケーションロボットに送信する第２送信手段をさらに備える、請求項１記載のコミュニケーションロボット用制御システム。
【請求項３】
前記第１表示手段は、複数の前記自発的行動プログラムに対応する行動を選択可能なリストを、前記コミュニケーションロボットの部位ごとに分類して表示する請求項１または２記載のコミュニケーションロボット用制御システム。
【請求項４】
前記判定手段により前記第２決定手段が決定した感情が前記第１決定手段が決定した行動に適さないと判定されたとき、前記第２決定手段が前記第２表示手段によって表示されたリストから感情を決定するための利用者の再操作を促す操作促し手段をさらに備える、請求項１ないし３のいずれかに記載のコミュニケーションロボット用制御システム。
【請求項５】
互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および前記自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、前記各プログラムに対応する識別子を送信して該当プログラムを実行させ、複数の前記自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の前記感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段を備えるコミュニケーションロボット用制御システムにおいて実行される行動支援プログラムであって、
前記コミュニケーションロボット用制御システムのプロセッサに、
複数の前記自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示ステップ、
複数の前記感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示ステップ、
前記第１表示ステップによって表示されたリストから利用者の操作に応じて行動を決定する第１決定ステップ、
前記第２表示ステップによって表示されたリストから利用者の操作に応じて感情を決定する第２決定ステップ、
前記第２決定ステップによって決定された感情が前記第１決定手段によって決定された行動に適するか否かを判定する判定ステップ、
前記判定ステップにより前記第２決定ステップにおいて決定した感情が前記第１決定ステップにおいて決定した行動に適すると判定されたときに、前記第１記憶手段に記憶されている前記第１決定ステップにおいて決定した行動に対応する前記自発的行動プログラムの行動識別子と、前記第１記憶手段に記憶されている前記第２決定ステップにおいて決定した感情に対応する前記感情補正変換プログラムの感情識別子とを第２記憶手段に記憶する記憶ステップ、および
利用者の操作に応じて前記記憶ステップにおける行動識別子と感情識別子との前記第２記憶手段への記憶の履歴を前記コミュニケーションロボットに送信する送信ステップを実行させる行動入力支援プログラム。
【請求項６】
互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および前記自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、前記各プログラムに対応する識別子を送信して該当プログラムを実行させ、複数の前記自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の前記感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段を備えるコミュニケーションロボット用制御システムにおいて実行される行動入力支援プログラムを記憶した記憶媒体であって、
前記行動入力支援プログラムは、前記コミュニケーションロボット用制御システムのプロセッサに、
複数の前記自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示ステップ、
複数の前記感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示ステップ、
前記第１表示ステップによって表示されたリストから利用者の操作に応じて行動を決定する第１決定ステップ、
前記第２表示ステップによって表示されたリストから利用者の操作に応じて感情を決定する第２決定ステップ、
前記第２決定ステップによって決定された感情が前記第１決定手段によって決定された行動に適するか否かを判定する判定ステップ、
前記判定ステップにより前記第２決定ステップにおいて決定した感情が前記第１決定ステップにおいて決定した行動に適すると判定されたときに、前記第１記憶手段に記憶されている前記第１決定ステップにおいて決定した行動に対応する前記自発的行動プログラムの行動識別子と、前記第１記憶手段に記憶されている前記第２決定ステップにおいて決定した感情に対応する前記感情補正変換プログラムの感情識別子とを第２記憶手段に記憶する記憶ステップ、および
利用者の操作に応じて前記記憶ステップにおける行動識別子と感情識別子との前記第２記憶手段への記憶の履歴を前記コミュニケーションロボットに送信する送信ステップを実行させる、行動入力支援プログラムを記憶した記憶媒体。
【請求項７】
互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および前記自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、前記各プログラムに対応する識別子を送信して該当プログラムを実行させ、複数の前記自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の前記感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段を備えるコミュニケーションロボット用制御システムにおいて実行される行動入力支援方法であって、
複数の前記自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示ステップ、
複数の前記感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示ステップ、
前記第１表示ステップによって表示されたリストから利用者の操作に応じて行動を決定する第１決定ステップ、
前記第２表示ステップによって表示されたリストから利用者の操作に応じて感情を決定する第２決定ステップ、
前記第２決定ステップによって決定された感情が前記第１決定手段によって決定された行動に適するか否かを判定する判定ステップ、
前記判定ステップにより前記第２決定ステップにおいて決定した感情が前記第１決定ステップにおいて決定した行動に適すると判定されたときに、前記第１記憶手段に記憶されている前記第１決定ステップにおいて決定した行動に対応する前記自発的行動プログラムの行動識別子と、前記第１記憶手段に記憶されている前記第２決定ステップにおいて決定した感情に対応する前記感情補正変換プログラムの感情識別子とを第２記憶手段に記憶する記憶ステップ、および
利用者の操作に応じて前記記憶ステップにおける行動識別子と感情識別子との前記第２記憶手段への記憶の履歴を前記コミュニケーションロボットに送信する送信ステップを含む、行動入力支援方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はコミュニケーションロボット用制御システム、行動入力支援プログラム、プログラムを記憶した記憶媒体、および行動入力支援方法に関し、特にたとえば、音声や身振りによって人とコミュニケーションするコミュニケーションロボットの行動入力を支援する、コミュニケーションロボット用制御システム、行動入力支援プログラム、プログラムを記憶した記憶媒体、および行動入力支援方法に関する。
【背景技術】
【０００２】
従来のロボットの制御技術においては、一般的にいって、単なる一定の動作を行わせるような入力を受け付けてその入力を再生することによって、その一定動作をロボットに再現させるようなシステムや、産業用のマニピュレータに非常によく使われるようにティーチング・プレイバック方式による教示技術等が存在していた。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
一方、音声や身振りによって人間とコミュニケーションを図ることを指向したコミュニケーションロボットにおいては、より自然なコミュニケーションを実現するために、自発的に行うコミュニケーションのための一定の動作だけでなく、対話相手である人間の行動に応じた反応的な動作を行うことが必要となってくる。また、人間は感情を持ち、同じ行動であっても感情によって表現が変わってくるので、コミュニケーションロボットにおいては、感情に応じた動作を行うことも必要である。しかしながら、従来技術は、自発的な一定動作を入力するものに過ぎず、人間の行動に応じた反応動作や感情的な動作も含めてロボットに実行させるための行動入力を支援するシステムは存在しなかった。
【０００４】
それゆえに、この発明の主たる目的は、新規な、コミュニケーションロボット用制御システム、行動入力支援プログラム、プログラムを記憶した記憶媒体、および行動入力支援方法を提供することである。
【０００５】
この発明の他の目的は、反応動作を含んだ対話行動を簡単に入力し生成できる、コミュニケーションロボット用制御システム、行動入力支援プログラム、プログラムを記憶した記憶媒体、および行動入力支援方法を提供することである。
【０００６】
この発明の更なる目的は、感情的な動作を含んだ対話行動を簡単に入力し生成できる、コミュニケーションロボット用制御システム、行動入力支援プログラム、プログラムを記憶した記憶媒体、および行動入力支援方法を提供することである。
【課題を解決するための手段】
【０００７】
請求項１の発明にしたがったコミュニケーションロボット制御システムは、  互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、各プログラムに対応する識別子を送信して該当プログラムを実行させるコミュニケーションロボット用制御システムであって、複数の自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段、複数の自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示手段、複数の感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示手段、第１表示手段によって表示されたリストから利用者の操作に応じて行動を決定する第１決定手段、第２表示手段によって表示されたリストから利用者の操作に応じて感情を決定する第２決定手段、第２決定手段によって決定された感情が第１決定手段によって決定された行動に適するか否かを判定する判定手段、判定手段により第２決定手段が決定した感情が第１決定手段が決定した行動に適すると判定されたときに、第１記憶手段に記憶されている第１決定手段が決定した行動に対応する自発的行動プログラムの行動識別子と、第１記憶手段に記憶されている第２決定手段が決定した感情に対応する感情補正変換プログラムの感情識別子とを記憶する第２記憶手段、および利用者の操作に応じて記憶手段における行動識別子と感情識別子との記憶の履歴を前記コミュニケーションロボットに送信する第１送信手段を備える、コミュニケーションロボット用制御システムである。
【０００８】
請求項１の発明では、自発的な行動だけでなく、対話相手である人間の行動に応じた反射的行動（反応動作）を含む複数の行動に関する情報が予め記憶手段に記憶されている。この予め準備された複数の行動に関する情報に基づいて、表示手段は複数の行動のリストをユーザに選択可能に表示する。つまり、このリストには反射的行動も選択可能に表示されている。ユーザはこの表示された行動のリストの中からコミュニケーションロボットに実行させる行動を選択することができ、行動決定手段は、ユーザの操作に応じて、行動のリストからコミュニケーションロボットに実行させる行動を決定する。そして、生成手段は、決定された行動の履歴に基づいて、コミュニケーションロボットに実行させる対話行動のための再生動作情報を生成する。したがって、請求項１の発明によれば、ユーザは、反射的行動を含んだ行動のリストからコミュニケーションロボットに実行させたい行動を選択していくことによって、対話行動を構成する１つ１つの行動を簡単に入力することができ、反射的行動を含んだ対話行動の再生動作情報を簡単に生成することができる。
【０００９】
請求項２の発明に従ったコミュニケーションロボット用制御システムは、請求項１の発明に従属し、表示手段は、さらに複数の感情表現のリストをユーザに選択可能に表示し、行動決定手段は、さらに、ユーザの操作に応じて、感情表現のリストから、コミュニケーションロボットに実行させる行動に付与する感情表現を決定し、生成手段は、行動決定手段によって決定された行動および感情表現の履歴に基づいて、再生動作情報を生成する。
【００１２】
判定手段は、利用者によって選択された感情表現が、選択された行動に対して適するか否かを判定する。行動に対する感情表現の付与は、この判定結果に従って行われる。つまり、感情表現が行動に対して不適当であると判断されたときは、当該行動に対する当該感情表現の付与が許可されない。したがって、行動そのものの感情表現と追加する感情表現とが矛盾することを防止できる。
【００１３】
請求項２の発明にしたがったコミュニケーションロボット用制御システムは、請求項１の発明に従属し、判定手段により第２決定手段が決定した感情が第１決定手段が決定した行動に適すると判定されたときに、第１記憶手段に記憶されている第１決定手段が決定した行動に対応する自発的行動プログラムに対応する行動識別子と、第１記憶手段に記憶されている第２決定手段が決定した感情に対応する感情補正変換プログラムに対応する感情識別子とをコミュニケーションロボットに送信する第２送信手段をさらに備える。
【００１４】
請求項２の発明では、第２送信手段は、決定された行動に対応する自発的行動プログラムの行動識別子と決定された感情に対応する感情補正変換プログラムに対応する感情識別子とをコミュニケーションロボットに送信する。このコミュニケーションロボットでは、この行動識別子に対応する自発的行動プログラムに対応する行動が感情識別子に対応する感情補正変換プログラムで補正されて実行されることとなる。したがって、利用者は、コミュニケーションロボットの実際の動作を確認することができ、コミュニケーションロボットの一連の行動（対話行動）の作成を容易に行うことができる。
【００１５】
請求項３の発明にしたがったコミュニケーションロボット用制御システムは、請求項１または２の発明に従属し、第１表示手段は、複数の自発的行動プログラムに対応する行動を選択可能なリストを、コミュニケーションロボットの部位ごとに分類して表示する。
【００１６】
請求項３の発明では、行動を選択可能なリストが部位ごとに分類して表示されるので、利用者に対して複数の行動を分かり易く提示できる。したがって、利用者は所望の行動の入力を容易に行うことができる。
【００１７】
請求項４の発明に従ったコミュニケーションロボット用制御システムは、請求項１ないし３のいずれかに従属し、判定手段により第２決定手段が決定した感情が第１決定手段が決定した行動に適さないと判定されたとき、第２決定手段が第２表示手段によって表示されたリストから感情を決定するための利用者の再操作を促す操作促し手段をさらに備える。
【００１９】
請求項４の発明に従った行動入力支援プログラムは、互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、各プログラムに対応する識別子を送信して該当プログラムを実行させ、複数の自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段を備えるコミュニケーションロボット用制御システムにおいて実行される行動支援プログラムであって、コミュニケーションプログラムのプロセッサに、複数の自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示ステップ、複数の感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示ステップ、第１表示ステップによって表示されたリストから利用者の操作に応じて行動を決定する第１決定ステップ、第２表示ステップによって表示されたリストから利用者の操作に応じて感情を決定する第２決定ステップ、第２決定ステップによって決定された感情が第１決定手段によって決定された行動に適するか否かを判定する判定ステップ、判定ステップにより第２決定ステップにおいて決定した感情が第１決定ステップにおいて決定した行動に適すると判定されたときに、第１記憶手段に記憶されている第１決定ステップにおいて決定した行動に対応する自発的行動プログラムの行動識別子と、第１記憶手段に記憶されている第２決定ステップにおいて決定した感情に対応する感情補正変換プログラムの感情識別子とを第２記憶手段に記憶する記憶ステップ、および利用者の操作に応じて記憶ステップにおける行動識別子と感情識別子との第２記憶手段への記憶の履歴をコミュニケーションロボットに送信する送信ステップを実行させる行動入力支援プログラムである。
【００２２】
請求項５の発明に従ったプログラムを記憶した記憶媒体は、互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、各プログラムに対応する識別子を送信して該当プログラムを実行させ、複数の自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段を備えるコミュニケーションロボット用制御システムにおいて実行される行動入力支援プログラムを記憶した記憶媒体であって、行動入力支援プログラムは、コミュニケーションロボット用制御システムのプロセッサに、複数の自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示ステップ、複数の感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示ステップ、第１表示ステップによって表示されたリストから利用者の操作に応じて行動を決定する第１決定ステップ、第２表示ステップによって表示されたリストから利用者の操作に応じて感情を決定する第２決定ステップ、第２決定ステップによって決定された感情が第１決定手段によって決定された行動に適するか否かを判定する判定ステップ、判定ステップにより第２決定ステップにおいて決定した感情が第１決定ステップにおいて決定した行動に適すると判定されたときに、第１記憶手段に記憶されている第１決定ステップにおいて決定した行動に対応する自発的行動プログラムの行動識別子と、第１記憶手段に記憶されている第２決定ステップにおいて決定した感情に対応する感情補正変換プログラムの感情識別子とを第２記憶手段に記憶する記憶ステップ、および利用者の操作に応じて記憶ステップにおける行動識別子と感情識別子との第２記憶手段への記憶の履歴をコミュニケーションロボットに送信する送信ステップを実行させる、行動入力支援プログラムを記憶した記憶媒体である。
【００２５】
請求項６に従った行動入力支援方法は、互いに異なる自発的行動を実行するための複数の自発的行動プログラム、および自発的行動プログラムによる行動を互いに異なる感情に応じて補正する複数の感情補正変換プログラムを記憶するコミュニケーションロボットに、各プログラムに対応する識別子を送信して該当プログラムを実行させ、複数の自発的行動プログラムのそれぞれに対応する複数の行動識別子、および複数の感情補正変換プログラムのそれぞれに対応する複数の感情識別子を記憶する第１記憶手段を備えるコミュニケーションロボット用制御システムにおいて実行される行動入力支援方法であって、複数の自発的行動プログラムに対応する行動を選択可能なリストを表示する第１表示ステップ、複数の感情補正変換プログラムに対応する感情を選択可能なリストを表示する第２表示ステップ、第１表示ステップによって表示されたリストから利用者の操作に応じて行動を決定する第１決定ステップ、第２表示ステップによって表示されたリストから利用者の操作に応じて感情を決定する第２決定ステップ、第２決定ステップによって決定された感情が第１決定手段によって決定された行動に適するか否かを判定する判定ステップ、判定ステップにより第２決定ステップにおいて決定した感情が第１決定ステップにおいて決定した行動に適すると判定されたときに、第１記憶手段に記憶されている第１決定ステップにおいて決定した行動に対応する自発的行動プログラムの行動識別子と、第１記憶手段に記憶されている第２決定ステップにおいて決定した感情に対応する感情補正変換プログラムの感情識別子とを第２記憶手段に記憶する記憶ステップ、および利用者の操作に応じて記憶ステップにおける行動識別子と感情識別子との第２記憶手段への記憶の履歴をコミュニケーションロボットに送信する送信ステップを含む、行動入力支援方法である。
【発明の効果】
【００３３】
この発明によれば、人間の行動に応じた反射的行動を含んだ複数の行動のリストを表示して、ユーザに選択させるようにしているので、コミュニケーションロボットに実行させる対話行動を簡単に入力し生成することができる。生成された対話行動には、自発的な行動だけでなく反射的行動も含まれるので、対話相手の行動に応じて反射的行動を起動させることができる。したがって、コミュニケーションロボットに、より自然で多様な対話行動を容易に実現させることができる。
【００３４】
また、行動のリストとともに行動に付与する感情表現のリストをさらに表示してユーザに選択させる場合には、感情的な動作を簡単に入力できるとともに、感情的な対話行動を簡単に入力して生成することができる。したがって、感情的な反応動作や感情的な自発的行動などが含まれた、より多様な対話行動をコミュニケーションロボットに容易に実現させることができる。
【００３５】
この発明の上述の目的，その他の目的，特徴および利点は、図面を参照して行う以下の実施例の詳細な説明から一層明らかとなろう。
【発明を実施するための最良の形態】
【００３６】
図１を参照して、この実施例のコミュニケーションロボット用制御システム（以下、単に「システム」とも言う。）１０は、コミュニケーションロボット（以下、単に「ロボット」とも言う。）１２の実行する対話行動の入力を支援するためのものである。コミュニケーションロボット１２は、音声および身振りを用いて人間１４とコミュニケーションを図ることを目的としたロボットである。
【００３７】
ここで、この実施例で適用されるロボット１２について詳細に説明する。図２を参照して、ロボット１２は、台車１６を含み、この台車１６の下面には、このロボット１２を自律移動させる車輪１８が設けられる。この車輪１８は、車輪モータ（ロボット１２の内部構成を示す図３において参照番号「７４」で示す。）によって駆動され、台車１６すなわちロボット１２を前後左右任意の方向に動かすことができる。なお、図示しないが、この台車１６の前面には、衝突センサ（図３において、参照番号「８２」で示す。）が取り付けられ、この衝突センサは、台車１６への人や他の障害物の接触を検知する。そして、ロボット１２の移動中に障害物との接触を検知すると、直ちに車輪１８の駆動を停止してロボット１２の移動を急停止させる。
【００３８】
なお、ロボット１２の背の高さは、この実施例では、人、特に子供に威圧感をあたえることがないように、１００ｃｍ程度とされている。ただし、この背の高さは任意に変更可能である。
【００３９】
台車１６の上には、多角形柱のセンサ取付パネル２０が設けられ、このセンサ取付パネル２０の各面には、超音波距離センサ２２が取り付けられる。この超音波距離センサ２２は、取付パネル２０すなわちロボット１２の周囲の主として人との間の距離を計測するものである。
【００４０】
台車１６の上には、さらに、その下部が上述の取付パネル２０に囲まれたロボット１２の胴体が直立するように取り付けられる。この胴体は下部胴体２４と上部胴体２６とから構成され、これら下部胴体２４および上部胴体２６は、連結部２８によって、連結される。連結部２８には、図示しないが、昇降機構が内蔵されていて、この昇降機構を用いることによって、上部胴体２６の高さすなわちロボット１２の高さを変化させることができる。昇降機構は、後述のように、腰モータ（図３において参照番号「７２」で示す。）によって駆動される。上で述べたロボット１２の身長１００ｃｍは、上部胴体２６をそれの最下位置にしたときの値である。したがって、ロボット１２の身長は１００ｃｍ以上にすることができる。
【００４１】
上部胴体２６のほぼ中央には、１つの全方位カメラ３０と、１つのマイク３２とが設けられる。全方位カメラ３０は、ロボット１２の周囲を撮影するもので、後述の眼カメラ５２と区別される。マイク３２は、周囲の音、とりわけ人の声を取り込む。
【００４２】
上部胴体２６の両肩には、それぞれ、肩関節３４Ｒおよび３４Ｌによって、上腕３６Ｒおよび３６Ｌが取り付けられる。肩関節３４Ｒおよび３４Ｌは、それぞれ３軸の自由度を有する。すなわち、肩関節３４Ｒは、Ｘ軸，Ｙ軸およびＺ軸のそれぞれの軸廻りにおいて上腕３６Ｒの角度を制御できる。Ｙ軸は、上腕３６Ｒの長手方向（または軸）に平行な軸であり、Ｘ軸およびＺ軸は、そのＹ軸に、それぞれ異なる方向から直交する軸である。肩関節３４Ｌは、Ａ軸，Ｂ軸およびＣ軸のそれぞれの軸廻りにおいて上腕３６Ｌの角度を制御できる。Ｂ軸は、上腕３６Ｌの長手方向（または軸）に平行な軸であり、Ａ軸およびＣ軸は、そのＢ軸に、それぞれ異なる方向から直交する軸である。
【００４３】
上腕３６Ｒおよび３６Ｌのそれぞれの先端には、肘関節３８Ｒおよび３８Ｌを介して、前腕４０Ｒおよび４０Ｌが取り付けられる。肘関節３８Ｒおよび３８Ｌは、それぞれ、Ｗ軸およびＤ軸の軸廻りにおいて、前腕４０Ｒおよび４０Ｌの角度を制御できる。
【００４４】
なお、上腕３６Ｒおよび３６Ｌならびに前腕４０Ｒおよび４０Ｌの変位を制御するＸ，Ｙ，Ｚ，Ｗ軸およびＡ，Ｂ，Ｃ，Ｄ軸では、「０度」がホームポジションであり、このホームポジションでは、上腕３６Ｒおよび３６Ｌならびに前腕４０Ｒおよび４０Ｌは下方向に向けられる。
【００４５】
また、図２では示していないが、上部胴体２６の肩関節３４Ｒおよび３４Ｌを含む肩の部分や上述の上腕３６Ｒおよび３６Ｌならびに前腕４０Ｒおよび４０Ｌには、それぞれ、タッチセンサが設けられていて、これらのタッチセンサは、人１４がロボット１２のこれらの部位に接触したかどうかを検知する。これらのタッチセンサも図３において参照番号８０で包括的に示す。
【００４６】
前腕４０Ｒおよび４０Ｌのそれぞれの先端には、手に相当する球体４２Ｒおよび４２Ｌがそれぞれ固定的に取り付けられる。なお、この球体４２Ｒおよび４２Ｌに代えて、この実施例のロボット１２と異なり指の機能が必要な場合には、人の手の形をした「手」を用いることも可能である。
【００４７】
なお、ロボット１２の形状・寸法等は適宜に設定されるが、他の実施例では、たとえば、上部胴体２６は、前面，背面，右側面，左側面，上面および底面を含み、右側面および左側面は表面が斜め前方に向くように形成してもよい。つまり、前面の横幅が背面の横幅よりも短く、上部胴体２６を上から見た形状が台形になるように形成されてもよい。このような場合、肩関節３４Ｒおよび３４Ｌは、右側面および左側面に、その表面が左右両側面とそれぞれ平行である左右の支持部を介して取り付けられる。そして、上腕３６Ｒおよび上腕３６Ｌの回動範囲は、これら左右側面または支持部の表面（取り付け面）によって規制され、上腕３６Ｒおよび３６Ｌは取り付け面を超えて回動することはない。しかし、左右側面の傾斜角，Ｂ軸とＹ軸との間隔，上腕３６Ｒおよび３６Ｌの長さ，ならびに前腕４０Ｒおよび４０Ｌの長さ等を適宜に設定すれば、上腕３６Ｒおよび３６Ｌは前方を越えてより内側まで回動できるので、たとえＷ軸およびＤ軸による腕の自由度がなくてもロボット１２の腕は前方で交差できる。したがって、腕の自由度が少ない場合でも正面に位置する人と抱き合うなどの密接なコミュニケーションを図ることができる。
【００４８】
上部胴体２６の中央上方には、首関節４４を介して、頭部４６が取り付けられる。この首関節４４は、３つの自由度を有し、Ｓ軸，Ｔ軸およびＵ軸の各軸廻りに角度制御可能である。Ｓ軸は首から真上に向かう軸であり、Ｔ軸およびＵ軸は、それぞれ、このＳ軸に対して異なる方向で直交する軸である。頭部４６には、人の口に相当する位置に、スピーカ４８が設けられる。スピーカ４８は、ロボット１２が、それの周囲の人に対して音声または声によってコミュニケーションを図るために用いられる。ただし、スピーカ４８は、ロボット１２の他の部位たとえば胴体に設けられてもよい。
【００４９】
また、頭部４６には、目に相当する位置に眼球部５０Ｒおよび５０Ｌが設けられる。眼球部５０Ｒおよび５０Ｌは、それぞれ眼カメラ５２Ｒおよび５２Ｌを含む。なお、右の眼球部５０Ｒおよび左の眼球部５０Ｌをまとめて眼球部５０といい、右の眼カメラ５２Ｒおよび左の眼カメラ５２Ｌをまとめて眼カメラ５２ということもある。眼カメラ５２は、ロボット１２に接近した人の顔や他の部分ないし物体等を撮影してその映像信号を取り込む。
【００５０】
なお、上述の全方位カメラ３０および眼カメラ５２のいずれも、たとえばＣＣＤやＣＭＯＳのように固体撮像素子を用いるカメラであってよい。
【００５１】
たとえば、眼カメラ５２は眼球部５０内に固定され、眼球部５０は眼球支持部（図示せず）を介して頭部４６内の所定位置に取り付けられる。眼球支持部は、２軸の自由度を有し、α軸およびβ軸の各軸廻りに角度制御可能である。α軸およびβ軸は頭部４６に対して設定される軸であり、α軸は頭部４６の上へ向かう方向の軸であり、β軸はα軸に直交しかつ頭部４６の正面側（顔）が向く方向に直交する方向の軸である。この実施例では、頭部４６がホームポジションにあるとき、α軸はＳ軸に平行し、β軸はＵ軸に平行するように設定されている。このような頭部４６において、眼球支持部がα軸およびβ軸の各軸廻りに回転されることによって、眼球部５０ないし眼カメラ５２の先端（正面）側が変位され、カメラ軸すなわち視線方向が移動される。
【００５２】
なお、眼カメラ５２の変位を制御するα軸およびβ軸では、「０度」がホームポジションであり、このホームポジションでは、図２に示すように、眼カメラ５２のカメラ軸は頭部４６の正面側（顔）が向く方向に向けられ、視線は正視状態となる。
【００５３】
図３には、ロボット１２の内部構成を示すブロック図が示される。図３に示すように、このロボット１２は、全体の制御のためにマイクロコンピュータまたはＣＰＵ５４を含み、このＣＰＵ５４には、バス５６を通して、メモリ５８，モータ制御ボード６０，センサ入力／出力ボード６２および音声入力／出力ボード６４が接続される。
【００５４】
メモリ５８は、図示しないが、ＲＯＭ，ＨＤＤやＲＡＭを含み、ＲＯＭやＨＤＤにはこのロボット１２を全体的に制御するためのプログラムおよび発話用音声データ等の各種データが予め書き込まれている。ＲＡＭは、一時記憶メモリとして用いられるとともに、ワーキングメモリとして利用される。
【００５５】
モータ制御ボード６０は、たとえばＤＳＰ(Digital Signal Processor)で構成され、各腕や頭部および眼球部等の各軸モータを制御する。すなわち、モータ制御ボード６０は、ＣＰＵ５４からの制御データを受け、右肩関節３４ＲのＸ，ＹおよびＺ軸のそれぞれの角度θｘ，θｙ，θｚを制御する３つのモータと右肘関節３８Ｒの軸Ｗの角度θｗを制御する１つのモータとの計４つのモータ（図３ではまとめて、「右腕モータ」として示す。）６６の回転角度を調節する。また、モータ制御ボード６０は、左肩関節３４ＬのＡ，ＢおよびＣ軸のそれぞれの角度θａ，θｂ，θｃを制御する３つのモータと左肘関節３８ＬのＤ軸の角度θｄを制御する１つのモータとの計４つのモータ（図３ではまとめて、「左腕モータ」として示す。）６８の回転角度を調節する。モータ制御ボード６０は、また、頭部４６のＳ，ＴおよびＵ軸のそれぞれの角度θｓ，θｔ，θｕを制御する３つのモータ（図３ではまとめて、「頭部モータ」として示す。）７０の回転角度を調節する。モータ制御ボード６０は、また、腰モータ７２、および車輪１８を駆動する２つのモータ（図３ではまとめて、「車輪モータ」として示す。）７４を制御する。さらに、モータ制御ボード６０は、右眼球部５０Ｒのα軸およびβ軸のそれぞれの角度を制御する２つのモータ（図３ではまとめて、「右眼球モータ」として示す。）７６の回転角度を調節し、また、左眼球部５０Ｌのα軸およびβ軸のそれぞれの角度を制御する２つのモータ（図３ではまとめて、「左眼球モータ」として示す。）７８の回転角度を調節する。
【００５６】
なお、この実施例の上述のモータは、車輪モータ７４を除いて、制御を簡単化するためにそれぞれステッピングモータまたはパルスモータであるが、車輪モータ７４と同様に、直流モータであってよい。
【００５７】
センサ入力／出力ボード６２も、同様に、ＤＳＰで構成され、各センサやカメラからの信号を取り込んでＣＰＵ５４に与える。すなわち、超音波距離センサ２２の各々からの反射時間に関するデータがこのセンサ入力／出力ボード６２を通して、ＣＰＵ５４に入力される。また、全方位カメラ３０からの映像信号が、必要に応じてこのセンサ入力／出力ボード６２で所定の処理が施された後、ＣＰＵ５４に入力される。眼カメラ５２からの映像信号も、同様にして、ＣＰＵ５４に与えられる。なお、この図３では、図２で説明したタッチセンサは、まとめて「タッチセンサ８０」として表され、それらのタッチセンサ８０からの信号がセンサ入力／出力ボード６２を介して、ＣＰＵ５４に与えられる。
【００５８】
スピーカ４８には音声入力／出力ボード６４を介して、ＣＰＵ５４から、合成音声データが与えられ、それに応じて、スピーカ４８からはそのデータに従った音声または声が出力される。そして、マイク３２からの音声入力が、音声入力／出力ボード６４を介して、ＣＰＵ５４に取り込まれる。
【００５９】
通信ＬＡＮボード８４も、同様に、ＤＳＰで構成され、ＣＰＵ５４から送られた送信データを無線通信装置８６に与え、無線通信装置８６から送信データを送信させる。また、通信ＬＡＮボード８４は無線通信装置８６を介してデータを受信し、受信データをＣＰＵ５４に与える。この実施例では、ロボット１２は無線ＬＡＮを介してシステム１０と通信する。
【００６０】
また、ＣＰＵ５４には、バス５６を介して、自発的行動データベース（ＤＢ）８８および反射的行動データベース（ＤＢ）９０が接続される。
【００６１】
ここで、反射的行動は、たとえばコミュニケーションの最中に対話相手の方に顔を向けたり、触られたらその触られた所を見たりするといった、対話相手である人間１４の行動に応じた反応的な動作のことをいう。人間同士のコミュニケーションにおいてはこのような反応動作がしばしば行われており、ロボット１２にも反応動作を実行させることによって、人間１４とのコミュニケーションをより自然かつ豊かなものとすることができる。一方、自発的行動は、たとえば自分から挨拶したり、辺りを見回したりするといった、自発的に行う動作のことであり、ここでは反射的行動以外の動作のことをいう。
【００６２】
自発的行動ＤＢ８８には、図４に示すように、自発的行動処理プログラム記憶領域が形成され、このロボット１２に自発的行動を行わせるための複数のプログラムが予め登録されている。たとえば、挨拶時に手を振る行動のためのプログラム、行進するように手を振る行動のためのプログラム、辺りをきょろきょろ見回す行動のためのプログラム、お辞儀をする行動のためのプログラム、まっすぐ見る行動のためのプログラム、「こんにちは」と発話する行動のためのプログラム、「ばいばい」と発話する行動のためのプログラム、ある場所へ移動する行動のためのプログラム等が格納されている。また、直接入力実行処理プログラムも格納されている。この直接入力実行処理プログラムは、登録されているプログラムにない動作をロボット１２に行わせるためのものであり、後述のようにシステム１０でユーザによって各軸の角度が直接入力された場合に、その入力された値に従った動作を行わせるためのものである。
【００６３】
反射的行動ＤＢ９０には、図５に示すように、反射的行動処理プログラム記憶領域が形成され、このロボット１２に反射的行動を行わせるための複数のプログラムが予め登録されている。たとえば、目の前に人が来たら「どいてね」と発話する行動のためのプログラム、触られたら触られた所を見る行動のためのプログラム、人の顔があれば人の顔の方を見る行動のためのプログラム等が格納されている。反射的行動は、上述のように反応動作であり、したがって、各反射的行動処理プログラムでは、反射的行動を実行させるための人間の特定の行動を検出することが前提条件として設定されている。
【００６４】
ロボット１２は、これら自発的行動ＤＢ８８および反射的行動ＤＢ９０に登録された個々の行動プログラムを実行していくことで、人間１４との対話行動ないしコミュニケーション行動を行う。
【００６５】
システム１０は、上述のようなロボット１２に実行させる対話行動の入力を支援するためのものであり、ＰＣやワークステーション等のようなコンピュータが適用される。システム１０は、たとえば、ＣＰＵ，ＲＯＭ，ＲＡＭ，ＨＤＤ，マウスやキーボード等の入力装置，ＬＣＤ等の表示装置，ロボット１２と通信するための無線通信装置等を含む。ＨＤＤには、行動入力支援のためのプログラムおよびデータ等が格納されていて、ＣＰＵはこのプログラム等に従ってＲＡＭに一時的なデータを生成しつつ処理を実行する。行動入力支援のためのプログラムおよびデータ等は、これらを記憶した種々の公知の情報記憶媒体からシステム１０のＨＤＤに格納され得るのは言うまでもない。
【００６６】
また、システム１０のＨＤＤには、図６に示すような行動リストテーブルが格納されている。この行動リストテーブルには、ロボット１２に実行させる一連の対話行動を構成する個々の行動ないし動作が登録されている。行動リストテーブルの各行動は、ロボット１２の自発的行動ＤＢ８８および反射的行動ＤＢ９０に登録されている各行動のプログラムに対応している。このシステム１０では、この行動リストテーブルに登録されている複数の行動の中から、行動を順に選択し指定していくことによって、ロボット１２に実行させる対話行動が作成される。
【００６７】
行動リストテーブルでは、各行動の識別子に関連付けて、たとえば、当該行動の実行される部位に関する情報，表示用のテキスト，および当該行動の属性を示す情報が登録される。行動の実行される部位は、たとえば右手，左手，頭部および発話に分類される。なお、ここでは、部位はロボット１２の動作を分かり易く分類するためのものであるので、発話も部位の１つとする。行動の属性は、その行動が自発的行動であるか反射的行動であるかを示す。各行動は、識別子によって、ロボット１２の自発的行動ＤＢ８８および反射的行動ＤＢ９０に登録されている各行動を実行するためのプログラムに対応付けられる。
【００６８】
図６の例では、たとえば、右手（上腕３６Ｒ，前腕４０Ｒ）の行動として、挨拶時の手を振る行動、行進するように手を振る行動等が登録されるとともに、直接入力による行動も登録されている。直接入力による行動は、ユーザによって直接入力された各軸（右手の場合はＸ，Ｙ，Ｚ，Ｗ軸）の角度データに従ってその部位を動作させるものである。この直接入力による行動は自発的行動に分類される。なお、その部位の行動を行わない場合に指定する「なし」も登録されている。左手（上腕３６Ｌ，前腕４０Ｌ）の行動としては、右手の行動と同様な行動が登録される。左手の直接入力による行動では、Ａ，Ｂ，Ｃ，Ｄ軸の角度データが入力される。また、頭部４６の行動としては、人の顔の方を見る（アイコンタクト）行動，触られた所を見る行動等の反射的行動や、辺りを見回す行動，お辞儀する行動，まっすぐ見る行動等の自発的行動が登録される。頭部の直接入力による行動では、Ｓ，Ｔ，Ｕ軸の角度データが入力される。また、発話行動としては、目の前に人が来たら「どいてね」と発話する行動等の反射的行動や、「こんにちは」と発話する行動，「ばいばい」と発話する行動等の自発的行動が登録される。
【００６９】
図７には、ロボット１２に実行させる行動を選択するための選択入力画面の一例が示される。この選択入力画面には、登録行動リストを表示する行動リスト欄９２が設けられる。行動リスト欄９２では、たとえば、右手，左手，頭部および発話等の部位ごとのリストボックスが表示され、各リストボックスでは、行動リストテーブルに基づいて、複数の行動がそれぞれの部位ごとに分類されて選択項目として文字で表示される。
【００７０】
リストボックスでは、マウス等でボタンを操作することによって、その部位の行動が複数表示され、ユーザはそのリストから１つの行動を選択することができる。つまり、登録されている自発的行動および反射的行動、ならびにその部位の行動なしを選択することができ、また、右手，左手および頭部については直接入力も選択することができる。このように、複数の行動を部位ごとに分類してリスト化し表示することによって、ユーザに対して複数の行動を分かり易く提示できるので、ユーザは所望の行動の入力を容易に行うことができる。
【００７１】
行動リスト欄９２の上側には、リストボックスで直接入力が指定されたときに各軸の角度を入力するための直接入力欄９４が設けられる。この図７の例では、マウス等でスライダ９４ａを目盛り９４ｂに沿って移動させることによって各軸の角度を指定することができる。たとえば左手の動作を直接入力によって指定する場合には、行動リスト欄９２において左手のリストボックスで直接入力を選択するとともに、直接入力欄９４においてＡ，Ｂ，Ｃ，Ｄ軸のスライダ９４ａをそれぞれ適宜の位置に設定することによって、各軸の角度を指定することができる。なお、各軸の角度の設定は、数値入力等によって行われてもよい。
【００７２】
また、行動リスト欄９２および直接入力欄９４の左側には、ロボット１２の動作を画像で表示するための画像欄９６が設けられる。この画像欄９６では、たとえばワイヤーフレームモデルで描かれたロボット１２の正面図，側面図，上面図，斜視図等が表示される。ユーザが行動リスト欄９２で行動を選択指定しまたは直接入力欄９４で角度を指定すると、この画像欄９６においてロボットがその動作をした状態の姿に変化される。したがって、ユーザは、選択した行動によってロボット１２が実際にどのような格好になるのかをこの画像欄９６で事前に確認することができる。
【００７３】
また、ユーザは行動リスト欄９２で行動を選択指定し、または直接入力欄９４で角度を指定した後、入力装置で決定ボタン９８を操作することによって、その選択指定した行動を、実際にロボット１２に実行させる行動として決定することができる。この実施例では、この選択決定された行動の実行指令がロボット１２に送信され、ロボット１２ではその行動のプログラムが処理されることによって、ロボット１２が実際にその行動を実行する。したがって、ユーザは、画像欄９６だけでなく、実際のロボット１２によって、決定した行動を確認することができる。
【００７４】
なお、図７の行動リスト欄９２では、移動行動を選択してその設定を行う部分を省略してある。また、この移動行動に関しては、その行動の性質上、画像欄９６での動作の表示も行われない。
【００７５】
ユーザは、この選択入力画面で行動の選択指定および決定を繰り返し行うことによって、ロボット１２に行わせる対話行動を作成していく。このような作成作業は、選択入力画面の画像欄９６の画像とともに、ロボット１２を実際に人間１４を相手に動作させることで確認しながら進めることができるので、対話行動の作成を大変容易に行うことができる。
【００７６】
また、このシステム１０では、選択決定された行動は、再生動作情報の生成のために、行動の入力履歴としてＲＡＭに一時記憶される。選択入力画面での作業が進められることによって、システム１０のＲＡＭには決定された一連の行動が入力履歴情報として蓄積される。そして、入力終了ボタン１００が操作されることよって、入力履歴に基づいてその対話行動を再生するための再生動作情報が生成される。生成された再生動作情報は、再生動作ＤＢ１０２（図１）に保存される。
【００７７】
また、この実施例のシステム１０では、再生動作ＤＢ１０２に登録された再生動作情報の中から実行すべき再生動作情報を指定し、その再生を指示することによって、再生動作情報の実行指令をロボット１２に送信する。これに応じて、ロボット１２ではその再生動作情報が再生されることによって、ユーザに入力された対話行動が実現される。
【００７８】
再生動作情報には、自発的行動だけでなく反射的行動も含まれているので、ロボット１２の実行する対話行動には、人間１４の行動に応じた反応動作も含まれることとなる。つまり、再生動作情報に従った行動を実行しているロボット１２に対して、対話相手である人間１４が、反射的行動を起動させる前提条件を満足するような行動をとった場合には、ロボット１２はその反射的行動を実行することとなり、人間１４に対してその人間１４の行動に応じた反応動作が提示される。したがって、より自然で多様な対話行動ないしコミュニケーション行動をロボット１２によって実現することができる。
【００７９】
図８にはシステム１０の動作の一例が示される。このシステム１０のＣＰＵは、ステップＳ１で、ユーザによる操作またはプログラム等に基づいて、無線通信装置を介してロボット１２に起動命令を送信する。ロボット１２では、この起動命令に応じて所定のプログラムが起動され、たとえばシステム１０からの指令データの送信を待機する状態にされる。
【００８０】
次に、ステップＳ３で、行動の入力を行うか否かが判断される。このステップＳ３で“ＹＥＳ”であれば、つまり、たとえばユーザの入力装置の操作によって行動の入力が指示された場合には、続くステップＳ５で、図７に示したような選択入力画面を表示装置に表示させる。
【００８１】
選択入力画面では、上述のように、ユーザの入力装置の操作に応じて、ロボット１２に実行させる行動が行動リスト欄９２または直接入力欄９４で指定されて決定ボタン９８で決定される。ユーザは、一連の対話行動の作成のために行動の選択指定および決定を繰り返し行い、入力終了ボタン１００を操作することで行動入力を終了することができる。
【００８２】
ステップＳ７では、反射的行動が選択されたか否かを判断する。具体的には、行動リストテーブルを参照して、決定された行動の属性が反射的行動であるか否かを判断する。このステップＳ７で“ＹＥＳ”であれば、続くステップＳ９で、選択された反射的行動の実行指令をロボット１２に送信する。送信される実行指令データは、たとえば選択された反射的行動を示す識別子等を含む。ロボット１２では、この実行指令に応じて、対応する反射的行動の処理プログラムが起動されて、その反射的行動が実行されることとなる。なお、図示はしていないが、決定された反射的行動は、入力履歴情報としてＲＡＭに一時記憶される。ステップＳ９を終了するとステップＳ７に戻る。
【００８３】
一方、ステップＳ７で“ＮＯ”であれば、ステップＳ１１で、自発的行動が選択されたか否かを判断する。具体的には、行動リストテーブルを参照して、決定された行動の属性が自発的行動であるか否かを判断する。このステップＳ１１で“ＹＥＳ”であれば、続くステップＳ１３で、選択された自発的行動の実行指令をロボット１２に送信する。送信される実行指令データは、たとえば選択された自発的行動を示す識別子等を含む。ロボット１２では、この実行指令に応じて、対応する自発的行動の処理プログラムが起動されて、その自発的行動が実行されることとなる。なお、既に述べたように、直接入力による行動はこの自発的行動に含まれる。直接入力による行動の場合には、送信される実行指令には、その識別子および入力された各軸の角度データ等が含まれる。また、図示はしていないが、決定された自発的行動は、入力履歴情報としてＲＡＭに一時記憶される。ステップＳ１３を終了するとステップＳ７に戻る。
【００８４】
また、ステップＳ１１で“ＮＯ”であれば、ステップＳ１５で、入力終了であるか否かを判断する。このステップＳ１５で“ＮＯ”であれば、ステップＳ７へ戻って処理を繰り返す。一方、ステップＳ１５で“ＹＥＳ”であれば、つまり、たとえば入力終了ボタン１００が操作された場合には、続くステップＳ１７で、入力履歴情報に基づいて再生動作データを生成して再生動作ＤＢ１０２に格納する。再生動作データの詳細は後述するが、再生動作データでは、たとえば、各行動は入力順にその識別子によって記述され、部位および属性等に関する情報を含み、また、直接入力による行動の場合には入力された角度データも含まれる。
【００８５】
ステップＳ１７を終了し、または、ステップＳ３で“ＮＯ”であれば、ステップＳ１９で、行動の再生であるか否かを判断する。このステップＳ１９で“ＹＥＳ”であれば、つまり、たとえばユーザの入力装置の操作によって行動の再生が指定された場合には、ステップＳ２１で、実行すべき再生動作データを再生動作ＤＢ１０２から読み出す。実行すべき再生動作データは、たとえば再生動作ＤＢ１０２に格納されている再生動作のリストを表示してユーザに選択させる。続いて、ステップＳ２３で、読み出した再生動作データの実行指令をロボット１２に送信する。ロボット１２では、この実行指令に応じて、再生動作データが再生されて、一連のコミュニケーション行動が実行されることとなる。
【００８６】
ステップＳ２３を終了し、または、ステップＳ１９で“ＮＯ”であれば、ステップＳ２５で、ユーザの入力装置の操作によって終了が指示されたか否かを判断し、“ＮＯ”であれば、ステップＳ３に戻り、一方、“ＹＥＳ”であれば、この入力支援のための処理を終了する。
【００８７】
図９には、システム１０によって生成され再生動作ＤＢ１０２に格納された再生動作データの一例が示される。再生動作データはシナリオのようなものであるが、自発的な動作だけでなく反応動作も含まれている。この図９の再生動作データ１は、たとえば客席の間から舞台に出て「こんにちは」と挨拶するビヘイビアを実行させるものである。なお、再生動作データは、たとえば各行動が実行順にその識別子によって記述される。この図９では示していないが、部位および属性等に関する情報も含まれ、また、直接入力による行動の場合には入力された角度データも含まれる。
【００８８】
この再生動作１では、舞台に到着するまでの行動，舞台での行動，および舞台から帰る行動が設定されている。まず、舞台に到着するまでの行動は、ドアを抜けて通路を移動する行動，行進するように手を振る行動および辺りをきょろきょろ見回す行動を含み、これらは自発的行動である。そして、移動する行動の反射的行動として、目の前に人が来たら「どいてね」と発話する行動が設定され、行進するように手を振る行動の反射的行動として、触られたら触られた所を見る行動が設定され、さらに、辺りをきょろきょろ見回す行動の反射的行動として、人の顔があれば人の顔の方を見る行動が設定されている。各行動に対応するプログラムは、舞台に到着するまで繰り返し処理される。したがって、ロボット１２は、単に移動，手振り，見回しといった自発的行動を実行するだけでなく、前提条件を満たすような人間の特定の行動を検知した場合にはその行動に応じた反応動作すなわち反射的行動を実行することとなる。次に、舞台に到着した後の舞台での行動は、挨拶およびお別れを含む。挨拶は、「こんにちは」と発話する行動，およびお辞儀をする身振りを含み、その後のお別れは、「ばいばい」と発話する行動，および手を振る行動を含む。これらはいずれも自発的行動である。最後に、舞台から帰る行動は、舞台から通路を通って移動する行動，行進するように手を振る行動，およびまっすぐ出口のほうを見る行動を含み、これらは自発的行動である。そして、舞台に到着するまでの行動と同様に、移動する行動の反射的行動として、目の前に人が来たら「どいてね」と発話する行動が設定され、手を振る行動の反射的行動として、触られたら触られた所を見る行動が設定され、まっすぐ見る行動の反射的行動として、人の顔があれば人の顔の方を見る行動が設定される。舞台から帰る行動における各行動に対応するプログラムは、出口に到着するまで繰り返し処理される。そして、最後に、出口の位置に到着した場合にこの再生動作１の再生を終了させるための終了指令が記述されている。
【００８９】
上述のような再生動作データや行動入力時の各行動の実行指令に基づいたロボット１２の行動の実行は、図１０に示すようなフロー図に従って処理される。ロボット１２のＣＰＵ５４は、図１０の最初のステップＳ４１で、まず、システム１０からの送信された指令データを、無線通信装置８６および通信ＬＡＮボードを介して取得する。次に、ステップＳ４３で、その指令データを解析する。指令データは、上述のように、たとえば再生動作データの実行指令であり、あるいは行動入力時の個々の行動の実行指令である。再生動作データの場合には、記述された順序に従って複数の行動を実行していくこととなる。
【００９０】
そして、ステップＳ４５では、属性情報等に基づいて、実行すべき行動が反射的行動であるか否かを判断し、“ＹＥＳ”であれば、ステップＳ４７で、識別子に基づいて、対応する反射的行動のプログラムを反射的行動ＤＢ９０からメモリ５８の作業領域にロードして、その反射的行動のプログラムに基づいて処理を実行する。したがって、その反射的行動を実行させる前提条件が満足されている場合には、ロボット１２によって反射的行動が実行され、対話相手である人間１４にその動作が提示されることとなる。ステップＳ４７の処理を終了すると、ステップＳ４５へ戻る。
【００９１】
このステップＳ４７の反射的行動の実行処理の一例として、図１１には、人の顔の方を見る行動の実行処理の詳細を示す。図１１の最初のステップＳ６１で、ロボット１２のＣＰＵ５４は、ＣＣＤカメラ（眼カメラ５２）の画像を読み込み、ステップＳ６３でその画像中に人の顔があるか否かを判断する。ステップＳ６３で“ＮＯ”であれば、つまり、取得した画像中に人の顔が無いと判断された場合には、ステップＳ６５で、予め設定された正面上向きに該当する角度θｓ，θｕの値をＳ軸，Ｕ軸の角度制御データとしてモータ制御ボード６０に送り、これによってＳ軸，Ｕ軸の頭部モータ７０を制御し、頭部４６を人の顔のありそうな方向に向けさせる。一方、ステップＳ６３で“ＹＥＳ”であれば、つまり、取得した画像中に人の顔を検出した場合には、ステップＳ６７で、その検出した人の顔の方向に該当する角度θｓ，θｕの値を算出し、算出したθｓ，θｕの値をＳ軸，Ｕ軸の角度制御データとしてモータ制御ボード６０に送り、これによってＳ軸，Ｕ軸の頭部モータ７０を制御し、頭部４６を人の顔のある方向に向けさせる。ステップＳ６５またはステップＳ６７の処理を終了すると、この反射的行動の実行処理を終了して、この場合図１０のステップＳ４５へ戻る。
【００９２】
一方、ステップＳ４５で“ＮＯ”であれば、ステップＳ４９で、属性情報等に基づいて、実行すべき行動が自発的行動であるか否かを判断する。このステップＳ４９で“ＹＥＳ”であれば、ステップＳ５１で、識別子に基づいて、対応する自発的行動のプログラムを自発的行動ＤＢ８８からメモリ５８の作業領域にロードして、その自発的行動のプログラムに基づいて処理を実行する。なお、直接入力による行動の場合には、直接入力実行処理プログラムおよび入力された角度データ等に基づいて処理される。したがって、ロボット１２によってその自発的行動が実行され、対話相手である人間１４にその動作が提示される。ステップＳ５１の処理を終了するとステップＳ４５へ戻る。
【００９３】
他方、ステップＳ４９で“ＮＯ”であれば、ステップＳ５３で終了指令であるか否かを判断する。このステップＳ５３で“ＮＯ”であればステップＳ４５へ戻り、“ＹＥＳ”であれば、実行すべき行動がすべて実行されたので、この処理を終了する。
【００９４】
この実施例によれば、人間の行動に応じた反射的行動を含んだ複数の行動のリストを表示して、ユーザに選択させるようにしているので、対話行動を構成する１つ１つの行動を簡単に入力することができ、ロボット１２の対話行動を簡単に入力して生成することができる。生成された対話行動には、自発的な行動だけでなく反射的行動（反応動作）が含まれるので、再生中に人間の特定の行動があった場合にはそれに応じた反射的行動を起動させることができ、したがって、より自然で多様な対話行動をロボット１２に容易に実現させることができる。
【００９５】
なお、上述の実施例では、行動リストを文字で表示するようにしているが、たとえばその行動の特徴を示す図柄のアイコン等を用いて表示するようにしてもよい。
【００９６】
また、上述の各実施例では、再生動作データをシステム１０からロボット１２に送信することで対話行動を再生させるようにしているが、ロボット１２内に設けた再生動作ＤＢにシステム１０で作成した再生動作データを予め登録しておいて、その再生動作データによってロボット１２に対話行動を実行させるようにしてもよい。
【００９７】
また、上述の各実施例では、人間の行動に応じた反応動作を含んだ対話行動の入力を支援するようにしていたが、次に示す他の実施例では、感情表現を含んだ感情的な対話行動の入力を支援することができる。
【００９８】
図１２には、この他の実施例のシステム１０の表示装置に表示される選択入力画面の一例が示される。この選択入力画面では、ロボット１２の行動に付与したい感情表現が選択可能に表示される。つまり、たとえば、行動リスト欄９２には、感情表現を選択するためのリストボックスがさらに設けられる。この感情表現のリストボックスでは、感情表現リスト（図１３）に基づいて、複数の感情表現が選択項目として文字等で表示される。
【００９９】
システム１０のＨＤＤなどの記憶装置には、行動リストデータと同様に、図１３に示すような感情表現リストデータが格納されていて、この感情表現リストデータには、ロボット１２の行動に付与する複数の感情表現に関する情報が識別子に対応付けて登録されている。感情表現としては、感情表現の付与を行わない「感情表現なし」と共に、たとえば喜び、悲しみ、怒り、恐れ、嫌悪、好奇心などの基本的な感情が用意される。
【０１００】
ユーザは、図１２に示すような選択入力画面で、マウス等の入力装置を操作して、１つの感情表現を選択指定することによって、ロボット１２に実行させる行動に付与したい感情表現を選択することができる。このように、複数の感情表現をリスト化し表示することによって、ユーザに対して複数の感情表現を分かり易く提示できるので、ユーザは所望の感情的な行動の入力を容易に行うことができる。
【０１０１】
なお、準備される感情表現としては、上記の例に限られず、感情的な表現に関して更なる拡張が考えられる。たとえば、顔表情に関してはEkmanによって定義された６基本表情、すなわち、幸せ、怒り、驚き、悲しみ、恐れ、嫌悪がよく知られている。また、「A.R.ホックシールド（著）、石川准、室伏亜紀（訳）、「管理される心‐感情が商品になるとき」、世界思想社、2000」では、次のような感情が命名されている：寂しさ、ノスタルジア、憂鬱、欲求不満、怒り、恐れ、憤慨、嫌悪感、軽蔑、罪悪感、苦悩、羨み、嫉妬、愛情、同情、哀れみ、当惑、羞恥心、不安など。
【０１０２】
また、図１４には、この実施例の行動リストテーブルの内容の一例が示される。この実施例の行動リストでは、各行動の識別子に対応付けて、当該行動に対しての感情表現の付与の適否を判定するための情報がさらに登録されている。この実施例では、当該行動への付与が禁止されている、すなわち、当該行動にとって不適当な感情表現を示す情報が登録される。この情報は、行動ないし動作そのものが本来持っている感情表現と、ユーザによって追加される感情表現とが矛盾してしまうことを防ぐために設けられる。
【０１０３】
たとえば、泣く動作は悲しくてなされるものであり、この「泣く」動作に、「喜び」表現を付加することは矛盾する。したがって、「泣く」動作には、禁止された感情として「喜び」が登録される。また、ガッツポーズはうれしくてなされるものであり、この「ガッツポーズ」動作に、「悲しみ」や「怒り」表現を付加することは矛盾する。したがって、「ガッツポーズ」動作には、禁止された感情として「悲しみ」、「怒り」が登録される。一方、「手を振って歩く」動作、「握手」動作、「挨拶」動作、「同意」動作、または「お辞儀をする」動作など、どのような感情表現も問題ない動作には、不適当な感情表現は無いことを示す情報が登録される。
【０１０４】
なお、図１４の例では、禁止された感情を登録するようにしているが、行動リストには、当該行動への付与が許可されている感情表現を示す情報が登録されてもよい。
【０１０５】
システム１０では、ユーザによって感情表現が選択されるとき、この禁止された感情表現を示す情報に基づいて、選択されている行動に付与してもよい感情表現であるか否かが判別される。選択された感情表現が選択されている行動に対して不適当であると判別されたとき、当該行動に対する当該感情表現の付与が許可されず、たとえばユーザの感情表現の選択がリセットされて感情表現の再選択が促される。
【０１０６】
一方、ロボット１２は、感情的な行動を実行するために、感情表現行動データベース（ＤＢ）１０４をさらに備えている。感情表現行動ＤＢ１０４には、図１５に示すように、感情表現行動処理プログラム記憶領域が設けられ、このロボット１２に感情表現行動を行わせるための複数のプログラムが予め登録されている。大きく分けて、感情的な反応動作を実行するためのプログラムと、感情補正変換を実行するためのプログラムとが記憶される。
【０１０７】
具体的には、感情的な反射的行動処理プログラムとして、喜んで同意する行動のためのプログラム、嫌そうに同意する行動のためのプログラム、おびえる行動のためのプログラムなどが記憶される。「喜んで同意」動作では、ロボット１２は、同意対象すなわち対話相手の発話とピッチを同調させて同じ言葉を発話して、うなずく。ここで、ピッチを同調させるとは、同じような調子でピッチが変化することを意味し、たとえば対話相手である人間１４が「遊ぼう↑」と尻上がりに発話した場合には、ロボット１２も「遊ぼう↑」と尻上がりに発話する。一方、「嫌そうに同意」動作では、ロボット１２は、対話相手の発話とピッチを同調させずに下げて同じ言葉を発話し、うなずく。ピッチを揃わせないことよって、反対のニュアンスを生じさせ、嫌さを表現する。たとえば人間１４が「遊ぼう↑」と尻上がりに発話した場合には、ロボット１２は「遊ぼうか↓」と尻下がりに発話する。また、「おびえる」動作では、ロボット１２は対象から目をそらす。
【０１０８】
このように、感情的な反応動作のそれぞれは、この実施例では、感情表現を含んだ動作を行うように予め作られたそれぞれのプログラム（感情的な反射的行動処理プログラム）によって実行される。システム１０の選択入力画面で別々に選択される反射的行動と感情表現とを感情的な反射的行動処理プログラムに対応付けるために、ロボット１２のメモリ５８には図１６に示すような感情的な反射的行動のリストが記憶されている。このリストデータでは、感情的な反射的行動のそれぞれについて、当該感情的な反射的行動の識別子に対応付けて、反射的行動（感情表現なし）および感情表現を示す情報が記憶される。感情的な反射的行動の識別子のそれぞれは、感情表現行動ＤＢ１０４に記憶されている感情的な反射的行動処理プログラムのそれぞれに対応付けられている。また、反射的行動を示す情報は、たとえば行動リスト（図１４）における識別子であり、感情表現を示す情報は、たとえば感情表現リスト（図１３）における識別子である。したがって、この感情的な反射的行動のリストに基づいて、ユーザによって選択された感情的な反射的行動を特定することができる。
【０１０９】
図１５に戻って、感情表現行動ＤＢ１０４には、感情的な反射的行動処理プログラムとして準備される行動以外の行動に対して感情表現を追加するためのプログラム、すなわち、感情補正変換プログラムが記憶される。具体的には、喜び、悲しみ、怒り等の感情表現を追加するためのプログラムがそれぞれ記憶されており、各感情補正変換プログラムは、感情表現リスト（図１３）の各識別子に対応付けられている。感情補正変換プログラムは、行動に感情表現を付与するために、行動を実現するための制御データを、当該感情表現に応じた制御データに変換する。具体的には、行動が身振りを伴う場合には、ロボット１２の各軸モータの角度制御データが変換される。また、発話を伴う場合には、出力する音声のピッチや話速などを制御するための音声制御データが変換される。
【０１１０】
具体的には、「喜び」の補正変換では、動きが大きくなる（たとえば１．５倍程度）ように各軸の角度制御データが変換され、音声のピッチが高くなるように音声制御データが変換される。また、「悲しみ」の補正変換では、動きが小さくなる（たとえば０．８倍程度）とともに、頭部４６が下向きになる（たとえば−１５度程度）ように、各軸の角度制御データが変換され、音声のピッチが低くなるように音声制御データが変換される。また、「怒り」の補正変換では、動きが素早くなるように各軸の角度制御データが変換され、音声のピッチが低くなりかつ話速が速くなるように音声制御データが変換される。
【０１１１】
このような変換された制御データに基づいて、各軸モータが駆動され、または、ピッチや話速などの変化された音声がスピーカ４８から出力されることによって、感情表現の付与された行動が実現される。
【０１１２】
たとえば、「挨拶」行動に対して、喜びが付与された場合には、ロボット１２は、「こんにちは（高いピッチで）」と言って、勢い良く（大きな身振りで）お辞儀をする。悲しみが付与された場合には、ロボット１２は、「こんにちは（低いピッチで）」と言って、小さくうつむきがちにお辞儀をする。怒りが付与された場合には、ロボット１２は、「こんにちは（低いピッチかつ早口で）」と言って、素早くお辞儀をする。また、「手を振って歩く」行動に対して、喜びが付与された場合には、ロボット１２は大きく手を振って歩く。悲しみが付与された場合には、ロボット１２は小さく手を振ってうつむいて歩く。怒りが付与された場合には、ロボット１２は速い速度で手を振って歩く。また、「握手」行動に対して、喜びが付与された場合には、ロボット１２は「握手しよう（高いピッチで）」と言って、大きく手を前に出す。悲しみが付与された場合には、ロボット１２は「握手しよう（低いピッチで）」と言って、うつむいて小さく手を前に出す。怒りが付与された場合には、ロボット１２は「握手しよう（低いピッチかつ早口で）」と言って、素早く手を前に出す。
【０１１３】
このように、感情表現ごとの感情補正変換を施すことによって感情表現に応じた制御データを生成して感情的な行動を実現するようにしたので、各行動に対して、各感情表現を予め取り入れた個別のプログラムを準備する手間を省くことができるし、感情表現行動ＤＢ１０４の容量を小さく抑えることができる。
【０１１４】
図１７にはシステム１０の行動入力時の動作の一例が示される。ユーザによって行動入力が指示されたとき、システム１０のＣＰＵは、図１７の最初のステップＳ５で、図１２に示すような選択入力画面を表示装置に表示する。
【０１１５】
なお、この図１７のステップＳ５の処理は、上述した図８のステップＳ５の処理と同様であるので、同じ参照符号が付されている。なお、以下の各フロー図では、上述したフロー図における処理と同様の処理には、同一の参照符号を付して、重複する詳細な説明を省略することがある。
【０１１６】
次に、ステップＳ７１で、ユーザの操作入力に応じて、ユーザによる行動の選択入力データをＲＡＭの所定領域に記憶する。たとえば、右手、左手、頭部、発話の各部位に関して、ユーザによって選択指定された各行動の識別子が記憶され、直接入力の場合には角度データがさらに記憶される。
【０１１７】
ステップＳ７３では、感情表現が選択されたか否かを判断する。ステップＳ７３で“ＹＥＳ”であれば、ステップＳ７５で、選択された感情表現が、選択されている行動に対して不適当な感情表現であるか否かを、行動リストデータ（図１４）に基づいて判断する。ステップＳ７５で“ＮＯ”であれば、つまり、選択された感情表現が、選択されている行動について禁止された感情表現として行動リストデータに登録されていない場合等には、当該感情表現を当該行動に対して付与することができるので、ステップＳ７７で、選択された感情表現の識別子を入力データとしてＲＡＭの所定領域に記憶する。
【０１１８】
一方、ステップＳ７５で“ＹＥＳ”であれば、ステップＳ７９で、ユーザが選択しようとしている感情表現は選択している行動に対して選択不可であることを、たとえば文字表示や音声出力等によって報知する。そして、ステップＳ８１で、ユーザによる感情表現の選択をリセットし、たとえば選択入力画面の感情表現の選択欄をデフォルト（感情表現なし等）に戻す。このようにして、ユーザに対して選択中の行動に対する当該感情表現の選択が不適当であることを伝達して、別の感情表現の再選択を促す。
【０１１９】
また、ステップＳ７３で“ＮＯ”である場合、ステップＳ７７またはステップＳ８１を終了すると、ステップＳ８３で、ユーザの操作に応じてロボット１２に実行させる行動が決定されたか否かが判断される。このステップＳ８３で“ＹＥＳ”であれば、つまり、決定ボタン９８が操作された場合には、続くステップＳ８５で、選択決定された行動が反射的行動であるか否かを行動リストデータに基づいて判断する。
【０１２０】
ステップＳ８５で“ＹＥＳ”であれば、つまり、当該行動の属性が反射的行動である場合には、ステップＳ８７で、感情表現付きの行動であるかどうかを判断する。このステップＳ８７で“ＮＯ”であれば、つまり、選択された感情表現の情報として、感情表現なしを示す識別子がＲＡＭの所定領域に記憶されている場合には、ステップＳ８９で、選択決定された反射的行動の実行指令をロボット１２に送信する。たとえば、当該反射的行動を示す識別子、当該行動の属性および部位などに関する情報、および感情表現なしを示す識別子などを含む指令データが送信される。なお、ロボット１２では、この実行指令に応じて、該当する反射的行動の処理プログラムが起動される。
【０１２１】
一方、ステップＳ８７で“ＹＥＳ”であれば、つまり、選択された感情表現の情報として、いずれかの感情表現を示す識別子がＲＡＭの所定領域に記憶されている場合には、ステップＳ９１で、選択決定された感情的な反射的行動の実行指令をロボット１２に送信する。たとえば、当該反射的行動を示す識別子、当該行動の属性および部位などに関する情報、および当該感情表現を示す識別子などを含む指令データが送信される。なお、ロボット１２では、この実行指令に応じて、該当する感情的な反射的行動の処理プログラムが起動される。
【０１２２】
続いて、ステップＳ９３では、入力履歴をＲＡＭの所定領域に記憶する。つまり、たとえば、決定された反射的行動の識別子、当該行動の属性および部位などに関する情報、および感情表現に関する識別子などを入力履歴として記録する。
【０１２３】
一方、ステップＳ８５で“ＮＯ”であれば、ステップＳ９５で、選択決定された行動が自発的行動であるか否かを行動リストデータに基づいて判断する。このステップＳ９５で“ＹＥＳ”であれば、つまり、当該行動の属性が自発的行動である場合には、ステップＳ９７で、感情表現付きの行動であるかどうかを判断する。ステップＳ９７で“ＮＯ”であれば、ステップＳ９９で、選択決定された自発的行動の実行指令をロボット１２に送信する。たとえば、当該自発的行動を示す識別子、当該行動の属性および部位などに関する情報、感情表現なしを示す識別子、入力された角度データ（直接入力の場合）などを含む指令データが送信される。なお、ロボット１２では、この実行指令に応じて、該当する自発的行動の処理プログラムが起動される。
【０１２４】
一方、ステップＳ９７で“ＹＥＳ”であれば、ステップＳ１０１で、感情的な自発的行動の実行指令をロボット１２に送信する。たとえば、当該自発的行動を示す識別子、当該行動の属性および部位などに関する情報、当該感情表現を示す識別子、入力された角度データ（直接入力の場合）などを含む指令データが送信される。なお、ロボット１２では、この実行指令に応じて、該当する感情補正変換プログラムおよび自発的行動処理プログラムが起動される。
【０１２５】
続いて、ステップＳ１０３では、入力履歴をＲＡＭの所定領域に記憶する。つまり、たとえば、決定された自発的行動の識別子、当該行動の属性および部位などに関する情報、および感情表現に関する識別子、入力された角度データ（直接入力の場合）などを入力履歴として記録する。
【０１２６】
なお、ステップＳ９３またはステップＳ１０３を終了すると、処理はステップＳ１５へ進む。また、ステップＳ９５で“ＮＯ”の場合、あるいは、ステップＳ８３で“ＮＯ”の場合にも、処理はステップＳ１５へ進む。
【０１２７】
ステップＳ１５では、入力終了ボタン１００が操作されたか否かを判断し、“ＮＯ”であれば、ステップＳ７１へ戻って、次の行動の入力についての処理を繰り返す。一方、ステップＳ１５で“ＹＥＳ”であれば、ステップＳ１０５で、ＲＡＭの所定領域に記憶されている入力履歴情報に基づいて再生動作データを生成して再生動作ＤＢ１０２に格納する。
【０１２８】
この実施例で生成される再生動作データは、上述した実施例と同様であるが、さらに各行動の感情表現に関する情報（識別子）を含む。図１８には、再生動作ＤＢ１０２に格納された感情表現を含む再生動作データＮの一例が示される。このシナリオは、たとえば挨拶して握手するビヘイビアを実行させるものである。まず、挨拶が設定され、その感情表現として無しが設定される。挨拶行動では、ロボット１２は「こんにちは」と言ってお辞儀をする。また、その反射的行動として、感情表現のないアイコンタクトが設定される。次に、握手が設定され、その感情表現として喜びが設定される。喜びの付与された握手行動では、上述のように、ロボット１２は、「握手しよう（高いピッチで）」と言って、大きく手を前に出す。また、その反射的行動として、同意が設定され、その感情表現として喜びが設定される。喜びの付与された同意行動では、後述するように、同意対象からの発話があった場合、ロボット１２は、ピッチを同調させて同じ単語を発話して、うなずく。そして、最後にこのシナリオの再生を終了させるための終了指令が記述されている。
【０１２９】
図１９には、システム１０の再生時の動作の一例が示される。ユーザの操作によってシナリオの再生が指示された場合には、システム１０のＣＰＵは、図１９の最初のステップＳ１１１で、再生動作ＤＢ１０２に格納されている再生動作のリストを表示装置に表示する。続いて、ステップＳ１１３で、ユーザの操作に応じて、選択された再生動作データを再生動作ＤＢ１０２から読み出す。そして、ステップＳ２３で、読み出した再生動作データの実行指令をロボット１２に送信する。なお、ロボット１２では、この実行指令に応じて、再生動作データが再生されて、反応動作および感情表現を含んだ一連のコミュニケーション行動が実行されることとなる。
【０１３０】
図２０には、ロボット１２の動作の一例が示される。ロボット１２のＣＰＵ５４は、ステップＳ４１でシステム１０からの指令データを取得し、ステップＳ４３でその指令データを解析する。そして、ステップＳ４５で、実行すべき行動が反射的行動であるか否かを判断する。
【０１３１】
ステップＳ４５で“ＹＥＳ”であれば、ステップＳ１２１で感情表現付きの行動であるか否かを判断する。システム１０から送信される指令データには、実行すべき行動について感情表現に関する情報（識別子）が含まれるので、この情報に基づいて判断がなされる。ステップＳ１２１で“ＮＯ”であれば、つまり、たとえば、当該行動について感情表現なしを示す識別子が記述されている場合には、続くステップＳ４７で、反射的行動の識別子に基づいて反射的行動ＤＢ９０から該当する反射的行動の処理プログラムを読み出し、この読み出したプログラムに基づいて、処理を実行する。ステップＳ４７を終了すると、処理はステップＳ４５へ戻る。
【０１３２】
一方、ステップＳ１２１で“ＹＥＳ”であれば、つまり、たとえば、当該行動についていずれかの感情表現を示す識別子が記述されている場合には、ステップＳ１２３で、該当する感情的な反射的行動の処理プログラムを感情表現行動ＤＢ１０４から読み出して、この読み出したプログラムに基づいて処理を実行する。指令データには反射的行動の識別子および感情表現の識別子が含まれるので、メモリ５８または感情表現行動ＤＢ１０４に記憶された感情的な反射的行動のリストデータ（図１６）に基づいて、実行すべき感情的な反射的行動の処理プログラムが特定される。したがって、その感情的な反射的行動を実行させる前提条件が満足されている場合には、ロボット１２によって当該行動が実行され、対話相手である人間１４にその感情的な反応動作が提示されることとなる。ステップＳ１２３を終了すると、処理はステップＳ４５へ戻る。
【０１３３】
このステップＳ１２３の感情的な反射的行動の実行処理の一例として、図２１には、「喜んで同意」行動の実行処理の詳細が示される。図２１の最初のステップＳ１４１で、ロボット１２のＣＰＵ５４は、マイク３２および音声入力／出力ボード６４を介して、音声情報をメモリ５８に読み込む。この対話相手からの音声情報の取得は、たとえば所定時間が経過するまで継続して行われる。
【０１３４】
次に、ステップＳ１４３で、読み込んだ音声情報に対して音声認識を施す。ロボット１２は音声認識機能を備えており、メモリ５８には対話相手の発した言葉（音声）を音声認識するための辞書（音声認識用辞書）が記憶されている。音声認識用辞書内の音声データと取得した音声情報とを、たとえばＤＰマッチングあるいはＨＭＭ（隠れマルコフモデル）などの公知の方法により比較し、同意対象の発話した内容（単語ないし言葉）を特定する。
【０１３５】
そして、ステップＳ１４５で、同意対象の発した単語が、メモリ５８内の発話用音声データ中に存在するか否かを判断する。ステップＳ１４５で“ＮＯ”であれば、つまり、対話相手の発した単語と同じ単語の音声データを記憶していない場合には、この行動の実行処理を終了する。
【０１３６】
一方、ステップＳ１４５で“ＹＥＳ”であれば、ステップＳ１４７で、Ｓ軸、Ｕ軸に現在の角度よりも下向きになる角度θｓ、θｕの値を送る。つまり、モータ制御ボード６０に角度制御データを与えて、頭部モータ７０のＳ軸モータおよびＵ軸モータを制御し、頭部４６を一旦下方向に向けて、うなずき動作を行わせる。そして、ステップＳ１４９で、同意対象の発した単語と同じ音声のピッチを、同意対象に同調するように変換して再生する。つまり、たとえば、ステップＳ１４３の音声認識処理で取得した同意対象の発話のピッチに関する情報に基づいて、出力する音声のピッチが同意対象の音声のピッチと同じような調子で変化するように、音声制御データを変換する。そして、この変換された音声制御データと同じ単語の音声データとを音声入力／出力ボード６４に与えて、スピーカ４８からその音声を出力する。
【０１３７】
図２０に戻って、ステップＳ４５で“ＮＯ”であれば、ステップＳ４９で、実行すべき行動が自発的行動であるか否かを判断する。ステップＳ４９で“ＹＥＳ”であれば、ステップＳ１２５で感情表現付きの行動であるか否かを判断する。ステップＳ１２５で“ＮＯ”であれば、つまり、たとえば、当該行動について感情表現なしを示す識別子が記述されている場合には、続くステップＳ５１で、自発的行動の識別子に基づいて自発的行動ＤＢ８８から該当する自発的行動の処理プログラムを読み出し、この読み出したプログラムに基づいて、処理を実行する。ステップＳ５１を終了すると、処理はステップＳ４５に戻る。
【０１３８】
一方、ステップＳ１２５で“ＹＥＳ”であれば、つまり、たとえば、当該行動についていずれかの感情表現を示す識別子が記述されている場合には、ステップＳ１２７で、感情補正変換処理を実行する。このステップＳ１２７の処理では、感情表現の識別子に基づいて、感情表現行動ＤＢ１０４から該当する感情補正変換プログラムが読み出され、この読み出されたプログラムに基づいて感情補正変換が処理される。具体的には、ロボット１２の行動を実現するための制御データに、選択された感情表現に応じた変化が与えられる。この感情補正変換処理の動作の一例が、図２２に詳細に示される。
【０１３９】
図２２の最初のステップＳ１６１で、ロボット１２のＣＰＵ５４は、実行すべき行動の動き（身振り）の制御データおよび発話の制御データをメモリ５８の所定領域または自発的行動ＤＢ８８からメモリ５８の作業領域に読み出す。あるいは、直接入力行動である場合には、ステップＳ４１で取得した、ユーザの直接入力による角度制御データを読み出す。具体的には、動きの制御データは、各軸モータの角度制御データを含み、発話の制御データは、出力する音声のピッチおよび話速などを制御する音声制御データを含む。
【０１４０】
次に、ステップＳ１６３で、感情表現の識別子が喜びを示す識別子あるか否かを判断する。ステップＳ１６３で“ＹＥＳ”であれば、感情表現行動ＤＢ１０４から読み出された喜びの感情補正変換プログラムに基づいて、処理が実行される。すなわち、ステップＳ１６５で、当該行動には動きがあるか否かをたとえば角度制御データに基づいて判断する。ステップＳ１６５で“ＹＥＳ”であれば、ステップＳ１６７で、喜びを表現すべく、動きを大きく（たとえば１．５倍程度）するように、各軸の角度制御データを変換する。
【０１４１】
ステップＳ１６７を終了すると、または、ステップＳ１６５で“ＮＯ”であれば、ステップＳ１６９で、当該行動には発話があるか否かをたとえば音声制御データに基づいて判断する。ステップＳ１６９で“ＹＥＳ”であれば、ステップＳ１７１で、喜びを表現すべく、出力される音声のピッチが高くなるように音声制御データを変換する。ステップＳ１７１を終了すると、または、ステップＳ１６９で“ＮＯ”であれば、処理は図２０のステップＳ１２９へ戻る。
【０１４２】
一方、ステップＳ１６３で“ＮＯ”であれば、ステップＳ１７３で、感情表現の識別子が悲しみを示す識別子であるか否かを判断する。ステップＳ１７３で“ＹＥＳ”であれば、感情表現行動ＤＢ１０４から読み出された悲しみの感情補正変換プログラムに基づいて、処理が実行される。すなわち、ステップＳ１７５で、当該行動に動きがあるか否かを判断する。ステップＳ１７５で“ＹＥＳ”であれば、ステップＳ１７７で、悲しみを表現すべく、動きを小さくし（たとえば０．８倍程度）、かつ、頭部４６を下向き（たとえば−１５度程度）にするように、各軸の角度制御データを変換する。
【０１４３】
ステップＳ１７７を終了すると、または、ステップＳ１７５で“ＮＯ”であれば、ステップＳ１７９で、当該行動には発話があるか否かを判断する。ステップＳ１７９で“ＹＥＳ”であれば、ステップＳ１８１で、悲しみを表現すべく、出力される音声のピッチが低くなるように音声制御データを変換する。ステップＳ１８１を終了すると、または、ステップＳ１７９で“ＮＯ”であれば、処理は図２０のステップＳ１２９へ戻る。
【０１４４】
一方、ステップＳ１７３で“ＮＯ”であれば、ステップＳ１８３で、感情表現の識別子が怒りを示す識別子であるか否かを判断する。ステップＳ１８３で“ＹＥＳ”であれば、感情表現行動ＤＢ１０４から読み出された怒りの感情補正変換プログラムに基づいて、処理が実行される。すなわち、ステップＳ１８５で当該行動には動きがあるか否かを判断する。ステップＳ１８５で“ＹＥＳ”であれば、ステップＳ１８７で、怒りを表現すべく、動きが速くなるように各軸の角度制御データを変換する。
【０１４５】
ステップＳ１８７を終了すると、または、ステップＳ１８５で“ＮＯ”であれば、ステップＳ１８９で、当該行動には発話があるか否かを判断する。ステップＳ１８９で“ＹＥＳ”であれば、ステップＳ１９１で、怒りを表現すべく、出力される音声のピッチを低くし、かつ、話速を速くするように、音声制御データを変換する。ステップＳ１９１を終了すると、または、ステップＳ１８９で“ＮＯ”であれば、図２０のステップＳ１２９へ戻る。
【０１４６】
一方、ステップＳ１８３で“ＮＯ”であれば、続くステップＳ１９３で、上記喜び、悲しみ、怒りの感情表現の場合と同様にして、その他の感情表現に応じて動きと発話を変化させる。つまり、当該感情表現の識別子に対応付けられた感情補正変換プログラムに基づいて、行動に当該感情表現を付与すべく、角度制御データおよび音声制御データを必要に応じて変換する。ステップＳ１９３を終了すると図２０のステップＳ１２９へ戻る。
【０１４７】
図２０に戻って、ステップＳ１２９では、補正変換に基づく感情的な自発的行動を実行する。つまり、自発的行動の識別子に対応付けられた自発的行動の処理プログラム、およびステップＳ１２７で補正変換された制御データに基づいて、処理を実行する。これによって、感情表現の付与された自発的行動が対話相手に提示される。ステップＳ１２９を終了すると、処理はステップＳ４５に戻る。
【０１４８】
一方、ステップＳ４９で“ＮＯ”であれば、ステップＳ５３で終了指令であるか否かを判断し、“ＮＯ”であればステップＳ４５へ戻り、“ＹＥＳ”であれば、実行すべき行動がすべて実行されたので、この処理を終了する。
【０１４９】
この実施例によれば、行動のリストとともに行動に付与する感情表現のリストをさらに表示して、ユーザに選択させるようにしているので、感情的な動作を簡単に入力できるとともに、感情的な対話行動を簡単に入力して生成することができる。したがって、生成された再生動作情報には感情的な反応動作や感情的な自発的行動などが含まれ得るので、より多様な対話行動をロボット１２に容易に実現させることができる。
【０１５０】
また、各行動に対して不適当なあるいは適当な感情表現を示す情報を記憶しておき、ユーザが選択しようとしている感情表現の適否を判定するようにしたので、ユーザの選択した行動そのものの感情表現と追加する感情表現とが矛盾することを防止することができる。したがって、自然な感情的な動作を簡単に入力できるし、自然な感情的な対話行動を簡単に入力して生成することができる。
【０１５１】
なお、上述の各実施例では、図２０および図２２に示すように、感情補正変換をロボット１２で実行するようにしていた。しかしながら、感情表現行動ＤＢ１０４（感情補正変換プログラム）をシステム１０に設けておき、感情表現付きの行動が選択決定された場合にはシステム１０で感情補正変換を実行するようにしてもよい。この場合には、図１７のステップＳ１０１で角度制御データおよび音声制御データが必要に応じて変換され、変換された制御データを含む指令データがロボット１２に送信される。また、図１７のステップＳ１０５で、当該行動に関する情報および感情補正変換された制御データなどを含む再生動作データが生成されて再生動作ＤＢ１０２に格納される。
【０１５２】
また、上述の各実施例では、自発的行動に対してのみ感情補正変換が実行され、反射的行動については、感情表現を取り入れた各行動を実行する各プログラムによって実行するようにしていた。しかしながら、反射的行動についても、たとえば目の前に人が来たら「どいてね」と発話する行動のように単純な発話あるいは身振りのみを提示する行動の場合には、感情補正変換を施すことによって制御データを変換し、この変換された制御データに基づいて感情的な反射的行動を実現するようにしてもよい。
【０１５３】
この発明が詳細に説明され図示されたが、それは単なる図解および一例として用いたものであり、限定であると解されるべきではないことは明らかであり、この発明の精神および範囲は添付されたクレームの文言によってのみ限定される。
【図面の簡単な説明】
【０１５４】
【図１】図１はこの発明の一実施例のコミュニケーションロボット用制御システムの概要を示す図解図である。
【図２】図２は図１のコミュニケーションロボットの外観を示す図解図（正面図）である。
【図３】図３は図１のコミュニケーションロボットの内部構成を示すブロック図である。
【図４】図４は図３の自発的行動ＤＢの内容の一例を示す図解図である。
【図５】図５は図３の反射的行動ＤＢの内容の一例を示す図解図である。
【図６】図６は図１実施例のコミュニケーションロボット用制御システムのメモリに記憶される行動リストテーブルデータの内容の一例を示す図解図である。
【図７】図７は図１実施例のコミュニケーションロボット用制御システムの表示装置に表示される選択入力画面の一例を示す図解図である。
【図８】図８は図１実施例のコミュニケーションロボット用制御システムの動作の一例を示すフロー図である。
【図９】図９は図１実施例のコミュニケーションロボット用制御システムの再生動作ＤＢに格納される再生動作データの一例を示す図解図である。
【図１０】図１０は図１のコミュニケーションロボットの動作の一例を示すフロー図である。
【図１１】図１１は図１０における反射的行動の実行処理のうち「人の顔を見る」行動の動作の一例を示すフロー図である。
【図１２】図１２は他の実施例のコミュニケーションロボット用制御システムの表示装置に表示される選択入力画面の一例を示す図解図である。
【図１３】図１３は図１２実施例のコミュニケーションロボット用制御システムのメモリに記憶される感情表現リストデータの内容の一例を示す図解図である。
【図１４】図１４は図１２実施例のコミュニケーションロボット用制御システムのメモリに記憶される行動リストテーブルデータの内容の一例を示す図解図である。
【図１５】図１５は図１２実施例におけるコミュニケーションロボットに設けられる感情表現行動ＤＢの内容の一例を示す図解図である。
【図１６】図１６は図１２実施例におけるコミュニケーションロボットのメモリに記憶される感情的な反射的行動リストデータの内容の一例を示す図解図である。
【図１７】図１７は図１２実施例のコミュニケーションロボット用制御システムの入力時の動作の一例を示すフロー図である。
【図１８】図１８は図１２実施例のコミュニケーションロボット用制御システムの再生動作ＤＢに格納される再生動作データの一例を示す図解図である。
【図１９】図１９は図１２実施例のコミュニケーションロボット用制御システムの再生時の動作の一例を示すフロー図である。
【図２０】図２０は図１２実施例におけるコミュニケーションロボットの動作の一例を示すフロー図である。
【図２１】図２１は図２０における感情的な反射的行動の実行処理のうち「喜んで同意」行動の動作の一例を示すフロー図である。
【図２２】図２２は図２０における感情補正変換処理の動作の一例を示すフロー図である。
【符号の説明】
【０１５５】
１０  …コミュニケーションロボット用制御システム
１２  …コミュニケーションロボット
８８  …自発的行動ＤＢ
９０  …反射的行動ＤＢ
９２  …行動リスト欄
９６  …画像欄
９８  …決定ボタン
１００  …入力終了ボタン
１０２  …再生動作ＤＢ
１０４  …感情表現行動ＤＢ
【図１】
0004271193.tif 000002
【図２】
0004271193.tif 000003
【図３】
0004271193.tif 000004
【図４】
0004271193.tif 000005
【図５】
0004271193.tif 000006
【図６】
0004271193.tif 000007
【図７】
0004271193.tif 000008
【図８】
0004271193.tif 000009
【図９】
0004271193.tif 000010
【図１０】
0004271193.tif 000011
【図１１】
0004271193.tif 000012
【図１２】
0004271193.tif 000013
【図１３】
0004271193.tif 000014
【図１４】
0004271193.tif 000015
【図１５】
0004271193.tif 000016
【図１６】
0004271193.tif 000017
【図１７】
0004271193.tif 000018
【図１８】
0004271193.tif 000019
【図１９】
0004271193.tif 000020
【図２０】
0004271193.tif 000021
【図２１】
0004271193.tif 000022
【図２２】
0004271193.tif 000023