(57)【特許請求の範囲】
【請求項１】
複数のユーザの端末と通信ネットワークを介して接続され前記ユーザのユーザＩＤに関連付けて記憶されているキャラクタデータを検索するサーバであって、
前記キャラクタデータの一部を構成するアイテムデータのＩＤと前記ユーザＩＤを関連付けて記憶されたアバターテーブルをアバターＤＢから読み出すアバターテーブル読出し部と、
前記複数のユーザ間で共通に使用されるアイテムデータのＩＤを前記アバターテーブルから抽出し、ユーザ間で共通して使用するアイテム数に加えてアイテムの分類間の結びつきを示す親和度を考慮し、親和度の高い特定のアイテムがともに共通に使用される場合は類似度が高いと判定することで前記複数のユーザ間のキャラクタデータの類似度を計算する類似度計算部と、
前記類似度を前記複数のユーザ間のキャラクタデータの類似度を表す類似度テーブルに保存する類似度テーブル作成部と、
前記類似度が所定の閾値以上かどうかを判定する類似度判定部と、
前記判定に応じて検索結果としてキャラクタデータを送信する類似ユーザ送信部と、
を備えることを特徴とするサーバ。
【請求項２】
前記類似度計算部は、前記アイテムデータの分類によって定義される重み付けを加えることを更に含む請求項１に記載のサーバ。
【請求項３】
前記類似度計算部は、前記キャラクタデータの生成時のタイムスタンプデータによって重み付けを加えることを更に含む請求項１または請求項２のいずれかに記載のサーバ。
【請求項４】
前記所定の閾値は、ユーザ数とアイテム数とに基づいて計算される請求項１乃至請求項３のいずれかに記載のサーバ。
【請求項５】
複数のユーザの端末と通信ネットワークを介して接続されたサーバが、前記ユーザのユーザＩＤに関連付けて記憶されているキャラクタデータを検索する方法であって、
前記キャラクタデータの一部を構成するアイテムデータのＩＤと前記ユーザＩＤを関連付けて記憶されたアバターテーブルをアバターＤＢから読み出すステップと、
前記複数のユーザ間で共通に使用されるアイテムデータのＩＤを前記アバターテーブルから抽出し、ユーザ間で共通して使用するアイテム数に加えてアイテムの分類間の結びつきを示す親和度を考慮し、親和度の高い特定のアイテムがともに共通に使用される場合は類似度が高いと判定することで前記複数のユーザ間のキャラクタデータの類似度を計算するステップと、
前記類似度を前記複数のユーザ間のキャラクタデータの類似度を表す類似度テーブルに保存するステップと、
前記類似度が所定の閾値以上かどうかを判定するステップと、
前記判定に応じて検索結果としてキャラクタデータを送信するステップと、
を含むことを特徴とする方法。
【請求項６】
複数のユーザの端末と通信ネットワークを介して接続されたサーバに、前記ユーザのユーザＩＤに関連付けて記憶されているキャラクタデータを検索させるプログラムであって、
前記サーバに、
前記キャラクタデータの一部を構成するアイテムデータのＩＤと前記ユーザＩＤを関連付けて記憶されたアバターテーブルをアバターＤＢから読み出すステップと、
前記複数のユーザ間で共通に使用されるアイテムデータのＩＤを前記アバターテーブルから抽出し、ユーザ間で共通して使用するアイテム数に加えてアイテムの分類間の結びつきを示す親和度を考慮し、親和度の高い特定のアイテムがともに共通に使用される場合は類似度が高いと判定することで前記複数のユーザ間のキャラクタデータの類似度を計算するステップと、
前記類似度を前記複数のユーザ間のキャラクタデータの類似度を表す類似度テーブルに保存するステップと、
前記類似度が所定の閾値以上かどうかを判定するステップと、
前記判定に応じて検索結果としてキャラクタデータを送信するステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、類似キャラクタデータを検索する方法、サーバおよびプログラムに関する。特に、通信ネットワークに接続された端末に類似するアイテムデータを検索し送信する方法、サーバおよびプログラムに関する。
【背景技術】
【０００２】
インターネットの社会への普及に伴い、ネットワーク上で情報を閲覧したり、検索したり、あるいは商品を購入したり、といった受身のユーザのみならず、ユーザ自らが情報の発信者としてＷｅｂ上で擬似的な日記（いわゆるブログ）を公開したり、嗜好の一致する者同士でコミュニティを構成したり、といった積極的な行動をとるユーザが急速に増加している。
【０００３】
特に、ブログがこの数年で急速に普及した背景には、インターネットの初心者でも簡単にホームページに文章や写真を登録して発信できるブログエディターの果たした貢献が大きいものと考えられる。
【０００４】
そして、こうしたブログの社会への普及は、単に通信ネットワークに接続できる端末によって情報を閲覧していた時代には考えられなかったネットワーク上の社会（いわゆるネットワークコミュニティ）が現実の社会とは別にもうひとつ出現し、急速に発展しつつあることを示している。
【０００５】
こうした状況において、ネットワーク上でユーザ自身を表すシンボルとして、「アバター」を活用するユーザが増加している。「分身」を意味するアバターは、具体的には画像データ、動画データ、音声データ等で表現されたいわゆるキャラクタであるが、現実の社会とは別に存在するネットワークコミュニティにおいて自分自身を表現し、他のユーザと対話し、共感し、議論し、同好の友人関係を広げる、といった様々な活動において、擬似的な行動主体としてその存在意義を高めている。
【０００６】
具体的には、例えば、ブログを公表する際に、アバターを画面の中で活用することにより、ユーザの書き込みによる文書とは別にユーザ自身をキャラクタデータにより直感的に表現することができるので、それを見る人にあたかもネットワーク上に自分の分身が存在するかのような感覚を抱かせ、ネットワークコミュニティにおけるコミュニケーションを強力にサポートすることができる。
【０００７】
実際に、このアバターの髪型、服装、アクセサリ、小物、背景などのアイテムをコーディネートすること自体がネットワークコミュニティにおいてユーザ自身のセンスや嗜好をアピールするために重要な活動のひとつとなっている。このため、ユーザはこのようなアイテムを有償で購入したり、友人にプレゼントしたりしており、アバターのコーディネートは経済活動の対象ともなっている。
【０００８】
したがって、現実社会において洋服を購入したり、アクセサリや小物をコーディネートしたりすることと同様に、アバターのコーディネート活動はネットワーク上でユーザの嗜好を判断したり、ネットワークコミュニティにおける流行や変化を捉えたりする上で重要な分析対象ともなっている。
【０００９】
こうした状況において、通常は、ユーザが予め用意されたアイテムの中から自由に選択することにより、好みのアバターを生成するという方法がとられるが、アバター管理装置（サーバ）によって自動的にアバターを生成・更新する方法も提案されている。
【００１０】
例えば、特許文献１には、ユーザに心理テストを実行させることにより当該ユーザの属性を決定し、決定された属性のアクセサリ（アイテム）画像を用いて基本画像に対して変更を行い、アバター画像を生成する方法が開示されている。
【特許文献１】特開２００５−３３２０９１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、こうした特許文献１の技術では、アバターを生成・更新する方法については開示されているものの、上述のユーザ自身のセンスや嗜好をアピールするというアバターの重要な特質を生かした発展的な利用方法に対してはなんら開示されていない。より具体的には、ユーザは、自分が作成したアバターと類似の他のユーザが作成したアバターを検索することで、自分と気が合いそうなユーザや共通のセンスを持つユーザを見つけ、共通の話題作りやコミュニティの形成に役立てることが可能になる。アバターはユーザ自身の分身であり、類似のアバターを選択するユーザはセンスや嗜好も類似しているとも考えられるからである。
【００１２】
本発明は、上記課題を解決し、ユーザ間で類似アバターを検索し、アバターをコミュニティ形成手段として活用することを目的とする。また、ユーザ間で類似度が大きいアバターのアイテムを抽出することで、ユーザの嗜好や流行を探る手がかりとすることも目的とする。
【課題を解決するための手段】
【００１３】
上記目的のため、具体的には、本発明は以下のようなものを提供する。
【００１４】
（１）  複数のユーザの端末と通信ネットワークを介して接続され前記ユーザのユーザＩＤに関連付けて記憶されているキャラクタデータを検索するサーバであって、
前記キャラクタデータの一部を構成するアイテムデータのＩＤと前記ユーザＩＤを関連付けて記憶されたアバターテーブルをアバターＤＢから読み出すアバターテーブル読出し部と、
前記複数のユーザ間で共通に使用されるアイテムデータのＩＤを前記アバターテーブルから抽出することで前記複数のユーザ間のキャラクタデータの類似度を計算する類似度計算部と、
前記類似度を前記複数のユーザ間のキャラクタデータの類似度を表す類似度テーブルに保存する類似度テーブル作成部と、
前記類似度が所定の閾値以上かどうかを判定する類似度判定部と、
前記判定に応じて検索結果としてキャラクタデータを送信する類似ユーザ送信部と、
を備えることを特徴とするサーバ。
【００１５】
このような構成によれば、前記サーバは、前記アイテムデータのＩＤと前記ユーザＩＤを関連付けて記憶されたアバターテーブルをアバターＤＢから読出し、前記複数のユーザ間で共通に使用されるアイテムデータのＩＤを前記アバターテーブルから抽出することで前記複数のユーザ間のキャラクタデータ（例えばアバターのデータ）の類似度を計算し、前記類似度を前記複数のユーザ間のキャラクタデータの類似度を表す類似度テーブルに保存し、前記類似度が所定の閾値以上かどうかを判定し、前記判定に応じて検索結果としてキャラクタデータを送信することが可能になる、という作用効果を奏する。
【００１６】
このことにより、ユーザ間で共通に使用されているアイテムデータのＩＤから、ユーザ間でのキャラクタデータの類似度のスコア（例えばアイテムデータＩＤの一致度）を計算し、そのスコアに応じてユーザ間のキャラクタの類似性を予め定められた閾値から判断し、類似キャラクタに関するデータを（その作成者のユーザＩＤと共に）検索結果として要求元のユーザに送信することができる。その結果、ユーザは類似のキャラクタを使用する他のユーザやそのキャラクタデータを表示することができ、自らのキャラクタデータ作成の参考としたり、ユーザ間のコミュニティ形成などに役立てることができる。
【００１７】
（２）  前記類似度計算部は、前記アイテムデータの分類によって定義される重み付けを加えることを更に備える（１）に記載のサーバ。
【００１８】
このような構成によれば、アイテムデータをその種類によって分類し、その分類毎に定義された重みデータを加味して、（２）の類似度計算部における類似度計算の精度をより高めることが可能である。例えば、アイテムデータが「顔」、「髪型」、「服装」、「履物」、「背景」というように分類されている場合、「顔」と「服装」について他の分類に比べてより類似度を計算する際の重みが高いとすることができる。
【００１９】
（３）  前記類似度計算部は、前記キャラクタデータの生成時のタイムスタンプデータによって重み付けを加えることを更に備える（１）または（２）のいずれかに記載のサーバ。
【００２０】
このような構成によれば、（１）または（２）の類似度計算部は、更に、ユーザがキャラクタを作成した時のタイムスタンプデータを記憶しておき、そのタイムスタンプデータによって類似度の重み付けをすることができる。例えば、より最近作成されたキャラクタほど類似度に対する重みが高いと判断したり、ユーザ間でキャラクタの作成時期が近い場合により類似度が高いといった判断材料とすることができる。
【００２１】
（４）  前記類似度計算部は、ユーザ間で共通して使用するアイテム数に加え、アイテム間の親和度を更に加えることを備える（１）〜（３）のいずれかに記載のサーバ。
【００２２】
このような構成によれば、アイテム間の「親和度」を定義し、この親和度が高いアイテムを共通に利用したユーザ間の類似度をより高いと判断する材料とすることができる。例えば、「髪型」と「髪飾り」の親和度を高いとし、この両者のアイテムを共通に使用しているユーザは類似度（好み）も近いと判断することも可能となる。
【００２３】
（５）  前記所定の閾値は、ユーザ数とアイテム数とに基づいて計算される（１）〜（４）のいずれかに記載のサーバ。
【００２４】
このような構成によれば、（１）〜（４）の類似度計算部によって計算された類似度を用いて最終的に類似ユーザとして判定するための所定の閾値を可変にすることができる。例えば、ユーザ数とアイテム数が多くなればなるほど閾値を高くし、より類似度の高いユーザを検索しやすくすることができる。
【００２５】
（６）  複数のユーザの端末と通信ネットワークを介して接続されたサーバが、前記ユーザのユーザＩＤに関連付けて記憶されているキャラクタデータを検索する方法であって、
前記サーバは、
前記キャラクタデータの一部を構成するアイテムデータのＩＤと前記ユーザＩＤを関連付けて記憶されたアバターテーブルをアバターＤＢから読み出すステップと、
前記複数のユーザ間で共通に使用されるアイテムデータのＩＤを前記アバターテーブルから抽出することで前記複数のユーザ間のキャラクタデータの類似度を計算するステップと、
前記類似度を前記複数のユーザ間のキャラクタデータの類似度を表す類似度テーブルに保存するステップと、
前記類似度が所定の閾値以上かどうかを判定するステップと、
前記判定に応じて検索結果としてキャラクタデータを送信するステップと、
を含むことを特徴とする方法。
【００３５】
（７）  複数のユーザの端末と通信ネットワークを介して接続されたサーバに、前記ユーザのユーザＩＤに関連付けて記憶されているキャラクタデータを検索させるプログラムであって、
前記サーバに、
前記キャラクタデータの一部を構成するアイテムデータのＩＤと前記ユーザＩＤを関連付けて記憶されたアバターテーブルをアバターＤＢから読み出すステップと、
前記複数のユーザ間で共通に使用されるアイテムデータのＩＤを前記アバターテーブルから抽出することで前記複数のユーザ間のキャラクタデータの類似度を計算するステップと、
前記類似度を前記複数のユーザ間のキャラクタデータの類似度を表す類似度テーブルに保存するステップと、
前記類似度が所定の閾値以上かどうかを判定するステップと、
前記判定に応じて検索結果としてキャラクタデータを送信するステップと、
を実行させることを特徴とするプログラム。
【００３６】
このような構成によれば、（１）のサーバまたは（６）の方法を機能させ、同様な作用効果を奏するコンピュータ・プログラムを提供することができる。
【発明の効果】
【００３７】
本発明によれば、ユーザ間で類似アバターを検索し、アバターをコミュニティ形成手段として活用することが可能となる。また、ユーザ間で類似度が大きいアバターのアイテムを抽出することで、ユーザの嗜好や流行を探る手がかりとすることも可能となる。
【発明を実施するための最良の形態】
【００３８】
本発明に係る好適な実施形態の一例について、図面に基づいて以下に説明する。
【００３９】
［システムの全体構成］
図１は、本発明の好適な実施形態に係るコンピュータ・システム１の全体構成およびサーバ１０の機能構成を示すブロック図である。このシステムでは一般的にサーバ１０とそのユーザの端末２０とが通信ネットワーク３０を介して接続されている。ここで、サーバ１０の数には制限はなく、必要に応じて１または複数のサーバで構成してよい。また、サーバ１０は、必要に応じてＷｅｂサーバ、ＤＢサーバ、アプリケーションサーバを含んで構成してよく、１台のサーバで構成してもそれぞれ別のサーバで構成してもよい。
【００４０】
サーバ１０は、少なくともアバターとしてのキャラクタを管理するアバター管理装置として構成し、サーバ１０内の記憶部２００は、アバターＤＢ２０１、アイテムＤＢ２０２、類似度ＤＢ２０７、類似ユーザＤＢ２２０を含んでいる。
【００４１】
以下、キャラクタを特にアバターと表現して説明する。アバターの代表的なものは画像データであるが、これに限られず、ＭＰＥＧ、ＦＬＡＳＨ（登録商標）等の動画データであってもよい。また、場合によってはＷＡＶ、ＭＰ３、３ＧＰ等の音声データを含んでもよい。
【００４２】
サーバ１０の制御部１００は、サーバ１０全体を制御し、アバターテーブル読出し部１２４、類似度計算部１２５、類似度テーブル作成部１２６、類似度判定部１２７、および類似ユーザ送信部１２８を備える。これらの各部の働きについての詳細は後述の説明により明らかにする。
【００４３】
［アバターＤＢ］
図２は、本発明の好適な実施形態の一例に係るアバターＤＢ２０１を構成するアバターテーブルを示す図である。アバターテーブルは、ユーザを識別するユーザＩＤをキーに、「顔」、「髪型」、「服装」、「ボトムス」といった分類毎にアイテムを識別するアイテムＩＤを対応付けて記憶している。アバターテーブルは前述のサーバ制御部１００のアバターテーブル読出し部１２４によって読込まれ、類似度を計算するための基礎となるデータベースである。
【００４４】
図２では簡略化して示してあるように、例えば、ユーザＩＤデータが「ＡＢＣ１２」のユーザに関しては、記憶部２００は、「顔」についてアイテムＩＤとして「Ｄ６７８」を、「髪型」について「Ｂ８９８」を、「服装」について「Ｃ１１２０」を、ボトムス（下半身に着用する衣服）について「Ａ１７８」を、それぞれユーザＩＤデータ「ＡＢＣ１２」に関連付けて記憶している。
【００４５】
このように、アバターテーブルは、その時点のアバターのユーザのコーディネートに基づくアイテムＩＤデータを、ユーザＩＤデータに関連付けて管理している。ここで、図示するように楕円で囲んでいるアイテムＩＤは複数のユーザ間で共通するアイテムを表すものとする。
【００４６】
［類似度ＤＢ］
図３は、本発明の好適な実施形態の一例に係る類似度ＤＢ２０７を構成する類似度テーブルを示す図である。類似度テーブルは、上述の複数のユーザ間で共通するアイテムＩＤの個数をユーザ間毎にカウントした値（類似スコア、またはポイント値とも呼ぶ）を記憶するテーブルである。
【００４７】
例えば、図２の例ではユーザＩＤ「ＡＢＣ１２」とユーザＩＤ「ＡＢＣ２５」では、同じアイテムＩＤを使用していないので両ユーザの使用しているアバター全体の類似度はゼロである。一方、ユーザＩＤ「ＡＢＣ１２」とユーザＩＤ「ＣＦＧ３０」では、「顔」、「髪型」、「ボトムス」の分類について同じアイテムＩＤを使用しているので、両ユーザのアバターの類似度は３となる。類似度テーブルは、このようにカウントできる類似度を全てのユーザ間の組み合わせについて格納している。このことから判るようにこの類似度テーブルの対角要素は意味を持たないので、特にデータは格納しない（任意の値でよい）。また、容易に判るようにこのテーブルは対角要素に対して対称となるので、各テーブル要素をＳｉｊ（ｉ，ｊは自然数）とすると、Ｓｉｊ＝Ｓｊｉである。
【００４８】
［メイン処理］
図４は、本発明の好適な実施形態の一例に係るサーバ１０のメイン処理を示すフローチャートである。制御部１００のアバターテーブル読出し部１２４は、まず記憶部２００にあるアバターＤＢ２０１からアバターテーブルを読込む（ステップＳ１１）。次に、類似度計算部１２５は、対象となるユーザと他のユーザ全てについてアバターの類似度を計算する（ステップＳ１２）。この類似度の計算について詳しくは後述する。
【００４９】
更に制御部１００は、ステップＳ１２で計算された類似度に基づいて類似度テーブルを更新する（ステップＳ１３）。このステップは類似度テーブル作成部１２６の機能である。そして、類似度判定部１２７は、この更新された類似度テーブルを用いて対象となるユーザと他のユーザとの類似度を判定する（ステップＳ１４）。この時、類似度が所定の閾値以上の場合に類似と判定するようにしてもよいが、詳しくは後述する。
【００５０】
最後に、制御部１００の類似ユーザ送信部１２８は、類似と判定された他のユーザのデータをそのユーザＩＤと共に要求を出したユーザの端末２０に送信して処理を終了する（ステップＳ１５）。この時、類似度の高い順に他のユーザのデータを送信するようにしてもよい。また、他ユーザのデータのみをサーバ１０から端末２０に送信してもよいが、後述するような検索結果画面をサーバ側で生成してユーザ端末２０に送信するようにしてもよい。
【００５１】
［類似度の計算処理］
図５は、本発明の好適な実施形態の一例に係るサーバ１０の類似度の計算処理を示すフローチャートである。類似度計算部１２５は、まずステップＳ２１において要求を出した対象ユーザＩＤ（ｉとする）の選択を行い、順次比較すべきユーザＩＤの選択を行う（ステップＳ２２）。次に、ステップＳ２３において類似度の初期値をゼロとする。ここで、アイテムのひとつの分類（「顔」、「髪型」、「服装」など）についてアイテムテーブルを参照して同じアイテムＩＤが存在するかを見つける（ステップＳ２４）。同じアイテムＩＤが見つかった場合は、比較すべきユーザＩＤの類似度を１増やす（ステップＳ２５）。そして、この処理を全ての分類について繰返し行う（ステップＳ２６：ＮＯ）。全ての分類について処理が終わると（ステップＳ２６：ＹＥＳ）、得られた類似度のデータを類似度テーブルに保存する（ステップＳ２７）。これらの一連の処理を全ての比較対象のユーザＩＤについて行ったかどうかを判断し（ステップＳ２８）、全てのユーザＩＤの処理が終わってない場合（ステップＳ２８：ＮＯ）、はステップＳ２２に戻り、次の比較対象のユーザＩＤについてステップＳ２３〜Ｓ２７の処理を繰返す。
【００５２】
上記の計算処理では、同じアイテムＩＤを共通で使用している場合、そのたびに類似度を単純に１増やすようにしたが、アイテムの各分類毎に重みを定義し、その重み付けを行ってもよい。例えば、「顔」や「服装」のアイテムを共通して使用しているユーザ間の類似度は他の分類のアイテムを共通して使用しているユーザ間の類似度より重要であるとして、「顔」、「服装」について同じアイテムＩＤを使用している場合は、類似度を例えば１．５のように重み付けて計算するようにしてもよい。
【００５３】
あるいは、ユーザがアバターを作成した時のタイムスタンプを記憶しておき、最近作成したものほど重み付けを増やすようにしてもよい。例えば、ユーザＡとユーザＢの類似度が３で、同じくユーザＡとユーザＣの類似度が３であった場合、ユーザＡとＢのアバターの作成時期が３日前、ユーザＣのアバターの作成時期が３週間前であった場合、ユーザＡとユーザＢの類似度を３．５、ユーザＡとユーザＣの類似度を２．５のように重み付けすることが可能である。
【００５４】
また、別の類似度の計算方法としては、単に同じアイテムＩＤの数をカウントするだけでなく、アイテム間の「親和度」を考慮して類似度を求めてもよい。例えば、「顔」と「髪型」について同じアイテムを選択した場合と、「顔」と「履物」について同じアイテムを選択した場合とでは、アイテム間の親和度（関連性）が異なるので、前者の場合の類似度を後者の場合の類似度よりも高く設定するようにしてもよい。具体的には「顔」と「髪型」の類似度が１．５で、「顔」と「履物」の類似度が０．７と定義すれば、「顔」と「髪型」について同じアイテムを選択した場合のユーザ間の類似度は、（１＋１）×１．５＝３となり、一方、「顔」と「履物」について同じアイテムを選択した場合のユーザ間の類似度は、（１＋１）×０．７＝１．４となり、前者のほうの類似度が高いと判定するようにすることが可能である。
【００５５】
このような親和度の定義はアイテム毎に「親和度テーブル」を持たせることで容易に実現できる。この親和度テーブルは図３の類似度テーブルと似た構成をとることになる。
【００５６】
［類似度の判定処理］
図６は、本発明の好適な実施形態の一例に係るサーバ１０の類似度の判定処理を示すフローチャートである。類似度判定部１２７は、まずステップＳ３１において、対象となるユーザＩＤをｉとする（ｉ＝１．．．ｎ：ｎは全ユーザ数）。次に、ｊ≠ｉ（ｊ＝１．．．ｎ：ｎは全ユーザ数）となる全てのユーザＩＤの集合｛Ｓｉｊ｝において最大値となるＳｍａｘを求める（ステップＳ３２）。そして、集合｛Ｓｉｊ｝からＳｍａｘとなる（ｉ，ｊ）の要素を除いた集合を｛Ｓ′ｉｊ｝とする（ステップＳ３３）。この｛Ｓ′ｉｊ｝を｛Ｓｉｊ｝に置き換える（ステップＳ３４）。
【００５７】
次に、ステップＳ３２〜Ｓ３４の処理を全てのｊ（ｊ＝１．．．ｎ，ｊ≠ｉ）について繰返し行う（ステップＳ３５）。このようにして最後に、｛Ｓｉｊ｝をその値の大きい順にソートし、類似ユーザテーブルの作成をする（ステップＳ３６）ことができる。
【００５８】
［類似ユーザＤＢ］
図７は、本発明の好適な実施形態の一例に係る類似ユーザＤＢ２２０を構成する類似ユーザテーブルを示す図である。前述の類似度の判定処理において類似度の大きい順にユーザＩＤを並べたものが図示するような類似ユーザテーブルである。ここでは、対象とするユーザＩＤ（要求元ユーザＩＤ）は、「ＡＢＣ１２」であるとしている。図では簡単化のためにユーザＩＤは４つしか示してないが、一般にユーザ数は膨大であるのでユーザのアバターどうしが類似と判定するために所定の閾値が用いられる。図７の例では閾値は２であるとしている。
【００５９】
このようにすることで、サーバ１０は、所定の閾値より高い類似度を示すユーザＩＤを「類似ユーザ」として特定し、この類似ユーザのアバター関連データを集めて対象とするユーザ（要求元ユーザ）の端末２０へ送信することが可能となる。閾値を求める方法としては、予め決められた値を用いてもよいが、ユーザ数とアイテム数を考慮し求めるほうがより望ましい。例えば、ユーザ数が１０００とユーザ数は１００，０００では閾値は後者のほうが高く設定される。同様に、アイテム数が多いほど閾値が高く設定される。もちろん、ユーザ数とアイテム数の両者を相関させ統計的に求めてもよい。
【００６０】
図８は、本発明の好適な実施形態の一例に係る類似ユーザＤＢ２２０を構成する類似ユーザテーブルの別の例を示す図である。この図においては、対象ユーザＩＤは、「ＡＢＣ２５」であり、類似度が同じ１の位置にユーザＩＤ「ＣＦＧ３０」と「ＰＯＬ３２」が格納されている。このような場合、両者に差がないとして出力を行ってもよいが、ここで始めて類似度の重み付けを行ってもよい。すでに述べたように類似度の重み付けは、アイテムの分類、アバター作成時のタイムスタンプ、アイテム間の親和度などによって行うことができるが、この重み付けを類似度の計算時でなく、上記のような類似度が同値または近接している場合に行うようにしてもよい。このようにすることで様々に重み付けられた類似度の計算を膨大なユーザ数全てに行う必要がなく、類似度が同じ、または近接した場合にのみ行うことで計算量を大幅に減らすことができる。
【００６１】
なお、図８の例では、閾値を仮に２とすると、ユーザＩＤが「ＣＦＧ３０」と「ＰＯＬ３２」のユーザは共に類似度が１であるため、このままでは「類似ユーザ」としては判定されないが、上記のような重み付けを行った結果、類似度が閾値２よりも大きくなり類似ユーザの判定に含まれる可能性もある。
【００６２】
このようにして得られた類似ユーザＤＢ２２０から類似ユーザ送信部１２８は、閾値以上のユーザＩＤを抽出し、その関連するアバターのデータと共に検索結果として要求元のユーザ端末に送信する。
【００６３】
［類似アバター検索結果画面］
図９は、本発明の好適な実施形態の一例に係る類似アバターの検索結果の画面を示す図である。アバター５０は、現在要求元のユーザが使用しているアバターである。一方アバター５１は、本サーバ１０によって検索された類似アバターのひとつである。この例では、符号５２で示す表示エリアにアバターの類似度が表示され、符号５３で示される表示エリアに類似と判定された他のユーザの総数と現在表示中のアバターがその中で何番目に類似度が高いかが表示されている。ここでは、類似アバターを使用するユーザ数が１０であり、現在表示中のアバターが２番目であることを示している。
【００６４】
また、この検索結果の表示画面では、単一の類似アバターを表示させ、ユーザが操作ボタン５４を押下するたびに類似アバターが順に表示されるようにしているが、もちろん複数の類似アバターを同じ画面に表示させるようにしてもよい。この検索結果の表示画面は必要なデータのみをユーザの端末２０にサーバ１０から送信するようにしてもよいし、サーバ１０でこの画面を生成するようにしてもよい。
【００６５】
［サーバのハードウェア構成］
図１０は、図１で説明したサーバ１０のハードウェア構成の一例を示す図である。サーバ１０は、制御部１００を構成するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１０１０（マルチプロセッサ構成ではＣＰＵ１０１２など複数のＣＰＵが追加されてもよい）、バスライン１００５、通信Ｉ／Ｆ１０４０、メインメモリ１０５０、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）１０６０、ＵＳＢポート１０９０、Ｉ／Ｏコントローラ１０７０、ならびにキーボードおよびマウス１１００等の入力手段や表示装置１０２２を備える。
【００６６】
Ｉ／Ｏコントローラ１０７０には、テープドライブ１０７２、ハードディスク１０７４、光ディスクドライブ１０７６、半導体メモリ１０７８、等の記憶手段を接続することができる。
【００６７】
ＢＩＯＳ１０６０は、サーバ１０の起動時にＣＰＵ１０１０が実行するブートプログラムや、サーバ１０のハードウェアに依存するプログラム等を格納する。
【００６８】
記憶部２００を構成するハードディスク１０７４は、サーバ１０がサーバとして機能するための各種プログラムおよび本発明の機能を実行するプログラムを記憶しており、更に必要に応じて各種データベースを構成可能である。
【００６９】
光ディスクドライブ１０７６としては、例えば、ＤＶＤ−ＲＯＭドライブ、ＣＤ−ＲＯＭドライブ、ＤＶＤ−ＲＡＭドライブ、ＣＤ−ＲＡＭドライブを使用することができる。この場合は各ドライブに対応した光ディスク１０７７を使用する。光ディスク１０７７から光ディスクドライブ１０７６によりプログラムまたはデータを読み取り、Ｉ／Ｏコントローラ１０７０を介してメインメモリ１０５０またはハードディスク１０７４に提供することもできる。また、同様にテープドライブ１０７２に対応したテープメディア１０７１を主としてバックアップのために使用することもできる。
【００７０】
サーバ１０に提供されるプログラムは、ハードディスク１０７４、光ディスク１０７７、またはメモリーカード等の記録媒体に格納されて提供される。このプログラムは、Ｉ／Ｏコントローラ１０７０を介して、記録媒体から読み出され、または通信Ｉ／Ｆ１０４０を介してダウンロードされることによって、サーバ１０にインストールされ実行されてもよい。
【００７１】
前述のプログラムは、内部または外部の記憶媒体に格納されてもよい。ここで、記憶部２００を構成する記憶媒体としては、ハードディスク１０７４、光ディスク１０７７、またはメモリーカードの他に、ＭＤ等の光磁気記録媒体、テープメディア１０７１を用いることができる。また、専用通信回線やインターネットに接続されたサーバシステムに設けたハードディスク１０７４または光ディスクライブラリ等の記憶装置を記録媒体として使用し、通信回線を介してプログラムをサーバ１０に提供してもよい。
【００７２】
ここで、表示装置１０２２は、サーバ管理者にデータの入力を受け付ける画面を表示したり、サーバ１０による演算処理結果の画面を表示したりするものであり、ブラウン管表示装置（ＣＲＴ）、液晶表示装置（ＬＣＤ）等のディスプレイ装置を含む。
【００７３】
ここで、入力手段は、サーバ管理者による入力の受付を行うものであり、キーボードおよびマウス１１００等により構成してよい。
【００７４】
また、通信Ｉ／Ｆ１０４０は、サーバ１０を専用ネットワークまたは公共ネットワークを介して端末と接続できるようにするためのネットワーク・アダプタである。通信Ｉ／Ｆ１０４０は、モデム、ケーブル・モデムおよびイーサネット（登録商標）・アダプタを含んでよい。
【００７５】
以上の例は、サーバ１０について主に説明したが、コンピュータに、プログラムをインストールして、そのコンピュータをサーバ装置として動作させることにより上記で説明した機能を実現することもできる。したがって、本発明において一実施形態として説明したサーバにより実現される機能は、上述の方法を当該コンピュータにより実行することにより、あるいは、上述のプログラムを当該コンピュータに導入して実行することによっても実現可能である。
【００７６】
［端末のハードウェア構成］
端末２０も、上述のサーバ１０と同様な構成を持つ。また、上述の例ではいわゆるコンピュータで実現した例について説明したが、更に、本発明の原理が適用可能である限り、携帯電話、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄａｔａ  Ａｓｓｉｓｔａｎｔ）、ゲーム機等の様々な端末で実現してよい。
【００７７】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限るものではない。また、本発明の実施形態に記載された効果は、本発明から生じる最も好適な効果を列挙したに過ぎず、本発明による効果は、本発明の実施例に記載されたものに限定されるものではない。
【図面の簡単な説明】
【００７８】
【図１】本発明の好適な実施形態に係るコンピュータ・システム１の全体構成およびサーバ１０の機能構成を示すブロック図である。
【図２】本発明の好適な実施形態の一例に係るアバターＤＢ２０１を構成するアバターテーブルを示す図である。
【図３】本発明の好適な実施形態の一例に係る類似度ＤＢ２０７を構成する類似度テーブルを示す図である。
【図４】本発明の好適な実施形態の一例に係るサーバ１０のメイン処理を示すフローチャートである。
【図５】本発明の好適な実施形態の一例に係るサーバ１０の類似度の計算処理を示すフローチャートである。
【図６】本発明の好適な実施形態の一例に係るサーバ１０の類似度の判定処理を示すフローチャートである。
【図７】本発明の好適な実施形態の一例に係る類似ユーザＤＢ２２０を構成する類似ユーザテーブルを示す図である。
【図８】本発明の好適な実施形態の一例に係る類似ユーザＤＢ２２０を構成する類似ユーザテーブルの別の例を示す図である。
【図９】本発明の好適な実施形態の一例に係る類似アバターの検索結果の画面を示す図である。
【図１０】サーバ１０のハードウェア構成の一例を示す図である。
【符号の説明】
【００７９】
１        コンピュータ・システム
１０      サーバ
２０      端末
３０      通信ネットワーク
５０      対象ユーザのアバター
５１      他のユーザの類似アバター
５２      類似度表示エリア
５３      類似ユーザ数表示エリア
５４      類似ユーザ表示ボタン
１００    制御部
１２４    アバターテーブル読出し部
１２５    類似度計算部
１２６    類似度テーブル作成部
１２７    類似度判定部
１２８    類似ユーザ送信部
２００    記憶部
２０１    アバターＤＢ
２０２    アイテムＤＢ
２０７    類似度ＤＢ
２２０    類似ユーザＤＢ
【図１】
0004749242.tif 000002
【図２】
0004749242.tif 000003
【図３】
0004749242.tif 000004
【図４】
0004749242.tif 000005
【図５】
0004749242.tif 000006
【図６】
0004749242.tif 000007
【図７】
0004749242.tif 000008
【図８】
0004749242.tif 000009
【図９】
0004749242.tif 000010
【図１０】
0004749242.tif 000011