(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024146521
(43)【公開日】2024-10-15
(54)【発明の名称】情報処理装置、情報処理方法および非一時的記憶媒体
(51)【国際特許分類】
G06Q 50/10 20120101AFI20241004BHJP
【FI】
G06Q50/10
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2023059484
(22)【出願日】2023-03-31
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】小野寺 剛
(72)【発明者】
【氏名】秦 凌舒
(72)【発明者】
【氏名】谷口 佑子
【テーマコード(参考)】
5L049
5L050
【Fターム(参考)】
5L049CC11
5L050CC11
(57)【要約】
【課題】仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができる。
【解決手段】本願に係る情報処理装置は、各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得する取得部と、所定のユーザの行動情報に基づいて、所定のユーザとは異なる他のユーザの中から所定のユーザと仮想空間を共有することを推奨する推奨ユーザを選択する選択部と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得する取得部と、
前記所定のユーザの行動情報に基づいて、前記所定のユーザとは異なる他のユーザの中から前記所定のユーザと前記仮想空間を共有することを推奨する推奨ユーザを選択する選択部と、
を備える情報処理装置。
【請求項2】
前記選択部は、
前記所定のユーザの行動情報として、前記所定のユーザが前記他のユーザと共同した行動である共同行動の履歴に関する情報に基づいて、前記推奨ユーザを選択する、
請求項1に記載の情報処理装置。
【請求項3】
前記選択部は、
前記共同行動の履歴に関する情報として、前記所定のユーザが前記仮想空間に前回入った際の前記共同行動の履歴に関する情報に基づいて、前記所定のユーザが前記仮想空間に今回入った際の前記推奨ユーザを選択する、
請求項2に記載の情報処理装置。
【請求項4】
前記選択部は、
前記所定のユーザが前記仮想空間に前回入った際の前記共同行動の履歴に関する情報として、前記所定のユーザが前記仮想空間に前回入った際の前記共同行動の強度に関する情報に基づいて、前記所定のユーザが前記仮想空間に今回入った際の前記推奨ユーザを選択する、
請求項3に記載の情報処理装置。
【請求項5】
前記選択部は、
前記共同行動の履歴に関する情報として、前記所定のユーザが前記仮想空間に前回入った際の前記共同行動を起こしてから前記所定のユーザが前記仮想空間に今回入る行動を起こすまでに経過した時間に関する情報に基づいて、前記所定のユーザが前記仮想空間に今回入った際の前記推奨ユーザを選択する、
請求項2に記載の情報処理装置。
【請求項6】
前記取得部は、
前記仮想空間における前記他のユーザの行動履歴に関する行動情報を取得し、
前記選択部は、
前記所定のユーザの行動情報と前記他のユーザの行動情報とに基づいて、前記所定のユーザの行動と前記他のユーザの行動との類似度を推定し、推定された前記類似度に基づいて、前記推奨ユーザを選択する、
請求項1に記載の情報処理装置。
【請求項7】
前記取得部は、
前記仮想空間における前記他のユーザの行動履歴に関する行動情報を取得し、
前記選択部は、
前記所定のユーザの行動情報と前記他のユーザの行動情報とに基づいて、前記所定のユーザの嗜好と前記他のユーザの嗜好との類似度を推定し、推定された前記類似度に基づいて、前記推奨ユーザを選択する、
請求項1に記載の情報処理装置。
【請求項8】
前記仮想空間に入っている前記推奨ユーザに対応するアバターが所在する前記仮想空間内の場所および前記推奨ユーザが入っている前記仮想空間を提供するサーバに関する情報を前記所定のユーザに対して提供する提供部をさらに備え、
前記提供部は、
前記所定のユーザおよび前記推奨ユーザの双方が承諾した場合に、前記所定のユーザに対応するアバターを前記推奨ユーザに対応するアバターが所在する前記仮想空間内の場所に移動させる、
請求項1に記載の情報処理装置。
【請求項9】
各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得することと、
前記所定のユーザの行動情報に基づいて、前記所定のユーザとは異なる他のユーザの中から前記所定のユーザと前記仮想空間を共有することを推奨する推奨ユーザを選択することと、
を含む情報処理方法。
【請求項10】
各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得することと、
前記所定のユーザの行動情報に基づいて、前記所定のユーザとは異なる他のユーザの中から前記所定のユーザと前記仮想空間を共有することを推奨する推奨ユーザを選択することをコンピュータに実現させるプログラムを記憶した、コンピュータ読み取り可能な非一時的記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、情報処理方法および非一時的記憶媒体に関する。
【背景技術】
【0002】
従来、仮想空間においてアバターを介したユーザ間の交流を支援する技術が知られている。例えば、仮想空間内における複数のユーザに対応付けられる複数の移動媒体のそれぞれの位置または複数の移動媒体間の関係に基づいて、複数のユーザのうちの、ユーザ間の対話が可能なユーザを決定する技術が知られている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記の従来技術では、仮想空間内における複数のユーザに対応付けられる複数の移動媒体のそれぞれの位置または複数の移動媒体間の関係に基づいて、複数のユーザのうちの、ユーザ間の対話が可能なユーザを決定するに過ぎないため、仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができるとは限らない。
【0005】
そこで、本開示では、仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができる情報処理装置、情報処理方法および非一時的記憶媒体を提案する。
【課題を解決するための手段】
【0006】
本開示によれば、各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得する取得部と、前記所定のユーザの行動情報に基づいて、前記所定のユーザとは異なる他のユーザの中から前記所定のユーザと前記仮想空間を共有することを推奨する推奨ユーザを選択する選択部と、を備える情報処理装置が提供される。
【図面の簡単な説明】
【0007】
【
図1】本開示の実施形態に係る情報処理の概要を示す図である。
【
図2】同実施形態に係る情報処理の概要を示す図である。
【
図3】同実施形態に係る情報処理装置の構成例を示す図である。
【
図4】同実施形態に係る確認ダイアログおよび承認ダイアログの一例を示す図である。
【
図5】同実施形態に係る推薦ダイアログの一例を示す図である。
【
図6】本開示に係る情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。
【発明を実施するための形態】
【0008】
以下に、本開示の実施形態について図面に基づいて詳細に説明する。なお、以下の各実施形態において、同一の部位には同一の符号を付することにより重複する説明を省略する。
【0009】
また、本明細書及び図面において、実質的に同一の機能構成を有する複数の構成要素を、同一の符号の後にハイフンおよび異なる数字を付して区別する場合もある。例えば、実質的に同一の機能構成を有する複数の構成を、必要に応じて端末装置10-1、10-2、および10-3のように区別する。ただし、実質的に同一の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。例えば、端末装置10-1、10-2、および10-3を特に区別する必要が無い場合には、単に端末装置10と称する。
【0010】
(実施形態)
[1.はじめに]
近年、情報通信技術の進展に伴い、インターネット上でユーザ同士の様々なコミュニケーションが行われている。例えば、SNS(Social Networking Service)は、人と人とのつながりを促進する機能をもち、ユーザ間のコミュニケーションがサービスの価値の源泉となっている会員専用のウェブサービスである。SNSは、コミュニケーションツールとして急速に普及し、生活インフラのレベルまで浸透している。
【0011】
また、近年、SNSの発展型として、各ユーザのアバターを通じたコミュニケーションの場やその背景を含む3次元のデジタル空間(3次元の仮想空間ともいう。以下、「仮想空間」と記載する場合がある。)を他者と共有するメタバースの普及が期待されている。メタバースとは、コンピュータやコンピュータネットワークの中に構築された3次元の仮想空間であり、アバターと呼ばれるユーザの分身を介してユーザが仮想空間に入り、アバターを通じて他のユーザとコミュニケーションを行うことができる仮想空間である。
【0012】
アバターは、例えば、ユーザを模したキャラクター等の3次元の仮想物体である。各ユーザに対応するアバターは、仮想空間内を自由に移動することができる。言い換えると、アバターは、仮想空間内を移動可能な移動媒体である。また、各ユーザは、各ユーザに対応するアバターを介して仮想空間内で様々な活動を行うことができる。例えば、仮想空間内では、ユーザ間で、テキストによるチャット(以下、「テキストチャット」と記載する場合がある。)や音声によるチャット(以下、「ボイスチャット」と記載する場合がある。)を行うことができる。また、各ユーザは、仮想空間内で催される各種イベント(例えば、ゲームやコンサートなど)に参加することができる。このように、仮想空間では、各ユーザの活動を含む仮想現実が進行する。
【0013】
また、ユーザは、有限なネットワーク・サーバのリソースの制約を受けて、他のユーザと仮想空間を共有する。これは、仮想空間を共有できるユーザの人数や情報量に制限があるためである。このような背景の下で、ユーザの様々な活動の目的に対してユーザの満足度を向上させるためには、ユーザと仮想空間を共有する他のユーザを選別し、最適化することが重要となる。
【0014】
例えば、既存のUnreal Engineなど、複数のユーザ間でリアルタイムに仮想空間を共有する技術では、仮想空間を共有するユーザが同一のサーバへ接続していることが必須の条件となっている。具体的には、ユーザは、仮想空間を提供するサーバにユーザの端末装置を接続することにより仮想空間に入り、そのサーバに接続している他のユーザとのみ仮想空間を共有することができる。また、メタバースのような仮想空間を提供するサービスでは、通常、多くのユーザに対するサービスの提供を実現するために、サーバを複数台用意している。すなわち、メタバースのような仮想空間は、複数のサーバそれぞれによって提供される。このように分断されたサーバ間では、仮想空間も同じく分断される。例えば、複数のサーバそれぞれが仮想空間内の異なる空間領域をそれぞれ提供する場合がある。また、複数のサーバそれぞれが仮想空間内の同一の空間領域をそれぞれ提供する場合がある。
【0015】
なお、ユーザが他のユーザと仮想空間を共有するとは、ユーザが他のユーザと仮想空間における仮想現実を共有することと言い換えることができる。また、ユーザが他のユーザと仮想空間を共有するとは、仮想空間内の所定の地点から所定の範囲内にユーザのアバターと他のユーザのアバターが同じ時刻に位置することと言い換えることができる。
【0016】
また、従来、ユーザは、接続先のサーバとは異なる他のサーバが提供する仮想空間の状況を把握することが困難だった。例えば、従来、ユーザは、仮想空間上で仲の良い他のユーザや過去に一緒に活動したことのあるコミュニティメンバー(以下、「ユーザと仲の良い他のユーザ等」と記載する場合がある。)と仮想空間の中で出会いた場合には、仮想空間における友達の一覧やコミュニティメンバーの一覧の中から、ユーザと仲の良い他のユーザ等のうち仮想空間に現在入っているユーザを探す。以下では、ユーザが仮想空間に入っている状態のことを「オンライン状態」または「オンライン中」と記載する場合がある。また、ユーザが仮想空間に現在入っていない状態のことを「オフライン状態」または「オフライン中」と記載する場合がある。そして、ユーザは、運よくオンライン中のユーザを見つけた場合には、チャット等でオンライン中のユーザと連絡を取り、仮想空間内で待ち合わせをする必要があった。そのため、従来は、仲の良いユーザ同士が仮想空間を共有する際の利便性が高いとは言えなかった。
【0017】
なお、ユーザが仮想空間に入るとは、仮想空間を提供するサーバとユーザの端末装置が接続することと言い換えることができる。また、ユーザが仮想空間に入るとは、ユーザが仮想空間に関するサービスにログインすることと言い換えることもできる。また、ユーザが仮想空間に入るとは、ユーザに対応するアバターが仮想空間に位置することと言い換えることもできる。なお、仮想空間に入ったユーザは、仮想空間から出ることができる。ユーザが仮想空間から出るとは、仮想空間を提供するサーバとユーザの端末装置との接続が切れることと言い換えることができる。また、ユーザが仮想空間から出るとは、ユーザが仮想空間に関するサービスからログアウトすることと言い換えることもできる。また、ユーザが仮想空間から出るとは、ユーザに対応するアバターが仮想空間から消えることと言い換えることもできる。また、仮想空間から出たユーザは、仮想空間に再び入ることができる。
【0018】
これに対し、本開示の実施形態に係る情報処理装置は、ユーザに対応するアバターと他のユーザに対応するアバターが仮想空間を共有しながら、コミュニケーションを行った履歴を各ユーザに対応するアバターの位置座標と対応付けた情報をデータベースに保存し、蓄積する。例えば、仮想空間におけるコミュニケーションには、テキストチャットやボイスチャット等の機能を用いたコミュニケーション、エモートなどの感情表現を用いたコミュニケーション、および所定のイベントに一緒に参加することなどが含まれてよい。また、情報処理装置は、データベースに保存したコミュニケーションの履歴に基づいて、ユーザの会話の相手、友達、コミュニティメンバーなどとユーザとの関係性を推定し、ユーザと仮想空間を共有することを推奨する推奨ユーザを選択する。ここで、推奨ユーザは、ユーザと仲の良い他のユーザ等であり得る。また、情報処理装置は、ユーザの任意設定や自動推薦により、ユーザがサーバに接続した際に、推奨ユーザに対応するアバターが所在する仮想空間内の場所および推奨ユーザが入っている仮想空間を提供するサーバに関する情報をユーザに対して提供する。また、情報処理装置は、ユーザおよび推奨ユーザの双方が承諾した場合に、ユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させる。また、情報処理装置は、推奨ユーザへもその場所に仲の良いユーザが向かってくる旨を告知し、自然に再会できるように補助する。
【0019】
これにより、情報処理装置は、ユーザと仮想空間を共有する他のユーザを選別し、最適化することができる。また、情報処理装置は、ユーザが、仮想空間内で現在オンライン状態になっている仲の良い他のユーザ等が接続しているサーバに接続することを容易にすることができる。また、情報処理装置は、ユーザに対応するアバターが、現在オンライン状態になっている仲の良い他のユーザ等に対応するアバターがいる仮想空間内の場所へ容易に移動することを可能とすることができる。また、情報処理装置は、ユーザ同士のコミュニケーションの心理的障壁を下げ、仲の良いユーザ同士が即座に仮想空間を共有することを可能とすることができる。したがって、情報処理装置は、仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができる。また、情報処理装置は、仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができるので、仮想空間に関するサービスの利用を促進することができる。
【0020】
[2.情報処理の概要]
図1および
図2は、本開示の実施形態に係る情報処理の概要を示す図である。
図1および
図2に示す情報処理は、実施形態に係る情報処理システム1によって実現される。情報処理システム1は、ネットワークN(図示略)と、端末装置10と、サーバシステムを備える。サーバシステムは、ゲームサーバ20と、ログデータベース30と、ユーザデータベース40と、情報処理装置100を備える。
【0021】
ネットワークNは、端末装置10と、ゲームサーバ20と、ログデータベース30と、情報処理装置100を有線、又は無線により相互に通信可能に接続する。例えば、ネットワークNが無線の場合は、無線LAN(Local Area Network)、WAN(Wide Area Network)、インターネット、移動通信システム(4G(4th Generation Mobile Communication System)、4G-LTE(Long Term Evolution)、5G等を含む)などの相互通信可能な種々のネットワークであってよい。
【0022】
端末装置10は、ユーザが利用する情報処理装置である。端末装置10は、例えば、スマートフォン、タブレット型端末、デスクトップ型PC、ノート型PC、携帯電話機、PDA(Personal Digital Assistant)、HMD(Head Mounted Display)、ゲーム装置等の情報処理装置であってよい。なお、
図1および
図2では、端末装置10がスマートフォンである場合を示している。また、
図1および
図2では、簡単のため、端末装置10が3つである場合について説明するが、端末装置10の数は2以上であればいくつであってもよい。
【0023】
端末装置10は、入力部(図示略)を備える。入力部は、外部から各種入力を受け付ける入力装置である。入力部は、ユーザの入力操作を受け付ける操作装置を備える。操作装置は、例えば、キーボードやマウス、操作キーなど、ユーザが各種操作を行うための装置である。なお、端末装置10にタッチパネルが採用される場合には、タッチパネルも操作装置に含まれる。この場合、ユーザは、指やスタイラスで画面をタッチすることにより各種操作を行う。
【0024】
端末装置10は、表示部(図示略)を備える。表示部は、各種情報を表示する表示装置である。表示部は、例えば、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイなどである。なお、端末装置10にタッチパネルが採用される場合には、表示部は入力部の操作装置と一体の装置であってもよい。表示部は、各種情報を表示して利用者に提供する。また、以下の説明では、表示部を画面と記載する場合がある。
【0025】
また、端末装置10は、各ユーザに対応するアバターが移動可能な仮想空間に関するアプリケーションを実行する。端末装置10は、ゲームサーバ20と協働して、仮想空間に関するサービスにおける各種処理を実行する。具体的には、端末装置10は、仮想空間と、アバターと、仮想空間内に登場する各種の仮想物体等の仮想空間内で提供される各種のコンテンツ(例えば、画像)を画面に表示する。例えば、端末装置10は、仮想空間に対応する画像を画面に表示する。また、端末装置10は、仮想空間において、ユーザに対応するアバターに対応する画像を画面に表示する。
【0026】
また、端末装置10は、入力部を介して、仮想空間に関するサービスに対するユーザの操作を検出する。例えば、端末装置10は、ユーザのタップ操作、ロングタップ操作、フリック操作、およびスワイプ操作等を検出する。端末装置10は、ユーザの操作を検出した場合、ユーザの操作に関する操作情報をゲームサーバ20または情報処理装置100に送信する。
【0027】
ゲームサーバ20は、仮想空間に関するサービスを提供する運営者によって管理される情報処理装置である。ゲームサーバ20は、1台のサーバで構成されてもよいし、複数台のサーバで構成されてもよい。また、ゲームサーバ20は、ネットワークN上に配置された1以上のクラウドサーバにより構成されてもよい。
【0028】
また、ゲームサーバ20は、各ユーザに対応するアバターが移動可能な仮想空間に関するサービスを各ユーザに対して提供する。具体的には、ゲームサーバ20は、端末装置10と協働して、仮想空間に関するサービスにおける各種処理を実行する。より具体的には、ゲームサーバ20は、仮想空間と、アバターと、仮想空間内に登場する各種の仮想物体等を含むコンテンツを端末装置10に提供する。なお、以下では、ゲームサーバ20が提供するコンテンツが画像である場合について説明する。例えば、ゲームサーバ20は、端末装置10と協働して、仮想空間に対応する画像を端末装置10の画面に表示させ、仮想空間における仮想現実の進行やユーザの操作に応じて仮想空間の画像を更新する。また、ゲームサーバ20は、端末装置10と協働して、仮想空間および仮想空間に配置される各種の仮想物体を、仮想空間に配置された仮想カメラから視た表現で描画する。なお、仮想空間の描画情報は、あらかじめ生成されるが、事後的にまたは動的に更新されてもよい。また、仮想空間内の各位置は、3次元の空間座標系で規定されてよい。
【0029】
また、ゲームサーバ20は、端末装置10から操作情報を受信した場合、操作情報に対応する処理を実行する。例えば、ゲームサーバ20は、受信した操作情報に基づいて、仮想空間に位置する各ユーザのアバターを仮想空間の中で移動させる。また、ゲームサーバ20は、受信した操作情報に基づいて、仮想空間に位置する各ユーザのアバターを行動させることで、仮想空間における各ユーザの行動を仮想的に実現する。また、ゲームサーバ20は、仮想空間における各ユーザの行動履歴をログデータベース30に保存する。
【0030】
以下では、ゲームサーバ20が、仮想空間に関するサービスの一例として、SNS型のメタバースを提供する場合について説明する。なお、ゲームサーバ20が提供する仮想空間に関するサービスは、ゲーム型のメタバースまたは3次元のゲームであってもよい。例えば、ゲームサーバ20が提供する仮想空間に関するサービスは、各ユーザに対応するアバターが仮想空間で活動するゲームのサービスであってもよい。
【0031】
図1では、3名のユーザA~Cそれぞれの端末装置10-1~10-3がゲームサーバ20に接続する。ゲームサーバ20は、各ユーザに対応するアバターが移動可能な仮想空間に関するサービスをユーザA~Cそれぞれに対して提供する。ユーザA~Cは、ゲームサーバ20が提供する仮想空間に入る。端末装置10-1~10-3それぞれは、ユーザA~Cそれぞれによって入力された操作情報(プレイログともいう)をゲームサーバ20に対して送信する。ゲームサーバ20は、端末装置10-1~10-3それぞれから操作情報を受信した場合、受信した操作情報に対応する処理それぞれを実行する。例えば、ゲームサーバ20は、受信した操作情報に基づいて、仮想空間に位置するユーザA~Cそれぞれのアバターを仮想空間の中で移動させる。また、ゲームサーバ20は、受信した操作情報に基づいて、仮想空間に位置するユーザA~Cそれぞれのアバターを行動させることで、仮想空間におけるユーザA~Cそれぞれの行動を仮想的に実現する。また、ゲームサーバ20は、仮想空間におけるユーザA~Cそれぞれの行動履歴をログデータベース30に保存する。
【0032】
ログデータベース30は、各ユーザに対応するアバターが移動可能な仮想空間における各ユーザの行動履歴に関する行動情報を記憶する。具体的には、ログデータベース30は、行動情報として、仮想空間における各ユーザの行動履歴を各ユーザに対応するアバターの仮想空間における位置座標と対応付けた情報を記憶する。例えば、ログデータベース30は、行動情報として、所定のユーザが他のユーザと共同した行動である共同行動の履歴を所定のユーザに対応するアバターの仮想空間における位置座標と対応付けた情報を記憶する。ここで、共同行動には、所定のユーザに対応するアバターと他のユーザに対応するアバターが仮想空間を共有する行動が含まれてよい。また、共同行動には、仮想空間において所定のユーザと他のユーザが行ったコミュニケーションの履歴が含まれてよい。例えば、共同行動には、所定のユーザと他のユーザが行ったテキストチャットやボイスチャット等の履歴、エモートなどの感情表現を用いたコミュニケーションの履歴、および各種イベント(例えば、ゲームやコンサートなど)に一緒に参加した履歴等が含まれてよい。なお、ログデータベース30は、ゲームサーバ20または情報処理装置100の一部であってもよいし、ゲームサーバ20および情報処理装置100とは別の構成であってもよい。
【0033】
図1では、ログデータベース30は、行動情報テーブル31を備える。行動情報テーブル31は、行動情報を記憶する。
図1を用いて、行動情報テーブル31が記憶する行動情報の一例を説明する。
図1に示す例において、行動情報テーブル31は、「活動ID」、「活動内容」、「日時」、「空間座標」、「ユーザID」という項目に係る情報を紐付けて記憶する。「活動ID」は、仮想空間における各ユーザの行動を識別する識別子であり、文字列や番号などによって表される。「活動内容」は、仮想空間における各ユーザの行動の内容を示す。「日時」は、仮想空間における各ユーザの行動が起こった日時を示す。「空間座標」は、仮想空間における各ユーザの行動が起こった際の各ユーザに対応するアバターの仮想空間における位置座標を示す。「ユーザID」は、各ユーザを識別する識別子であり、文字列や番号などによって表される。
【0034】
例えば、
図1の1行目に示す活動内容「チャット」は、活動ID「AC1」で識別される行動の内容がチャットであったことを示す。また、ユーザID「A」およびユーザID「B」は、ユーザID「A」で識別されるユーザ(ユーザA)とユーザID「B」で識別されるユーザ(ユーザB)がチャットを行ったことを示す。また、日時「2022/12/13 20:10:30」は、ユーザAとユーザBがチャットを開始した時刻が2022年12月13日の20時10分30秒であったことを示す。また、空間座標「SP1」は、チャットが開始された際にユーザAに対応するアバターの仮想空間における位置を示す位置座標がSP1であったことを示す。
【0035】
また、
図1の2行目に示す活動内容「イベント」は、活動ID「AC2」で識別される行動の内容がイベントへの参加であったことを示す。また、ユーザID「A」およびユーザID「C」は、ユーザID「A」で識別されるユーザ(ユーザA)とユーザID「C」で識別されるユーザ(ユーザC)が一緒にイベントに参加したことを示す。また、日時「2022/12/21 10:50:40」は、ユーザAとユーザCがイベントへの参加を開始した時刻が2022年12月21日の10時50分40秒であったことを示す。また、空間座標「SP2」は、イベントが開始された際にユーザAに対応するアバターの仮想空間における位置を示す位置座標がSP2であったことを示す。
【0036】
また、
図1の3行目に示す活動内容「チャット」は、活動ID「AC3」で識別される行動の内容がチャットであったことを示す。また、ユーザID「B」およびユーザID「C」は、ユーザID「B」で識別されるユーザ(ユーザB)とユーザID「C」で識別されるユーザ(ユーザC)がチャットを行ったことを示す。また、日時「2022/12/22 14:20:10」は、ユーザBとユーザCがチャットを開始した時刻が2022年12月22日の14時20分10秒であったことを示す。また、空間座標「SP3」は、チャットが開始された際にユーザBに対応するアバターの仮想空間における位置を示す位置座標がSP3であったことを示す。
【0037】
なお、ログデータベース30は、上記に限らず、様々な行動情報を記憶してよい。例えば、ログデータベース30は、行動情報として、ユーザが仮想空間に前回入った際の共同行動の履歴に関する情報を記憶する。例えば、ログデータベース30は、ユーザが仮想空間に前回入った際の共同行動の履歴に関する情報の一例として、ユーザが仮想空間に前回入った際に行った共同行動の強度に関する情報を記憶する。ここで、「ユーザが仮想空間に前回入った際」とは、ユーザが直近に仮想空間に入った際と言い換えることができる。例えば、ログデータベース30は、共同行動の強度に関する情報の一例として、ユーザが仮想空間に前回入った際に行ったチャットの時間の長さやチャットのテキストの文字数に関する情報を記憶する。また、ログデータベース30は、共同行動の強度に関する情報の一例として、ユーザが仮想空間に前回入った際に行ったゲームの協力プレイの時間の長さやゲームの協力プレイ中に行ったチャットのテキストの文字数に関する情報を記憶する。
【0038】
また、ログデータベース30は、行動情報として、ユーザが仮想空間に入った日時(例えば、2022年12月13日の10時00分00秒など)、ユーザが仮想空間から出た日時(例えば、2022年12月13日の11時00分00秒など)、ユーザが仮想空間に滞在した時間帯(例えば、10時~11時など)、ユーザが仮想空間に滞在した時間の長さ(例えば、1時間など)、ユーザが参加したイベントを識別可能な情報、ユーザに対応するアバターの服装を識別可能な情報などを記憶する。
【0039】
ユーザデータベース40は、各ユーザの属性に関する属性情報を記憶する。具体的には、ユーザデータベース40は、各ユーザのユーザIDと各ユーザの属性情報とを対応付けた情報を記憶する。なお、ユーザデータベース40は、各ユーザのユーザIDと各ユーザの属性情報と各ユーザの行動情報を対応付けた情報を記憶してもよい。例えば、ユーザデータベース40は、属性情報として、各ユーザと関係性を有する他のユーザに関する情報(例えば、ユーザID)を記憶する。ここで、ユーザと関係性を有する他のユーザとは、例えば、フレンドやグループメンバーである。フレンドとは、ユーザと友達になることを承諾した他のユーザのことを指す。また、グループメンバーとは、ユーザが所属するグループと同じグループに所属する他のユーザのことを指す。
【0040】
また、ユーザデータベース40は、属性情報として、ユーザのプロフィール情報を記憶する。例えば、ユーザデータベース40は、ユーザのプロフィール情報として、ユーザの趣味、嗜好、または自己紹介の文章に関する情報を記憶する。また、ユーザデータベース40は、属性情報として、ユーザの行動情報から読み取れるユーザの嗜好性に関する情報を記憶する。例えば、情報処理装置100は、ユーザの行動情報が入力された場合に、ユーザの嗜好性に関する情報を出力するよう学習された機械学習モデルを用いて、ユーザの行動情報からユーザの嗜好性に関する情報を推定する。情報処理装置100は、ユーザの嗜好性に関する情報を推定した場合、ユーザの嗜好性に関する情報をユーザIDと対応付けてユーザデータベース40に格納する。
【0041】
また、ユーザデータベース40は、ユーザの行動情報の一例として、ユーザの共同行動の履歴に関する情報から読み取れるユーザの嗜好性に関する情報を記憶する。例えば、情報処理装置100は、ユーザの共同行動の履歴に関する情報が入力された場合に、ユーザの嗜好性に関する情報を出力するよう学習された機械学習モデルを用いて、ユーザの共同行動の履歴に関する情報からユーザの嗜好性に関する情報を推定する。情報処理装置100は、ユーザの嗜好性に関する情報を推定した場合、ユーザの嗜好性に関する情報をユーザIDと対応付けてユーザデータベース40に格納する。
【0042】
また、ユーザデータベース40は、ユーザの共同行動の履歴に関する情報の一例として、ユーザが他のユーザと行ったチャットに対応するテキストから読み取れるユーザの嗜好性に関する情報を記憶する。例えば、情報処理装置100は、ユーザが他のユーザと行ったチャットに対応するテキストが入力された場合に、ユーザの嗜好性に関する情報を出力するよう学習された機械学習モデルを用いて、チャットに対応するテキストからユーザの嗜好性に関する情報を推定する。情報処理装置100は、ユーザの嗜好性に関する情報を推定した場合、ユーザの嗜好性に関する情報をユーザIDと対応付けてユーザデータベース40に格納する。
【0043】
なお、ユーザデータベース40は、ログデータベース30、ゲームサーバ20または情報処理装置100の一部であってもよいし、ログデータベース30、ゲームサーバ20および情報処理装置100とは別の構成であってもよい。
【0044】
情報処理装置100は、
図2に示す情報処理を実行する情報処理装置である。
図2では、
図1で説明したユーザBは仮想空間に入っている(オンライン中)が、ユーザCは仮想空間から出ている(オフライン中)。また、
図1で説明したユーザAはこれから仮想空間に入るところである。
図2では、情報処理装置100が、
図1で説明したユーザAの行動情報に基づいて、ユーザAと仮想空間を共有することを推奨する推奨ユーザを選択する場合について説明する。
【0045】
図2では、ユーザAの端末装置10-1は、情報処理装置100に接続要求を送信する(ステップS1)。情報処理装置100は、端末装置10-1から接続要求を受信する。情報処理装置100は、端末装置10-1から接続要求を受信した場合、ログデータベース30およびユーザデータベース40を参照して、ユーザAの行動情報および属性情報を取得する(ステップS2)。また、情報処理装置100は、端末装置10-1から接続要求を受信した場合、ゲームサーバ20への接続状況に関する情報をゲームサーバ20から取得する(ステップS3)。例えば、情報処理装置100は、接続状況に関する情報の一例として、ゲームサーバ20に現在接続しているユーザのユーザIDを取得する。
【0046】
情報処理装置100は、ユーザAの行動情報および属性情報ならびにゲームサーバ20への接続状況に関する情報を取得した場合、ユーザAの行動情報および属性情報ならびにゲームサーバ20への接続状態に関する情報に基づいて、マッチメイキングを行う。具体的には、情報処理装置100は、ユーザAの行動情報および属性情報ならびにゲームサーバ20の接続状態に関する情報に基づいて、ユーザAと仮想空間を共有することを推奨する推奨ユーザを選択する(ステップS4)。
図2では、情報処理装置100は、ユーザAの行動情報および属性情報に基づいて、推奨ユーザの候補として、ユーザBおよびユーザCを選択する。情報処理装置100は、推奨ユーザの候補として、ユーザBおよびユーザCを選択した場合、ゲームサーバ20への接続状態に関する情報に基づいて、ユーザBおよびユーザCのゲームサーバ20への接続状態を判定する。情報処理装置100は、ユーザBが現在、ゲームサーバ20に接続している状態(つまり、オンライン中)であり、ユーザCが現在、ゲームサーバ20に接続していない状態(つまり、オフライン中)であると判定する。情報処理装置100は、ユーザBがオンライン中であり、ユーザCがオフライン中であると判定した場合、推奨ユーザとして、現在オンライン中であるユーザBを選択する。
【0047】
情報処理装置100は、推奨ユーザとしてユーザBを選択した場合、ユーザAに対応するアバターをユーザBに対応するアバターが所在する仮想空間内の場所に移動させるか否かを選択可能なボタンを含む確認ダイアログを端末装置10-1に送信する(ステップS5)。なお、情報処理装置100が送信する確認ダイアログについては、後述する
図4を用いて詳しく説明する。
【0048】
端末装置10-1は、情報処理装置100から確認ダイアログを受信する。端末装置10-1は、確認ダイアログを受信した場合、確認ダイアログを画面に表示する。ユーザAは、例えば、端末装置10-1の画面を指でタップすることにより、ユーザAに対応するアバターをユーザBに対応するアバターが所在する仮想空間内の場所に移動させることを選択するボタンを選択する(ステップS6)。端末装置10-1は、ユーザAのタップ操作に応じて、ユーザAに対応するアバターをユーザBに対応するアバターが所在する仮想空間内の場所に移動させることを選択するというユーザAの選択結果に関する情報を情報処理装置100に送信する(ステップS7)。
【0049】
情報処理装置100は、ユーザAの選択結果に関する情報を端末装置10-1から受信する。情報処理装置100は、ユーザAの選択結果に関する情報を受信した場合、ユーザAに対応するアバターをユーザBに対応するアバターが所在する仮想空間内の場所に移動させることを承認するか否かを選択可能なボタンを含む承認ダイアログをユーザBの端末装置10-2に送信する(ステップS8)。なお、情報処理装置100が送信する承認ダイアログについては、後述する
図4を用いて詳しく説明する。
【0050】
端末装置10-2は、情報処理装置100から承認ダイアログを受信する。端末装置10-2は、承認ダイアログを受信した場合、承認ダイアログを画面に表示する。ユーザBは、例えば、端末装置10-2の画面を指でタップすることにより、ユーザAに対応するアバターをユーザBに対応するアバターが所在する仮想空間内の場所に移動させることを承認するボタンを選択する(ステップS9)。端末装置10-2は、ユーザBのタップ操作に応じて、ユーザAに対応するアバターをユーザBに対応するアバターが所在する仮想空間内の場所に移動させることを承認するというユーザBの選択結果に関する情報を情報処理装置100に送信する(ステップS10)。
【0051】
情報処理装置100は、ユーザBの選択結果に関する情報を端末装置10-2から受信する。情報処理装置100は、ユーザBの選択結果に関する情報を受信した場合、ユーザAに対応するアバターが到着するまでの間、仮想空間におけるユーザBに対応するアバターの位置が変わらないように、仮想空間におけるユーザBに対応するアバターの位置座標を固定する。続いて、情報処理装置100は、ユーザAに対応するアバターをユーザBに対応するアバターが所在する仮想空間内の場所に移動させる(ステップS11)。
【0052】
[3.情報処理装置の構成]
図3は、本開示の実施形態に係る情報処理装置100の構成例を示す図である。
図3に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。
【0053】
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークと有線または無線で接続され、例えば、端末装置10、ゲームサーバ20、ログデータベース30またはユーザデータベース40との間で情報の送受信を行ってもよい。
【0054】
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。例えば、記憶部120は、各種プログラムに関する情報を記憶する。
【0055】
制御部130は、コントローラ(Controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等によって、情報処理装置100の内部の記憶装置に記憶されている各種プログラムがRAM等の記憶領域を作業領域として実行されることにより実現される。
図3に示す例では、制御部130は、取得部131と、選択部132と、提供部133を有する。
【0056】
所定のユーザは、所定のユーザの端末装置10を介して、ゲームサーバ20によって提供される各ユーザに対応するアバターが移動可能な仮想空間に関するサービス(以下、「ゲームサービス」と記載する場合がある。)にログインする。所定のユーザの端末装置10は、所定のユーザがゲームサービスにログインすると同時に、情報処理装置100への接続要求を情報処理装置100に送信する。
【0057】
取得部131は、所定のユーザの端末装置10から接続要求を受信する。取得部131は、接続要求を受信した場合、ログデータベース30を参照して、各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得する。
【0058】
選択部132は、取得部131によって取得された所定のユーザの行動情報に基づいて、所定のユーザとは異なる他のユーザの中から所定のユーザと仮想空間を共有することを推奨する推奨ユーザを選択する。具体的には、選択部132は、所定のユーザの行動情報として、所定のユーザが他のユーザと共同した行動である共同行動の履歴に関する情報に基づいて、推奨ユーザを選択する。
【0059】
より具体的には、選択部132は、所定のユーザの行動情報に基づいて、推奨ユーザの候補である候補ユーザを選択する。例えば、選択部132は、所定のユーザの行動情報の中に所定のユーザが他のユーザと共同した行動である共同行動の履歴に関する情報(以下、「共同行動の履歴に関する情報」と略記する場合がある。)が含まれるか否かを判定する。選択部132は、所定のユーザの行動情報の中に共同行動の履歴に関する情報が含まれると判定した場合、共同行動の履歴に関する情報に基づいて、候補ユーザを選択する。選択部132は、候補ユーザを選択した場合、各ゲームサーバ20に対して候補ユーザの接続状況に関する情報を問い合わせる。例えば、選択部132は、各ゲームサーバ20に対して候補ユーザが現在各ゲームサーバ20に接続しているか否かを問い合わせる。各ゲームサーバ20は、候補ユーザが現在各ゲームサーバ20に接続しているか否かを示す情報を情報処理装置100に送信する。選択部132は、候補ユーザが現在各ゲームサーバ20に接続しているか否かを示す情報に基づいて、候補ユーザの中から、現在各ゲームサーバ20に接続しているユーザを推奨ユーザとして選択する。
【0060】
例えば、選択部132は、所定のユーザが他のユーザと共同した行動である共同行動の履歴に関する情報の一例として、所定のユーザが仮想空間に前回入った際の共同行動の履歴に関する情報に基づいて、所定のユーザが仮想空間に今回入った際の推奨ユーザを選択する。例えば、選択部132は、所定のユーザが仮想空間に前回入った際の共同行動(以下、「前回の共同行動」と記載する場合がある。)の履歴に関する情報に基づいて、所定のユーザが仮想空間に今回入った際の推奨ユーザ(以下、「今回の推奨ユーザ」と記載する場合がある。)の候補である候補ユーザ(以下、「今回の候補ユーザ」と記載する場合がある。)を選択する。例えば、選択部132は、前回の共同行動の履歴に関する情報に基づいて、所定のユーザと前回の共同行動を一緒に行った他のユーザを今回の候補ユーザとして選択する。
【0061】
また、選択部132は、前回の共同行動の履歴に関する情報の一例として、所定のユーザが仮想空間に前回入った際に行った共同行動の強度に関する情報に基づいて、今回の推奨ユーザを選択する。例えば、選択部132は、所定のユーザと前回の共同行動を一緒に行った他のユーザのうち現在各ゲームサーバ20に接続しているユーザ(以下、「第1の候補ユーザ」と記載する場合がある。)が複数存在する場合に、前回の共同行動の強度に関する情報に基づいて、第1の候補ユーザの中から今回の推奨ユーザを選択する。例えば、選択部132は、前回の共同行動の強度に関する情報に基づいて、第1の候補ユーザの中から前回の共同行動の強度がより高いユーザを今回の推奨ユーザとして選択する。例えば、選択部132は、前回の共同行動の強度に関する情報として、所定のユーザが仮想空間に前回入った際に一緒に共同行動を行った時間の長さに基づいて、前回の共同行動の強度がより高いユーザとして、第1の候補ユーザの中から一緒に共同行動を行った時間がより長いユーザを今回の推奨ユーザとして選択する。例えば、選択部132は、前回の共同行動の強度に関する情報として、所定のユーザが仮想空間に前回入った際に行ったチャットの時間の長さに基づいて、前回の共同行動の強度がより高いユーザとして、第1の候補ユーザの中からチャットの時間がより長いユーザを今回の推奨ユーザとして選択する。また、選択部132は、前回の共同行動の強度に関する情報の一例として、所定のユーザが仮想空間に前回入った際に行ったゲームの協力プレイの時間の長さに基づいて、第1の候補ユーザの中からゲームの協力プレイの時間の長さがより長いユーザを今回の推奨ユーザとして選択してもよい。
【0062】
なお、選択部132は、前回の共同行動の強度に関する情報として、所定のユーザが仮想空間に前回入った際に一緒に共同行動を行った際に発生した会話に含まれる文字数に基づいて、前回の共同行動の強度がより高いユーザとして、第1の候補ユーザの中から一緒に共同行動を行った際に発生した会話に含まれる文字数がより多いユーザを今回の推奨ユーザとして選択してもよい。例えば、選択部132は、前回の共同行動の強度に関する情報の一例として、所定のユーザが仮想空間に前回入った際に行ったチャットのテキストの文字数に基づいて、第1の候補ユーザの中からチャットのテキストの文字数がより多いユーザを今回の推奨ユーザとして選択してもよい。また、選択部132は、前回の共同行動の強度に関する情報の一例として、所定のユーザが仮想空間に前回入った際に行ったゲームの協力プレイ中に行ったチャットのテキストの文字数に基づいて、第1の候補ユーザの中からチャットのテキストの文字数がより多いユーザを今回の推奨ユーザとして選択してもよい。
【0063】
また、選択部132は、共同行動の履歴に関する情報の一例として、所定のユーザが仮想空間に前回入った際の共同行動を起こしてから所定のユーザが仮想空間に今回入る行動を起こすまでに経過した時間に関する情報に基づいて、所定のユーザが仮想空間に今回入った際の推奨ユーザを選択する。例えば、選択部132は、第1の候補ユーザが複数存在する場合に、第1の候補ユーザの中から複数の共同行動のうち直近の共同行動を所定のユーザと一緒に起こした他のユーザを今回の推奨ユーザとして選択する。例えば、選択部132は、第1の候補ユーザの中に前回の共同行動の強度が最も高いユーザが複数存在する場合に、前回の共同行動の強度が最も高いユーザの中から複数の共同行動のうち直近の共同行動を所定のユーザと一緒に起こした他のユーザを今回の推奨ユーザとして選択する。
【0064】
また、選択部132は、所定のユーザの行動情報の中に共同行動の履歴に関する情報が含まれていないと判定した場合、ユーザデータベース40を参照して、所定のユーザの属性情報を取得する。続いて、選択部132は、所定のユーザの属性情報に基づいて、今回の候補ユーザを選択する。例えば、選択部132は、所定のユーザの属性情報として、所定のユーザと関係性を有する他のユーザに関する情報(例えば、ユーザID)を取得する。取得部131は、所定のユーザと関係性を有する他のユーザの行動履歴に関する行動情報を取得する。このように、取得部131は、仮想空間における他のユーザの行動履歴に関する行動情報を取得する。
【0065】
選択部132は、取得部によって取得された所定のユーザの行動情報と他のユーザの行動情報とに基づいて、所定のユーザの行動と他のユーザの行動との類似度を推定し、推定された類似度に基づいて、推奨ユーザを選択する。例えば、選択部132は、所定のユーザの行動情報および他のユーザの行動情報が入力された場合に、所定のユーザの行動と他のユーザの行動との類似度を出力するよう学習された機械学習モデルを用いて、所定のユーザの行動と他のユーザの行動との類似度を推定する。ここで、ユーザ同士の行動の類似度は、例えば、過去に参加したことのあるイベントに関する類似性の高さ、ユーザに対応するアバターの服装(例えば、特定のスポーツチームのユニフォームなど)の類似性の高さ、または、仮想空間に滞在する時間帯の類似性の高さなどに基づいてよい。
【0066】
例えば、選択部132は、所定のユーザの行動と所定のユーザのフレンドである他のユーザの行動との類似度を推定する。選択部132は、推定された類似度が所定の閾値を超える他のユーザを今回の候補ユーザとして選択する。また、選択部132は、所定のユーザのフレンドである他のユーザの中に推定された類似度が所定の閾値を超える他のユーザが存在しない場合には、所定のユーザの行動と、所定のユーザと同じグループに所属するグループメンバー(以下、「グループメンバー」と記載する場合がある。)である他のユーザの行動との類似度を推定する。選択部132は、推定された類似度が所定の閾値を超える他のユーザを今回の候補ユーザとして選択する。また、選択部132は、グループメンバーである他のユーザの中に推定された類似度が所定の閾値を超える他のユーザが存在しない場合には、所定のユーザの行動と、所定のユーザのフレンドのフレンドである他のユーザの行動との類似度を推定する。選択部132は、推定された類似度が所定の閾値を超える他のユーザを今回の候補ユーザとして選択する。
【0067】
あるいは、選択部132は、取得部によって取得された所定のユーザの行動情報と他のユーザの行動情報とに基づいて、所定のユーザの嗜好と他のユーザの嗜好との類似度を推定し、推定された類似度に基づいて、推奨ユーザを選択する。例えば、選択部132は、所定のユーザの行動情報として、所定のユーザが過去に行ったチャットのテキストと、他のユーザの行動情報として、他のユーザが過去に行ったチャットのテキストとに基づいて、所定のユーザの嗜好と他のユーザの嗜好との類似度を推定してよい。例えば、選択部132は、所定のユーザが過去に行ったチャットのテキストおよび他のユーザが過去に行ったチャットのテキストが入力された場合に、所定のユーザの嗜好と他のユーザの嗜好との類似度を出力するよう学習された機械学習モデルを用いて、所定のユーザの嗜好と他のユーザの嗜好との類似度を推定する。
【0068】
例えば、選択部132は、所定のユーザの嗜好と所定のユーザのフレンドである他のユーザの嗜好との類似度を推定する。選択部132は、推定された類似度が所定の閾値を超える他のユーザを今回の候補ユーザとして選択する。また、選択部132は、所定のユーザのフレンドである他のユーザの中に推定された類似度が所定の閾値を超える他のユーザが存在しない場合には、所定のユーザの嗜好と、グループメンバーである他のユーザの嗜好との類似度を推定する。選択部132は、推定された類似度が所定の閾値を超える他のユーザを今回の候補ユーザとして選択する。また、選択部132は、グループメンバーである他のユーザの中に推定された類似度が所定の閾値を超える他のユーザが存在しない場合には、所定のユーザの嗜好と、所定のユーザのフレンドのフレンドである他のユーザの嗜好との類似度を推定する。選択部132は、推定された類似度が所定の閾値を超える他のユーザを今回の候補ユーザとして選択する。
【0069】
提供部133は、仮想空間に入っている推奨ユーザに対応するアバターが所在する仮想空間内の場所および推奨ユーザが入っている仮想空間を提供するサーバに関する情報を所定のユーザに対して提供する。例えば、提供部133は、選択部132によって推奨ユーザが選択された場合、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させるか否かを選択可能なボタンを含む確認ダイアログを生成する。提供部133は、生成した確認ダイアログを所定のユーザの端末装置10に送信する。
図4は、本開示の実施形態に係る確認ダイアログおよび承認ダイアログの一例を示す図である。
図4の中央に示す矢印は時間経過を表す。
【0070】
図4では、提供部133は、「前回プレイ中にチャットしたフレンドのBさんがGサーバのXY地点にいます。そちらへ向かいますか?」というテキストを含む画像である確認ダイアログD1を生成する。また、提供部133は、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを選択することを選択する「YES」ボタンおよび所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを選択しないことを選択する「No」ボタンを含む画像である確認ダイアログD1を生成する。続いて、提供部133は、確認ダイアログD1を所定のユーザの端末装置10に送信する。
【0071】
また、提供部133は、所定のユーザが確認ダイアログD1の「YES」ボタンを選択した場合、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを所定のユーザが選択したという選択結果に関する選択情報を所定のユーザの端末装置10から受信する。提供部133は、選択情報を受信した場合、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを承認するか否かを選択可能なボタンを含む承認ダイアログを生成する。
【0072】
図4では、提供部133は、「前回チャットしたフレンドのAさんが会いに向かっています。このまま待ち合わせますか?」というテキストを含む画像である承認ダイアログD3を生成する。また、提供部133は、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを承認することを選択する「YES」ボタンおよび所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを承認しないことを選択する「No」ボタンを含む画像である承認ダイアログD3を生成する。続いて、提供部133は、生成した承認ダイアログD3を推奨ユーザの端末装置10に送信する。
【0073】
なお、提供部133は、所定のユーザが確認ダイアログD1の「No」ボタンを選択した場合、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを所定のユーザが選択しなかったという選択結果に関する情報を所定のユーザの端末装置10から受信し、処理を終了する。
【0074】
また、提供部133は、承認ダイアログD3を送信した場合、推奨ユーザに対して承認ダイアログD3を送信したことを通知する第1の通知ダイアログD2を所定のユーザの端末装置10に送信する。
【0075】
また、提供部133は、推奨ユーザが承認ダイアログD3の「YES」ボタンを選択した場合、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを推奨ユーザが承認したという選択結果に関する承認情報を推奨ユーザの端末装置10から受信する。提供部133は、承認情報を受信した場合、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させる。このように、提供部133は、所定のユーザおよび推奨ユーザの双方が承諾した場合に、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させる。
【0076】
具体的には、提供部133は、承認情報を受信した場合、所定のユーザに対応するアバターが推奨ユーザに対応するアバターが所在する仮想空間内の場所に到着するまでの間、仮想空間における推奨ユーザに対応するアバターの位置座標を固定する。また、提供部133は、「サーバのIPアドレスと仮想空間座標を固定しています。そのままお待ちください。」というテキストを含む第3の通知ダイアログD5を推奨ユーザの端末装置10に送信する。また、提供部133は、仮想空間における推奨ユーザに対応するアバターの位置座標を固定した場合、所定のユーザの端末装置10を推奨ユーザの端末装置10が接続しているゲームサーバ20に接続する。続いて、提供部133は、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させる。例えば、提供部133は、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所から所定の範囲内の位置に描画する。また、提供部133は、「接続準備中です。少々お待ちください。」というテキストを含む第2の通知ダイアログD4を所定のユーザの端末装置10に送信する。
【0077】
なお、提供部133は、推奨ユーザが承認ダイアログD3の「No」ボタンを選択した場合、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させることを推奨ユーザが承認しなかったという選択結果に関する情報を推奨ユーザの端末装置10から受信し、処理を終了する。
【0078】
上述した実施形態では、所定のユーザのログイン直後に、情報処理装置100が推奨ユーザを選択する場合について説明した。
図5では、所定のユーザのログイン直後に、所定のユーザが推奨ユーザを選択する場合について説明する。
図5は、本開示の実施形態に係る推薦ダイアログの一例を示す図である。選択部132は、取得部131によって取得された所定のユーザの行動情報に基づいて、今回の候補ユーザを選択する。提供部133は、選択部132によって選択された今回の候補ユーザの一覧情報を含む推薦ダイアログを生成する。具体的には、提供部133は、今回の候補ユーザのユーザID、所定のユーザと今回の候補ユーザとの関係性(
図5では「関係」。例えば、フレンド、グループメンバーなど)、所定のユーザと今回の候補ユーザが一緒に共同行動を行った場所および日時、もしくは共同行動の内容(
図5では「アクション」。例えば、ボイスチャット、イベントゲーム、テキストチャットなど)を含む推薦ダイアログを生成する。例えば、提供部133は、今回の候補ユーザのユーザID、所定のユーザと今回の候補ユーザとの関係性、所定のユーザと今回の候補ユーザが一緒に共同行動を行った場所および日時、もしくは共同行動の内容が今回の候補ユーザごとに表示される推薦ダイアログを生成する。提供部133は、推薦ダイアログを生成した場合、生成した推薦ダイアログを所定のユーザの端末装置10に送信する。所定のユーザの端末装置10は、情報処理装置100から推薦ダイアログを受信した場合、推薦ダイアログを画面に表示する。
【0079】
例えば、提供部133は、表形式で表示されるテーブルを含む推薦ダイアログを生成する。例えば、推薦ダイアログが表示された画面のうち、テーブルの「関係」に対応するカラムを所定のユーザが指でタップまたはマウスオーバーするなどして選択すると、対応する候補ユーザの画像(例えば、アイコンの画像など)が画面に表示される。また、推薦ダイアログが表示された画面のうち、テーブルの「場所」に対応するカラムを所定のユーザが指でタップまたはマウスオーバーするなどして選択すると、仮想空間におけるその場所のスナップショット画像が画面に表示される。また、推薦ダイアログが表示された画面のうち、テーブルの「アクション」に対応するカラムを所定のユーザが指でタップまたはマウスオーバーするなどして選択すると、チャットに対応するテキストの要約(または冒頭部分)の文章などが画面に表示される。また、所定のユーザが特定の候補ユーザに対応するカラム上で右にスワイプすると、提供部133は、特定の候補ユーザに対応する確認ダイアログを生成する。提供部133は、特定の候補ユーザに対応する確認ダイアログを生成した場合、生成した確認ダイアログを所定のユーザの端末装置10に送信する。所定のユーザの端末装置10は、情報処理装置100から確認ダイアログを受信した場合、確認ダイアログを画面に表示する。
【0080】
[4.効果]
上述のように、本開示の各実施形態に係る情報処理装置100は、取得部131と選択部132を備える。取得部131は、各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得する。選択部132は、所定のユーザの行動情報に基づいて、所定のユーザとは異なる他のユーザの中から所定のユーザと仮想空間を共有することを推奨する推奨ユーザを選択する。
【0081】
これにより、情報処理装置100は、ユーザと仮想空間を共有する他のユーザを選別し、最適化することができる。また、情報処理装置100は、ユーザが、仮想空間内で現在オンライン状態になっている仲の良い他のユーザ等が接続しているサーバに接続することを容易にすることができる。また、情報処理装置100は、ユーザに対応するアバターが、現在オンライン状態になっている仲の良い他のユーザ等に対応するアバターがいる仮想空間内の場所へ容易に移動することを可能とすることができる。また、情報処理装置100は、ユーザ同士のコミュニケーションの心理的障壁を下げ、仲の良いユーザ同士が即座に仮想空間を共有することを可能とすることができる。したがって、情報処理装置100は、仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができる。また、情報処理装置100は、仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができるので、仮想空間に関するサービスの利用を促進することができる。
【0082】
また、選択部132は、所定のユーザの行動情報として、所定のユーザが他のユーザと共同した行動である共同行動の履歴に関する情報に基づいて、推奨ユーザを選択する。
【0083】
これにより、情報処理装置100は、例えば、ユーザが仮想空間で過去に一緒に行動した他のユーザを推奨ユーザとして選択することができる。これにより、情報処理装置100は、例えば、ユーザ同士のコミュニケーションの心理的障壁を下げることができる。また、情報処理装置100は、ユーザと仮想空間を共有する他のユーザを適切に選別し、最適化することができる。
【0084】
また、選択部132は、共同行動の履歴に関する情報として、所定のユーザが仮想空間に前回入った際の共同行動の履歴に関する情報に基づいて、所定のユーザが仮想空間に今回入った際の推奨ユーザを選択する。
【0085】
これにより、情報処理装置100は、例えば、ユーザが仮想空間に前回入った際に一緒に行動した他のユーザを推奨ユーザとして選択することができる。これにより、情報処理装置100は、例えば、ユーザ同士のコミュニケーションの心理的障壁を下げることができる。
【0086】
また、選択部132は、所定のユーザが仮想空間に前回入った際の共同行動の履歴に関する情報として、所定のユーザが仮想空間に前回入った際の共同行動の強度に関する情報に基づいて、所定のユーザが仮想空間に今回入った際の推奨ユーザを選択する。
【0087】
これにより、情報処理装置100は、例えば、ユーザが仮想空間に前回入った際に一緒に行動した他のユーザの中から、ユーザと一緒に過ごした時間がより長い他のユーザを推奨ユーザとして選択することができる。これにより、情報処理装置100は、ユーザと長い時間にわたってコミュニケーションをとったことにより、ユーザとのコミュニケーションの心理的障壁が低くなっている他のユーザを推奨ユーザとして選択することができる。
【0088】
また、選択部132は、共同行動の履歴に関する情報として、所定のユーザが仮想空間に前回入った際の共同行動を起こしてから所定のユーザが仮想空間に今回入る行動を起こすまでに経過した時間に関する情報に基づいて、所定のユーザが仮想空間に今回入った際の推奨ユーザを選択する。
【0089】
これにより、情報処理装置100は、例えば、ユーザが仮想空間に前回入ってからユーザが仮想空間に今回入るまでの経過時間がより短い他のユーザを推奨ユーザとして選択することができる。これにより、情報処理装置100は、ユーザと最近コミュニケーションをとったことにより、ユーザとのコミュニケーションの心理的障壁が低くなっている他のユーザを推奨ユーザとして選択することができる。
【0090】
また、取得部131は、仮想空間における他のユーザの行動履歴に関する行動情報を取得する。選択部132は、所定のユーザの行動情報と他のユーザの行動情報とに基づいて、所定のユーザの行動と他のユーザの行動との類似度を推定し、推定された類似度に基づいて、推奨ユーザを選択する。
【0091】
これにより、情報処理装置100は、例えば、ユーザと類似する行動をとったことのある他のユーザを推奨ユーザとして選択することができる。これにより、情報処理装置100は、例えば、ユーザ同士のコミュニケーションの心理的障壁を下げることができる。
【0092】
また、取得部131は、仮想空間における他のユーザの行動履歴に関する行動情報を取得する。選択部132は、所定のユーザの行動情報と他のユーザの行動情報とに基づいて、所定のユーザの嗜好と他のユーザの嗜好との類似度を推定し、推定された類似度に基づいて、推奨ユーザを選択する。
【0093】
これにより、情報処理装置100は、例えば、ユーザと嗜好が類似する他のユーザを推奨ユーザとして選択することができる。これにより、情報処理装置100は、例えば、ユーザ同士のコミュニケーションの心理的障壁を下げることができる。
【0094】
また、情報処理装置100は、提供部133をさらに備える。提供部133は、仮想空間に入っている推奨ユーザに対応するアバターが所在する仮想空間内の場所および推奨ユーザが入っている仮想空間を提供するサーバに関する情報を所定のユーザに対して提供する。また、提供部133は、所定のユーザおよび推奨ユーザの双方が承諾した場合に、所定のユーザに対応するアバターを推奨ユーザに対応するアバターが所在する仮想空間内の場所に移動させる。
【0095】
これにより、情報処理装置100は、ユーザが、仮想空間内で現在オンライン状態になっている仲の良い他のユーザ等が接続しているサーバに接続することを容易にすることができる。また、情報処理装置100は、ユーザに対応するアバターが、現在オンライン状態になっている仲の良い他のユーザ等に対応するアバターがいる仮想空間内の場所へ容易に移動することを可能とすることができる。また、情報処理装置100は、仲の良いユーザ同士が即座に仮想空間を共有することを可能とすることができる。したがって、情報処理装置は、仲の良いユーザ同士が仮想空間を共有する際の利便性を向上させることができる。
【0096】
[5.ハードウェア構成]
上述してきた実施形態に係る情報処理装置100は、例えば
図6に示すような構成のコンピュータ1000によって再現される。
図6は、本開示に係る情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス1500、及び入出力インターフェイス1600を有する。コンピュータ1000の各部は、バス1050によって接続される。
【0097】
CPU1100は、ROM1300又はHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。例えば、CPU1100は、ROM1300又はHDD1400に格納されたプログラムをRAM1200に展開し、各種プログラムに対応した処理を実行する。
【0098】
ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるBIOS(Basic Input Output System)等のブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
【0099】
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を非一時的に記録する、コンピュータが読み取り可能な非一時的記録媒体である。具体的には、HDD1400は、プログラムデータ1450の一例である本開示に係るプログラムを記録する非一時的記録媒体である。
【0100】
通信インターフェイス1500は、コンピュータ1000が外部ネットワーク1550(例えばインターネット)と接続するためのインターフェイスである。例えば、CPU1100は、通信インターフェイス1500を介して、他の機器からデータを受信したり、CPU1100が生成したデータを他の機器へ送信したりする。
【0101】
入出力インターフェイス1600は、入出力デバイス1650とコンピュータ1000とを接続するためのインターフェイスである。例えば、CPU1100は、入出力インターフェイス1600を介して、キーボードやマウス等の入力デバイスからデータを受信する。また、CPU1100は、入出力インターフェイス1600を介して、ディスプレイやスピーカーやプリンタ等の出力デバイスにデータを送信する。また、入出力インターフェイス1600は、所定の記録媒体(メディア)に記録されたプログラム等を読み取るメディアインターフェイスとして機能してもよい。メディアとは、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
【0102】
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130等の機能を再現する。また、HDD1400には、本開示に係るプログラムや、各種のデータが格納される。なお、CPU1100は、プログラムデータ1450をHDD1400から読み取って実行するが、他の例として、外部ネットワーク1550を介して、他の装置からこれらのプログラムを取得してもよい。
【0103】
また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
【0104】
なお、本技術は以下のような構成も取ることができる。
(1)
各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得する取得部と、
前記所定のユーザの行動情報に基づいて、前記所定のユーザとは異なる他のユーザの中から前記所定のユーザと前記仮想空間を共有することを推奨する推奨ユーザを選択する選択部と、
を備える情報処理装置。
(2)
前記選択部は、
前記所定のユーザの行動情報として、前記所定のユーザが前記他のユーザと共同した行動である共同行動の履歴に関する情報に基づいて、前記推奨ユーザを選択する、
前記(1)に記載の情報処理装置。
(3)
前記選択部は、
前記共同行動の履歴に関する情報として、前記所定のユーザが前記仮想空間に前回入った際の前記共同行動の履歴に関する情報に基づいて、前記所定のユーザが前記仮想空間に今回入った際の前記推奨ユーザを選択する、
前記(2)に記載の情報処理装置。
(4)
前記選択部は、
前記所定のユーザが前記仮想空間に前回入った際の前記共同行動の履歴に関する情報として、前記所定のユーザが前記仮想空間に前回入った際の前記共同行動の強度に関する情報に基づいて、前記所定のユーザが前記仮想空間に今回入った際の前記推奨ユーザを選択する、
前記(3)に記載の情報処理装置。
(5)
前記選択部は、
前記共同行動の履歴に関する情報として、前記所定のユーザが前記仮想空間に前回入った際の前記共同行動を起こしてから前記所定のユーザが前記仮想空間に今回入る行動を起こすまでに経過した時間に関する情報に基づいて、前記所定のユーザが前記仮想空間に今回入った際の前記推奨ユーザを選択する、
前記(2)~(4)のいずれか1つに記載の情報処理装置。
(6)
前記取得部は、
前記仮想空間における前記他のユーザの行動履歴に関する行動情報を取得し、
前記選択部は、
前記所定のユーザの行動情報と前記他のユーザの行動情報とに基づいて、前記所定のユーザの行動と前記他のユーザの行動との類似度を推定し、推定された前記類似度に基づいて、前記推奨ユーザを選択する、
前記(1)~(5)のいずれか1つに記載の情報処理装置。
(7)
前記取得部は、
前記仮想空間における前記他のユーザの行動履歴に関する行動情報を取得し、
前記選択部は、
前記所定のユーザの行動情報と前記他のユーザの行動情報とに基づいて、前記所定のユーザの嗜好と前記他のユーザの嗜好との類似度を推定し、推定された前記類似度に基づいて、前記推奨ユーザを選択する、
前記(1)~(6)のいずれか1つに記載の情報処理装置。
(8)
前記仮想空間に入っている前記推奨ユーザに対応するアバターが所在する前記仮想空間内の場所および前記推奨ユーザが入っている前記仮想空間を提供するサーバに関する情報を前記所定のユーザに対して提供する提供部をさらに備え、
前記提供部は、
前記所定のユーザおよび前記推奨ユーザの双方が承諾した場合に、前記所定のユーザに対応するアバターを前記推奨ユーザに対応するアバターが所在する前記仮想空間内の場所に移動させる、
前記(1)~(7)のいずれか1つに記載の情報処理装置。
(9)
各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得することと、
前記所定のユーザの行動情報に基づいて、前記所定のユーザとは異なる他のユーザの中から前記所定のユーザと前記仮想空間を共有することを推奨する推奨ユーザを選択することと、
を含む情報処理方法。
(10)
各ユーザに対応するアバターが移動可能な仮想空間における所定のユーザの行動履歴に関する行動情報を取得することと、
前記所定のユーザの行動情報に基づいて、前記所定のユーザとは異なる他のユーザの中から前記所定のユーザと前記仮想空間を共有することを推奨する推奨ユーザを選択することをコンピュータに実現させるプログラムを記憶した、コンピュータ読み取り可能な非一時的記憶媒体。
【符号の説明】
【0105】
1 情報処理システム
10 端末装置
100 情報処理装置
110 通信部
120 記憶部
130 制御部
131 取得部
132 選択部
133 提供部