(57)【要約】【課題】本発明は、サイバースペースにおいて、以前に会話したユーザと出会える機会を増大することを実現する新たな仮想空間ログイン制御技術の提供を目的とする。【解決手段】ユーザの過去のシステム使用履歴を、仮想空間識別子と仮想空間での会話の開始時刻・終了時刻とを要素としてデータベース化し、そのデータベースに基づいてユーザ間の親密度を算出して蓄積する。そして、その蓄積したユーザ間親密度を参照することにより、ユーザからログイン要求があるときに、許容人数に入り、かつ、ログイン要求のユーザと最も大きなユーザ間親密度を持つユーザが存在する仮想空間への割り当てを決定するようにする。この構成に従って、以前に会話したユーザと出会う機会が増大し、結果として「すれ違い現象」が抑制されることで、コミュニティ形成を容易に実現することができるようになる。【選択図】図１
2010072890.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して複数のクライアント装置に接続され、同一の仮想空間を複数管理して、ユーザからのログイン要求に応答して、それらの仮想空間の内の１つを提供する仮想空間ログイン制御装置が実行する仮想空間ログイン制御方法であって、
ログイン中のユーザがどの仮想空間に存在するのかという情報を取得して、ログインユーザ情報記憶部に書き込む過程と、
ユーザが過去に存在した仮想空間の識別子とその仮想空間で行った会話の時刻についての履歴情報を記憶するユーザ履歴情報記憶部から、その履歴情報を取得し、それに基づいてユーザ間の親密度を算出して、ユーザ間親密度記憶部に書き込む過程と、
ユーザがログインを要求するときに、前記ログインユーザ情報記憶部および前記ユーザ間親密度記憶部の記憶する情報を参照することで、許容人数内のユーザが存在する仮想空間で、かつ、それらの仮想空間の中でログイン要求のユーザと最も大きなユーザ間親密度を持つユーザが存在する仮想空間を特定する過程と、
ログインを要求したユーザに対して、前記特定した仮想空間へのログインを許可する過程とを備えることを、
特徴とする仮想空間ログイン制御方法。
【請求項２】
請求項１に記載の仮想空間ログイン制御方法において、
前記ユーザ間親密度を算出してユーザ間親密度記憶部に書き込む過程では、前記ユーザ間親密度として、会話の開始時刻および終了時刻に基づいてユーザ間の会話の重なり時間の累積値を算出することを、
特徴とする仮想空間ログイン制御方法。
【請求項３】
ネットワークを介して複数のクライアント装置に接続され、同一の仮想空間を複数管理して、ユーザからのログイン要求に応答して、それらの仮想空間の内の１つを提供する仮想空間ログイン制御装置であって、
ログイン中のユーザがどの仮想空間に存在するのかという情報を記憶するログインユーザ情報記憶部と、
ユーザが過去に存在した仮想空間の識別子とその仮想空間で行った会話の時刻についての履歴情報を記憶するユーザ履歴情報記憶部と、
前記ユーザ履歴情報記憶部の記憶する履歴情報に基づいて、ユーザ間の親密度を算出する算出手段と、
前記算出手段の算出したユーザ間親密度を記憶するユーザ間親密度記憶部と、
ユーザがログインを要求するときに、前記ログインユーザ情報記憶部および前記ユーザ間親密度記憶部の記憶する情報を参照することで、許容人数内のユーザが存在する仮想空間で、かつ、それらの仮想空間の中でログイン要求のユーザと最も大きなユーザ間親密度を持つユーザが存在する仮想空間を特定する特定手段と、
ログインを要求したユーザに対して、前記特定手段の特定した仮想空間へのログインを許可する許可手段とを備えることを、
特徴とする仮想空間ログイン制御装置。
【請求項４】
請求項３に記載の仮想空間ログイン制御装置において、
前記算出手段は、前記ユーザ間親密度として、会話の開始時刻および終了時刻に基づいてユーザ間の会話の重なり時間の累積値を算出することを、
特徴とする仮想空間ログイン制御装置。
【請求項５】
請求項１または２に記載の仮想空間ログイン制御方法をコンピュータに実行させるための仮想空間ログイン制御プログラム。
【請求項６】
請求項１または２に記載の仮想空間ログイン制御方法をコンピュータに実行させるための仮想空間ログイン制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計算機（主にパソコン）とこれをつなぐネットワークとから構成される環境のもとで、計算機上に仮想的な共有空間を構築し、計算機を使用しているユーザ間で会話を楽しむためのサイバースペースにおける仮想空間ログイン制御方法およびその装置と、その仮想空間ログイン制御方法の実現に用いられる仮想空間ログイン制御プログラムおよびそのプログラムを記録したコンピュータ読み取り可能な記録媒体とに関する。
【背景技術】
【０００２】
サイバースペースは、仮想的な空間を管理するサーバと、各ユーザがこのサーバに接続するなどして使用するクライアントと、これらの間をつなぐネットワークとから構成される。
【０００３】
サーバは、主に仮想空間内の各ユーザの位置座標を管理し、クライアントとの間で位置座標を共有することで、他者の位置を把握することができる。
【０００４】
クライアントは、仮想空間の利用に当たり、まず、サーバに接続する必要がある。サーバは、クライアントから接続要求のあったときに、複数の仮想空間の状態を基に判断して、クライアントに接続許可を与える。
【０００５】
このときの「仮想空間の状態の判断」は、例えば、仮想空間がサービスを中止している場合、既に存在しない場合、また、許容人数の制限を越えているため仮想空間にログインできない状態にある場合かどうかなどに基づいて行われる。
【０００６】
ここで、許容人数の制限は、サーバにかかる不測の事態を回避するため、予め設定されている値であり、主に、サーバ性能に基づいて決定される。
【０００７】
従来、多人数の利用ユーザが見込まれる場合は、より高性能なサーバを用意したり、仮想空間を複数に分割してサーバの負荷を分散し（同一の仮想空間コンテンツを有する複数の仮想空間を用意することでサーバの負荷を分散し）、ログイン時にどの仮想空間を使うかを割り当てるログイン制御方法がとられていた（非特許文献１参照）。
【０００８】
すなわち、仮想空間を複数に分割してサーバの負荷を分散し、ログイン時にどの仮想空間を使うかを割り当てるという従来のログイン制御方法では、図９のフローチャートに示すように、ユーザに対してまず一つの仮想空間に割り当てていき、許容人数を越えたら次の仮想空間に割り当てるという方法を採用していた。
【非特許文献１】清末, 他：「インタースペースのアーキテクチャ」, NTT R&D, Vol.47, No.4, pp.91-96 (1998)
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、各ユーザは同一の仮想空間にログインしているユーザとしか出会うことはできない。
【００１０】
これから、従来技術のような仮想空間への機械的な割り当て方法に従っていると、以前に会話したユーザと出会う機会が減少し、結果として「すれ違い現象」が生じ、コミュニティ形成を困難にするという問題があった。
【００１１】
本発明はかかる事情に鑑みてなされたものであって、サイバースペースにおいて、以前に会話したユーザと出会える機会を増大することを実現することでコミュニティ形成を容易にすることを実現する新たな仮想空間ログイン制御技術の提供を目的とする。
【課題を解決するための手段】
【００１２】
この目的を達成するために、本発明の仮想空間サーバは、ネットワークを介して複数のクライアント装置に接続され、同一の仮想空間を複数管理して、ユーザからのログイン要求に応答して、それらの仮想空間の内の１つを提供するという処理を実現するために、（１）ログイン中のユーザがどの仮想空間に存在するのかという情報を記憶するログインユーザ情報記憶部と、（２）ユーザが過去に存在した仮想空間の識別子とその仮想空間で行った会話の時刻についての履歴情報を記憶するユーザ履歴情報記憶部と、（３）ユーザ履歴情報記憶部の記憶する履歴情報に基づいて、ユーザ間の親密度を算出する算出手段と、（４）算出手段の算出したユーザ間親密度を記憶するユーザ間親密度記憶部と、（５）ユーザがログインを要求するときに、ログインユーザ情報記憶部およびユーザ間親密度記憶部の記憶する情報を参照することで、許容人数内のユーザが存在する仮想空間で、かつ、それらの仮想空間の中でログイン要求のユーザと最も大きなユーザ間親密度を持つユーザが存在する仮想空間を特定する特定手段と、（６）ログインを要求したユーザに対して、特定手段の特定した仮想空間へのログインを許可する許可手段とを備えるように構成する。
【００１３】
この構成を採るときに、算出手段は、ユーザ間親密度として、会話の開始時刻および終了時刻に基づいてユーザ間の会話の重なり時間の累積値を算出することがある。
【００１４】
以上の各処理手段が動作することで実現される本発明の仮想空間ログイン制御方法はコンピュータプログラムでも実現できるものであり、このコンピュータプログラムは、適当なコンピュータ読み取り可能な記録媒体に記録して提供されたり、ネットワークを介して提供され、本発明を実施する際にインストールされてＣＰＵなどの制御手段上で動作することにより本発明を実現することになる。
【００１５】
このように構成される本発明の仮想空間サーバでは、ログイン中のユーザがどの仮想空間に存在するのかという情報を取得してログインユーザ情報記憶部に書き込むことで、ログインユーザ情報記憶部がログイン中のユーザがどの仮想空間に存在するのかという情報を記憶するようにし、さらに、ユーザ履歴情報記憶部の記憶する履歴情報に基づいてユーザ間の親密度を算出してユーザ間親密度記憶部に書き込むことで、ユーザ間親密度記憶部がユーザ間の親密度を記憶するようにする。
【００１６】
そして、ユーザがログインを要求するときに、ログインユーザ情報記憶部およびユーザ間親密度記憶部の記憶する情報を参照することで、許容人数内のユーザが存在する仮想空間で、かつ、それらの仮想空間の中でログイン要求のユーザと最も大きなユーザ間親密度を持つユーザが存在する仮想空間を特定して、ログインを要求したユーザに対して、その特定した仮想空間へのログインを許可する。
【００１７】
このようにして、本発明では、ユーザの過去のシステム使用履歴を、仮想空間識別子と仮想空間での会話の開始時刻・終了時刻とを要素としてデータベース化し、そのデータベースに基づいてユーザ間の親密度を算出し蓄積して、その蓄積したユーザ間親密度を参照することにより、ユーザからログイン要求があるときに、許容人数に入り、かつ、ログイン要求のユーザと最も大きなユーザ間親密度を持つユーザが存在する仮想空間への割り当てを決定するようにする。
【発明の効果】
【００１８】
本発明によれば、計算機とこれをつなぐネットワークとから構成される環境のもとで、計算機上に仮想的な共有空間を構築し、計算機を使用しているユーザ間で会話を楽しむためのサイバースペースにおいて、以前に会話したユーザと出会う機会が増大し、結果として「すれ違い現象」が抑制されることで、コミュニティ形成を容易に実現することができるようになる。
【発明を実施するための最良の形態】
【００１９】
以下、実施の形態に従って本発明を詳細に説明する。
【００２０】
図１に、本発明を具備する仮想空間システムのシステム構成を示す。
【００２１】
図１に示すように、本発明を具備する仮想空間システムは、パラレルワールドとなる同一の仮想空間コンテンツを有する複数の仮想空間を提供する仮想空間サーバ１と、ユーザが操作して仮想空間サーバ１の提供する仮想空間にログインする複数のクライアント２-i（ｉ＝１〜ｎ）と、仮想空間サーバ１とクライアント２-iとの間を接続するネットワーク３と、ユーザの仮想空間の使用履歴情報を管理するユーザ履歴情報データベース４と、ユーザ間の親密度を管理するユーザ間親密度データベース５とを備える。
【００２２】
仮想空間サーバ１は、提供対象となる仮想空間を管理する仮想空間管理部１１と、ユーザの仮想空間の使用履歴情報を取得してユーザ履歴情報データベース４に登録するユーザ履歴情報取得部１２と、ユーザ履歴情報データベース４の管理するユーザ履歴情報に基づいてユーザ間の親密度を算出してユーザ間親密度データベース５に登録するユーザ間親密度算出部１３と、ユーザ間親密度データベース５の管理するユーザ間親密度に基づいて仮想空間へのログインを制御する仮想空間ログイン制御部１４と、仮想空間にログインしているユーザについての情報（ログイン中ユーザの一覧情報、ログイン中の各ユーザがどの仮想空間にログインしているのかを示す情報、各仮想空間にログインしているユーザ数の情報）を記憶する図２に示すようなデータ構造を持つログインユーザ情報記憶部１５とを備える。
【００２３】
ここで、図２では、ログインユーザ情報記憶部１５が、ログイン中ユーザの一覧情報と、ログイン中の各ユーザがどの仮想空間にログインしているのかを示す情報と、各仮想空間にログインしているユーザ数の情報とを記憶するという構成を採ったが、ログイン中の各ユーザがどの仮想空間にログインしているのかを示す情報さえあれば、ログイン中ユーザの一覧情報と各仮想空間にログインしているユーザ数の情報とについては、その情報に基づいて特定可能であるので、必ずしも記憶する必要はない。
【００２４】
なお、ログインユーザ情報記憶部１５の記憶する情報については、仮想空間ログイン制御部１４によりユーザのログインが許可されてユーザがログインするときに更新されるとともに、ユーザがログアウトするときに更新されることになる。
【００２５】
ユーザ履歴情報データベース４は、ユーザ履歴情報取得部１２の取得した所定の期間におけるユーザの仮想空間の使用履歴情報を管理するものであり、具体的には、図３に示すように、ユーザが過去に存在した仮想空間の識別子（仮想空間ＩＤ）の履歴情報と、その仮想空間で行ったテキストおよび音声による会話の開始時刻・終了時刻の履歴情報とを管理するデータベースである。
【００２６】
ユーザ間親密度データベース５は、ユーザ間親密度算出部１３の算出したユーザ間親密度を管理するものであり、図４に示すように、ユーザ履歴情報データベース４の管理するユーザ履歴情報から算出されるユーザ間の親密度を、ユーザＩＤを検索キーとして蓄積するデータベースである。
【００２７】
図５に、仮想空間サーバ１の提供する仮想空間の全体構成図を示す。
【００２８】
図５に示すように、仮想空間サーバ１の提供する仮想空間は、パラレルワールドとなる同一の仮想空間コンテンツを有する複数の仮想空間１０１，１０２，１０３などから構成される。多人数の利用が見込まれる場合に、このようにパラレルワールドとなる同一の仮想空間コンテンツを有する複数の仮想空間を用意しておき、利用時に、ユーザに対して適切な仮想空間の割り当てを行う。仮想空間ログイン制御部１４がこの割り当てを行うことになる。
【００２９】
ここで、図５に示す仮想空間において、仮想空間１０１と仮想空間１０２とは隣接する仮想空間であって、同一の仮想空間コンテンツをそれぞれ別々に有する。一方、仮想空間１０２と仮想空間１０３とは同一の仮想空間コンテンツを共有する。また、１０４は仮想空間内にログインしているユーザ（アバタ）を示す。
【００３０】
このように複数の仮想空間で仮想空間全体が構成されている場合、各ユーザは同一の仮想空間にログインしているユーザとしか会うことはできない。
【００３１】
次に、図６に示すフローチャートに従って、ユーザ間親密度算出部１３の実行するユーザ間親密度の算出処理について説明する。
【００３２】
ユーザ間親密度算出部１３は、例えば所定の算出周期に従って起動されると、図６のフローチャートに示すように、まず最初に、ステップＳ１０１で、ユーザｉを指す変数ｉに１をセットするとともに、ユーザｊを指す変数ｊに１をセットするという初期化処理を実行する。
【００３３】
続いて、ステップＳ１０２で、ｉ＝ｊであるのか否かを判断して、ｉ＝ｊでないことを判断するときには、ステップＳ１０３に進んで、後述するステップＳ１０８の処理に従って、ユーザｊとユーザｉとの間の親密度を示すユーザ間親密度Ｃjiが既に算出済みであるのか否かを判断する。
【００３４】
すなわち、例えば、ｉ＝５，ｊ＝２の場合に算出されるＣ52はユーザ５とユーザ２との間のユーザ間親密度を示しているが、このユーザ間親密度Ｃ52はユーザ２とユーザ５との間のユーザ間親密度Ｃ25と同じ値であることから、既にＣ25を算出している場合にはＣ52の算出を省略することができるので、このステップＳ１０３では、ユーザｊとユーザｉとの間の親密度を示すユーザ間親密度Ｃjiが既に算出済みであるのか否かを判断するのである。
【００３５】
このステップＳ１０３の判断処理で、ユーザ間親密度Ｃjiが算出済みでないことを判断するとき、すなわち、ユーザｉとユーザｊとの間の親密度を示すユーザ間親密度Ｃijを算出する必要があることを判断するときには、ステップＳ１０４に進んで、図３に示すようなデータ構造を持つユーザ履歴情報データベース４を参照することで、ユーザｉとユーザｊとが同一の仮想空間にいたことがあるのか否かを判断する。
【００３６】
続いて、ステップＳ１０５で、ステップＳ１０４の判断処理で同一の仮想空間にいたことがあるという判断結果が得られたのか否かを判断して、同一の仮想空間（複数の仮想空間のこともある）にいたことがあるという判断結果が得られたときには、ステップＳ１０６に進んで、図３に示すようなデータ構造を持つユーザ履歴情報データベース４を参照することで、その同一の仮想空間におけるユーザｉの会話の開始時刻・終了時刻と、その同一の仮想空間におけるユーザｊの会話の開始時刻・終了時刻とに重なりがあるのか否かを判断する。
【００３７】
続いて、ステップＳ１０７で、ステップＳ１０６の判断処理で会話の開始時刻・終了時刻に重なりがあるという判断結果が得られたのか否かを判断して、会話の開始時刻・終了時刻に重なりがあるという判断結果が得られたときには、ステップＳ１０８に進んで、ユーザｉとユーザｊとの会話の重なり時間Ｖijの総和Ｃijを算出する。
【００３８】
続いて、ステップＳ１０９で、算出したＣijをユーザｉとユーザｊとの間のユーザ間親密度と設定して、ユーザ間親密度データベース５に登録する。
【００３９】
一方、ステップＳ１０２の判断処理でｉ＝ｊであることを判断するときには、ステップＳ１１０に進んで、Ｃij（≡Ｃii）＝無効データとして設定してから、ステップＳ１０９に進んで、設定したＣij（≡Ｃii）＝無効データをユーザｉとユーザｊ（≡ユーザｉ）との間のユーザ間親密度と設定して、ユーザ間親密度データベース５に登録する。
【００４０】
そして、ステップＳ１０５の判断処理で同一の仮想空間にいたことがないと判断したときと、ステップＳ１０７の判断処理で会話の重なりがないと判断したときには、ステップＳ１１１に進んで、Ｃij＝０として設定してから、ステップＳ１０９に進んで、設定したＣij＝０をユーザｉとユーザｊとの間のユーザ間親密度と設定して、ユーザ間親密度データベース５に登録する。
【００４１】
そして、ステップＳ１０３の判断処理でユーザ間親密度Ｃjiが算出済みであることを判断するときには、ステップＳ１０９に進んで、算出済みのＣjiをユーザｉとユーザｊとの間のユーザ間親密度と設定して、ユーザ間親密度データベース５に登録する。
【００４２】
ステップＳ１０９でユーザ間親密度データベース５にユーザ間親密度を登録すると、続いて、ステップＳ１１２で、変数ｊの値を１つインクリメントし、続くステップＳ１１３で、変数ｊの値がユーザ数ｎを越えたのか否かを判断して、越えていないことを判断するときには、ステップＳ１０２の処理に戻る。
【００４３】
一方、ステップＳ１１３で変数ｊの値がユーザ数ｎを越えたことを判断するときには、ステップＳ１１４に進んで、変数ｉの値を１つインクリメントし、続くステップＳ１１５で、変数ｉの値がユーザ数ｎを越えたのか否かを判断する。
【００４４】
このステップＳ１１５の判断処理により、変数ｉの値がユーザ数ｎを越えていないことを判断するときには、ステップＳ１１６に進んで、変数ｊの値を１にセットしてからステップＳ１０２の処理に戻り、越えたことを判断するときには、処理を終了する。
【００４５】
このようにして、ユーザ間親密度算出部１３は、同一の仮想空間における会話の重なり時間の累積値に基づいてユーザｉとユーザｊとの間のユーザ間親密度Ｃijを算出して、図４に示すようなデータ構造を持つユーザ間親密度データベース５に登録するように処理するのである。
【００４６】
次に、ユーザが２人で、仮想空間が２つの場合を具体例にして、ユーザ間親密度算出部１３の実行するユーザ間親密度の算出処理について具体的に説明する。
【００４７】
ユーザ１が過去に存在していた仮想空間の識別子をｗ１、ユーザ２が過去に存在していた仮想空間の識別子をｗ２とすると、図６のフローチャートは、ステップＳ１０５の処理を実行することから分かるように、
ｆ（ｗ１，ｗ２）＝１  ：  ｗ１＝ｗ２のとき
＝０  ：  ｗ１≠ｗ２のとき
となるような関数ｆを用いることと等しい処理を実行する。
【００４８】
すなわち、図６のフローチャートは、図７（ａ）に示すように、仮想空間ｗ１と仮想空間ｗ２とが同一であることで、ユーザ１とユーザ２とが同一の仮想空間にいたことがあるときには、ｆ（ｗ１，ｗ２）＝１となり、一方、図７（ｂ）に示すように、仮想空間ｗ１と仮想空間ｗ２とが同一でないことで、ユーザ１とユーザ２とが同一の仮想空間にいたことがないときには、ｆ（ｗ１，ｗ２）＝０となるという関数ｆを用いることと等しい処理を実行する。
【００４９】
一方、ユーザ１とユーザ２の会話時間の重なりは、仮想空間サーバ１へのログインからログアウトまでの間において、ユーザ１の会話開始時刻をｔ11、会話終了時刻をｔ12（＞ｔ11）、ユーザ２の会話開始時刻をｔ21、会話終了時刻をｔ22（＞ｔ21）とした場合、ユーザ１の会話時間Ｄ１は、
Ｄ１＝ｔ12−ｔ11
となり、ユーザ２の会話時間Ｄ２は、
Ｄ２＝ｔ22−ｔ21
となる。なお、ここでの会話時間とはテキストまたは音声により会話している時間を意味する。
【００５０】
このユーザ１とユーザ２の会話開始時刻、会話終了時刻を用いて表すならば、図６のフローチャートのステップＳ１０８で実行する会話の重なり時間Ｖ12（＝Ｖ21）の算出処理は、
（ｉ）Ｖ12（ｔ11，ｔ12，ｔ21，ｔ22）＝０
・ｆ＝０のとき
・ｆ＝１で、かつ、ｔ21≧ｔ12のとき
・ｆ＝１で、かつ、ｔ11≧ｔ22のとき
（ii）Ｖ12（ｔ11，ｔ12，ｔ21，ｔ22）＝second（ｔ11，ｔ12，ｔ21，ｔ22）
−third （ｔ11，ｔ12，ｔ21，ｔ22）
・ｆ＝１で、かつ、ｔ11＜ｔ21＜ｔ12のとき
となるような関数Ｖを用いることと等しい処理である。ここで、second()は括弧の中に含まれる値の内の２番目に大きな値を返す関数であり、third() は括弧の中に含まれる値の内の３番目に大きな値を返す関数である。
【００５１】
上述したように、図６のフローチャートでは、過去の時刻Ｔから現在ｔまでのユーザ１とユーザ２との間の親密度Ｃ12を以下のように、
Ｃ12＝ΣＶ12（ｐ）
で定義している。
【００５２】
ここで、ｐは現在の時刻ｔから過去の時刻Ｔまでの（ｔ−Ｔ）の間に、ユーザ１とユーザ２との会話時間の重なりを得た回数（時間）を示す。
【００５３】
つまり、Ｃ12はユーザ１とユーザ２の累積会話時間と等しく、図６のフローチャートでは、これをユーザ間親密度と定義する。Ｃ12の値が大きいはどユーザ間の親密度が高いといえる。
【００５４】
このようにして、ユーザ間親密度算出部１３は、ユーザ履歴情報データベース４に蓄積されたユーザ１およびユーザ２のユーザ履歴情報を用いて、以上の処理を実行することにより、ユーザ１とユーザ２とのユーザ間の親密度Ｃ12を算出し、それをユーザ間親密度データベース５に蓄積するように処理する。そして、同様に、すべての登録ユーザの組み合わせについてユーザ間の親密度を算出して、ユーザ間親密度データベース５に蓄積するように処理するのである。
【００５５】
次に、図８に示すフローチャートに従って、ユーザから仮想空間へのログイン要求が発行されるときに仮想空間ログイン制御部１４の実行する処理について説明する。
【００５６】
仮想空間ログイン制御部１４は、ユーザから仮想空間へのログイン要求が発行されると、図８のフローチャートに示すように、まず最初に、ステップＳ２０１で、そのログイン要求を受け取る。
【００５７】
続いて、ステップＳ２０２で、図２に示すようなデータ構造を持つログインユーザ情報記憶部１５の記憶するログイン中ユーザの一覧情報を参照することで、この時点に仮想空間にログインしているユーザ（ログイン中ユーザ）を特定する。
【００５８】
続いて、ステップＳ２０３で、図４に示すようなデータ構造を持つユーザ間親密度データベース５を参照することで、特定したログイン中ユーザとログイン要求ユーザとの間のユーザ間親密度を取得して、その高い順にログイン中ユーザを順序付ける。
【００５９】
続いて、ステップＳ２０４で、全てのログイン中ユーザを選択したのか否かを判断して、全てのログイン中ユーザを選択していないことを判断するときには、ステップＳ２０５に進んで、未選択のログイン中ユーザの中から、最も優先順位の高いログイン中ユーザを選択する。
【００６０】
続いて、ステップＳ２０６で、図２に示すようなデータ構造を持つログインユーザ情報記憶部１５の記憶する仮想空間とログイン中ユーザとの対応関係の情報を参照することで、選択したログイン中ユーザがログインしている仮想空間を特定する。
【００６１】
続いて、ステップＳ２０７で、図２に示すようなデータ構造を持つログインユーザ情報記憶部１５の記憶する仮想空間とログイン中ユーザ数との対応関係の情報を参照することで、特定した仮想空間にログインしているログイン中ユーザのユーザ数を特定する。
【００６２】
続いて、ステップＳ２０８で、特定したユーザ数が仮想空間にログイン可能な最大のユーザ数ｍを越えているのか否かを判断して、最大のユーザ数ｍを越えていることを判断するときには、ステップＳ２０４の処理に戻る。
【００６３】
このようにしてステップＳ２０４〜ステップＳ２０８の処理を繰り返していくことで、ステップＳ２０４において、全てのログイン中ユーザを選択したことを判断することで、全ての仮想空間にｍ人のユーザがログインしていることを判断するときには、ステップＳ２０９に進んで、ログインの不許可を通知して、処理を終了する。
【００６４】
一方、ステップＳ２０８において、ステップＳ２０６で特定したユーザ数が仮想空間にログイン可能な最大のユーザ数ｍを越えていないことを判断するときには、ステップＳ２１０に進んで、その仮想空間へのログインを許可し、続くステップＳ２１１で、そのログインの許可に合わせてログインユーザ情報記憶部１５の記憶する情報を更新して、処理を終了する。
【００６５】
このようにして、仮想空間ログイン制御部１４は、ユーザから仮想空間へのログイン要求があると、ログインユーザ情報記憶部１５およびユーザ間親密度データベース５の記憶する情報に基づいて、そのログイン要求のユーザに対して、許容人数に入り、かつ、そのユーザと最も大きなユーザ間親密度を持つユーザが存在する仮想空間へのログインを実現するように制御するのである。
【００６６】
これにより、ログイン要求のユーザは以前に会話したユーザと出会う機会が増大することになる。
【産業上の利用可能性】
【００６７】
本発明は、計算機とこれをつなぐネットワークとから構成される環境のもとで、計算機上に仮想的な共有空間を構築し、計算機を使用しているユーザ間で会話を楽しむためのサイバースペースに適用できるものであり、本発明を適用することで、以前に会話したユーザと出会う機会が増大し、結果として「すれ違い現象」が抑制されることで、コミュニティ形成を容易に実現することができるようになる。
【図面の簡単な説明】
【００６８】
【図１】本発明を具備する仮想空間システムのシステム構成図である。
【図２】ログインユーザ情報記憶部の記憶する情報の説明図である。
【図３】ユーザ履歴情報データベースの管理する情報の説明図である。
【図４】ユーザ間親密度データベースの管理する情報の説明図である。
【図５】仮想空間サーバの提供する仮想空間の全体構成図である。
【図６】ユーザ間親密度算出部の実行するフローチャートである。
【図７】ユーザ間親密度算出部の実行する処理についての説明図である。
【図８】仮想空間ログイン制御部の実行するフローチャートである。
【図９】従来技術のフローチャートである。
【符号の説明】
【００６９】
１    仮想空間サーバ
２    クライアント
３    ネットワーク
４    ユーザ履歴情報データベース
５    ユーザ間親密度データベース
１１  仮想空間管理部
１２  ユーザ履歴情報取得部
１３  ユーザ間親密度算出部
１４  仮想空間ログイン制御部
１５  ログインユーザ情報記憶部
【図１】
2010072890.tif 000003
【図２】
2010072890.tif 000004
【図３】
2010072890.tif 000005
【図４】
2010072890.tif 000006
【図５】
2010072890.tif 000007
【図６】
2010072890.tif 000008
【図７】
2010072890.tif 000009
【図８】
2010072890.tif 000010
【図９】
2010072890.tif 000011