(57)【特許請求の範囲】
【請求項１】
検索対象となるデータ群の各データが当該各データを特徴付ける複数の属性に含まれる属性ごとの属性情報を有する前記データ群を記憶する記憶部と、
前記属性ごとの属性情報をそれぞれ指定する検索条件を受け付ける受付部と、
前記属性ごとに、当該属性の属性情報間の類似度を規定するテーブルを参照し、前記検索条件で指定された前記属性の属性情報と前記各データの前記属性の属性情報との類似度をそれぞれ特定する特定部と、
前記複数の属性のそれぞれを各次元の軸とする座標系において、前記特定部によって特定された前記各データの前記属性ごとの類似度を当該属性に対応する軸の成分とするベクトルと、前記複数の属性のそれぞれに対応する軸の成分を類似度として取り得る最大の値とする基準ベクトルとのベクトル間距離を算出する算出部と、
前記算出部によって算出された算出結果に基づいて、前記データ群の中からデータを検索する検索部と、
前記検索部によって検索された検索結果を出力する出力部と、
を備えることを特徴とする検索装置。
【請求項２】
前記検索部は、
さらに、前記受付部によって受け付けた検索条件に基づいて、前記データ群の中からデータを検索することを特徴とする請求項１に記載の検索装置。
【請求項３】
前記受付部によって受け付けた検索条件で指定された属性情報と関連する他の属性情報を規定するテーブルを参照し、前記他の属性情報を指定する他の検索条件を作成する作成部を備え、
前記検索部は、
前記作成部によって作成された他の検索条件に基づいて、検索対象となるデータ群の中からデータを検索することを特徴とする請求項１または２に記載の検索装置。
【請求項４】
前記作成部は、
前記属性ごとに、前記受付部によって受け付けた検索条件で指定された当該属性の属性情報と同一の属性を有する他の属性情報を規定するテーブルを参照し、前記他の属性情報を指定する他の検索条件をそれぞれ作成し、
前記検索部は、
前記作成部によって前記属性ごとにそれぞれ作成された他の検索条件に基づいて、前記データ群の中からデータを検索することを特徴とする請求項３に記載の検索装置。
【請求項５】
前記算出部は、
算出した前記基準ベクトルとのベクトル間距離が最小であるデータが複数存在する場合、さらに、前記基準ベクトルとのベクトル間距離が最小であるデータごとに、当該データの属性ごとの類似度を当該属性に対応する軸の成分とするベクトルと、前記複数の属性のうち特定の属性に対応する軸の成分を類似度として取り得る最大の値とし、かつ、前記特定の属性以外の属性に対応する軸の成分をゼロとする軸ベクトルとのベクトル間距離を算出し、
前記検索部は、
前記基準ベクトルとのベクトル間距離が最小である複数のデータの中から、前記算出部によって算出された前記軸ベクトルとのベクトル間距離が最小のデータを検索することを特徴とする請求項１〜４のいずれか一つに記載の検索装置。
【請求項６】
検索対象となるデータ群の各データが当該各データを特徴付ける複数の属性に含まれる属性ごとの属性情報を有する前記データ群にアクセス可能なコンピュータを、
前記属性ごとの属性情報をそれぞれ指定する検索条件を受け付ける受付手段、
前記属性ごとに、当該属性の属性情報間の類似度を規定するテーブルを参照し、前記検索条件で指定された前記属性の属性情報と前記各データの前記属性の属性情報との類似度をそれぞれ特定する特定手段、
前記複数の属性のそれぞれを各次元の軸とする座標系において、前記特定手段によって特定された前記各データの前記属性ごとの類似度を当該属性に対応する軸の成分とするベクトルと、前記複数の属性のそれぞれに対応する軸の成分を類似度として取り得る最大の値とする基準ベクトルとのベクトル間距離を算出する算出手段、
前記算出手段によって算出された算出結果に基づいて、前記データ群の中からデータを検索する検索手段、
前記検索手段によって検索された検索結果を出力する出力手段、
として機能させることを特徴とする検索プログラム。
【請求項７】
検索対象となるデータ群の各データが当該各データを特徴付ける複数の属性に含まれる属性ごとの属性情報を有する前記データ群にアクセス可能なコンピュータに、
前記属性ごとの属性情報をそれぞれ指定する検索条件を受け付ける受付工程と、
前記属性ごとに、当該属性の属性情報間の類似度を規定するテーブルを参照し、前記検索条件で指定された前記属性の属性情報と前記各データの前記属性の属性情報との類似度をそれぞれ特定する特定工程と、
前記複数の属性のそれぞれを各次元の軸とする座標系において、前記特定工程によって特定された前記各データの前記属性ごとの類似度を当該属性に対応する軸の成分とするベクトルと、前記複数の属性のそれぞれに対応する軸の成分を類似度として取り得る最大の値とする基準ベクトルとのベクトル間距離を算出する算出工程と、
前記算出工程によって算出された算出結果に基づいて、前記データ群の中からデータを検索する検索工程と、
前記検索工程によって検索された検索結果を出力する出力工程と、
を実行させることを特徴とする検索方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報を検索する検索装置、検索プログラム、および検索方法に関する。
【背景技術】
【０００２】
従来より、情報検索の技術として、情報群の中から、入力されたキーワードを含む情報を検索するものがある（例えば、下記特許文献１参照。）。また、文書を特徴付ける文書ベクトルを生成し、文書ベクトル間から文書間の類似度を生成し、生成された類似度によって類似文書を検索するものがある（例えば、下記特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平９−６２６９１号公報
【特許文献２】特開２００３−６２１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、検索対象となる情報群の中から、ユーザが指定した検索条件に一致しない情報は検索されない。このため、検索条件に一致する情報がなかった場合、ユーザにとって参考となる情報を得ることができないという問題がある。
【０００５】
本発明は、上述した従来技術による問題点を解消するため、情報検索において、ユーザにとって参考となり得る情報を提供することができる検索装置、検索プログラム、および検索方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するため、開示の検索装置、検索プログラム、および検索方法は、任意の属性の属性情報を指定する検索条件を受け付け、受け付けた検索条件で指定された属性情報と関連する他の属性情報を規定するテーブルを参照することにより、前記他の属性情報を指定する他の検索条件を作成し、作成された他の検索条件に基づいて、検索対象となるデータ群の中からデータを検索し、検索された検索結果を出力する。
【発明の効果】
【０００７】
本検索装置、検索プログラム、および検索方法によれば、情報検索において、ユーザにとって参考となり得る情報を提供することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】実施の形態１にかかる検索装置の機能的構成を示すブロック図である。
【図２】属性テーブルの記憶内容の一例を示す説明図である。
【図３】実施の形態１にかかる検索装置の検索処理手順の一例を示すフローチャートである。
【図４】実施の形態２にかかる検索システムの一実施例を示す説明図である。
【図５】実施の形態２にかかるコンピュータのハードウェア構成を示すブロック図である。
【図６】品目マスタの記憶内容の一例を示す説明図である。
【図７】文書マスタの記憶内容の一例を示す説明図である。
【図８】ユーザ分類テーブルの記憶内容の一例を示す説明図である。
【図９】作成理由分類テーブルの記憶内容の一例を示す説明図である。
【図１０】作成方法分類テーブルの記憶内容の一例を示す説明図である。
【図１１】検索条件入力画面の具体例を示す説明図である。
【図１２】検索条件の入力例を示す説明図である。
【図１３】実施の形態２にかかる検索装置の機能的構成を示すブロック図である。
【図１４】類似度定義テーブルの記憶内容の一例を示す説明図である。
【図１５】類似度テーブルの記憶内容の一例を示す説明図である。
【図１６】ベクトル間距離の算出例を示す説明図（その１）である。
【図１７】軸定義テーブルの記憶内容の一例を示す説明図である。
【図１８】ベクトル間距離の算出例を示す説明図（その２）である。
【図１９】品質テーブルの記憶内容の一例を示す説明図である。
【図２０】検索結果画面の具体例を示す説明図である。
【図２１】実施の形態２にかかる検索装置の検索処理手順の一例を示すフローチャートである。
【図２２】ステップＳ２１０２の類似度特定処理の具体的な処理手順の一例を示すフローチャートである。
【図２３】ステップＳ２１０３のベクトル間距離算出処理の具体的な処理手順の一例を示すフローチャートである。
【図２４】ステップＳ２１０４の検索処理の具体的な処理手順の一例を示すフローチャートである。
【図２５】検索結果リストの具体例を示す説明図である。
【発明を実施するための形態】
【０００９】
以下に添付図面を参照して、この発明にかかる検索装置、検索プログラム、および検索方法の好適な実施の形態を詳細に説明する。
【００１０】
（実施の形態１）
まず、実施の形態１にかかる検索装置１００の機能的構成について説明する。実施の形態１では、ユーザが指定した検索条件を、関連する特徴を持つ他の検索条件に変換して検索を行うことで、検索条件に完全に合致しなくてもユーザにとって参考となる可能性がある情報を提供する。
【００１１】
図１は、実施の形態１にかかる検索装置の機能的構成を示すブロック図である。図１において、検索装置１００は、受付部１０１と、作成部１０２と、検索部１０３と、出力部１０４と、を含む構成である。各機能部（受付部１０１〜出力部１０４）は、具体的には、例えば、後述の図５に示すＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されたプログラムをＣＰＵ５０１に実行させることにより、または、Ｉ／Ｆ５０８により、その機能を実現する。
【００１２】
受付部１０１は、任意の属性の属性情報を指定する検索条件を受け付ける。ここで、検索条件とは、検索対象となるデータ群の中から所望のデータを検索するための条件である。検索条件は、例えば、文字や記号を用いて指定してもよく、また、予め用意されている複数の検索条件の中から指定することにしてもよい。
【００１３】
検索対象となるデータとは、文書や図面などに関するデータである。データとしては、例えば、仕様書データ、設計データ、顧客データ、会計データ、電子メールなどがある。また、データは、該データを特徴付ける属性の属性情報を有している。データの属性としては、例えば、データの作成者、種類、作成日、作成場所、作成理由、作成方法などがある。
【００１４】
ユーザは、例えば、所望のデータを特徴付ける任意の属性の属性情報を検索条件として指定する。具体的には、例えば、受付部１０１が、入力装置を用いたユーザの操作入力により、任意の属性の属性情報を検索条件として受け付ける。入力装置は、例えば、後述の図５に示すキーボード５１０やマウス５１１などである。
【００１５】
作成部１０２は、受け付けた検索条件（以下、「第１の検索条件」という）で指定された属性情報と関連する他の属性情報を指定する検索条件（以下、「第２の検索条件」という）を作成する。具体的には、例えば、作成部１０２が、属性テーブル１１０を参照することにより、第１の検索条件で指定された属性情報と同一の属性を有する他の属性情報を指定する第２の検索条件を作成する。ここで、属性テーブル１１０の記憶内容について説明する。
【００１６】
図２は、属性テーブルの記憶内容の一例を示す説明図である。図２において、属性テーブル１１０は、属性および属性情報のフィールドを有し、各フィールドに情報を設定することで、属性ごとに、該属性を有する属性情報群が示されている。
【００１７】
属性とは、検索対象となる各データを特徴付ける属性Ａ１〜Ａｍである。属性情報とは、各属性Ａ１〜Ａｍの具体的な内容、例えば、作成者、種類、作成日、作成場所、作成理由、作成方法などである。図２の例では、属性Ａ１の属性情報として、属性情報Ｔ１−１，Ｔ１−２が示されている。また、属性Ａ２の属性情報として、属性情報Ｔ２−１，Ｔ２−２，Ｔ２−３，Ｔ２−４が示されている。
【００１８】
ここで、上記受付部１０１が、第１の検索条件として属性Ａ１の属性情報Ｔ１−１を受け付けた場合を想定する。この場合、作成部１０２が、属性テーブル１１０を参照して、検索条件で指定された属性情報Ｔ１−１と同一の属性Ａ１を有する他の属性情報Ｔ１−２を指定する第２の検索条件を作成する。
【００１９】
なお、同一の属性を有する他の属性情報が複数存在する場合、検索部１０３は、複数存在する他の属性情報の中から任意の属性情報を指定する第２の検索条件を作成してもよい。また、検索部１０３は、複数存在する他の属性情報それぞれを指定する第２の検索条件を作成してもよい。
【００２０】
図１の説明に戻り、検索部１０３は、作成された第２の検索条件に基づいて、検索対象となるデータ群の中からデータを検索する。具体的には、例えば、検索部１０３が、検索対象となるデータ群の中から、第２の検索条件で指定された他の属性情報を有するデータを検索する。
【００２１】
また、検索部１０３は、受け付けた第１の検索条件に基づいて、検索対象となるデータ群の中からデータを検索することにしてもよい。具体的には、例えば、検索部１０３が、検索対象となるデータ群の中から、第１の検索条件で指定された属性情報を有するデータを検索する。
【００２２】
また、受付部１０１は、検索対象となる各データが有する属性ごとに、該属性の属性情報をそれぞれ指定する第１の検索条件を受け付けてもよい。具体的には、例えば、受付部１０１が、各データが有する属性Ａ１〜Ａｍごとに、該属性Ａ１〜Ａｍの属性情報をそれぞれ指定する第１の検索条件を受け付ける。
【００２３】
この場合、作成部１０２は、属性テーブル１１０を参照して、属性Ａ１〜Ａｍごとに、第１の検索条件で指定された属性情報と同一の属性を有する他の属性情報を指定する第２の検索条件をそれぞれ作成する。そして、検索部１０３は、属性Ａ１〜Ａｍごとにそれぞれ作成された第２の検索条件に基づいて、データ群の中からデータを検索する。
【００２４】
具体的には、例えば、検索部１０３が、属性Ａ１〜Ａｍごとに作成された第２の検索条件のうちのいずれかの第２の検索条件で指定された他の属性情報を有するデータを検索してもよい。また、検索部１０３が、属性Ａ１〜Ａｍごとに作成された第２の検索条件で指定された他の属性情報のすべてを有するデータを検索してもよい。
【００２５】
出力部１０４は、検索された検索結果を出力する。具体的には、例えば、出力部１０４が、検索された検索結果を表示画面に表示することにしてもよい。表示画面は、例えば、後述の図５に示すディスプレイ５０９である。この際、出力部１０４は、第１の検索条件の検索結果と第２の検索条件の検索結果を、ユーザが識別可能な状態で表示することにしてもよい。このように、第１の検索条件の検索結果と第２の検索条件の検索結果とを併せて表示することで、ユーザは、自らが指定した検索条件に合致する情報以外にも、ユーザにとって有益かもしれない情報も取得することができる。
【００２６】
また、出力部１０４は、第２の検索条件の検索結果に比べて、第１の検索条件の検索結果を優先的に表示することにしてもよい。より具体的には、例えば、出力部１０４が、第１および第２の検索条件の検索結果を羅列して表す検索結果リストにおいて、第１の検索条件の検索結果を第２の検索条件の検索結果に比べて上位に表示することにしてもよい。
【００２７】
（検索装置１００の検索処理手順）
図３は、実施の形態１にかかる検索装置の検索処理手順の一例を示すフローチャートである。図３のフローチャートにおいて、まず、受付部１０１により、任意の属性の属性情報を指定する第１の検索条件を受け付けたか否かを判断する（ステップＳ３０１）。
【００２８】
ここで、第１の検索条件を受け付けるのを待って（ステップＳ３０１：Ｎｏ）、受け付けた場合（ステップＳ３０１：Ｙｅｓ）、作成部１０２により、属性テーブル１１０を参照して、第１の検索条件で指定された属性情報と同一の属性を有する他の属性情報を指定する第２の検索条件を作成する（ステップＳ３０２）。
【００２９】
つぎに、検索部１０３により、作成された第２の検索条件に基づいて、検索対象となるデータ群の中からデータを検索する（ステップＳ３０３）。また、検索部１０３により、受け付けた第１の検索条件に基づいて、検索対象となるデータ群の中からデータを検索する（ステップＳ３０４）。そして、出力部１０４により、検索された検索結果を出力して（ステップＳ３０５）、本フローチャートによる一連の処理を終了する。
【００３０】
以上説明したように、実施の形態１にかかる検索装置１００によれば、ユーザが指定した検索条件を、関連する特徴を持つ他の検索条件に変換して検索を行うことができる。これにより、ユーザが指定した検索条件に完全に合致しなくてもユーザにとって参考となる可能性がある情報を提供することができる。
【００３１】
例えば、属性Ａ１を『作成者』とし、属性情報Ｔ１−１を『山田太郎』とし、属性情報Ｔ１−２を『鈴木次郎』とする。この『山田太郎』と『鈴木次郎』は、同じ部署に所属する人である。ここで、第１の検索条件として、属性『作成者』の属性情報『山田太郎』を受け付けた場合を想定する。
【００３２】
この場合、属性情報『山田太郎』と同一の属性『作成者』を有する他の属性情報『鈴木次郎』を指定する第２の検索条件が作成されることになる。すなわち、『鈴木次郎』が作成した文書は、『山田太郎』とは異なる部署に所属する人が作成した文書よりも、ユーザにとって参考となる情報の可能性が高い。
【００３３】
そこで、実施の形態１では、『山田太郎』と同じ部署に所属する『鈴木次郎』を指定する第２の検索条件を作成する。これにより、例えば、『山田太郎』が作成した文書以外にも、同じ部署に所属する『鈴木次郎』が作成した文書を検索することができ、ユーザが指定した検索条件に完全に合致しなくてもユーザにとって参考となる可能性がある情報を提供することができる。
【００３４】
（実施の形態２）
つぎに、実施の形態２にかかる検索システム４００について説明する。実施の形態２では、検索システム４００の一実施例として、ＰＤＭ（Ｐｒｏｄｕｃｔ  Ｄａｔａ  Ｍａｎａｇｅｍｅｎｔ）システムを例に挙げて説明する。なお、実施の形態１で説明した箇所と同一箇所については、同一符号を付して説明を省略する。
【００３５】
図４は、実施の形態２にかかる検索システムの一実施例を示す説明図である。図４において、検索システム４００は、検索装置４０１および複数のクライアント端末４０２を含む構成である。検索システム４００において、検索装置４０１と複数のクライアント端末４０２は、インターネット、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）、ＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）などのネットワーク４１０を介して通信可能に接続されている。
【００３６】
ここで、検索システム４００は、例えば、工業製品の開発工程において、設計・開発に関わる情報を一元化して管理し、開発工程の効率化や期間の短縮化を図るＰＤＭシステムである。具体的には、例えば、検索システム４００では、ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）データなどの図面データ、仕様書データなどの文書データ、製品に含まれる部品の構成データなどを管理する。
【００３７】
検索装置４０１は、検索対象となるデータ群を格納するデータベースを備え、データベースの中からデータを検索するコンピュータである。データベースは、例えば、品目マスタ４０３および文書マスタ４０４である。具体的には、例えば、検索装置４０１は、ネットワーク４１０を介して、クライアント端末４０２から検索条件を受け付けて、検索対象となるデータ群の中から検索条件に適合するデータを検索する。なお、品目マスタ４０３および文書マスタ４０４についての詳細な説明は、図６および図７を用いて後述する。
【００３８】
クライアント端末４０２は、検索システム４００を利用するユーザが用いるコンピュータである。クライアント端末４０２は、ユーザによる検索条件の入力を受け付けて、検索条件を検索装置４０１に送信する。その結果、クライアント端末４０２は、検索装置４０１から検索結果を受信して、検索結果を表示画面に表示する。
【００３９】
以下の説明では、検索対象となるデータ群を「データ群Ｄ１〜Ｄｎ」と表記し、データ群Ｄ１〜Ｄｎのうち任意のデータを「データＤｉ」と表記する（ｉ＝１，２，…，ｎ）。
【００４０】
つぎに、図５を用いて、図４に示した検索装置４０１およびクライアント端末４０２のハードウェア構成について説明する。図５の説明では、図４に示した検索装置４０１およびクライアント端末４０２を、単に「コンピュータ」と称する。
【００４１】
（コンピュータのハードウェア構成）
図５は、実施の形態２にかかるコンピュータのハードウェア構成を示すブロック図である。図５において、コンピュータは、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）５０１と、ＲＯＭ（Ｒｅａｄ‐Ｏｎｌｙ  Ｍｅｍｏｒｙ）５０２と、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）５０３と、磁気ディスクドライブ５０４と、磁気ディスク５０５と、光ディスクドライブ５０６と、光ディスク５０７と、Ｉ／Ｆ（Ｉｎｔｅｒｆａｃｅ）５０８と、ディスプレイ５０９と、キーボード５１０と、マウス５１１と、を備えている。また、各構成部はバス５００によってそれぞれ接続されている。
【００４２】
ここで、ＣＰＵ５０１は、コンピュータの全体の制御を司る。ＲＯＭ５０２は、ブートプログラムなどのプログラムを記憶している。ＲＡＭ５０３は、ＣＰＵ５０１のワークエリアとして使用される。磁気ディスクドライブ５０４は、ＣＰＵ５０１の制御にしたがって磁気ディスク５０５に対するデータのリード／ライトを制御する。磁気ディスク５０５は、磁気ディスクドライブ５０４の制御で書き込まれたデータを記憶する。
【００４３】
光ディスクドライブ５０６は、ＣＰＵ５０１の制御にしたがって光ディスク５０７に対するデータのリード／ライトを制御する。光ディスク５０７は、光ディスクドライブ５０６の制御で書き込まれたデータを記憶したり、光ディスク５０７に記憶されたデータをコンピュータに読み取らせたりする。
【００４４】
Ｉ／Ｆ５０８は、通信回線を通じてＬＡＮ、ＷＡＮ、インターネットなどのネットワーク４１０に接続され、このネットワーク４１０を介して他の装置に接続される。そして、Ｉ／Ｆ５０８は、ネットワーク４１０と内部のインターフェースを司り、外部装置からのデータの入出力を制御する。Ｉ／Ｆ５０８には、たとえばモデムやＬＡＮアダプタなどを採用することができる。
【００４５】
ディスプレイ５０９は、カーソル、アイコンあるいはツールボックスをはじめ、文書、画像、機能情報などのデータを表示する。このディスプレイ５０９は、たとえば、ＣＲＴ、ＴＦＴ液晶ディスプレイ、プラズマディスプレイなどを採用することができる。
【００４６】
キーボード５１０は、文字、数字、各種指示などの入力のためのキーを備え、データの入力をおこなう。また、タッチパネル式の入力パッドやテンキーなどであってもよい。マウス５１１は、カーソルの移動や範囲選択、あるいはウィンドウの移動やサイズの変更などをおこなう。ポインティングデバイスとして同様に機能を備えるものであれば、トラックボールやジョイスティックなどであってもよい。
【００４７】
なお、検索装置４０１は、上述したディスプレイ５０９、キーボード５１０およびマウス５１１を含まない構成としてもよい。また、クライアント端末４０２は、画像を読み取って画像データを取り込むスキャナや、画像データや文書データを印刷するプリンタを含む構成としてもよい。
【００４８】
（各種テーブル等の記憶内容）
以下、図６〜図１０を用いて、検索装置４０１が備える各種テーブル等の記憶内容について説明する。各種テーブル等は、例えば、図５に示した検索装置４０１のＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置により実現される。
【００４９】
＜品目マスタ４０３の記憶内容＞
図６は、品目マスタの記憶内容の一例を示す説明図である。図６において、品目マスタ４０３は、データＩＤ、番号、種類、作成日、作成者、作成理由、作成方法、作成場所および品質のフィールドを有する。各フィールドに情報を設定することで、製品の品目に関する品目情報６００−１〜６００−ｎがレコードとして記憶されている。
【００５０】
ここで、品目情報６００−１〜６００−ｎは、検索対象となるデータ群Ｄ１〜Ｄｎである。各フィールドの内容は、品目情報６００−１〜６００−ｎを特徴付ける各属性の属性情報である。具体的には、データＩＤは、各品目情報６００−１〜６００−ｎの識別子である。番号は、調達、生産、保管、販売する製品の識別子である。
【００５１】
種類は、データＤｉの種類である。種類としては、例えば、製品の種類を特定する機種、ユニット、部品などが設定される。作成日は、データＤｉの作成日である。作成者は、データＤｉの作成者である。作成理由は、データＤｉを作成する契機となった理由である。作成理由としては、例えば、製品の新規作成、製品の修正、製品に対する障害対応、製品の性能改善、製品のコスト削減などがある。
【００５２】
作成方法は、データＤｉを作成した方法である。作成方法としては、例えば、新規作成、他データの流用、他システムからの取り込み、システムによる自動作成などがある。作成場所は、データＤｉを作成した場所である。作成場所としては、例えば、データＤｉの作成者が用いたクライアント端末４０２のＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスなどが設定される。品質は、製品の品質を表す指標値である。ここでは顧客からのクレーム数によって品質を表しており、数値が低いほど品質が高いことを表している。
【００５３】
品目情報６００−１を例に挙げると、データＩＤは『Ｄ１』、番号は『Ｐａｒｔ１』、種類は『機種』、作成日は『２０１０／５／１』、作成者は『Ｕ１』、作成理由は『Ｒ１』、作成方法は『Ｍ１』、作成場所は『１０．６７．ｘｘｘ．ｘｘ』、品質は『０』である。
【００５４】
＜文書マスタ４０４の記憶内容＞
図７は、文書マスタの記憶内容の一例を示す説明図である。図７において、文書マスタ４０４は、データＩＤ、番号、種類、作成日、作成者、作成理由、作成方法、作成場所および品質のフィールドを有する。各フィールドに情報を設定することで、製品に関する文書情報７００−１〜７００−ｎがレコードとして記憶されている。
【００５５】
ここで、文書情報７００−１〜７００−ｎは、検索対象となるデータ群Ｄ１〜Ｄｎである。各フィールドの内容は、文書情報７００−１〜７００−ｎを特徴付ける各属性の属性情報である。具体的には、データＩＤは、各文書情報７００−１〜７００−ｎのレコードの識別子である。番号は、調達、生産、保管、販売する製品に関する電子文書の識別子である。製品に関する電子文書としては、例えば、ＣＡＤデータ、仕様書データ、契約書データなどがある。
【００５６】
種類は、データＤｉの種類である。種類としては、例えば、製品に関する電子文書の種類を表す部品表、２Ｄ図面、３Ｄ図面、設計変更連絡表などが設定される。作成日は、データＤｉの作成日である。作成者は、データＤｉの作成者である。作成理由は、データＤｉを作成する契機となった理由である。作成理由としては、例えば、製品の新規作成、製品の修正、製品に対する障害対応、製品の性能改善、製品のコスト削減などがある。
【００５７】
作成方法は、データＤｉを作成した方法である。作成方法としては、例えば、新規作成、他データの流用、他システムからの取り込み、システムによる自動作成などがある。作成場所は、データＤｉを作成した場所である。作成場所としては、例えば、データＤｉの作成者が用いたクライアント端末４０２のＩＰアドレスなどが設定される。品質は、製品の品質を表す指標値である。ここでは顧客からのクレーム数によって品質を表しており、数値が低いほど品質が高いことを表している。
【００５８】
文書情報７００−１を例に挙げると、データＩＤは『Ｄ１』、品番は『Ｄｏｃ１』、種類は『部品表』、作成日は『２０１０／２／１』、作成者は『Ｕ１』、作成理由は『Ｒ１０』、作成方法は『Ｍ４』、作成場所は『１０．６７．ｘｘｘ．ｘｘ』、品質は『０』である。
【００５９】
＜ユーザ分類テーブル８００の記憶内容＞
図８は、ユーザ分類テーブルの記憶内容の一例を示す説明図である。図８において、ユーザ分類テーブル８００は、グループＩＤおよびユーザＩＤのフィールドを有し、各フィールドに情報を設定することで、グループ情報（例えば、グループ情報８００−１，８００−２）をレコードとして記憶している。
【００６０】
ここで、グループＩＤは、検索システム４００を利用するユーザ群を分類するグループの識別子である。ユーザＩＤは、検索システム４００を利用するユーザの識別子である。一分類例として、検索システム４００を利用するユーザ群は、例えば、会社内の部署などの組織上の区分や、本店、支店などの地理的な区分によって分類される。
【００６１】
すなわち、ユーザ分類テーブル８００内のグループ情報は、例えば、業務内容が類似しているため直面する課題が類似している可能性が高いユーザの集合を表している。グループ情報８００−１を例に挙げると、グループ『ＵＧ１』に属するユーザは『Ｕ１，Ｕ２，Ｕ３』である。これは、ユーザＵ１，Ｕ２，Ｕ３は、業務内容が類似し、直面する課題が互いに類似している可能性が高いことを表している。
【００６２】
＜作成理由分類テーブル９００の記憶内容＞
図９は、作成理由分類テーブルの記憶内容の一例を示す説明図である。図９において、作成理由分類テーブル９００は、グループＩＤおよび作成理由のフィールドを有し、各フィールドに情報を設定することで、グループ情報（例えば、グループ情報９００−１〜９００−３）をレコードとして記憶している。
【００６３】
ここで、グループＩＤは、図６および図７に示した品目マスタ４０３、文書マスタ４０４内の各データＤｉの作成理由を分類するグループの識別子である。作成理由は、各データＤｉを作成する契機となった理由である。一分類例として、『製品の修正』と『製品に対する障害対応』の作成理由が同一グループに分類され、また、『製品の性能改善』と『製品のコスト削減』の作成理由が同一グループに分類される。
【００６４】
すなわち、作成理由分類テーブル９００内のグループ情報は、各データＤｉを作成する契機となった理由が類似している作成理由の集合を表している。グループ情報９００−２を例に挙げると、グループ『ＲＧ２』に属する作成理由は『Ｒ２，Ｒ３』である。これは、作成理由Ｒ２，Ｒ３は、データＤｉを作成する契機となった理由が類似していることを表している。
【００６５】
＜作成方法分類テーブル１０００の記憶内容＞
図１０は、作成方法分類テーブルの記憶内容の一例を示す説明図である。図１０において、作成方法分類テーブル１０００は、グループＩＤおよび作成方法のフィールドを有し、各フィールドに情報を設定することで、グループ情報（例えば、グループ情報１０００−１〜１０００−３）をレコードとして記憶している。
【００６６】
ここで、グループＩＤは、図６および図７に示した品目マスタ４０３、文書マスタ４０４内の各データＤｉの作成方法を分類するグループの識別子である。作成方法は、各データＤｉの作成方法である。一分類例として、『新規作成』と『他製品の流用』の作成方法が同一グループに分類される。
【００６７】
すなわち、作成方法分類テーブル１０００内のグループ情報は、各データＤｉを作成した方法が類似している作成方法の集合を表している。グループ情報１０００−１を例に挙げると、グループ『ＭＧ１』に属する作成方法は『Ｍ１，Ｍ２』である。これは、作成方法Ｍ１，Ｍ２は、データＤｉを作成する方法が類似していることを表している。
【００６８】
なお、上述した説明では、各種テーブル等は検索装置４０１が備えることにしたが、これに限らない。例えば、検索システム４００が各種テーブル等を備えるデータベースサーバを含むことにしてもよい。この場合、検索装置４０１は、データベースサーバにアクセスすることで、各種テーブル等の記憶内容を参照する。
【００６９】
（検索条件入力画面の具体例）
つぎに、図１１を用いて、クライアント端末４０２のディスプレイ５０９に表示される検索条件入力画面１１００について説明する。検索条件入力画面１１００は、検索システム４００を利用するユーザが所望のデータを検索するための検索条件を入力する際にクライアント端末４０２のディスプレイ５０９に表示される。
【００７０】
図１１は、検索条件入力画面の具体例を示す説明図である。図１１において、検索条件入力画面１１００は、検索条件を指定するためのボックス１１０１〜１１０７と、検索ボタンＢ１と、クリアボタンＢ２とを有する。
【００７１】
検索条件入力画面１１００において、図５に示したキーボード５１０やマウス５１１を用いたユーザの操作入力により、カーソルＣを移動させて各ボックス１１０１〜１１０７をクリックすることにより、属性ごとの検索条件を入力することができる。
【００７２】
具体的には、カーソルＣを移動させてボックス１１０１をクリックすると、検索条件として、製品の番号や製品に関する電子文書の番号を入力することができる。カーソルＣを移動させてボックス１１０２をクリックすると、検索条件として、検索対象となるデータＤｉの種類を入力することができる。
【００７３】
カーソルＣを移動させてボックス１１０３をクリックすると、検索条件として、検索対象となるデータＤｉの作成者を入力することができる。カーソルＣを移動させてボックス１１０４をクリックすると、検索条件として、検索対象となるデータＤｉの作成日を入力することができる。カーソルＣを移動させてボックス１１０５をクリックすると、検索条件として、検索対象となるデータＤｉの作成理由を入力することができる。
【００７４】
カーソルＣを移動させてボックス１１０６をクリックすると、検索条件として、検索対象となるデータＤｉの作成方法を入力することができる。カーソルＣを移動させてボックス１１０７をクリックすると、検索条件として、検索対象となるデータＤｉの作成場所を入力することができる。
【００７５】
また、検索条件の入力が終了した場合、カーソルＣを移動させて検索ボタンＢ１をクリックすると、入力した検索条件に基づく検索が行われ、その検索結果がディスプレイ５０９に表示される。なお、カーソルＣを移動させてクリアボタンＢ２をクリックすると、既に入力済みの検索条件がリセットされる。
【００７６】
図１２は、検索条件の入力例を示す説明図である。図１２において、検索条件入力画面１１００のボックス１１０２に『部品』が入力され、ボックス１１０３に『Ｕ１』が入力され、ボックス１１０４に『２０１０／６／１』が入力されている。
【００７７】
ここで、検索ボタンＢ１がクリックされると、検索対象となるデータＤｉの種類『部品』、作成者『Ｕ１』および作成日『２０１０／６／１』が検索条件１２００として指定され、クライアント端末４０２から検索装置４０１に検索条件１２００が送信される。
【００７８】
なお、以下の説明では、検索装置４０１は、検索条件として、製品の番号（Ｐａｒｔ♯）や製品の種類（機種、ユニットなど）が指定された場合、品目マスタ４０３内の品目情報６００−１〜６００−ｎを検索対象として検索を行う（♯＝１，２，…）。また、検索装置４０１は、検索条件として、電子文書の番号（Ｄｏｃ♯）や電子文書の種類（部品表、２Ｄ図面など）が指定された場合、文書マスタ４０４内の文書情報７００−１〜７００−ｎを検索対象として検索を行う。
【００７９】
（検索装置４０１の機能的構成）
図１３は、実施の形態２にかかる検索装置の機能的構成を示すブロック図である。図１３において、検索装置４０１は、受付部１０１と、検索部１０３と、出力部１０４と、特定部１３０１と、第１の算出部１３０２と、第２の算出部１３０３と、を含む構成である。各機能部は、具体的には、たとえば、検索装置４０１のＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されたプログラムをＣＰＵ５０１に実行させることにより、または、Ｉ／Ｆ５０８により、その機能を実現する。また、各機能部の処理結果は、特に指定する場合を除いて、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶される。
【００８０】
まず、受付部１０１は、検索条件を受け付ける。ここで、検索条件は、例えば、図１２に示した検索条件１２００であり、検索対象となるデータＤｉを特徴付ける属性の属性情報を指定するものである。具体的には、例えば、受付部１０１が、ネットワーク４１０を介して、クライアント端末４０２から検索条件１２００を受信することで受け付ける。また、受付部１０１が、検索装置４０１のキーボード５１０やマウス５１１を用いたユーザの操作入力により、検索装置４０１に直接入力された検索条件を受け付けてもよい。
【００８１】
特定部１３０１は、検索対象となる各データＤｉを特徴付ける属性ごとに、受け付けた検索条件で指定された属性の属性情報と各データＤｉの属性の属性情報との類似度を特定する。具体的には、例えば、特定部１３０１が、同一の属性を有する属性情報間の類似度を規定するテーブルを参照することにより、各データＤｉの属性ごとの類似度を特定する。なお、特定部１３０１の具体的な処理内容については、図１４を用いて後述する。
【００８２】
第１の算出部１３０２は、特定された各データＤｉの属性ごとの類似度に基づいて、検索条件で指定された属性をベクトル要素として検索条件および各データＤｉを多次元ベクトル化することにより、検索条件と各データＤｉとのベクトル間距離Ｌｉを算出する。ベクトル間距離Ｌｉは、検索条件とデータＤｉとの類似度を表している。ベクトル間距離Ｌｉが小さいデータＤｉほど、検索条件に類似（適合）している。なお、第１の算出部１３０２の具体的な処理内容については、図１６を用いて後述する。
【００８３】
検索部１０３は、算出された各データＤｉのベクトル間距離Ｌｉに基づいて、検索対象となるデータ群Ｄ１〜Ｄｎの中からデータを検索する。具体的には、例えば、検索部１０３が、データ群Ｄ１〜Ｄｎの中から、ベクトル間距離Ｌｉが最小のデータＤｉを検索してもよい。検索部１０３による検索処理は、例えば、予め設定された個数（例えば、ｍ個）の検索結果が得られるまで繰り返し行われる。
【００８４】
出力部１０４は、検索された検索結果を出力する。具体的には、例えば、出力部１０４が、ネットワーク４１０を介して、検索された検索結果をクライアント端末４０２に送信する。この結果、クライアント端末４０２のディスプレイ５０９に検索結果が表示されることになる。なお、クライアント端末４０２のディスプレイ５０９に表示される画面例については、図２０を用いて後述する。
【００８５】
また、出力部１０４の他の出力形式として、例えば、検索装置４０１のディスプレイ５０９への表示、不図示のプリンタへの印刷出力などがある。また、出力部１０４が、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶領域に検索結果を記憶することとしてもよい。
【００８６】
＜特定部１３０１の具体的処理内容＞
ここで、上記特定部１３０１の具体的な処理内容の一例について説明する。まず、同一の属性を有する属性情報間の類似度を規定する類似度定義テーブル１４００について説明する。類似度定義テーブル１４００は、例えば、ＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されている。
【００８７】
図１４は、類似度定義テーブルの記憶内容の一例を示す説明図である。図１４において、類似度定義テーブル１４００は、属性、関係および類似度のフィールドを有し、各フィールドに情報を設定することで、類似度定義情報１４００−１〜１４００−６をレコードとして記憶している。
【００８８】
ここで、属性は、検索対象となるデータＤｉを特徴付ける属性である。関係は、同一の属性を有する属性情報間の関係である。類似度は、同一の属性を有する属性情報間の類似度である。類似度は、値が大きいほど類似している度合いが大きいことを表す。類似度の最小値は「０」であり、最大値は「１」である。
【００８９】
類似度定義情報１４００−１を例に挙げると、『作成者』の属性を有する属性情報間の類似度が示されている。具体的には、属性情報間の関係が、『同一ユーザ』であれば類似度は『１』、『同一グループ』であれば類似度は『０．６』、『その他』であれば類似度は『０』である。上記特定部１３０１は、例えば、類似度定義テーブル１４００を参照することにより、検索対象となる各データＤｉの属性ごとの類似度を特定する。
【００９０】
ここで、検索対象となるデータＤｉとして品目マスタ４０３内の品目情報６００−１を例に挙げ、検索条件１２００を受け付けた場合を例に挙げて、特定部１３０１の具体的な処理内容の一例について説明する。
【００９１】
以下の説明では、検索条件で指定された複数の属性を「属性Ａ１〜ＡＫ」と表記し、属性Ａ１〜ＡＫのうち任意の属性を「属性Ａｋ」と表記する（ｋ＝１，２，…，Ｋ）。また、検索条件とデータＤｉとの属性Ａｋの属性情報間の類似度を「類似度Ｒi（ｋ）」と表記する。
【００９２】
まず、特定部１３０１は、検索条件１２００で指定された属性Ａ１〜ＡＫを特定する。検索条件１２００では、例えば、属性Ａ１は『種類』、属性Ａ２は『作成者』、属性Ａ３は『作成日』となる。つぎに、特定部１３０１は、属性Ａ１に着目して、検索条件１２００で指定された属性Ａ１の属性情報と品目情報６００−１の属性Ａ１の属性情報との関係を特定する。
【００９３】
ここで、検索条件１２００で指定された属性Ａ１の属性情報は『部品』であり、品目情報６００−１の属性Ａ１の属性情報は『機種』である。したがって、検索条件１２００で指定された属性Ａ１の属性情報と品目情報６００−１の属性Ａ１の属性情報との関係は『その他』となる。
【００９４】
このあと、特定部１３０１は、類似度定義テーブル１４００を参照して、属性が『種類』でかつ関係が『その他』の類似度を特定する。ここでは、類似度は『０』である。この結果、特定部１３０１は、検索条件１２００で指定された属性Ａ１の属性情報と品目情報６００−１の属性Ａ１の属性情報との類似度Ｒ1（１）を『Ｒ1（１）＝０』と特定する。
【００９５】
つぎに、特定部１３０１は、属性Ａ２に着目して、検索条件１２００で指定された属性Ａ２の属性情報と品目情報６００−１の属性Ａ２の属性情報との関係を特定する。ここで、検索条件１２００で指定された属性Ａ２の属性情報は『Ｕ１』であり、品目情報６００−１の属性Ａ２の属性情報は『Ｕ１』である。したがって、検索条件１２００で指定された属性Ａ２の属性情報と品目情報６００−１の属性Ａ２の属性情報との関係は『同一ユーザ』となる。
【００９６】
このあと、特定部１３０１は、類似度定義テーブル１４００を参照して、属性が『作成者』でかつ関係が『同一ユーザ』の類似度を特定する。ここでは、類似度は『１』である。この結果、特定部１３０１は、検索条件１２００で指定された属性Ａ２の属性情報と品目情報６００−１の属性Ａ２の属性情報との類似度Ｒ1（２）を『Ｒ1（２）＝１』と特定する。
【００９７】
そして、特定部１３０１は、属性Ａ３に着目して、検索条件１２００で指定された属性Ａ３の属性情報と品目情報６００−１の属性Ａ３の属性情報との関係を特定する。ここで、検索条件１２００で指定された属性Ａ３の属性情報は『２０１０／６／１』であり、品目情報６００−１の属性Ａ３の属性情報は『２０１０／５／１』である。したがって、検索条件１２００で指定された属性Ａ３の属性情報と品目情報６００−１の属性Ａ３の属性情報との関係は『２ヶ月以内』となる。
【００９８】
このあと、特定部１３０１は、類似度定義テーブル１４００を参照して、属性が『作成日』でかつ関係が『２ヶ月以内』の類似度を特定する。ここでは、類似度は『０．７』である。この結果、検索条件１２００で指定された属性Ａ３の属性情報と品目情報６００−１の属性Ａ３の属性情報との類似度Ｒ1（３）を『Ｒ1（３）＝０．７』と特定する。
【００９９】
・属性『作成者』について
また、特定部１３０１は、属性『作成者』について、検索条件で指定された属性情報と検索対象となるデータＤｉの属性情報との関係が『同一ユーザ』ではない場合、図８に示したユーザ分類テーブル８００を参照して、属性情報間の関係を特定する。
【０１００】
具体的には、例えば、まず、特定部１３０１が、ユーザ分類テーブル８００を参照して、検索条件で指定された属性情報が示すユーザが属するグループＵＧを特定する。つぎに、特定部１３０１が、検索対象となるデータＤｉの属性情報が示すユーザが、特定されたグループＵＧに属するか否かを判定する。ここで、グループＵＧに属する場合、特定部１３０１が、属性情報間の関係『同一グループ』を特定する。一方、グループＵＧに属さない場合、特定部１３０１が、属性情報間の関係『その他』を特定する。
【０１０１】
・属性『作成理由』について
また、特定部１３０１は、属性『作成理由』について、検索条件で指定された属性情報と検索対象となるデータＤｉの属性情報との関係が『同一理由』ではない場合、図９に示した作成理由分類テーブル９００を参照して、属性情報間の関係を特定する。
【０１０２】
具体的には、例えば、まず、特定部１３０１が、作成理由分類テーブル９００を参照して、検索条件で指定された属性情報が示す作成理由が属するグループＲＧを特定する。つぎに、特定部１３０１が、検索対象となるデータＤｉの属性情報が示す作成理由が、特定されたグループＲＧに属するか否かを判定する。ここで、グループＲＧに属する場合、特定部１３０１が、属性情報間の関係『同一グループ』を特定する。一方、グループＲＧに属さない場合、特定部１３０１が、属性情報間の関係『その他』を特定する。
【０１０３】
・属性『作成方法』について
また、特定部１３０１は、属性『作成方法』について、検索条件で指定された属性情報と検索対象となるデータＤｉの属性情報との関係が『同一方法』ではない場合、図１０に示した作成方法分類テーブル１０００を参照して、属性情報間の関係を特定する。
【０１０４】
具体的には、例えば、まず、特定部１３０１が、作成方法分類テーブル１０００を参照して、検索条件で指定された属性情報が示す作成方法が属するグループＭＧを特定する。つぎに、特定部１３０１が、検索対象となるデータＤｉの属性情報が示す作成方法が、特定されたグループＭＧに属するか否かを判定する。ここで、グループＭＧに属する場合、特定部１３０１が、属性情報間の関係『同一グループ』を特定する。一方、グループＭＧに属さない場合、特定部１３０１が、属性情報間の関係『その他』を特定する。
【０１０５】
特定された各データＤｉを特徴付ける属性Ａｋごとの類似度Ｒi（ｋ）は、例えば、図１５に示す類似度テーブル１５００に記憶される。類似度テーブル１５００は、例えば、ＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置により実現される。
【０１０６】
図１５は、類似度テーブルの記憶内容の一例を示す説明図である。図１５において、類似度テーブル１５００は、検索対象となる各データＤｉの属性Ａｋごとの類似度Ｒi（ｋ）を有している。
【０１０７】
上述した検索条件１２００と品目情報６００−１の例では、類似度テーブル１５００内のデータＤ１の属性Ａ１の類似度Ｒ1（１）は、『Ｒ1（１）＝０』である。また、データＤ１の属性Ａ２の類似度Ｒ1（２）は、『Ｒ1（２）＝１』である。また、データＤ１の属性Ａ３の類似度Ｒ1（３）は、『Ｒ1（３）＝０．７』である。
【０１０８】
＜第１の算出部１３０２の具体的処理内容＞
つぎに、検索条件とデータＤｉとのベクトル間距離Ｌｉを算出する第１の算出部１３０２の具体的な処理内容の一例について説明する。ここでは、検索条件として、図１２に示した検索条件１２００を、データＤｉとして、品目マスタ４０３内の品目情報６００−１を例に挙げて説明する。
【０１０９】
図１６は、ベクトル間距離の算出例を示す説明図（その１）である。（ｉ）第１の算出部１３０２は、図１７に示す軸定義テーブル１７００を参照することにより、検索条件で指定された各属性Ａｋに対応する軸を特定する。ここで、軸定義テーブル１７００について説明する。軸定義テーブル１７００は、例えば、ＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されている。
【０１１０】
図１７は、軸定義テーブルの記憶内容の一例を示す説明図である。図１７において、軸定義テーブル１７００は、軸、属性および重要度のフィールドを有し、各フィールドに情報を設定することで、軸定義情報１７００−１〜１７００−７をレコードとして記憶している。
【０１１１】
ここで、軸は、直交座標系における各次元のベクトル成分を示す直線である。属性は、検索対象となるデータＤｉを特徴付ける属性である。重要度は、各属性の重要度を表す指標値である。ここでは、値が小さいほど重要度が高いことを表している。各属性の重要度は任意に設定可能である。具体的には、例えば、各属性の重要度は、検索条件との類似判断において優先すべき属性に高い重要度が設定される。一例を挙げると、『作成者』より『種類』が検索条件と類似しているデータＤｉを検索したい場合、属性『作成者』に比べて属性『種類』の重要度が高く設定される。
【０１１２】
各軸は、いわゆる５Ｗ１Ｈ（Ｗｈｏ，Ｗｈｅｎ，Ｗｈａｔ，Ｗｈｅｒｅ，Ｗｈｙ，Ｈｏｗ）と称される意思決定に関わる各要因および製品の品質を表している。具体的には、Ｗｈｏ軸は、検索対象となるデータＤｉを誰が作成したのかを表す属性『作成者』に対応している。
【０１１３】
Ｗｈｅｎ軸は、検索対象となるデータＤｉをいつ作成したのかを表す属性『作成日』に対応している。Ｗｈａｔ軸は、検索対象となるデータＤｉは何に関するものかを表す属性『種類』や『番号』に対応している。Ｗｈｅｒｅ軸は、検索対象となるデータＤｉをどこで作成したのかを表す属性『作成場所』に対応している。
【０１１４】
Ｗｈｙ軸は、検索対象となるデータＤｉをなぜ作成したのかを表す属性『作成理由』に対応している。Ｈｏｗ軸は、検索対象となるデータＤｉをどのように作成したのかを表す属性『作成方法』に対応している。Ｑｕａｌｉｔｙ軸は、製品の品質を表す属性『品質』に対応している。
【０１１５】
検索条件１２００の例では、第１の算出部１３０２が、軸定義テーブル１７００を参照して、検索条件１２００で指定された属性Ａ１『種類』に対応する軸『Ｗｈａｔ』を特定する。また、第１の算出部１３０２が、軸定義テーブル１７００を参照して、検索条件１２００で指定された属性Ａ２『作成者』に対応する軸『Ｗｈｏ』を特定する。
【０１１６】
また、第１の算出部１３０２が、軸定義テーブル１７００を参照して、検索条件１２００で指定された属性Ａ３『作成日』に対応する軸『Ｗｈｅｎ』を特定する。これにより、各属性Ａ１〜Ａ３に対応するＷｈａｔ軸、Ｗｈｏ軸およびＷｈｅｎ軸により、３次元の直交座標系１６００が定義される。
【０１１７】
（ｉｉ）第１の算出部１３０２は、特定された各属性Ａｋに対応する軸を原点から放射状に伸ばした直交座標系１６００において、検索条件を表すベクトル（以下、「基準ベクトルＳＶ」という）を作成する。具体的には、例えば、第１の算出部１３０２が、各属性Ａｋに対応する軸の成分を「１」とする基準ベクトルＳＶを作成する。
【０１１８】
すなわち、基準ベクトルＳＶを成分表示すると下記式（１）のように表現することができる。ただし、ＳＶは、基準ベクトルＳＶの成分表示を表している。また、Ａ１〜ＡＫは、各属性Ａ１〜ＡＫに対応する軸の成分を表している。
【０１１９】
ＳＶ＝（Ａ１，Ａ２，…，ＡＫ）＝（１，１，…，１）      ・・・（１）
【０１２０】
検索条件１２００の例では、第１の算出部１３０２が、直交座標系１６００において、各属性Ａ１〜Ａ３に対応するＷｈａｔ軸、Ｗｈｏ軸およびＷｈｅｎ軸の成分を「１」とする基準ベクトルＳＶを作成する。
【０１２１】
（ｉｉｉ）第１の算出部１３０２は、検索対象となるデータＤｉを表すベクトル（以下、「比較ベクトルＶｉ」という）を作成する。具体的には、例えば、第１の算出部１３０２が、各属性Ａｋに対応する軸の成分を、属性Ａｋの類似度Ｒi（ｋ）とする比較ベクトルＶｉを作成する。
【０１２２】
すなわち、比較ベクトルＶｉを成分表示すると下記式（２）のように表現することができる。ただし、Ｖｉは、比較ベクトルＶｉの成分表示を表している。また、Ａ１〜ＡＫは、各属性Ａ１〜ＡＫに対応する軸の成分を表している。また、Ｒi（１）〜Ｒi（Ｋ）は、検索条件とデータＤｉとの属性Ａ１〜ＡＫごとの属性情報間の類似度である。
【０１２３】
Ｖｉ＝（Ａ１，Ａ２，…，ＡＫ）＝（Ｒi（１），Ｒi（２），…，Ｒi（Ｋ））
・・・（２）
【０１２４】
品目情報６００−１の例では、第１の算出部１３０２が、直交座標系１６００において、各属性Ａ１〜Ａ３に対応するＷｈａｔ軸、Ｗｈｏ軸およびＷｈｅｎ軸の成分をそれぞれ「０」、「１」および「０．７」とする比較ベクトルＶ１を作成する。
【０１２５】
（ｉｖ）第１の算出部１３０２は、作成された基準ベクトルＳＶと比較ベクトルＶｉとのベクトル間距離Ｌｉを算出する。具体的には、例えば、第１の算出部１３０２が、下記式（３）を用いて、基準ベクトルＳＶと比較ベクトルＶｉとのベクトル間距離Ｌｉを算出することができる。ただし、Ｌｉは、基準ベクトルＳＶと比較ベクトルＶｉとのベクトル間距離である。
【０１２６】
【数１】
0005903757.tif 000002
【０１２７】
検索条件１２００と品目情報６００−１の例では、基準ベクトルＳＶと比較ベクトルＶ１とのベクトル間距離Ｌ１は『Ｌ１≒１．０４４』となる。上記（ｉｉｉ）および（ｉｖ）の処理は、例えば、品目マスタ４０３内の品目情報６００−２〜６００−ｎについても同様に行われる。
【０１２８】
この結果、検索条件１２００と品目マスタ４０３内の各品目情報６００−１〜６００−ｎとのベクトル間距離Ｌ１〜Ｌｎが算出される。そして、上記検索部１０３は、算出されたベクトル間距離Ｌ１〜Ｌｎに基づいて、品目マスタ４０３の中から検索条件１２００に適合する品目情報を検索することになる。
【０１２９】
これにより、ユーザによって指定された検索条件と完全に合致しなくても、ユーザにとって参考となる可能性があるデータＤｉを検索することができる。この際、人の意思決定に関わる各要因をベクトル要素として多次元ベクトル化して類似度Ｒi（ｋ）を求めることで、検索者と同様の状況下にあった作成者によって作成された文書や図面などを検索者に提供することができる。
【０１３０】
・ベクトル間距離が等しいデータ間の優先順位
上記検索部１０３が、ベクトル間距離Ｌｉが最小のデータＤｉを検索する場合、ベクトル間距離が最小となるデータが複数存在することがある。これでは、検索部１０３は、ベクトル間距離が最小の複数のデータ（以下、「データＤ［１］〜Ｄ［Ｔ］」という）のうち、どのデータが検索条件に最も適合しているのか判断することができない。
【０１３１】
そこで、データＤ［１］〜Ｄ［Ｔ］のうち、検索条件で指定された属性Ａ１〜ＡＫの特定の属性（以下、「属性ＡＰ」という）について、より検索条件と類似しているデータを最も検索条件に適合しているデータとして扱う。以下、ベクトル間距離が等しいデータ間の優先順位を決める具体的な処理内容の一例について説明する。
【０１３２】
図１８は、ベクトル間距離の算出例を示す説明図（その２）である。図１８において、（ｉ）基準ベクトルＳＶとのベクトル間距離が等しい比較ベクトルＶｘと比較ベクトルＶｙとが示されている。比較ベクトルＶｘは、データＤｘを表すベクトルである。比較ベクトルＶｙは、データＤｙを表すベクトルである。
【０１３３】
（ｉｉ）第２の算出部１３０３は、特定の属性ＡＰを表す軸をベクトル化する。具体的には、例えば、第２の算出部１３０３が、属性Ａ１〜ＡＫのうち特定の属性ＡＰを表す軸の成分を「１」とし、それ以外の属性を表す軸の成分を「０」とするベクトル（以下、「軸ベクトルＰＶ」という）を作成する。
【０１３４】
ここで、特定の属性ＡＰは、例えば、属性Ａ１〜ＡＫのうちデータ検索における重要度が最も高い属性である。検索条件１２００の例では、属性Ａ１〜Ａ３のうち、属性Ａ１『種類』の重要度が最も高いため、特定の属性ＡＰは属性Ａ１となる。このため、第２の算出部１３０３が、属性Ａ１を表す軸の成分を「１」とし、属性Ａ２，Ａ３を表す軸の成分を「０」とする軸ベクトルＰＶを作成する。
【０１３５】
（ｉｉｉ）第２の算出部１３０３は、データＤ［１］〜Ｄ［Ｔ］の各データＤ［ｔ］を表す比較ベクトルＶ［ｔ］と、作成された軸ベクトルＰＶとのベクトル間距離Ｌ［ｔ］を算出する。具体的には、例えば、第２の算出部１３０３が、下記式（４）を用いて、比較ベクトルＶ［ｔ］と軸ベクトルＰＶとのベクトル間距離Ｌ［ｔ］を算出することができる。
【０１３６】
ただし、Ｌ［ｔ］は、比較ベクトルＶ［ｔ］と軸ベクトルＰＶとのベクトル間距離である。Ｐ（ｋ）は、軸ベクトルＰＶの属性Ａｋに対応する軸の成分（１または０）である。Ｒ[t]（ｋ）は、比較ベクトルＶ［ｔ］の属性Ａｋに対応する軸の成分（類似度）である。
【０１３７】
【数２】
0005903757.tif 000003
【０１３８】
検索条件１２００とデータＤｘ，Ｄｙの例では、第２の算出部１３０３が、上記式（４）を用いて、データＤｘ，Ｄｙを表す比較ベクトルＶｘ，Ｖｙと、作成された軸ベクトルＰＶとのベクトル間距離Ｌ［ｘ］，Ｌ［ｙ］をそれぞれ算出する。この結果、検索条件と各データＤ［ｔ］とのベクトル間距離Ｌ［ｔ］が算出される。
【０１３９】
上記検索部１０３は、算出されたベクトル間距離Ｌ［ｔ］に基づいて、データＤ［１］〜Ｄ［Ｔ］の中から検索条件に適合するデータを検索する。例えば、ベクトル間距離Ｌ［ｘ］，Ｌ［ｙ］の大小関係を『Ｌ［ｘ］＞Ｌ［ｙ］』とすると、検索部１０３が、データＤｘ，Ｄｙのうちベクトル間距離が最小のデータＤｙを検索する。
【０１４０】
これにより、ベクトル間距離が最小となるデータが複数存在する場合であっても、検索すべきデータＤｉを一意に特定することができる。具体的には、検索条件との類似判断において優先すべき特定の属性ＡＰについて、より検索条件と類似しているデータＤ［ｔ］を検索することができる。
【０１４１】
・製品の品質を表す軸の追加
つぎに、検索条件で指定された属性Ａ１〜ＡＫに対応する軸のほかに、製品の品質に対応する軸を追加する場合について説明する。
【０１４２】
第１の算出部１３０２は、検索条件で指定された各属性Ａｋに対応する軸および品質に対応する軸を原点から放射状に伸ばした直交座標系において、検索条件を表す基準ベクトルＳＶを作成する。具体的には、例えば、第１の算出部１３０２が、各軸の成分を「１」とする基準ベクトルＳＶを作成する。すなわち、基準ベクトルＳＶを成分表示すると下記式（５）のように表現することができる。ただし、Ｑは、品質に対応する軸の成分を表している。
【０１４３】
ＳＶ＝（Ａ１，Ａ２，…，ＡＫ，Ｑ）＝（１，１，…，１，１）    ・・・（５）
【０１４４】
つぎに、第１の算出部１３０２は、検索対象となるデータＤｉを表す比較ベクトルＶｉを作成する。ここで、比較ベクトルＶｉの各属性Ａｋに対応する軸の成分は、各属性Ａｋの類似度Ｒi（ｋ）である。また、比較ベクトルＶｉの品質に対応する軸の成分は、例えば、図１９に示す品質テーブル１９００を参照することにより特定する。品質テーブル１９００は、例えば、ＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されている。
【０１４５】
図１９は、品質テーブルの記憶内容の一例を示す説明図である。図１９において、品質テーブル１９００は、クレーム数ごとの座標値を有している。クレーム数は、製品の品質を表す指標値である。座標値は、比較ベクトルＶｉの品質に対応する軸の成分である。ここでは、クレーム数が少ない、すなわち、製品の品質が高いほど、比較ベクトルＶｉの品質に対応する軸の成分が大きい値に設定されている。
【０１４６】
品目情報６００−１を例に挙げると、品質は『０』のため、比較ベクトルＶ１の品質に対応する軸の成分は『１』となる。すなわち、比較ベクトルＶｉを成分表示すると下記式（６）のように表現することができる。ただし、ｑiは、比較ベクトルＶｉの品質に対応する軸の成分である。
【０１４７】
Ｖｉ＝（Ａ１，Ａ２，…，ＡＫ，Ｑ）
＝（Ｒi（１），Ｒi（２），…，Ｒi（Ｋ），ｑi）      ・・・（６）
【０１４８】
そして、第１の算出部１３０２は、作成された基準ベクトルＳＶと比較ベクトルＶｉとのベクトル間距離Ｌｉを算出する。具体的には、例えば、第１の算出部１３０２が、下記式（７）を用いて、基準ベクトルＳＶと比較ベクトルＶｉとのベクトル間距離Ｌｉを算出することができる。
【０１４９】
【数３】
0005903757.tif 000004
【０１５０】
上記検索部１０３は、算出されたベクトル間距離Ｌｉに基づいて、データ群Ｄ１〜Ｄｎの中から検索条件に適合するデータを検索する。具体的には、例えば、検索部１０３が、データ群Ｄ１〜Ｄｎの中から、ベクトル間距離Ｌｉが最小のデータＤｉを検索する。
【０１５１】
このように、品質の高い製品に関するデータＤｉを表す比較ベクトルＶｉの品質に対応する軸の成分を大きい値に設定することで、品質の高い製品に関するデータＤｉのベクトル間距離Ｌｉが小さくなる。このため、品質の高い製品に関するデータＤｉが検索され易くなり、結果的に、高品質の製品に関する図面や文書をユーザに提供することができる。
【０１５２】
・累積類似度
上述した説明では、検索条件とデータＤｉとのベクトル間距離Ｌｉに基づいて、検索条件に適合するデータを検索する場合について説明したが、データＤｉの属性Ａｋごとの類似度Ｒi（ｋ）を単に累積した値に基づいて、データを検索することにしてもよい。
【０１５３】
具体的には、例えば、第１の算出部１３０２は、検索対象となるデータＤｉごとに、データＤｉの属性Ａｋごとの類似度Ｒi（ｋ）を累積した値（以下、「累積類似度Ｒi」という）を算出する。累積類似度Ｒiは、検索条件とデータＤｉとの類似度を表している。累積類似度Ｒiが大きいデータＤｉほど、検索条件に類似（適合）している。
【０１５４】
そして、検索部１０３は、算出された各データＤｉの累積類似度Ｒiに基づいて、検索対象となるデータ群Ｄ１〜Ｄｎの中からデータを検索してもよい。具体的には、例えば、検索部１０３が、データ群Ｄ１〜Ｄｎの中から、累積類似度Ｒiが最大のデータを検索してもよい。
【０１５５】
これにより、ユーザによって指定された検索条件と完全に合致しなくても、ユーザにとって参考となる可能性があるデータＤｉを検索することができる。この累積類似度Ｒiに基づく検索処理は、上述したベクトル間距離Ｌｉに基づく検索処理に比べて、方向の概念が欠落するため、検索条件との類似判断の精度が低下する可能性はある一方で、第１の算出部１３０２の算出処理にかかる負荷を軽減できる。
【０１５６】
（検索結果画面の具体例）
図２０は、検索結果画面の具体例を示す説明図である。図２０において、検索結果画面２０００には、ユーザが指定した検索条件に適合する検索結果として、品目情報６００−１，６００−３，６００−４が表示されている。この検索結果画面２０００は、例えば、クライアント端末４０２のディスプレイ５０９に表示される。
【０１５７】
検索結果画面２０００において、クライアント端末４０２のキーボード５１０やマウス５１１を用いたユーザの操作入力により、カーソルＣを移動させて任意の検索結果をクリックすると、該検索結果と関連性を有する文書情報が表示されることにしてもよい。例えば、カーソルＣを移動させて品目情報６００−１をクリックすると、文書マスタ４０４内の文書情報７００−１が表示される。
【０１５８】
なお、品目情報と文書情報との対応関係に関する情報は、例えば、ＲＯＭ５０２、ＲＡＭ５０３、磁気ディスク５０５、光ディスク５０７などの記憶装置に記憶されている。具体的には、例えば、品目情報と文書情報との対応関係は、各品目情報、文書情報の品目マスタ４０３，文書マスタ４０４への登録時に予め設定される。
【０１５９】
（検索装置４０１の検索処理手順）
図２１は、実施の形態２にかかる検索装置の検索処理手順の一例を示すフローチャートである。ここでは、検索対象となるデータ群を品目マスタ４０３内の品目情報６００−１〜６００−ｎとする場合を例に挙げて説明する。
【０１６０】
図２１のフローチャートにおいて、まず、受付部１０１により、クライアント端末４０２から検索条件を受け付けたか否かを判断する（ステップＳ２１０１）。ここで、受付部１０１により、検索条件を受け付けるのを待つ（ステップＳ２１０１：Ｎｏ）。
【０１６１】
そして、検索条件を受け付けた場合（ステップＳ２１０１：Ｙｅｓ）、特定部１３０１により、検索条件で指定された属性Ａｋの属性情報とデータＤｉの属性Ａｋの属性情報との類似度Ｒi（ｋ）を特定する類似度特定処理を実行する（ステップＳ２１０２）。
【０１６２】
つぎに、第１の算出部１３０２により、属性Ａ１〜ＡＫをベクトル要素として検索条件およびデータＤｉを多次元ベクトル化することにより、検索条件とデータＤｉとのベクトル間距離Ｌｉを算出するベクトル間距離算出処理を実行する（ステップＳ２１０３）。
【０１６３】
このあと、検索部１０３により、品目マスタ４０３の中からデータを検索する検索処理を実行して（ステップＳ２１０４）、出力部１０４により、検索結果リストをクライアント端末４０２に出力して（ステップＳ２１０５）、本フローチャートによる一連の処理を終了する。
【０１６４】
これにより、ユーザによって指定された検索条件と完全に合致するデータＤｉとともに、検索条件と完全に合致しなくてもユーザにとって参考となる可能性があるデータＤｉを検索することができる。
【０１６５】
＜類似度特定処理手順＞
つぎに、図２１のステップＳ２１０２の類似度特定処理の具体的な処理手順について説明する。図２２は、ステップＳ２１０２の類似度特定処理の具体的な処理手順の一例を示すフローチャートである。
【０１６６】
図２２のフローチャートにおいて、まず、特定部１３０１により、図２１に示したステップＳ２１０１において受け付けた検索条件で指定された属性Ａ１〜ＡＫを特定する（ステップＳ２２０１）。つぎに、特定部１３０１により、属性Ａｋの「ｋ」を「ｋ＝１」で初期化し（ステップＳ２２０２）、検索対象となるデータＤｉの「ｉ」を「ｉ＝１」で初期化する（ステップＳ２２０３）。
【０１６７】
このあと、特定部１３０１により、品目マスタ４０３の中からデータＤｉを選択する（ステップＳ２２０４）。そして、特定部１３０１により、類似度定義テーブル１４００を参照することにより、検索条件で指定された属性Ａｋの属性情報とデータＤｉの属性Ａｋの属性情報との類似度Ｒi（ｋ）を特定する（ステップＳ２２０５）。なお、特定された特定結果は、例えば、図１５に示した類似度テーブル１５００に記憶される。
【０１６８】
つぎに、特定部１３０１により、データＤｉの「ｉ」をインクリメントして（ステップＳ２２０６）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ２２０７）。ここで、「ｉ」が「ｎ」以下の場合（ステップＳ２２０７：Ｎｏ）、ステップＳ２２０４に戻る。
【０１６９】
一方、「ｉ」が「ｎ」より大きい場合（ステップＳ２２０７：Ｙｅｓ）、特定部１３０１により、属性Ａｋの「ｋ」をインクリメントして（ステップＳ２２０８）、「ｋ」が「Ｋ」より大きいか否かを判断する（ステップＳ２２０９）。
【０１７０】
ここで、「ｋ」が「Ｋ」以下の場合（ステップＳ２２０９：Ｎｏ）、ステップＳ２２０４に戻る。一方、「ｋ」が「Ｋ」より大きい場合（ステップＳ２２０９：Ｙｅｓ）、図２１に示したステップＳ２１０３に移行する。
【０１７１】
これにより、検索対象となる各データＤｉの属性Ａｋごとに、検索条件との類似度Ｒi（ｋ）を特定することができる。つまり、類似度を利用して後述の処理を行うことによって、検索条件と一致しないデータであっても、検索条件から推測して、ユーザにとって有益な可能性が高いデータを、検索することができる。
【０１７２】
＜ベクトル間距離算出処理手順＞
つぎに、図２１のステップＳ２１０３のベクトル間距離算出処理の具体的な処理手順について説明する。図２３は、ステップＳ２１０３のベクトル間距離算出処理の具体的な処理手順の一例を示すフローチャートである。
【０１７３】
図２３のフローチャートにおいて、まず、第１の算出部１３０２により、軸定義テーブル１７００を参照することにより、検索条件で指定された属性Ａ１〜ＡＫに対応する軸を特定する（ステップＳ２３０１）。
【０１７４】
そして、第１の算出部１３０２により、特定された各属性Ａ１〜ＡＫに対応する軸を原点から放射状に伸ばした直交座標系において、図２１に示したステップＳ２１０１において受け付けた検索条件を表す基準ベクトルＳＶを作成する（ステップＳ２３０２）。
【０１７５】
つぎに、第１の算出部１３０２により、検索対象となるデータＤｉの「ｉ」を「ｉ＝１」で初期化して（ステップＳ２３０３）、品目マスタ４０３の中からデータＤｉを選択する（ステップＳ２３０４）。このあと、第１の算出部１３０２により、類似度テーブル１５００を参照することにより、データＤｉを表す比較ベクトルＶｉを作成する（ステップＳ２３０５）。
【０１７６】
そして、第１の算出部１３０２により、上記式（３）を用いて、作成された基準ベクトルＳＶと比較ベクトルＶｉとのベクトル間距離Ｌｉを算出する（ステップＳ２３０６）。つぎに、第１の算出部１３０２により、データＤｉの「ｉ」をインクリメントして（ステップＳ２３０７）、「ｉ」が「ｎ」より大きいか否かを判断する（ステップＳ２３０８）。
【０１７７】
ここで、「ｉ」が「ｎ」以下の場合（ステップＳ２３０８：Ｎｏ）、ステップＳ２３０４に戻る。一方、「ｉ」が「ｎ」より大きい場合（ステップＳ２３０８：Ｙｅｓ）、図２１に示したステップＳ２１０４に移行する。
【０１７８】
これにより、各データＤｉの属性Ａｋごとの類似度Ｒi（ｋ）に基づいて、属性Ａ１〜ＡＫをベクトル要素として検索条件および各データＤｉを多次元ベクトル化して、検索条件と各データＤｉとのベクトル間距離Ｌｉを算出することができる。つまり、ユーザが指定した属性情報とは異なる属性情報を有するデータであっても、ユーザにとって有益となる可能性が高いデータは、ベクトル間距離が近くなる。したがって、本実施例に開示の検索装置は、ベクトル間距離を利用することで、複数のデータのうち、よりユーザにとって有益となる可能性が高いデータを、より正確に特定することができる。
【０１７９】
＜検索処理手順＞
つぎに、図２１のステップＳ２１０４の検索処理の具体的な処理手順について説明する。ここでは、品目マスタ４０３の中から、検索条件に適合するｍ個のデータを検索する場合を例に挙げて説明する（ｎ＞ｍ）。図２４は、ステップＳ２１０４の検索処理の具体的な処理手順の一例を示すフローチャートである。
【０１８０】
図２４のフローチャートにおいて、まず、検索部１０３により、検索されたデータ数を表す「ｊ」を「ｊ＝１」で初期化する（ステップＳ２４０１）。そして、検索部１０３により、品目マスタ４０３の中から、図２３のステップＳ２３０６において算出されたベクトル間距離Ｌｉが最小のデータＤｉを検索する（ステップＳ２４０２）。
【０１８１】
このあと、検索部１０３により、検索されたデータＤｉを検索結果リストに登録する（ステップＳ２４０３）。なお、検索結果リストの具体例については、図２５を用いて後述する。つぎに、検索部１０３により、検索されたデータ数を表す「ｊ」をインクリメントして（ステップＳ２４０４）、「ｊ」が「ｍ」より大きいか否かを判断する（ステップＳ２４０５）。
【０１８２】
ここで、「ｊ」が「ｍ」以下の場合（ステップＳ２４０５：Ｎｏ）、ステップＳ２４０２に戻り、検索部１０３により、品目マスタ４０３の中から、未検索のベクトル間距離Ｌｉが最小のデータＤｉを検索する（ステップＳ２４０２）。一方、「ｊ」が「ｍ」より大きい場合（ステップＳ２４０５：Ｙｅｓ）、図２１に示したステップＳ２１０５に移行する。
【０１８３】
これにより、検索対象となるデータ群Ｄ１〜Ｄｎの中から、ユーザによって指定された検索条件との類似度が高い上位ｍ個の検索結果を得ることができる。
【０１８４】
図２５は、検索結果リストの具体例を示す説明図である。図２５において、検索結果リスト２５００は、図２４に示したステップＳ２４０２において検索されたデータＤｉを記憶している。
【０１８５】
具体的には、検索結果リスト２５００は、品目マスタ４０３内の品目情報６００−１，６００−３，６００−４を検索結果として記憶している。検索装置４０１からクライアント端末４０２に検索結果リスト２５００が出力されると、クライアント端末４０２のディスプレイ５０９に、例えば、図２０に示した検索結果画面２０００が表示される。
【０１８６】
以上説明したように、実施の形態２にかかる検索装置４０１によれば、類似度定義テーブル１４００を参照することにより、各データＤｉの属性Ａｋごとの類似度Ｒi（ｋ）を特定することができる。また、検索装置４０１によれば、各データＤｉの属性Ａｋごとの類似度Ｒi（ｋ）に基づいて、属性Ａ１〜ＡＫをベクトル要素として検索条件および各データＤｉを多次元ベクトル化して、検索条件と各データＤｉとのベクトル間距離Ｌｉを算出することができる。そして、検索装置４０１によれば、算出された各データＤｉのベクトル間距離Ｌｉに基づいて、データ群Ｄ１〜Ｄｎの中からデータＤｉを検索することができる。これにより、ユーザによって指定された検索条件と完全に合致しなくても、ユーザにとって参考となる可能性があるデータＤｉを検索することができる。
【０１８７】
また、検索装置４０１によれば、人の意思決定に関わる各要因をベクトル要素として多次元ベクトル化して類似度Ｒi（ｋ）を求めることで、同様の状況下にあった作成者によって作成された文書や図面などをユーザに提供することができる。具体的には、例えば、業務内容や直面する課題が類似し、業務や課題に対する対処方法が類似する作成者によって作成された文書や図面を一括してユーザに提供することができる。これにより、業務内容が類似している他の人たちが直面していた課題に対する対処方法をユーザが参考にすることができ、業務の効率化などを図ることができる。
【０１８８】
また、検索装置４０１によれば、ベクトル間距離が最小のデータＤ［ｔ］が複数存在する場合、さらに、特定の属性ＡＰを表す軸をベクトル化して、最小の各データＤ［ｔ］と特定の属性ＡＰを表す軸とのベクトル間距離Ｌ［ｔ］を算出することができる。そして、検索装置４０１によれば、算出された各データＤ［ｔ］のベクトル間距離Ｌ［ｔ］に基づいて、データＤ［１］〜Ｄ［Ｔ］の中からデータＤ［ｔ］を検索することができる。これにより、ベクトル間距離が最小となるデータが複数存在する場合であっても、検索すべきデータＤｉを一意に特定することができる。
【０１８９】
また、検索装置４０１によれば、各データＤｉの属性Ａｋごとの類似度Ｒi（ｋ）を累積した累積類似度Ｒiに基づいて、データＤ１〜Ｄｎの中からデータＤｉを検索することができる。これにより、ユーザによって指定された検索条件と完全に合致しなくても、ユーザにとって参考となる可能性があるデータＤｉを検索することができる。
【０１９０】
なお、本実施の形態で説明した検索方法は、予め用意されたプログラムをパーソナル・コンピュータやワークステーション等のコンピュータで実行することにより実現することができる。本検索プログラムは、ハードディスク、フレキシブルディスク、ＣＤ−ＲＯＭ、ＭＯ、ＤＶＤ等のコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行される。また、本検索プログラムは、インターネット等のネットワークを介して配布してもよい。
【０１９１】
また、本実施の形態で説明した検索装置１００，４０１は、スタンダードセルやストラクチャードＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）などの特定用途向けＩＣ（以下、単に「ＡＳＩＣ」と称す。）やＦＰＧＡなどのＰＬＤ（Ｐｒｏｇｒａｍｍａｂｌｅ  Ｌｏｇｉｃ  Ｄｅｖｉｃｅ）によっても実現することができる。具体的には、たとえば、検索装置１００，４０１の機能をＨＤＬ記述によって機能定義し、そのＨＤＬ記述を論理合成してＡＳＩＣやＰＬＤに与えることにより、検索装置１００，４０１を製造することができる。
【０１９２】
上述した実施の形態に関し、さらに以下の付記を開示する。
【０１９３】
（付記１）任意の属性の属性情報を指定する検索条件を受け付ける受付部と、
前記受付部によって受け付けた検索条件で指定された属性情報と関連する他の属性情報を規定するテーブルを参照することにより、前記他の属性情報を指定する他の検索条件を作成する作成部と、
前記作成部によって作成された他の検索条件に基づいて、検索対象となるデータ群の中からデータを検索する検索部と、
前記検索部によって検索された検索結果を出力する出力部と、
を備えることを特徴とする検索装置。
【０１９４】
（付記２）前記検索部は、さらに、前記受付部によって受け付けた検索条件に基づいて、前記データ群の中からデータを検索することを特徴とする付記１に記載の検索装置。
【０１９５】
（付記３）前記データ群の各データは、当該各データを特徴付ける複数の属性に含まれる属性ごとの属性情報を有しており、
前記受付部は、前記属性ごとの属性情報をそれぞれ指定する検索条件を受け付け、
前記作成部は、前記属性ごとに、前記受付部によって受け付けた検索条件で指定された当該属性の属性情報と同一の属性を有する他の属性情報を規定するテーブルを参照することにより、前記他の属性情報を指定する他の検索条件をそれぞれ作成し、
前記検索部は、前記作成部によって前記属性ごとにそれぞれ作成された他の検索条件に基づいて、前記データ群の中からデータを検索することを特徴とする付記１または２に記載の検索装置。
【０１９６】
（付記４）前記属性ごとに、当該属性を有する属性情報間の類似度を規定するテーブルを参照することにより、前記検索条件で指定された前記属性の属性情報と前記各データの前記属性の属性情報との類似度をそれぞれ特定する特定部を備え、
前記検索部は、前記特定部によって特定された前記各データの前記属性ごとの類似度に基づいて、前記データ群の中からデータを検索することを特徴とする付記３に記載の検索装置。
【０１９７】
（付記５）前記各データの前記属性ごとの類似度に基づいて、前記複数の属性をベクトル要素として前記検索条件および前記各データを多次元ベクトル化することにより、前記検索条件と前記各データとのベクトル間距離を算出する算出部を備え、
前記検索部は、前記算出部によって算出された算出結果に基づいて、前記データ群の中からデータを検索することを特徴とする付記４に記載の検索装置。
【０１９８】
（付記６）前記検索部は、前記データ群の中から、前記算出部によって算出されたベクトル間距離が最小のデータを検索することを特徴とする付記５に記載の検索装置。
【０１９９】
（付記７）前記算出部（以下、「第１の算出部」という）によって算出されたベクトル間距離が最小のデータが複数存在する場合、さらに、前記複数の属性のうち特定の属性を表す軸をベクトル化することにより、前記最小の各データと前記軸とのベクトル間距離を算出する第２の算出部を備え、
前記検索部は、前記複数の前記最小のデータの中から、前記第２の算出部によって算出されたベクトル間距離が最小のデータを検索することを特徴とする付記６に記載の検索装置。
【０２００】
（付記８）前記データごとに、当該データの前記属性ごとの類似度を累積した値を算出する第３の算出部を備え、
前記検索部は、前記データ群の中から、前記第３の算出部によって算出された値が最大のデータを検索することを特徴とする付記４に記載の検索装置。
【０２０１】
（付記９）コンピュータを、
任意の属性の属性情報を指定する検索条件を受け付ける受付手段、
前記受付手段によって受け付けた検索条件で指定された属性情報と関連する他の属性情報を規定するテーブルを参照することにより、前記他の属性情報を指定する他の検索条件を作成する作成手段、
前記作成手段によって作成された他の検索条件に基づいて、検索対象となるデータ群の中からデータを検索する検索手段、
前記検索手段によって検索された検索結果を出力する出力手段、
として機能させることを特徴とする検索プログラム。
【０２０２】
（付記１０）任意の属性の属性情報を指定する検索条件を受け付ける受付工程と、
前記受付工程によって受け付けた検索条件で指定された属性情報と関連する他の属性情報を規定するテーブルを参照することにより、前記他の属性情報を指定する他の検索条件を作成する作成工程と、
前記作成工程によって作成された他の検索条件に基づいて、検索対象となるデータ群の中からデータを検索する検索工程と、
前記検索工程によって検索された検索結果を出力する出力工程と、
をコンピュータに実行させることを特徴とする検索方法。
【符号の説明】
【０２０３】
１００，４０１  検索装置
１０１  受付部
１０２  作成部
１０３  検索部
１０４  出力部
１１０  属性テーブル
４０２  クライアント端末
４０３  品目マスタ
４０４  文書マスタ
８００  ユーザ分類テーブル
９００  作成理由分類テーブル
１０００  作成方法分類テーブル
１３０１  特定部
１３０２  第１の算出部
１３０３  第２の算出部
１４００  類似度定義テーブル
１５００  類似度テーブル
１７００  軸定義テーブル
【図１】
0005903757.tif 000005
【図２】
0005903757.tif 000006
【図３】
0005903757.tif 000007
【図４】
0005903757.tif 000008
【図５】
0005903757.tif 000009
【図６】
0005903757.tif 000010
【図７】
0005903757.tif 000011
【図８】
0005903757.tif 000012
【図９】
0005903757.tif 000013
【図１０】
0005903757.tif 000014
【図１１】
0005903757.tif 000015
【図１２】
0005903757.tif 000016
【図１３】
0005903757.tif 000017
【図１４】
0005903757.tif 000018
【図１５】
0005903757.tif 000019
【図１６】
0005903757.tif 000020
【図１７】
0005903757.tif 000021
【図１８】
0005903757.tif 000022
【図１９】
0005903757.tif 000023
【図２０】
0005903757.tif 000024
【図２１】
0005903757.tif 000025
【図２２】
0005903757.tif 000026
【図２３】
0005903757.tif 000027
【図２４】
0005903757.tif 000028
【図２５】
0005903757.tif 000029