JP3954689B2 - メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体 - Google Patents

メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体 Download PDF

Info

Publication number
JP3954689B2
JP3954689B2 JP15468897A JP15468897A JP3954689B2 JP 3954689 B2 JP3954689 B2 JP 3954689B2 JP 15468897 A JP15468897 A JP 15468897A JP 15468897 A JP15468897 A JP 15468897A JP 3954689 B2 JP3954689 B2 JP 3954689B2
Authority
JP
Japan
Prior art keywords
agent
service provider
message packet
message
regular
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP15468897A
Other languages
English (en)
Other versions
JPH1115796A (ja
Inventor
谷 一 槌
田 章 文 中
澤 修 古
木 俊 宏 鈴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP15468897A priority Critical patent/JP3954689B2/ja
Priority to US09/092,130 priority patent/US6338081B1/en
Publication of JPH1115796A publication Critical patent/JPH1115796A/ja
Application granted granted Critical
Publication of JP3954689B2 publication Critical patent/JP3954689B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5054Automatic deployment of services triggered by the service manager, e.g. service implementation by automatic configuration of network components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0226Mapping or translating multiple network management protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)
  • Multi Processors (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

【0001】
【産業上の利用分野】
この発明は、コンピュータ・ネットワークにおけるデータ処理方法に関し、より詳しくは、分散コンピュータ環境あって、ネットワーク上に存在する2以上のオブジェクト間のコミュニケーションをサポートするための改良されたデータ処理方法に関する。
【0002】
【従来の技術】
従来より、分散コンピュータ環境において、ネットワーク上に存在するサーバに提供されているプレースに自分自身の内部状態を保持したまま移動し、移動先のプレースにおいてインストラクションを形成する移動エージェント(モーバイルエージェント)技術が存在する(特開平7−182174号公報(USP5,603,031)、「日経コミュニケーション別冊、最新インターネットテクノロジ」日経BP社pp104−117、西田 文比古、藤原 進 著等)。
【0003】
かかる移動エージェントは、この移動先のプレースにおいて他のエージェント(移動エージェントまたは常駐エージェント)とコンタクトし、必要なサービスを受けることができる。プレースは、ネットワーク上に存在するサーバによって提供されているエージェントの移動場所であり、エージェント間のコンタクトをサポートし、また、ハードウエア及びプラットフォームの違いを吸収している。
【0004】
かかる移動エージェントの技術は、社内会議のセッティングを社員のスケジュールや会議室の予約状況に応じてダイナミックに調整したり、ネットワーク上に分散する所望の情報を入手する等、これまで人手によってなされていた作業をこの移動エージェントが代行することを可能にしている。
【0005】
このような従来のエージェント同士のコンタクトを行う方式においては、図10に示すように移動エージェント101または常駐エージェント103(以下、サービスを要求する一般的なエージェントをレギュラ・エージェントと呼ぶ)が、サービスを行う能力のあるサービス・プロバイダ・エージェント131、133にサービスを要求する場合には、そのプレースに存在するエージェント・コミュニティ150を管理するファシリテータ・エージェント110に、サービスの提供能力のあるサービス・プロバイダ・エージェント131、133を問い合わせ、その問い合わせた情報を基に、サービス・プロバイダ・エージェント131、133とコンタクトをとっていた。
【0006】
しかし、かかるエージェント・コミュニティ150に存在するエージェントは、ファシリテータ・エージェント110に各サービス・プロバイダ・エージェントに特有の形式で登録管理されていたので、サービスを受けることを欲するレギュラ・エージェント101、103は、ファシリテータ・エージェント110から受領したエージェントの一覧から自分のサービスの提供能力のあるサービス・プロバイダ・エージェント131、133を捜し出さなければならなかった。
【0007】
また、レギュラ・エージェント101、103は、サービスを受ける夫々のサービス・プロバイダ・エージェント131、133に対応した問い合わせをサービス・プロバイダ・エージェント毎に行う必要があった。
【0008】
さらに、レギュラ・エージェント101、103は、定形的な処理であってもレギュラ・エージェント側でコントロールを行い、どのサービス・プロバイダ・エージェントにどのような依頼を行うか、その内容や組み合わせを検討する必要があった。
【0009】
そして、レギュラ・エージェント101、103は、各サービス・プロバイダ・エージェントから受領した複数種類の処理結果を基に所望の処理結果を構築する必要があった。
【0010】
また、ファシリテータ・エージェント110の機能を拡張し、サービスの拡充を図る場合には、ファシリテータ・エージェント110自体をメンテナンスし、導入に際して、サービスの停止を行う必要があった。
【0011】
【発明が解決しようとする課題】
本発明の一つの目的は、エージェントからの問い合わせに柔軟、高速かつ適切に対応することができるコミュニケーション・システムを提供することにある。
【0012】
本発明の他の一つの目的は、エージェントの利用者の負担を軽減したコミュニケーション・システムを提供することにある。
【0013】
本発明の他の一つの目的は、サービス・プロバイダ・エージェントの違いを吸収したコミュニケーション・システムを提供することにある。
【0014】
本発明の他の一つの目的は、各サービス・プロバイダ・エージェントから受領した複数種類の処理結果を基に所望の処理結果を構築することのできるコミュニケーション・システムを提供することにある。
【0015】
本発明の他の一つの目的は、タスクの分配による高速な処理を可能とするコミュニケーション・システムを提供することにある。
【0016】
本発明の他の一つの目的は、各種エージェントの導入をダイナミックに行うことができる拡張性の高いコミュニケーション・システムを提供することにある。
【0017】
本発明の他の一つの目的は、エージェント間のコミュニケーションをサポートするに際し、プログラマの開発や保守に要する労力及び時間を可能な限り軽減することにある。
【0018】
本発明の他の一つの目的は、エージェント間の会話に柔軟に対応することができるコミュニケーション・システムを提供することにある。
【0019】
本発明の他の一つの目的は、通信システムへの負担が少ないメッセージ処理システムを提供することにある。
【0020】
【課題を解決するための手段】
本発明においては、レギュラ・エージェントからの仕事の依頼としてのタスクを分配/統合する等、その問題領域に特化して処理する複数種類のブローカ・エージェント121、123を提供する。ブローカ・エージェント121、123は、ファシリテータ・エージェント110に問い合わせを行い、自分の仕事に関係のあるサービス・プロバイダ・エージェント131、133の一覧を受領し、リストとして保持する。レギュラ・エージェント101から仕事の仲介を依頼を示すメッセージ・パケットを受領したブローカ・エージェント121は、メッセージ・パケットを解析することにより、依頼の仕事の概要を判断し、依頼メッセージに一定の変換を行った後、リストとして保持するサービス・プロバイダ・エージェントに送信する。ブローカ・エージェント121は、サービス・プロバイダ・エージェント131、133からの返事を受領し、一定の変換処理を施した後にレギュラ・エージェント101に送信する。
【0021】
本発明の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)該受領したメッセージ・パケットが所定のフォーマットに合致しているか否かチェックする段階と、
(c)前記ファシリテータ・エージェントに問い合わせを行い、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査する段階と、
(d)前記受領したメッセージ・パケットを変換する段階と、
(e)該変換したメッセージ・パケットを該利用可能なサービス・プロバイダ・エージェントに送信する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
なお、本願明細書の特許請求の範囲において、「メッセージ・パケットを変換する」とは、メッセージ・パケットの一部のデータ(例えば、本発明の好適な実施例におけるメッセージ・タイプ、オントロジー等)を他のデータに置換する場合の他、メッセージ・パケットの一部のデータ(本発明の好適な実施例におけるコンテント等)抽出する、メッセージ・パケットにデータを附加する(本発明の好適な実施例におけるメッセージ・パケットをコンテントに持つメッセージ・パケットを生成するフォワード処理等)場合等を含む概念である。
また、本願明細書の特許請求の範囲において、「メッセージ・パケットをサービス・プロバイダ・エージェントに送信する」ことは、単に、送信元から直接サービス・プロバイダ・エージェントに送信することのみを意味するのではなく、例えば、ファシリテータ・エージェント等の他の資源を利用して間接的に送信することを含む概念である。
さらに、「サービス・プロバイダ・エージェント特定情報」とは、サービス・プロバイダ・エージェントにアクセスすることを可能にする全ての情報をいい、エージェント名、オブジェクト・クラス名、アドレス名や、これらの組み合わせを含む概念である。
また、「サービス・プロバイダ・エージェント種別情報」とは、サービス・プロバイダ・エージェントの提供するサービスの種別を特定するための情報をいい、サービス・プロバイダ・エージェントの保持するインタプリタ、トランスレータ、会話チェック・ルーチン、フォーマット・チェック・ルーチン、解釈実行ルーチン、実行ルーチン等を識別するための全ての情報を含む概念である。本発明の好適な実施例においては、オントロジー情報、カテゴリー情報、サブカテゴリー情報、メッセージタイプ情報、記述言語情報等やこれらの組み合わせに対応する概念である。
【0022】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)前記ファシリテータ・エージェントに問い合わせを行い、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査する段階と、
(c)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0023】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントに前記メッセージ・パケットのコンテントを含むデータを送信することを前記ファシリテータ・エージェントに指示する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0024】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)該受領したメッセージ・パケットが所定のフォーマットに合致しているか否かチェックする段階と、
(c)前記ファシリテータ・エージェントに問い合わせを行い、所定のサービス・プロバイダ・エージェント種別情報を有する複数のサービス・プロバイダ・エージェントが利用可能であるか否かを検査する段階と、
(d)前記受領したメッセージ・パケットを該利用可能なサービス・プロバイダ・エージェントに対応して変換する段階と、
(e)該変換したメッセージ・パケットを該利用可能なサービス・プロバイダ・エージェントに送信する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0025】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)ブローカ・アドバタイズ・テーブルを参照し、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査する段階と、
(c)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、所定のサービス・プロバイダ・エージェント種別情報を有しているサービス・プロバイダ・エージェントを特定するサービス・プロバイダ・エージェント特定情報を管理するブローカ・アドバタイズ・テーブルを保持するブローカ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0026】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)前記ブローカ・アドバタイズ・テーブルを参照し、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査する段階と、
(c)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信する段階と、
(d)前記利用可能なサービス・プロバイダ・エージェントから応答メッセージ・パケットを受領する段階と、
(e)該受領した応答メッセージ・パケットを変換する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、所定のサービス・プロバイダ・エージェント種別情報を有しているサービス・プロバイダ・エージェントを特定するサービス・プロバイダ・エージェント特定情報を管理するブローカ・アドバタイズ・テーブルを保持するブローカ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0027】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)該受領したメッセージ・パケットを解析してサービス・プロバイダ・エージェント種別情報を決定する段階と、
(c)該決定されたサービス・プロバイダ・エージェント種別情報に対応するサービス・プロバイダ・エージェントを特定する段階と、
(d)前記受領したメッセージ・パケットを変換する段階と、
(e)該変換したメッセージ・パケットを前記対応するサービス・プロバイダ・エージェントに送信する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0028】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(b)該受領したメッセージ・パケットを解析してサービス・プロバイダ・エージェント種別情報を決定する段階と、
(c)該決定されたサービス・プロバイダ・エージェント種別情報に対応するサービス・プロバイダ・エージェントを特定する段階と、
(d)前記受領したメッセージ・パケットを変換する段階と、
(e)該変換したメッセージ・パケットを前記対応するサービス・プロバイダ・エージェントに送信する段階と、
(f)前記対応するサービス・プロバイダ・エージェントから応答メッセージ・パケットを受領する段階と、
(g)該受領した応答メッセージ・パケットを変換する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0029】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットの処理結果である応答メッセージ・パケットを前記複数のサービス・プロバイダ・エージェントから受領する段階と、
(b)該受領した応答メッセージ・パケットを変換する段階と、
(c)該変換された応答メッセージ・パケットを前記レギュラ・エージェントに送信する段階と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティにおいて実行されるメッセージ処理方法が提供される。
【0030】
本発明の他の一態様においては、
(a)メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、
(b)サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントと,
(c−1)前記レギュラ・エージェントから送信されたメッセージ・パケットを受領し、
(c−2)該受領したメッセージ・パケットが所定のフォーマットに合致しているか否かチェックし、
(c−3)前記ファシリテータ・エージェントに問い合わせを行い、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査し、
(c−4)前記受領したメッセージ・パケットを変換し、
(c−5)該変換したメッセージ・パケットを該利用可能なサービス・プロバイダ・エージェントに送信するブローカ・エージェントと、
を含むレギュラ・エージェントから送信されたメッセージ・パケットを処理するためのエージェント・コミュニティ・システムが提供される。
【0031】
本発明の他の一態様においては、
(a)サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントと,
(b−1)前記レギュラ・エージェントから送信されたメッセージ・パケットを受領し、
(b−2)前記ファシリテータ・エージェントに問い合わせを行い、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査し、
(b−3)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信するブローカ・エージェントと、
を含むレギュラ・エージェントから送信されたメッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントを制御するためのエージェント・コミュニティ・システムが提供される。
【0032】
本発明の他の一態様においては、
(a)メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、
(b)サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントと、
(c−1)前記レギュラ・エージェントから送信されたメッセージ・パケットを受領し、
(c−2)所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントに前記メッセージ・パケットのコンテントを含むデータを送信することを前記ファシリテータ・エージェントに指示するブローカ・エージェントと、
を含むレギュラ・エージェントから送信されたメッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントを制御するためのエージェント・コミュニティ・システムが提供される。
【0033】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領し、
(b)前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントの内、所定のサービス・プロバイダ・エージェント種別情報を有しているサービス・プロバイダ・エージェントを特定するサービス・プロバイダ・エージェント特定情報を管理するブローカ・アドバタイズ・テーブルを保持し、
(c)前記ブローカ・アドバタイズ・テーブルを参照し、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査し、
(d)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信するブローカ・エージェントを含むエージェント・コミュニティ・システムが提供される。
【0034】
本発明の他の一態様においては、
(a)メッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、
(b)前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、
(c)サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントと、
(d−1)前記レギュラ・エージェントから送信されたメッセージ・パケットの処理結果である応答メッセージ・パケットを前記複数のサービス・プロバイダ・エージェントから受領し、
(d−2)該受領した応答メッセージ・パケットを変換し、
(d−3)該変換された応答メッセージ・パケットを前記レギュラ・エージェントに送信するブローカ・エージェントとを含むエージェント・コミュニティ・システムが提供される。
【0035】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する手段と、
(b)前記ファシリテータ・エージェントに問い合わせを行い、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査する手段と、
(c)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信する手段と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するためのメッセージ処理装置が提供される。
【0036】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する手段と、
(b)所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントに前記メッセージ・パケットのコンテントを含むデータを送信することを前記ファシリテータ・エージェントに指示する手段と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するためのメッセージ処理装置が提供される。
【0037】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する手段と、
(b)前記ブローカ・アドバタイズ・テーブルを参照し、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査する手段と、
(c)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信する手段と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、所定のサービス・プロバイダ・エージェント種別情報を有しているサービス・プロバイダ・エージェントを特定するサービス・プロバイダ・エージェント特定情報を管理するブローカ・アドバタイズ・テーブルを保持するブローカ・エージェントとを含むエージェント・コミュニティを構成するためのメッセージ処理装置が提供される。
【0038】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領する手段と、
(b)該受領したメッセージ・パケットを解析してサービス・プロバイダ・エージェント種別情報を決定する手段と、
(c)該決定されたサービス・プロバイダ・エージェント種別情報に対応するサービス・プロバイダ・エージェントを特定する手段と、
(d)前記受領したメッセージ・パケットを変換する手段と、
(e)該変換したメッセージ・パケットを前記対応するサービス・プロバイダ・エージェントに送信する手段と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するメッセージ処理装置が提供される。
【0039】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットの処理結果である応答メッセージ・パケットを前記複数のサービス・プロバイダ・エージェントから受領する手段と、
(b)該受領した応答メッセージ・パケットを変換する手段と、
(c)該変換された応答メッセージ・パケットを前記レギュラ・エージェントに送信する手段と、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するメッセージ処理装置が提供される。
【0040】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、
(b)前記ファシリテータ・エージェントに問い合わせを行い、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査することを前記メッセージ処理装置に指示するためのプログラムコードと、
(c)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信することを前記メッセージ処理装置に指示するためのプログラムコードと、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するためのメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。
【0041】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、
(b)所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントに前記メッセージ・パケットのコンテントを含むデータを送信することを前記ファシリテータ・エージェントに指示することを前記メッセージ処理装置に指示するためのプログラムコードと、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するためのメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。
【0042】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、
(b)前記ブローカ・アドバタイズ・テーブルを参照し、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査することを前記メッセージ処理装置に指示するためのプログラムコードと、
(c)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信することを前記メッセージ処理装置に指示するためのプログラムコードと、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、所定のサービス・プロバイダ・エージェント種別情報を有しているサービス・プロバイダ・エージェントを特定するサービス・プロバイダ・エージェント特定情報を管理するブローカ・アドバタイズ・テーブルを保持するブローカ・エージェントとを含むエージェント・コミュニティを構成するためのメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。
【0043】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領することを前記メッセージ処理装置に指示するためのプログラムコードと、
(b)該受領したメッセージ・パケットを解析してサービス・プロバイダ・エージェント種別情報を決定することを前記メッセージ処理装置に指示するためのプログラムコードと、
(c)該決定されたサービス・プロバイダ・エージェント種別情報に対応するサービス・プロバイダ・エージェントを特定することを前記メッセージ処理装置に指示するためのプログラムコードと、
(d)前記受領したメッセージ・パケットを変換することを前記メッセージ処理装置に指示するためのプログラムコードと、
(e)該変換したメッセージ・パケットを前記対応するサービス・プロバイダ・エージェントに送信することを前記メッセージ処理装置に指示するためのプログラムコードと、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。
【0044】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットの処理結果である応答メッセージ・パケットを前記複数のサービス・プロバイダ・エージェントから受領することを前記メッセージ処理装置に指示するためのプログラムコードと、
(b)該受領した応答メッセージ・パケットを変換することを前記メッセージ処理装置に指示するためのプログラムコードと、
(c)該変換された応答メッセージ・パケットを前記レギュラ・エージェントに送信することを前記メッセージ処理装置に指示するためのプログラムコードと、
を含むメッセージ・パケットを送信し、前記メッセージ・パケットの処理要求を行うレギュラ・エージェントと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントと、サービス・プロバイダ・エージェント特定情報及びサービス・プロバイダ・エージェント種別情報とを管理するファシリテータ・エージェントとを含むエージェント・コミュニティを構成するメッセージ処理装置で実行されるメッセージ処理プログラムを格納した記録媒体が提供される。
【0045】
本発明の他の一態様においては、
レギュラ・エージェントから送信されるメッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントの内、所定のサービス・プロバイダ・エージェント種別情報を有しているサービス・プロバイダ・エージェントを特定するサービス・プロバイダ・エージェント特定情報を管理するブローカ・アドバタイズ・テーブルを保持するブローカ・エージェントを含む記録媒体が提供される。
【0046】
本発明の他の一態様においては、
(a)レギュラ・エージェントから送信されたメッセージ・パケットを受領し、
(b)前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントの内、所定のサービス・プロバイダ・エージェント種別情報を有しているサービス・プロバイダ・エージェントを特定するサービス・プロバイダ・エージェント特定情報を管理するブローカ・アドバタイズ・テーブルを保持し、
(c)前記ブローカ・アドバタイズ・テーブルを参照し、所定のサービス・プロバイダ・エージェント種別情報を有するサービス・プロバイダ・エージェントが利用可能であるか否かを検査し、
(d)前記メッセージ・パケットのコンテントを含むデータを該利用可能なサービス・プロバイダ・エージェントに送信するブローカ・エージェントを含む記録媒体が提供される。
【0047】
【実施例】
以下、図面を参照して本発明の実施例を説明する。図1を参照すると、本発明のエージェントが動作するエージェント・コミュニティ150が示されている。このエージェント・コミュニティには複数の移動エージェントや常駐エージェントが存在する。通常、エージェント・コミュニティ150は、複数のPCから構成されるネットワークである。
【0048】
ここで、レギュラ・エージェント101、103は、エージェント・コミュニティ150に送られてきた移動エージェントまたは、このエージェント・コミュニティに常駐している常駐エージェントである。このレギュラ・エージェント101は、後述するメッセージ・パケットを送出し、または、受領することによって他のエージェントと対話することができる。
【0049】
ファシリテータ・エージェント110は、エージェント・コミュニティ内のソフトウェア・エージェント(以下、単にエージェントという)の生滅を管理したり、エージェント・コミュニティに存在するエージェントの一覧表等を提供するエージェントである。
【0050】
トラベル・ブローカ・エージェント121は、travelというオントロジーに関する、さまざまな仲介をするエージェントである。オントロジーとは、背景概念や語彙等をいい、伝達された情報の内容を判断するに際して、判断結果を絞り込み、または判断過程を削減するための全ての情報を含む概念である。
【0051】
例えば、交通機関の予約に関するオントロジーであった場合、インタプリタ等の情報解釈部品は、"R, flight, Narita to Tacoma, 1997/07/06/15:00-1997/07/06/18:00"といったコンテントを受領し、所定のフォーマット・チェックを行い、"R"を予約を指示するコマンドと解釈する等の特有のコンテント解釈ルーチンを実行し、所定の航空会社のデータベースにアクセスして、予約状況等をチェックする等の固有の実行ルーチンを実行する。そして、最終的に、1997年7月5日17時10分成田空港発、シアトルのタコマ空港行のxx航空26便、エコノミーの禁煙席の予約を行い、送信者に対し予約の確認を行うことができる。
【0052】
ファシリテータ・エージェント110とトラベル・ブローカ・エージェント121は、夫々、ファシリテータ・アドバタイズ・テーブル151とブローカ・アドバタイズ・テーブル141を有している。
【0053】
ジョブ・アロケーション・ブローカ・エージェント123は、ジョブ・アロケーションというオントロジーに関する、さまざまな仲介をするエージェントである。
【0054】
サービス・プロバイダ・エージェント131、133は、様々なサービスを提供するエージェントである、推論エンジンをもち推論したり、データベース検索をして検索結果を返したり、他のシステムとの橋渡しをしたりするエージェントである。
【0055】
図2は、図1に示された分散ネットワーク環境上に存在するエージェント・コミュニティを形成するための分散ネットワーク上の1つのノードにおけるハードウェア構成の概観図が示されている。各ノード・システム100は、中央処理装置(CPU)1とメモリ4とを含んでいる。CPU1とメモリ4は、バス2を介して、補助記憶装置としてのハードディスク装置13とを接続してある。フロッピーディスク装置20、ハードディスク装置13,30、CD−ROMドライブ26,29、MOドライブ28等の記憶媒体駆動装置は、フロッピーディスク・コントローラ19、IDEコントローラ25、SCSIコントローラ27等の各種コントローラを介してバス2へ接続されている。
【0056】
フロッピーディスク装置20等の記憶媒体駆動装置には、フロッピーディスク等の可搬型記憶媒体が挿入され、このフロッピーディスク等やハードディスク装置13、ROM14等の記憶媒体には、オペレーティングシステムと協働してCPU等に命令を与え、本発明を実施するためのコンピュータ・ソフトウエアを記録することができ、メモリ4にロードされることによって実行される。このコンピュータ・ソフトウエアは圧縮し、または、複数に分割して、複数の媒体に記録することもできる。
【0057】
ノード・システム100は更に、ユーザ・インターフェース・ハードウェアを備えたシステムとすることができ、ユーザ・インターフェース・ハードウェアとしては、例えば、入力をするためのポインティング・デバイス(マウス、ジョイスティック等)7またはキーボード6や、視覚データをユーザに提示するためのディスプレイ12があり、また、パラレルポート16を介してプリンタを接続するも可能である。このノード・システム100は、シリアルポート15を介してモデムを接続することが可能であり、シリアルポート15およびモデムまたはトークンリングや通信アダプタ18等を介してネットワークに接続し、他のコンピュータシステムと通信を行っている。
【0058】
このように、本発明は、通常のパーソナルコンピュータ(PC)、ワークステーション、汎用機や、これらの組合せによって実施可能であることを容易に理解できるであろう。ただし、これらの構成要素は例示であり、その全ての構成要素が本発明の必須の構成要素となるわけではない。例えば、ユーザインタフェース等は不要であり、CPUやメモリ等の基本的なデータ処理機能と通信機能があれば足りる。
【0059】
ノード・システム100のオペレーティング・システムとしては、WindowsNT(マイクロソフトの商標)、Windows95(マイクロソフトの商標)、Windows3.x(マイクロソフトの商標)、OS/2(IBMの商標)、AIX(IBMの商標)上のX−WINDOWシステム(MITの商標)、Solaris(サンマイクロシステムズの商標)などの、標準でGUIマルチウインドウ環境をサポートするものや、PC−DOS(IBMの商標)、MS−DOS(マイクロソフトの商標)などのキャラクタ・ベース環境のもの、さらにはOS/Open(IBMの商標)VxWorks(Wind River Systems, Inc.の商標)等のリアルタイムOSでも実現可能であり、特定のオペレーティング・システム環境に限定されるものではない。
【0060】
次に、図3、4を参照して、本発明の好適な実施例における各エージェントの動作について説明する。
【0061】
図3は、本発明の好適な実施例において使用されるメッセージ・パケット300の概念図である。
【0062】
本発明の好適な実施例においては、図3のメッセージ・パケット300に含まれるメッセージタイプ301は、エージェント・コミュニケーション言語(ACL:Agent Communication Language)のパフォーマティブが使用されている。ACLは、エージェント間のコミュニケーションを人間の言葉に近い形で提供している高級言語である。
【0063】
これらのエージェント・コミュニケーション言語には、FIPA(Foundation for Intelligent Physical Agents)の提供しているACLや、KQML(Knowledge Query Manipulation Language)、KIF(Knowledge Interchange Format)等があり、これらの言語は、"SEMANTICS FOR AN AGENT COMMUNICATION LANGUAGE, Yannis Labrou, A Doctoral Dissertation for the PhD Defense Examination, Submitted to the Defense Committee, at the Computer Science and Electrical Engineering Department (CSEE), University of Maryland Graduate School"や"TR CS-97-03, A Proposal for a new KQML Specification, Yannis Labrou and Tim Finin February 3, 1997"等により公表されている。
【0064】
ACLの1つであるKQMLのパフォーマティブには次のようなものがある。
ask-if,ask-all,ask-one,stream-all,eos,tell,untell,deny,insert,uninsert,delete-one,delete-all,undelete,achieve,unachieve,advertise,unadvertise,subscribe,error,sorry,standby,ready,next,rest,discard,register,unregister,forward,broadcast,transport-address,broker-one,broker-all,recommend-one,recommend-all,recruit-one,recruit-all
【0065】
センダー303は、メッセージの送出元であり、レシーバ305は、メッセージの受け取り先である。
【0066】
応答ID307は、先行する会話に続くIDである。エージェント201が複数の相手と会話する場合、後述する会話スレッドに対応して複数の応答IDが割りふられる。
【0067】
会話ID309は、会話相手にこのIDで応答することを指示するためのIDである。
【0068】
記述言語タイプ311は、コンテントを記述している言語を特定する情報である。オントロジー313は、コンテントが規定しているオントロジーを特定する情報である。本発明の好適な実施例にいてはチケット購入オントロジー、数値計算オントロジー、株式情報オントロジー、イエローページ・オントロジー等が提供されている。
【0069】
コンテント315は、メッセージの具体的内容であり、本発明の好適な実施例においては、他のプレースに移動した後にインストラクションを形成するためのソフトウエアを含んでいる。このコンテント315の内部には、さらにメッセージ・パケットを含めることもでき、中継点を介して、他のプレースに移動させることもできる。本発明の好適な実施例においては、かかる場合、センダー303とレシーバ305とは別に、真の送信者と最終的な受信者をしめすFromエントリとtoエントリが設けられている。
【0070】
図4は、本発明の好適な実施例における各エージェントの動作状態を示す概念図である。
【0071】
図において、各サービス・プロバイダ・エージェント131、133、135は、エージェント・コミュニティ150への導入時に、夫々が有している能力や、名称、アドレス等をファシリテータ・エージェント110に申告し、ファシリテータ・エージェント110は、申告された情報をファシリテータ・アドバタイズ・テーブル151に格納している。
【0072】
図5は、ファシリテータ・アドバタイズ・テーブル151とブローカ・アドバタイズ・テーブル141の概念図である。ファシリテータ・アドバタイズ・テーブル151には、図に示すようにファシリテータ・エージェント110が管理するエージェント(サービス・プロバイダ・エージェント、ブローカ・エージェント、レギュラ・エージェント等)から送出されたメッセージ・パケットをリスト構造で保持されている。
【0073】
各アドバタイズ・メッセージ・パケットには、"broker-all"等のそのエージェントが処理可能なメッセージ・タイプ301、"anACL"等のそのエージェントが理解可能な記述言語タイプ311、"travel"等のそのエージェントが有しているインタプリタの種類(オントロジー313)や"travel"等のそのエージェントが提供するサービスの種類等のそのエージェントの有する能力等の種別情報と、"airlineA"等のエージェント名、"www.airlineA"等のエージェントにアクセスするためのアドレス情報、"airline_resvation"等のそのエージェントを起動するためのクラス名等のエージェント特定情報が含まれている。
【0074】
エージェント・コミュニティ150に存在する他のエージェントは、このファシリテータ・アドバタイズ・テーブル151を参照してもらうことによって、所望の能力を有するサービス・プロバイダ・エージェントをポイントし、処理依頼を送出することができる。
【0075】
トラベル・ブローカ・エージェント121は、このファシリテータ・アドバタイズ・テーブル151を参照してもらうことによって、自分の請け負う仕事に関連するサービス・プロバイダ・エージェントを抽出し、ファシリテータ・アドバタイズ・テーブル151とほぼ同様の構造を有するブローカ・アドバタイズ・テーブル141を生成する。
【0076】
本発明の好適な実施例において、ファシリテータ・アドバタイズ・テーブル151とブローカ・アドバタイズ・テーブル141との相違点は、管理対象が所定のカテゴリー、記述言語、オントロジー等の条件に一致したサービス・プロバイダ・エージェントを抽出している点のみであるが、ブローカ・アドバタイズ・テーブル141は、それを保有するブローカ・エージェント121の参照する特定の種別情報(オントロジーのみ、カテゴリーのみ、メッセージタイプ+サブカテゴリー+記述言語等)のみを抽出し、これに対応したサービス・プロバイダ・エージェントにアクセスするための最低限の情報を管理すればよいため、ファシリテータ・アドバタイズ・テーブル151とは異なる構造のテーブルとして管理してもよい。
【0077】
また、ファシリテータ・アドバタイズ・テーブル151と全く同様のアドバタイズ・テーブルを保持し、レギュラ・エージェントからの処理依頼を受領する毎に、一定の条件のサービス・プロバイダ・エージェントを探索してもよい。さらに、本発明の一態様においては、ブローカ・エージェントは、レギュラ・エージェントからの処理依頼を受領する毎に、ファシリテータ・エージェント110に、一定の条件のサービス・プロバイダ・エージェント対して処理依頼をフォワードするよう依頼し、または、一定の条件のサービス・プロバイダ・エージェントを紹介してもらうため、ブローカ・アドバタイズ・テーブル141を保持しない。
【0078】
図6は、ファシリテータ・エージェントにアクセスし、ブローカ・アドバタイズ・テーブル141にサービス・プロバイダ・エージェントを登録する手順を示すオブジェクト・インタラクション・ダイアグラムである。
【0079】
まずトラベル・ブローカ・エージェント121が、ファシリテータ・エージェント110のライフサイクル管理機構に「自分の名前(オブジェクト名)」、「自分のいる場所(URL等)」、「自分自身のクラス名」を登録する。
【0080】
次にトラベル・ブローカ・エージェント121は、ファシリテータ・エージェント110に対し、ファシリテータ・アドバタイズ・テーブル151に、カテゴリー、サブカテゴリー 、クラス名、エージェント名を登録するエージェント(この場合は、ファシリテータ・エージェント自身)を紹介してくれるよう依頼する。
【0081】
ファシリテータ・エージェント110は、このリクエスト以前にアドバタイズされたレコードを検索し、その条件に合致するエージェントを見つけたら、そのアドバタイズ・レコードをコンテントにしたメッセージ・パケットを生成し、ブローカ・エージェントに返す。
【0082】
トラベル・ブローカ・エージェント121は、この回答は、ファシリテータ・エージェント110自身であることがわかったので、ファシリテータ・エージェント110に対して、インサートのメッセージ パケットを投げ、自分の情報をファシリテータ・エージェント110が保持するデータベースに入れてもらう。
【0083】
そして、トラベル・ブローカ・エージェント121は、自分の能力をアドバタイズする。すなわち、「自分に対して、broker-all(ask-all(:ontology = Travel, :content =(flight...)))という形式のメッセージを投げると答えることができます。」ということを表明する。
【0084】
トラベル・ブローカ・エージェント121は、ファシリテータ・エージェント110に「YellowPageオントロジーで、コンテントの中に、:flightという情報を持っているエージェントに対する ask-allをsubscribeできるエージェントを紹介して(recommend-one)してください。」と伝える。
【0085】
トラベル・ブローカ・エージェント121は、ファシリテータ・エージェント110から返された答えにより、ファシリテータ・エージェント110が、その能力を持っていることがわかったので、ファシリテータ・エージェント110に対して、subscribe(ask-all(:ontology=YellowPage, :content(:flight ...))) を投げる。
【0086】
現在は、この問い合わせに合致するような、アドバタイズレコードが無いので、tellの答えの中は、nothingになっている。subscribeに対しては、現在のファシリテータ・アドバタイズ・テーブル151の状況を知らせるために、tellが1つ即座に返される。
【0087】
その後、1つのサービス・プロバイダ・エージェントが立ち上がり、ファシリテータ・エージェント110に対し登録し、自分の情報をinsertできる相手を聞く。
【0088】
サービス・プルパイダー・エージェントは、ファシリテータ・エージェント110からの答えはファシリテータ・エージェント110であるとわかったので、自分の情報をファシリテータ・エージェント110のファシリテータ・アドバタイズ・テーブル151にinsertする。
【0089】
1つのサービス プロバイダが立ち上がり、 ファシリテータ・エージェント110のデータベースがアップデートされたので、これを検出したファシリテータ・エージェント110は、この情報をsubscribeしているエージェントがいるかどうかを、自分の持っているテーブルを走査する。この例では、ブローカ・エージェント121が見つかる。そして、ブローカ・エージェント151に、notifyとして、tellメッセージを送る。
【0090】
本発明の好適な実施例においては、上述のようなサービス・プロバイダ・エージェントを登録手順を採用しているので、ブローカ・エージェントやサービス・プロバイダ・エージェントの導入に対してダイナミックに対応することができる。ただし、このようなサービス・プロバイダ・エージェントやブローカ・エージェントの導入にダイナミックに対応することができる方式は、本発明の好適な実施例の一態様にすぎず、単にブローカ・エージェントがその導入時や起動時にファシリテータ・エージェント110にアクセスし、必要な情報を抽出し、または、全てのエージェント情報を受領した後に選択し、必要となる情報をブローカ・エージェントが利用できる状態にすればよい。
【0091】
次に本発明の好適な実施例におけるレギュラ・エージェントから処理依頼を受けたブローカ・エージェントの動作状態を図7、8のオブジェクト・インタラクション・ダイアグラムを用いて説明する。
【0092】
まず、レギュラ・エージェント101は、ファシリテータ・エージェント110のファシリテータ・アドバタイズ・テーブル151に対して、トラベル・ブローカ・エージェント121の場所を聞き、その返事を受領する。
【0093】
次に、トラベル・ブローカ・エージェント121の場所を知ったレギュラ・エージェント101は、「オントロジーがTravelで飛行機のflight情報を聞いて答えられるエージェント全員に、この仕事を請け負って(broker)もらってください。」というリクエストをブローカ・エージェント121に送る。このときの、broker-allに対する :languageがkqmlで:ontologyがtravel-ontologyになっている。これによって、トラベル・ブローカ・エージェント121の保持するインタプリタの1つであるトラベル・インタプリタ指定され、処理を担当することになる。
【0094】
トラベル・ブローカ・エージェント121のトラベル・インタプリタは、broker-allのメッセージを、内部的にrecruit-all(エージェントを雇うという意味)に変換して、事前に、アドバタイズパーフォーマティブにより能力を提示している各サービス・プロバイダ・エージェントへリクエストを投げる。
【0095】
各サービス・プロバイダ・エージェントはこれに対し情報を返してくる。forwardパーフォーマティブには、メッセージのオリジネーターがメッセージ・パケットの中の:fromキーワードに記述されている。本発明の好適な実施例においては、ある一定時間に返事がない場合は、返事を無視することとしている。
【0096】
トラベル・ブローカ・エージェント121は、各サービス プロバイダからの情報をリスト構造に変換し、クライアントであるレギュラ・エージェントに返す。
【0097】
図8は、本発明の他の態様の実施例におけるレギュラ・エージェントから処理依頼を受けたブローカ・エージェントの動作状態を示すオブジェクト・インタラクション・ダイアグラムである。
【0098】
図において、まず、レギュラ・エージェント101トラベル・ブローカ・エージェントに対して、「オントロジーがTravelで飛行機のflight情報を聞いて答えられるエージェントで、subscribeされる能力があるエージェントを雇って(recruit-one)この仕事をさせてください。」という旨の依頼をする。
【0099】
これを受領したトラベル・ブローカ・エージェント121は、ファシリテータ・エージェント110に対して、「オントロジーがTravelで飛行機のflight情報を聞いて答えられるエージェントで、subscribeされる能力があるエージェント」がコミュニティに存在するか否かの問い合わせを行う。
【0100】
問い合わせの相手を見つけたトラベル・ブローカ・エージェント121は、そのサービス・ブローカ・エージェントに対してsubscribeのリクエストをforwardで包んで投げる。このときメッセージ・パケットを変換し、コンテンツのオントロジーをTravelする。この一番内側のコンテンツは、サービス・プロバイダであるエアライン・エージェントが持っているインタープリターが処理をする。
【0101】
これを受領したエアライン・エージェントはフライト情報を直接レギュラ・エージェント101に送信する。また、フライト情報がアップデートされたら通知する。
【0102】
以上説明した実施例においては、ブローカ・エージェント121は、同種のサービス・プロバイダ・エージェントに対して処理を依頼し、また、その処理結果を受領して変換を行っていたが(2番目の実施例においては、サービス・プロバイダ・エージェントからレギュラ・エージェントに直接返事が返されている)、次に異種の処理を行うサービス・プロバイダ・エージェントへ処理を依頼する態様について、会議室の予約を例に説明する。
【0103】
この例においては、メッセージ・パケットには、reservationオントロジー、roomReservationオントロジー等の情報が含まれている。
【0104】
reservationオントロジーは、開始時刻、終了時刻、出席者リスト等のキーワードを有しており、roomReservationオントロジーは、reservationオントロジーの下位オントロジーとして定義され、会議に出席する人のリスト、会議室のある階、会議室の番号といったキーワードを有している。
【0105】
本発明の好適な実施例において、roomReservationオントロジーをつかさどるブローカは、次のように解釈するロジックを持っている。
【0106】
ロジック1:出席者リストに入っているそれそれの出席者の予定を管理するカレンダー エージェントに対し、各参加者の開始時刻と終了時刻の間の予定をask-ifメッセージなどのメッセージ パケットを作り、それを渡すことによって聞く。
【0107】
ロジック2:予定が開いている場合には、achieveメッセージを作り、それを渡すことによって、lockをかける(期限付き、または期限なし)。
【0108】
ロジック3:他のカレンダー・エージェントからの返答が、「その時間は空いていない」というものの場合は、クライアントに対して、sorryメッセージ作り、それを返す。
【0109】
ロジック4:クライアントが、時間を変更する旨のメッセージで会話を続けた場合は、ブローカ・エージェントは、各カレンダー・エージェントに対するlockをはずすために、再度achieveメッセージ作り、それを渡す。
【0110】
ロジック5:すべてのカレンダー・エージェントの時間が空いている場合には、会議室予約得エージェントに対して、部屋の空き状況をask-ifメッセージなどのメッセージ・パケットを作り、それを渡すことによって聞く。なお、会議室予約エージェントも、他のカレンダー エージェント達と同等に扱い、単に空き時間の問い合わせだけをし、全エージェントの時間が空いているまで、操作を繰り返すか、適宜クライアントのオペレーターのインタラクションに委ねる。または、各エージェント空き時間の集計を表にして表示するといった方式も採用することもできる。
【0111】
ロジック6:空いている場合には、予約をachieveメッセージ・パケットを作り、それを渡すことによって行う。
【0112】
ロジック7:空いていない場合には、クライアントに対して、sorryメッセージを作り、それを返す。この場合には、クライアントのオペレーターの判断が入る。ロジック4と同じく、リクエストの変更を行う等の何らかの他の手段をクライアントのオペレーターは昂じることとなる。
【0113】
次に、本発明の好適な実施例におけるブローカ・エージェントの実装方法について図9を参照しつつ説明する。ブローカ・エージェントの実装に際しては、broker-one,broker-all,recommend-one,recommend-all,recruit-one,recruit-all等に対するデフォルトの挙動として、:languageがkqmlで、:ontologyがkqml-ontologyであるものを提供する。
【0114】
このデフォルトの挙動を持っているクラスは、kqmlInterpreterクラスという名前がついていて、broker-one,broker-all,recommend-one,recommend-all,recruit-one,recruit-allを含めその他のパフォーマティブに対応するものをメソッドを持っている。ブローカ・エージェントは、このクラスをサブクラスし、メソッドをオーバーライドすることにより作られ、問題領域固有の処理を実現する。
【0115】
図9の下のサブクラスが、最初にクライアントからの要求を受け取り、例えば、travel-ontology特有の処理を行う。ただし、この場合コンテンツの記述は、kqmlで記述されている。super classである、kqmlInterpreterクラスでは、次のものが現在サポートされている。
【0116】
register, unregister, ask-one, ask-all, tell, insert, delete-one, advertise, unadvertise, recommend-all, recommend-one sorry, error, subscribe, discard, forward, broker-one, broker-all, recruit-one, recruit-allこれらは、LifeCycleオントロジー、Yellow Pageオントロジー、kqmlオントロジーのいずれかに属している。サブクラスする際は、適確なクラスをサブクラスすることになる。
【0117】
【発明の効果】
以上説明したように、本発明によれば、エージェントからの問い合わせに柔軟、高速かつ適切に対応することができるコミュニケーション・システムを提供することができる。
【0118】
本発明の一態様においては、エージェントの利用者の負担を軽減したコミュニケーション・システムを提供することができる。
【0119】
本発明の一態様においては、サービス・プロバイダ・エージェントの違いを吸収したコミュニケーション・システムを提供することができる。
【0120】
本発明の一態様においては、各サービス・プロバイダ・エージェントから受領した複数種類の処理結果を基に所望の処理結果を構築することのできるコミュニケーション・システムを提供することができる。
【0121】
本発明の一態様においては、タスクの分配による高速な処理を可能とするコミュニケーション・システムを提供することができる。
【0122】
本発明の一態様においては、各種エージェントの導入をダイナミックに行うことができる拡張性の高いコミュニケーション・システムを提供することができる。
【0123】
本発明の一態様においては、エージェント間のコミュニケーションをサポートするに際し、プログラマの開発や保守に要する労力及び時間を可能な限り軽減することができる。
【0124】
本発明の一態様においては、エージェント間の会話に柔軟に対応することができるコミュニケーション・システムを提供することができる。
【0125】
本発明の一態様においては、通信システムへの負担が少ないメッセージ処理システムを提供することができる。
本発明の構成を以下にまとめて開示する。
(1) メッセージ・パケットを送信し且つ前記メッセージ・パケットの処理要求を行うレギュラ・エージェントとして機能する第1ノード・システムと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントとして機能する第2ノード・システムと、複数のサービス・プロバイダ・エージェントを特定するための特定情報及びその能力に関する種別情報を管理するファシリテータ・エージェントとして機能する第3ノード・システムとを含む分散コンピュータ環境に接続され、特定のオントロジーに関する仲介処理を行うブローカ・エージェントとして機能するメッセージ処理装置において、
(a)前記ファシリテータ・エージェントに問い合わせを実行し、少なくとも前記特定のオントロジーに関する1又は複数の前記サービス・プロバイダ・エージェントの特定情報及び種別情報を取得してテーブルに記録する段階と、
(b)前記レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
(c)前記テーブルを参照し、前記メッセージ・パケットに対応する所定の種別情報を有する1又は複数のサービス・プロバイダ・エージェントが利用可能であるか否かを検査する段階と、及び
(d)前記メッセージ・パケットを変換し、当該パケットのコンテントを含むデータを、前記テーブルの特定情報に基づき前記利用可能なサービス・プロバイダ・エージェントに送信する段階と、
を実行する、メッセージ処理方法。
(2) 前記メッセージ処理装置が、
(e)前記利用可能なサービス・プロバイダ・エージェントから応答メッセージ・パケットを受領する段階と、
(f)前記受領した応答メッセージ・パケットを変換して、前記レギュラ・エージェントに返信する段階と、
をさらに実行する、(1)に記載のメッセージ処理方法。
(3) メッセージ・パケットを送信し且つ前記メッセージ・パケットの処理要求を行うレギュラ・エージェントとして機能する第1ノード・システムと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントとして機能する第2ノード・システムと、複数のサービス・プロバイダ・エージェントを特定するための特定情報及びその能力に関する種別情報を管理するファシリテータ・エージェントとして機能する第3ノード・システムとを含む分散コンピュータ環境に接続され、特定のオントロジーに関する仲介処理を行うブローカ・エージェントとして機能するメッセージ処理装置であって、
(a)前記ファシリテータ・エージェントに問い合わせを実行して取得される、少なくとも前記特定のオントロジーに関する1又は複数の前記サービス・プロバイダ・エージェントの特定情報及び種別情報を記録するテーブルと、
(b)前記レギュラ・エージェントから送信されたメッセージ・パケットを受領して解析し、当該メッセージ・パケットに対応する所定の種別情報を有する1又は複数のサービス・プロバイダ・エージェントが利用可能であるか否かを前記テーブルを参照して特定する手段と、及び
(c)前記メッセージ・パケットを変換し、当該パケットのコンテントを含むデータを、前記テーブルの特定情報に基づき前記利用可能なサービス・プロバイダ・エージェントに送信する手段と、
を含むメッセージ処理装置。
(4) (d)前記利用可能なサービス・プロバイダ・エージェントから応答メッセージ・パケットを受領し、当該受領した応答メッセージ・パケットを変換して、前記レギュラ・エージェントに返信する手段をさらに含む、
(3)に記載のメッセージ処理装置。
【0126】
【図面の簡単な説明】
【図1】 本発明のエージェントが動作するエージェント・コミュニティの概念図である。
【図2】 本発明におけるエージェント・コミュニティを形成するための分散ネットワーク上の1つのノードにおけるハードウェア構成の一実施例を示すブロック図である。
【図3】 本発明のメッセージ・パケットの一例を示す概念図である。
【図4】 本発明の好適な実施例における各エージェントの動作状態を示す概念図である。
【図5】 本発明の好適な実施例におけるファシリテータ・アドバタイズ・テーブル151とブローカ・アドバタイズ・テーブル141の概念図である。
【図6】 本発明の好適な実施例におけるコンポーネント間のオブジェクト・インタラクション・ダイアグラムである。
【図7】 本発明の好適な実施例におけるコンポーネント間のオブジェクト・インタラクション・ダイアグラムである。
【図8】 本発明の好適な実施例におけるコンポーネント間のオブジェクト・インタラクション・ダイアグラムである。
【図9】 本発明の好適な実施例におけるブローカ・エージェントの構造を示す概念図である。
【図10】 従来技術におけるエージェント・コミュニティの概念図である。
【符号の説明】
100 ノード・システム
101、103 レギュラ・エージェント
110 ファシリテータ・エージェント
121 トラベル・ブローカ・エージェント
123 ジョブ・アロケーション・ブローカ・エージェント
131、133、135 サービス・プロバイダ・エージェント
150 エージェント・コミュニティ

Claims (4)

  1. メッセージ・パケットを送信し且つ前記メッセージ・パケットの処理要求を行うレギュラ・エージェントとして機能する第1ノード・システムと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントとして機能する第2ノード・システムと、複数のサービス・プロバイダ・エージェントを特定するための特定情報及びその能力に関する種別情報を管理するファシリテータ・エージェントとして機能する第3ノード・システムとを含む分散コンピュータ環境に接続され、特定のオントロジーに関する仲介処理を行うブローカ・エージェントとして機能するメッセージ処理装置において、
    (a)前記ファシリテータ・エージェントに問い合わせを実行し、少なくとも前記特定のオントロジーに関する1又は複数の前記サービス・プロバイダ・エージェントの特定情報及び種別情報を取得してテーブルに記録する段階と、
    (b)前記レギュラ・エージェントから送信されたメッセージ・パケットを受領する段階と、
    (c)前記テーブルを参照し、前記メッセージ・パケットに対応する所定の種別情報を有する1又は複数のサービス・プロバイダ・エージェントが利用可能であるか否かを検査する段階と、及び
    (d)前記メッセージ・パケットを変換し、当該パケットのコンテントを含むデータを、前記テーブルの特定情報に基づき前記利用可能なサービス・プロバイダ・エージェントに送信する段階と、
    を実行する、メッセージ処理方法。
  2. 前記メッセージ処理装置が、
    (e)前記利用可能なサービス・プロバイダ・エージェントから応答メッセージ・パケットを受領する段階と、
    (f)前記受領した応答メッセージ・パケットを変換して、前記レギュラ・エージェントに返信する段階と、
    さらに実行する、請求項1に記載のメッセージ処理方法。
  3. メッセージ・パケットを送信し且つ前記メッセージ・パケットの処理要求を行うレギュラ・エージェントとして機能する第1ノード・システムと、前記メッセージ・パケットを処理する複数のサービス・プロバイダ・エージェントとして機能する第2ノード・システムと、複数のサービス・プロバイダ・エージェントを特定するための特定情報及びその能力に関する種別情報を管理するファシリテータ・エージェントとして機能する第3ノード・システムとを含む分散コンピュータ環境に接続され、特定のオントロジーに関する仲介処理を行うブローカ・エージェントとして機能するメッセージ処理装置であって、
    (a)前記ファシリテータ・エージェントに問い合わせを実行して取得される、少なくとも前記特定のオントロジーに関する1又は複数の前記サービス・プロバイダ・エージェントの特定情報及び種別情報を記録するテーブルと、
    (b)前記レギュラ・エージェントから送信されたメッセージ・パケットを受領して解析し、当該メッセージ・パケットに対応する所定の種別情報を有する1又は複数のサービス・プロバイダ・エージェントが利用可能であるか否かを前記テーブルを参照して特定する手段と、及び
    (c)前記メッセージ・パケットを変換し、当該パケットのコンテントを含むデータを、前記テーブルの特定情報に基づき前記利用可能なサービス・プロバイダ・エージェントに送信する手段と、
    を含むメッセージ処理装置。
  4. (d)前記利用可能なサービス・プロバイダ・エージェントから応答メッセージ・パケットを受領し、当該受領した応答メッセージ・パケットを変換して、前記レギュラ・エージェントに返信する手段をさらに含む、
    請求項3に記載のメッセージ処理装置。
JP15468897A 1997-06-12 1997-06-12 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体 Expired - Fee Related JP3954689B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP15468897A JP3954689B2 (ja) 1997-06-12 1997-06-12 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US09/092,130 US6338081B1 (en) 1997-06-12 1998-06-05 Message handling method, Message handling apparatus, and memory media for storing a message handling apparatus controlling program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15468897A JP3954689B2 (ja) 1997-06-12 1997-06-12 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体

Publications (2)

Publication Number Publication Date
JPH1115796A JPH1115796A (ja) 1999-01-22
JP3954689B2 true JP3954689B2 (ja) 2007-08-08

Family

ID=15589763

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15468897A Expired - Fee Related JP3954689B2 (ja) 1997-06-12 1997-06-12 メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体

Country Status (2)

Country Link
US (1) US6338081B1 (ja)
JP (1) JP3954689B2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3883647B2 (ja) * 1997-06-10 2007-02-21 インターナショナル・ビジネス・マシーンズ・コーポレーション メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US6446108B1 (en) * 1997-07-18 2002-09-03 Lucent Technologies Inc. Method for wide area network service location
JPH1185524A (ja) * 1997-09-05 1999-03-30 Toshiba Corp 情報処理装置及び方法並びに情報処理プログラムを記録した記録媒体
US6477563B1 (en) 1998-04-13 2002-11-05 Kabushiki Kaisha Toshiba Agent system and information processing method for same
JP2000020443A (ja) * 1998-07-02 2000-01-21 Victor Co Of Japan Ltd ソフトウェアエージェントシステム
US6484155B1 (en) * 1998-07-21 2002-11-19 Sentar, Inc. Knowledge management system for performing dynamic distributed problem solving
US6851115B1 (en) * 1999-01-05 2005-02-01 Sri International Software-based architecture for communication and cooperation among distributed electronic agents
US6742021B1 (en) 1999-01-05 2004-05-25 Sri International, Inc. Navigating network-based electronic information using spoken input with multimodal error feedback
US7036128B1 (en) 1999-01-05 2006-04-25 Sri International Offices Using a community of distributed electronic agents to support a highly mobile, ambient computing environment
JP4256543B2 (ja) * 1999-08-17 2009-04-22 インターナショナル・ビジネス・マシーンズ・コーポレーション 表示情報確定方法及び装置、表示情報確定のためのソフトウエア・プロダクトを格納した記憶媒体
GB0012195D0 (en) * 2000-05-19 2000-07-12 Nokia Networks Oy Location information services
US7603415B1 (en) 2000-08-15 2009-10-13 ART Technology Group Classification of electronic messages using a hierarchy of rule sets
US6883014B1 (en) * 2000-10-19 2005-04-19 Amacis Limited Electronic message distribution
US7024462B1 (en) 2000-10-20 2006-04-04 Amacis Limited Electronic message routing
US6968367B1 (en) * 2000-10-23 2005-11-22 Itxc Ip Holdings, S.A.R.L. Method and apparatus for a distributed call servicing community
JP3803707B2 (ja) 2000-12-28 2006-08-02 フューチャーシステムコンサルティング株式会社 フレームワークシステム
CA2443959A1 (en) * 2001-04-20 2002-10-31 American Express Travel Related Services Company, Inc. System and method for travel carrier contract management and optimization
US20020169863A1 (en) * 2001-05-08 2002-11-14 Robert Beckwith Multi-client to multi-server simulation environment control system (JULEP)
US7856359B2 (en) * 2001-07-02 2010-12-21 American Express Travel Related Services Company, Inc. System and method for airline purchasing program management
JP2003132003A (ja) * 2001-10-26 2003-05-09 Nec Corp 情報仲介システム、その方法及びそのプログラム
TW573266B (en) 2002-01-11 2004-01-21 Univ Nat Cheng Kung Universal service management system
US7805323B2 (en) 2002-01-25 2010-09-28 American Express Travel Related Services Company, Inc. System and method for processing trip requests
US8020162B2 (en) 2002-07-19 2011-09-13 International Business Machines Corporation Employing a resource broker in managing workloads of a peer-to-peer computing environment
US7958496B2 (en) * 2003-12-22 2011-06-07 Telefonaktiebolaget L M Ericsson (Publ) Method of and system for application service exchange across different execution environments
US8086671B2 (en) * 2004-02-11 2011-12-27 Microsoft Corporation Systems and methods that facilitate in-order serial processing of related messages
US7962381B2 (en) * 2004-10-15 2011-06-14 Rearden Commerce, Inc. Service designer solution
US8180796B1 (en) 2005-03-29 2012-05-15 Rearden Commerce, Inc. Supplier integration with services business language
US8117340B2 (en) * 2005-04-25 2012-02-14 Microsoft Corporation Trans-network roaming and resolution with web services for devices
US8031852B2 (en) * 2005-04-26 2011-10-04 International Business Machines Corporation Method for increasing ease of doing business through use of an access point model
US20080004980A1 (en) * 2006-06-30 2008-01-03 Rearden Commerce, Inc. System and method for regulating supplier acceptance of service requests
US10554607B2 (en) * 2017-02-24 2020-02-04 Telefonaktiebolaget Lm Ericsson (Publ) Heterogeneous cloud controller

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06110636A (ja) * 1992-09-30 1994-04-22 Toshiba Corp 電子オフイスシステム
JPH076142A (ja) * 1993-04-20 1995-01-10 Mitsubishi Electric Corp マルチエージェント協調システム及びその方法
US5603031A (en) 1993-07-08 1997-02-11 General Magic, Inc. System and method for distributed computation based upon the movement, execution, and interaction of processes in a network
US5555376A (en) * 1993-12-03 1996-09-10 Xerox Corporation Method for granting a user request having locational and contextual attributes consistent with user policies for devices having locational attributes consistent with the user request
US5560005A (en) * 1994-02-25 1996-09-24 Actamed Corp. Methods and systems for object-based relational distributed databases
US5826020A (en) * 1994-09-30 1998-10-20 Hewlett-Packard Co. Workflow real time intervention
US5822585A (en) * 1995-02-21 1998-10-13 Compuware Corporation System and method for cooperative processing using object-oriented framework
JPH0991358A (ja) * 1995-09-28 1997-04-04 Fujitsu Ltd 情報提供装置および方法
US5862490A (en) * 1995-09-28 1999-01-19 Motorola, Inc. Communication services needs of a communication unit supplied through simultaneous affiliation with multiple service providers in a communication system
US5794210A (en) * 1995-12-11 1998-08-11 Cybergold, Inc. Attention brokerage
US5768505A (en) * 1995-12-19 1998-06-16 International Business Machines Corporation Object oriented mail server framework mechanism
JP3622313B2 (ja) * 1996-01-29 2005-02-23 株式会社日立製作所 ドキュメント管理システム
US5815665A (en) * 1996-04-03 1998-09-29 Microsoft Corporation System and method for providing trusted brokering services over a distributed network
US5937161A (en) * 1996-04-12 1999-08-10 Usa.Net, Inc. Electronic message forwarding system
JP3289605B2 (ja) * 1996-06-21 2002-06-10 日本電気株式会社 ハードウェアリソース管理モジュール共通化方式
US5884324A (en) * 1996-07-23 1999-03-16 International Business Machines Corporation Agent for replicating data based on a client defined replication period
US5790789A (en) * 1996-08-02 1998-08-04 Suarez; Larry Method and architecture for the creation, control and deployment of services within a distributed computer environment
US5845267A (en) * 1996-09-06 1998-12-01 At&T Corp System and method for billing for transactions conducted over the internet from within an intranet
US6012083A (en) * 1996-09-24 2000-01-04 Ricoh Company Ltd. Method and apparatus for document processing using agents to process transactions created based on document content
US5961594A (en) * 1996-09-26 1999-10-05 International Business Machines Corporation Remote node maintenance and management method and system in communication networks using multiprotocol agents
US6065039A (en) * 1996-11-14 2000-05-16 Mitsubishi Electric Information Technology Center America, Inc. (Ita) Dynamic synchronous collaboration framework for mobile agents
US6119229A (en) * 1997-04-11 2000-09-12 The Brodia Group Virtual property system
US6006260A (en) * 1997-06-03 1999-12-21 Keynote Systems, Inc. Method and apparatus for evalutating service to a user over the internet
US6055512A (en) * 1997-07-08 2000-04-25 Nortel Networks Corporation Networked personal customized information and facility services

Also Published As

Publication number Publication date
JPH1115796A (ja) 1999-01-22
US20010054105A1 (en) 2001-12-20
US6338081B1 (en) 2002-01-08

Similar Documents

Publication Publication Date Title
JP3954689B2 (ja) メッセージ処理方法、メッセージ処理装置及びメッセージ処理を制御するプログラムを格納する記憶媒体
US7512660B2 (en) Message handling method, message handling apparatus, and memory media for storing a message handling apparatus controlling program
US7370335B1 (en) System and method for providing a public application program interface
US7428597B2 (en) Content-based routing system and method
Fidler et al. The PADRES Distributed Publish/Subscribe System.
Balke et al. Towards Personalized Selection of Web Services.
Laukkanen et al. Composing workflows of semantic web services
KR100307973B1 (ko) 전자메일또는에이전트를이용하여클라이언트상에서gui를작성하는정보처리방법및정보처리장치,정보처리장치를제어하는프로그램을저장한기억매체
JP2003526837A (ja) 活動状態によるコラボレーションを装備した分散コンピュータシステムにおいてデータ変更要求を順位付け、データの一貫性を維持するための方法ならびにその装置
JPH06301619A (ja) 自己発生型ノードネットワークを用いたクライアント/サーバシステムにおける通信方法及び装置
Bai et al. Dresr: Dynamic routing in enterprise service bus
US6772109B2 (en) Message handling method, message handling apparatus, and memory media for storing a message handling apparatus controlling program
Sen et al. Cian: A workflow engine for manets
Park et al. Agent-based Web services middleware
JP2000215244A (ja) ワ―クプロセス管理装置
Szepielak REST-based service oriented architecture for dynamically integrated information systems
CZ9903576A3 (cs) Mobilní objekty, zpusob pro rízení mobilních objektu, zpusob a zarízení pro generování skupiny mobilních objektu a pametové médium pro ukládání programu pro generování skupiny mobilních objektu
Madni et al. 5.4. 1 ProACT™: Process‐aware Zero Latency System for Distributed, Collaborative Enterprises
JP2001014231A (ja) ワークフロー機構を使ったメールHubシステム
Michaels Defining an architecture for control integration
Al Shaban et al. Applying semantic Web technologies to matchmaking and Web service descriptions
Chou ADPE: Agent-based decentralized process engine
Malan et al. eFlow: A Java-Based Workflow Service
JPH0991234A (ja) ワークフローシステム
GB2338575A (en) Message handling

Legal Events

Date Code Title Description
A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060302

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060307

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20060417

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070423

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20070423

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070427

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110511

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110511

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120511

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees