【実施例】
【0013】
(移動機器向けデータ分析システムの構成)
図1は、移動機器向けデータ分析システムの構成例を示すブロック図である。移動機器向けデータ分析システム1Sは、移動機器が設置されているサービス拠点101と、各種サーバが設置されている運用管理センタ100とから成る。運用管理センタ100には、移動機器の動作を制御するシナリオ制御サーバ9と、移動機器が収集する音声、画像、言語等の各種メディアを処理した処理結果を返すメディア処理サーバ8と、システムにおいて収集可能なデータを蓄積および管理するデータ管理サーバ3と、蓄積されたデータを分析して業務分析を実現する業務分析サーバ5とが設置されている。サービス拠点101と運用管理センタ100とはネットワーク1で接続されている。
【0014】
サービス拠点101にはサービス提供において主要な役割を果たす移動機器が設置される。移動機器には様々な形態があるが、ここでは自律移動が可能なロボット2−1〜2−M(以降ロボット2と総称)を対象として説明する。なお、移動機器には、コミュニケーションを用いて人間にサービスを提供するロボットに限定されるものではなく、ドローンや自動運転車のように広範囲を移動可能な機器も含まれる。
【0015】
ロボット2はロボット制御端末21を含み、ロボット2自身の機構制御とサービス制御を実行する。ロボット制御端末21はサーバのようにアプリケーションの実行に特化しているわけではなく、アプリケーションの実行に利用可能なCPU(Central Processing Unit)等の処理装置や、内部記憶装置(メモリ)、外部記憶装置(ストレージ)等の計算機資源は限られている。このため、多くのサービスの実行は外部に設置したサービス機器6−1〜6−N(以下サービス機器6と総称)と連携して行う。
【0016】
サービス機器6はサービス拠点101に設置され、ロボット2と構内LAN7で接続される。ロボット2およびサービス機器6はシステム稼働時に様々なデータを収集する。サービス機器6は、収集したデータを、データ収集ゲートウェイ4を通じて、運用管理センタ100に設置されたデータ管理サーバ3に送信する。データ管理サーバ3、業務分析サーバ5は運用管理センタ100に設置され、自システムの構成要素として運用されるものを用いるほか、外部に公開されたクラウド上で運営されたサーバを用いる場合もある。
【0017】
次に、移動機器向けデータ分析システム1Sを構成する各装置について詳しく説明する。
【0018】
(ロボットの構成)
図2は、ロボットの構成例を示すブロック図である。ロボット2は、ロボット制御端末21と、制御対象のカメラ291、モータ292、マイク293、スピーカー294、アクチュエータ295、各種センサー296から成り、ロボット制御端末21と制御対象の各デバイスは、ロボット制御端末21の外部入出力インターフェース29を通じて接続される。各種センサー296には距離センサーや測域センサー等が含まれる。ロボット制御端末21はバス28に接続された制御部(CPU)22と、メモリ等の内部記憶装置26と、ハードディスク等の外部記憶装置24と、ネットワークインターフェース20とを有し、ネットワークインターフェース20を介して外部と通信を行う。
【0019】
内部記憶装置26には、ロボットの機構、姿勢、および移動等を制御するロボット制御プログラム261と、サービスの実行を制御するシナリオ実行プログラム263と、ロボットが収集する各種データを送信するデータ送信プログラム265とを記憶する。
【0020】
これらのプログラムに加えて、ロボット2はロボットの状態に関する情報を管理するロボット情報データベース(DB:Data Base)267を備える。ロボット情報DB267は、システムの規模やロボット制御端末21の処理性能等に応じて、外部記憶装置24に格納してもよい。ロボット情報DB267は内部記憶装置26にインストールされているロボット制御プログラム261およびシナリオ実行プログラム263によって読み書きが行われる。制御部(CPU)22が内部記憶装置26に保存されたロボット制御プログラム261およびシナリオ実行プログラム263にアクセスすることで、ロボット2の制御機能が実現される。
【0021】
(ロボット情報DB)
図3は、ロボットが管理するデータの構成例を示す図である。
図3はロボット2の内部記憶装置26に格納されるロボット情報DB267のデータ構成例を表す。ロボット状態DB265はロボット2自身の状態に関する情報を管理するデータベースであり、ロボット2が設置されているサービス拠点101の拠点識別子と、システム内においてロボット2を一意に特定するロボット識別子と、ロボット2の拠点内のX座標およびY座標と、ロボット2を構成する各種部品の状態(ロボット構成部品状態)と、ロボット2が実行中のシナリオを特定するシナリオ識別子と、実行中のシナリオにおいて発生したイベントを特定するイベント識別子と、このイベントの発生日時とを含む。
【0022】
拠点識別子は拠点を一意に識別する識別子であり、例えば拠点の名称、あるいはシステムの命名規則に従って設定された文字列等が指定される。ロボット2には自己位置推定機能があり、レーザーレンジファインダ等を用いて周囲の壁と自身の距離を測定することで、サービス拠点101内の自身の位置(X座標、Y座標)を判定できる。
【0023】
ロボット2はカメラ291と、モータ292と、マイク293と、スピーカー294と、アクチュエータ295と、各種センサー296とを備えるため、これらの構成部品の情報を保持する。ロボット構成部品状態としては、これらの構成部品の稼働状態や、モータ292の回転角度等が挙げられる。
【0024】
ロボット2はサービスを実行するために、シナリオと呼ばれる、一連の動作を規定したプログラムを実行する。シナリオは提供するサービスに応じた機能を提供する。例えば商業施設において店舗の案内をするシナリオ、空港において観光案内をするシナリオ等がある。
【0025】
ロボット情報DB267は、ロボット2が実行中のシナリオを特定するためのシナリオ識別子を管理する。シナリオは、実行中に発生した特定の事象をイベントとしてロボット情報DB267に記録することができる。例えば商業施設における店舗案内のシナリオにおいては、顧客を検出した、顧客が行きたい店舗名を音声認識によって特定した、顧客が購入したい商品名を画像処理によって特定した、顧客が店舗の説明を聞いてロボットから離れた、等の事象が挙げられる。ロボット情報DB267はこれらのイベントについて、イベントを特定する識別子とイベントの発生日時を保存する。
【0026】
(サービス機器の構成)
図4は、サービス機器の構成例を示すブロック図である。サービス機器6は、サービス機器制御端末61と、外部の各種情報を取得する各種センサー691とから成り、サービス機器制御端末61と各種センサー691は、サービス機器制御端末61の外部入出力インターフェース69を通じて接続される。
【0027】
各種センサー691は目的に応じて選択され、例えば人間の接近を検出する人感センサー、温度を検出する温度センサー、画素センサー等が挙げられる。画素センサーを搭載した場合、サービス機器6は画像処理機能を備えたカメラとして実装されるケースもある。
【0028】
サービス機器制御端末61は、バス68に接続された制御部(CPU)62と、メモリ等の内部記憶装置66と、ハードディスク等の外部記憶装置64と、ネットワークインターフェース60とを有し、ネットワークインターフェース60を介して外部と通信を行う。
【0029】
内部記憶装置66には、各種センサー691を通じて取得したデータを分析および加工することで各種のイベント情報を抽出するサービス機器制御プログラム661が記憶される。内部記憶装置66はさらに、サービス機器6の状態を管理するサービス機器情報データベース(DB)665を備える。サービス機器情報DB665は、システムの規模やサービス機器制御端末61の処理性能等に応じて、外部記憶装置64に格納してもよい。サービス機器情報DB665は内部記憶装置66にインストールされているサービス機器制御プログラム661によって読み書きが行われる。制御部(CPU)62が内部記憶装置66に保存されたサービス機器制御プログラム661にアクセスすることで、サービス機器6の制御機能が実現される。
【0030】
(サービス機器情報DB)
図5は、サービス機器が管理するデータの構成例を示す図である。
図5はサービス機器制御端末61の内部記憶装置66に格納されるサービス機器情報DB665の構造を表す。サービス機器情報DB665の構造は、データ収集ゲートウェイ4の内部記憶装置46上にあるサービス機器情報DB463と同様であるため、詳細な説明は
図7を参照して後述する。
【0031】
(データ収集ゲートウェイの構成)
図6は、データ収集ゲートウェイの構成例を示すブロック図である。データ収集ゲートウェイ4は、バス48に接続された制御部(CPU)42と、メモリ等の内部記憶装置46と、ハードディスク等の外部記憶装置44と、ネットワークインターフェース40とを有し、ネットワークインターフェース40を介して外部と通信を行う。
【0032】
内部記憶装置46には、サービス機器の情報を管理するサービス機器情報管理プログラム461と、サービス機器情報を格納するサービス機器情報DB463とが記憶される。サービス機器情報管理プログラム461は外部記憶装置44にインストールされ、制御部(CPU)42によって必要時に起動される。また、サービス機器情報DB463は、システムの規模やデータ収集ゲートウェイ4の処理性能等に応じて、外部記憶装置44に格納してもよい。
【0033】
サービス機器情報DB463は内部記憶装置46にインストールされているサービス機器情報管理プログラム461によって読み書きが行われる。制御部(CPU)42が内部記憶装置46に保存されたサービス機器情報管理プログラム461にアクセスすることで、データ収集ゲートウェイ4はサービス機器の管理処理を実行する。
【0034】
(サービス機器情報DB)
図7は、データ収集ゲートウェイが管理するデータの構成例を示す図である。
図7はデータ収集ゲートウェイ4の内部記憶装置46に格納されるサービス機器情報DB463の構造を表す。サービス機器情報DB463はサービス拠点101ごとにサービス機器の情報を管理するデータベースであり、システム内でサービス拠点101を一意に特定する拠点識別子と、サービス提供に必要な機器を特定するサービス機器識別子と、サービス機器が検出したイベントを特定するイベント識別子と、イベントの発生日時と、サービス機器の位置情報とを含む。これらの情報は定期的に運用管理センタ100のデータ管理サーバ3に送信される。
【0035】
(シナリオ制御サーバの構成)
図8は、シナリオ制御サーバの構成例を示すブロック図である。シナリオ制御サーバ9はバス98に接続された制御部(CPU)92と、メモリ等の内部記憶装置96と、ハードディスク等の外部記憶装置94と、ネットワークインターフェース90とを有し、ネットワークインターフェース90を介して外部との通信を行う。
【0036】
内部記憶装置96は、ロボット2の動作シナリオを制御するシナリオ制御プログラム961を記憶する。制御部(CPU)92が内部記憶装置96に保存されたシナリオ制御プログラム961にアクセスすることで、シナリオ制御サーバ9はロボットのシナリオ制御処理を実行する。
【0037】
これらのプログラムに加えて、内部記憶装置96は、ロボットを制御するシナリオの状態)を管理するシナリオ情報DB965と、シナリオの実行状況(例えば主としてイベントに関する情報を管理するシナリオ実行情報DB967を備える。これらの各データベースは、システムの規模やシナリオ制御サーバ9の処理性能等に応じて、外部記憶装置94に格納してもよい。
【0038】
(シナリオ情報DBおよびシナリオ実行情報DB)
図9は、シナリオ制御サーバが管理するデータの構成例を示す図である。
図9はシナリオ制御サーバ9の内部記憶装置96に格納するシナリオ情報DB965およびシナリオ実行情報DB967の構造を表す。シナリオ情報DB965の内容はデータ管理サーバ3のシナリオ情報DB364と同様であり、シナリオ実行情報DB967の内容はデータ管理サーバ3のシナリオ実行情報DB367と同様であるため、詳細な説明は
図13を参照して後述する。
【0039】
(メディア処理サーバの構成)
図10は、メディア処理サーバの構成例を示すブロック図である。メディア処理サーバ8はバス88に接続された制御部(CPU)82と、メモリ等の内部記憶装置86と、ハードディスク等の外部記憶装置84と、ネットワークインターフェース80とを具備し、ネットワークインターフェース80を介して外部との通信を行う。
【0040】
内部記憶装置86は、各種のメディア処理を行うプログラムとして音声処理プログラム861と、画像処理プログラム863と、言語処理プログラム865とを記憶する。制御部(CPU)82が内部記憶装置86に保存された各プログラムにアクセスすることで、メディア処理サーバ8は各種メディア処理を実行する。これらのプログラムに加えて、メディア処理サーバ8はメディア処理の結果を格納するメディア処理情報DB867を備える。メディア処理情報DB867は、システムの規模やメディア処理サーバ8の処理性能等に応じて、外部記憶装置84に格納してもよい。
【0041】
(メディア処理情報DB)
図11は、メディア処理サーバが管理するデータの構成例を示す図である。
図11はメディア処理サーバ8の内部記憶装置86に格納されるメディア処理情報DB867の構造を表す。メディア処理情報DB867の内容はデータ管理サーバ3のメディア処理情報DB369と同様であるため、詳細な説明は
図13を参照して後述する。
【0042】
(データ管理サーバの構成)
図12は、データ管理サーバの構成例を示すブロック図である。データ管理サーバ3はバス38に接続された制御部(CPU)32と、メモリ等の内部記憶装置36と、ハードディスク等の外部記憶装置34と、ネットワークインターフェース30とを有し、ネットワークインターフェース30を介して外部と通信を行う。
【0043】
内部記憶装置36は、データ管理機能を提供するデータ管理プログラム361を記憶する。データ管理プログラム361は外部記憶装置34にインストールされ、制御部(CPU)32によってシステムの稼働開始時に起動される。
【0044】
データ管理プログラム361に加えて、データ管理サーバ3はサービス拠点101の情報を管理する拠点情報DB362と、サービス拠点101に設置されたロボット2の情報を管理するロボット情報DB363と、ロボット2を制御するシナリオの状態を管理するシナリオ情報DB364と、サービス機器の情報を管理するサービス機器情報DB365と、シナリオの実行状況(例えば主としてイベントに関する情報)を管理するシナリオ実行情報DB367と、ロボット2およびメディア処理サーバ8を通じて実行された音声や画像等のメディア処理の結果を格納するメディア処理情報DB369とを備える。これらの各データベースは、システムの規模やデータ管理サーバ3の処理性能等に応じて、外部記憶装置34に格納してもよい。各データベースは内部記憶装置36にインストールされているデータ管理プログラム361によって読み書きが行われる。制御部(CPU)32が内部記憶装置36に保存されたデータ管理プログラム361にアクセスすることで、データ管理サーバ3はデータ管理処理を実行する。
【0045】
(データ管理サーバが管理する各DB)
図13は、データ管理サーバが管理するデータの構成例を示す図である。
図13はデータ管理サーバ3の内部記憶装置36に記憶される各データベースの構造を表す。
【0046】
拠点情報DB362はサービス拠点101の情報を管理するデータベースであり、サービス拠点101を一意に特定する拠点識別子と、サービス拠点101の見取り図を特定する拠点マップ識別子とを含む。拠点マップはX座標およびY座標に関するデータを持ち、ロボット2はマップ内の自身の位置を自己位置推定によって把握できる。
【0047】
一般的にサービス拠点101は、用途によって複数の物理的ブロックに区分けされることが多い。例えば、商業施設であれば店舗ごとに一定のスペースを占有して来訪客にサービスを提供する。この複数の物理的ブロックを区別するため、拠点情報DB362は拠点マップにおけるX座標の範囲およびY座標の範囲と、これらの座標範囲に対応した場所識別子と、場所識別子で特定される場所で提供される業種の識別子と、業務の識別子とをさらに管理する。業種は業務の大分類を示すものであり、業務はある業種における特定の業務を表す。
【0048】
ロボット情報DB363の内容はロボット2のロボット情報DB267の内容と同様であるため、説明を割愛する。
【0049】
シナリオ情報DB364は、シナリオが稼働しているロボット2が設置された拠点を表す拠点識別子と、ロボット2を特定するロボット識別子と、ロボット2の動作を制御しているシナリオを特定するシナリオ識別子と、シナリオ中の状態を表す状態識別子と、シナリオが実現する業務を特定する業務識別子と、このロボット情報の入力元が何れのロボット2またはサービス機器6であるかを表す入力元識別子と、状態識別子で表される状態においてロボットが実行したアクションを特定するアクション識別子と、アクションの実行日時と、アクションの持続時間と、アクション実行後に遷移する遷移先状態とを含む。
【0050】
シナリオはロボットが能動的に行う行動(アクション)の時系列で表される。アクションの内容としては、ロボットが目の前にいる人間に発話した、人間の音声を認識した、人間の質問内容を理解して返答した、人間に対して手を振った等が挙げられる。アクションの持続時間はアクションの所要時間を設定する。ロボット2が腕を上げるというアクションを実行する場合、腕を真横から真上に3秒間で上げる場合と、5秒間で上げる場合の動作は異なる。ロボット2の機体の移動を例にとれば、アクションの持続時間はロボットの移動速度の制御に用いられるし、ロボット2の発話を例にとれば、アクションの持続時間は発話スピードに影響する。
【0051】
サービス機器情報DB365の内容はデータ収集ゲートウェイ4のサービス機器情報DB463の内容に、ロボット識別子を加えたものである。ロボット識別子は、サービス機器6と関連したロボット2を識別するものであるが、サービス機器6とロボット2の関連性を識別する方法としては、サービス機器6の設置位置と、ロボット情報DB363が管理するロボット2のX座標およびY座標を用いて、ロボット2がサービス機器6の所定範囲内の近傍にある時に関連したとみなし、対応するロボット識別子をサービス機器情報DB365のロボット識別子に格納する、という方法がある。
【0052】
シナリオ実行情報DB367はシナリオの実行中に発生したイベントの情報を管理するデータベースであり、シナリオが稼働しているロボット2が設置された拠点を表す拠点識別子と、ロボット2を特定するロボット識別子と、ロボット2の動作を制御しているシナリオを特定するシナリオ識別子と、シナリオの実行中に発生したイベントを特定するイベント識別子と、イベント発生日時と、イベントがシステム運用者にとって利益および不利益の何れをもたらすかを表すイベント成否を含む。
【0053】
イベントとはシナリオの特定の状態に遷移することによって発生する、サービス上特定の意味をもつ状態遷移を表す。例えば、商業施設において来訪客に商品の説明をするケースについて検討すると、来訪客がロボット2の説明の結果、商品の購入につながれば、商品購入というイベントが発生する。商品の購入はシステム運用者にとって望ましい結果であるため、イベントがシステム運用者に利益をもたらすとしてイベント成否に正の数値が格納される。発生したイベントがシステム運用者にとって望ましくない結果の場合は、イベント成否には負の数値が格納される。例えば来訪客が商品の説明を最後まで聞かず商品も購入せずに帰ってしまった、来訪客が怒り出してしまった、等のケースが該当する。
【0054】
メディア処理情報DB369はメディア処理の結果を格納するデータベースであり、シナリオが稼働しているロボット2が設置された拠点を表す拠点識別子と、ロボット2を特定するロボット識別子と、ロボット2の動作を制御しているシナリオを特定するシナリオ識別子と、処理対象のメディア種別と、処理内容およびその処理結果と、処理確度とを含む。
【0055】
ロボット2は人間に対してサービスを提供するため、人間がコミュニケ―ションに用いるメディアを処理する必要がある。主として音声、画像、言語の3つに大別され、それぞれのメディアに関連した処理内容がデータとして格納される。音声であれば音声認識や雑音除去等、画像であれば人物検出や性別検出、年齢推定等、言語であれば自然言語処理や翻訳等が例として挙げられる。メディア処理は100%正確に処理されるとは限らず、場合によっては確度(正確性)が担保されないような結果を返す場合もある。例えば音声認識が80%の確度であれば、音声認識結果のうち80%は正しいが、音声認識結果のうち20%は認識誤りである。そこで、処理結果と併せて処理確度もメディア処理情報DB369で管理する。
【0056】
(業務分析サーバの構成)
図14は、業務分析サーバの構成例を示すブロック図である。業務分析サーバ5はバス58に接続された制御部(CPU)52と、メモリ等の内部記憶装置56と、ハードディスク等の外部記憶装置54と、GUI(
図23を参照して後述)等を表示する表示装置55aが接続された表示制御部55と、ネットワークインターフェース50とを有し、ネットワークインターフェース50を介して外部との通信を行う。内部記憶装置56は、データ分析により業務分析を行ってシステムの業務改善施策を抽出する業務分析プログラム561を記憶する。制御部(CPU)52が、表示装置55aに表示されたGUI(Graphical User Interface)を介して業務分析実行者により設定入力された業務改善試行条件に基づいて内部記憶装置56に保存された業務分析プログラム561にアクセスすることで、業務分析サーバ5はシステムを通じた業務分析を実行する。
【0057】
業務分析プログラム561に加えて、業務分析サーバ5は業務改善施策の適用履歴を管理する業務改善履歴DB563と、改善したい業務指標値を管理する業務指標値DB565と、業務指標値の変化を時系列データとして管理する業務指標値履歴DBと、シナリオと業務指標値との関係を表すシナリオ属性情報DB569とを含む。これらの各データベースは、システムの規模や業務分析サーバ5の処理性能等に応じて、外部記憶装置54に格納してもよい。
【0058】
(業務分析サーバが管理するDB)
図15は、業務分析サーバが管理するデータの構成例を示す図である。
図15は業務分析サーバ5の内部記憶装置56に格納される各データベースの構造を表す。
【0059】
業務改善履歴DB563は、システムを通じて実行された業務指標値の改善履歴に関する情報を管理し、ロボット2が配置されているサービス拠点101の識別子と、ロボット2の識別子と、場所の識別子と、業務を特定する業務識別子と、改善された業務指標値の識別子と、改善に寄与したシナリオを特定するシナリオ識別子と、シナリオの修正内容と、改善施策の試行期間と、業務指標値の改善幅と、業務改善の適用日時とを含む。
【0060】
業務指標値DB565は改善対象となる業務指標値に関する情報を管理するデータベースであり、ロボット2を通じてサービスを提供している拠点の識別子と、改善対象の業務指標値を表す業務識別子とを含む。
【0061】
業務指標値とはサービス提供者が享受を期待する利益であり、端的な例としては商業施設における店舗の売上や集客率等である。システムが提案した業務改善施策が効果を上げることは必ずしも保証できないため、一定の試行期間を見て効果を検証した後、効果が認められた場合にこの業務改善施策を適用する必要がある。このため、各業務指標値には推奨される試行期間が存在する。業務指標値DB565ではこれをシナリオ修正試行期間として管理する。
【0062】
また、改善したい業務指標値と関連性の深いシナリオを抽出するには相関分析を行うが、相関の度合いによってシナリオの修正方法は異なるものとなる。これを実現するため、業務指標値DB565は業務指標値とシナリオの関連度を測る閾値をシナリオ関連度閾値1、シナリオ関連度閾値2、およびシナリオ関連度閾値3の3つに分けて管理している。
【0063】
業務指標値履歴DB567は業務指標値の変遷を時系列データとして管理するデータベースで、拠点を特定する拠点識別子と、検証対象の業務指標値識別子と、観測された業務指標値と、業務指標値の観測日時とを含む。
【0064】
シナリオ属性情報DB569はシナリオと検証対象の業務指標値を管理するデータベースであり、拠点識別子と、シナリオ識別子と、検証対象の業務指標値識別子と、観測された業務指標値と、業務指標値の観測日時とを含む。
【0065】
続いて、実施例の移動機器向けデータ分析システム1Sの全体の動作について説明する。先ず
図16のシーケンス図を用いて、ロボット2がシナリオを実行する基本的な処理について説明する。
【0066】
(メディア処理結果に応じてロボットがシナリオを実行する処理)
図16は、メディア処理結果に応じてロボットがシナリオを実行する処理例を示すシーケンス図である。ロボット2はシナリオ制御サーバ9が管理するシナリオに従って動作する。シナリオへの入力はロボット2を通じて収集した音声、画像、言語等のメディア情報や、サービス機器6から出力された処理結果等がある。
【0067】
ロボット2は、マイク293やカメラ291を通じて収集したメディア情報(メディアデータ)を、メディア処理サーバ8に送信する(ステップS1−01)。メディア処理サーバ8は、ステップS1−01で送信されたメディア情報を受信すると、受信したメディア情報の種類(音声、画像、言語等)に応じたメディア処理を実施する(ステップS1−02)。メディア情報が音声であれば、元の音声から雑音を除去して音声認識率を上げる処理を行ったり、音声認識をして音声をテキストに変換したりする処理が考えられる。
【0068】
メディア処理サーバ8は、1つ以上のメディア処理により目的の処理結果を得た後、処理結果をメディア処理情報DB867へ格納する(ステップS1−03)。その後、メディア処理サーバ8はメディア処理結果をシナリオ制御サーバ9へ送信する(ステップS1−04)。シナリオ制御サーバ9は、受信したメディア処理結果と、ロボット2に対するシナリオの状態に基づき、ロボットが次に実行すべきアクションを決定して、決定結果をシナリオ制御結果としてロボット2に送信する(ステップS1−05)。
【0069】
シナリオ制御結果にはロボット2がアクションを実行するために必要な制御パラメータが含まれている。アクションの内容が発話であれば、ロボット2が発話すべき内容が音声ファイルで格納されており、ロボット2は音声ファイルを再生することで目的を達成する。アクションの内容が腕ふり、うなずき等の動作モーションであれば、シナリオ制御結果はモータを制御するための回転角度を含む。アクションが移動であれば、目的地のX座標、Y座標が制御パラメータとしてシナリオ制御サーバ9からロボット2へ渡される。
【0070】
ロボット2にシナリオ制御結果を送信したシナリオ制御サーバ9は、一連の処理において得られたシナリオ情報およびシナリオ実行情報をシナリオ情報DB965およびシナリオ実行情報DB967へそれぞれ格納する(ステップS1−06)。
【0071】
シナリオ制御結果を受信したロボット2は、指定された制御パラメータに従ってアクションを実行し(ステップS1−07)、アクションの実行結果をロボット情報として、ロボット情報DB267に格納する(ステップS1−08)。シナリオ制御サーバ9はロボット2のアクション実行後に、シナリオの状態遷移を実行する(ステップS1−09)。
【0072】
(サービス機器の処理結果に応じてロボットがシナリオを実行する処理)
シナリオ制御はロボット2自身からの入力のほか、サービス機器6からの入力を用いる場合がある。
図17は、サービス機器の処理結果に応じてロボットがシナリオを実行する処理例を示すシーケンス図である。
図17はサービス機器6からの入力により、シナリオ制御およびシナリオの状態遷移が発生する例を示している。
【0073】
サービス機器6はサイネージ等の情報を提示する出力デバイスとして利用できるものもあるが、典型的には環境カメラや人感センサー等の外部の事象を何かしらのイベントとして検出するデバイスを想定している。例えば、サービス機器6が環境カメラであり、環境カメラが撮像範囲内に来訪客が入ってきたことを検出したとする。サービス機器6は、処理結果をデータ収集ゲートウェイ4経由でシナリオ制御サーバ9へ送信する(ステップS4−01およびS4−02)。
【0074】
データ収集ゲートウェイ4は、サービス機器6から受信したサービス機器処理結果をサービス機器情報としてサービス機器情報DB463へ格納する(ステップS4−03)。サービス機器処理結果を受信したシナリオ制御サーバ9は、受信したサービス機器処理結果と、ロボット2に対するシナリオの状態に基づき、ロボット2が次に実行すべきアクションを決定して、決定結果をシナリオ制御結果としてロボット2に送信する(ステップS4−04)。その後のステップS4−05〜S4−08の処理は、
図16のステップS1−06〜S1−09と同様である。
【0075】
図16および
図17の処理を繰り返すことでロボット2を制御するシナリオは進行し、ロボット2、サービス機器6、シナリオ制御サーバ9、およびメディア処理サーバ8にはシナリオの進行に伴って各種データが蓄積される。これら各種データは、次の
図18に示すように、所定の周期またはタイミングでデータ管理サーバ3に送信される。
【0076】
(データ管理サーバが各種データを収集する処理)
図18は、データ管理サーバが各種データを収集する処理例を示すシーケンス図である。
図18はロボット2、データ収集ゲートウェイ4、シナリオ制御サーバ9、およびメディア処理サーバ8がデータ管理サーバ3に分析用のデータを送信する様子を示している。
【0077】
ロボット2がロボット情報DB267で管理しているロボット情報は、ロボット2からデータ管理サーバ3へ送信される(ステップS2−01)。サービス機器6がサービス機器情報DB665で管理しているサービス機器情報はデータ収集ゲートウェイ4のサービス機器情報DB463で集約されて管理されており、データ収集ゲートウェイ4からデータ管理サーバ3へ送信される(ステップS2−02)。
【0078】
メディア処理サーバ8がメディア処理情報DB867で管理しているメディア処理情報は、メディア処理サーバ8からデータ管理サーバ3へ送信される(ステップS2−03)。シナリオ制御サーバ9がシナリオ情報DB965で管理しているシナリオ情報、およびシナリオ実行情報DB967で管理しているシナリオ実行情報は、シナリオ制御サーバ9からデータ管理サーバ3に送信される(ステップS2−04およびS2−05)。
【0079】
ステップS2−01、S2−02、S2−03、S02−04、およびS2−05でこれらの各種データを受信したデータ管理サーバ3は、受信した各種データを対応するデータベースへ格納する(ステップS2−06)。各種データの送信はロボット2、データ収集ゲートウェイ4、シナリオ制御サーバ9、メディア処理サーバ8毎に異なる周期、またはタイミングで行われ、データ管理サーバ3がデータを保存するタイミングもさまざまである。
【0080】
なお
図18のステップS2−06では全てのデータを受信してからデータ管理サーバ3はデータを対応するデータベースに格納しているが、実際の処理においては全てのデータが順序良く送信されるとは限らず、データを到着した順番にその都度データの格納を行う場合もありうる。
【0081】
(業務分析処理)
次に、業務分析サーバ5がデータ管理サーバ3に蓄積された各種データを用いて業務改善施策を抽出するための業務分析処理について説明する。
図19は、業務分析処理例を示すフローチャートである。
【0082】
業務分析処理において、先ず、業務分析サーバ5は、業務分析者が業務分析サーバ5に接続された表示装置55aに表示されているGUI(
図23を参照して後述)を介して、業務分析者により入力された業務分析対象のサービス拠点101と、改善対象の業務指標値と、業務指標値の改善目標値と、試行期間とを受け付ける(ステップF1−01)。
【0083】
業務指標値は、ビジネス上の業績を表す指標値であり、改善することで業績向上につながるものである。業績指標値は、売上や来客数や集客率等の直接的な効果が測定できる指標の他、顧客満足度や商品満足度等の間接的に効果を測る指標も含まれる。業務指標値は、その他のデータと同様に、何らかの方法で定期的に計測可能であることが求められる。例えば業務指標値が売上であれば、サービス拠点101での売買履歴や会計情報を管理する業務システムと連動することで、定期的に取得することができる。これらの業務指標値は、業務分析サーバ5の業務指標値履歴DB567で時系列データとして管理されている。
【0084】
ステップF1−01で改善対象の業務指標値が選択されると、業務分析サーバ5は業務指標値履歴DB567で管理されている業務指標値の時系列データと、データ管理サーバ3のシナリオ実行情報DB367を用いて相関分析を行い、業務指標値と相関性の高いシナリオをシナリオ実行情報DB367から抽出する。
【0085】
ここで、業務指標値との相関を、業務指標値DB565で管理される3つの閾値、シナリオ関連度閾値1、シナリオ関連度閾値2、およびシナリオ関連度閾値3を用いて分類する。これらの閾値は、シナリオ関連度閾値1>シナリオ関連度閾値2>シナリオ関連度閾値3の大小関係を有する。業務分析サーバ5は、業務指標値との相関値がシナリオ関連度閾値1以上であるシナリオは、業務指標値との関連性が高いため、特に修正を行わず利用を継続する(ステップF1−02)。これにより、業務指標値の改善に寄与しない修正シナリオを生成せず、効率的にシナリオ修正を行うことができる。
【0086】
また業務指標値との相関値がシナリオ関連度閾値2以上かつシナリオ関連度閾値1未満のシナリオは、動作モーションの実行タイミングや発話における間の取り方等、軽微な修正でシナリオの成功率が高まる、即ちシナリオ実行情報DB367のイベント成否における成功例が増加することが期待される。そこで、業務分析サーバ5は、業務指標値との相関がシナリオ関連度閾値2以上、シナリオ関連度閾値1未満のシナリオについては第一のシナリオ修正を試行する(ステップF1−03)。
【0087】
また業務指標値との相関値がシナリオ関連度閾値3以上かつシナリオ関連度閾値2未満のシナリオについては、シナリオに対して抜本的な対策をする必要があると考えられる。例えば、来訪客が知りたい情報に対応したコンテンツがシナリオ上で欠落しているケースが考えられる。このようなケースについては、メディア処理情報を解析してシナリオの改善を図るという第二のシナリオ修正を試行する(ステップF1−04)。
【0088】
なお業務指標値との相関値がシナリオ関連度閾値3未満のシナリオについては、業務指標値との関連性が低いと判断し、ステップF1−05で後述する試行期間にわたるサービスの実施時に利用しないようにする。あるいは、業務指標値との相関がシナリオ関連度閾値3未満のシナリオは、ステップF1−01で入力を受け付けた業務指標値に寄与しないものとして、実際のサービス提供時に利用するシナリオから除外することで、業務指標値に寄与しないシナリオに基づいてロボット2を制御する無駄を排除してもよい。第一シナリオ修正の試行および第二のシナリオ修正の試行の詳細については後述する。
【0089】
業務分析サーバ5は、上述の第一のシナリオ修正の試行および第二のシナリオ修正の試行の何れか一方または両方を組合せたシナリオ修正の試行を適用し、GUI(
図23参照)で指定された試行期間にわたってサービスを実施し、業務指標値を記録する(ステップF1−05)。試行期間が経過した後、業務分析サーバ5は、業務指標値が改善したか、即ち業務指標値の改善の有無を判定する(ステップF1−06)。これにより、1または複数のシナリオ修正の試行に基づくサービス実施による業務指標値の改善の有無を、1回の試行期間で効率的に検証できる。ここでは、業務指標値の改善とは、ステップF1−01で受け付けた業務指標値の改善目標値が達成されたこととするが、業務指標値の改善目標値の達成に限らず、業務指標値が所定数値以上または所定比率以上改善した場合であってもよい。
【0090】
業務指標値が改善されていれば(ステップF−106:YES)、業務分析サーバ5は、実施したシナリオ修正の試行を採用するため、選択したシナリオ修正を永続化させる。業務分析サーバ5は、この選択したシナリオ修正を、ロボット2を制御するシナリオに反映させてサービス提供を継続すると共に、今回の修正履歴を業務改善履歴DB563へ保存する(ステップF1−08)。
【0091】
業務指標値が改善されていなければ(ステップF1−06:NO)、業務分析サーバ5は、選択したシナリオに対する修正試行を破棄し、別のシナリオに対してシナリオの修正を試行し、再度、この別のシナリオの修正の試行に応じた試行期間にわたってサービスを実施して、業務指標値を記録する(ステップF1−07、F1−03、F1−04、F1−05)。
【0092】
(第一のシナリオ修正の処理)
図20は、第一のシナリオ修正の処理例を示すフローチャートである。
図20は
図19のステップF1−03の処理の詳細を示すものであり、業務分析処理において、業務指標値との関連がシナリオ関連度閾値2以上かつシナリオ関連度閾値1未満のシナリオに対する第一のシナリオ修正の施策の詳細処理フローを示す。サービスを実現するシナリオには、望ましい結果と望ましくない結果があり、それらはシナリオ実行情報DB367のイベント成否として管理されている。
【0093】
望ましい結果とは、シナリオが開始から最後まで順調に処理され、顧客の欲しい情報が得られたり、あるいはサービス提供者が提供したいサービスが利用されたり、商品が購入されたりした等の事象が発生することである。望ましくない結果は、必ずしも望ましい結果の逆の事象というわけではなく、例えば来訪客がロボットとのコミュニケーションをうまく取れずに、シナリオが最後まで行かずに途中で終了した等のケースが考えられる。ロボット2と人とのコミュニケーションは人間同士のコミュニケーションと異なる部分があり、一息間を入れてからでないとロボットが音声認識に失敗したりする場合がある。このような望ましくない結果に至る事象を解決する手段はいくつか考えられるが、最も実現が簡単なのはシナリオの実行においてモーションの持続時間を長くする、あるいは次のモーションまでの待機時間を長くすることで、ロボットに適した会話タイミングを自然な形で実現することである。
【0094】
図20に示す第一のシナリオ修正施策の決定処理において、業務分析サーバ5は、先ず、業務指標値との相関が第二の閾値以上かつ第一の閾値未満である修正対象のシナリオと類似の改善例があるかどうか業務改善履歴DB563を検索する(ステップF2−01)。類似の改善例とは、業務改善履歴DB563で管理されている業務改善履歴のうち、修正対象のシナリオと、業務指標値識別子、業務識別子、場所識別子、およびシナリオ修正内容が一致する業務改善履歴を意味する。業務指標値識別子、業務識別子、および場所識別子は、業務改善履歴DB563で管理されている。
【0095】
業務指標値識別子は、シナリオ識別子を用いてシナリオ属性情報DB569を検索して得ることができる。業務識別子は、シナリオ識別子を用いてシナリオ情報DB364を検索して得ることができる。また、場所識別子は、シナリオ実行情報DB367のロボット識別子を用いてロボット情報DB363を検索してロボットのX座標およびY座標を抽出して、抽出したロボットのX座標およびY座標を用いて拠点情報DB362を検索することで得ることができる。
【0096】
業務分析サーバ5は、修正対象のシナリオと類似の過去の改善例がある場合は(ステップF2−01:YES)、過去の改善例と類似している修正対象のシナリオのうち最も業務指標値と相関の高いシナリオを修正対象として選択する(ステップF2−02)。業務分析サーバ5は、修正対象のシナリオと類似の過去の改善例がない場合は(ステップF2−01:NO)、修正対象のシナリオの中で業務指標値との相関が最も高いシナリオを選択する(ステップF2−03)。このように、過去の改善事例を参照することで、より早い的確な業務指標値の改善が期待される。
【0097】
ステップF2−02またはF2−03で修正対象シナリオとしてシナリオを選択後、業務分析サーバ5は、修正対象シナリオに対応したシナリオ情報をシナリオ情報DB364から、修正対象シナリオに対応したシナリオ実行情報をシナリオ実行情報DB367からそれぞれ抽出する(ステップF2−04)。そして業務分析サーバ5は、シナリオ実行情報DB367から抽出したシナリオ実行情報のイベント成否を指標値として相関分析を実施する(ステップF2−05)。そして業務分析サーバ5は、ステップS2−05の分析結果として、負値のイベント成否、即ち望ましくない結果に対して正の相関をもつアクションを抽出する(ステップF2−06)。つまり業務分析サーバ5は、ステップF2−06により、抽出したアクションの負の影響度を抑えるように修正を加えることで、シナリオの修正施策(修正シナリオ)を生成する(ステップF2−07)。
【0098】
ここでアクションの負の影響度を抑える修正としては、例えば、アクションの実行速度を長くすることや、次アクションの待機時間を長くする等の修正施策が考えられる。ロボットとのコミュニケーションにおいては、会話タイミングがずれたり、いつロボットに話しかけてよいかを判断しにくかったり等の理由で、会話がスムーズに進まない等の事象が考えられるため、例えば会話を始める前の待機時間を長めに設定する、あるいは逆に会話前のモーションの動作速度を速める等の修正を行い、会話タイミングを合わせることで、人間とロボットの会話が、人間同士の会話と同様に自然に行われるような効果が期待できる。業務分析サーバ5は、ステップF2−07で修正を実行した後、修正したシナリオで業務指標値の改善効果を検証することになる。
【0099】
(第二のシナリオ修正の処理)
図21は、第二のシナリオ修正の処理例を示すフローチャートである。
図21は
図19のステップF1−05の処理の詳細を示すものであり、業務分析処理において、業務指標値との関連がシナリオ関連度閾値3以上かつシナリオ関連度閾値2未満のシナリオに対する、第二のシナリオ修正施策の詳細処理フローを示す。業務指標値との相関がシナリオ関連度閾値2未満であるようにそれほど高くないシナリオについては、モーションや発話タイミングの修正といった、比較的軽微な修正での対応は難しく、抜本的な改善が必要と考えられる。
【0100】
例えば、シナリオ実行においてロボット2が想定外の質問を受けた場合、ロボット2はその質問に適切に答えられないため、ユーザはロボット2との会話を途中で終了して去ってしまうことが考えられる。ロボット2が質問に適切に答えられないのは、質問に対する答えを保持していないからである。このような事象は、メディア処理サーバ8が管理するメディア処理情報DB867で管理されるメディア処理情報の処理確度の低さとして現れる。
【0101】
このように処理確度が低いメディア処理情報に対する対応機能を実装することで、シナリオの成功率を高めることが第二のシナリオ修正施策の目的である。
図21に示す第一のシナリオ修正施策の決定処理におけるステップF3−01、F3−02、F3−03の処理は、
図20のステップF2−01、F2−02、F2−03それぞれと同様である。
【0102】
ステップF3−02またはF3−03で修正対象シナリオとしてシナリオを選択後、業務分析サーバ5は、修正対象シナリオに対応するメディア処理情報をメディア処理情報DB369から抽出する(ステップF3−04)。次に、業務分析サーバ5は、ステップF3−04で抽出したメディア処理情報に対してさらに、処理確度が所定閾値以下のメディア処理情報を抽出する(ステップF3−05)。このとき、業務分析サーバ5は、ステップF3−05で抽出したメディア処理情報に対応するシナリオを表示装置55aに表示する等して提示する。これにより、シナリオ開発者は、ステップF3−02またはF3−03で選択された修正対象シナリオのうち、抜本的な改善が必要なシナリオを容易に認識できる。
【0103】
処理確度が低いメディア処理とは、メディアを処理するための学習データが足りない、あるいは想定外の質問で対応できない等の理由でシナリオが正常に動作しないことが考えられるので、抽出したメディア処理に対する修正施策が実施される(ステップF3−06)。メディア処理に対する修正施策は、シナリオ開発者が手動でシナリオを修正することを想定する。例えば学習データの追加や、新たな質問文とそれに対する返答の追加が考えられる。
【0104】
例えば、小売店等でのシステム運用では、小売店が取り扱う商品に関する情報提供を実施することが一般的であるが、人間は小売店で売っている商品の他に、その商品と関連性の高い別の商品に関する質問をすることが考えられる。別の商品が小売店で取り扱っていない商品の場合、その商品に関する情報、例えばどのような販売店で取り扱っているか、その販売店はどこにあるか等に関する情報を追加することで、その後のサービスを円滑に運用することが可能になる。業務分析サーバ5は、メディア処理に対する修正施策の実施が完了すると、修正したシナリオで試行期間にわたりサービスを実施し、業務指標値の変化を記録して検証する。
【0105】
(業務分析処理)
次に、上述した業務分析処理の一連の流れを説明する。
図22は、業務分析処理例を示すシーケンス図である。業務分析処理において、業務分析サーバ5は、先ず、GUI(
図23参照)を介して、業務改善対象のサービス拠点101と、改善対象の業務指標値との選択を受け付けると共に、改善対象の業務指標値の目標値の入力を受け付ける(ステップS3−01)。次に業務分析サーバ5は、業務分析に必要なデータをデータ管理サーバ3に要求して取得する(ステップS3−02およびS3−03)。
【0106】
業務分析に必要なデータとは、拠点情報DB362、ロボット情報DB363、シナリオ情報DB364、サービス機器情報DB365、シナリオ実行情報DB367、メディア処理情報DBそれぞれで管理される情報のうち、ステップS3−01で選択した業務改善対象のサービス拠点101に対応した拠点識別子を持つデータを指す。業務分析サーバ5は、
図19、
図20および
図21のフローチャートに示す処理フローに従って、シナリオ修正施策を作成し(ステップS3−04)、このシナリオ修正施策に沿って修正したシナリオをシナリオ制御サーバ9に送信する(ステップS3−09)。
【0107】
シナリオ制御サーバ9は、所定の試行期間にわたって、修正されたシナリオでサービス提供を行う(ステップS3−06)。業務分析サーバ5は、ステップS3−06の試行期間にわたる修正シナリオの試行中に、改善対象の業務指標値を観測し記録する(ステップS3−07)。業務分析サーバ5は、ステップS3−07において観測し記録した業務指標値の増減幅に応じてシナリオ修正施策の適用可否を判断する(ステップS3−08)。業務分析サーバ5は、ステップS3−07において観測し記録したシナリオの業務指標値の増減幅がシナリオ修正可に該当する場合は、シナリオ修正適用要求をシナリオ制御サーバ9に送信して(ステップS3−09)、業務改善対象のシナリオに実施した修正施策を永続化させる(ステップS3−10)。試行期間にわたって修正シナリオを実施し、改善対象の業務指標値の改善効果を観測した上でシナリオ修正施策の適用可否を判断することで、業務指標値の改善効果がある修正施策を適切に永続化させることができる。
【0108】
(シナリオ修正の際に用いられるGUI)
図23は、シナリオ修正の際に用いられるGUIの構成例を示す図である。
図23は業務改善を実施する際に、業務改善の試行条件を設定するために業務分析者が操作する、表示装置55aに表示されるGUI55a1のイメージである。業務分析者は、業務改善を実施するにあたり、業務改善対象のサービス拠点101をプルダウンメニュー55a1aから選択入力し、業務改善対象の業務指標値をプルダウンメニュー55a1bから選択入力する。
【0109】
さらに業務分析者は、プルダウンメニュー55a1bから選択入力した業務指標値の改善目標値を入力フィールド55a1cから入力する。試行期間は、業務指標値DB565で管理されるシナリオ修正試行期間に該当し、プルダウンメニュー55a1bから選択入力した業務指標値に応じた期間が自動で設定されるが、業務分析者が必要に応じて手入力で変更してもよい。
【0110】
必要な情報が入力された後、業務分析者によりシナリオ修正案作成ボタン55a1eが押下されると、第一シナリオ修正案リスト55a1fに、
図20に示す第一のシナリオ修正の処理で生成された、アクション持続期間の修正を含む対象シナリオの修正案が表示される。第二シナリオ修正案リスト55a1gについては、対象シナリオの情報が表示されるが、対象シナリオの修正案までは自動で生成されないため、必要に応じて業務分析者が手動で対象シナリオの修正案を反映する必要がある。
【0111】
また第一シナリオ修正案リスト55a1fまたは第二シナリオ修正案リスト55a1gに対象シナリオの修正案が表示されると、プルダウンメニュー55a1bで選択入力された業務改善対象の業務指標値の改善に対する第一シナリオ修正案リスト55a1fおよび第二シナリオ修正案リスト55a1gによる各修正の寄与率が第一シナリオ修正適用寄与率表示部55a1hおよび第二シナリオ修正適用寄与率表示部55a1iそれぞれに表示される。
【0112】
なお第一シナリオ修正適用寄与率表示部55a1hに表示される第一シナリオ修正適用寄与率および第二シナリオ修正適用寄与率表示部55a1iに表示される第二シナリオ修正適用寄与率は、例えば第一シナリオ修正と第二シナリオ修正とをそれぞれ単独で適用した場合の業務指標値の各増減値を算出し、この各増減値の比としてもよい。
【0113】
以上の実施例は、サービス拠点に存在する種々のサービス機器とロボットが連携したロボットシステムに適用でき、業務分析者が選択した業務指標値の改善を達成するシナリオを抽出し、試行を経て業務指標値の改善に貢献したシナリオの修正案を提案して効果を検証することで、ロボットシステムを導入した場合の受付、案内、販売促進等の業務の効率改善を促進することができる。またロボットシステム導入の効果を可視化することができ、ロボットシステムの導入促進を図ることができる。
【0114】
(実施例の変形例)
図24は、移動機器向けデータ分析システムの構成の変形例を示すブロック図である。
図25は、ロボットの構成の変形例を示すブロック図である。
図26は、ロボットが管理するデータの構造の変形例を示す図である。
【0115】
本実施例でのシステム構成および装置構成においては、シナリオ制御がロボット2の外部で行われるという前提としていたが、シナリオ制御サーバ9の機能がロボット2に内包される構成もとり得る。
図24はシナリオ制御機能がロボット2に実装された変形例の移動機器向けデータ分析システム1SBのシステム構成図である。
図1のシステム構成図と比べて、運用管理センタ100Bにおいてシナリオ制御サーバ9が設置されず省略された構成となっている。
【0116】
図25に示すように、変形例2のロボット2Bの構成は、ロボット2がデータ管理するデータベースとして、シナリオ情報DB268およびシナリオ実行情報DB269が追加される。ロボット2Bが内部記憶装置26で管理するロボット情報DB267、シナリオ情報DB268およびシナリオ実行情報DB269の構造は
図26に示すとおりであり、
図3、
図9および
図13で既出のため、詳細な説明は省略する。
【0117】
(各サーバを実現するコンピュータの構成)
図27は、業務分析サーバ、シナリオ制御サーバ、メディア処理サーバ、データ管理サーバの各サーバを実現するためのコンピュータのハードウェア構成例を示す図である。業務分析サーバ5、シナリオ制御サーバ9、メディア処理サーバ8、データ管理サーバ3を実現するコンピュータ1000は、CPU(Central Processing Unit)530と、RAM(Random Access Memory)等のメモリ1040と、入力装置1060(例えばキーボード、マウス、タッチパネル等)と、出力装置1070(例えば外部ディスプレイモニタに接続されたビデオグラフィックカード)とが、メモリコントローラ1050を通して相互接続される。
【0118】
コンピュータ1000において、例えば業務分析サーバ5を実現するためのプログラムがI/O(Input/Output)コントローラ1020を介してSSD(Solid State Drive)やHDD(Hard Disk Drive)等の外部記憶装置1080から読み出されて、CPU1030およびメモリ1040の協働により実行されることにより、業務分析サーバ5が実現される。あるいは、業務分析サーバ5を実現するためのプログラムは、ネットワークインターフェース1010を介した通信により外部のコンピュータから取得されてもよい。コンピュータ1000を用いて、シナリオ制御サーバ9、メディア処理サーバ8、およびデータ管理サーバ3の実現方法も、業務分析サーバ5と同様に実現される。
【0119】
なお本発明は上述の実施例に限定されるものではなく、様々な変形例を含む。例えば、上述の実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されない。また矛盾しない限りにおいて、ある実施例の構成の一部を他の実施例の構成で置き換えたり、ある実施例の構成に他の実施例の構成を加えたりすることも可能である。また各実施例の構成の一部について、追加、削除、置換、統合、および分割をすることが可能である。また実施例で示した各処理は、処理効率または実装効率に基づいて適宜分散または統合してもよい。