(57)【要約】【課題】  追加又は更新された新サービスを利用可能とするためのサービス組合せ知識情報の作成及び多種のサービス情報を組み合わせる際に、人手を掛けず自動で行うことができ、自動で組み合わされたサービスによって予測困難なユーザの多様な要求や状況に適合したサービスを提供すること。【解決手段】  サービス組合せブローカ装置１３は、各サービス組合せ知識データベース１５−１〜１５−ｎに保存された既存のサービス組合せ知識情報（知識情報）と、各サービスディレクトリ１７−１〜１７−ｎに公開されているサービス情報を取得し、知識情報の一部を機能や属性の類似した別のサービスに置き換える処理と、２つの知識情報の結合や一部の交換によって新しい知識情報とする処理と、知識情報のサービス実行順序を変える処理と、これら処理を組合せる処理とを行う。【選択図】      図１
2005173991.tif 000002
【特許請求の範囲】
【請求項１】
同種及び異種の何れかのサービスの組合せにより、単一のサービスだけでは実現不可能な機能性や付加価値を持つ組合せサービスを通信にて端末機に提供するサービス組合せブローカ装置において、
あるタスクに対して、何れのサービスを組合せてどの様な順番で実行するかを定義したサービス組合せ知識情報を保持する知識データベースのリストを管理する知識ＤＢ管理手段と、
前記知識ＤＢ管理手段にて管理される知識データベースのサービス組合せ知識情報の追加を含む更新を監視する知識監視手段と、
前記知識監視手段にて更新が認められたサービス組合せ知識情報を、前記知識データベースから取得する知識取得手段と、
前記知識取得手段で取得されたサービス組合せ知識情報を保存する組合せ作業データベースと、
サービス情報のアドレス、機能、属性を保持するサービスディレクトリのリストを管理するディレクトリ管理手段と、
前記ディレクトリ管理手段で管理されるサービスディレクトリのサービス情報の追加を含む更新を監視するサービス情報監視手段と、
前記サービス情報監視手段にて更新が認められたサービス情報を、サービスディレクトリから取得するサービス情報取得手段と、
前記サービス情報取得手段で取得されたサービス情報を保存するサービス情報データベースと、
前記組合せ作業データベースに保存されたサービス組合せ知識情報の中から１つ以上のサービス組合せ知識情報を選択する組合せ選択手段と、
前記サービス情報データベースに保存されたサービス情報の中から１つ以上のサービス情報を選択するサービス選択手段と、
前記組合せ選択手段にて選択されたサービス組合せ知識情報を解析し、その情報に定義された組合せのサービス情報のうち少なくとも１つのサービス情報及び一部分のサービス情報の何れか一方を選択する解析選択手段と、
前記解析選択手段にて選択されたサービス情報を別のサービス情報に交換して新しいサービス組合せ知識情報を作成する交換手段と、
前記交換手段にて新しく作成されたサービス組合せ知識情報を、前記組合せ作業データベースに保存する組合せ保存手段と、
前記組合せ作業データベースに保存された新しいサービス組合せ知識情報の有用性を評価する評価手段と、
前記評価手段にて有用と評価された新しいサービス組合せ知識情報を、前記知識データベースに登録する登録手段と
を備えたことを特徴とするサービス組合せブローカ装置。
【請求項２】
前記解析選択手段における解析後のサービス情報の選択を行う前に、前記サービス組合せ知識情報に定義されたサービスの実行順序を変える転置手段
を更に備えたことを特徴とする請求項１に記載のサービス組合せブローカ装置。
【請求項３】
前記サービス組合せ知識情報を解釈してタスクを取得する組合せ解釈手段を更に備え、
前記組合せ選択手段は、前記組合せ解釈手段で取得されたタスクの類似するサービス組合せ知識情報を、前記組合せ作業データベースから選択する
ことを特徴とする請求項１または２に記載のサービス組合せブローカ装置。
【請求項４】
前記サービス情報を解釈してサービスの機能及び属性を取得するサービス解釈手段を更に備え、
前記サービス選択手段は、前記サービス解釈手段で取得されたサービスの機能及び属性の類似するサービス情報を、前記サービス情報データベースから選択する
ことを特徴とする請求項１から３の何れか１項に記載のサービス組合せブローカ装置。
【請求項５】
前記解析選択手段にて選択されたサービス情報が、実体を持つサービスインスタンスであるか、サービスの種別を示すサービスクラスであるかを判断する判断手段を更に備え、
前記サービス選択手段は、前記判断手段によりサービスインスタンスと判断された場合、この判断されたサービスインスタンスの類似するサービス情報を、前記サービス情報データベースから選択し、前記判断手段によりサービスクラスと判断された場合、この判断されたサービスクラスの類似するサービス情報を、前記サービス情報データベースから選択する
ことを特徴とする請求項１から４の何れか１項に記載のサービス組合せブローカ装置。
【請求項６】
前記登録手段が新しいサービス組合せ知識情報を登録するための知識データベースを選択する登録先選択手段
を更に備えたことを特徴とする請求項１から５の何れか１項に記載のサービス組合せブローカ装置。
【請求項７】
同種及び異種の何れかのサービスの組合せにより、単一のサービスだけでは実現不可能な機能性や付加価値を持つ組合せサービスを生成するサービス組合せ生成方法において、
あるタスクに対して、何れのサービスを組合せてどの様な順番で実行するかを定義したサービス組合せ知識情報を保持する知識データベースのリストを管理する知識ＤＢ管理ステップと、
前記知識ＤＢ管理ステップにて管理される知識データベースのサービス組合せ知識情報の追加を含む更新を監視する知識監視ステップと、
前記知識監視ステップにて更新が認められたサービス組合せ知識情報を、前記知識データベースから取得する知識取得ステップと、
前記知識取得ステップで取得されたサービス組合せ知識情報を組合せ作業データベースに保存する知識保存ステップと、
サービス情報のアドレス、機能、属性を保持するサービスディレクトリのリストを管理するディレクトリ管理ステップと、
前記ディレクトリ管理ステップで管理されるサービスディレクトリのサービス情報の追加を含む更新を監視するサービス情報監視ステップと、
前記サービス情報監視ステップにて更新が認められたサービス情報を、サービスディレクトリから取得するサービス情報取得ステップと、
前記サービス情報取得ステップで取得されたサービス情報をサービス情報データベースに保存するサービス情報保存ステップと、
前記組合せ作業データベースに保存されたサービス組合せ知識情報の中から１つ以上のサービス組合せ知識情報を選択する組合せ選択ステップと、
前記サービス情報データベースに保存されたサービス情報の中から１つ以上のサービス情報を選択するサービス選択ステップと、
前記組合せ選択ステップにて選択されたサービス組合せ知識情報を解析し、その情報に定義された組合せのサービス情報のうち少なくとも１つのサービス情報及び一部分のサービス情報の何れか一方を選択する解析選択ステップと、
前記解析選択ステップにて選択されたサービス情報を別のサービス情報に交換して新しいサービス組合せ知識情報を作成する交換ステップと、
前記交換ステップにて新しく作成されたサービス組合せ知識情報を、前記組合せ作業データベースに保存する組合せ保存ステップと、
前記組合せ作業データベースに保存された新しいサービス組合せ知識情報の有用性を評価する評価ステップと、
前記評価ステップにて有用と評価された新しいサービス組合せ知識情報を、前記知識データベースに登録する登録ステップと
を含むことを特徴とするサービス組合せ生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットや移動通信ネットワーク等の通信ネットワークシステムで実行されるサービスを組合せて提供するサービス組合せブローカ装置及びサービス組合せ生成方法に関し、特に、予測困難なユーザの多様な要求や状況に適合したサービスを提供するサービス組合せブローカ装置及びサービス組合せ生成方法に関する。
【背景技術】
【０００２】
サービス組合せブローカは、同種や異種のサービスの組合せにより、単一のサービスだけでは実現不可能な機能性や付加価値を持つ組合せサービスをユーザに提供するものである。
従来のＷＳＦＬ(Web Services Flow Language)等のサービス組合せブローカ装置では、あるタスクに対してどのサービスを組合せて、どの順番で実行するかを記述したサービス組合せ知識の情報を、サービスブローカが人手で作成していた。サービス組合せ知識の中でサービスの組合せを構成するサービスは、サービスの実体（サービスインスタンス）か、サービスの種別（サービスクラス）で指定される。
【０００３】
そして、サービス組合せブローカ装置は、ユーザのタスク要求を受け付けると、その要求に適合するサービス組合せ知識を選択し、組合せサービスを提供する。但し、選択したサービス組合せ知識の中で、サービスクラスが指定されている場合は、そのクラスに適合するサービスインスタンスを選択して、組合せサービスを提供する。
この種の従来のサービス組合せを行う装置として、例えば特許文献１に記載のものがある。
【０００４】
特許文献１の内容は、所定の情報処理を行うサービスを提供する複数のサービス提供手段と、利用者に適用可能なサービスの一覧を提示し、利用者によるサービスの選択指定を受け取るサービス表示・選択手段と、利用者によって選択されたサービスを所定のデータまたはその集合に適用する選択サービス実行手段とを備え、サービス表示・選択手段が適用可能なサービスの一覧を随時更新すると共に利用者によるサービスの選択的な組合せの指定を可能とし、選択サービス実行手段が指定されたサービスの組合せに基づいてサービス提供手段にサービスの実行を指示することを特徴としている。
【０００５】
これによって、サービス表示・選択手段が随時更新される適用可能なサービスの一覧を利用者に提示し、利用者によるサービスの選択的な組合せの指定を可能とするので、利用者が現在稼働中で適用可能なサービスを容易に把握し、目的に応じて柔軟にサービスを選択し、組合せることができるようになっている。
【特許文献１】特開２００１−７５９２１号公報（課題を解決するための手段）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、従来のサービス組合せブローカ装置においては、当該ブローカ装置が人手で作成したサービス組合せ知識の情報を利用するため、サービス組合せの種類が限定されてしまい、想定外のユーザ要求に対応できないケースが生じるという問題がある。つまり、ユーザの要求や状況は多様であり、前もってタスク要求を予測するのは困難であるからである。
【０００７】
また、新しいサービスクラスのサービスがサービスディレクトリに追加されたとしても、そのサービスを利用可能とするためのサービス組合せ知識の情報を人手で作成しなければ、新サービスを組合せて提供することができないので、新サービスが追加される都度、人手による多くの工数が掛かるという問題がある。
更に、上記特許文献１においては、ユーザが、適用可能なサービスの一覧を見ながら所望のサービスを選択して組合せなければならないので、サービスの組合せ自体に人手による多くの工数が掛かるという問題がある。
【０００８】
本発明は、このような課題に鑑みてなされたものであり、追加又は更新された新サービスを利用可能とするためのサービス組合せ知識情報の作成及び多種のサービス情報を組み合わせる際に、人手を掛けず自動で行うことができ、自動で組み合わされたサービスによって予測困難なユーザの多様な要求や状況に適合したサービスを提供することができるサービス組合せブローカ装置及びサービス組合せ生成方法を提供することを目的としている。
【課題を解決するための手段】
【０００９】
上記目的を達成するために、本発明の請求項１によるサービス組合せブローカ装置は、同種及び異種の何れかのサービスの組合せにより、単一のサービスだけでは実現不可能な機能性や付加価値を持つ組合せサービスを通信にて端末機に提供するサービス組合せブローカ装置において、あるタスクに対して、何れのサービスを組合せてどの様な順番で実行するかを定義したサービス組合せ知識情報を保持する知識データベースのリストを管理する知識ＤＢ管理手段と、前記知識ＤＢ管理手段にて管理される知識データベースのサービス組合せ知識情報の追加を含む更新を監視する知識監視手段と、前記知識監視手段にて更新が認められたサービス組合せ知識情報を、前記知識データベースから取得する知識取得手段と、前記知識取得手段で取得されたサービス組合せ知識情報を保存する組合せ作業データベースと、サービス情報のアドレス、機能、属性を保持するサービスディレクトリのリストを管理するディレクトリ管理手段と、前記ディレクトリ管理手段で管理されるサービスディレクトリのサービス情報の追加を含む更新を監視するサービス情報監視手段と、前記サービス情報監視手段にて更新が認められたサービス情報を、サービスディレクトリから取得するサービス情報取得手段と、前記サービス情報取得手段で取得されたサービス情報を保存するサービス情報データベースと、前記組合せ作業データベースに保存されたサービス組合せ知識情報の中から１つ以上のサービス組合せ知識情報を選択する組合せ選択手段と、前記サービス情報データベースに保存されたサービス情報の中から１つ以上のサービス情報を選択するサービス選択手段と、前記組合せ選択手段にて選択されたサービス組合せ知識情報を解析し、その情報に定義された組合せのサービス情報のうち少なくとも１つのサービス情報及び一部分のサービス情報の何れか一方を選択する解析選択手段と、前記解析選択手段にて選択されたサービス情報を別のサービス情報に交換して新しいサービス組合せ知識情報を作成する交換手段と、前記交換手段にて新しく作成されたサービス組合せ知識情報を、前記組合せ作業データベースに保存する組合せ保存手段と、前記組合せ作業データベースに保存された新しいサービス組合せ知識情報の有用性を評価する評価手段と、前記評価手段にて有用と評価された新しいサービス組合せ知識情報を、前記知識データベースに登録する登録手段とを備えたことを特徴としている。
【００１０】
この構成によれば、追加又は更新された新サービスを利用可能とするためのサービス組合せ知識情報の作成及び多種のサービス情報を組み合わせる際に、人手を掛けず自動で行うことができる。
また、本発明の請求項２によるサービス組合せブローカ装置は、請求項１において、前記解析選択手段における解析後のサービス情報の選択を行う前に、前記サービス組合せ知識情報に定義されたサービスの実行順序を変える転置手段を更に備えたことを特徴としている。
【００１１】
この構成によれば、ユーザが求めるサービスに適合した順序のサービスを提供することができる。
また、本発明の請求項３によるサービス組合せブローカ装置は、請求項１または２において、前記サービス組合せ知識情報を解釈してタスクを取得する組合せ解釈手段を更に備え、前記組合せ選択手段は、前記組合せ解釈手段で取得されたタスクの類似するサービス組合せ知識情報を、前記組合せ作業データベースから選択することを特徴としている。
【００１２】
この構成によれば、ユーザのタスク要求に適したサービス組合せ知識情報を選択することができるので、そのタスク要求に答えることができるサービスをユーザに提供することができる。
また、本発明の請求項４によるサービス組合せブローカ装置は、請求項１から３の何れか１項において、前記サービス情報を解釈してサービスの機能及び属性を取得するサービス解釈手段を更に備え、前記サービス選択手段は、前記サービス解釈手段で取得されたサービスの機能及び属性の類似するサービス情報を、前記サービス情報データベースから選択することを特徴としている。
【００１３】
この構成によれば、ユーザの要求に適したサービス情報を選択することができるので、最適なサービスをユーザに提供することができる。
また、本発明の請求項５によるサービス組合せブローカ装置は、請求項１から４の何れか１項において、前記解析選択手段にて選択されたサービス情報が、実体を持つサービスインスタンスであるか、サービスの種別を示すサービスクラスであるかを判断する判断手段を更に備え、前記サービス選択手段は、前記判断手段によりサービスインスタンスと判断された場合、この判断されたサービスインスタンスの類似するサービス情報を、前記サービス情報データベースから選択し、前記判断手段によりサービスクラスと判断された場合、この判断されたサービスクラスの類似するサービス情報を、前記サービス情報データベースから選択することを特徴としている。
【００１４】
この構成によれば、サービス情報が、実体を持つサービスインスタンスであるか、サービスの種別を示すサービスクラスであるかに応じて、適切なサービス情報を選択することができる。
また、本発明の請求項６によるサービス組合せブローカ装置は、請求項１から５の何れか１項において、前記登録手段が新しいサービス組合せ知識情報を登録するための知識データベースを選択する登録先選択手段を更に備えたことを特徴としている。
この構成によれば、例えば空き容量が多い知識データベースにサービス組合せ知識情報を登録することができるので、サービス組合せ知識情報が登録できないなどの不具合を防止することができる。
【００１５】
また、本発明の請求項７によるサービス組合せ生成方法は、同種及び異種の何れかのサービスの組合せにより、単一のサービスだけでは実現不可能な機能性や付加価値を持つ組合せサービスを生成するサービス組合せ生成方法において、あるタスクに対して、何れのサービスを組合せてどの様な順番で実行するかを定義したサービス組合せ知識情報を保持する知識データベースのリストを管理する知識ＤＢ管理ステップと、前記知識ＤＢ管理ステップにて管理される知識データベースのサービス組合せ知識情報の追加を含む更新を監視する知識監視ステップと、前記知識監視ステップにて更新が認められたサービス組合せ知識情報を、前記知識データベースから取得する知識取得ステップと、前記知識取得ステップで取得されたサービス組合せ知識情報を組合せ作業データベースに保存する知識保存ステップと、サービス情報のアドレス、機能、属性を保持するサービスディレクトリのリストを管理するディレクトリ管理ステップと、前記ディレクトリ管理ステップで管理されるサービスディレクトリのサービス情報の追加を含む更新を監視するサービス情報監視ステップと、前記サービス情報監視ステップにて更新が認められたサービス情報を、サービスディレクトリから取得するサービス情報取得ステップと、前記サービス情報取得ステップで取得されたサービス情報をサービス情報データベースに保存するサービス情報保存ステップと、前記組合せ作業データベースに保存されたサービス組合せ知識情報の中から１つ以上のサービス組合せ知識情報を選択する組合せ選択ステップと、前記サービス情報データベースに保存されたサービス情報の中から１つ以上のサービス情報を選択するサービス選択ステップと、前記組合せ選択ステップにて選択されたサービス組合せ知識情報を解析し、その情報に定義された組合せのサービス情報のうち少なくとも１つのサービス情報及び一部分のサービス情報の何れか一方を選択する解析選択ステップと、前記解析選択ステップにて選択されたサービス情報を別のサービス情報に交換して新しいサービス組合せ知識情報を作成する交換ステップと、前記交換ステップにて新しく作成されたサービス組合せ知識情報を、前記組合せ作業データベースに保存する組合せ保存ステップと、前記組合せ作業データベースに保存された新しいサービス組合せ知識情報の有用性を評価する評価ステップと、前記評価ステップにて有用と評価された新しいサービス組合せ知識情報を、前記知識データベースに登録する登録ステップとを含むことを特徴としている。
この方法によれば、追加又は更新された新サービスを利用可能とするためのサービス組合せ知識情報の作成及び多種のサービス情報を組み合わせる際に、人手を掛けず自動で行うことができる。
【発明の効果】
【００１６】
以上説明したように本発明によれば、追加又は更新された新サービスを利用可能とするためのサービス組合せ知識情報の作成及び多種のサービス情報を組み合わせる際に、人手を掛けず自動で行うことができ、自動で組み合わされたサービスによって予測困難なユーザの多様な要求や状況に適合したサービスを提供することができるという効果がある。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の実施の形態を、図面を参照して説明する。
（実施の形態）
図１は、本発明の実施の形態に係るサービス組合せブローカ装置を用いた通信ネットワークシステムの構成を示す図である。
図１に示す通信ネットワークシステムは、インターネットや移動通信ネットワーク等のネットワーク１１に、サービス組合せブローカ装置（以降、単にブローカ装置とも称す）１３と、複数のサービス組合せ知識データベース（以降、単にデータベースとも称す）１５−１〜１５−ｎと、複数のサービスディレクトリ１７−１〜１７−ｎとが接続されて構成されている。また、サービス組合せブローカ装置１３から携帯電話機などのサービス検索端末機１９が検索要求によって所望のサービス情報を受信することができるようになっている。
【００１８】
サービス組合せ知識データベース１５−１〜１５−ｎは、あるタスクに対してどのサービスを組合せて、どの順番で実行するかを記述したサービス組合せ知識情報を保持するものであり、新しいサービス組合せ知識情報やサービス情報が随時追加されるようになっている。サービス組合せ知識情報の中でサービス組合せを構成するサービスは、サービスの実体（サービスインスタンス）か、サービスの種別（サービスクラス）で指定される。
サービスディレクトリ１７−１〜１７−ｎは、サービスの機能と属性を含むデータベースであり、サービスインスタンスとサービスクラスの両方を含み、新しいサービス組合せ知識情報やサービス情報が随時追加されるようになっている。
【００１９】
サービス組合せブローカ装置１３は、図２に示すように、通信部２１と、管理者設定部２２と、制御管理部２３と、タイマ２４と、組合せ知識取得部２５と、組合せ知識ＤＢ（データベース）管理部２６と、組合せ作業ＤＢ管理部２７と、組合せ作業ＤＢ２８と、組合せ知識監視部２９と、組合せ評価部３０と、組合せ登録部３１と、組合せ解析選択部３２と、組合せ交換部３３と、組合せ転置部３４と、組合せ保存部３５と、組合せ選択部３６と、組合せ解釈部３７と、組合せ生成制御部３８と、サービス判断部３９と、サービス選択部４０と、サービス解釈部４１と、サービス情報監視部４２と、組合せ登録先選択部４３と、サービス情報取得部４４と、サービス情報ＤＢ管理部４５と、サービス情報ＤＢ４６と、サービスディレクトリ管理部４７とを備え、これら構成要素２１〜４７がバス５０によって接続されて構成されている。
【００２０】
次に、これらの構成要素２１〜４７の説明を行う。
通信部２１は、サービス組合せ知識データベース１５−１〜１５−ｎ及びサービスディレクトリ１７−１〜１７−ｎと通信を行うためのモジュールである。この通信方式は、有線、無線、パケット交換、回線交換など方式を問わない。
制御管理部２３は、後述で説明するフローチャートに従った手順を実行するものであり、タイマ２４を補助的に利用して各構成要素の制御を行う。
【００２１】
管理者設定部２２は、サービス組合せブローカ装置１３の管理者が各種設定を行うためのユーザインタフェースを提供する。管理者が、サービス組合せ知識データベース１５−１〜１５−ｎやサービスディレクトリ１７−１〜１７−ｎのアドレスを管理者設定部２２に与えると、管理者設定部２２は、それぞれのアドレスを、組合せ知識ＤＢ管理部２６とサービスディレクトリ管理部４６とに渡すようになっている。
【００２２】
組合せ知識ＤＢ管理部２６は、内部の情報テーブルにサービス組合せ知識データベース１５−１〜１５−ｎのアドレスのリストを保持し、サービスディレクトリ管理部４６は、内部の情報テーブルにサービスディレクトリ１７−１〜１７−ｎのアドレスのリストを保持する。
組合せ知識監視部２９は、各サービス組合せ知識データベース１５−１〜１５−ｎに周期的にアクセスして、更新情報が無いかどうかを監視する。更新情報があった場合、組合せ知識取得部２５を呼び出す。
【００２３】
組合せ知識取得部２５は、更新のあったサービス組合せ知識データベースからサービス組合せ知識情報を取得し、組合せ作業ＤＢ管理部２７を介して組合せ作業ＤＢ２８に保存する。
サービス情報監視部４２は、各サービスディレクトリ１７−１〜１７−ｎに周期的にアクセスし、更新情報が無いかどうかを監視する。更新情報があった場合、サービス情報取得部４４を呼び出す。
【００２４】
サービス情報取得部４４は、更新のあったサービスディレクトリからサービス情報を取得し、サービス情報ＤＢ管理部４５を介してサービス情報ＤＢ４６に保存する。
組合せ生成制御部３８は、制御管理部２３においてタイマ２４による周期的な割り込みにより、当該組合せ生成制御部３８が起動された際に、サービス組合せ生成アルゴリズムを実行する。このアルゴリズム実行において、組合せ選択部３６、サービス選択部４０、組合せ保存部３５、組合せ交換部３３、組合せ転置部３４、及び組合せ評価部３０を呼び出して利用する。
【００２５】
組合せ選択部３６は、組合せ作業ＤＢ２８から組合せを選択し、組合せ生成制御部３８に渡す。その選択の際のパラメータとしては、組合せの選択数や、選択する組合せのタスクなどが指定される。
サービス選択部４０は、サービス情報ＤＢ４６からサービス情報を選択して組合せ生成制御部３８に渡すものであり、その選択の際に、パラメータとしてサービスの選択数や、選択するサービスの機能や属性などが指定される。
組合せ交換部３３は、２つのサービス組合せを与えると、一部の組合せをランダムに交換した組合せを返すものである。
【００２６】
組合せ転置部３４は、あるサービス組合せを与えると、その実行順序を変えたサービス組合せを返すものである。
組合せ保存部３５は、与えたサービス組合せを、組合せ作業ＤＢ管理部２７を介して組合せ作業ＤＢ２８に保存するものである。
組合せ評価部３０は、あるサービス組合せを与えると、その組合せの評価値を返すものである。また、組合せ評価部３０は、属性が一致するサービスの組合せにある点数を与えたり、同一の機能を持つサービス同士の組合せに別の点数を与えたりするなどの評価関数を持つ。
【００２７】
組合せ登録部３１は、有効なサービス組合せをネットワーク１１上のサービス組合せ知識データベース１５−１〜１５−ｎに登録するものである。
組合せ登録先選択部４３は、どのサービス組合せ知識データベース１５−１〜１５−ｎに登録するかを選択するものである。
この他、組合せ解析選択部３２、組合せ解釈部３７、サービス判断部３９、サービス解釈部４１、サービスディレクトリ管理部４７については、後述にて詳述する。
【００２８】
次に、図３を参照して、サービス組合せブローカ装置１３によって、新しいサービス組合せ知識情報と新しいサービス情報を取得する際の手順を説明する。
まず、ステップＳ１において、タイマ２４による割り込み処理によって周期的に本手順が起動され、サービス組合せ知識情報の更新とサービス情報の更新との手順が並列に実行される。
サービス組合せ知識情報の更新手順については、最初にステップＳ２において、組合せ知識ＤＢ管理部２６が、内部の情報テーブルに保持された各サービス組合せ知識データベース１５−１〜１５−ｎのアドレスの先頭から１つずつアドレスを選択する。
【００２９】
ステップＳ３において、組合せ知識監視部２９が、その選択されたアドレスのサービス組合せ知識データベース１５−１を監視し、ステップＳ４において、そのサービス組合せ知識データベース１５−１に新しいサービス組合せ知識情報が追加等によって更新されていないかどうかを調べる。
この結果、更新ありの場合は、ステップＳ５において、組合せ知識取得部２５が、組合せ作業ＤＢ管理部２７を介して組合せ作業ＤＢ２８にアクセスすることによってサービス組合せ知識情報を取得する。この取得したサービス組合せ知識情報を、組合せ知識取得部２５が、ステップＳ６において、組合せ作業ＤＢ管理部２７を介して組合せ作業ＤＢ２８に書き込む。
【００３０】
次に、ステップＳ７において、組合せ知識ＤＢ管理部２６に制御が戻り、この組合せ知識ＤＢ管理部２６が、情報テーブルの全アドレスのデータベース１５−１〜１５−ｎを監視済みかどうかを判断し、全て監視が完了していれば更新手順を終了する。また、監視を行っていないサービス組合せ知識データベース１５−２〜１５−ｎがあれば、ステップＳ２に戻って、それを選択する手順に戻り、以降、上述したと同様な処理を行う。
【００３１】
次に、サービス情報の更新手順を説明する。まず、ステップＳ８において、サービスディレクトリ管理部４７が、内部の情報テーブルに保持された各サービスディレクトリ１７−１〜１７−ｎのアドレスの先頭から１つずつアドレスを選択する。
ステップＳ９において、サービス情報監視部４２が、その選択されたアドレスのサービスディレクトリ１７−１を監視し、ステップＳ１０において、そのサービスディレクトリ１７−１に新しいサービス情報が追加等によって更新されていないかどうかを調べる。
【００３２】
この結果、更新ありの場合は、ステップＳ１１において、サービス情報取得部４４が、サービス情報ＤＢ管理部４５を介してサービス情報ＤＢ４６にアクセスすることによってサービス情報を取得する。この取得したサービス情報を、サービス情報取得部４４が、ステップＳ１２において、サービス情報ＤＢ管理部４５を介してサービス情報ＤＢ４６に書き込む。
【００３３】
次に、ステップＳ１３において、サービスディレクトリ管理部４７に制御が戻り、このサービスディレクトリ管理部４７が、情報テーブルの全アドレスのサービスディレクトリ１７−１〜１７−ｎを監視済みかどうかを判断し、全て監視が完了していれば更新手順を終了する。また、監視を行っていないサービスディレクトリ１７−２〜１７−ｎがあれば、ステップＳ８に戻って、それを選択する手順に戻り、以降、上述したと同様な処理を行う。
このような更新手順により、新規に或いは更新してディレクトリに公開されたサービス情報や、新たなサービス組合せ知識情報を利用して、次に説明するサービス生成アルゴリズムを動作させることができる。
【００３４】
このサービス生成アルゴリズムの動作手順を、図４を参照して説明する。
まず、ステップＳ２１において、タイマ２４による割り込み処理によって周期的に本手順が起動される。
この起動後、ステップＳ２２において、組合せ生成制御部３８によってサービス組合せ生成アルゴリズムの選択を行う。これは、アルゴリズムが、複数存在するため、どのアルゴリズムを実行するかを選択するものである。アルゴリズムには、例えば、（１）サービス組合せ知識情報の一部を機能や属性の類似した別のサービス情報に置き換える方式、（２）２つのサービス組合せ知識情報の結合や一部の交換によって新しいサービス組合せ知識情報とする方式、（３）サービス組合せ知識情報のサービス実行順序を変える方式の３つを示している。
【００３５】
上記ステップＳ２２における選択によって、（１）が選ばれた場合、ステップＳ２３において、組合せ選択部３６が、各サービス組合せ知識データベース１５−１〜１５−ｎよりサービス組合せ知識情報の組合せを１つ選択する。この選択方法には、ランダムに選択したり、まだ選んでいない組合せを選択したり、新しく追加されたサービスを選択したり、人気のある組合せを選択するなど、様々な手法が考えられる。
【００３６】
そして、ステップＳ２４において、組合せ解析選択部３２が、先に選択された組合せを解析し、更にステップＳ２５において、その組合せを構成するサービス情報を１つ選択する。そして、ステップＳ２６において、サービス判断部３９が、その選択されたサービス情報が、サービスインスタンスかサービスクラスかを判定する。
この結果、そのサービスがインスタンスである場合、ステップＳ２７において、サービス選択部４０が類似のサービスインスタンスを、サービス情報ＤＢ４６から検索して取得する。一方、サービスがクラスである場合、ステップＳ２８において、サービス選択部４０が類似のサービスクラスを、サービス情報ＤＢ４６から検索して取得する。
【００３７】
そして、ステップＳ２９において、組合せ交換部３３が、組合せ解析選択部３２が選択したサービス情報と、サービス選択部４０が検索により取得したサービス情報とを置き換えて新しいサービスの組合せを構成し、組合せ保存部３５に渡す。組合せ保存部３５は、ステップＳ３０において、組合せ作業ＤＢ２８にその新しいサービス組合せを保存する。
次に、ステップＳ３１において、組合せ評価部３０が、その保存されたサービス組合せの有用性を、前述のような評価関数に基づいて計算し、有用かどうかを判定する。この結果、有用と判定された場合、ステップＳ３２において、組合せ登録先選択部４３が、ネットワーク１１上のどのサービス組合せ知識データベース１５−１〜１５−ｎに登録するかどうかを選択し、この選択されたデータベース１５−１に、ステップＳ３３において、組合せ登録部３１が、先の有用な新しい組合せを実際に登録する。
【００３８】
次に、上記ステップＳ２２における選択によって、（２）のアルゴリズムが選択された場合を説明する。
まず、ステップＳ３４において、組合せ選択部３６がサービスの組合せを２つ選択する。この選択方法はランダムに選ぶこともできるし、タスクが類似した組合せを選ぶなど様々な選択方法が考えられる。
そして、ステップＳ３５において、組合せ解析選択部３２が、その２つの組合せをそれぞれ解析し、更にステップＳ３６において、組合せの一部を部分選択する。ステップＳ３７において、組合せ交換部３３は、部分選択された２つを交換して、新しい組合せを２つ構成する。そして、上述したステップＳ３０〜Ｓ３３において、（１）のアルゴリズムと同様に組合せの保存や評価を行う。
【００３９】
次に、上記ステップＳ２２における選択によって、（３）のアルゴリズムが選択された場合を説明する。但し、ステップＳ３８は上記Ｓ３４と同じ、Ｓ３９は上記Ｓ３５と同じ、Ｓ４１は上記Ｓ３６と同じ処理を行うようになっている。
即ち、（３）のアルゴリズムは、（２）のアルゴリズムとほぼ同じ手順であるが、ステップＳ４１における部分選択処理を行う前に、ステップＳ４０において、組合せ転置部３４が、サービスの実行順序を変える処理を行うようになっている。
【００４０】
以上の（１）〜（３）の何れかのアルゴリズムが終了した後、ステップＳ２１に戻って、次のタイマ割り込みで再び上述した処理が実行される。
このような本実施の形態によるサービス組合せブローカ装置１３によれば、同種及び異種の何れかのサービスの組合せにより、単一のサービスだけでは実現不可能な機能性や付加価値を持つ組合せサービスを通信にて端末機に提供する際に、組合せ知識ＤＢ管理部２６によって、あるタスクに対して、何れのサービスを組合せてどの様な順番で実行するかを定義したサービス組合せ知識情報を保持するサービス組合せ知識データベース１５−１〜１５−ｎのリストを管理する。
【００４１】
組合せ知識監視部２９によって、組合せ知識ＤＢ管理部２６にて管理されるサービス組合せ知識データベース１５−１〜１５−ｎのサービス組合せ知識情報の追加を含む更新を監視する。組合せ知識取得部２５によって、組合せ知識監視部２９にて更新が認められたサービス組合せ知識情報を、サービス組合せ知識データベース１５−１から取得する。この取得されたサービス組合せ知識情報を組合せ作業ＤＢ２８に保存する。
【００４２】
サービスディレクトリ管理部４７によって、サービス情報のアドレス、機能、属性を保持するサービスディレクトリのリストを管理する。サービス情報監視部４２によって、サービスディレクトリ管理部４７で管理されるサービスディレクトリのサービス情報の追加を含む更新を監視する。サービス情報取得部４４によって、サービス情報監視部４２にて更新が認められたサービス情報を、サービスディレクトリから取得する。この取得されたサービス情報をサービス情報ＤＢ４６に保存する。
【００４３】
組合せ選択部３６によって、組合せ作業ＤＢ２８に保存されたサービス組合せ知識情報の中から１つ以上のサービス組合せ知識情報を選択する。サービス選択部４０によって、サービス情報ＤＢ４６に保存されたサービス情報の中から１つ以上のサービス情報を選択する。
組合せ解析選択部３２によって、組合せ選択部３６にて選択されたサービス組合せ知識情報を解析し、その情報に定義された組合せのサービス情報のうち少なくとも１つのサービス情報及び一部分のサービス情報の何れか一方を選択する。組合せ交換部３３によって、組合せ解析選択部３２にて選択されたサービス情報を別のサービス情報に交換して新しいサービス組合せ知識情報を作成する。
【００４４】
組合せ保存部３５によって、組合せ交換部３３にて新しく作成されたサービス組合せ知識情報を、組合せ作業ＤＢ２８に保存する。組合せ評価部３０によって、組合せ作業ＤＢ２８に保存された新しいサービス組合せ知識情報の有用性を評価する。組合せ登録部３１によって、組合せ評価部３０にて有用と評価された新しいサービス組合せ知識情報を、サービス組合せ知識データベース１５−１〜１５−ｎに登録するようにした。
【００４５】
これによって、追加又は更新された新サービスを利用可能とするためのサービス組合せ知識情報の作成及び多種のサービス情報を組み合わせる際に、人手を掛けず自動で行うことができる。従って、自動で組み合わされたサービスによって予測困難なユーザの多様な要求や状況に適合したサービスを提供することができる。
また、組合せ転置部３４によって、組合せ解析選択部３２における解析後のサービス情報の選択を行う前に、サービス組合せ知識情報に定義されたサービスの実行順序を変えるようにした。これによって、ユーザが求めるサービスに適合した順序のサービスを提供することができる。
【００４６】
また、組合せ解釈部３７によって、サービス組合せ知識情報を解釈してタスクを取得する。この際、組合せ選択部３６は、組合せ解釈部３７で取得されたタスクの類似するサービス組合せ知識情報を組合せ作業ＤＢ２８から選択するようにした。これによって、ユーザのタスク要求に適したサービス組合せ知識情報を選択することができるので、そのタスク要求に答えることができるサービスをユーザに提供することができる。
【００４７】
また、サービス解釈部４１によって、サービス情報を解釈してサービスの機能及び属性を取得する。この際、サービス選択部４０は、サービス解釈部４１で取得されたサービスの機能及び属性の類似するサービス情報をサービス情報ＤＢ４６から選択するようにした。これによって、ユーザの要求に適したサービス情報を選択することができるので、最適なサービスをユーザに提供することができる。
【００４８】
また、サービス判断部３９によって、組合せ解析選択部３２にて選択されたサービス情報が、実体を持つサービスインスタンスであるか、サービスの種別を示すサービスクラスであるかを判断する。この際、サービス選択部４０は、サービス判断部３９によりサービスインスタンスと判断された場合、この判断されたサービスインスタンスの類似するサービス情報を、サービス情報ＤＢ４６から選択し、サービス判断部３９によりサービスクラスと判断された場合、この判断されたサービスクラスの類似するサービス情報を、サービス情報ＤＢ４６から選択するようにした。これによって、サービス情報が、実体を持つサービスインスタンスであるか、サービスの種別を示すサービスクラスであるかに応じて、適切なサービス情報を選択することができる。
【００４９】
また、組合せ登録先選択部４３によって、組合せ登録部３１が新しいサービス組合せ知識情報を登録するためのサービス組合せ知識データベース１５−１を選択するようにした。これによって、例えば空き容量が多いサービス組合せ知識データベース１５−１にサービス組合せ知識情報を登録することができるので、サービス組合せ知識情報が登録できないなどの不具合を防止することができる。
【図面の簡単な説明】
【００５０】
【図１】本発明の実施の形態に係るサービス組合せブローカ装置を用いた通信ネットワークシステムの構成を示す図である。
【図２】上記実施の形態に係るサービス組合せブローカ装置の構成を示すブロック図である。
【図３】上記実施の形態に係るサービス組合せブローカ装置によって、新しいサービス組合せ知識情報と新しいサービス情報を取得する際の手順を説明するためのフローチャートである。
【図４】上記実施の形態に係るサービス組合せブローカ装置によって実行されるサービス生成アルゴリズムの動作手順を説明するためのフローチャートである。
【符号の説明】
【００５１】
１１  ネットワーク
１３  サービス組合せブローカ装置
１５−１〜１５−ｎ  サービス組合せ知識データベース
１７−１〜１７−ｎ  サービスディレクトリ
１９  サービス検索端末機
２１  通信部
２２  管理者設定部
２３  制御管理部
２４  タイマ
２５  組合せ知識取得部
２６  組合せ知識ＤＢ（データベース）管理部
２７  組合せ作業ＤＢ管理部
２８  組合せ作業ＤＢ
２９  組合せ知識監視部
３０  組合せ評価部
３１  組合せ登録部
３２  組合せ解析選択部
３３  組合せ交換部
３４  組合せ転置部
３５  組合せ保存部
３６  組合せ選択部
３７  組合せ解釈部
３８  組合せ生成制御部
３９  サービス判断部
４０  サービス選択部
４１  サービス解釈部
４２  サービス情報監視部
４３  組合せ登録先選択部
４４  サービス情報取得部
４５  サービス情報ＤＢ管理部
４６  サービス情報ＤＢ
４７  サービスディレクトリ管理部
５０  バス
【図１】
2005173991.tif 000003
【図２】
2005173991.tif 000004
【図３】
2005173991.tif 000005
【図４】
2005173991.tif 000006