首页 / 专利库 / 人工智能 / 对话代理 / Message processing method, its device and storing medium housing program for controlling message processing

Message processing method, its device and storing medium housing program for controlling message processing

阅读:460发布:2021-03-15

专利汇可以提供Message processing method, its device and storing medium housing program for controlling message processing专利检索,专利查询,专利分析的服务。并且PROBLEM TO BE SOLVED: To obtain a communication system capable of making a proper response by using an interpretation executing component according to the contents (background concept and vocabulary) of conversation between agents. SOLUTION: A interpretation executing component is dynamics assigned corresponding to various agent communication language, content expressing language and ontology expressing a background and a vocabulary used in contents. Namely the agent communication language manager 203 receives a message packet including ontology specifying information, description language specifying information and content specifying information. A loader for an interpreter 223 selects at least one interpreters from among plural kinds of interpreters 225 according to ontology specifying information and description language specifying information included in the message packet. Then the selected interpreter interprets the content included in the message packet to process a message.,下面是Message processing method, its device and storing medium housing program for controlling message processing专利的具体信息内容。

【特許請求の範囲】
  • 【請求項1】複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理方法であって、 (a)オントロジー特定情報と、コンテントを含むメッセージ・パケットを受領する段階と、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択する段階と、 (c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテントを解釈する段階と、 を含むメッセージ処理方法。
  • 【請求項2】複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理方法であって、 (a)オントロジー特定情報と、記述言語特定情報と、
    コンテント特定情報を含むメッセージ・パケットを受領する段階と、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択する段階と、 (c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテント特定情報に対応したコンテントを解釈する段階と、 を含むメッセージ処理方法。
  • 【請求項3】複数種類の解析実行部を有するメッセージ処理装置で実行されるメッセージ処理方法であって、 (a)コンテントに対応付けられたオントロジー特定情報に応じて、前記複数の解析実行部の中から1以上の解析実行部を選択する段階と、 (b)該選択された1以上の解析実行部により、前記コンテントを解釈する段階と、 を含むメッセージ処理方法。
  • 【請求項4】複数種類のインタプリタと、前記複数種類のインタプリタの各々に対応する複数のオントロジー特定情報を管理するインタプリタ管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理方法であって、 (a)オントロジー特定情報とコンテントを含むメッセージ・パケットを受領する段階と、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記インタプリタ管理テーブルに登録されているか否かを判断する段階と、 (c)前記メッセージ・パケットに含まれるオントロジー特定情報が前記インタプリタ管理テーブルに登録されていないと判断された場合に、該オントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であるかを判断する段階と、 (d)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であると判断された場合、該対応するインタプリタを前記メッセージ・パケットに含まれるオントロジー特定情報に対応付けて、前記インタプリタ管理テーブルに登録する段階と、 (e)前記メッセージ・パケットに含まれるコンテントを前記対応するインタプリタにより解釈する段階と、 を含むメッセージ処理方法。
  • 【請求項5】複数種類のインタプリタと、前記複数種類の解析実行部と解析実行部特定情報を対応付けて管理する解析実行部管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理方法であって、 (a)解析実行部特定情報とコンテントを含むメッセージ・パケットを受領する段階と、 (b)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記解析実行管理テーブルに登録されているか否かを判断する段階と、 (c)前記メッセージ・パケットに含まれる解析実行部特定情報が前記解析実行管理テーブルに登録されていないと判断された場合に、該解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であるかを判断する段階と、 (d)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であると判断された場合、該対応する解析実行部を前記メッセージ・パケットに含まれる解析実行部特定情報に対応付けて、前記解析実行部管理テーブルに登録する段階と、 を含むメッセージ処理方法。
  • 【請求項6】複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置であって、 (a)オントロジー特定情報と、コンテントを含むメッセージ・パケットを受領するエージェント・コミュニケーション言語マネジャと、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択するインタプリタ用ローダと、 を含むメッセージ処理装置。
  • 【請求項7】複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置であって、 (a)オントロジー特定情報と、記述言語特定情報と、
    コンテント特定情報を含むメッセージ・パケットを受領するエージェント・コミュニケーション言語マネジャと、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択するインタプリタ用ローダと、 を含むメッセージ処理装置。
  • 【請求項8】複数種類の解析実行部を有するメッセージ処理装置であって、コンテントに対応付けられたオントロジー特定情報に応じて、前記複数の解析実行部の中から1以上の解析実行部を選択し、該選択された1以上の解析実行部により、前記コンテントを解釈するメッセージ処理装置。
  • 【請求項9】複数種類のインタプリタと、前記複数種類のインタプリタの各々に対応する複数のオントロジー特定情報を管理するインタプリタ管理テーブルを有するメッセージ処理装置であって、 (a)オントロジー特定情報とコンテントを含むメッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記インタプリタ管理テーブルに登録されているか否かを判断し、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報が前記インタプリタ管理テーブルに登録されていないと判断された場合に、該オントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であるかを判断し、 (c)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であると判断された場合、該対応するインタプリタを前記メッセージ・パケットに含まれるオントロジー特定情報に対応付けて、前記インタプリタ管理テーブルに登録するインタプリタ用ローダを含むメッセージ処理装置。
  • 【請求項10】複数種類のインタプリタと、前記複数種類の解析実行部と解析実行部特定情報を対応付けて管理する解析実行部管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理方法であって、 (a)解析実行部特定情報とコンテントを含むメッセージ・パケットに含まれる該解析実行部特定情報に対応する解析実行部が前記解析実行管理テーブルに登録されているか否かを判断し、 (b)前記メッセージ・パケットに含まれる解析実行部特定情報が前記解析実行管理テーブルに登録されていないと判断された場合に、該解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であるかを判断し、 (c)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であると判断された場合、該対応する解析実行部を前記メッセージ・パケットに含まれる解析実行部特定情報に対応付けて、前記解析実行部管理テーブルに登録するインタプリタ用ローダを含むメッセージ処理装置。
  • 【請求項11】複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置であって、 (a)オントロジー特定情報と、記述言語特定情報と、
    コンテント特定情報と、応答IDを含むメッセージ・パケットを受領するエージェント・コミュニケーション言語マネジャと、 (b)前記メッセージ・パケットに含まれる応答IDを解析し、会話スレッドを生成する会話スレッド制御部と、 (c)前記メッセージ・パケットを記録するメッセージ・ログと、 (d)前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択するインタプリタ用ローダと、 を含むメッセージ処理装置。
  • 【請求項12】複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体であって、 該メッセージ処理プログラムは、 (a)オントロジー特定情報と、コンテントを含むメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択することを前記メッセージ処理装置に指示するためのプログラムコードと、 (c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテントを解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、 を含む記録媒体。
  • 【請求項13】複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体であって、 該メッセージ処理プログラムは、 (a)オントロジー特定情報と、記述言語特定情報と、
    コンテント特定情報を含むメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択することを前記メッセージ処理装置に指示するためのプログラムコードと、 (c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテント特定情報に対応したコンテントを解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、 を含む記録媒体。
  • 【請求項14】複数種類の解析実行部を有するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体であって、 該メッセージ処理プログラムは、 (a)コンテントに対応付けられたオントロジー特定情報に応じて、前記複数の解析実行部の中から1以上の解析実行部を選択することを前記メッセージ処理装置に指示するためのプログラムコードと、 (b)該選択された1以上の解析実行部により、前記コンテントを解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、 を含む記録媒体。
  • 【請求項15】複数種類のインタプリタと、前記複数種類のインタプリタの各々に対応する複数のオントロジー特定情報を管理するインタプリタ管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体であって、 該メッセージ処理プログラムは、 (a)オントロジー特定情報とコンテントを含むメッセージ・パケットの受領を認識するためのプログラムコードと、 (b)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記インタプリタ管理テーブルに登録されているか否かを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、 (c)前記メッセージ・パケットに含まれるオントロジー特定情報が前記インタプリタ管理テーブルに登録されていないと判断された場合に、該オントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であるかを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、 (d)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であると判断された場合、該対応するインタプリタを前記メッセージ・パケットに含まれるオントロジー特定情報に対応付けて、前記インタプリタ管理テーブルに登録することを前記メッセージ処理装置に指示するためのプログラムコードと、 (e)前記メッセージ・パケットに含まれるコンテントを前記対応するインタプリタにより解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、 を含む記録媒体。
  • 【請求項16】複数種類のインタプリタと、前記複数種類の解析実行部と解析実行部特定情報を対応付けて管理する解析実行部管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体であって、 該メッセージ処理プログラムは、 (a)解析実行部特定情報とコンテントを含むメッセージ・パケットの受領を認識するためのプログラムコードと、 (b)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記解析実行管理テーブルに登録されているか否かを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、 (c)前記メッセージ・パケットに含まれる解析実行部特定情報が前記解析実行管理テーブルに登録されていないと判断された場合に、該解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であるかを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、 (d)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であると判断された場合、該対応する解析実行部を前記メッセージ・パケットに含まれる解析実行部特定情報に対応付けて、前記解析実行部管理テーブルに登録することを前記メッセージ処理装置に指示するためのプログラムコードと、 を含む記録媒体。
  • 说明书全文

    【発明の詳細な説明】

    【0001】

    【産業上の利用分野】この発明は、データ処理に関する技術に関し、より詳しくは、処理すべきデータの内容に応じて、処理を行う資源を動的に変更する技術に関する。

    【0002】

    【従来の技術】人間同士が会話をする場合、通常、その人が現在おかれている状況や、過去の経験、会話をする相手、会話の経緯等の環境条件によって、今どのようなトピックで会話が行われていて、どのように相手が発した言葉を解釈すべきかを判断することができる。 例えば、喫茶店のウエイタは、席に座っている客が、「ホット1つ」と言っただけで、その客がその席にあるメニューのホットコヒーの欄に書かれた金額を支払うことを承諾し、コーヒーカップに注がれた1杯のホットコーヒーを注文していると解釈する。 また、そのウエイタは、その客に対しその注文が受付けられたことを確認し、ホットコーヒーの用意をし、用意されたホットコーヒーの入ったカップにスプーンと砂糖とミルクを付け、客のテーブルに運び、客が料金を支払うまで待機する等の行動をとるべきであることを理解する。

    【0003】しかし、環境条件が変わり、例えば本屋の店員に「ホット1つ」といった言葉を発しても、その店員はその言葉の意味を理解することはできないであろう。 このように、環境に応じて自分に発せられた言葉を柔軟に解釈することができれば、例え情報量の少ないデータを受領したとしても、そのデータを適切に解釈することができる。

    【0004】一般に、「会話」という行為には、 1. 話し手は、話し手の意図を聞き手に伝えるために、
    話す内容を用意し、 2. 話を開始する。 3. 聞き手は、その話を聞き、話の流れを理解し、 4. その話の背景を自分の経験したものから連想し、関連付け、 5. その話の内容を理解し、 6. その結果行為を起こす。 といったステップにより構成される。

    【0005】このように会話をパターン化することにより、単なるコンピューターのメッセージング・システムをより自然言語のメッセージ処理に近いものとして定義し、再利用可能なデザインとすれば、従来より自然言語系に近いメッセージの処理を可能となり、利用するユーザに親しみやすく、何らかの文脈を持つ一連のパケットの流れのやり取りを文脈を意識しながら行うインテリジェントなメッセージ・システムを構築することができる。

    【0006】この一方、従来より、分散コンピュータ環境において、ネットワーク上に存在するサーバに提供されているプレースに自分自身の内部状態を保持したまま移動し、移動先のプレースにおいてインストラクションを形成する移動エージェント(モーバイルエージェント)技術が存在する(特開平7−182174号公報(U
    SP5,603,031)、「日経コミュニケーション別冊、最新インターネットテクノロジ」日経BP社pp104−11
    7、西田 文比古、藤原 進 著等)。

    【0007】かかる移動エージェントは、この移動先のプレースにおいて他のエージェント(移動エージェントまたは常駐エージェント)とコンタクトし、必要なサービスを受けることができる。 プレースは、ネットワーク上に存在するサーバによって提供されているエージェントの移動場所であり、エージェント間のコンタクトをサポートし、また、ハードウエア及びプラットフォームの違いを吸収している。

    【0008】かかる移動エージェントの技術は、社内会議のセッティングを社員のスケジュールや会議室の予約状況に応じてダイナミックに調整したり、ネットワーク上に分散する所望の情報を入手する等、これまで人手によってなされていた作業をこの移動エージェントが代行することを可能にしている。

    【0009】しかし、このようなエージェント間のコミュニケーションを行うに際して、1つのプレースでさまざまな種類のコミュニケーションをサポートするとすると、会話内容にふさわしい応答ができなかったり、応答に要する処理時間が長くなり、プレースを提供するサーバの負担が大きかった。 また、プレースで提供を受けるサービスの要求が複雑化し、依頼を発信する側の負担になっていた。 さらに、ネットワークを介して送信されるデータのデータ量が大きくなり、通信システムへ負担をかけることとなっていた。 そして、会話内容の解釈を行う解釈実行部品に変更が発生した場合、従来は1つの解釈実行部品に依存していたため、変更後の解釈実行部品の登録や導入等に際し、再始動を要し、システムを一時的に停止させる必要があるといった問題もあった。

    【0010】公知技術としてネットワーク管理システムを新しいバージョンに移行するに際して、移行期間中においても相互接続を維持すべく互換リソースとの置換を行うコンパチブルクラス対応テーブルを有するシステム等も存在するが(特開平7−93235号公報)、かかるシステムにおいては、システムの内部状態を検査し、
    その検査結果に応じて、リソースの置換を行うものであり、受領したメッセージを解析して、それを解釈する解釈実行部品をダイナミックに変更することはできず、また、システム停止を回避するために、変更の発生した資源の代替の資源を用意する必要があり、ユーザの負担となっていた。

    【0011】

    【発明が解決しようとする課題】本発明の一つの目的は、エージェント間の会話の内容(背景概念、語彙)に応じた解釈実行部品を使用することにより、適切な応答を行うことのできるコミュニケーション・システムを提供することにある。

    【0012】本発明の他の一つの目的は、不要な判断ロジックを削減し、高速処理を可能としたメッセージ処理システムを提供することにある。

    【0013】本発明の他の一つの目的は、実行時に必要となる資源を削減したメッセージ処理システムを提供することにある。

    【0014】本発明の他の一つの目的は、高速な並列会話処理を実現したメッセージ処理システムを提供することにある。

    【0015】本発明の他の一つの目的は、エージェント間のコミュニケーションをサポートするに際し、プログラマの開発や保守に要する労及び時間を可能な限り軽減することにある。

    【0016】本発明の他の一つの目的は、エージェント間の会話に柔軟に対応することができるメッセージ処理システムを提供することにある。

    【0017】本発明の他の一つの目的は、通信システムへの負担が少ないメッセージ処理システムを提供することにある。

    【0018】

    【課題を解決するための手段】本発明は、様々なエージェント・コミュニケーション言語、内容表現言語、コンテントで使用される背景概念や語彙を表わすオントロジーに応じて、動的に適切な解釈実後部品を割り当てることにより、エージェント間またはエージェントと既存システム間で、柔軟で円滑な情報交換、協調作業を行えるようにする。

    【0019】本発明の好適な実施例におけるエージェント・コミュニケーション・システムは、解釈実行部品管理機能を有し、始動時に会話内容監視部品、インタプリタ、トランスレータ等の解釈実行部品のディレクトリーを走査し、どのような解釈実行部品が存在するか解釈実行部品テーブルを作成し管理している。

    【0020】稼働中にテーブルに存在しないエージェント・コミュニケーション言語、内容表現言語、オントロジーの組み合わせのメッセージを受信した場合、再度、
    解釈実行部品格納ディレクトリーを走査し、それに対応する解釈実行部品が追加されていないか調べる。 解釈実行部品が追加されている場合は、テーブルにその部品を追加し、その部品にメッセージの処理をさせる。

    【0021】本発明の一態様においては、(a)オントロジー特定情報と、コンテントを含むメッセージ・パケットを受領する段階と、(b)前記メッセージ・パケットに含まれるオントロジー特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択する段階と、(c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテントを解釈する段階と、を含む複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理方法が提供される。 本発明の特許請求の範囲においては、「オントロジー」とは、本発明の好適な実施例において説明する「背景概念や語彙」のみではなく、伝達された情報の内容を判断するに際して、判断結果を絞り込み、または判断過程を削減するための全ての情報を含む概念であり、「オントロジー特定情報」とは、該オントロジーを特定するための全ての情報を含む概念である。

    【0022】本発明の他の一態様においては、(a)オントロジー特定情報と、記述言語特定情報と、コンテント特定情報を含むメッセージ・パケットを受領する段階と、(b)前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択する段階と、(c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテント特定情報に対応したコンテントを解釈する段階と、を含む複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理方法が提供される。
    本発明の特許請求の範囲においては、「コンテント特定情報」とは、コンテント自体のみならずコンテントを指し示すためのリンク情報等を含む概念である。

    【0023】本発明の他の一態様においては、(a)コンテントに対応付けられたオントロジー特定情報に応じて、複数の解析実行部の中から1以上の解析実行部を選択する段階と、(b)該選択された1以上の解析実行部により、前記コンテントを解釈する段階と、を含む複数種類の解析実行部を有するメッセージ処理装置で実行されるメッセージ処理方法が提供される。 本発明の特許請求の範囲においては、「解析実行部」とは、本発明の好適な実施例において説明する会話内容監視部、インタプリタ、トランスレータを含む概念である。

    【0024】本発明の他の一態様においては、(a)オントロジー特定情報とコンテントを含むメッセージ・パケットを受領する段階と、(b)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記インタプリタ管理テーブルに登録されているか否かを判断する段階と、(c)前記メッセージ・パケットに含まれるオントロジー特定情報が前記インタプリタ管理テーブルに登録されていないと判断された場合に、該オントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であるかを判断する段階と、(d)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であると判断された場合、該対応するインタプリタを前記メッセージ・
    パケットに含まれるオントロジー特定情報に対応付けて、前記インタプリタ管理テーブルに登録する段階と、
    (e)前記メッセージ・パケットに含まれるコンテントを前記対応するインタプリタにより解釈する段階と、を含む複数種類のインタプリタと、前記複数種類のインタプリタの各々に対応する複数のオントロジー特定情報を管理するインタプリタ管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理方法が提供される。

    【0025】本発明の他の一態様においては、(a)解析実行部特定情報とコンテントを含むメッセージ・パケットを受領する段階と、(b)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記解析実行管理テーブルに登録されているか否かを判断する段階と、(c)前記メッセージ・パケットに含まれる解析実行部特定情報が前記解析実行管理テーブルに登録されていないと判断された場合に、該解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であるかを判断する段階と、(d)
    前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であると判断された場合、該対応する解析実行部を前記メッセージ・パケットに含まれる解析実行部特定情報に対応付けて、前記解析実行部管理テーブルに登録する段階と、を含む複数種類のインタプリタと、
    前記複数種類の解析実行部と解析実行部特定情報を対応付けて管理する解析実行部管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理方法が提供される。

    【0026】本発明の他の一態様においては、(a)オントロジー特定情報と、コンテントを含むメッセージ・
    パケットを受領するエージェント・コミュニケーション言語マネジャと、(b)前記メッセージ・パケットに含まれるオントロジー特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択するインタプリタ用ローダと、を含む複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置が提供される。

    【0027】本発明の他の一態様においては、(a)オントロジー特定情報と、記述言語特定情報と、コンテント特定情報を含むメッセージ・パケットを受領するエージェント・コミュニケーション言語マネジャと、(b)
    前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択するインタプリタ用ローダと、を含む複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置が提供される。

    【0028】本発明の他の一態様においては、複数種類の解析実行部を有するメッセージ処理装置であって、コンテントに対応付けられたオントロジー特定情報に応じて、前記複数の解析実行部の中から1以上の解析実行部を選択し、該選択された1以上の解析実行部により、前記コンテントを解釈するメッセージ処理装置が提供される。

    【0029】本発明の他の一態様においては、(a)オントロジー特定情報とコンテントを含むメッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記インタプリタ管理テーブルに登録されているか否かを判断し、(b)前記メッセージ・パケットに含まれるオントロジー特定情報が前記インタプリタ管理テーブルに登録されていないと判断された場合に、該オントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であるかを判断し、
    (c)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であると判断された場合、該対応するインタプリタを前記メッセージ・パケットに含まれるオントロジー特定情報に対応付けて、前記インタプリタ管理テーブルに登録するインタプリタ用ローダを含む複数種類のインタプリタと、前記複数種類のインタプリタの各々に対応する複数のオントロジー特定情報を管理するインタプリタ管理テーブルを有するメッセージ処理装置が提供される。

    【0030】本発明の他の一態様においては、(a)解析実行部特定情報とコンテントを含むメッセージ・パケットに含まれる該解析実行部特定情報に対応する解析実行部が前記解析実行管理テーブルに登録されているか否かを判断し、(b)前記メッセージ・パケットに含まれる解析実行部特定情報が前記解析実行管理テーブルに登録されていないと判断された場合に、該解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であるかを判断し、(c)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であると判断された場合、該対応する解析実行部を前記メッセージ・パケットに含まれる解析実行部特定情報に対応付けて、前記解析実行部管理テーブルに登録するインタプリタ用ローダを含む複数種類のインタプリタと、
    前記複数種類の解析実行部と解析実行部特定情報を対応付けて管理する解析実行部管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理方法が提供される。

    【0031】本発明の他の一態様においては、(a)オントロジー特定情報と、記述言語特定情報と、コンテント特定情報と、応答IDを含むメッセージ・パケットを受領するエージェント・コミュニケーション言語マネジャと、(b)前記メッセージ・パケットに含まれる応答IDを解析し、会話スレッドを生成する会話スレッド制御部と、(c)前記メッセージ・パケットを記録するメッセージ・ログと、(d)前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択するインタプリタ用ローダと、を含む複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置が提供される。

    【0032】本発明の他の一態様においては、(a)オントロジー特定情報と、コンテントを含むメッセージ・
    パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、(b)前記メッセージ・パケットに含まれるオントロジー特定情報に応じて、前記複数種類のインタプリタの中から1以上のインタプリタを選択することを前記メッセージ処理装置に指示するためのプログラムコードと、(c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテントを解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、を含む複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。

    【0033】本発明の他の一態様においては、(a)オントロジー特定情報と、記述言語特定情報と、コンテント特定情報を含むメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、(b)前記メッセージ・パケットに含まれるオントロジー特定情報と、記述言語特定情報に応じて、
    前記複数種類のインタプリタの中から1以上のインタプリタを選択することを前記メッセージ処理装置に指示するためのプログラムコードと、(c)該選択された1以上のインタプリタにより、前記メッセージ・パケットに含まれるコンテント特定情報に対応したコンテントを解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、を含む複数種類のインタプリタを有し、ネットワークを介して受領したメッセージを処理するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。

    【0034】本発明の他の一態様においては、(a)コンテントに対応付けられたオントロジー特定情報に応じて、前記複数の解析実行部の中から1以上の解析実行部を選択することを前記メッセージ処理装置に指示するためのプログラムコードと、(b)該選択された1以上の解析実行部により、前記コンテントを解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、を含む複数種類の解析実行部を有するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。

    【0035】本発明の他の一態様においては、(a)オントロジー特定情報とコンテントを含むメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、(b)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記インタプリタ管理テーブルに登録されているか否かを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、(c)前記メッセージ・パケットに含まれるオントロジー特定情報が前記インタプリタ管理テーブルに登録されていないと判断された場合に、該オントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であるかを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、(d)前記メッセージ・パケットに含まれるオントロジー特定情報に対応するインタプリタが前記メッセージ処理装置において利用可能であると判断された場合、該対応するインタプリタを前記メッセージ・パケットに含まれるオントロジー特定情報に対応付けて、前記インタプリタ管理テーブルに登録することを前記メッセージ処理装置に指示するためのプログラムコードと、(e)前記メッセージ・パケットに含まれるコンテントを前記対応するインタプリタにより解釈することを前記メッセージ処理装置に指示するためのプログラムコードと、を含む複数種類のインタプリタと、前記複数種類のインタプリタの各々に対応する複数のオントロジー特定情報を管理するインタプリタ管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。

    【0036】本発明の他の一態様においては、(a)解析実行部特定情報とコンテントを含むメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、(b)前記メッセージ・
    パケットに含まれる解析実行部特定情報に対応する解析実行部が前記解析実行管理テーブルに登録されているか否かを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、(c)前記メッセージ・
    パケットに含まれる解析実行部特定情報が前記解析実行管理テーブルに登録されていないと判断された場合に、
    該解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であるかを判断することを前記メッセージ処理装置に指示するためのプログラムコードと、(d)前記メッセージ・パケットに含まれる解析実行部特定情報に対応する解析実行部が前記メッセージ処理装置において利用可能であると判断された場合、該対応する解析実行部を前記メッセージ・パケットに含まれる解析実行部特定情報に対応付けて、前記解析実行部管理テーブルに登録することを前記メッセージ処理装置に指示するためのプログラムコードと、を含む複数種類のインタプリタと、前記複数種類の解析実行部と解析実行部特定情報を対応付けて管理する解析実行部管理テーブルを有するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。

    【0037】

    【実施例】以下、図面を参照して本発明の実施例を説明する。 図1を参照すると、本発明の移動オブジェクトを実行する分散ネットワーク環境150が示されている。
    各サーバ112〜115には、移動エージェント12
    5、135、141等にサービスを与えることが可能なプレース102〜105が用意されている。 この分散ネットワーク環境におけるプレース群はクラウドと呼ばれている。

    【0038】クライアント・システム101においては、移動エージェントを生成し、移動させるためのアプリケーション113が存在する。 アプリケーション11
    3が送り出した移動エージェント125等は、各プレース102〜105において存在する他のエージェント(移動エージェントまたは常駐エージェント)とコンタクトし(移動エージェントとコンタクトし、サービスを提供するエージェントを特にアクター・エージェントと呼ぶ)、リクエストを送出し、そのリクエストの結果を受けることができる。 プレースは、エージェント間のコンタクトをサポートしている。 また、移動エージェント125等は、アクター・エージェントから受領したリクエストの結果を保持し、移動を継続し、または、移動途中で結果をクライアント101または、他のプレースに送出することもできる。

    【0039】また、移動エージェント(または常駐エージェント)125は、他のプレースにメッセージ・パケットを送出して、他のプレースで会話を実行し、インストラクションを実行することもできる。

    【0040】図2は、図1に示された分散ネットワーク環境上に存在する各ノード(サーバまたはクライアントサイト)のハードウェア構成の概観図が示されている。
    各ノード100は、中央処理装置(CPU)1とメモリ4とを含んでいる。 CPU1とメモリ4は、バス2を介して、補助記憶装置としてのハードディスク装置13とを接続してある。 フロッピーディスク装置20、ハードディスク装置13,30、CD−ROMドライブ26,
    29、MOドライブ28等の記憶媒体駆動装置は、フロッピーディスク・コントローラ19、IDEコントローラ25、SCSIコントローラ27等の各種コントローラを介してバス2へ接続されている。

    【0041】フロッピーディスク装置20等の記憶媒体駆動装置には、フロッピーディスク等の可搬型記憶媒体が挿入され、このフロッピーディスク等やハードディスク装置13、ROM14等の記憶媒体には、オペレーティングシステムと協働してCPU等に命令を与え、本発明を実施するためのコンピュータ・ソフトウエアを記録することができ、メモリ4にロードされることによって実行される。 このコンピュータ・ソフトウエアは圧縮し、または、複数に分割して、複数の媒体に記録することもできる。

    【0042】ノード・システム100は更に、ユーザ・
    インターフェース・ハードウェアを備えたシステムとすることができ、ユーザ・インターフェース・ハードウェアとしては、例えば、入力をするためのポインティング・デバイス(マウス、ジョイスティック等)7またはキーボード6や、視覚データをユーザに提示するためのディスプレイ12があり、また、パラレルポート16を介してプリンタを接続するも可能である。 このノード・システム100は、シリアルポート15を介してモデムを接続することが可能であり、シリアルポート15およびモデムまたはトークンリングや通信アダプタ18等を介してネットワークに接続し、他のコンピュータシステムと通信を行っている。

    【0043】このように、本発明は、通常のパーソナルコンピュータ(PC)、ワークステーション、汎用機や、これらの組合せによって実施可能であることを容易に理解できるであろう。 ただし、これらの構成要素は例示であり、その全ての構成成要素が本発明の必須の構成要素となるわけではない。 特にサーバ側においては、サーバを遠隔操作することも可能であるため、ユーザインタフェース等は不要であり、CPUやメモリ等の基本的なデータ処理機能と通信機能があれば足りる。 また、クライアント側においては、後述するメッセージ・パケットを送出するに必要な構成を有していればよく、通信機能と、メッセージ・パケットの指定を行い、また、メッセージ・パケットの送出を指示するための何らかの入力手段があれば足る。

    【0044】クライアントシステム側、サーバシステム側ともに、オペレーティング・システムとしては、Wi
    ndowsNT(マイクロソフトの商標)、Windo
    ws95(マイクロソフトの商標)、Windows
    3. x(マイクロソフトの商標)、OS/2(IBMの商標)、AIX(IBMの商標)上のX−WINDOW
    システム(MITの商標)、Solaris(サンマイクロシステムズの商標)などの、標準でGUIマルチウインドウ環境をサポートするものや、PC−DOS(I
    BMの商標)、MS−DOS(マイクロソフトの商標)
    などのキャラクタ・ベース環境のもの、さらにはOS/
    Open(IBMの商標)VxWorks(Wind
    River Systems, Inc. の商標)等のリアルタイムOSでも実現可能であり、特定のオペレーティング・システム環境に限定されるものではない。

    【0045】B. システム構成 次に、図3のブロック図を参照して、本発明の好適な実施例におけるサーバ側のシステム構成について説明する。

    【0046】エージェント201は、このサーバに送られてきた移動エージェントまたはこのサーバに常駐している常駐エージェントである。 このエージェント201
    は、後述するメッセージ・パケットを送出し、または、
    受領することによってエージェント・コミュニケーション・システム200と対話することができる。

    【0047】エージェント・コミュニケーション言語マネジャ203は、エージェント201や既存システム、
    ネットワークから送付されるメッセージを受領し、また、メッセージをこれらのシステムに送信するためのコンポーネントである。

    【0048】会話スレッド制御部205は、エージェント201等と対話する各会話に対応するスレッド207
    (複数の会話を非同期に受け付けるため、マルチスレッド化している。このスレッドを会話スレッドと呼ぶ)を管理し、会話の流れに応じて適切なスレッドを生成し、
    または既に生成されたスレッドに制御を渡すコンポーネントである。

    【0049】メッセージ・ログ211は、会話を記憶するコンポーネントである。 会話内容監視部217は、メッセージ・ログ211に格納された会話のログと現在の発話されている内容から会話が成立するかどうかのポリシー・チェックを行うコンポーネントである。 また、会話内容監視部用ローダ215は、メッセージ・パケット300のメッセージ・タイプに応じた会話内容監視部2
    17を呼び出すためのコンポーネントである。

    【0050】トランスレータ221は、会話に使われているエージェント・コミュニケーション言語を他の言語に翻訳するコンポーネントである。 トランスレータ用ローダ219は、このトランスレータ群を管理するコンポーネントである。

    【0051】インタプリタ225は、会話の内容を理解し実行するコンポーネントである。 このインタプリタは、後述するオントロジーや記述言語に対応して複数種類設けられており、夫々オントロジーに特化したフォーマット・チェック・ルーチンやコンテント解釈ルーチン、実行ルーチンを有している。 例えば、交通機関の予約に関するオントロジーであった場合、"R, flight, Na
    rita to Tacoma, 1997/07/06/15:00-1997/07/06/18:00"
    といったコンテントを受領し、所定のフォーマット・チェックを行い、"R"を予約を指示するコマンドと解釈する等の特有のコンテント解釈ルーチンを実行し、所定の航空会社のデータベースにアクセスして、予約状況等をチェックする等の固有の実行ルーチンを実行する。 そして、最終的に、1997年7月5日17時10分成田空港発、シアトルのタコマ空港行のxx航空26便、エコノミーの禁煙席の予約を行い、送信者に対し予約の確認を行う。

    【0052】インタプリタ用ローダ223は、このインタプリタ225群を管理するコンポーネントである。 プロトコル・マネジャ230は、接続するネットワークの種類に応じたプロトコルに変換するためのコンポーネントである。

    【0053】以上図3に示す各機能ブロックを説明したが、これらの機能ブロック(コンポーネント)は、論理的機能ブロックであり、各々1つのまとまりを持ったハードウエアやソフトウエアによって実現されることのみを意味するのではなく、複合し、または共通したハードウエアやソフトウエアによっても実現可能である。 また、この図3に示す全ての機能ブロックが本発明に必須の構成要素という訳ではない。

    【0054】以上図3、4に示す各機能ブロックを説明したが、これらの機能ブロックは、論理的機能ブロックであり、各々1つのまとまりを持ったハードウエアやソフトウエアによって実現されることを意味するのではなく、複合し、または共通したハードウエアやソフトウエアによって実現可能である。 また、この図3、4に示す全ての機能ブロックが本発明に必須の構成要素という訳ではない。

    【0055】例えば、本発明は、会話内容監視部21
    7、トランスレータ221、インタプリタ225等の解釈実行部品の何れかをダイナミックに切り換え、使用すべき解釈実行部品を指し示す会話内容監視部用ローダ2
    15、トランスレータ用ローダ219、インタプリタ用ローダ223の何れかが存在すればよく、エージェント・コミュニケーション言語マネジャ203、会話スレッド制御部205、会話スレッド207、メッセージ・ログ211、IDジェネレータ213、会話内容監視部2
    17、トランスレータ221、インタプリタ225は、
    本発明の一態様においては必須の構成要素とはならない。

    【0056】C. 動作説明 図4は、本発明の好適な実施例において使用されるメッセージ・パケット300の概念図であり、図5は、図3
    に示した各コンポーネントの発話時の動作状態を示す図である。

    【0057】本発明の好適な実施例においては、図4のメッセージ・パケット300に含まれるメッセージタイプ301は、エージェント・コミュニケーション言語(ACL:Agent Communication Language)のパフォーマティブが使用されている。 ACLは、エージェント間のコミュニケーションを人間の言葉に近い形で提供している高級言語であり、FIPA(Foundation for Intel
    ligent Physical Agents)の提供しているACLや、K
    QML(Knowledge Query Manipulation Language)、K
    IF(Knowledge Interchange Format)等があり、これらの言語は、"SEMANTICS FOR AN AGENT COMMUNICATION LA
    NGUAGE, Yannis Labrou, A Doctoral Dissertation for
    the PhD Defense Examination, Submitted to the Def
    ense Committee, at the Computer Science and Electr
    ical Engineering Department (CSEE), University of
    Maryland Graduate School"や"TR CS-97-03, A Proposa
    l fora new KQML Specification, Yannis Labrou and T
    im Finin February 3, 1997"等により公表されている。

    【0058】ACLの1つであるKQMLのパフォーマティブには次のようなものがある。 ask-if,ask-all,ask-one,stream-all,eos,tell,untell,
    deny,insert,uninsert,delete-one,delete-all,undelet
    e,achieve,unachieve,advertise,unadvertise,subscrib
    e,error,sorry,standby,ready,next,rest,discard,regi
    ster,unregister,forward,broadcast,transport-addres
    s,broker-one,broker-all,recommend-one,recommend-al
    l,recruit-one,recruit-all

    【0059】センダー303は、メッセージの送出元であり、レシーバ305は、メッセージの受け取り先である。

    【0060】応答ID307は、先行する会話に続くI
    Dである。 エージェント201が複数の相手と会話する場合、後述する会話スレッドに対応して複数の応答ID
    が割りふられる。

    【0061】会話ID309は、会話相手にこのIDで応答することを指示するためのIDである。

    【0062】記述言語タイプ311は、コンテントを記述している言語を特定する情報である。 オントロジー3
    13は、コンテントが規定しているオントロジーを特定する情報である。

    【0063】コンテント315は、メッセージの具体的内容であり、本発明の好適な実施例においては、他のプレースに移動した後にインストラクションを形成するためのソフトウエアを含んでいる。 このコンテント315
    の内部には、さらにメッセージ・パケットを含めることもでき、中継点を介して、他のプレースに移動させることもできる。 本発明の好適な実施例においては、かかる場合、センダー303とレシーバ305とは別に、真の送信者と最終的な受信者をしめすFromエントリとt
    oエントリが設けられている。

    【0064】次に図5を参照しつつ図3に示した各コンポーネントの発話時の動作状態を説明する。 エージェント201は、エージェント・コミュニケーション・システム200に対し図4のメッセージ・パケットを送出する。 本発明の好適な実施例においては、図3に示したコンポーネントはオブジェクト指向言語のクラスとして定義されており、発話に際しての各オブジェクトは、図6
    のコンポーネント間のオブジェクト・インストラクション・ダイアグラムに示すように、他のオブジェクトにインストラクションを送出することによって他のオブジェクトの動作を促している。

    【0065】メッセージ・パケット300を受領したエージェント・コミュニケーション言語マネジャ203
    は、自分が"sendMessage"で呼ばれた場合には発話処理を行い、"receiveMessage"で呼ばれた場合には受話処理を行っている。

    【0066】会話スレッド制御部205は、メッセージ・パケット300に含まれる応答ID307を参照し、
    既に生成されている会話スレッドに処理を依頼すべきものか否か判断する。 会話スレッド制御部205が、新たな会話であると判断した場合には、会話スレッド207
    を新たに生成し、IDジェネレータ213に新たな応答ID307、会話ID309の割りふりを会話スレッド207を介して指示し、処理を会話スレッド207に移す。 本発明の好適な実施例において、この応答ID30
    7は、「URL+Date+Time+シリアル番号」
    等のネットワーク上で一意に決まるようなIDが割り振られる。

    【0067】応答ID307に対応する会話スレッド2
    07が存在している場合、会話スレッド制御部205
    は、新たな会話ではないと判断し、対応する会話スレッド207に処理を移す。 会話を継続することを欲する場合には、会話スレッド207は、IDジェネレータ21
    3に、会話ID309の割りふりを指示する。

    【0068】メッセージ・ログ211は、会話スレッド207に送られたメッセージ・パケット300を記憶する。

    【0069】会話内容監視部用ローダ215は、メッセージ・パケット300のメッセージ・タイプ301に応じた会話内容監視部217を呼び出す。 メッセージ・タイプ301に応じた会話内容監視部217を呼び出しは、図7に示すような会話内容監視部品テーブルを設けても、会話内容監視部品のクラス名をメッセージ・タイプと同じにして直接呼び出してもよい。

    【0070】会話内容監視部217は、メッセージ・ログ211に格納された会話のログと現在の発話されている内容から会話が成立するかどうかのポリシー・チェックを行う。 例えば、受領したメッセージ・パケット30
    0のメッセージ・タイプ301が"sorry"(会話の内容は理解可能であるが、自分には処理能力がないことを示すメッセージ・タイプ)であった場合、メッセージ・ログ211から対応する応答IDを有し、1つ前の会話I
    Dを有するメッセージのメッセージ・タイプを参照し、"ask-if"(相手側の処理能力を問い合わせる場合のメッセージ・タイプ)等の会話として成立するメッセージ・タイプであれば問題なしと判断し、例えば"deny"
    (否定を示すメッセージ・タイプ)等の会話として成立しないメッセージ・タイプと判断した場合は、エラーと判断し、メッセージ・パケット300のセンダ303に対し"error"(エラーを示すメッセージ・タイプ)のメッセージ・パケットを送付する等の処理を行う。

    【0071】会話として成立すると判断された場合、メッセージ・パケット300は、会話スレッド207からプロトコル・マネジャ230を介してレシーバ303に指定されたノードに対し送信する。 このとき、プロトコル・マネジャ230は、接続するネットワークの種類に応じたプロトコルに変換するため、エージェント・コミュニケーション・システム200は、ネットワーク・プロトコルを意識せずにメッセージ・パケット300の送受信をすることができる。

    【0072】次に図8、9を参照して、この送出されたメッセージ・パケット300を受領したノードにおける各コンポーネントの動作状態を説明する。

    【0073】プロトコル・マネジャ230からメッセージ・パケット300を受領したエージェント・コミュニケーション言語マネジャ203は、"handleMessage"によって呼ばれたことから、受領したメッセージ・パケット300が受話のためのメッセージ・パケットであると判断し、会話スレッド制御部205に処理を依頼する。
    本発明の好適な実施例においてはプロトコル・マネジャ230は、エージェント・コミュニケーション言語マネジャ203が内部的にインスタンシエートしているので、エージェント・コミュニケーション言語マネジャ2
    03の存在を知っており、流れてきたデータをエージェント・コミュニケーション言語マネジャ203に渡すことができる。

    【0074】会話スレッド制御部205は、メッセージ・パケット300に含まれる応答ID307を参照し、
    既に生成されている会話スレッドに処理を依頼すべきものか否か判断する。 会話スレッド制御部205が、新たな会話であると判断した場合には、会話スレッド207
    を新たに生成し、処理を会話スレッド207に移す。

    【0075】応答ID307に対応する会話スレッド2
    07が存在している場合、会話スレッド制御部205
    は、新たな会話ではないと判断し、対応する会話スレッド207に処理を移す。

    【0076】メッセージ・ログ211は、会話スレッド207に送られたメッセージ・パケット300を記憶する。

    【0077】会話内容監視部用ローダ215は、メッセージ・パケット300のメッセージ・タイプ301に応じた会話内容監視部217を呼び出す。

    【0078】会話内容監視部217は、メッセージ・ログ211に格納された会話のログと現在の発話されている内容から会話が成立するかどうかのポリシー・チェックを行う。

    【0079】会話として成立すると判断された場合、会話スレッド207は、インタプリタ用ローダ223に処理を移す。 インタプリタ用ローダ223は、メッセージ・パケット300のエージェント・コミュニケーション言語を把握し、また、メッセージ・パケット300に含まれる記述言語タイプ311、オントロジー313に対応するインタプリタが図10に示すようなインタプリタ管理テーブル350に登録されているか否かを判断する。

    【0080】もし、受領したメッセージ・パケット30
    0のエージェント・コミュニケーション言語、記述言語タイプ311、オントロジー313に対応するインタプリタがインタプリタ管理テーブル350に登録されている場合には、そのインタプリタを使用してコンテント3
    15の解釈を行う。 受領したメッセージ・パケット30
    0のエージェント・コミュニケーション言語、記述言語タイプ311、オントロジー313に対応するインタプリタがインタプリタ管理テーブル350に登録されていない場合、本発明の好適な実施例においては、システムの管理する(アクセス可能な)インタプリタ・ライブラリにその組み合わせに対応するインタプリタが存在するか否かを判断する。

    【0081】存在した場合には、インタプリタ管理テーブル350に登録を行い、そのインタプリタを使用してコンテント315の解釈を行う。 エージェント・コミュニケーション言語、記述言語タイプ311、オントロジー313の組み合わせに対応するインタプリタがインタプリタ・ライブラリに存在しない場合は、記述言語タイプ311、オントロジー313の組み合わせに対応するインタプリタがインタプリタ・ライブラリに存在するか否かを判断する。 存在しない場合には、処理不能として処理する。 本発明の好適な実施例においては、オントロジーは階層構造によって対応付けられており、最も対応関係の深いオントロジーのインタプリタを使用することもできる。

    【0082】存在した場合には、コンテント315を発見されたインタプリタのエージェント・コミュニケーション言語に翻訳すべく、トランスレータ用ローダ219
    に処理を移す。 トランスレータ用ローダ219は、図1
    1に示すようなトランスレータ管理テーブル340を参照し、要求された翻訳を実行可能なトランスレータが存在するか否か判断する。 本発明の好適な実施例において、存在しない場合は、インタプリタの場合と同様にトランスレータ・ライブラリを探索して、テーブルへの登録を行い、翻訳されたコンテント315を選択されたインタプリタによって処理する。 存在しない場合には、処理不能として処理する。

    【0083】本発明の好適な実施例において、インタプリタ225の解釈した結果は、エージェント231に伝達され、コンテント315に記載されたインストラクションの内容に応じた処理を行う。 このコンテント315
    の内容によっては、会話スレッドを消滅させる処理を行ったり、新たな発話を開始する処理に移行したり、新たにエージェントを生成する処理を行ったりする。 本発明の好適な実施例においてインタプリタ225は、処理を会話スレッド207に戻す。 会話スレッド207は、次のメッセージパケットを受領するまで待機する。

    【0084】以上説明した本発明の好適な実施例においては、解釈実行部品の各種管理テーブルへの登録を実行時に行っているが、実行時には行わず、始動時にのみ解釈実行部品のディレクトリーを走査し、どのような解釈実行部品が存在するか検査し、解釈実行部品テーブルを作成し管理してもよい。

    【0085】また、メッセージ・パケット300がノード間を移動する形式を採用しているが、図12、13に示すように、メッセージ・パケット300を移動エージェント233に添付して送付することもできる。 かかる場合、移動エージェント233はメッセージ・パケット300を保持しつつ、複数のプレースを渡り歩き、会話を行い、また、その処理結果を使用して他のプレースで会話を行うこと等の複雑な作業をすることも可能となる。

    【0086】移動エージェントがネットワーク上を移動する場合、図14に示されるステップを実行することによって移動を可能になる。

    【0087】

    【発明の効果】以上説明したように、本発明によれば、
    エージェント間の会話の内容(背景概念、語彙)に応じた解釈実行部品を使用することにより、適切な応答を行うことのできるコミュニケーション・システムを提供することができる。

    【0088】本発明の一態様においては、不要な判断ロジックを削減し、高速処理を可能としたメッセージ処理システムを提供することことができる。

    【0089】本発明の一態様においては、実行時に必要となる資源を削減したメッセージ処理システムを提供することができる。

    【0090】本発明の一態様においては、高速な並列会話処理を実現したメッセージ処理システムを提供することができる。

    【0091】本発明の一態様においては、エージェント間のコミュニケーションをサポートするに際し、プログラマの開発や保守に要する労力及び時間を可能な限り軽減することができる。

    【0092】本発明の一態様においては、エージェント間の会話に柔軟に対応することができるメッセージ処理システムを提供することができる。

    【0093】本発明の一態様においては、通信システムへの負担が少ないメッセージ処理システムを提供することができる。

    【0094】

    【図面の簡単な説明】

    【図1】 本発明の移動エージェントが動作する分散ネットワーク環境を示す図である。

    【図2】 本発明におけるクライアントシステムまたはサーバシステムのハードウェア構成の一実施例を示すブロック図である。

    【図3】 本発明のクライアントサイトまたはサーバサイトにおける処理要素の一実施例を示すブロック図である。

    【図4】 本発明のメッセージ・パケットの一例を示す概念図である。

    【図5】 本発明のクライアント(またはサーバ)サイトにおける処理要素の一実施例を示すブロック図である。

    【図6】 本発明の好適な実施例におけるコンポーネント間のオブジェクト・インタラクション・ダイアグラムである。

    【図7】 本発明の好適な実施例における会話内容監視部品管理テーブルを示す概念図である。

    【図8】 本発明のサーバ(またはクライアント)サイトにおける処理要素の一実施例を示すブロック図である。

    【図9】 本発明の好適な実施例におけるコンポーネント間のオブジェクト・インストラクション・ダイアグラムである。

    【図10】 本発明の好適な実施例におけるインタプリタ管理テーブルを示す概念図である。

    【図11】 本発明の好適な実施例におけるトランスレータ管理テーブルを示す概念図である。

    【図12】 本発明のクライアント(またはサーバ)サイトにおける処理要素の一実施例を示すブロック図である。

    【図13】 本発明のサーバ(またはクライアント)サイトにおける処理要素の一実施例を示すブロック図である。

    【図14】 本発明のエージェント・コミュニケーション・システムをネットワーク上移動させる場合の処理手順の一実施例を示すフローチャートである。

    【符号の説明】

    100 ノード・システム 200 エージェント・コミュニケーション・システム 203 エージェント・コミュニケーション言語マネジャ 205 会話スレッド制御部 207 会話スレッド 211 メッセージ・ログ 213 IDジェネレータ 215 会話内容監視部用ローダ 217 会話内容監視部 219 トランスレータ用ローダ 221 トランスレータ 223 インタプリタ用ローダ 225 インタプリタ

    ─────────────────────────────────────────────────────

    【手続補正書】

    【提出日】平成10年5月26日

    【手続補正1】

    【補正対象書類名】明細書

    【補正対象項目名】特許請求の範囲

    【補正方法】変更

    【補正内容】

    【特許請求の範囲】

    ───────────────────────────────────────────────────── フロントページの続き (72)発明者 中 田 章 文 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 (72)発明者 古 澤 修 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内

    高效检索全球专利

    专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

    我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

    申请试用

    分析报告

    专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

    申请试用

    QQ群二维码
    意见反馈