(57)【要約】【課題】サービス開発者が作成したシナリオにおいて発生する不適切なサービスロボットの行動を回避する。【解決手段】利用者と対話するロボットと、ロボットが配置される空間の環境状況を検出する環境センサを含み、ロボットを制御する対話手段と対話属性と対話内容を含む行動リストを予め設定したシナリオと、行動リストに含まれる対話手段の評価値を環境状況と対話属性に応じて設定したスコア情報と、行動リストに含まれる対話手段を代替手段に変換する代替手段情報と、を有し、シナリオから行動リストを選択し、行動リストに含まれる対話手段を代替手段に変換して行動リストの対話手段を代替手段に置き換えた第２の行動リストを生成し、第２の行動リストに含まれる対話属性と環境状況に基づいてスコア情報から代替手段の評価値を算出し、評価値が最大の第２の行動リストを選択する。【選択図】図３
2018067100.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサと記憶装置を有して利用者と対話するロボットと、
前記ロボットが配置される空間に設置されて、前記空間の環境状況を検出する環境センサと、
前記環境センサと前記ロボットを接続するネットワークと、
を含むロボット対話システムであって、
前記ロボットは、
音声情報によって前記利用者と対話を行う音声情報対話部と、
文字情報によって前記利用者と対話を行う文字情報対話部と、
前記ロボットを制御する対話手段と対話属性と対話内容を含む行動リストを予め設定したシナリオと、
前記行動リストに含まれる対話手段の評価値を、環境状況と対話属性に応じて予め設定したスコア情報と、
前記行動リストに含まれる対話手段を他の対話手段である代替手段に変換する代替手段情報と、を有し、
前記プロセッサは、前記シナリオから前記利用者との対話に応じて行動リストを選択し、
前記プロセッサは、前記環境センサから取得した情報に基づいて前記環境状況を算出し、
前記プロセッサは、前記選択した行動リストに含まれる対話手段で代替手段情報を参照して代替手段に変換し、前記行動リストの対話手段を前記代替手段に置き換えた第２の行動リストを生成し、
前記プロセッサは、前記生成した第２の行動リストに含まれる対話属性と、前記環境状況に基づいて、前記スコア情報から代替手段の評価値を算出し、
前記プロセッサは、前記代替手段の前記評価値が最大の前記第２の行動リストを選択することを特徴とするロボット対話システム。
【請求項２】
請求項１に記載のロボット対話システムであって、
前記プロセッサは、前記代替手段を含む第２の行動リストを実行し、前記代替手段に応じて音声情報対話部または文字情報対話部で対話を行うことを特徴とするロボット対話システム。
【請求項３】
請求項１に記載のロボット対話システムであって、
前記代替手段は、前記音声情報対話部による対話を文字情報対話部による対話に変換し、前記文字情報対話部は、文字情報の表示または文字情報の印刷することを特徴とするロボット対話システム。
【請求項４】
請求項１に記載のロボット対話システムであって、
前記行動リストは、１以上の前記対話手段を含み、
前記第２の行動リストは、前記行動リストの１以上の前記対話手段をそれぞれ前記代替手段に置き換えて生成され、
前記代替手段の前記評価値の総和が最大の前記第２の行動リストを選択することを特徴とするロボット対話システム。
【請求項５】
請求項１に記載のロボット対話システムであって、
前記環境状況は、前記環境センサから取得した情報に基づいて人の混雑度を算出することを特徴とするロボット対話システム。
【請求項６】
プロセッサと記憶装置を有して利用者と対話するロボットと、
前記ロボットが配置される空間に設置されて、前記空間の環境状況を検出する環境センサと、
プロセッサと記憶装置を有するサーバと、
前記サーバと前記環境センサと前記ロボットを接続するネットワークと、
を含むロボット対話システムであって、
前記ロボットは、
音声情報によって前記利用者と対話を行う音声情報対話部と、
文字情報によって前記利用者と対話を行う文字情報対話部と、を有し、
前記ロボットのプロセッサは、前記音声情報対話部または文字情報対話部で前記利用者との対話を前記サーバに送信し、
前記サーバは、
前記ロボットを制御する対話手段と対話属性と対話内容を含む行動リストを予め設定したシナリオと、
前記行動リストに含まれる対話手段の評価値を、環境状況と対話属性に応じて予め設定したスコア情報と、
前記行動リストに含まれる対話手段を他の対話手段である代替手段に変換する代替手段情報と、を有し、
前記サーバのプロセッサは、前記シナリオから前記利用者との対話に応じて行動リストを選択し、
前記サーバのプロセッサは、前記環境センサから取得した情報に基づいて前記環境状況を算出し、
前記サーバのプロセッサは、前記選択した行動リストに含まれる対話手段で代替手段情報を参照して代替手段に変換し、前記行動リストの対話手段を前記代替手段に置き換えた第２の行動リストを生成し、
前記サーバのプロセッサは、前記生成した第２の行動リストに含まれる対話属性と、前記環境状況に基づいて、前記スコア情報から代替手段の評価値を算出し、
前記サーバのプロセッサは、前記代替手段の前記評価値が最大の前記第２の行動リストを選択することを特徴とするロボット対話システム。
【請求項７】
請求項６に記載のロボット対話システムであって、
前記サーバのプロセッサは、前記代替手段を含む第２の行動リストを前記ロボットへ送信し、
前記ロボットのプロセッサは、受信した前記第２の行動リストを実行し、前記代替手段に応じて音声情報対話部または文字情報対話部で対話を行うことを特徴とするロボット対話システム。
【請求項８】
請求項６に記載のロボット対話システムであって、
前記代替手段は、前記音声情報対話部による対話を文字情報対話部による対話に変換し、前記文字情報対話部は、文字情報の表示または文字情報の印刷することを特徴とするロボット対話システム。
【請求項９】
請求項６に記載のロボット対話システムであって、
前記行動リストは、１以上の前記対話手段を含み、
前記第２の行動リストは、前記行動リストの１以上の前記対話手段をそれぞれ前記代替手段に置き換えて生成され、
前記代替手段の前記評価値の総和が最大の前記第２の行動リストを選択することを特徴とするロボット対話システム。
【請求項１０】
請求項６に記載のロボット対話システムであって、
前記環境状況は、前記環境センサから取得した情報に基づいて人の混雑度を算出することを特徴とするロボット対話システム。
【請求項１１】
プロセッサと記憶装置を有して利用者と対話するロボットと、
前記ロボットが配置される空間に設置されて、前記空間の環境状況を検出する環境センサと、
プロセッサと記憶装置を有するサーバと、
前記サーバと前記環境センサと前記ロボットを接続するネットワークと、
を含むロボット対話システムであって、
前記ロボットは、
音声情報によって前記利用者と対話を行う音声情報対話部と、
文字情報によって前記利用者と対話を行う文字情報対話部と、を有し、
前記ロボットを制御する対話手段と対話属性と対話内容を含む行動リストを予め設定したシナリオと、
前記行動リストに含まれる対話手段の評価値を、環境状況と対話属性に応じて予め設定したスコア情報と、
前記行動リストに含まれる対話手段を他の対話手段である代替手段に変換する代替手段情報と、を有し、
前記ロボットのプロセッサは、前記シナリオから前記利用者との対話に応じて行動リストを選択し、
前記ロボットのプロセッサは、前記環境状況の算出を前記サーバに指令し、
前記サーバのプロセッサは、前記環境センサから取得した情報に基づいて前記環境状況を算出し、前記ロボットに環境状況を送信し、
前記ロボットのプロセッサは、前記選択した行動リストに含まれる対話手段で代替手段情報を参照して代替手段に変換し、前記行動リストの対話手段を前記代替手段に置き換えた第２の行動リストを生成し、
前記ロボットのプロセッサは、前記生成した第２の行動リストに含まれる対話属性と、前記サーバから受信した環境状況に基づいて、前記スコア情報から代替手段の評価値を算出し、
前記ロボットのプロセッサは、前記代替手段の前記評価値が最大の前記第２の行動リストを選択することを特徴とするロボット対話システム。
【請求項１２】
請求項１１に記載のロボット対話システムであって、
前記ロボットのプロセッサは、前記代替手段を含む第２の行動リストを実行し、前記代替手段に応じて音声情報対話部または文字情報対話部で対話を行うことを特徴とするロボット対話システム。
【請求項１３】
請求項１１に記載のロボット対話システムであって、
前記代替手段は、前記音声情報対話部による対話を文字情報対話部による対話に変換し、前記文字情報対話部は、文字情報の表示または文字情報の印刷することを特徴とするロボット対話システム。
【請求項１４】
請求項１１に記載のロボット対話システムであって、
前記行動リストは、１以上の前記対話手段を含み、
前記第２の行動リストは、前記行動リストの１以上の前記対話手段をそれぞれ前記代替手段に置き換えて生成され、
前記代替手段の前記評価値の総和が最大の前記第２の行動リストを選択することを特徴とするロボット対話システム。
【請求項１５】
請求項１１に記載のロボット対話システムであって、
前記環境状況は、前記環境センサから取得した情報に基づいて人の混雑度を算出することを特徴とするロボット対話システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、利用者とコミュニケーションを取りながらサービスを提供するロボットの対話システムに関する。
【背景技術】
【０００２】
近年、人間と同じ空間に存在し、様々なサービスを提供するサービスロボットが広く開発されている。サービスロボットに行わせるサービスを開発する者（以下、サービス開発者）は、サービスロボットのメーカから提供される開発環境やシナリオ作成ツールを用いて開発を行うことが多い。サービスロボットに詳しいサービス開発者に対しては、より低水準なＡＰＩ（Application Program Interface）が提供される。一方で、サービスロボットに詳しくないサービス開発者であっても簡単な言語やＧＵＩ（Graphical User Interface）でサービスを記述できるシナリオ作成ツールが提供される。サービスロボットの普及にあたり、サービス開発の容易さは重要なファクターである。
【０００３】
サービスロボットはサービス開発者の意図に沿った行動を行うと同時に、状況に応じて適切な応答を行うことが求められる。状況とは、ロボット自身の状態、利用者の状態、その他の環境の状態を含む。
【０００４】
例えば特許文献１では、会話の内容から状況を推定し、推定した状況を出力する自動対話作成方法が開示されている。
【０００５】
例えば特許文献２、３では、ユーザやエージェントの状態を推定し、状態に即した応答文を生成する会話文生成方法が開示されている。
【０００６】
例えば特許文献４では、センサで周囲を測定したデータをデータベースとして記憶し、記憶されたデータに基づいてユーザの行動内容などを推論してユーザに対話文を生成し、ユーザからの応答から情報を特定することが開示されている。
【０００７】
例えば特許文献５では、ユーザどうしのチャット文から、不適切なチャットを検出し、警告を出す等の仲介を行うオンラインバーチャルロボットが開示されている。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００６−１７２２８０号公報
【特許文献２】国際公開第２０１４／０７３６１２号公報
【特許文献３】国際公開第２０１４／０７３６１３号公報
【特許文献４】特開２０１２−０４８３３３号公報
【特許文献５】特表２０１０−５０９６７９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
サービスロボットは、利用者の要求を聞き出し、要求に基づいた情報の提供を行う。その際に利用者に関する情報を取得し、取得した情報に基づきより適切な情報を選択して利用者に提供することで、利用者の満足度を向上させることができる。
【００１０】
サービスロボットに詳しくないサービス開発者が、シナリオ作成ツールを用いてサービス開発を行う場合、サービスロボットとサービス利用者が置かれる状況を十分に想定することができず、結果として不適切な行動をサービスロボットに行わせてしまうことがある。
【００１１】
例えば、他者が存在する環境で機微な個人情報に関する質問をサービスロボットがサービス利用者に行ってしまい、サービス利用者の満足度を低下させることなどがあげられる。このようなことは、特に既存のＷｅｂサービスや端末を介したユーザインタラクションをそのままロボットのサービスに置き換えようとした際に発生しやすい。
【００１２】
そのためサービス開発者は、サービスで活用したい情報をサービス利用者から適切に取得する方法について検討する必要がある。質問ごとにサービスロボットが置かれうる状況を想定し、シナリオ作成ツールを用いてシナリオを作りこむことは、サービスロボットに詳しくないサービス開発者にとっては非常に大きなコストがかかり現実的ではない。
【００１３】
前述した特許文献１では、会話の内容から推定した状況を出力する自動対話作成方法が開示されているが、サービスロボットが行う発話の内容とロボットのおかれた環境の状況を照らし合わせて適切な行動をとる方法は提供されていない。
【００１４】
特許文献２、３では、ユーザやエージェントの内部状態を推定して応答文の生成を行っているが、サービスロボットが取得しようとする情報とサービスロボットのおかれた環境の状況に基づき行動制御を行うという方法は提供されていない。
【００１５】
特許文献４では、センサによるユーザの過去の状況を推定し、それが正しいかどうかを対話で解決しているが、サービスロボットが取得しようとする情報とロボットのおかれた環境の状況に基づき行動制御を行うという方法は提供されていない。特許文献５では、オンラインで不適切な状況を検出して警告を表示するアクションを行うが、サービスロボットで活用可能な環境情報や代替手段の適用については記載されていない。
【００１６】
そこで、本発明は上記問題点に鑑みてなされたもので、サービス開発者が作成したシナリオにおいて発生する不適切なサービスロボットの行動を回避することを目的とする。
【課題を解決するための手段】
【００１７】
本発明は、プロセッサと記憶装置を有して利用者と対話するロボットと、前記ロボットが配置される空間に設置されて、前記空間の環境状況を検出する環境センサと、前記環境センサと前記ロボットを接続するネットワークと、を含むロボット対話システムであって、前記ロボットは、音声情報によって前記利用者と対話を行う音声情報対話部と、文字情報によって前記利用者と対話を行う文字情報対話部と、前記ロボットを制御する対話手段と対話属性と対話内容を含む行動リストを予め設定したシナリオと、前記行動リストに含まれる対話手段の評価値を、環境状況と対話属性に応じて予め設定したスコア情報と、前記行動リストに含まれる対話手段を他の対話手段である代替手段に変換する代替手段情報と、を有し、前記プロセッサは、前記シナリオから前記利用者との対話に応じて行動リストを選択し、前記プロセッサは、前記環境センサから取得した情報に基づいて前記環境状況を算出し、前記プロセッサは、前記選択した行動リストに含まれる対話手段で代替手段情報を参照して代替手段に変換し、前記行動リストの対話手段を前記代替手段に置き換えた第２の行動リストを生成し、前記プロセッサは、前記生成した第２の行動リストに含まれる対話属性と、前記環境状況に基づいて、前記スコア情報から代替手段の評価値を算出し、前記プロセッサは、前記代替手段の前記評価値が最大の前記第２の行動リストを選択する。
【発明の効果】
【００１８】
本発明によれば、サービス開発者が作成したシナリオにおいて発生する不適切なロボットの行動をロボットが環境情報などを用いて自ら回避し、適切な情報取得とそれに基づいたサービスの提供が可能となる。
【図面の簡単な説明】
【００１９】
【図１】本発明の第１の実施例を示し、移動ロボット対話システムの一例を示す概略図である。
【図２】本発明の第１の実施例を示し、移動ロボット対話システムの一例を示すブロック図である。
【図３】本発明の第１の実施例を示し、サービスロボットで実行されるメインプログラムの処理の一例を示すフローチャートである。
【図４】本発明の第１の実施例を示し、サービスロボットのスコアテーブルの一例を示す図である。
【図５】本発明の第１の実施例を示し、サービスロボットの代替手段テーブルの一例を示す図である。
【図６】本発明の第１の実施例を示し、サービスロボットのシナリオの一例を示す図である。
【図７】本発明の第２の実施例を示し、移動ロボット対話システムの一例を示すブロック図である。
【図８】本発明の第３の実施例を示し、移動ロボット対話システムの一例を示すブロック図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態を添付図面に基づいて説明する。
【実施例１】
【００２１】
移動ロボット対話システムの実施例の１つを説明する。図１は、移動ロボット対話システム１０の第１の実施例形態を示す概略図である。
【００２２】
移動ロボット対話システム１０は、サービスロボット２０−ａ、２０−ｂと、環境カメラ３０−ａ、３０−ｂと、ディスプレイ４０と、無線アクセスポイント５０から構成される。なお、以下では、サービスロボットの全体について説明する場合には、「−」以降を省略した符号「２０」を用いる。その他の、構成要素の符号についても同様である。
【００２３】
環境カメラ３０と、ディスプレイ４０及び無線アクセスポイント５０は、サービスロボット２０が稼働する空間内に設置されて、無線ネットワークを提供してサービスロボット２０に接続される。サービスロボット２０は自身に搭載されたセンサの情報や、環境カメラ３０からの画像により現在の空間の環境状況を把握しつつ、サービス開発者によって与えられたシナリオに従って稼働する。
【００２４】
環境カメラ３０と、ディスプレイ４０及び無線アクセスポイント５０は有線のＴＣＰ／ＩＰプロトコルによるネットワーク６０（図２参照）により接続され、サービスロボット２０は無線アクセスポイント５０を経由してＴＣＰ／ＩＰのネットワーク６０に接続され、相互に通信可能な状態である。環境カメラ３０は市販のＷｅｂカメラを採用することができ、取得した映像または画像をサービスロボット２０に送信する手段を含む。ディスプレイ４０は市販のサイネージ装置を採用することができ、サービスロボット２０からの指示を受信したとき画面に所定の情報を表示する手段を有する。
【００２５】
図２は、移動ロボット対話システムの一例を示すブロック図である。
【００２６】
サービスロボット２０−ａのバス２１０は、ＣＰＵ２２１と、ネットワークインターフェース（図中ＮＩＦ）２２２と、マイク（音声情報入力装置）２２３と、スピーカ（音声情報入力装置）２２４と、カメラ２２５と、入出力装置２２６と、移動装置２２７及び記憶装置２２０を相互に接続してデータ信号を中継するもので、汎用のＰＣで用いられる規格（ＰＣＩなど）を用いることができる。なお、サービスロボット２０−ｂも同様の構成であるので重複する説明は省略する。
【００２７】
ＣＰＵ１２０は記憶装置２２０にロードしたプログラムを実行し、マイク２２３やカメラ２２５から取得した情報（音声情報や画像情報）に基づいて、移動装置２２７やスピーカ２２４や入出力装置２２６に所定の信号を出力してサービスロボット２０を制御する。なお、汎用のＣＰＵやチップコントローラを用いることができる。
【００２８】
マイク２２３は、サービスロボット２０周辺の音声や利用者の音声を収録（または入力）する音声情報入力装置で、例えば市販のコンデンサマイクとＡ／Ｄコンバータを用いることができる。
【００２９】
スピーカ２２４は、サービスロボット２０が利用者への問いかけや、利用者への応答を出力する音声情報出力装置である。マイク２２３とスピーカ２２４は、音声により利用者と対話を実施する音声情報対話部を構成する。
【００３０】
カメラ２２５は、サービスロボット２０の周囲の映像または画像を撮影する。カメラ２２５が取得した画像情報に基づいて、メインプログラム１３１の画像認識部が利用者の認識や、空間内の混雑度の算出を実施する。
【００３１】
ネットワークインターフェース（図中ＮＩＦ）２２２は、無線アクセスポイント５０に接続されて、サービスロボット２０が配置された空間内の環境状況（混雑度など）を検出する環境カメラ３０やディスプレイ４０と通信を行う。なお、サービスロボット２０は、自身のカメラ２２５に加えて環境カメラ３０から取得した画像情報からサービスロボット２０の周囲の状況を判定することで、サービスロボット２０が配置された空間の環境状況を正確に判定することができる。また、サービスロボット２０は、利用者への応答として画像情報を利用する場合には、空間に設置されたディスプレイ４０に出力することができる。
【００３２】
なお、サービスロボット２０を配置する空間で、混雑度などの環境状況を検出する環境センサとしては、空間内に設置された環境カメラ３０の他に、騒音を検出するマイクや、生体の移動を検出する動体センサを用いるようにしてもよい。これらの環境センサは、空間内の複数の箇所に配置されてネットワーク６０に接続される。特に、サービスロボット２０の所定の移動先となる場所（Ａ）等の混雑度を検出可能なように環境センサを空間内に配置するのが望ましい。
【００３３】
入出力装置２２６は、利用者との応対で使用するタッチパネル付き表示装置やプリンタなどで構成される。入出力装置２２６は、利用者との応対に音声を使うことが望ましくない場合などに、画像や文字情報の表示あるいは印刷や、文字情報の入力を行うことができる。入出力装置２２６は、文字情報によって利用者との対話を行う文字情報対話部を構成する。なお、文字情報対話部としてディスプレイ４０を加えるようにしても良い。
【００３４】
移動装置２２７は、サービスロボット２０を空間内で移動させる動力装置と制御装置を含む。
【００３５】
記憶装置２２０はプログラムやデータを格納するもので、例えば市販のＤＲＡＭやＨＤＤやＳＳＤを用いることができる。
【００３６】
記憶装置２２０には、サービスロボット２０を制御するメインプログラム１３１と、実行する対話の手段と環境状況に応じたスコア（評価値）が予め設定されたスコアテーブル１４１と、実行する対話の手段の代替手段が予め設定された代替手段テーブル１４２と、実行する対話の手段と対話の属性と対話の内容を含む行動リストが予め設定されたシナリオ１４３が格納される。
【００３７】
なお、上記ではサービスロボット２０のセンサとしてマイク２２３やカメラ２２５を使用する例を示したが、これらに限定されるものではなく、温度センサや動体検知センサや加速度センサや位置センサや光量センサやタッチセンサなどの各種センサを含むことができる。なお、メインプログラム１３１には、サービスロボット２０に搭載されたセンサに応じて画像認識や音声認識や動体認識等のセンサ情報を認識するためのモジュールが含まれる。
【００３８】
ＣＰＵ２２１は、各機能部のプログラムに従って処理することによって、所定の機能を提供する機能部として稼働する。例えば、ＣＰＵ２２１は、メインプログラム１３１に従って処理することでロボット制御部として機能する。他のプログラムについても同様である。さらに、ＣＰＵ２２１は、各プログラムが実行する複数の処理のそれぞれの機能を提供する機能部としても稼働する。計算機及び計算機システムは、これらの機能部を含む装置及びシステムである。
【００３９】
図３は、サービスロボット２０で実行されるメインプログラム２３１の一例を示すフローチャートである。
【００４０】
メインプログラム１３１は、サービスロボット２０の起動後に開始される（Ｓ０１）。まず、メインプログラム１３１は、スコアテーブル１４１を記憶装置２２０から読み込む（Ｓ０２）。次に、メインプログラム１３１は、代替手段テーブル１４２を記憶装置２２０から読み込む（Ｓ０３）。次に、メインプログラム１３１は、シナリオ１４３を記憶装置２２０から読み込む（Ｓ０４）。
【００４１】
メインプログラム１３１は、カメラ２２５やマイク２２３や入出力装置２２６等のセンサからのセンサ情報に基づいて利用者の有無を判定する。利用者が存在する場合にはステップＳ０６へ進み、利用者が存在しない場合には待機する。なお、利用者の有無の判定は、画像認識や音声認識などの周知または公知の技術を適用すれば良いので、説明は省略する。
【００４２】
図４は、サービスロボット２０のスコアテーブル１４１の一例を示す図である。
【００４３】
スコアテーブル１４１は関係データベースのテーブルである。スコアテーブル１４１の各レコードは、対話の内容の属性を格納する属性１４１１、サービスロボット２０の周囲の環境状況を格納する環境状況１４１２と、対話の手段を格納する手段１４１３と、対話の属性と環境状況に応じた対話の手段１４１３に対する評価値が予め設定された格納するスコア１４１４とを含む。
【００４４】
スコアテーブル１４１は、属性条件としての属性１４１１と、環境状況条件としての環境状況１４１２と、手段条件としての手段１４１３の３つの情報をキーとしてスコア１４１４を定義する。
【００４５】
属性条件は後述するシナリオ１４３内の具体的な行動（対話）に付与される属性が満たすべき条件を示す。環境状況条件はサービスロボット２０が取得可能な環境状況が満たすべき条件を示す。手段条件は後述するシナリオ１４３の行動リスト１４３２に記載された対話の手段が満たすべき条件を示す。
【００４６】
対話の手段の例としては、サービスロボット２０が音声により問い合わせて、音声認識により利用者の音声情報を変数へ変換する「ＱＵＥＳＴＩＯＮ」や、変数の値によりシナリオ１４３に設定された行動リスト番号１４３１を変更する「ＣＡＳＥ」や、音声により情報を提供する「ＳＡＹ」や、シナリオ１４３の行動リスト番号１４３１を変更する「ＧＯＴＯ」や、利用者を所定の場所まで案内しながら移動する「ＧＵＩＤＥＴＯ」や、サービスロボット２０が有する入出力装置２２６により利用者から情報を取得する「ＩＮＰＵＴ」や、入出力装置２２６やディスプレイ４０により情報を提供する「ＤＩＳＰＬＡＹ＿ＳＥＮＴＥＮＣＥ」や、紙面への印刷により情報を提供する「ＰＲＩＮＴ」等がある。スコアテーブル１４１はサービスを行う主体のポリシーに従い、サービスの種類に依存せずに予め設定される。
【００４７】
また、環境状況１４１２の「人が多い」、「人が少ない」という状況は、サービスロボット２０が、各センサで検出したデータに基づいて算出した人数と、所定の閾値を比較することで判定することができる。
【００４８】
また、環境状況１４１２は、人数の他に、空間内の人の密度を混雑度として算出してもよく、混雑度が所定の閾値以上であれば混雑（人が多い）と判定し、混雑度が閾値未満であれば空いている（人が少ない）と判定することができる。また、混雑度は、複数の環境カメラ３０からの画像情報を周知または公知の検出技術によって算出することができる。
【００４９】
また、環境状況１４１２は、サービスロボット２０の位置の光量から明暗を算出してもよく、光量が閾値以上であれば明るいと判定し、光量が閾値未満であれば空いて暗いと判定することができる。サービスロボット２０の位置における明暗によって、情報を提供する装置を入出力装置２２６からディスプレイ４０に切り替えることができる。
【００５０】
また、環境状況１４１２は、サービスロボット２０の位置で測定したマイク２２３の音量から騒音を算出してもよく、騒音が閾値以上であれば「うるさい」と判定し、騒音が閾値未満であれば「静か」と判定することができる。サービスロボット２０の位置における騒音の大きさによって、情報を提供する装置をスピーカ２２４から入出力装置２２６やディスプレイ４０に切り替えることができる。
【００５１】
図５は、サービスロボット２０の代替手段テーブル１４２の一例を示す図である。
【００５２】
代替手段テーブル１４２のテーブルの各行は手段リストグループである。相互に代替可能な手段リストを手段リストグループとして定義している。手段１４２１には、代替対象を検討する手段が格納される。代替手段１４２２〜１４２４には、手段１４２１を代替する手段が格納される。なお、図示の例では、最大３つの代替手段を列挙する手段リストの例を示すが、これに限定されるものではない。
【００５３】
手段リストは複数の手段から構成されてもよく、図示の例では手段がセミコロンで区切られて表記されている。代替手段テーブル１４２はサービスロボット２０や他の環境カメラ３０やディスプレイ４０等の利用可能な装置の種類に応じて、サービスの種類に依存せずに生成される。
【００５４】
図６はサービスロボット２０のシナリオ１４３の一例を示す図である。
【００５５】
シナリオ１４３の各行は行動リスト番号１４３１と行動リスト１４３２からなる。行動リスト１４３２はサービスロボット２０が利用者などに対して実施する行動のリストであり、図ではセミコロンで区切られて１以上の行動が表記されている。行動リスト１４３２内の「行動」は「対話の手段」と「対話の内容」からなる。「対話の内容」には「対話の属性」を含むことができる。
【００５６】
上述のように「対話の手段」は音声により情報を提供する「ＳＡＹ」等のようにサービスロボット２０が実施する「行動」を示す。そして、「対話の内容」は「小型冷蔵庫ＸＸがおすすめです」等の音声情報または文字情報の内容を示す。「対話の属性」は、図示の「目的」や「家族構成」や「住宅種別」や「案内場所」のように対話の内容がどのようなカテゴリであるかを示す情報である。シナリオ１４３はサービス開発者により予め生成され、サービスロボット２０内に配置されている。
【００５７】
図３に戻って説明を続ける。メインプログラム１３１は、カメラ２２５やマイク２２３等のセンサからの情報に基づいて上述の画像認識や音声認識により、実行するシナリオ１４３の行動リスト番号１４３１を決定して変数Ｎに代入する（Ｓ０６）。
【００５８】
例えば、メインプログラム１３１は、利用者との対話が初回の対話であれば、図６に示したシナリオ１４３の行動リスト番号１４３１が「１」の行動リストを選択し、「何かお手伝いしましょうか？」と発話し、利用者からの応答に応じた行動リスト番号１４３１を選択する。
【００５９】
図６に示した行動リスト番号１４３１が「１」の行動リストでは、利用者からの回答が「商品説明」の要求であれば行動リスト番号１４３１が「２」の行動リストへ移行し、利用者からの回答が「購入手続き」であれば行動リスト番号１４３１が「９」の行動リストへ移行し、利用者からの回答が「場所案内」の要求であれば行動リスト番号１４３１が「１０」の行動リストへ移行する。
【００６０】
メインプログラム１３１は、以降、利用者との対話に応じてシナリオ１４３の行動リスト番号１４３１を選択して実行する。
【００６１】
メインプログラム１３１は、サービスロボット２０のセンサや、環境カメラ３０から画像情報を取得して、現在の環境状況を算出し、環境状況を更新する（Ｓ０７）。メインプログラム１３１が取得する情報としては、空間内の人の数、騒音の値、照明の光量、サービスロボット２０自身の位置などがある。なお、環境状況としては、空間内の人の数に代わって混雑度などの指標を用いるようにしてもよい。
【００６２】
次に、メインプログラム１３１は、シナリオ１４３の行を示す変数Ｎに対応する行動リスト１４３２を取得する。メインプログラム１３１は、取得した行動リスト１４３２内の手段を選択し、代替手段テーブル１４２の手段１４２１が当該手段に該当するレコードを検索する。
【００６３】
メインプログラム１３１は、代替手段テーブル１４２の該当レコードから代替手段１４２２〜１４２４を、代替手段ルールにより置き換えることが可能な行動（対話の代替手段）として取得する。そして、メインプログラム１３１は、取得した代替手段で行動リスト１４３２内の手段を置き換えた新たな行動リストを生成し、置き換え後の行動リストの集合Ｐを生成する（Ｓ０８）。なお、集合Ｐに置き換え前の対話の手段１４２１を加えて、後述する比較を行うようにしても良い。
【００６４】
次に、メインプログラム１３１は、集合Ｐの各行動リストＸについて、それぞれスコアＳ（Ｘ）を計算する（Ｓ０９）。ここで、スコアＳ（Ｘ）は、
Ｓ（Ｘ）＝Ｓ（ｘ１）＋…＋Ｓ（ｘｉ）        ……（１）
と定義する。
【００６５】
ｘｉは、行動リストＸのｉ番目の行動であり、Ｓ（ｘ）は手段ｐと内容ｑから計算される。すなわち、メインプログラム１３１は、行動リストＸのｉ番目の行動について手段と内容（属性）を取得して、スコアテーブル１４１を参照し、手段１４１３と属性が一致するエントリのスコア１４１４を取得してＳ（ｘｉ）を算出する。メインプログラム１３１は、行動リストＸ内の全ての行動ｘｉについてスコア１４１４を加算してスコアＳ（Ｘ）の総和を算出する。
【００６６】
手段ｐ＝「ＱＵＥＳＴＩＯＮ」のとき、内容ｑは属性と、質問文と、結果代入変数からなる。Ｓ（ｘ）＝−ｌｅｎｇｔｈ（質問）、ｐ＝「ＳＡＹ」のとき内容ｑは発話文である。Ｓ（ｘ）＝−ｌｅｎｇｔｈ（発話文）、ｐ＝「ＧＵＩＤＥＴＯ」のとき内容ｑは場所識別子である。Ｓ（ｘ）＝−ｄｉｓｔａｎｃｅ（場所識別子）＊１０、ｐ＝「ＩＮＰＵＴ」のとき内容ｑは属性、質問文、結果代入変数からなる。
【００６７】
Ｓ（ｘ）＝−ｌｅｎｇｔｈ（質問）＊０．１、ｐ＝「ＤＩＳＰＬＡＹ＿ＳＥＮＴＥＮＣＥ」のとき内容ｑはディスプレイ識別子と提示文からなる。
【００６８】
Ｓ（ｘ）＝−ｌｅｎｇｔｈ（提示文）＊０．０１、ｐ＝「ＰＲＩＮＴ」のとき内容ｑは提示文である。Ｓ（ｘ）＝ｌｅｎｇｔｈ（提示文）＊２、それ以外はＳ（ｘ）＝０とする。ここでｌｅｎｇｔｈ（ｑ）はｑの文字列長、ｄｉｓｔａｎｃｅ（ｑ）は現在地から場所識別子ｑが示す地点への距離を示す。
【００６９】
なお、本発明は、上記のスコア計算式に限定されるものではなく、任意の計算式を適用してよい。なお、本発明は、スコアの計算に使用する情報を実施例に限定されるものではなく、例えば環境状況１４１２により、例えば装置が使用中であることなどから利用者への画面への提示が不適切と判断された場合に、Ｓ（ｘ）の値をさらに小さい値に補正するというように、別の環境状況の変数を考慮することもできる。
【００７０】
次に、メインプログラム１３１は、上記総和を計算した集合Ｐの各行動リストＸのスコアのうち、スコアＳ（Ｘ）が最大（負値の場合は絶対値が最小）となる行動リストＸを行動リストＹとして選択する（Ｓ１０）。
【００７１】
最後にメインプログラム１３１は、行動リストＹの各行動ｙについて実行する（Ｓ１１）。
【００７２】
行動ｙの手段ｐと内容ｑについて、手段ｐ＝「ＱＵＥＳＴＩＯＮ」のとき、内容ｑは属性、質問文、結果代入変数からなり、メインプログラム１３１は、質問文を再生し、図示しない音声認識エンジンによりマイク２２３からの音声を認識し、音声認識結果を結果代入変数に代入する。
【００７３】
音声認識エンジンは市販の音声認識エンジンやＷｅｂの音声認識サービスを用いることができる。音声認識エンジンに辞書や文法を提供する必要がある場合は、辞書などを内容ｑに含めて提供する。
【００７４】
また、手段ｐ＝ＣＡＳＥのとき、内容ｑは変数、および変数値と移動先の行動リスト番号１４３１のリストからなり、リスト内の変数値と変数を比較して一致した移動先の行動リスト番号１４３１を変数Ｎをセットする。
【００７５】
手段ｐ＝「ＳＡＹ」のとき、内容ｑは発話文であり、メインプログラム１３１は、発話文を再生する。手段ｐ＝「ＧＯＴＯ」のとき、内容ｑは行動リスト番号１４３１であり、メインプログラム１３１は、行動リスト番号を変数Ｎにセットする。
【００７６】
手段ｐ＝「ＧＵＩＤＥＴＯ」のとき、内容ｑは場所識別子であり、メインプログラム１３１は、場所識別子が示す場所まで利用者を案内しながら移動する。案内の手続きは、利用者への声掛けや、利用者の追従を検出し、追従していないときに停止し再度声掛けを行う、などを含むことができる。
【００７７】
手段ｐ＝「ＩＮＰＵＴ」のとき、内容ｑは属性、質問文、結果代入変数からなり、メインプログラム１３１は、質問文をサービスロボット２０が有する入出力装置２２６に表示し、利用者へ回答を促す。メインプログラム１３１は、利用者の回答を結果代入変数に代入する。
【００７８】
手段ｐ＝「ＤＩＳＰＬＡＹ＿ＳＥＮＴＥＮＣＥ」のとき、内容ｑはディスプレイ識別子と提示文からなり、ディスプレイ識別子が示すディスプレイ４０（または入出力装置２２６）に対して提示文を出力する命令を送信する。
【００７９】
手段ｐ＝「ＰＲＩＮＴ」のとき、内容ｑは提示文であり、サービスロボット２０は入出力装置２２６のプリンタを用いて提示文を紙面へ印刷し、利用者に与える。
【００８０】
次に、サービスロボット２０が提供する応対の具体的な例について、以下に説明する。サービスロボット２０が利用者を案内し、シナリオ１４３の行動リスト番号１４３１＝３の「ＱＵＥＳＴＩＯＮ（Ｘ）」で家族構成を利用者から聞く場合について説明する。
【００８１】
メインプログラム１３１は、カメラ２２５や環境カメラ３０から取得した情報から空間内あるいはサービスロボット２０の周囲の人数を算出し、環境状況１４１２について「人が多い」か「人が少ない」のいずれかを判定し、環境状況を更新する（Ｓ０６）。この例では、環境状況１４１２は「人が多い」ものとする。
【００８２】
次に、メインプログラム１３１は、手段ｐ＝「ＱＵＥＳＴＩＯＮ（Ｘ）」として代替手段テーブル１４２を検索し、代替手段１４２２の「ＧＵＩＤＥＴＯ（Ａ）；ＱＵＥＳＴＩＯＮ（Ｘ）」と、代替手段１４２３の「ＩＮＰＵＴ（Ｘ）」を選択する。
【００８３】
メインプログラム１３１は、上記選択した代替手段と手段ｐから集合Ｐの行動リストＸを生成する。集合Ｐの行動リストＸは、「ＱＵＥＳＴＩＯＮ（Ｘ）」の手段を含む行動リストと、「ＧＵＩＤＥＴＯ（Ａ）；ＱＵＥＳＴＩＯＮ（Ｘ）」の手段を含む行動リストと、「ＩＮＰＵＴ（Ｘ）」の手段を含む行動リストから構成される（Ｓ０７）。
【００８４】
メインプログラム１３１は、環境状況１４１２＝「人が多い」を取得して、スコアテーブル１４１から行動リストＸの各手段について属性１４１１が「家族構成」のスコア１４１４をそれぞれ取得する。上記の場合、「ＧＵＩＤＥＴＯ（Ａ）」は、スコアテーブル１４１に存在しないので、各行動リストＸのスコアＳ（Ｘ）は、ひとつの手段１４１３の値となる。
【００８５】
まず、「ＱＵＥＳＴＩＯＮ（Ｘ）」の「家族構成」かつ「人が多い」のスコア１４１４は−３００となり、総和となるスコアＳ（Ｘ）＝−３００である。
【００８６】
「ＧＵＩＤＥＴＯ（Ａ）；ＱＵＥＳＴＩＯＮ（Ｘ）」の場合、所定の場所識別子（Ａ）における人の数を環境カメラ３０から取得して閾値と比較し、「人が少ない」と判定する。したがって、「ＧＵＩＤＥＴＯ（Ａ）；ＱＵＥＳＴＩＯＮ（Ｘ）」のスコア１４１４は、「家族構成」かつ「人が少ない」の−１０となり、スコアＳ（Ｘ）＝−１０となる。
【００８７】
「ＩＮＰＵＴ（Ｘ）」の「家族構成」は、環境状況１４１２を問わない「ＡＮＹ」であってスコア１４１４は−１０となり、スコアＳ（Ｘ）＝−１０となる。
【００８８】
次に、メインプログラム１３１は、最大のスコアＳ（Ｘ）の「ＧＵＩＤＥＴＯ（Ａ）；ＱＵＥＳＴＩＯＮ（Ｘ）」と「ＩＮＰＵＴ（Ｘ）」を選択する。スコアＳ（Ｘ）の最大値が複数存在する場合、メインプログラム１３１は、コスト（例えば、時間や距離）が低い行動リストＸを選択する。上記の例では、ＧＵＩＤＥＴＯ（Ａ）で所定の場所（Ａ）まで移動する時間が加算されるため、メインプログラム１３１は、コストの低い「ＩＮＰＵＴ（Ｘ）」を手段に含む行動リストＸを選択し、行動リストＹとして実行する。
【００８９】
これにより、サービスロボット２０は、利用者に対して当初は音声で「家族構成」を問い合わせる行動リストＸを、利用者が入出力装置２２６へ「家族構成」を入力する行動リストＹに変換することができる。したがって、利用者の個人情報にかかる情報を、多数の人がいる空間で音声によって回答させるのではなく、サービスロボット２０の周囲の環境状況１４１２に応じて、入出力装置２２６へ入力させる行動リストＹへ変換することで個人情報などのデリケートな情報を円滑に扱うことが可能となる。また、サービスロボット２０の発話についても同様であり、利用者の個人情報にかかる情報を、多数の人がいる空間で音声によって発話させるのではなく、サービスロボット２０の周囲の環境状況１４１２に応じて、入出力装置２２６へ表示させたり印刷にて出力する行動リストＹへ変換することで個人情報などのデリケートな情報を円滑に扱うことが可能となる。
【００９０】
また、ＳＡＹ（年齢；発話「年齢はＺＺですね。」）という対話の手段を含む行動リストの場合、人前で自身の年齢を告げられるのを嫌う利用者は多い。このため、スコアテーブル１４１では、手段１４１３が「ＳＡＹ」で、属性１４１１が「年齢」の場合、環境状況１４１２が「人が多い」ときにはスコア＝−１５００に設定し、「人が少ない」ときでもスコア＝−５００に設定する。これにより、スコアＳ（Ｘ）の総和が最大となることを抑制して、サービスロボット２０が「年齢」を発話することで、利用者の個人情報が周囲の他人に知られることを防ぐことが可能になる。
【００９１】
さらに、手段「ＳＡＹ」については、代替手段テーブル１４２において、代替手段１４２２＝「ＧＵＩＤＥＴＯ（Ａ）；ＳＡＹ（Ｘ）」や、代替手段１４２３＝「ＧＵＩＤＥＴＯ（Ｂ）；ＤＩＳＰＬＡＹ＿ＳＥＮＴＥＣＥ（Ｂ、Ｘ）や、ＰＲＩＮＴＯＵＴ（Ｘ）」のように、現在の位置でサービスロボット２０が発話を行う代替手段を定義しておく。
【００９２】
「ＧＵＩＤＥＴＯ（Ａ）；ＳＡＹ（Ｘ）」では、サービスロボット２０が所定の場所（Ａ）まで利用者を案内してから（Ｘ）の内容である「年齢」を発話する。あるいは、「ＧＵＩＤＥＴＯ（Ｂ）；ＤＩＳＰＬＡＹ＿ＳＥＮＴＥＣＥ（Ｂ、Ｘ）」では、サービスロボット２０が所定の場所（Ｂ）まで利用者を案内してから（Ｘ）の内容である「年齢」を入出力装置２２６やディスプレイ４０で表示する。または、「ＰＲＩＮＴＯＵＴ（Ｘ）」では、サービスロボット２０現在の場所で（Ｘ）の内容である「年齢」を入出力装置２２６で印刷して利用者に提供する。
【００９３】
以上のような代替手段を代替手段テーブル１４２に予め設定しておくことで、サービスロボット２０の周囲の人が聞いて欲しくない利用者に関する情報（年齢や口座番号など）が発話によって出力されるのを回避する手段１４２２〜１４２４に置き換えることが可能となる。
【００９４】
以上により説明した内容で移動ロボット対話システム１０を構成することで、サービス開発者が作成したシナリオ１４３において発生する不適切なサービスロボット２０の行動を、環境（センサ）情報などを用いてサービスロボット２０が自ら回避し、適切な情報取得に基づいたサービスの提供が可能となる。
【実施例２】
【００９５】
図７は、本発明の第２の実施例を示す移動ロボット対話システム１０の一例を示すブロック図である。前記実施例１では、全てのセンサ情報をサービスロボット２０のメインプログラム１３１で処理する例を示したが、本実施例２ではサービスロボット２０が外部のサーバ７０に処理の一部を委託する例を示す。
【００９６】
本実施例２では、前記実施例１のサービスロボット２０が行っていた画像認識や音声認識や動体認識等のセンサ情報を認識するための処理を、サーバ７０で実行させる例を示す。
【００９７】
サービスロボット２０は、メインプログラム１３１Ａを除いて、前記実施例１と同様に構成される。メインプログラム１３１Ａは、前記実施例１のメインプログラム１３１から画像認識や音声認識や動体認識等のセンサ情報を認識するための処理を削除し、サーバ７０に認識処理を依頼する点が実施例１と相違する。メインプログラム１３１Ａは、マイク２２３、カメラ２２５、環境カメラ３０等のセンサ情報をサーバ７０に送信して認識処理を依頼し、認識結果を受信して、環境状況１４１２の算出などに利用する。なお、環境カメラ３０の情報は、サーバ７０から取得可能であるので、サービスロボット２０は、環境カメラ３０から画像情報を取得して処理を行う指示を発行すれば良い。
【００９８】
サーバ７０は、ＣＰＵ７０１とネットワークインターフェース（図中ＮＩＦ）７０２と記憶装置７２０とを含む計算機である。記憶装置７２０には、複数のサービスロボット２０を管理するロボット管理プログラム７３０と、サービスロボット２０から受信したセンサ情報から所定の認識処理を実行する認識プログラム７３１が格納される。
【００９９】
本実施例２のメインプログラム１３１Ａは、前記実施例１の図３に示したフローチャートのステップＳ０７で、サービスロボット２０が環境状況の算出をサーバ７０に指令する。サーバ７０は、環境カメラ３０から画像情報を取得して混雑度などの環境状況を算出してサービスロボット２０に送信する。サービスロボット２０はサーバ７０から受信した環境状況を用いてスコアの算出を実施する。
【０１００】
本実施例２では、サービスロボット２０のメインプログラム１３１Ａから、ＣＰＵ２２１の負荷が高い認識処理をサーバ７０に分散させることで、サービスロボット２０で行う処理の高速化を図ることができるのである。
【実施例３】
【０１０１】
図８は、本発明の第３の実施例を示す移動ロボット対話システム１０の一例を示すブロック図である。前記実施例１では、全てのセンサ情報をサービスロボット２０のメインプログラム１３１で処理する例を示したが、本実施例３ではサービスロボット２０が外部のサーバ７０に処理を委託する例を示す。
【０１０２】
本実施例２では、前記実施例１のサービスロボット２０が行っていた移動装置２２７や入出力装置２２６やカメラ２２５やスピーカ２２４やマイク２２３の制御を除く処理をサーバ７０で実行させる例を示す。
【０１０３】
サービスロボット２０は、メインプログラム１３１Ｂを除いて、前記実施例１と同様に構成される。メインプログラム１３１Ｂは、前記実施例１のメインプログラム１３１のうち、移動装置２２７や入出力装置２２６やカメラ２２５やスピーカ２２４やマイク２２３の制御を残したものである。前記実施例１の、シナリオ１４３の行動リストＸの決定や、環境状況１４１２の更新や、スコアＳ（Ｘ）の算出は、サーバ７０に依頼する。すなわち、メインプログラム１３１Ｂは、カメラ２２５と音声情報対話部と文字情報対話部及び移動装置２２７の制御を実行し、前記実施例１に示したその他の処理をサーバ７０に依頼する。
【０１０４】
サーバ７０は、ＣＰＵ７０１とネットワークインターフェース（図中ＮＩＦ）７０２と記憶装置７２０とを含む計算機である。
【０１０５】
記憶装置７２０には、複数のサービスロボット２０を管理するロボット管理プログラム７３０と、サービスロボット２０から受信したセンサ情報から行動リストＹを決定してサービスロボット２０に応答するロボット制御プログラム７３２と、前記実施例１の図４に示したスコアテーブル１４１と、前記実施例１の図５に示した代替手段テーブル１４２と、前記実施例１の図６に示したシナリオ１４３と、を格納する。サービスロボット２０は、センサ情報をサーバ７０へ送信して、行動リストＹを受信して実行する。
【０１０６】
本実施例３では、サービスロボット２０の制御をサーバ７０で決定することで、サービスロボット２０で行う処理負荷を低減することができ、サービスロボット２０のハードウェアを簡易にしてコストを低減させることができる。
【０１０７】
＜まとめ＞
なお、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に記載したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加、削除、又は置換のいずれもが、単独で、又は組み合わせても適用可能である。
【０１０８】
また、上記の各構成、機能、処理部、及び処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、及び機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１０９】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【０１１０】
２０−ａ、２０−ｂ  サービスロボット
３０−ａ、３０−ｂ  環境カメラ
４０  ディスプレイ
５０  無線アクセスポイント
６０  ネットワーク
１３１  メインプログラム１３１
１４１  スコアテーブル
１４２  代替手段テーブル
１４３  シナリオ
２２１  ＣＰＵ
２２０  記憶装置
２２２  ネットワークインターフェース
２２３  マイク
２２４  スピーカ
２２５  カメラ
２２６  入出力装置
２２７  移動装置
【図１】
2018067100.tif 000003
【図２】
2018067100.tif 000004
【図３】
2018067100.tif 000005
【図４】
2018067100.tif 000006
【図５】
2018067100.tif 000007
【図６】
2018067100.tif 000008
【図７】
2018067100.tif 000009
【図８】
2018067100.tif 000010