(57)【特許請求の範囲】
【請求項１】
情報管理装置により互いにコミュニケーションをとって情報のやり取りを行うためのリンクを生成する情報リンク生成装置において、
前記情報管理装置間での情報の流れを示す有向パイプ情報を管理する有向パイプ管理手段と、
情報提供先の発見要求であるか、あるいは情報提供者の発見要求であるか、を示す要求の向きを判定する要求方向判定手段と、
前記有向パイプ管理手段が管理する有向パイプ情報の集合から、前記要求方向判定手段が判定した要求の向きに合致する有効パイプ情報のみを対象に、要求に適する有向パイプ情報を検索する有向パイプ検索手段と、
前記有向パイプ検索手段により検索された複数の有向パイプ情報を合成して、前記要求方向判定手段が判定した要求の向きに合致する新たな有向パイプ情報を生成する有向パイプ合成手段と、
を有することを特徴とする情報リンク生成装置。
【請求項２】
有向パイプ情報は、前記情報が有する情報内容と、前記情報内容の流通量と、を有することを特徴とする請求項１記載の情報リンク生成装置。
【請求項３】
要求を入力する要求入力手段を有し、
前記要求入力手段、前記有向パイプ管理手段、前記有向パイプ検索手段及び前記有向パイプ合成手段は、前記情報管理装置ごとに備え付けられ、
前記有向パイプ管理手段は、自己が備え付けられている前記情報管理装置に関する有向パイプ情報のみを管理し、
前記有向パイプ検索手段は、自己が備え付けられている前記情報管理装置に備え付けられている前記要求入力手段から入力された要求に適する有向パイプ情報を検索し、自己が備え付けられている前記情報管理装置以外の情報管理装置に備え付けられている有向パイプ検索手段から送られる要求に適する有向パイプ情報を検索することを特徴とする請求項１記載の情報リンク生成装置。
【請求項４】
前記情報管理装置間のコミュニケーションを検出するコミュニケーション検出手段と、
前記コミュニケーションの方向を判断するコミュニケーション方向判定手段と、
前記コミュニケーション検出手段が検出したコミュニケーション内容及び前記コミュニケーション方向判定手段が判定したコミュニケーション方向に基づいて、有向パイプ情報を生成する有向パイプ生成手段と、
前記有向パイプ管理手段が管理する有向パイプ情報を、前記コミュニケーションの内容及び前記コミュニケーション方向に基づいて更新する有向パイプ更新手段と、
を有することを特徴とする請求項１記載の情報リンク生成装置。
【請求項５】
前記有向パイプ合成手段は、第１の情報管理装置から第２の情報管理装置への有向パイプ情報と、前記第２の情報管理装置から第３の情報管理装置への有向パイプ情報または前記第３の情報管理装置から前記第２の情報管理装置への有向パイプ情報と、第４の情報管理装置から前記第３の情報管理装置への有向パイプ情報とが与えられたときに、前記第１の情報管理装置から前記第２の情報管理装置への有向パイプ情報と、前記第４の情報管理装置から前記第３の情報管理装置への有向パイプ情報と、に共通する前記情報内容及び情報量を有する前記第１の情報管理装置から前記第３の情報管理装置への有向パイプ情報、を生成することを特徴とする請求項２記載の情報リンク生成装置。
【請求項６】
前記有向パイプ合成手段は、第１の情報管理装置から第２の情報管理装置への有向パイプ情報と、前記第２の情報管理装置から第３の情報管理装置への有向パイプ情報または前記第３の情報管理装置から前記第２の情報管理装置への有向パイプ情報と、前記第３の情報管理装置から第４の情報管理装置への有向パイプ情報とが与えられたとき、前記第１の情報管理装置から前記第２の情報管理装置への有向パイプ情報と、前記第３の情報管理装置から前記第４の情報管理装置への有向パイプ情報と、に共通する前記情報内容及び情報量を有する前記第１の情報管理装置から前記第４の情報管理装置への有向パイプ情報、を生成することを特徴とする請求項２記載の情報リンク生成装置。
【請求項７】
前記有向パイプ合成手段は、第１の情報管理装置から第２の情報管理装置への有向パイプ情報と、前記第２の情報管理装置から第３の情報管理装置への有向パイプ情報または前記第３の情報管理装置から前記第２の情報管理装置への有向パイプ情報と、前記第３の情報管理装置から第４の情報管理装置への有向パイプ情報とが与えられたとき、前記第１の情報管理装置から前記第２の情報管理装置への有向パイプ情報と、前記第３の情報管理装置から前記第４の情報管理装置への有向パイプ情報と、に共通する前記情報内容及び情報量を有する、前記第３の情報管理装置から前記第２の情報管理装置への有向パイプ情報、を生成することを特徴とする請求項２記載の情報リンク生成装置。
【請求項８】
コンピュータに、
情報管理装置間での情報の流れを示す有向パイプ情報を管理し、
情報提供先の発見要求であるか、あるいは情報提供者の発見要求であるか、を示す要求の向きを判定し、
管理する有向パイプ情報の集合から、判定された要求の向きに合致する有効パイプ情報のみを対象に、要求に適する有向パイプ情報を検索し、
検索された複数の有向パイプ情報を合成して、判定された要求の向きに合致する新たな有向パイプ情報を生成する、
処理を実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項９】
コンピュータによって、情報管理装置により互いにコミュニケーションをとって情報のやり取りを行うためのリンクを生成する情報リンク生成方法において、
有向パイプ管理手段が、前記情報管理装置間での情報の流れを示す有向パイプ情報を管理し、
要求方向判定手段が、情報提供先の発見要求であるか、あるいは情報提供者の発見要求であるか、を示す要求の向きを判定し、
有向パイプ検索手段が、前記有向パイプ管理手段が管理する有向パイプ情報の集合から、前記要求方向判定手段が判定した要求の向きに合致する有効パイプ情報のみを対象に、要求に適する有向パイプ情報を検索し、
有向パイプ合成手段が、前記有向パイプ検索手段により検索された複数の有向パイプ情報を合成して、前記要求方向判定手段が判定した要求の向きに合致する新たな有向パイプ情報を生成する、
ことを特徴とする情報リンク生成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の情報管理装置がネットワークを介在して存在する環境において、各情報管理装置が持つ情報内容に応じて各情報管理装置間に新たなリンクを生成する情報リンク生成装置に関し、特に情報管理装置間でやり取りされるコミュニケーションに基づいて生成したパイプ情報を利用する情報リンク生成装置、記録媒体及び情報リンク生成方法に関する。
【０００２】
【従来の技術】
個人の趣味やプロファイル情報などを管理する情報管理装置間に情報内容に応じたリンクを生成し、情報の共有や流通を促進するシステムが提案されている。
【０００３】
Yenta(L. Foner: A Multi-Agent Referral System for Matchmaking, The first International Conference on the Practical Applications of Intelligent Agents and Multi-Agent Technology, 1996)では、個人の趣味やプロファイル情報を管理するエージェントをユーザ１人に対して１つずつ設け、これらのエージェントが協調して動作することにより、お互いに似た趣味やプロファイルを持ったユーザのエージェント間にリンクを生成する機能を提案している。Yentaのエージェントは、対応するユーザが扱う電子メールや電子文書から属性情報を抽出する属性抽出手段と、前記属性抽出手段が抽出した属性を管理する属性管理手段と、前記属性管理手段が管理する属性を他のユーザのエージェントが管理する属性と比較する属性比較手段を有し、属性の近いエージェントとのリンクを生成する。このシステムを用いることにより、例えば、組織やコミュニティに属するメンバーの興味の内容を文書で表現し、これをそれぞれのメンバに対応するエージェントがこの文書を処理することで、興味の近い人同志のコミュニケーションのための情報リンクを生成し、情報の共有を実現することができる。
【０００４】
特開平１０−３０１９０５号広報に示された発明では、図２０に示すように、複数の人や情報処理装置間でやり取りされるコミュニケーションを検出し、２つの情報管理装置間の関係を意味と重みで表現したパイプ情報を生成するパイプ生成・更新手段１０８と、前記パイプ生成・更新手段１０８が生成したパイプ情報の集合を管理するパイプ管理手段１０５と、ユーザからの要求に対してパイプ管理手段１０５が管理するパイプ情報から要求に適するパイプ情報を検索するパイプ検索手段１０４と、検索された複数のパイプ情報を合成して新たなパイプ情報を生成するパイプ合成手段１０２を有する情報リンク生成装置１００が提供されている。この発明では、ユーザからの要求があった場合に、パイプ検索手段１０４は、パイプ管理手段１０５から要求に適合するパイプ情報を検索することにより、適切なパイプ情報を選択し、さらにパイプ合成手段１０２は、選択したパイプ情報を合成して新たなパイプ情報を生成することにより、必要な情報管理装置とのコミュニケーションを可能にする。
【０００５】
パイプ管理手段１０５が管理するパイプ情報のデータ構造の１例を、図２１に示す。このようなパイプ情報は、例えば電子メールによるコミュニケーションを検出し、メールの本文からキーワードを抽出し、さらにキーワードの出現頻度を重みとすることで、生成することができる。パイプ情報の合成処理には、「直列合成」と「たたみこみ合成」の２つがある。直列合成は、図２２に示すように、２つの連続するパイプのパイプ情報の共通部分を取り出し新たなパイプ情報を生成する処理で、知人の知人に対して新たなリンクを作り出すことに相当する。たたみこみ合成は、図２３に示すように３つの連続するパイプ情報の中央のパイプ情報に、残り２つのパイプ情報の共通部分を加える処理で、知人との間の関係にこれまでは気付いていなかった共通の話題を加えることに相当する。この発明を用いることにより、例えば、電子メールによるコミュニケーションを検出して生成したパイプ情報を用いて、ユーザの要求に応じて、要求に関連するパイプ情報を検索し前記２つの合成処理を繰り返し適用することで、要求に関する情報を持った人との間に新たな情報リンク生成することができる。
【０００６】
なお、前記２つのシステムの説明では、いずれも人の興味や知っている情報を管理する情報管理装置間での情報リンクの生成を例としてあげたが、データベースや文書などに対応する情報管理装置間、あるいは、人やデータベース、文書などに対応する情報管理装置が混在した形態にも、応用可能である。
【０００７】
特開平８−２６３４０４号広報に記載された発明においては、電子メールシステムが保存している送受信メールの内容を走査することにより、要求された領域の専門家を収集する手段を提案している。専門家の探索においては、メールに専門領域を表すキーワードのリストを記述し、少数の相手に送る。メールを受け取った側では、メールの内容と自身の持つ様々なファイルとの比較により自分自身が要求された専門家に該当するかどうか判断し、該当する場合は応答メールを返す。さらに、保存している送受信メールの内容を調べて要求された専門家に該当すると思われる相手を抽出し、メールを転送する。こうして転送を繰り返すことにより、少数の相手にメールを送るだけで、多くの専門家を収集する、すなわちリンクを生成することが可能になる。
【０００８】
【発明が解決しようとする課題】
しかし、従来のシステムでは、情報を発信している情報提供者と情報を受け入れている情報消費者の区別をすることなく情報リンクを生成していた。ユーザが発する要求は、「○×△について知っている人を探したい」という形をとり、目的の情報に詳しい情報提供者だけを集める場合や、「○×△について新しい情報を得たのでこれについて知っている人に教えたい」という形をとり、手持ちの情報を欲しがっている情報消費者だけを集めたい場合の、いずれかがほとんどである。このような場合、情報提供者だけ、もしくは、情報消費者だけ、のいずれかへの情報リンクを選択的に生成する必要があるが、従来のシステムでは情報提供者と情報消費者を区別して情報リンクを生成する手段を持っていないという問題点がある。
【０００９】
本発明はこのような点に鑑みなされたものであり、情報提供者向け、あるいは情報消費者向けの情報リンクを選択的に生成することが可能な情報リンク生成装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
本発明では上記課題を解決するために、情報管理装置により互いにコミュニケーションをとって情報のやり取りを行うためのリンクを生成する情報リンク生成装置において、前記情報管理装置間での情報の流れを示す有向パイプ情報を管理する有向パイプ管理手段と、情報提供先の発見要求であるか、あるいは情報提供者の発見要求であるか、を示す要求の向きを判定する要求方向判定手段と、前記有向パイプ管理手段が管理する有向パイプ情報の集合から、前記要求方向判定手段が判定した要求の向きに合致する有効パイプ情報のみを対象に、要求に適する有向パイプ情報を検索する有向パイプ検索手段と、前記有向パイプ検索手段により検索された複数の有向パイプ情報を合成して、前記要求方向判定手段が判定した要求の向きに合致する新たな有向パイプ情報を生成する有向パイプ合成手段と、を有することを特徴とする情報リンク生成装置が提供される。
【００１１】
ここで、有向パイプ管理手段は、情報管理装置間での情報の流れを示す有向パイプ情報を管理し、要求方向判定手段は、情報提供先の発見要求であるか、あるいは情報提供者の発見要求であるか、を示す要求の向きを判定し、有向パイプ検索手段は、有向パイプ管理手段が管理する有向パイプ情報の集合から、要求方向判定手段が判定した要求の向きに合致する有効パイプ情報のみを対象に、要求に適する有向パイプ情報を検索し、有向パイプ合成手段は、有向パイプ検索手段により検索された複数の有向パイプ情報を合成して、要求方向判定手段が判定した要求の向きに合致する新たな有向パイプ情報を生成する。
【００１２】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図１は、本形態における情報リンク生成装置１の構成図である。
【００１３】
情報リンク生成装置１は、同一の構成をとる複数の情報リンク生成装置とネットワークを介して接続され、それぞれの情報リンク生成装置１は、電子メールツール２ａ、Ｗｅｂサーバ２ｂ、Ｗｅｂクライアント２ｃなどの情報管理装置２に付設される。
【００１４】
情報リンク生成装置１は、情報管理装置２が行う情報交換を検出するコミュニケーション検出手段１ｈ、情報管理装置２が行う情報交換の向きを判定するコミュニケーション方向判定手段１ｆ、コミュニケーション検出手段１ｈが検出した情報とコミュニケーション方向判定手段１ｆが判定したコミュニケーションの方向に基づいて有向パイプ情報（以下有向パイプと呼ぶ）の生成と更新を行う有向パイプ生成・更新手段１ｇ、有向パイプを管理する有向パイプ管理手段１ｃ、ユーザまたは他の情報管理装置からの要求を受け付ける要求処理手段１ｅ、要求処理手段１ｅからの要求を受けて有向パイプ管理手段１ｃが管理する有向パイプから条件に合致する有向パイプを検索する有向パイプ検索手段１ｄ、要求処理手段１ｅからの要求に合致する有向パイプが見付からないときに既存の有向パイプを合成して新しい有向パイプを生成する有向パイプ合成手段１ａ、他の装置との通信を行う通信インタフェース１ｂ、ユーザからの要求を受け付けるユーザインタフェース１ｊ及びユーザからの要求の向きを判定する要求方向判定手段１ｉにより構成されている。
【００１５】
図２に、本形態で扱う有向パイプのデータ構造１０を示す。有向パイプは、有向パイプの始点となる情報管理装置のＩＤを表す“始点”フィールド、有向パイプの終点となる情報管理装置のＩＤを表す“終点”フィールド、有向パイプの属性集合へのポインタを表す“パイプ属性”フィールドを持つ。パイプ属性は、“属性”とその“重み”の対からなるリストで構成され、多次元のベクトルを表す。これは、個々の属性であらわされる概念の情報の流通が、有向パイプの始点から終点に向かって存在することを表現し、重みが大きいほど対応する属性で表される概念の情報の流通量が大きいことを表す。有向パイプは、始点となる情報管理装置や人から、終点となる情報管理装置や人に向かって、パイプ属性で表現される情報や話題が流れていることを表す。すなわち、始点となる情報管理装置や人が、パイプ属性で表現される情報や話題の情報提供者であり、終点となる情報管理装置や人が、パイプ属性で表現される情報や話題の情報消費者であることを表す。
【００１６】
図２の例では、“始点”の値は“ＴＡＲＯ”、“終点”の値は“ＨＡＮＡＫＯ”、パイプ属性は、“エージェント”、“限界”、“要求”、“能力”、“宣伝”、“ルール”、“記述”、“引き当て”、“演繹データベース”、“一階述語論理”、“仲介”、“設計”、“エンジニアリング”、を属性として含み、重みはそれぞれ８．００、１．００、３．００、３．００、２．００、１．００、２．００、３．００、１．００、１．００、５．００、４．００、２．００、である。
【００１７】
このようなパイプ属性は、１例として、“ＴＡＲＯ”から“ＨＡＮＡＫＯ”に送られたメールを解析し、キーワードを抽出することで属性とし、キーワードの出現頻度を重みとすることで得られる。この場合、使用される情報管理装置２は、電子メールツール２ａである。
【００１８】
以降の説明では、情報管理装置をノードと呼び、Ａ、Ｂ、あるいは、ＴＡＲＯ、ＨＡＮＡＫＯ、などの識別ＩＤで表記する。また、ノードＡからノードＢへの有向パイプを、Ｐ（Ａ，Ｂ）と表記する。なお、あるノードＡからあるノードＢの間には、ただ１つの有向パイプが存在し、ＡからＢに流された情報から抽出したパイプ属性は、全て単一の有向パイプのパイプ属性として管理される。ただし、ノードＡからノードＢへの有向パイプＰ（Ａ，Ｂ）と、ノードＢからノードＡへの有向パイプＰ（Ｂ，Ａ）は別のデータとして表現される。さらに、以下では、有向パイプＰ（Ａ，Ｂ）のパイプ属性を、Ａｔｔｒ（Ａ，Ｂ）と表記する。
【００１９】
次に情報リンク生成装置１の処理について説明する。有向パイプの生成と更新は、電子メールシステムなどの情報交換システムをモニタリングし、コミュニケーションを検出することによって行う。このほかに、個人のホームページへのアクセス、チャットによる会話、文書ファイルの交換、など、あらゆる電子情報の交換がモニタリングの対象となる。また、電話、インターネット電話、ネットミーティングなど、音声を用いたコミュニケーションについても、音声認識技術を利用することで電子的なテキスト情報に変換することで本発明の方式は適用できる。以下では、電子メールを用いた例で説明する。
【００２０】
まず、コミュニケーション検出手段１ｈがメールの送受信を検出することで処理を開始する。図３にメールの受信を検出したときの、有向パイプの生成と更新の処理を示す。以下、ステップＳ１はコミュニケーション検出手段１ｈにおける処理、ステップＳ２はコミュニケーション方向判定手段１ｆの処理、ステップＳ３からステップＳ７は有向パイプ生成・更新手段１ｇにおける処理である。
【００２１】
まずステップＳ１で、メール中のキーワードを抽出し、これらのキーワードの集合をＷとする。キーワードの抽出には、形態素解析エンジンを用いて名詞を取り出す、キーワード辞書を用いて登録されたキーワードを抽出する、などの一般的な方法を用いる。
【００２２】
次に、ステップＳ２で、メールから有向パイプの始点と終点のペアの集合Ｍを求める。このステップについては、詳細を後述する。
続いて、ステップＳ３で、Ｍが空集合であるかどうか判定し、空集合の場合は処理を終了する。空集合でない場合はステップＳ４に進む。ステップＳ４では、Ｍの最初の始点と終点のペアを取り出し、始点をｓ、終点をｅとする。次に、ステップＳ５で、ｓを始点、ｅを終点とする有向パイプが存在するかどうか調べ、存在しない場合はステップＳ６で、ｓを始点、ｅを終点とする有向パイプを生成しステップＳ７へ、存在する場合はステップＳ６を実行せずに、ステップＳ７へ進む。最後にステップＳ７で、Ｗを適用してｓを始点、ｅを終点とする有向パイプのパイプ属性を更新する。パイプ属性の更新は、Ｗの要素であるキーワードそれぞれについて、そのキーワードがパイプ属性に存在しない場合には属性を追加して重みを１とし、そのキーワードがパイプ属性に存在する場合は重みに１加える処理を行う。ステップＳ７が終了すると、ステップＳ３に戻り、ステップＳ３以降の処理を繰り返す。
【００２３】
図４に、図３のステップＳ２に示した始点と終点の集合Ｍの取り出し処理を示す。以下、ステップＳ１１からステップＳ１４までの処理は、全てコミュニケーション方向判定手段１ｆでの処理である。
【００２４】
まずステップＳ１１で、Ｍを空集合にする。次に、ステップＳ１２で受信メールであるか判定し、受信メールである場合は、ステップＳ１３でメールの発信者をｓ、自分をｅとして（ｓ，ｅ）をＭに加える、受信メールでない場合は、ステップＳ１４で自分をｓ、あて先の集合をＴとし、Ｔの全ての要素ｔについて、（ｓ，ｔ）をＭに加える。なお、ここでは、コミュニケーションの方向はメールが送られる方向であると仮定して前記処理を記述したが、メールの内容を判定するルールを設けるなどして、情報を要求する内容のメールの場合には、コミュニケーションの方向をメールの送信方向とは逆の向きと判定する方法をとることも可能である。
【００２５】
以上のように生成・更新された有向パイプは、有向パイプ管理手段１ｃに送られ、そこで管理される。
ここで、ユーザからの要求によって起動される有向パイプの合成処理の説明をするに先立って、有向パイプ間で行われる有向パイプの基本的な合成処理を説明する。
【００２６】
有向パイプ間の基本的な合成処理には３種類ある。第１の基本合成処理は、有向パイプの短絡合成である。これは、ある情報に関して２人の情報収集者がいて、その２人が知人であるとき、一方の情報消費者にとっての情報提供者を、もう一方の情報消費者に紹介することに相当する処理である。図５の例で、キーワード｛ａ，ｂ，ｃ，ｄ｝で代表される情報に着目した場合、ノードＢは情報消費者であり、ノードＡから情報提供を受けている。一方、ノードＣも、情報消費者であり、ノードＤから情報提供を受けている。また、ノードＢとノードＣの間には、ＢからＣへの有向パイプＰ（Ｂ，Ｃ）が存在する。したがって、ノードＡが提供する情報をノードＣに伝える関係を生成することで、ノードＣはさらに多くの情報提供者から情報を入手することができる。この場合に、Ｐ（Ａ，Ｂ）とＰ（Ｄ，Ｃ）を合成し、新たな有向パイプＰ（Ａ，Ｃ）を生成する。以上の処理の結果得られるＰ（Ａ，Ｃ）のパイプ属性は、以下の式で与えられる。
【００２７】
Ａｔｔｒ（Ａ，Ｃ）  ＝  Ａｔｔｒ（Ａ，Ｂ）  ∩  Ａｔｔｒ（Ｄ，Ｃ）
ここで、∩は、パイプ属性の積演算と呼ぶ演算処理で、２つのパイプ属性におけるそれぞれのキーワード集合の積集合を取り出し新たなパイプ属性のキーワード集合とし、個々の属性の重みは、該当する属性の重みの最小値をとることにより与えられる。図５の例では、Ａｔｔｒ（Ａ，Ｂ）＝｛ａ＝１．０，ｂ＝２．０，ｃ＝４．０｝、Ａｔｔｒ（Ｄ，Ｃ）＝｛ｂ＝１．０，ｃ＝５．０，ｄ＝２．０｝が与えられ、Ａｔｔｒ（Ａ，Ｃ）＝｛ｂ＝１．０，ｃ＝４．０｝である。
【００２８】
既にＡ、Ｃ間の有向パイプＰ（Ａ，Ｃ）が存在していた場合には、短絡合成処理は算出したパイプ属性を、以下の式で有向パイプＰ（Ａ，Ｃ）のパイプ属性に加える。
【００２９】
0004069539.tif 000002
ここで、∪は、パイプ属性の和演算と呼ぶ演算処理で、２つのパイプ属性におけるそれぞれのキーワード集合の和集合を取り出して新たなパイプ属性のキーワード集合とし、個々の属性の重みは、該当する属性の重みの最大値をとることにより与えられる。
【００３０】
有向パイプの短絡合成は、２つの同一方向の連続する有向パイプに対しても同様に適用することができる。図６に示した例では、キーワード｛ａ，ｂ，ｃ，ｄ｝で代表される情報に着目した場合、ノードＢは情報消費者であり、ノードＡから情報提供を受けている。一方、ノードＣは情報消費者であり、ノードＢから情報提供を受けている。したがって、ノードＡが提供する情報はノードＣに伝えることが可能である。この場合に、Ｐ（Ａ，Ｂ）とＰ（Ｂ，Ｃ）を合成し、新たな有向パイプＰ（Ａ，Ｃ）を生成する。このときのＰ（Ａ，Ｃ）のパイプ属性は、以下の式で与えられる。
【００３１】
Ａｔｔｒ（Ａ，Ｃ）  ＝  Ａｔｔｒ（Ａ，Ｂ）  ∩  Ａｔｔｒ（Ｂ，Ｃ）
既にＡ、Ｃ間の有向パイプＰ（Ａ，Ｃ）が存在していた場合には、短絡合成処理は算出したパイプ属性を、以下の式で有向パイプＰ（Ａ，Ｃ）のパイプ属性に加える。
【００３２】
0004069539.tif 000003
第２の基本合成処理は、有向パイプのスキップ合成である。これは、ある情報に関する情報消費者と情報提供者が知人であるときに、情報消費者にとっての情報提供者を、情報提供者にとっての情報消費者に紹介することに相当する処理である。図７の例で、キーワード｛ａ，ｂ，ｃ，ｄ｝で代表される情報に着目した場合、ノードＢは情報消費者であり、ノードＡから情報提供を受けている。一方、ノードＣは情報提供者であり、ノードＤに情報提供している。また、ノードＢとノードＣの間には、ＢからＣへの有向パイプＰ（Ｂ，Ｃ）が存在する。したがって、ノードＡが提供する情報をノードＤに伝える関係を生成することで、ノードＤはさらに多くの情報提供者から情報を入手することができる。この場合に、Ｐ（Ａ，Ｂ）とＰ（Ｃ，Ｄ）を合成し、新たな有向パイプＰ（Ａ，Ｄ）を生成する。以上の処理の結果得られるＰ（Ａ，Ｄ）のパイプ属性は、以下の式で与えられる。
【００３３】
Ａｔｔｒ（Ａ，Ｄ）  ＝  Ａｔｔｒ（Ａ，Ｂ）  ∩  Ａｔｔｒ（Ｃ，Ｄ）
既にＡ、Ｃ間の有向パイプＰ（Ａ，Ｄ）が存在していた場合には、スキップ合成処理は算出したパイプ属性を、以下の式で有向パイプＰ（Ａ，Ｄ）のパイプ属性に加える。
【００３４】
0004069539.tif 000004
なお、図７の例で、ノードＢとノードＣは、ノードＡとノードＤの関係の仲介役として働く。また、ノードＢとノードＣの間に存在する有向パイプの向きがＢからＣではなく、ＣからＢの場合でも、前記説明と全く同じ処理が適用できる。
【００３５】
第３の基本合成処理は、有向パイプのたたみこみ合成である。これは、ある情報に関する情報消費者と情報提供者が知人だが、情報の授受の可能性に気付いていないときに、情報提供者から情報消費者へ情報を伝えることが可能であることを気付かせることに相当する処理である。図８の例で、キーワード｛ａ，ｂ，ｃ，ｄ｝で代表される情報に着目した場合、ノードＢは情報消費者であり、ノードＡから情報提供を受けている。一方、ノードＣは情報提供者であり、ノードＤに情報提供している。また、ノードＢとノードＣの間には、ＢからＣへの有向パイプＰ（Ｂ，Ｃ）が存在する。したがって、ノードＣが提供する情報をノードＢに伝える関係を生成することで、ノードＢはさらに多くの情報提供者から情報を入手することができる。この場合に、Ｐ（Ａ，Ｂ）とＰ（Ｃ，Ｄ）を合成し、新たな有向パイプＰ（Ｃ，Ｂ）を生成する。以上の処理の結果得られるＰ（Ｃ，Ｂ）のパイプ属性は、以下の式で与えられる。
【００３６】
Ａｔｔｒ（Ｃ，Ｂ）  ＝  Ａｔｔｒ（Ａ，Ｂ）  ∩  Ａｔｔｒ（Ｃ，Ｄ）
既にＣ、Ｂ間の有向パイプＰ（Ｃ，Ｂ）が存在していた場合には、スキップ合成処理は算出したパイプ属性を、以下の式で有向パイプＰ（Ｃ，Ｂ）のパイプ属性に加える。
【００３７】
0004069539.tif 000005
なお、ノードＢとノードＣの間に存在する有向パイプの向きがＢからＣではなく、ＣからＢの場合でも、前記説明と全く同じ処理が適用できる。
【００３８】
以上に述べた有向パイプの合成処理を、複数の情報リンク生成装置で協業して繰り返し行うことにより、情報提供者発見、情報提供先発見、などのサービスを実現することができる。
【００３９】
上記のサービスを実現するために、情報リンク生成装置１は、ユーザインタフェース１ｊを介してユーザから入力された要求を解析し処理する。ユーザが入力する要求はテキスト形式で記述され、例えば情報提供者発見の場合は図９に例で示した形をとる。このテキスト形式の要求は、要求処理手段１ｅで処理され、図１０に例示した要求のデータ構造２０に変換される。要求のデータ構造２０は、“方向”、“閾値”、“要求属性”という３つのフィールドを持つ。“方向”は、要求がどちら向きの有向パイプを集めようとしているかを示すもので、情報提供者発見要求の場合は、“入力”方向である。“閾値”は、以降で詳細に説明する要求の処理において、要求のデータ構造２０の伝達先を決定するために用いる。“要求属性”は、テキスト形式で表現された要求内容を、パイプ属性と同様に“属性”と“重み”で表現されたベクトルへのポインタを持つ。図１１及び図１２は、情報提供先発見の場合におけるテキスト形式の要求例及びその要求のデータ構造３０を示している。
【００４０】
図１３に要求の処理を示す。以下、ステップＳ２１は要求方向判定手段１ｉ及び要求処理手段１ｅでの処理、ステップＳ２３からＳ２５は要求処理手段１ｅでの処理、ステップＳ２６は有向パイプ検索手段１ｄでの処理である。
【００４１】
まず、ステップＳ２１においてテキスト形式で記述された要求を処理し、要求データを作成する。続いて、ステップＳ２２で、他の情報リンク生成装置が処理を終えるまで待つ制限時刻ｔと、どの程度先までメッセージを伝達するかの最大ホップカウントｈを設定する。続いてステップＳ２３で、要求伝達メッセージを作成する。次にステップＳ２４で要求伝達メッセージを処理する。次に、ステップＳ２５で設定した制限時刻ｔを超えていないかどうかを判定し、制限時刻ｔを超えるまで自己ループを繰り返す。最後に、ステップＳ２６で、要求と有向パイプの属性の内積値が閾値以上である有向パイプを見つけ、その有向パイプにおける相手側の端点のＩＤを集合Ｄとして求める。なお、ここで用いる内積値とは、一般的にベクトルの内積値として用いられるもののことであり、２つのベクトルにおいて属性が共通する値同士の積を合計したものである。
【００４２】
図１４に、図１３のステップＳ２３で作成される要求伝達メッセージのデータ構造を示す。要求伝達メッセージのデータ構造は、“発信者ＩＤ”、“要求データ”、“制限時刻”、“最大ホップ”、“ホップカウント”、“パイプＰ１”、“パイプＰ２”、“パイプＰ３”、“ノードＮ１”、“ノードＮ２”及び“ノードＮ３”の１１個のフィールドで構成される。“発信者ＩＤ”には、要求を入力した発信者のＩＤがセットされる。“要求データ”には、対応する要求のデータ構造へのポインタがセットされる。“制限時刻”には、ステップＳ２２で設定された制限時刻ｔがセットされる。“最大ホップ”及び“ホップカウント”は、要求伝達メッセージの継続的な伝播を制限し、メッセージの爆発を防ぐためのものであり、“ホップカウント”は、要求伝達メッセージが発信者からいくつのノードを経由したかをカウントし、最大ホップ”は、“ホップカウント”の制限値（これを超えては継続的なメッセージ伝達は行わない）を表し、ステップＳ２２で設定された最大ホップカウント値ｈが設定される。“パイプＰ１”には、要求伝達メッセージの伝達系路からみて直前の有向パイプが、“パイプＰ２”には、要求伝達メッセージの伝達系路からみて２つ前の有向パイプが、“パイプＰ３”には、要求伝達メッセージの伝達系路からみて３つ前の有向パイプが、それぞれセットされる。“ノードＮ１”には、要求伝達メッセージの伝達系路からみて直前のノードが、“ノードＮ２”には、要求伝達メッセージの伝達系路からみて２つ前のノードが、“ノードＮ３”には、要求伝達メッセージの伝達系路からみて３つ前のノードが、それぞれセットされる。ステップＳ２３で作成される要求伝達メッセージは、各フィールドに以下の値を持つ。
【００４３】
発信者ＩＤ  ＝  （ユーザが要求を入力したノード）
要求データ  ＝  （要求のデータ構造）
制限時刻  ＝  ｔ
最大ホップ  ＝  ｈ
ホップカウント  ＝  ０
パイプＰ１  ＝  （要求のデータ構造）
パイプＰ２  ＝  ｎｕｌｌ
パイプＰ３  ＝  ｎｕｌｌ
ノードＮ１  ＝  ｎｕｌｌ
ノードＮ２  ＝  ｎｕｌｌ
ノードＮ３  ＝  ｎｕｌｌ
ここで、パイプＰ１の値には、要求のデータ構造を設定しているが、これは、当初は要求を擬似的にパイプとして扱い、要求の要求属性と有向パイプのパイプ属性を混在させた形で、有向パイプの合成処理を行うためである。
【００４４】
図１５に、図１３のステップＳ２１における要求データ作成処理の詳細を示す。以下の処理で、ステップＳ３１は要求方向判定手段１ｉにおける処理、ステップＳ３２からステップＳ３３は、要求処理手段１ｅにおける処理である。
【００４５】
最初に、ステップＳ３１で要求の向きを判定し、要求のデータ構造の“方向”フィールドを設定する。向きの判定は、例えば、情報提供者発見要求であれば“入力”、情報提供先発見要求であれば“出力”、といったルールをあらかじめ設定しておき、これにしたがって設定する。続いてステップＳ３２で、要求の内容部分のテキストからキーワードを抽出しＷとする。この部分の処理はメールを抽出したときの有向パイプの生成・更新処理１ｇにおける図３のステップＳ１と同様の方法で実現できる。最後にステップＳ３３で、Ｗを用いて要求属性を構築する。この部分の処理も、メールを抽出したときの有向パイプの生成・更新処理１ｇにおける図３のステップＳ７と同様である。
【００４６】
図１６に、図１３のステップＳ２４における要求伝達メッセージ処理についての詳細を示す。以下の処理で、ステップＳ４１からステップＳ４３及びステップＳ４５は要求処理手段１ｅにおける処理、ステップＳ４４は有向パイプ合成手段１ａにおける処理、ステップＳ４６は通信インタフェース１ｂにおける処理である。また、これらの処理は、ユーザから要求が入力されたときだけではなく、他の情報リンク生成装置から要求伝達メッセージを受け取ったときにも起動される。
【００４７】
まず、ステップＳ４１で、受け取った要求の処理を実行中のノードで既に処理済かどうかを判定し、処理済の場合は処理を終了する。次に、ステップＳ４２で、現在時刻が制限時刻ｔより前かどうかを判定し、制限時刻を過ぎている場合は処理を終了する。次にステップＳ４３で、ホップカウントが最大ホップカウントｈ以下であるかどうかを判定し、最大ホップカウントを超えている場合は処理を終了する。次にステップＳ４４で、有向パイプの合成処理を実行する。続いて、ステップＳ４５で、要求伝達メッセージの伝達先の集合Ｍを求める。最後にステップＳ４６で、それぞれ更新した要求伝達メッセージを、Ｍの全ての要素に対して送付する。要求伝達メッセージの更新は、次の式にしたがってフィールド値を更新することで行う。
【００４８】
パイプＰ１  ＝  Ｐ（Ｎ，Ｕ）
パイプＰ２  ＝  パイプＰ１
パイプＰ３  ＝  パイプＰ２
ノードＮ１  ＝  Ｎ
ノードＮ２  ＝  ノードＮ１
ノードＮ３  ＝  ノードＮ２
ただし、ここで、Ｎは現在処理を行っている自分自身のノード、Ｕは要求伝達メッセージの送付先のノードである。
【００４９】
図１７に、図１６のステップＳ４４における有向パイプ合成処理の実行処理についての詳細を示す。以下の説明で、ステップＳ５３とステップＳ５４は、有向パイプの短絡合成処理に関する処理ステップ、ステップＳ５５とステップＳ５６は、有向パイプのたたみこみ合成処理に関する処理ステップ、ステップＳ５７からステップＳ５９は、有向パイプのスキップ合成処理に関する処理ステップである。
【００５０】
まず、ステップＳ５１でパイプＰ２と要求が同じ向きかどうか判定し、同じでない場合はステップＳ５７へ進む。同じ場合は、ステップＳ５２で、パイプＰ２と要求の内積値が閾値以上かどうか判定し、閾値未満の場合はステップＳ５７に進む。閾値以上の場合は、ステップＳ５３で、要求と逆向きの有向パイプのうち、要求との内積値が閾値以上のものの集合をＱとする。次に、ステップＳ５４で、全てのＱの要素ｑについて、パイプＰ２とｑの有向パイプの短絡合成を行い、新たな有向パイプを生成する。次に、ステップＳ５５で、要求と同じ向きの有向パイプのうち、要求との内積値が閾値以上のものの集合をＵとする。次に、ステップＳ５６で、全てのＵの要素ｕについて、パイプＰ２とｕの有向パイプのたたみこみ合成を行い、新たな有向パイプを生成する。ステップＳ５７では、パイプＰ１、パイプＰ３及び要求が全て同じ向きかどうか判定し、同じでない場合は処理を終了する。同じ場合は、ステップＳ５８で、パイプＰ１と要求の内積値及びパイプＰ３と要求の内積値が、ともに閾値以上かどうか判定し、これを満たさない場合は処理を終了する。満たす場合は、ステップＳ５９で、パイプＰ１とパイプＰ３の有向パイプのスキップ合成を行い、新たな有向パイプを生成する。
【００５１】
図１８に、図１６のステップＳ４５における要求伝達先を求める処理の詳細を示す。
まず、ステップＳ６１で、Ｍを空集合とする。次に、ステップＳ６２で、Ｒを現在処理中のノードにつながる全ての有向パイプから、パイプＰ１を除いたものとする。次に、ステップＳ６３で、Ｒが空集合かどうか判定し、空集合なら処理を終了する。空集合でない場合は、ステップＳ６４に進み、Ｒから有向パイプを１つ取り出しｒとする。取り出したｒはＲから削除する。続いて、ステップＳ６５で、ｒが要求と同じ向きで、かつｒと要求との内積値が閾値以上かどうか判定し、条件を満たす場合はステップＳ６６でｒをＭに加え、ステップＳ６３に戻る。条件を満たさない場合はステップＳ６７に進み、ｒの相手側のノードに要求との内積値が閾値以上になる有向パイプが１つでも存在するかどうか判定する。存在しない場合は、ステップＳ６３に戻って処理を繰り返し、存在する場合はステップＳ６８でｒをＭに加えてからステップＳ６３に戻る。
【００５２】
以上の処理を実行することによる有向パイプのネットワーク変化の様子を図１９に例示する。図１９の（ａ）は、要求を処理する前における有向パイプのネットワーク状態である。この状態で、ノードＡから情報提供先発見要求を入力したとする。図１９の（ａ）中、太線で示してある有向パイプＰ（Ａ，Ｂ）、Ｐ（Ａ，Ｅ）、Ｐ（Ｄ，Ｃ）及びＰ（Ｇ，Ｆ）は、リクエストとの内積値の値が閾値以上のものである。
【００５３】
この入力された情報提供先発見要求は順次処理され、図１９の（ｂ）に示すようにＰ（Ａ，Ｂ）とＰ（Ａ，Ｄ）が短絡合成されてＰ（Ａ，Ｃ）が生成され、また、Ｐ（Ａ，Ｅ）とＰ（Ｇ，Ｆ）がスキップ合成されてＰ（Ａ，Ｆ）が生成される。
【００５４】
このように、本形態では、有向パイプ管理手段１ｃで有向パイプ情報を管理し、有向パイプ検索手段１ｄは要求に適する有向パイプ情報を有向パイプ管理手段１ｃから検索し、有向パイプ合成手段１ａは有向パイプ検索手段１ｄが検索した複数の有向パイプ情報を合成して新たな有向パイプ情報を生成することとしたため、情報提供者向け、あるいは情報消費者向けの情報リンクを選択的に生成することが可能となる。
【００５５】
なお、本形態では、有向パイプの生成、管理、及び、要求の処理は、複数の情報リンク生成装置１で協業して行うとしたが、１つの装置で全ての有向パイプを管理し、全ての処理をこの装置内で行うこととしてもよい。
【００５６】
また、本形態の情報リンク生成装置１は、接続された情報管理装置２が直接関与するコミュニケーションから生成された有向パイプのみを、有向パイプ管理手段１ｃで管理することとしているが、これ以外のパイプを管理する構成としてもよい。
【００５７】
さらに、上記の処理機能は、コンピュータによって実現することができる。その場合、情報リンク生成装置１が有すべき機能の処理内容は、コンピュータで読み取り可能な記録媒体に記録されたプログラムに記述しておく。そして、このプログラムをコンピュータで実行することにより、上記処理がコンピュータで実現される。コンピュータで読み取り可能な記録媒体としては、磁気記録装置や半導体メモリ等がある。市場に流通させる場合には、ＣＤ−ＲＯＭ(Compact Disk Read Only Memory)やフロッピーディスク等の可搬型記録媒体にプログラムを格納して流通させたり、ネットワークを介して接続されたコンピュータの記憶装置に格納しておき、ネットワークを通じて他のコンピュータに転送することもできる。コンピュータで実行する際には、コンピュータ内のハードディスク装置等にプログラムを格納しておき、メインメモリにロードして実行する。
【００５８】
【発明の効果】
以上説明したように本発明では、情報管理装置間の関連を表す情報を有向パイプ情報として管理し、検索・合成することとしたため、情報提供者向け、あるいは情報消費者向けの情報リンクを選択的に生成することが可能となる。
【図面の簡単な説明】
【図１】本形態における情報リンク生成装置の構成図である。
【図２】本形態で扱う有向パイプのデータ構造図である。
【図３】メール受信検出時における有向パイプの生成と更新の処理を示したフローチャートである。
【図４】図３のステップＳ２に示した始点と終点の集合Ｍの取り出し処理を示したフローチャートである。
【図５】有向パイプの短絡合成例を示した図である。
【図６】有向パイプの短絡合成例を示した図である。
【図７】有向パイプのスキップ合成例を示した図である。
【図８】有向パイプのたたみこみ合成を示した図である。
【図９】情報提供者発見の要求例を示した図である。
【図１０】情報提供者発見要求のデータ例を示した図である。
【図１１】情報提供先発見の要求例を示した図である。
【図１２】情報提供先発見要求のデータ例を示した図である。
【図１３】要求の処理を示したフローチャートである。
【図１４】要求伝達メッセージのデータ構造図である。
【図１５】要求データ作成の処理を示したフローチャートである。
【図１６】図１３のステップＳ２４における要求伝達メッセージ処理を示したフローチャーチである。
【図１７】図１６のステップＳ４４における有向パイプ合成処理の実行処理を示したフローチャートである。
【図１８】図１６のステップＳ４５における要求伝達先を求める処理を示したフローチャートである。
【図１９】本形態の処理を実行することによる有向パイプのネットワーク変化例を示した図である。
【図２０】従来の情報リンク生成装置の構造を示した構造図である。
【図２１】従来のパイプ管理手段が管理するパイプ情報のデータ構造図である。
【図２２】パイプの直列合成を示した図である。
【図２３】パイプのたたみ込み合成を示した図である。
【符号の説明】
１  情報リンク生成装置
１ａ  有向パイプ合成手段
１ｂ  通信インタフェイス
１ｃ  有向パイプ管理手段
１ｄ  有向パイプ検索手段
１ｅ  要求処理手段
１ｆ  コミュニケーション方向判定手段
１ｇ  有向パイプ生成・更新手段
１ｈ  コミュニケーション検出手段
１ｉ  要求方向判定手段
１ｊ  ユーザインタフェイス
２  情報管理装置
２ａ  電子メールツール
２ｂ  Ｗｅｂサーバ
２ｃ  Ｗｅｂクライアント
【図１】
0004069539.tif 000006
【図２】
0004069539.tif 000007
【図３】
0004069539.tif 000008
【図４】
0004069539.tif 000009
【図５】
0004069539.tif 000010
【図６】
0004069539.tif 000011
【図７】
0004069539.tif 000012
【図８】
0004069539.tif 000013
【図９】
0004069539.tif 000014
【図１０】
0004069539.tif 000015
【図１１】
0004069539.tif 000016
【図１２】
0004069539.tif 000017
【図１３】
0004069539.tif 000018
【図１４】
0004069539.tif 000019
【図１５】
0004069539.tif 000020
【図１６】
0004069539.tif 000021
【図１７】
0004069539.tif 000022
【図１８】
0004069539.tif 000023
【図１９】
0004069539.tif 000024
【図２０】
0004069539.tif 000025
【図２１】
0004069539.tif 000026
【図２２】
0004069539.tif 000027
【図２３】
0004069539.tif 000028