(57)【要約】【課題】本発明は、ＲＯＳアーキテクチャに基づいて情報を統合・共有する分散システムを提供することを目的とする。【解決手段】本発明によれば、複数のモジュールがＲＯＳ（Ｒｏｂｏｔ Ｏｐｅｒａｔｉｎｇ Ｓｙｓｔｅｍ）アーキテクチャに基づいて情報を統合・共有する分散システムであって、各モジュールから送信されるメッセージ保存要求に応答して、メッセージを保存し、返り値として、保存したメッセージのデータ識別子を要求元のモジュールに送信する情報管理モジュールを含み、前記情報管理モジュールは、各モジュールから送信される、データ識別子を指定したメッセージ取得要求に応答して、該データ識別子に係るメッセージを要求元のモジュールに送信し、各モジュールは、前記情報管理モジュールから、保存したメッセージのデータ識別子を受信したことに応答して、該データ識別子を他のモジュールに配信する、分散システムが提供される。【選択図】図１
2019008158.tif 000002
【特許請求の範囲】
【請求項１】
複数のモジュールがＲＯＳ（Ｒｏｂｏｔ Ｏｐｅｒａｔｉｈｇ Ｓｙｓｔｅｍ）アーキテクチャに基づいて情報を統合・共有する分散システムであって、
各モジュールから送信されるメッセージ保存要求に応答して、メッセージを保存し、返り値として、保存したメッセージのデータ識別子を要求元のモジュールに送信する情報管理モジュールを含み、
前記情報管理モジュールは、
各モジュールから送信される、データ識別子を指定したメッセージ取得要求に応答して、該データ識別子に係るメッセージを要求元のモジュールに送信し、
各モジュールは、
前記情報管理モジュールから、保存したメッセージのデータ識別子を受信したことに応答して、該データ識別子を他のモジュールに配信する、
分散システム。
【請求項２】
各前記モジュールは、
前記メッセージ保存要求および前記メッセージ取得要求を前記情報管理モジュールにサービスで送信し、
前記保存したメッセージのデータ識別子を他のモジュールにトピックで配信する、
請求項１に記載の分散システム。
【請求項３】
前記情報管理モジュールは、
前記メッセージ保存要求に係るメッセージをドキュメント指向データベースに保存する、
請求項１または２に記載の分散システム。
【請求項４】
各前記モジュールは
前記メッセージ保存要求に係るメッセージの変数の値に自身が取得した情報を格納する、
請求項１〜３のいずれか一項に記載の分散システム。
【請求項５】
前記複数のモジュールは、
少なくとも、音声入力に基づいてユーザの発話を理解し、該発話に対する応答を合成音声で出力する音声対話モジュールを含む、
請求項１〜４のいずれか一項に記載の分散システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散システムに関し、より詳細には、ＲＯＳアーキテクチャに基づいて情報を統合・共有する分散システムに関する。
【背景技術】
【０００２】
近年、人工知能ロボットの分野では、その実用化に向けて、記号概念レベルの情報（音声対話、感情処理、知識推論）や物理信号レベルの情報（人・環境センシング、動作）といった様式・粒度の異なるマルチモーダル情報を円滑に統合・共有するための技術が種々検討されている。
【０００３】
この点につき、非特許文献１は、知識推論、音声対話、人と物の画像センシング、動作という４種類の要素知能をＲＯＳ（Robot Operating System）アーキテクチャに基づいて円滑に統合・共有する総合知能アプリケーションの開発プラットフォームを開示する。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】森田武史, 西村良太, 山口高平：ROS に基づく総合知能アプリケーション開発プラットフォームPRINTEPS のアーキテクチャ, 第30 回人工知能学会全国大会, 4C4-1 (2016)
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明は、上記に鑑みてなされたものであり、ＲＯＳアーキテクチャに基づいて情報を統合・共有する分散システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明者は、ＲＯＳアーキテクチャに基づいて情報を統合・共有する分散システムにつき鋭意検討した結果、以下の構成に想到し、本発明に至ったのである。
【０００７】
すなわち、本発明によれば、複数のモジュールがＲＯＳ（Ｒｏｂｏｔ Ｏｐｅｒａｔｉｎｇ Ｓｙｓｔｅｍ）アーキテクチャに基づいて情報を統合・共有する分散システムであって、各モジュールから送信されるメッセージ保存要求に応答して、メッセージを保存し、返り値として、保存したメッセージのデータ識別子を要求元のモジュールに送信する情報管理モジュールを含み、前記情報管理モジュールは、各モジュールから送信される、データ識別子を指定したメッセージ取得要求に応答して、該データ識別子に係るメッセージを要求元のモジュールに送信し、各モジュールは、前記情報管理モジュールから、保存したメッセージのデータ識別子を受信したことに応答して、該データ識別子を他のモジュールに配信する、分散システムが提供される。
【発明の効果】
【０００８】
上述したように、本発明によれば、ＲＯＳアーキテクチャに基づいて情報を統合・共有する分散システムが提供される。
【図面の簡単な説明】
【０００９】
【図１】本実施形態の分散システムの機能ブロックを示す図。
【図２】「ロボット喫茶店」のシステム構成図。
【図３】本実施形態の分散システムが実行する処理のシーケンス図。
【図４】各モジュールが送信するメッセージのデータ構造を示す図。
【図５】モジュール間の連携態様を説明するための図。
【図６】本実施形態の音声対話モジュールの機能ブロックを示す図。
【発明を実施するための形態】
【００１０】
以下、本発明を図面に示した実施の形態をもって説明するが、本発明は、図面に示した実施の形態に限定されるものではない。なお、以下に参照する各図においては、共通する要素について同じ符号を用い、適宜、その説明を省略するものとする。
【００１１】
図１は、本発明の実施形態である分散システム１００の機能ブロックを概念的に示す。図１に示すように、本実施形態の分散システム１００は、情報管理モジュール１０と、画像処理モジュール２０と、音声対話モジュール３０と、知識処理モジュール４０と、ロボット制御モジュール５０とを含んで構成されており、各ソフトウェア・モジュールは、ＲＯＳ（Robot Operating System）アーキテクチャに基づいて情報を統合・共有するように構成されている。なお、図１に示すモジュール構成は、あくまで例示であって、本実施形態の分散システム１００は、少なくとも、情報管理モジュール１０と、その他の２以上のソフトウェア・モジュール（以下、単に、モジュールという）を含んでいればよい。
【００１２】
ここで、本実施形態の分散システム１００の詳しい説明に入る前に、ＲＯＳアーキテクチャに基づくデータ通信について概説する。
【００１３】
ＲＯＳ（Robot Operating System）は、ソフトウェア開発者のロボット・アプリケーション作成を支援するライブラリやツールを提供するロボットフレームワークであり、オープンソースロボティクス財団により開発、メンテナンスが行われている。ＲＯＳは、異なるＯＳ（Windows、Mac、Linux、Android、iOSなど）や異なるハードウェア上で実行される実行プログラムのプロセス間通信を可能にするメタ・オペレーティングシステムを提供する。ＲＯＳによれば、異なるＯＳやハードウェア上で動作する複数のソフトウェア・モジュールの統合が容易になり、マルチロボットやマルチセンサーといった分散システムを簡単に構築することができるようになる。
【００１４】
ＲＯＳでは、分散システム上で実行される個々の実行プログラムが“ノード”と呼ばれる最少の構成要素となり、ノード間で“メッセージ”と呼ばれるデータがやり取りされる。“メッセージ”は、Message 型で定義されたプログラミング言語非依存のデータであり、Message 型は、構造体のように複数の変数や配列を持つことができ、各変数の型は、予め用意された型（int8 やstring など）を使用する他、ユーザが独自に定義することもできる。
【００１５】
ＲＯＳでは、メッセージの通信方式として、トピック（topic）とサービス（service）という２種類の通信方式が用意されており、用途やメッセージの形式、時間的粒度などに応じて、これら２種類の通信方式を使い分けることができる。
【００１６】
トピック（topic）は、非同期方式の通信方式である。ＲＯＳでは、トピックで定義されたメッセージを送信することを配信（publish）といい、配信するノードのことを配信者（publisher）という。また、トピックで定義されたメッセージを受信することを購読（subscribe）といい、購読するノードのことを購読者（subscriber）という。ＲＯＳでは、このトピックを使用して、配信者（publisher）から購読者（subscriber）に向けて所望のデータを連続的に送信することができる。
【００１７】
一方、サービス（service）は、同期方式の通信方式である。ＲＯＳでは、サービスで定義されたメッセージをリクエストするノードのことをサービスクライアントといい、このリクエストにレスポンスするノードのことをサービスサーバという。ＲＯＳでは、サービスクライアント・サービスサーバ間が、必要に応じて、一回限り接続され、リクエスト・レスポンスが実行される度に接続が切断される。
【００１８】
そして、ＲＯＳでは、ノード間の接続を管理するために“マスター”と呼ばれるネームサーバが用意される。各ノードは、自身の購読者ノード名、購読しようとするトピック名、自身の配信者ノード名、配信しようとするトピック名、サービス名、メッセージの型名、ＵＲＩアドレスとポートといった情報をマスターに登録する。一方、各ノードは、他のノードの情報をマスターから取得し、取得した情報に基づいて、他のノードとの間でメッセージを直接的にやり取りする。
【００１９】
以上、ＲＯＳアーキテクチャに基づくデータ通信について概説したので、続いて、本実施形態の分散システム１００が実行する具体的な処理の内容を説明する。
【００２０】
以下では、本実施形態の分散システム１００を「ロボット喫茶店」に適用したケースを例にとって説明を行う。
【００２１】
図２は、「ロボット喫茶店」のシステム構成図を示す。図２に示すように、「ロボット喫茶店」では、店内の入口の様子を撮影するために撮影装置７０ａが設置され、テーブルの様子を撮影するために撮影装置７０ｂ、７０ｃが設置され、客の発話音声を収録するために各テーブルにマイク８０ａ、８０ｂが設置されている。そして、フロアーに接客用ロボット６０ａと配膳用ロボット６０ｂが配置され、調理場に調理用ロボット６０ｃが配置されている。ここで、接客用ロボット６０ａには内蔵スピーカ９０が搭載されている。
【００２２】
「ロボット喫茶店」では、図１に示した５つのモジュールがネットワークで接続された２台以上のコンピュータ上に分散配置されており、５つのモジュールが情報の統合・共有を通して相互に連携することにより（１）入店時挨拶、（２）座席案内、（３）受注、（４）飲食物の用意と運搬、（５）会計、（６）見送り、という６種類のサービスを実現する。ここでは、まず、図１に示した５つのモジュールが「ロボット喫茶店」において果たす役割について説明する。
【００２３】
知識処理モジュール４０は、画像処理モジュール２０や音声対話モジュール３０が取得した情報に基づき、ワークフロー、ビジネスルール、オントロジーなどを用いて各種の知識推論を行う。
【００２４】
画像処理モジュール２０は、撮影装置７０ａ、７０ｂ、７０ｃが取得した撮影画像に基づいて、客の入店を検知し、客の人数、年齢、性別、属性などを取得する。
【００２５】
音声対話モジュール３０は、マイク８０ａ、８０ｂが取得した音声から、客の発話内容を理解し、これに対応する適切な応答内容を合成音声として、接客用ロボット６０ａの内蔵スピーカ９０に出力する。
【００２６】
ロボット制御モジュール５０は、接客用ロボット６０ａの店内移動や配膳用ロボット６０ｂの配膳動作、調理用ロボット６０ｃによる飲食物の準備動作を制御する。
【００２７】
一方、情報管理モジュール１０は、上述した各モジュールから送信されるメッセージをデータベースに保存するとともに、各モジュールが要求するメッセージをデータベースから読み出して提供する。なお、上述したデータベースは、ドキュメント指向データベースとして構成されており、メッセージは、ＪＳＯＮ（JavaScript Object Notation）のような形でドキュメント指向データベースに保存され、Message 型データの形のままで読み・書きされる。
【００２８】
以上、５つのモジュールの役割について説明したが、続いて、情報の統合・共有のために各モジュールが実行する処理の内容を図３に示すシーケンス図に基づいて説明する。
【００２９】
なお、以下では、「客情報」というサービス名を持つメッセージをモジュール間で統合・共有するケースについて説明する。ここで、「客情報」は、図４（ａ）に示すように、（１）データＩＤ、（２）人数、（３）構成、（４）属性、（５）好み、（６）アレルギー、（７）お勧め、という７つの変数を備えている。
【００３０】
また、以下では、図１に示す全てのモジュールが、「データＩＤ」というトピック名を持つメッセージについて、配信者（publisher）および購読者（subscriber）としてマスターに登録されているものとする。
【００３１】
画像処理モジュール２０は、撮影装置７０から取得した撮影画像に基づいて、客の人数と構成（年齢、性別）を取得する（Ｓ１）。
【００３２】
次に、画像処理モジュール２０は、「客情報」の変数の値として、Ｓ１で取得した情報を格納する（Ｓ２）。図４（ｂ）は、変数「人数」に値「１名」が格納され、変数「構成」に値「３０代 男性」が格納されたメッセージを示す。
【００３３】
次に、画像処理モジュール２０は、図４（ｂ）に示すメッセージのメッセージ保存要求を情報管理モジュール１０にサービス（service）で送信する（Ｓ３）。
【００３４】
これを受けて、情報管理モジュール１０は、受信したメッセージに対してデータ識別子（以下、データＩＤという）を発行し（Ｓ４）、当該メッセージの変数「データＩＤ」に、発行したデータＩＤを格納する。図４（ｃ）は、変数「データＩＤ」に値「12345」が格納されたメッセージを示す。
【００３５】
その後、情報管理モジュール１０は、データＩＤを格納したメッセージをドキュメント指向データベースに保存し（Ｓ５）、返り値として、Ｓ４で発行したデータＩＤ「12345」を要求元の画像処理モジュール２０に送信する（Ｓ６）。
【００３６】
これを受けて、画像処理モジュール２０は、「データＩＤ」というトピック名を持つメッセージの変数「データＩＤ」の値として、情報管理モジュール１０から受信したデータＩＤ「12345」を格納する（Ｓ７）。図４（ｅ）は、変数「データＩＤ」に値「12345」が格納されたメッセージを示す。
【００３７】
次に、トピック名「データＩＤ」のメッセージの配信者（publisher）である画像処理モジュール２０は、図４（ｅ）に示すメッセージを、その購読者（subscriber）として登録された知識処理モジュール４０にトピック（topic）で配信する（Ｓ８）。
【００３８】
これを受けて、知識処理モジュール４０は、受信したメッセージの変数「データＩＤ」の値「12345」を指定したメッセージ取得要求を情報管理モジュール１０にサービス（service）で送信する（Ｓ９）。
【００３９】
これを受けて、情報管理モジュール１０は、受信したメッセージの変数「データＩＤ」の値「12345」をキーとしてドキュメント指向データベースを検索し、図４（ｃ）に示すメッセージを抽出する（Ｓ１０）。その後、情報管理モジュール１０は、抽出したメッセージを要求元の知識処理モジュール４０に送信する（Ｓ１１）。
【００４０】
これを受けて、知識処理モジュール４０は、受信したメッセージ（図４（ｃ）参照）の変数「人数」、「構成」の値に基づいて知識推論を行い、客の「属性」を推定し（Ｓ１２）、受信したメッセージの変数「属性」の値として、推定した結果「サラリーマン」を格納する（Ｓ１３）。図４（ｄ）は、変数「属性」に値「サラリーマン」が格納されたメッセージを示す。
【００４１】
次に、知識処理モジュール４０は、図４（ｄ）に示すメッセージのメッセージ保存要求を情報管理モジュール１０にサービス（service）で送信する（Ｓ１４）。これを受けて、情報管理モジュール１０は、受信したメッセージをドキュメント指向データベースに保存し（Ｓ１５）、返り値として、保存したメッセージのデータＩＤ「12345」を要求元の知識処理モジュール４０に送信する（Ｓ１６）。
【００４２】
これを受けて、知識処理モジュール４０は、トピック名「データＩＤ」を備えるメッセージの変数「データＩＤ」の値として、情報管理モジュール１０から受信したデータＩＤ「12345」を格納する（Ｓ１７）。図４（ｅ）は、変数「データＩＤ」に値「12345」が格納されたメッセージを示す。
【００４３】
次に、トピック名「データＩＤ」のメッセージの配信者（publisher）である知識処理モジュール４０は、図４（ｅ）に示すメッセージを、その購読者（subscriber）として登録された音声対話モジュール３０にトピック（topic）で配信する（Ｓ１８）。
【００４４】
以上、説明したように、本実施形態においては、各モジュールは、「客情報」の変数の値に自身が取得した情報を格納し、その「客情報」を情報管理モジュール１０に保存するとともに、保存した「客情報」のデータＩＤを他のモジュール（購読者モジュール）に配信する。一方、データＩＤを配信された購読者モジュールは、配信されたデータＩＤに係る「客情報」を情報管理モジュール１０から取得し、取得した「客情報」の変数の値に自身が取得した情報を格納し、その「客情報」を情報管理モジュール１０に保存するとともに、保存した「客情報」のデータＩＤを他のモジュール（購読者モジュール）に配信する。本実施形態では、上述した一連の処理が繰り返し実行されることにより、各モジュールが取得した情報が「客情報」において統合され、モジュール間で共有されることになる。
【００４５】
以上、情報の統合・共有のために各モジュールが実行する処理を説明したが、続いて、モジュール間の連携態様を図５に示す具体例を基づいて説明する。
【００４６】
画像処理モジュール２０は、撮影装置７０から取得した撮影画像に基づいて取得した客の人数（２名）と構成（３０代 女性＋幼児 男性）を「客情報」に書き込んで情報管理モジュール１０に保存すると同時に、保存した「客情報」のデータＩＤ「23456」を知識処理モジュール４０に配信する。
【００４７】
知識処理モジュール４０は、画像処理モジュール２０から配信されたデータＩＤ（23456）に係る「客情報」を情報管理モジュール１０から取得し、取得した「客情報」の変数の値（人数：２名、構成：３０代 女性＋幼児 男性）に基づく知識推論により、客の属性（子供連れ）を推定する。その後、知識処理モジュール４０は、推定した属性（子供連れ）を「客情報」の変数「属性」の値に格納して情報管理モジュール１０に保存すると同時に、保存した「客情報」のデータＩＤ「23456」を音声対話モジュール３０に配信する。
【００４８】
音声対話モジュール３０は、知識処理モジュール４０から配信されたデータＩＤ（23456）に係る「客情報」を情報管理モジュール１０から取得し、取得した「客情報」の変数「属性」の値として「子供連れ」が格納されていることを受けて、所定の対話ルールに基づいて、客と対話を行い、子供のアレルギー情報を取得する。その後、音声対話モジュール３０は、取得したアレルギー情報「小麦」を「客情報」の変数「アレルギー」の値に格納して情報管理モジュール１０に保存すると同時に、保存した「客情報」のデータＩＤ「23456」を知識処理モジュール４０に配信する。
【００４９】
知識処理モジュール４０は、音声対話モジュール３０から配信されたデータＩＤ（23456）に係る「客情報」を情報管理モジュール１０から取得し、取得した「客情報」の変数「アレルギー」の値「小麦」に基づく知識推論により、客へのお勧め商品として「米粉ケーキ」を推定する。その後、知識処理モジュール４０は、推定したお勧め商品「米粉ケーキ」を「客情報」の変数「お勧め」の値に格納して情報管理モジュール１０に保存すると同時に、保存した「客情報」のデータＩＤ「23456」を音声対話モジュール３０に配信する。
【００５０】
音声対話モジュール３０は、知識処理モジュール４０から配信されたデータＩＤ（23456）に係る「客情報」を情報管理モジュール１０から取得し、取得した「客情報」の変数「お勧め」の値として「米粉ケーキ」が格納されていることを受けて、所定のマッチングルールに基づき、「米粉ケーキはいかがですか？」という合成音声を生成する。その後、音声対話モジュール３０は、生成した合成音声を接客用ロボット６０ａの内蔵スピーカ９０に出力する。
【００５１】
上述したように、本実施形態によれば、ユーザと直接対話する術を持たないモジュールが、情報管理モジュール１０を介して、音声対話モジュール３０と連携することにより、ユーザの明示的な意図を反映した適切な対応をとることができるようになる。
【００５２】
以上、説明したように、本実施形態によれば、各モジュールが単独では取得できない情報をモジュール間で補完しあいながら、情報管理モジュール１０に蓄積することにより、分散システム１００内で情報が統合・共有される。
【００５３】
本実施形態では、この他にも、以下のような連携が想定される。例えば、画像処理モジュール２０が撮影画像に基づいて客の人数を取得する場合、知識処理モジュール４０との連携（ストリーム推論の利用）によって、フレームごとに結果が揺れることが防止され、安定した人数検出が可能になる。また、画像処理モジュール２０による撮影画像に基づくユーザの行動推定（飲食中・発話中の推定）と音声対話モジュール３０を連携させることによって、より頑健に発話者を推定することが可能になる。一方、音声対話モジュール３０は、画像処理モジュール２０が取得した客情報を利用することにより、情報確認のために冗長になりがちなユーザとの対話内容を大幅に簡略化できるようになり、その結果、より自然な対話がなされるようになる。
【００５４】
以上、図１に示すモジュールの連携について説明してきたが、続いて、音声対話モジュール３０を構成するサブモジュールの連携について説明する。
【００５５】
図６に示すように、本実施形態の音声対話モジュール３０は、音声取得モジュール３１と、音声認識モジュール３２と、言語理解モジュール３３と、対話管理モジュール３４と、応答生成モジュール３５と、音声合成モジュール３６という６つのサブモジュールからなる。
【００５６】
音声取得モジュール３１は、マイク８０ａ,８０ｂが取得した音声波形データを音声認識モジュール３２に渡す。これを受けて、音声認識モジュール３２は、逐次的に音声認識を実行し、その結果である自然言語文（テキスト）を言語理解モジュール３３に渡す。これを受けて、言語理解モジュール３３は、受領したテキストを、所定のマッチングルールに基づいて、システムで理解するための内部表現に変換し、対話管理モジュール３４に渡す。
【００５７】
これを受けて、対話管理モジュール３４は、受領した内部表現をシステム応答の内部表現に変換し、応答生成モジュール３５に渡す。これを受けて、応答生成モジュール３５は、受領した内部表現を、所定のマッチングルールに基づいて、自然言語文（テキスト）に変換し、音声合成モジュール３６に渡す。これを受けて、音声合成モジュール３６は、受領した自然言語文（テキスト）の音声を合成し、その合成音声を接客用ロボット６０ａの内蔵スピーカ９０に出力する。
【００５８】
ここで、本実施形態では、図６に示すサブモジュールの一部または全部が、自身の最新の内部状態をメッセージとして、情報管理モジュール１０に保存するように構成されており、各サブモジュールは、他のサブモジュールが保存した内部状態や自身が保存した内部状態を情報管理モジュール１０を介して参照することができるようになっている。
【００５９】
これにより、例えば、対話管理モジュール３４は、ユーザとの対話中に、自身が情報管理モジュール１０に保存した直近のシステム応答（例えば、［ConfToUser:3］）と、その後に言語理解モジュール３３から受領した最新のユーザ入力（例えば、［Num:4］）を合わせて、状態遷移ルールに基づく対話処理を行うことにより、文脈を考慮した応答（例えば、［ConfToUser:4］）を生成することができるようになる。その結果、以下に例示するような、一問一答型ではない、自然な対話が実現される。
システム：「いらっしゃいませ。３名様ですか？」
ユーザ：「いいえ、４名です。」
システム：「４名様ですね？」
ユーザ：「はい。」
システム：「ご案内いたします。少々お待ち下さい。」
【００６０】
以上、本発明について実施形態をもって説明してきたが、本発明は上述した実施形態に限定されるものではなく当業者が推考しうる、その他の実施態様の範囲内において、本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【００６１】
なお、上述した実施形態の各機能は、Ｃ、Ｃ＋＋、Ｃ＃、Ｊａｖａ（登録商標）などで記述された装置実行可能なプログラムにより実現でき、本実施形態のプログラムは、ハードディスク装置、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ、フレキシブルディスク、ＥＥＰＲＯＭ、ＥＰＲＯＭなどの装置可読な記録媒体に格納して頒布することができ、また他装置が可能な形式でネットワークを介して伝送することができる。
【符号の説明】
【００６２】
１０…情報管理モジュール、２０…画像処理モジュール、３０…音声対話モジュール、３１…音声取得モジュール、３２…音声認識モジュール、３３…言語理解モジュール、３４…対話管理モジュール、３５…応答生成モジュール、３６…音声合成モジュール、４０…知識処理モジュール、５０…ロボット制御モジュール、６０…ロボット、７０…撮影装置、８０…マイク、９０…内蔵スピーカ、１００…分散システム
【図１】
2019008158.tif 000003
【図２】
2019008158.tif 000004
【図３】
2019008158.tif 000005
【図４】
2019008158.tif 000006
【図５】
2019008158.tif 000007
【図６】
2019008158.tif 000008