(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022185750
(43)【公開日】2022-12-15
(54)【発明の名称】プログラム、方法、情報処理装置、及びシステム
(51)【国際特許分類】
A63F 13/825 20140101AFI20221208BHJP
A63F 13/58 20140101ALI20221208BHJP
A63F 13/53 20140101ALI20221208BHJP
【FI】
A63F13/825
A63F13/58
A63F13/53
【審査請求】有
【請求項の数】12
【出願形態】OL
(21)【出願番号】P 2021093561
(22)【出願日】2021-06-03
(11)【特許番号】
(45)【特許公報発行日】2022-02-14
(71)【出願人】
【識別番号】521242369
【氏名又は名称】アトラクチャー株式会社
(74)【代理人】
【識別番号】110002815
【氏名又は名称】IPTech弁理士法人
(72)【発明者】
【氏名】中村 政義
(57)【要約】
【課題】ユーザが自分の気に入った人工生物を、自分の好みの環境で育成する技術を提供する
【解決手段】プロセッサを備えるコンピュータに実行させるためのプログラムであって、プログラムは、プロセッサに、第1の仮想空間を生成するステップと、第1の仮想空間に第1の人工生物を配置するステップと、第1の仮想空間と、第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、第1の人工生物に関するパラメータを経時的に変化させるステップと、第1の人工生物に関するパラメータを保存するステップと、第1の仮想空間または第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、第1の人工生物に関するパラメータの少なくとも一部を第2の人工生物に反映させるステップと、を実行させるプログラム。
【選択図】
図6
【特許請求の範囲】
【請求項1】
プロセッサを備えるコンピュータに実行させるためのプログラムであって、前記プログラムは、前記プロセッサに、
第1の仮想空間を生成するステップと、
前記第1の仮想空間に第1の人工生物を配置するステップと、
前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させるステップと、
前記第1の人工生物に関するパラメータを保存するステップと、
前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるステップと、
を実行させるプログラム。
【請求項2】
前記プログラムは、前記プロセッサに、さらに、
前記第1の仮想空間のパラメータと、前記第1の人工生物のパラメータと、前記第1の学習アルゴリズムのパラメータと、の少なくともいずれかを変化させる入力をユーザから受け付けるステップを実行させる、請求項1のプログラム。
【請求項3】
前記プログラムは、前記プロセッサに、さらに、
前記ユーザから受け付けた第1の入力に基づいて前記第1の仮想空間に関するパラメータを変化させるステップを実行させる、請求項2のプログラム。
【請求項4】
前記プログラムは、前記プロセッサに、さらに、
前記第1の仮想空間に関するパラメータを保存するステップと、
前記保存した第1の仮想空間に関するパラメータを、前記第1の仮想空間とは異なる第3の仮想空間に反映させるステップと、
を実行させる、請求項3のプログラム。
【請求項5】
前記プログラムは、前記プロセッサに、さらに、
前記ユーザから受け付けた第2の入力、または、前記第1の仮想空間に関するパラメータに基づいて前記第1の学習アルゴリズムに関するパラメータを変化させるステップを実行させる、請求項2のプログラム。
【請求項6】
前記プログラムは、前記プロセッサに、さらに、
前記第1の学習アルゴリズムに関するパラメータを保存するステップと、
前記保存した第1の学習アルゴリズムに関するパラメータを、前記第1の人工生物とは異なる第3の人工生物に反映させるステップと、
を実行させる、請求項5のプログラム。
【請求項7】
前記プログラムは、前記プロセッサに、さらに、
前記ユーザから受け付けた第3の入力に基づいて前記第1の人工生物に関するパラメータを変化させるステップを実行させる、請求項2のプログラム。
【請求項8】
前記プログラムは、前記プロセッサに、さらに、
所定の条件に基づいて前記ユーザの代わりにプログラムが自動的に前記第1の入力と、前記第2の入力と、前記第3の入力と、の少なくともいずれかを行う第4の入力を行うステップと、
前記所定の条件に関する情報を前記ユーザから受け付けるステップと、
前記第4の入力に関する情報および前記第4の入力を自動的に行う所定の条件に関する情報を、前記第1の仮想空間に関するパラメータの一部として保存するステップと、
を実行させる、請求項2のプログラム。
【請求項9】
前記プログラムは、前記プロセッサに、さらに、
前記第1の仮想空間または前記第1の人工生物に関わるイベントが発生する第1の時刻、または前記イベントが発生した第2の時刻を取得するステップと、
前記第1の時刻または前記第2の時刻における前記第1の仮想空間および前記第1の人工生物に関する情報を前記ユーザに表示するステップと、
を実行させる、請求項2のプログラム。
【請求項10】
プロセッサと、メモリを備えるコンピュータにより実行される方法であって、前記方法は
、前記プロセッサが、前記メモリに記憶されるプログラムを読み込んで実行することにより
、
第1の仮想空間を生成するステップと、
前記第1の仮想空間に第1の人工生物を配置するステップと、
前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させるステップと、
前記第1の人工生物に関するパラメータを保存するステップと、
前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるステップと、
を実行する方法。
【請求項11】
制御部と、記憶部とを備える情報処理装置であって、前記制御部が、前記記憶部に記憶さ
れるプログラムに基づいて動作することにより、
第1の仮想空間を生成するステップと、
前記第1の仮想空間に第1の人工生物を配置するステップと、
前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させるステップと、
前記第1の人工生物に関するパラメータを保存するステップと、
前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるステップと、
を実行する情報処理装置。
【請求項12】
端末装置と、サーバと、を備えるシステムであって、
前記サーバは、
第1の仮想空間を生成する仮想空間制御モジュールと、
前記第1の仮想空間に第1の人工生物を配置し、前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させる人工生物制御モジュールと、
前記第1の人工生物に関するパラメータを保存し、前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるパラメータコピーモジュールと、を備える
システム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、プログラム、方法、情報処理装置、及びシステムに関する。
【背景技術】
【0002】
設定されたパラメータの組み合わせのパターンにより、自律的に進化する人工生物のシステムが知られている。
【0003】
特許文献1には、人工生物であるエージェントがオブジェクトの一例としてのエサに触れた場合に報酬を得る、また、オブジェクトの他の例としての障害物に触れた場合にペナルティを受けるように設定されており、エージェントが取得した報酬およびペナルティは、報酬部によって強化学習部に入力され、強化学習部は、一定時間内に、ペナルティ取得を最小化しつつ、なるべく多くの報酬を獲得するために、どういう行動を選択すれば良いのかを自律的に学習する旨が開示されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
自律的に進化する人工生物において、気に入った人工生物を自分の好きなように育成したいというニーズが存在する。特許文献1では、最高金額と判断された掛け金を入力したユーザの端末装置においては、生命体育成部として機能する端末制御部によって、特定のエージェントの育成が可能となる旨が開示されている。しかし、特定のエージェントの育成を行う環境を自由に選べる旨は開示されていない。自律的に進化する人工生物において、人工生物が生息する環境は極めて重要な要素となる。
【0006】
従って、ユーザが自分の気に入った人工生物を、自分の好みの環境で育成する技術が必要とされている。
【課題を解決するための手段】
【0007】
一実施の形態によると、プロセッサを備えるコンピュータに実行させるためのプログラムであって、プログラムは、プロセッサに、第1の仮想空間を生成するステップと、第1の仮想空間に第1の人工生物を配置するステップと、第1の仮想空間と、第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、第1の人工生物に関するパラメータを経時的に変化させるステップと、第1の人工生物に関するパラメータを保存するステップと、第1の仮想空間または第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、第1の人工生物に関するパラメータの少なくとも一部を第2の人工生物に反映させるステップと、を実行させるプログラム。
【発明の効果】
【0008】
本開示によれば、自律的に進化する人工生物を任意の環境で育成することができる。
【図面の簡単な説明】
【0009】
【
図2】第1の実施の形態のシステム1を構成する端末装置10のブロック図である。
【
図3】第1の実施の形態のシステム1を構成するサーバ20の機能的な構成を示す図である。
【
図4】サーバ20が記憶する仮想空間データベース281のデータ構造を示す図である。
【
図5】サーバ20が記憶する人工生物データベース282のデータ構造を示す図である。
【
図6】第1の実施の形態におけるシステム1により、人工生物を他の仮想空間または他の時刻にコピーする流れの一例を示すフローチャートである。
【
図7】第1の実施の形態におけるシステム1により、仮想空間のパラメータを他の仮想空間または他の時刻にコピーする流れの一例を示すフローチャートである。
【
図8】第1の実施の形態におけるシステム1により、学習アルゴリズムのパラメータを他の仮想空間または他の時刻に配置した人工生物にコピーする流れの一例を示すフローチャートである。
【
図9】第1の実施の形態におけるシステム1により、ユーザの入力に基づいて人工生物のパラメータを変化させる流れの一例を示すフローチャートである。
【
図10】第1の実施の形態におけるシステム1により、所定の条件に基づいてシステムが自動的に入力を行う流れの一例を示すフローチャートである。
【
図11】第1の実施の形態におけるシステム1により、仮想空間または人工生物に関するイベントをユーザに通知する流れの一例を示すフローチャートである。
【発明を実施するための最良の形態】
【0010】
以下、図面を参照しつつ、本開示の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。従って、それらについての詳細な説明は繰り返さない。
【0011】
<第1の実施の形態>
<1 システム1の全体構成>
システム1は、自律的に進化する人工生物を仮想空間に配置して育成するシステムである。
図1は、システム1の全体の構成を示す図である。
図1に示すように、システム1は、複数の端末装置(
図1では端末装置10Aおよび端末装置10Bを示している。以下、総称して「端末装置10」ということもある)と、サーバ20とを含む。端末装置10とサーバ20とは、ネットワーク80を介して通信接続する。
【0012】
例えば、ユーザが、人工生物のパラメータの変更を行うために、端末装置10により、人工生物の変更後のパラメータ等の入力を行う。サーバ20は、端末装置10から、ユーザが入力した情報を受け付けて保持する。
【0013】
端末装置10は、各ユーザが操作する装置である。端末装置10は、移動体通信システムに対応したスマートフォン、タブレット等の携帯端末などにより実現される。この他に、端末装置10は、例えば据え置き型のPC(Personal Computer)、ラップトップPCであるとしてもよい。
【0014】
図1に端末装置10Bとして示すように、端末装置10は、通信IF(Interface)12と、入力装置13と、出力装置14と、メモリ15と、記憶部16と、プロセッサ19とを備える。
【0015】
端末装置10は、ネットワーク80を介してサーバ20と通信可能に接続される。端末装置10は、5G、LTE(Long Term Evolution)などの通信規格に対応した無線基地局
81、IEEE(Institute of Electrical and Electronics Engineers)802.11などの無線LAN(Local Area Network)規格に対応した無線LANルータ82等の通信機器と通信することによりネットワーク80に接続される。
【0016】
通信IF12は、端末装置10が外部の装置と通信するため、信号を入出力するためのインタフェースである。入力装置13は、ユーザからの入力操作を受け付けるための入力装置(例えば、タッチパネル、タッチパッド、マウス等のポインティングデバイス、キーボード等)である。出力装置14は、ユーザに対し情報を提示するための出力装置(ディスプレイ、スピーカ等)である。メモリ15は、プログラム、および、プログラム等で処理されるデータ等を一時的に記憶するためのものであり、例えばDRAM(Dynamic Random Access Memory)等の揮発性のメモリである。記憶部16は、データを保存するための記憶装置であり、例えばフラッシュメモリ、HDD(Hard Disc Drive)である。プロセッ
サ19は、プログラムに記述された命令セットを実行するためのハードウェアであり、演算装置、レジスタ、周辺回路などにより構成される。
【0017】
サーバ20は、仮想空間や人工生物に関する情報を管理する装置である。サーバ20は、ネットワーク80に接続されたコンピュータである。
【0018】
図1に示すように、サーバ20は、通信IF22と、入出力IF23と、メモリ25と、ストレージ26と、プロセッサ29とを備える。
【0019】
通信IF22は、サーバ20が外部の装置と通信するため、信号を入出力するためのインタフェースである。入出力IF23は、ユーザからの入力操作を受け付けるための入力装置、および、ユーザに対し情報を提示するための出力装置とのインタフェースとして機能する。メモリ25は、プログラム、および、プログラム等で処理されるデータ等を一時的に記憶するためのものであり、例えばDRAM(Dynamic Random Access Memory)等の揮発性のメモリである。ストレージ26は、データを保存するための記憶装置であり、例えばフラッシュメモリ、HDD(Hard Disc Drive)である。プロセッサ29は、プログラムに記述された命令セットを実行するためのハードウェアであり、演算装置、レジスタ、周辺回路などにより構成される。
【0020】
<1.1 端末装置10の構成>
図2は、実施の形態1のシステム1を構成する端末装置10のブロック図である。
図2に示すように、端末装置10は、複数のアンテナ(アンテナ111、アンテナ112)と、各アンテナに対応する無線通信部(第1無線通信部121、第2無線通信部122)と、操作受付部130(タッチ・センシティブ・デバイス131およびディスプレイ132を含む)と、音声処理部140と、マイク141と、スピーカ142と、位置情報センサ150と、カメラ160と、記憶部170と、制御部180と、を含む。端末装置10は、
図2では特に図示していない機能及び構成(例えば、電力を保持するためのバッテリー、バッテリーから各回路への電力の供給を制御する電力供給回路など)も有している。
図2に示すように、端末装置10に含まれる各ブロックは、バス等により電気的に接続される。
【0021】
アンテナ111は、端末装置10が発する信号を電波として放射する。また、アンテナ111は、空間から電波を受信して受信信号を第1無線通信部121へ与える。
【0022】
アンテナ112は、端末装置10が発する信号を電波として放射する。また、アンテナ112は、空間から電波を受信して受信信号を第2無線通信部122へ与える。
【0023】
第1無線通信部121は、端末装置10が他の無線機器と通信するため、アンテナ111を介して信号を送受信するための変復調処理などを行う。第2無線通信部122は、端末装置10が他の無線機器と通信するため、アンテナ112を介して信号を送受信するための変復調処理などを行う。第1無線通信部121と第2無線通信部122とは、チューナー、RSSI(Received Signal Strength Indicator)算出回路、CRC(Cyclic Redundancy Check)算出回路、高周波回路などを含む通信モジュールである。第1無線通信部121と第2無線通信部122とは、端末装置10が送受信する無線信号の変復調および周波数変換を行い、受信信号を制御部180へ与える。
【0024】
操作受付部130は、ユーザの入力操作を受け付けるための機構を有する。具体的には、操作受付部130は、タッチスクリーンとして構成され、タッチ・センシティブ・デバイス131と、ディスプレイ132とを含む。図示していないが、操作受付部130は、マウス、タッチパッド等のポインティングデバイス、キーボードその他の入力装置により構成されることとしてもよい。
【0025】
タッチ・センシティブ・デバイス131は、端末装置10のユーザの入力操作を受け付ける。タッチ・センシティブ・デバイス131は、例えば静電容量方式のタッチパネルを用いることによって、タッチパネルに対するユーザの接触位置を検出する。タッチ・センシティブ・デバイス131は、タッチパネルにより検出したユーザの接触位置を示す信号を入力操作として制御部180へ出力する。
【0026】
ディスプレイ132は、制御部180の制御に応じて、画像、動画、テキストなどのデータを表示する。ディスプレイ132は、例えばLCD(Liquid Crystal Display)あるいは有機EL(Electro-Luminescence)ディスプレイによって実現される。
【0027】
音声処理部140は、音声信号の変復調を行う。音声処理部140は、マイク141から与えられる信号を変調して、変調後の信号を制御部180へ与える。また、音声処理部140は、音声信号をスピーカ142へ与える。音声処理部140は、例えば音声処理用のプロセッサによって実現される。マイク141は、音声入力を受け付けて、当該音声入力に対応する音声信号を音声処理部140へ与える。スピーカ142は、音声処理部140から与えられる音声信号を音声に変換して当該音声を端末装置10の外部へ出力する。
【0028】
位置情報センサ150は、端末装置10の位置を検出するセンサであり、例えばGPS(Global Positioning System)モジュールである。GPSモジュールは、衛星測位システムで用いられる受信装置である。衛星測位システムでは、少なくとも3個または4個の衛星からの信号を受信し、受信した信号に基づいて、GPSモジュールが搭載される端末装置10の現在位置を検出する。
【0029】
カメラ160は、受光素子により光を受光して、撮影画像として出力するためのデバイスである。カメラ160は、例えば、カメラ160から撮影対象までの距離を検出できる深度カメラである。
【0030】
記憶部170は、例えばフラッシュメモリ等により構成され、端末装置10が使用するデータおよびプログラムを記憶する。ある局面において、記憶部170は、仮想空間情報171、人工生物情報172を記憶する。
【0031】
仮想空間情報171は、仮想空間に関する情報である。例えば、仮想空間情報171は、仮想空間を識別するID、仮想空間の地形情報、仮想空間の気象情報、仮想空間の物理法則情報等の情報を含む。
【0032】
人工生物情報172は、人工生物に関する情報である。例えば、人工生物情報172は、人工生物を識別するID、人工生物の形態情報、人工生物の動作情報、人工生物が備える学習アルゴリズム等の情報を含む。
【0033】
制御部180は、記憶部170に記憶されるプログラムを読み込んで、プログラムに含まれる命令を実行することにより、端末装置10の動作を制御する。制御部180は、例えば予め端末装置10にインストールされているアプリケーションである。制御部180は、プログラムに従って動作することにより、入力操作受付部181と、送受信部182と、データ処理部185と、通知制御部186としての機能を発揮する。
【0034】
入力操作受付部181は、タッチ・センシティブ・デバイス131等の入力装置に対するユーザの入力操作を受け付ける処理を行う。入力操作受付部181は、タッチ・センシティブ・デバイス131に対してユーザが指などを接触させた座標の情報に基づき、ユーザの操作がフリック操作であるか、タップ操作であるか、ドラッグ(スワイプ)操作であるか等の操作の種別を判定する。
【0035】
送受信部182は、端末装置10が、サーバ20等の外部の装置と、通信プロトコルに従ってデータを送受信するための処理を行う。
【0036】
データ処理部185は、端末装置10が入力を受け付けたデータに対し、プログラムに従って演算を行い、演算結果をメモリ等に出力する処理を行う。
【0037】
通知制御部186は、ユーザに対し情報を提示する処理を行う。通知制御部186は、表示画像をディスプレイ132に表示させる処理、音声をスピーカ142に出力させる処理、振動をカメラ160に発生させる処理等を行う。
【0038】
<1.2 サーバ20の機能的な構成>
図3は、サーバ20の機能的な構成を示す図である。
図3に示すように、サーバ20は、通信部201と、記憶部202と、制御部203としての機能を発揮する。
【0039】
通信部201は、サーバ20が外部の装置と通信するための処理を行う。
【0040】
記憶部202は、サーバ20が使用するデータおよびプログラムを記憶する。記憶部202は、仮想空間データベース281、人工生物データベース282、を記憶する。
【0041】
仮想空間データベース281は、仮想空間に関する情報を保持するためのデータベースである。詳細は後述する。
【0042】
人工生物データベース282は、人工生物に関する情報を保持するためのデータベースである。詳細は後述する。
【0043】
制御部203は、サーバ20のプロセッサ29がプログラムに従って処理を行うことにより、各種モジュールとして示す機能を発揮する。
【0044】
受信制御モジュール2031は、サーバ20が外部の装置から通信プロトコルに従って信号を受信する処理を制御する。
【0045】
送信制御モジュール2032は、サーバ20が外部の装置に対し通信プロトコルに従って信号を送信する処理を制御する。
【0046】
仮想空間制御モジュール2033は、システム1を通じて仮想空間に関連する処理を制御する。詳細は後述する。
【0047】
人工生物制御モジュール2034は、システム1を通じて人工生物に関連する処理を制御する。詳細は後述する。
【0048】
パラメータコピーモジュール2035は、システム1を通じて仮想空間と人工生物と学習アルゴリズムのパラメータをコピーする処理を制御する。詳細は後述する。
【0049】
ユーザ表示制御モジュール2036は、システム1を通じて仮想空間および人工生物に関する情報をユーザに表示する処理を制御する。詳細は後述する。
【0050】
<2 データ構造>
図4は、サーバ20が記憶する仮想空間データベース281のデータ構造を示す図である。以下、事例を例として説明する。
【0051】
仮想空間データベース281には、図示しているように、(1)仮想空間ID、(2)地形情報、(3)気象情報、(4)物理法則情報、の各項目の情報が含まれる。また、仮想空間データベース281には、図示していない項目として、仮想空間の名称などの情報を含めてもよい。
【0052】
サーバ20は、ユーザから仮想空間に関する情報を受け付け、その内容に関する情報を仮想空間データベース281に記録する。
【0053】
項目「仮想空間ID」は、仮想空間を識別する情報である。
【0054】
項目「地形情報」は、仮想空間の地形に関する情報である。地形情報は、仮想空間の座標ごとの地形に関する情報などを含む。例えば、地形情報は、仮想空間の座標(X、Y)が森である旨の情報を含む。
【0055】
項目「気象情報」は、仮想空間の気象に関する情報である。気象情報は、仮想空間の座標ごとの気象に関する情報などを含む。例えば、気象情報は、仮想空間の座標(X、Y)が低気圧である旨の情報を含む。
【0056】
項目「物理法則情報」は、仮想空間の物理法則に関する情報である。物理法則情報は、仮想空間に発生している重力に関する情報などを含む。例えば、物理法則情報は、仮想空間の重力が9.8メートル毎秒毎秒である旨の情報を含む。
【0057】
項目「自動入力情報」は、仮想空間においてユーザに変わってシステムが自動的に行う入力に関する情報である。自動入力情報は、システムが自動的に行う入力の内容と、システムが自動的に入力を行う条件と、に関する情報などを含む。例えば、自動入力情報は、人工生物の空腹度が80%以上である場合に、仮想空間に餌を多く配置する入力を自動的に行う旨の情報を含む。
【0058】
図5は、サーバ20が記憶する人工生物データベース282のデータ構造を示す図である。以下、事例を例として説明する。
【0059】
人工生物データベース282には、図示しているように、(1)人工生物ID、(2)形態情報、(3)動作情報、(4)学習アルゴリズム、の各項目の情報が含まれる。また、人工生物データベース282には、図示していない項目として、人工生物の名称などの情報を含めてもよい。
【0060】
サーバ20は、ユーザから人工生物に関する情報を受け付け、その内容に関する情報を人工生物データベース282に記録する。
【0061】
項目「人工生物ID」は、人工生物を識別する情報である。
【0062】
項目「形態情報」は、人工生物の形態に関する情報である。形態情報は、人工生物の脚の本数に関する情報などを含む。例えば、形態情報は、人工生物の脚が4本である旨の情報を含む。
【0063】
項目「動作情報」は、人工生物の動作に関する情報である。動作情報は、人工生物が脚を動かす速度に関する情報などを含む。例えば、動作情報は、人工生物が脚を動かす速度が20km/hである旨の情報を含む。
【0064】
項目「学習アルゴリズム」は、人工生物が備える学習アルゴリズムに関する情報である。学習アルゴリズムは、人工生物の移動速度の好みに関する情報などを含む。例えば、学習アルゴリズムは、人工生物が早く移動することを好む旨の情報を含む。
【0065】
<3 動作>
以下、
図6から
図12を参照しながら、システム1を介して、ユーザが仮想空間に配置された人工生物の育成を行う処理について説明する。
【0066】
図6は、第1の実施の形態におけるシステム1により、人工生物を他の仮想空間にコピーする流れの一例を示すフローチャートである。
【0067】
S1011において、端末装置10は、第1の仮想空間301と第1の人工生物401に関する情報をユーザから受け付け、その情報をサーバ20に送信する。
【0068】
サーバ20は、端末装置10から第1の仮想空間301に関する情報を受信し、サーバ20の記憶部202に保持される仮想空間データベース281にその情報を記録する。サーバ20は、端末装置10から第1の人工生物401に関する情報を受信し、サーバ20の記憶部202に保持される人工生物データベース282にその情報を記録する。
【0069】
端末装置10は、事前にパラメータが設定された複数の仮想空間の情報をユーザに提示し、使用する仮想空間を選択する入力をユーザから受け付けることで、第1の仮想空間301に関する情報を受け付けてもよい。端末装置10は、仮想空間に関するパラメータを指定する入力をユーザから受け付けることで、第1の仮想空間301に関する情報を受け付けてもよい。
【0070】
端末装置10は、事前にパラメータが設定された複数の人工生物の情報をユーザに提示し、使用する人工生物を選択する入力をユーザから受け付けることで、第1の人工生物401に関する情報を受け付けてもよい。端末装置10は、人工生物に関するパラメータを指定する入力を受け付けることで、第1の人工生物401に関する情報を受け付けてもよい。
【0071】
システム1において、人工生物は何かしらの動作部を備えるオブジェクトである。人工生物は、自身の脚を動かすことで仮想空間内を移動してもよいし、自身の翼を広げて風を受けることで仮想空間内を移動してもよい。
【0072】
人工生物の形状は、生物を模したものでもよい。人工生物の形状は、ロボット等の人工物を模したものでもよい。システム1において、人工生物は、動作部を備えるものであれば、その形状を限定しない。
【0073】
人工生物は、環境に配置されたオブジェクトを使って動いたり移動したりしてもよい。人工生物が備える動作部は、反重力など現実の物理法則に従わない推進力をもたせてもよい
【0074】
S1012において、仮想空間制御モジュール2033は、仮想空間データベース281に記録した第1の仮想空間301に関する情報に基づいて、第1の仮想空間301を生成する。
【0075】
仮想空間制御モジュール2033は、仮想空間データベース281から第1の仮想空間301の地形情報を取得し、第1の仮想空間301の地形を決定する。例えば、仮想空間制御モジュール2033は、仮想空間データベース281から第1の仮想空間301の座標(X、Y)が森である旨の地形情報を取得し、第1の仮想空間301の座標(X、Y)の地形を森と決定する。
【0076】
仮想空間制御モジュール2033は、仮想空間データベース281から第1の仮想空間301の気象情報を取得し、第1の仮想空間301の気象を決定する。例えば、仮想空間制御モジュール2033は、仮想空間データベース281から第1の仮想空間301の座標(X、Y)が低気圧である旨の気象情報を取得し、第1の仮想空間301の座標(X、Y)の気象を低気圧と決定する。
【0077】
仮想空間制御モジュール2033は、仮想空間データベース281から第1の仮想空間301の物理法則情報を取得し、第1の仮想空間301の物理法則を決定する。例えば、仮想空間制御モジュール2033は、仮想空間データベース281から第1の仮想空間301の重力が9.8メートル毎秒毎秒である旨の物理法則情報を取得し、第1の仮想空間301の重力を9.8メートル毎秒毎秒と決定する。
【0078】
S1013において、人工生物制御モジュール2034は、人工生物データベース282に記録した第1の人工生物401に関する情報に基づいて、第1の仮想空間301に第1の人工生物401を配置する。
【0079】
人工生物制御モジュール2034は、人工生物データベース282から第1の人工生物401の形態情報を取得し、第1の人工生物401の形態を決定する。例えば、人工生物制御モジュール2034は、人工生物データベース282から第1の人工生物401の脚が4本である旨の形態情報を取得し、第1の人工生物401の脚を4本と決定する。
【0080】
人工生物制御モジュール2034は、人工生物データベース282から第1の人工生物401の動作情報を取得し、第1の人工生物401の動作を決定する。例えば、人工生物制御モジュール2034は、人工生物データベース282から第1の人工生物401が脚を動かす速度が20km/hである旨の動作情報を取得し、第1の人工生物401が脚を動かす速度を20km/hと決定する。
【0081】
人工生物制御モジュール2034は、人工生物データベース282から第1の人工生物401が有する第1の学習アルゴリズム501に関する情報を取得し、第1の人工生物401が有する第1の学習アルゴリズム501を決定する。例えば、人工生物制御モジュール2034は、人工生物データベース282から第1の人工生物401が餌に近づくことを高評価とする旨の有する第1の学習アルゴリズム501に関する情報を取得し、第1の人工生物401が餌に近づくことを高評価とする旨を決定する。
【0082】
人工生物制御モジュール2034は、S1011でユーザから入力を受け付ける代わりに、所定の条件に基づいて第1の仮想空間301に人工生物を自動的に配置してもよい。
【0083】
人工生物制御モジュール2034は、第1の仮想空間301に配置された人工生物から異なる人工生物を生み出して配置してもよい。例えば、人工生物制御モジュール2034は、第1の仮想空間301に配置された人工生物が所定以上の大きさとなった場合に、その人工生物の子供として異なる人工生物を配置してもよい。あるいは、人工生物制御モジュール2034は、第1の仮想空間301に配置された人工生物が所定以上の大きさとなった場合に、その人工生物から分裂する形で異なる人工生物を配置してもよい。
【0084】
人工生物制御モジュール2034は、第1の仮想空間301に配置された任意の人工生物を、第1の人工生物401として設定してもよい。例えば、人工生物制御モジュール2034は、第1の仮想空間301に自動的に配置された人工生物を、ユーザから受け付けた指定により、第1の人工生物401として設定してもよい。
【0085】
S1014において、人工生物制御モジュール2034は、第1の仮想空間301と、第1の人工生物401が有する第1の学習アルゴリズム501と、に基づいて、第1の人工生物401に関するパラメータを経時的に変化させる。
【0086】
人工生物制御モジュール2034は、第1の学習アルゴリズム501に基づいて、第1の人工生物401を第1の仮想空間301内で自律的に行動させる。例えば、人工生物制御モジュール2034は、餌に近づくことを高評価とする第1の学習アルゴリズム501に基づいて、第1の人工生物401を第1の仮想空間301内に配置された餌に近づくように移動させる。
【0087】
人工生物制御モジュール2034は、第1の学習アルゴリズム501による評価結果に基づいて、第1の人工生物401に関するパラメータを変化させる。例えば、人工生物制御モジュール2034は、第1の人工生物401が餌に近づくほど高評価である旨の第1の学習アルゴリズム501による評価結果に基づいて、第1の人工生物401ができるだけ餌に近づきやすくなるように第1の人工生物401に関するパラメータを経時的に変化させる。
【0088】
第1の学習アルゴリズム501は、複数の評価指標を備えてもよい。例えば、第1の学習アルゴリズム501は、餌に近づくことを第1の評価指標、危険物から離れることを第2の評価指標として、第1の評価指標と第2の評価指標とを合算した結果を第1の学習アルゴリズム501の評価結果としてもよい。
【0089】
例えば、人工生物制御モジュール2034は、第1の仮想空間301内に餌がまばらに配置されている場合に、第1の人工生物401の移動速度を高めることで、第1の人工生物401が餌に近づきやすくする。あるいは、人工生物制御モジュール2034は、第1の仮想空間301内で餌が高い位置に配置されている場合に、第1の人工生物401の大きさを大きくする、あるいは、第1の人工生物401の跳躍力を高めることで、第1の人工生物401が餌に近づきやすくする。
【0090】
システム1は、第1の人工生物401から第1の人工生物401とは異なる第4の人工生物404を生成してもよい。例えば、システム1は、第1の人工生物401が子供を生む形で、第4の人工生物404を生成してもよい。あるいは、システム1は、第1の人工生物401から分裂する形で、第4の人工生物404を生成してもよい。
【0091】
システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401のパラメータをそのまま第4の人工生物404に反映してもよい。システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401のパラメータをランダムに変化させた形で第4の人工生物404に反映してもよい。システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401のパラメータから所定の範囲内でランダムに変化させた形で第4の人工生物404に反映してもよい。
【0092】
システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401のパラメータとして、第1の人工生物401が備える第1の学習アルゴリズム501に関するパラメータを含めてもよい。
【0093】
システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の学習アルゴリズム501のパラメータをそのまま第4の人工生物404に反映してもよい。
【0094】
システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の学習アルゴリズム501のパラメータをランダムに変化させた形で第4の人工生物404に反映してもよい。
【0095】
システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の学習アルゴリズム501のパラメータから所定の範囲内でランダムに変化させた形で第4の人工生物404に反映してもよい。
【0096】
これにより、システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401の特徴をどの程度まで第4の人工生物404に引き継ぐかを任意に調整することができる。
【0097】
システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401の特徴を第4の人工生物404にどの程度引き継ぐかに関するパラメータを、第1の人工生物401のパラメータの一部として設定してもよい。
【0098】
システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401の特徴をどの程度第4の人工生物404に引き継ぐかに関するパラメータを、第1の学習アルゴリズム501のパラメータの一部として設定してもよい。
【0099】
これにより、システム1は、第1の人工生物401から第4の人工生物404を生成する際に、第1の人工生物401の特徴をどの程度第4の人工生物404に引き継ぐかについてを、第1の人工生物401の特徴として保存することができる。
【0100】
S1015において、端末装置10は、第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付ける。
【0101】
端末装置10は、任意のタイミング、または、任意の期間における第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付ける。
【0102】
端末装置10は、任意のタイミングにおける第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点における第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点における第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。
【0103】
端末装置10は、任意の期間における第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点までの期間における第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点までの期間における第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。
【0104】
端末装置10は、任意のタイミング、または、任意の期間における第1の人工生物401に関するパラメータを保存する旨の情報をサーバ20に送信する。
【0105】
パラメータコピーモジュール2035は、第1の人工生物401に関するパラメータを保存する旨の入力をユーザから受け付ける代わりに、所定のタイミングで自動的に第1の人工生物401に関するパラメータを保存する旨を決定してもよい。
【0106】
例えば、パラメータコピーモジュール2035は、第1の人工生物401に関するパラメータを一定時間ごとに保存する旨を決定してもよい。あるいは、パラメータコピーモジュール2035は、第1の人工生物401に関するパラメータを所定のイベントが終了するごとに保存する旨を決定してもよい。
【0107】
S1016において、パラメータコピーモジュール2035は、第1の人工生物401に関するパラメータを保存する。
【0108】
パラメータコピーモジュール2035は、S1015でユーザが入力した内容に基づいて、任意のタイミング、または、任意の期間における第1の人工生物401に関するパラメータを保存する。
【0109】
パラメータコピーモジュール2035は、任意のタイミングにおける第1の人工生物401に関するパラメータを保存する。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点における第1の人工生物401に関するパラメータを保存してもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点における第1の人工生物401に関するパラメータを保存してもよい。
【0110】
パラメータコピーモジュール2035は、任意の期間における第1の人工生物401に関するパラメータを保存する。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点までの期間における第1の人工生物401に関するパラメータを保存してもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点までの期間における第1の人工生物401に関するパラメータを保存してもよい。
【0111】
S1017において、端末装置10は、第1の人工生物401に関するパラメータを、第2の人工生物402に反映させる旨の入力をユーザから受け付ける。
【0112】
端末装置10は、第1の人工生物401に関するパラメータをコピーする第2の人工生物402を、第1の仮想空間301、または、第1の仮想空間301とは異なる第2の仮想空間302に配置する旨の入力をユーザから受け付ける。
【0113】
端末装置10は、第2の人工生物402にコピーする第1の人工生物401に関するパラメータを指定する入力をユーザから受け付ける。端末装置10は、第2の人工生物402にコピーする第1の人工生物401に関するパラメータとして、S1016で保存したすべてのパラメータを指定する入力をユーザから受け付けてもよい。あるいは、端末装置10は、第2の人工生物402にコピーする第1の人工生物401に関するパラメータとして、S1016で保存したパラメータから一部のパラメータを指定する入力をユーザから受け付けてもよい。
【0114】
端末装置10は、所定の期間における第1の人工生物401に関するパラメータが保存されている場合に、第1の人工生物401に関するパラメータをコピーするタイミングを指定する入力をユーザから受け付けてもよい。例えば、第1の人工生物401が生まれてから1年経った時点までの期間における第1の人工生物401に関するパラメータが保存されている場合に、端末装置10は、第1の人工生物401が生まれてから半年経った時点のパラメータを第2の人工生物402にコピーする旨の入力をユーザから受け付ける。
【0115】
端末装置10は、第2の人工生物402にコピーする、第1の人工生物401に関するパラメータに関する情報をサーバ20に送信する。
【0116】
S1018において、パラメータコピーモジュール2035は、第1の仮想空間301または第2の仮想空間302に、第2の人工生物402を配置し、第1の人工生物401に関するパラメータの少なくとも一部を第2の人工生物402に反映させる。
【0117】
人工生物制御モジュール2034は、第1の仮想空間301または第2の仮想空間302に、第2の人工生物402を配置する。さらに、パラメータコピーモジュール2035は、第1の人工生物401に関するパラメータの少なくとも一部を第2の人工生物402のパラメータに反映させる。
【0118】
これにより、ユーザは自分が気に入った人工生物を、任意の環境で育成することができる。
【0119】
図7は、第1の実施の形態におけるシステム1により、仮想空間のパラメータを他の仮想空間にコピーする流れの一例を示すフローチャートである。
【0120】
S1111において、端末装置10は、第1の入力をユーザから受け付ける。
【0121】
端末装置10は、第1の仮想空間301のパラメータを変化させる第1の入力をユーザから受け付ける。例えば、端末装置10は、第1の入力として第1の仮想空間301の重力を変化させる旨の入力をユーザから受け付ける。
【0122】
端末装置10は、第1の仮想空間301のパラメータを変化させる第1の入力を複数のユーザから受け付けてもよい。端末装置10は、課金を行ったユーザのみから第1の仮想空間301のパラメータを変化させる第1の入力を受け付けてもよい。
【0123】
端末装置10は、第1の入力に関する情報をユーザから受け付け、その情報をサーバ20に送信する。
【0124】
S1112において、仮想空間制御モジュール2033は、第1の入力に基づいて第1の仮想空間301に関するパラメータを変化させる。
【0125】
仮想空間制御モジュール2033は、第1の入力に基づいて第1の仮想空間301に関するパラメータを変化させる。例えば、仮想空間制御モジュール2033は、第1の入力に基づいて第1の仮想空間301の重力を変化させる。仮想空間制御モジュール2033は、第1の仮想空間301に関するパラメータを変化させた結果を、仮想空間データベース281に記録する。
【0126】
S1113において、端末装置10は、第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付ける。
【0127】
端末装置10は、任意のタイミング、または、任意の期間における第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付ける。
【0128】
端末装置10は、任意のタイミングにおける第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点における第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点における第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。
【0129】
端末装置10は、任意の期間における第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点までの期間における第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点までの期間における第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。
【0130】
端末装置10は、任意のタイミング、または、任意の期間における第1の仮想空間301に関するパラメータを保存する旨の情報をサーバ20に送信する。
【0131】
パラメータコピーモジュール2035は、第1の仮想空間301に関するパラメータを保存する旨の入力をユーザから受け付ける代わりに、所定のタイミングで自動的に第1の仮想空間301に関するパラメータを保存する旨を決定してもよい。
【0132】
例えば、パラメータコピーモジュール2035は、第1の仮想空間301に関するパラメータを一定時間ごとに保存する旨を決定してもよい。あるいは、パラメータコピーモジュール2035は第1の仮想空間301に関するパラメータを所定のイベントが終了するごとに保存する旨を決定してもよい。
【0133】
S1114において、パラメータコピーモジュール2035は、第1の仮想空間301に関するパラメータを保存する。
【0134】
パラメータコピーモジュール2035は、S1113でユーザが入力した内容に基づいて、任意のタイミング、または、任意の期間における第1の仮想空間301に関するパラメータを保存する。
【0135】
パラメータコピーモジュール2035は、任意のタイミングにおける第1の仮想空間301に関するパラメータを保存する。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点における第1の仮想空間301に関するパラメータを保存してもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点における第1の仮想空間301に関するパラメータを保存してもよい。
【0136】
パラメータコピーモジュール2035は、任意の期間における第1の仮想空間301に関するパラメータを保存する。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点までの期間における第1の仮想空間301に関するパラメータを保存してもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点までの期間における第1の仮想空間301に関するパラメータを保存してもよい。
【0137】
S1115において、端末装置10は、第1の仮想空間301に関するパラメータを、第3の仮想空間303に反映させる旨の入力をユーザから受け付ける。
【0138】
端末装置10は、第1の仮想空間301に関するパラメータを反映させる第3の仮想空間303を生成する旨の入力をユーザから受け付ける。
【0139】
端末装置10は、第3の仮想空間303にコピーする第1の仮想空間301に関するパラメータを指定する入力をユーザから受け付ける。端末装置10は、第3の仮想空間303にコピーする第1の仮想空間301に関するパラメータとして、S1114で保存したすべてのパラメータを指定する入力をユーザから受け付けてもよい。あるいは、端末装置10は、第3の仮想空間303にコピーする第1の仮想空間301に関するパラメータとして、S1114で保存したパラメータから一部のパラメータを指定する入力をユーザから受け付けてもよい。
【0140】
端末装置10は、所定の期間における第1の仮想空間301に関するパラメータが保存されている場合に、第1の仮想空間301に関するパラメータをコピーするタイミングを指定する入力をユーザから受け付けてもよい。例えば、第1の人工生物401が生まれてから1年経った時点までの期間における第1の仮想空間301に関するパラメータが保存されている場合に、端末装置10は、第1の人工生物401が生まれてから半年経った時点のパラメータを第3の仮想空間303にコピーする旨の入力をユーザから受け付ける。
【0141】
端末装置10は、第3の仮想空間303にコピーする、第1の仮想空間301に関するパラメータに関する情報をサーバ20に送信する。
【0142】
S1116において、仮想空間制御モジュール2033は、第1の仮想空間301に関するパラメータの少なくとも一部を第3の仮想空間303に反映させる。
【0143】
仮想空間制御モジュール2033は、第1の仮想空間301に関するパラメータの少なくとも一部を第3の仮想空間303に反映させる。
【0144】
これにより、ユーザは自分が気に入った仮想空間のパラメータを用いて、人工生物を育成することができる。
【0145】
図8は、第1の実施の形態におけるシステム1により、学習アルゴリズムのパラメータを他の人工生物にコピーする流れの一例を示すフローチャートである。
【0146】
S1211において、端末装置10は、第2の入力をユーザから受け付ける。
【0147】
端末装置10は、第1の学習アルゴリズム501のパラメータを変化させる第2の入力をユーザから受け付ける。例えば、端末装置10は、第2の入力として第1の学習アルゴリズム501において障害物から離れると高評価とする旨の入力をユーザから受け付ける。
【0148】
端末装置10は、第1の学習アルゴリズム501のパラメータを変化させる第2の入力を複数のユーザから受け付けてもよい。端末装置10は、課金を行ったユーザのみから第1の学習アルゴリズム501のパラメータを変化させる第2の入力を受け付けてもよい。
【0149】
端末装置10は、第2の入力に関する情報をユーザから受け付け、その情報をサーバ20に送信する。
【0150】
S1212において、人工生物制御モジュール2034は、第2の入力に基づいて第1の学習アルゴリズム501に関するパラメータを変化させる。
【0151】
人工生物制御モジュール2034は、第2の入力に基づいて第1の学習アルゴリズム501に関するパラメータを変化させる。例えば、人工生物制御モジュール2034は、第2の入力に基づいて第1の学習アルゴリズム501を障害物から離れると高評価とするよう変化させる。人工生物制御モジュール2034は、第1の学習アルゴリズム501に関するパラメータを変化させた結果を、人工生物データベース282に記録する。
【0152】
S1213において、端末装置10は、第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付ける。
【0153】
端末装置10は、任意のタイミング、または、任意の期間における第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付ける。
【0154】
端末装置10は、任意のタイミングにおける第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点における第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点における第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。
【0155】
端末装置10は、任意の期間における第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点までの期間における第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点までの期間における第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付けてもよい。
【0156】
端末装置10は、任意のタイミング、または、任意の期間における第1の学習アルゴリズム501に関するパラメータを保存する旨の情報をサーバ20に送信する。
【0157】
パラメータコピーモジュール2035は、第1の学習アルゴリズム501に関するパラメータを保存する旨の入力をユーザから受け付ける代わりに、所定のタイミングで自動的に第1の学習アルゴリズム501に関するパラメータを保存する旨を決定してもよい。
【0158】
例えば、パラメータコピーモジュール2035は、第1の学習アルゴリズム501に関するパラメータを一定時間ごとに保存する旨を決定してもよい。あるいは、パラメータコピーモジュール2035は第1の学習アルゴリズム501に関するパラメータを所定のイベントが終了するごとに保存する旨を決定してもよい。
【0159】
S1214において、パラメータコピーモジュール2035は、第1の学習アルゴリズム501に関するパラメータを保存する。
【0160】
パラメータコピーモジュール2035は、S1213でユーザが入力した内容に基づいて、任意のタイミング、または、任意の期間における第1の学習アルゴリズム501に関するパラメータを保存する。
【0161】
パラメータコピーモジュール2035は、任意のタイミングにおける第1の学習アルゴリズム501に関するパラメータを保存する。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点における第1の学習アルゴリズム501に関するパラメータを保存してもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点における第1の学習アルゴリズム501に関するパラメータを保存してもよい。
【0162】
パラメータコピーモジュール2035は、任意の期間における第1の学習アルゴリズム501に関するパラメータを保存する。例えば、端末装置10は、第1の人工生物401が生まれてから1年経った時点までの期間における第1の学習アルゴリズム501に関するパラメータを保存してもよい。あるいは、端末装置10は、第1の仮想空間301を生成してから1年経った時点までの期間における第1の学習アルゴリズム501に関するパラメータを保存してもよい。
【0163】
S1215において、端末装置10は、第1の学習アルゴリズム501に関するパラメータを、第3の人工生物403に反映させる旨の入力をユーザから受け付ける。
【0164】
端末装置10は、第1の学習アルゴリズム501に関するパラメータを反映させる第3の人工生物403を、第1の仮想空間301、または、第1の仮想空間301とは異なる第2の仮想空間302に配置する旨の入力をユーザから受け付ける。
【0165】
端末装置10は、第3の人工生物403に反映させる第1の学習アルゴリズム501に関するパラメータを指定する入力をユーザから受け付ける。端末装置10は、第3の人工生物403に反映させる第1の学習アルゴリズム501に関するパラメータとして、S1214で保存したすべてのパラメータを指定する入力をユーザから受け付けてもよい。あるいは、端末装置10は、第3の人工生物403に反映させる第1の学習アルゴリズム501に関するパラメータとして、S1214で保存したパラメータから一部のパラメータを指定する入力をユーザから受け付けてもよい。
【0166】
端末装置10は、所定の期間における第1の学習アルゴリズム501に関するパラメータが保存されている場合に、第1の学習アルゴリズム501に関するパラメータをコピーするタイミングを指定する入力をユーザから受け付けてもよい。例えば、第1の人工生物401が生まれてから1年経った時点までの期間における第1の学習アルゴリズム501に関するパラメータが保存されている場合に、端末装置10は、第1の人工生物401が生まれてから半年経った時点の第1の学習アルゴリズム501に関するパラメータを、第3の人工生物403にコピーする旨の入力をユーザから受け付ける。
【0167】
端末装置10は、第3の人工生物403に反映させる、第1の学習アルゴリズム501に関するパラメータに関する情報をサーバ20に送信する。
【0168】
S1216において、パラメータコピーモジュール2035は、第1の学習アルゴリズム501に関するパラメータの少なくとも一部を第3の人工生物403に反映させる。
【0169】
人工生物制御モジュール2034は、第1の仮想空間301または第2の仮想空間302に、第3の人工生物403を配置する。さらに、パラメータコピーモジュール2035は、第1の学習アルゴリズム501に関するパラメータの少なくとも一部を第3の人工生物403のパラメータに反映させる。
【0170】
これにより、ユーザは、自分が気に入った学習アルゴリズムのパラメータを用いて、人工生物を育成することができる。
【0171】
図9は、第1の実施の形態におけるシステム1により、ユーザの入力に基づいて人工生物のパラメータを変化させる流れの一例を示すフローチャートである。
【0172】
S1311において、端末装置10は、第3の入力をユーザから受け付ける。
【0173】
端末装置10は、第1の人工生物401のパラメータを変化させる第3の入力をユーザから受け付ける。例えば、端末装置10は、第3の入力として第1の人工生物401の脚を動かす速度を速くする旨の入力をユーザから受け付ける。
【0174】
端末装置10は、第1の人工生物401のパラメータを変化させる第3の入力を複数のユーザから受け付けてもよい。端末装置10は、課金を行ったユーザのみから第1の人工生物401のパラメータを変化させる第3の入力を受け付けてもよい。
【0175】
端末装置10は、第3の入力に関する情報をユーザから受け付け、その情報をサーバ20に送信する。
【0176】
S1312において、人工生物制御モジュール2034は、第3の入力に基づいて第1の人工生物401に関するパラメータを変化させる。
【0177】
人工生物制御モジュール2034は、第3の入力に基づいて第1の人工生物401に関するパラメータを変化させる。例えば、人工生物制御モジュール2034は、第3の入力に基づいて第1の人工生物401の脚を動かす速度を速くするよう変化させる。人工生物制御モジュール2034は、第1の人工生物401に関するパラメータを変化させた結果を、人工生物データベース282に記録する。
【0178】
これにより、ユーザは人工生物のパラメータを任意に変更させた上で育成することができる。
【0179】
図10は、第1の実施の形態におけるシステム1により、所定の条件に基づいてシステムが自動的に入力を行う流れの一例を示すフローチャートである。
【0180】
S1411において、端末装置10は、システムが自動的に第4の入力を行う所定の条件に関する情報をユーザから受け付ける。
【0181】
端末装置10は、システムが自動的に第4の入力を行う所定の条件に関する情報をユーザから受け付ける。
【0182】
端末装置10は、第4の入力として、第1の仮想空間301に関するパラメータを変化させる第1の入力と、第1の学習アルゴリズム501に関するパラメータを変化させる第2の入力と、第1の人工生物401に関するパラメータを変化させる第3の入力と、の少なくともいずれかを行う入力を受け付ける。
【0183】
端末装置10は、所定の条件として、人工生物のパラメータに関する条件を受け付けてもよい。例えば、端末装置10は、所定の条件として、人工生物の空腹度が80%以上である旨を入力する。
【0184】
端末装置10は、所定の条件として、仮想空間のパラメータに関する条件を受け付けてもよい。例えば、端末装置10は、所定の条件として、仮想空間の陸上の面積が500平方キロメートル以上である旨を入力する。
【0185】
端末装置10は、システムが自動的に第4の入力を行う所定の条件に関する情報をユーザから受け付け、その情報をサーバ20に送信する。
【0186】
S1412において、サーバ20は、所定の条件に基づいて自動的に第4の入力を行う。
【0187】
サーバ20は、第1の人工生物401が所定の条件を満たした場合に、第1の仮想空間301に関するパラメータを変更させる第4の入力を自動的に行ってもよい。例えば、サーバ20は、第1の人工生物401の空腹度が所定の数値を超えた場合に、第1の仮想空間301に餌を多く配置する第4の入力を自動的に行うことで、第1の仮想空間301に餌を多く配置する。
【0188】
S1413において、サーバ20は、第4の入力に関する情報および所定の条件に関する情報を、第1の仮想空間301に関するパラメータの一部として保存する。
【0189】
サーバ20は、第1の人工生物401が所定の条件を満たした場合に、第1の仮想空間301に関するパラメータを変更させる第4の入力を自動的に行う旨を、第1の仮想空間301に関するパラメータの一部として保存する。例えば、サーバ20は、第1の人工生物401の空腹度が所定の数値を超えた場合に、第1の仮想空間301に餌を多く配置する第4の入力を自動的に行う旨を、第1の仮想空間301に関するパラメータの一部として保存する。
【0190】
これにより、ユーザは仮想空間の中で人工生物を効率よく育成することができる。
【0191】
図11は、第1の実施の形態におけるシステム1により、仮想空間または人工生物に関するイベントをユーザに通知する流れの一例を示すフローチャートである。
【0192】
S1511において、ユーザ表示制御モジュール2036は、第1の仮想空間301または第1の人工生物401に関わるイベントが発生する第1の時刻、またはイベントが発生した第2の時刻を取得する。
【0193】
ユーザ表示制御モジュール2036は、第1の時刻として第1の仮想空間301に関わるイベントが発生する時刻を取得する。例えば、ユーザ表示制御モジュール2036は、第1の時刻として第1の仮想空間301に竜巻が発生する時刻を取得する。
【0194】
ユーザ表示制御モジュール2036は、第1の時刻として第1の人工生物401に関わるイベントが発生する時刻を取得する。例えば、ユーザ表示制御モジュール2036は、第1の時刻として第1の人工生物401に子供が生まれる時刻を取得する。
【0195】
ユーザ表示制御モジュール2036は、第2の時刻として第1の仮想空間301に関わるイベントが発生した時刻を取得する。例えば、ユーザ表示制御モジュール2036は、第2の時刻として第1の仮想空間301に竜巻が発生した時刻を取得する。
【0196】
ユーザ表示制御モジュール2036は、第2の時刻として第1の人工生物401に関わるイベントが発生した時刻を取得する。例えば、ユーザ表示制御モジュール2036は、第2の時刻として第1の人工生物401に子供が生まれた時刻を取得する。
【0197】
サーバ20は、ユーザ表示制御モジュール2036が取得した情報を端末装置10に送信する。
【0198】
S1512において、端末装置10は、第1の時刻または第2の時刻における第1の仮想空間301および第1の人工生物401に関する情報をユーザに表示する。
【0199】
端末装置10は、第1の時刻における第1の仮想空間301に関する情報をユーザに表示する。例えば、端末装置10は、第1の時刻に第1の仮想空間301で竜巻が発生した旨の情報をユーザに表示する。
【0200】
端末装置10は、第1の時刻における第1の人工生物401に関する情報をユーザに表示する。例えば、端末装置10は、第1の時刻に第1の人工生物401に子供が生まれた旨の情報をユーザに表示する。
【0201】
端末装置10は、第2の時刻における第1の仮想空間301に関する情報をユーザに表示する。例えば、端末装置10は、第2の時刻に第1の仮想空間301で竜巻が発生する旨の情報をユーザに表示する。
【0202】
端末装置10は、第2の時刻における第1の人工生物401に関する情報をユーザに表示する。例えば、端末装置10は、第2の時刻に第1の人工生物401に子供が生まれる旨の情報をユーザに表示する。
【0203】
これにより、ユーザは第1の仮想空間301または第1の人工生物401にイベントが発生した、あるいはイベントが発生する時刻における、第1の仮想空間301または第1の人工生物401に関する情報を効率的に確認することができる。
【0204】
【0205】
図12の画面例(A)は、第1の実施の形態に係る端末装置10において、仮想空間に配置した人工生物を管理する局面を示す図である。画面例(A)に示すように、端末装置10は、ディスプレイ132に仮想空間・人工生物の管理画面133Aを表示し、仮想空間に配置した人工生物の様子を表示する。
【0206】
端末装置10は、仮想空間に関する情報を表示してもよい。例えば、端末装置10は、仮想空間に関する情報として、仮想空間の地形情報と、気象情報と、物理法則情報と、を表示してもよい。
【0207】
端末装置10は、人工生物に関する情報を表示してもよい。例えば、端末装置10は、人工生物に関する情報として、人工生物の形態情報と、動作情報と、学習アルゴリズム情報と、を表示してもよい。
【0208】
端末装置10は、仮想空間の情報を変更するための入力を仮想空間・人工生物の管理画面133Aから受け付けてもよい。端末装置10は、人工生物の情報を変更するための入力を仮想空間・人工生物の管理画面133Aから受け付けてもよい。
【0209】
端末装置10は、仮想空間・人工生物の管理画面133Aに図示していない内容を含めてもよい。例えば、端末装置10は、ユーザが人工生物に付けた名前に関する情報を人工生物の管理画面133Aに含めてもよい。
【0210】
図13の画面例(B)は、第1の実施の形態に係る端末装置10において、仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する局面を示す図である。画面例(B)に示すように、端末装置10は、ディスプレイ132に仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する画面133Bを表示し、仮想空間・人工生物・学習アルゴリズムを保存・反映するための情報を表示する。
【0211】
端末装置10は、仮想空間・人工生物・学習アルゴリズムの情報を保存する時刻に関する情報を表示してもよい。
【0212】
端末装置10は、保存した仮想空間・人工生物・学習アルゴリズムの情報を反映する仮想空間に関する情報を表示してもよい。端末装置10は、保存した仮想空間・人工生物・学習アルゴリズムの情報を反映する時刻に関する情報を表示してもよい。
【0213】
端末装置10は、仮想空間・人工生物・学習アルゴリズムの情報を保存する時刻を変更するための入力を仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する画面133Bから受け付けてもよい。端末装置10は、保存した仮想空間・人工生物・学習アルゴリズムの情報を反映する時刻を変更するための入力を仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する画面133Bから受け付けてもよい。
【0214】
端末装置10は、仮想空間・人工生物・学習アルゴリズムの少なくともいずれかの情報を保存するための入力を、仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する画面133Bから受け付けてもよい。端末装置10は、保存した仮想空間・人工生物・学習アルゴリズムの少なくともいずれかの情報を反映するための入力を、仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する画面133Bから受け付けてもよい。
【0215】
端末装置10は、仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する画面133Bに図示していない内容を含めてもよい。例えば、端末装置10は、ユーザが人工生物に付けた名前に関する情報を仮想空間・人工生物・学習アルゴリズムの情報を保存・反映する画面133Bに含めてもよい。
【0216】
図14の画面例(C)は、第1の実施の形態に係る端末装置10において、仮想空間・人工生物・学習アルゴリズムのいずれかを変化させる入力を自動的に行う条件を管理する局面を示す図である。画面例(C)に示すように、端末装置10は、ディスプレイ132に仮想空間・人工生物に対する自動入力の管理画面133Cを表示し、仮想空間・人工生物のパラメータを変更する入力を自動的に行う条件と入力内容とを表示する。
【0217】
端末装置10は、システムが自動的に行う入力の内容に関する情報を表示してもよい。端末装置10は、システムが自動的に入力を行う条件に関する情報を表示してもよい。
【0218】
端末装置10は、システムが自動的に行う入力の内容を変更するための入力を、仮想空間・人工生物に対する自動入力の管理画面133Cから受け付けてもよい。端末装置10は、システムが自動的に入力を行う条件を変更するための入力を、仮想空間・人工生物に対する自動入力の管理画面133Cから受け付けてもよい。
【0219】
端末装置10は、仮想空間・人工生物に対する自動入力の管理画面133Cに図示していない内容を含めてもよい。例えば、端末装置10は、設定した自動入力が行われた回数に関する情報を仮想空間・人工生物に対する自動入力の管理画面133Cに含めてもよい。
【0220】
図15の画面例(D)は、第1の実施の形態に係る端末装置10において、仮想空間・人工生物に関するイベント情報を表示する局面を示す図である。画面例(D)に示すように、端末装置10は、ディスプレイ132に仮想空間・人工生物に関するイベントの表示画面133Dを表示し、仮想空間・人工生物に関するイベントの情報を表示する。
【0221】
端末装置10は、仮想空間または人工生物に関するイベントが過去に発生した時刻に関する情報を表示してもよい。端末装置10は、仮想空間または人工生物に関するイベントが今後発生する時刻に関する情報を表示してもよい。
【0222】
端末装置10は、仮想空間または人工生物に関して過去に発生したイベントの内容に関する情報を表示してもよい。端末装置10は、仮想空間または人工生物に関して今後発生するイベントの内容に関する情報を表示してもよい。
【0223】
端末装置10は、イベントが発生した時刻に移動するための入力を、仮想空間・人工生物に関するイベントの表示画面133Dから受け付けてもよい。端末装置10は、イベントが発生する時刻に移動するための入力を、仮想空間・人工生物に関するイベントの表示画面133Dから受け付けてもよい。
【0224】
端末装置10は、仮想空間・人工生物に関するイベントの表示画面133Dに図示していない内容を含めてもよい。例えば、端末装置10は、イベントの重要度に関する情報を仮想空間・人工生物に関するイベントの表示画面133Dに含めてもよい。
【0225】
<小括>
以上のように、本開示によると、自律的に進化する人工生物を任意の環境で育成することができることが可能となる。
【0226】
<5 付記>
以上の各実施の形態で説明した事項を以下に付記する。
【0227】
(付記1)プロセッサを備えるコンピュータに実行させるためのプログラムであって、プログラムは、前記プロセッサに、第1の仮想空間301を生成するステップ(S1012)と、第1の仮想空間301に第1の人工生物401を配置するステップ(S1013)と、第1の仮想空間301と、第1の人工生物401が有する第1の学習アルゴリズム501と、に基づいて、第1の人工生物401に関するパラメータを経時的に変化させるステップ(S1014)と、第1の人工生物401に関するパラメータを保存するステップ(S1016)と、第1の仮想空間301または第1の仮想空間301とは異なる第2の仮想空間302に、第2の人工生物402を配置し、第1の人工生物401に関するパラメータの少なくとも一部を第2の人工生物402に反映させるステップ(S1017)と、を実行させる、プログラム。
【0228】
(付記2)プログラムは、プロセッサに、さらに、第1の仮想空間301のパラメータと、第1の人工生物401のパラメータと、第1の学習アルゴリズム501のパラメータと、の少なくともいずれかを変化させる入力をユーザから受け付けるステップ(S1111、S1211、S1311)を実行させる、(付記1)に記載のプログラム。
【0229】
(付記3)プログラムは、プロセッサに、さらに、ユーザから受け付けた第1の入力に基づいて第1の仮想空間301に関するパラメータを変化させるステップ(S1112)を実行させる、(付記2)に記載のプログラム。
【0230】
(付記4)プログラムは、プロセッサに、さらに、第1の仮想空間301に関するパラメータを保存するステップ(S1114)と、保存した第1の仮想空間301に関するパラメータを、第1の仮想空間301とは異なる第3の仮想空間に反映させるステップ(S1116)と、を実行させる、(付記3)に記載のプログラム。
【0231】
(付記5)プログラムは、プロセッサに、さらに、ユーザから受け付けた第2の入力、または、第1の仮想空間301に関するパラメータに基づいて第1の学習アルゴリズム501に関するパラメータを変化させるステップ(S1212)を実行させる、(付記2)に記載のプログラム。
【0232】
(付記6)プログラムは、プロセッサに、さらに、第1の学習アルゴリズム501に関するパラメータを保存するステップ(S1214)と、保存した第1の学習アルゴリズム501に関するパラメータを、第1の人工生物401とは異なる第3の人工生物403に反映させるステップ(S1216)と、を実行させる、(付記5)に記載のプログラム。
【0233】
(付記7)プログラムは、プロセッサに、さらに、ユーザから受け付けた第3の入力に基づいて第1の人工生物401に関するパラメータを変化させるステップ(S1312)を実行させる、(付記2)に記載のプログラム。
【0234】
(付記8)プログラムは、プロセッサに、さらに、所定の条件に基づいてユーザの代わりにプログラムが自動的に第1の入力と、第2の入力と、第3の入力と、の少なくともいずれかを行う第4の入力を行うステップ(S1412)と、所定の条件に関する情報をユーザから受け付けるステップ(S1411)と、第4の入力に関する情報および第4の入力を自動的に行う所定の条件に関する情報を、第1の仮想空間301に関するパラメータの一部として保存するステップ(S1413)と、を実行させる、(付記2)に記載のプログラム。
【0235】
(付記9)プログラムは、プロセッサに、さらに、第1の仮想空間301または第1の人工生物401に関わるイベントが発生する第1の時刻、またはイベントが発生した第2の時刻を取得するステップ(S1511)と、第1の時刻または第2の時刻における第1の仮想空間301および第1の人工生物401に関する情報をユーザに表示するステップ(S1512)と、を実行させる、(付記2)に記載のプログラム。
【符号の説明】
【0236】
10 端末装置、20 サーバ、80 ネットワーク、181 入力操作受付部、186 通知制御部、2033 仮想空間制御モジュール、2034 人工生物制御モジュール、2035 パラメータコピーモジュール
【手続補正書】
【提出日】2021-10-14
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
プロセッサを備えるコンピュータに実行させるためのプログラムであって、前記プログラムは、前記プロセッサに、
第1の仮想空間を生成するステップと、
前記第1の仮想空間に第1の人工生物を配置するステップと、
前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させるステップと、
ユーザが入力した内容に基づいて、任意のタイミングにおける前記第1の人工生物に関するパラメータを保存するステップと、
前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記保存した任意のタイミングにおける前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるステップと、
を実行させるプログラム。
【請求項2】
前記プログラムは、前記プロセッサに、さらに、
前記第1の仮想空間のパラメータと、前記第1の人工生物のパラメータと、前記第1の学習アルゴリズムのパラメータと、の少なくともいずれかを変化させる入力をユーザから受け付けるステップを実行させる、請求項1のプログラム。
【請求項3】
前記プログラムは、前記プロセッサに、さらに、
前記ユーザから受け付けた第1の入力に基づいて前記第1の仮想空間に関するパラメータを変化させるステップを実行させる、請求項2のプログラム。
【請求項4】
前記プログラムは、前記プロセッサに、さらに、
前記第1の仮想空間に関するパラメータを保存するステップと、
前記保存した第1の仮想空間に関するパラメータを、前記第1の仮想空間とは異なる第3の仮想空間に反映させるステップと、
を実行させる、請求項3のプログラム。
【請求項5】
前記プログラムは、前記プロセッサに、さらに、
前記ユーザから受け付けた第2の入力、または、前記第1の仮想空間に関するパラメータに基づいて前記第1の学習アルゴリズムに関するパラメータを変化させるステップを実行させる、請求項2のプログラム。
【請求項6】
前記プログラムは、前記プロセッサに、さらに、
前記第1の学習アルゴリズムに関するパラメータを保存するステップと、
前記保存した第1の学習アルゴリズムに関するパラメータを、前記第1の人工生物とは異なる第3の人工生物に反映させるステップと、
を実行させる、請求項5のプログラム。
【請求項7】
前記プログラムは、前記プロセッサに、さらに、
前記ユーザから受け付けた第3の入力に基づいて前記第1の人工生物に関するパラメータを変化させるステップを実行させる、請求項2のプログラム。
【請求項8】
前記プログラムは、前記プロセッサに、さらに、
所定の条件に基づいて前記ユーザの代わりにプログラムが自動的に前記第1の仮想空間に関するパラメータを変化させるための第1の入力と、前記第1の学習アルゴリズムに関するパラメータを変化させるための第2の入力と、前記第1の人工生物に関するパラメータを変化させるための第3の入力と、の少なくともいずれかを行う第4の入力を行うステップと、
前記所定の条件に関する情報を前記ユーザから受け付けるステップと、
前記第4の入力に関する情報および前記第4の入力を自動的に行う所定の条件に関する情報を、前記第1の仮想空間に関するパラメータの一部として保存するステップと、
を実行させる、請求項2のプログラム。
【請求項9】
前記プログラムは、前記プロセッサに、さらに、
前記第1の仮想空間または前記第1の人工生物に関わるイベントが発生する第1の時刻、または前記イベントが発生した第2の時刻を取得するステップと、
前記第1の時刻または前記第2の時刻における前記第1の仮想空間および前記第1の人工生物に関する情報を前記ユーザに表示するステップと、
を実行させる、請求項2のプログラム。
【請求項10】
プロセッサと、メモリを備えるコンピュータにより実行される方法であって、前記方法は、前記プロセッサが、前記メモリに記憶されるプログラムを読み込んで実行することにより、
第1の仮想空間を生成するステップと、
前記第1の仮想空間に第1の人工生物を配置するステップと、
前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させるステップと、
ユーザが入力した内容に基づいて、任意のタイミングにおける前記第1の人工生物に関するパラメータを保存するステップと、
前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記保存した任意のタイミングにおける前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるステップと、
を実行する方法。
【請求項11】
制御部と、記憶部とを備える情報処理装置であって、前記制御部が、前記記憶部に記憶されるプログラムに基づいて動作することにより、
第1の仮想空間を生成するステップと、
前記第1の仮想空間に第1の人工生物を配置するステップと、
前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させるステップと、
ユーザが入力した内容に基づいて、任意のタイミングにおける前記第1の人工生物に関するパラメータを保存するステップと、
前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記保存した任意のタイミングにおける前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるステップと、
を実行する情報処理装置。
【請求項12】
端末装置と、サーバと、を備えるシステムであって、
前記サーバは、
第1の仮想空間を生成する仮想空間制御モジュールと、
前記第1の仮想空間に第1の人工生物を配置し、前記第1の仮想空間と、前記第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、前記第1の人工生物に関するパラメータを経時的に変化させる人工生物制御モジュールと、
ユーザが入力した内容に基づいて、任意のタイミングにおける前記第1の人工生物に関するパラメータを保存し、前記第1の仮想空間または前記第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、前記保存した任意のタイミングにおける前記第1の人工生物に関するパラメータの少なくとも一部を前記第2の人工生物に反映させるパラメータコピーモジュールと、を備える
システム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0007
【補正方法】変更
【補正の内容】
【0007】
一実施の形態によると、プロセッサを備えるコンピュータに実行させるためのプログラムであって、プログラムは、プロセッサに、第1の仮想空間を生成するステップと、第1の仮想空間に第1の人工生物を配置するステップと、第1の仮想空間と、第1の人工生物が有する第1の学習アルゴリズムと、に基づいて、第1の人工生物に関するパラメータを経時的に変化させるステップと、ユーザが入力した内容に基づいて、任意のタイミングにおける第1の人工生物に関するパラメータを保存するステップと、第1の仮想空間または第1の仮想空間とは異なる第2の仮想空間に第2の人工生物を配置し、保存した任意のタイミングにおける第1の人工生物に関するパラメータの少なくとも一部を第2の人工生物に反映させるステップと、を実行させるプログラム。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0065
【補正方法】変更
【補正の内容】
【0065】
<3 動作>
以下、
図6から図
11を参照しながら、システム1を介して、ユーザが仮想空間に配置された人工生物の育成を行う処理について説明する。