(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-05-23
(45)【発行日】2024-05-31
(54)【発明の名称】プログラム、及び、システム
(51)【国際特許分類】
A63F 13/60 20140101AFI20240524BHJP
A63F 13/79 20140101ALI20240524BHJP
【FI】
A63F13/60
A63F13/79
(21)【出願番号】P 2023187205
(22)【出願日】2023-10-31
【審査請求日】2024-03-06
【早期審査対象出願】
(73)【特許権者】
【識別番号】509070463
【氏名又は名称】株式会社コロプラ
(74)【代理人】
【識別番号】110000442
【氏名又は名称】弁理士法人武和国際特許事務所
(72)【発明者】
【氏名】馬場 功淳
【審査官】鈴木 崇雅
(56)【参考文献】
【文献】特表2021-534931(JP,A)
【文献】特開2020-069377(JP,A)
【文献】特表2023-508058(JP,A)
【文献】特開2020-166528(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24、13/00-13/98
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
コンピュータを、
ゲームに関する未知キーワード、及び、前記ゲームのプレイに関する未知ログデータが入力されると、ゲーム内要素を含む前記ゲームのストーリに関する未知ストーリデータを生成する第1生成手段と、
ストーリデータ、及び、ログデータを含む第1学習データを用いて学習した第1学習済みモデルに対し、前記未知ストーリデータ、及び、前記未知ログデータを含む未知データを入力する入力手段と、
前記未知データが入力されると、前記未知データに基づき、前記ゲーム内要素に関する出力データを生成する第2生成手段と、
前記出力データに基づき、前記ゲーム内要素が登場する前記ゲームを進行させる進行手段として機能させるプログラム。
【請求項2】
前記未知ログデータは、
前記ゲームにおける出力画面の画像データ、又は、前記ゲームにおいて登場するキャラクタ、若しくは、ユーザのプロフィールに関するプロフィールデータを含む
請求項1に記載のプログラム。
【請求項3】
前記第1生成手段は、
前記ゲームに関するキーワード、前記ログデータ、及び、前記ゲームのストーリに関する第1正解データを含む第2学習データを用いて第2学習モデルを学習させた第2学習済みモデルを用い、
前記第2学習済みモデルは、
前記未知ログデータ、及び、前記未知キーワードが入力されると、前記ストーリデータを生成するように学習した生成AIである
請求項1に記載のプログラム。
【請求項4】
ゲームに関するキーワード、及び、前記ゲームのプレイに関するログデータが入力されると、ゲーム内要素を含む前記ゲームのストーリに関するストーリデータを生成するストーリデータ生成手段と、
前記ストーリデータ、及び、前記ログデータを含む第1学習データを入力する第1学習データ入力手段と、
前記第1学習データを用いて、第1学習モデルを学習させて第1学習済みモデルを生成する学習手段と、
前記ゲームに関する未知キーワード、及び、前記ゲームのプレイに関する未知ログデータが入力されると、前記ゲーム内要素を含む前記ゲームのストーリに関する未知ストーリデータを生成する未知ストーリデータ生成手段と、
前記第1学習済みモデルに対し、前記未知ストーリデータ、及び、前記未知ログデータを含む未知データを入力する未知データ入力手段と、
前記未知データが入力されると、前記未知データに基づき、前記ゲーム内要素に関する出力データを生成する出力データ生成手段と、
前記出力データに基づき、前記ゲーム内要素が登場する前記ゲームを進行させる進行手段とを備えるシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、及び、システムに関する。
【背景技術】
【0002】
従来、コンピュータを利用したゲーム(以下単に「ゲーム」という。)内において、ゲーム内で使用するアイテム(item)をユーザのプレイに応じて付与する技術が知られている。
【0003】
例えば、ゲーム内、すなわち、仮想空間にあるカジノにおいて、カジノゲームで勝利すると、プレイヤは仮想通貨を取得する。そして、仮想通貨の量が所定量を超えると、プレイヤに通知がされる。そして、仮想通貨は、ゲーム内における交換所で、ゲーム内で使用可能なアイテムと交換が可能である。このようにして、プレイヤに仮想通貨を獲得させるモチベーションを持たせる技術が知られている(例えば、特許文献1等である)。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の技術は、アイテム等のゲーム内要素を登場、交換、使用、付与、売買、改良、又は、取得等とするような状況において、これらの各状況に応じた事前の設定をゲームの開発段階で規定しておく必要がある。つまり、一のゲーム内要素について、各状況に対応する挙動を1つ1つ設定する必要があり、状況が増えれば増えるほどゲーム内要素を事前に設定する作業負荷が増加していくことになっていた。
【0006】
本発明は、ゲームで扱うアイテム等のゲーム内要素に関する設定作業の負荷を軽減させることを目的とする。
【課題を解決するための手段】
【0007】
本発明によって上記の課題を解決するため、プログラムは、コンピュータを、ゲームに関する未知キーワード、及び、前記ゲームのプレイに関する未知ログデータが入力されると、ゲーム内要素を含む前記ゲームのストーリに関する未知ストーリデータを生成する第1生成手段と、ストーリデータ、及び、ログデータを含む第1学習データを用いて学習した第1学習済みモデルに対し、前記未知ストーリデータ、及び、前記未知ログデータを含む未知データを入力する入力手段と、前記未知データが入力されると、前記未知データに基づき、前記ゲーム内要素に関する出力データを生成する第2生成手段と、前記出力データに基づき、前記ゲーム内要素が登場する前記ゲームを進行させる進行手段として機能させる。
【発明の効果】
【0008】
本発明によれば、ゲームで扱うアイテム等のゲーム内要素に関する設定作業の負荷を軽減できる。
【図面の簡単な説明】
【0009】
【
図1】本実施形態に係るシステム構成例を示す図である。
【
図4】AIの学習、及び、実行の全体処理例を示す図である。
【
図5】情報処理装置のハードウェア構成例を示す図である。
【
図7】RPGにおける第1学習モデルの学習処理の例を示す図である。
【
図8】RPGにおける第2学習モデルの学習処理の例を示す図である。
【
図9】RPGにおける実行処理の例を示す図である。
【発明を実施するための形態】
【0010】
以下、実施形態を図面に基づいて説明する。
【0011】
[システム構成例]
図1は、本実施形態に係るシステム構成例を示す図である。例えば、
図1に示すように、システム1は、ユーザ端末20A、20B、20C(以下、これらを総称して、「ユーザ端末20」と表記することがある。)と、サーバ11とを主に備える。
【0012】
以下、サーバ11を管理する者を「管理者5」という。また、ユーザ端末20A、20B、及び、20Cを操作するそれぞれの者を「ユーザ4A」、「ユーザ4B」、「ユーザ4C」(以下、これらを総称して、「ユーザ4」と表記することがある。)という。
【0013】
管理者5は、システム1による情報処理サービスを運営する役割の者である。一方で、ユーザ4は、システム1による情報処理サービスを利用する者である。また、管理者5、及び、ユーザ4は、管理装置の例であるサーバ11、又は、ユーザ端末20のどちらの情報処理装置を操作するかが異なる。以下、ユーザ4がゲームのプレイヤとなり、管理者5がゲーム(例えば、ゲームの生成、変更、及び、配信等を行う。)、及び、サーバ11を管理する。
【0014】
なお、
図1に示す例は、ユーザ端末20が3つ、かつ、サーバ11が1つの例であるが、サーバ11の台数、ユーザ端末20の台数、管理者5の人数、及び、ユーザ4の人数は問わない。
【0015】
サーバ11、及び、ユーザ端末20は、通信ネットワーク2を介して相互通信可能に接続する。例えば、通信ネットワーク2は、インターネット、移動体通信システム(例えば、4G(4th Generation、第4世代移動通信規格)、又は、5G(5th Generation、第5世代移動通信規格)等による公衆回線である。)、Wi-Fi(登録商標)等の無線ネットワーク、又は、これらの組み合わせである。
【0016】
ユーザ端末20は、サーバ11からゲームをプレイするためのプログラム(以下、「ゲームプログラム」という。)をダウンロード、又は、サーバ11にアクセスするとサーバ11がゲームサービスを提供する。なお、ゲームをプレイする上でサーバ11と通信がなくともよい。すなわち、ユーザ端末20は、プログラムをダウンロード、又は、メディアからインストールしてゲームをプレイする環境を構築してもよい。また、ゲームは、ユーザ端末20以外の情報処理装置でプレイされてもよい。
【0017】
[AI(人工知能、Artificial Intelligence)の学習、及び、実行の例]
以下、AIは、「事前処理」(「学習処理」という場合もある。)によって学習する。学習段階、すなわち、「事前処理」におけるAIを「学習モデルA1」という。以下、2つの学習モデルA1があり、「第1学習モデルA11」、及び、「第2学習モデルA12」という。また、「第1学習モデルA11」、及び、「第2学習モデルA12」を総じて「学習モデルA1」という場合がある。
【0018】
そして、学習モデルA1は、ある程度、学習が進むと、「学習済みモデルA2」となる。以下、学習済みモデルA2を用いて出力処理を実行する実行段階を「実行処理」とする。また、「第1学習モデルA11」が学習すると、「第1学習済みモデルA21」となる。同様に、「第2学習モデルA12」が学習すると、「第2学習済みモデルA22」となる。以下、「第1学習済みモデルA21」、及び、「第2学習済みモデルA22」を総じて「学習済みモデルA2」という場合がある。
【0019】
「事前処理」は、「実行処理」より前に行われる。ただし、「実行処理」をする上で引き続き「事前処理」、すなわち、学習済みモデルA2が学習を行ってもよい。
【0020】
[事前処理例]
図2は、事前処理例を示す図である。例えば、事前処理は、サーバ11で行われる。
【0021】
第1学習モデルA11は、第1学習データDL1を入力して学習を行う。同様に、第2学習モデルA12は、第2学習データDL2を入力して学習を行う。すなわち、学習モデルA1は、所謂「教師あり」の学習を行う。
【0022】
第1学習データDL1は、ログデータDL12、ストーリデータDL11、及び、第1正解データDL13を含む。
【0023】
そして、第1学習データDL1は、ログデータDL12、及び、ストーリデータDL11に対して、「正解」となる第1正解データDL13を対応付けしたデータである。このように、ログデータDL12、及び、ストーリデータDL11は、正解が既知のデータである。
【0024】
第1学習データDL1、ストーリデータDL11、ログデータDL12、及び、第1正解データDL13の詳細は後述する。
【0025】
上記のような学習処理により、第1学習モデルA11は、第1学習データDL1が入力されると、ログデータDL12とストーリデータDL11の組み合わせに対して、第1正解データDL13が示す「正解」との相関関係を学習する。
【0026】
第2学習データDL2は、第1学習データDL1と同様に、ログデータDL12を含む。したがって、ログデータDL12は、データを複製、又は、使い回しで第1学習データDL1、及び、第2学習データDL2の両方で使用される。
【0027】
加えて、第2学習データDL2は、キーワードDL21、及び、第2正解データDL22を含む。
【0028】
第2学習データDL2、キーワードDL21、及び、第2正解データDL22の詳細は後述する。
【0029】
そして、第2学習データDL2は、ログデータDL12、及び、キーワードDL21に対して、「正解」となる第2正解データDL22を対応付けしたデータである。このように、ログデータDL12、及び、キーワードDL21は、正解が既知のデータである。
【0030】
第2正解データDL22は、ストーリデータDL11と同様の内容を示すデータである。したがって、第2正解データDL22は、複製、又は、使い回しで第1学習データDL1、及び、第2学習データDL2の両方で使用される。ただし、第2正解データDL22は、第2学習データDL2では「正解」を示す正解データであるのに対し、第1学習データDL1では、ストーリデータDL11は、入力となるデータである。このように、同じ内容のデータでも、第2正解データDL22、及び、ストーリデータDL11は、学習処理において、役割が異なる。
【0031】
更に、学習モデルA1は、ビッグデータD4で学習するのが望ましい。例えば、ビッグデータD4は、インターネット上のデータ等である。ただし、ビッグデータD4は、管理者5等が入力するデータでもよい。このように、ビッグデータD4で学習すると、人間が書くような自然な文章、及び、データ等を生成するAIを生成できる。
【0032】
[実行処理例]
図3は、実行処理例を示す図である。例えば、実行処理は、ユーザ端末20、サーバ11、又は、ユーザ端末20とサーバ11等のように複数の情報処理装置が協働して行う。
【0033】
学習済みモデルA2は、事前処理による学習によって学習モデルA1が学習した状態である。すなわち、
図2に示す事前処理が実行されると、学習済みモデルA2が生成される。
【0034】
第1学習済みモデルA21は、第1未知データDU1が入力されると、出力データD3を生成する。
【0035】
第1未知データDU1は、「正解」が未知である、ログデータ(以下「未知ログデータDU11」という。)とストーリデータ(以下「未知ストーリデータDU12」という。)の組み合わせのデータである。
【0036】
第1未知データDU1、未知ログデータDU11、未知ストーリデータDU12、及び、出力データD3の詳細は後述する。
【0037】
第2学習済みモデルA22は、第2未知データDU2が入力されると、未知ストーリデータDU12を生成する。
【0038】
第2未知データDU2は、「正解」が未知である、未知ログデータDU11とキーワード(以下「未知キーワードDU21」という。)の組み合わせのデータである。なお、未知ログデータDU11は、学習処理におけるログデータDL12と同様に、第1未知データDU1と第2未知データDU2に複製、又は、使い回しをして同じデータを使用する。
【0039】
第2学習済みモデルA22が生成した未知ストーリデータDU12は、第1未知データDU1として、第1学習済みモデルA21に入力される。
【0040】
上記の構成は、ストーリ生成器12が未知ストーリデータDU12を生成する前処理を行う構成である。なお、上記の構成では、AIを前処理用と後処理用で分けて2つのAIとしているが、AIは、まとめて1つ、又は、3つ以上に分ける構成でもよい。
【0041】
出力データD3が生成されると、サーバ11は、出力データD3に基づき、ユーザ端末20にゲームを配信する。なお、ゲームは、出力データD3がユーザ端末20に送信されるでもよい。ゲームに出力データD3の内容が反映されるのであれば、ゲームを配信する構成、及び、出力データD3を保持するデータ構成等は問わない。
【0042】
図4は、AIの学習、及び、実行の全体処理例を示す図である。
図2に示す事前処理、及び、
図3に示す実行処理の関係は、
図4に示すような関係となる。
【0043】
なお、事前処理、及び、実行処理を図に例示するような連続する順序で実行しなくともよい。したがって、事前処理によって準備を行う期間と、その後、実行処理を行う期間を連続させることは必須ではない。ゆえに、実行処理は、学習済みモデルA2を一旦作成した後であれば、事前処理から時間が経過した後に実行処理を行うようにしてもよい。また、学習済みモデルA2が一度生成された後であれば、学習済みモデルA2を転用して実行処理が行われてもよい。
【0044】
学習処理と実行処理では、第1学習データDL1と第1未知データDU1が異なる。更に、学習処理と実行処理では、第2学習データDL2と第2未知データDU2が異なる。また、AIは、学習段階では、学習モデルA1であったのが、ある程度学習が進むと、学習済みモデルA2となる。このように、ビッグデータD4等を学習データとして学習した学習済みモデルA2は、所謂「生成AI」である。
【0045】
各学習データは、「正解」が既知であるのに対し、各未知データは、「正解」が未知となる。具体的には、第1学習データDL1は、第1正解データDL13を含むため、ログデータDL12とストーリデータDL11の組み合わせに第1正解データDL13が対応付けされているのに対し、第1未知データDU1は、第1正解データDL13を含まない。したがって、学習処理では、ログデータDL12とストーリデータDL11の組み合わせと、第1正解データDL13の関係が既知である。そのため、第1学習モデルA11は、第1学習データDL1を入力すると、ログデータDL12とストーリデータDL11の組み合わせと、「正解」の相関関係を学習できる。
【0046】
同様に、第2学習データDL2は、第2正解データDL22を含むため、ログデータDL12とキーワードDL21の組み合わせに第2正解データDL22が対応付けされているのに対し、第2未知データDU2は、第2正解データDL22を含まない。したがって、学習処理では、ログデータDL12とキーワードDL21の組み合わせと、第2正解データDL22の関係が既知である。そのため、第2学習モデルA12は、第2学習データDL2を入力すると、ログデータDL12とキーワードDL21の組み合わせと、「正解」の相関関係を学習できる。
【0047】
一方で、第1未知データDU1には、第1正解データDL13が含まれず、第1未知データDU1に対する「正解」が未知である。そして、第1学習済みモデルA21は、事前処理で学習したログデータDL12とストーリデータDL11の組み合わせと、第1正解データDL13の相関関係に基づき、第1未知データDU1に対して出力データD3を生成する。
【0048】
同様に、第2未知データDU2には、第2正解データDL22が含まれず、第2未知データDU2に対する「正解」が未知である。そして、第2学習済みモデルA22は、事前処理で学習したログデータDL12とキーワードDL21の組み合わせと、第2正解データDL22の相関関係に基づき、第2未知データDU2に対して未知ストーリデータDU12を生成する。
【0049】
実行処理は、一部の実行がテーブル等を用いる処理でもよい。このように、テーブルを用いる構成、所謂ルールベースでは、事前処理は、テーブル(ルックアップテーブル(Look Up Table、LUT)等ともいう。)、又は、数式等を入力する準備を行う処理である。
【0050】
[情報処理装置のハードウェア構成例]
図5は、情報処理装置のハードウェア構成図である。情報処理装置は、サーバ11、及び、ユーザ端末20等である。以下、情報処理装置は、サーバ11と同じハードウェア構成であるとする。例えば、情報処理装置は、ワークステーション、又は、パーソナルコンピュータ等の汎用コンピュータである。ただし、それぞれの情報処理装置は、ハードウェア構成が異なってもよい。
【0051】
サーバ11は、プロセッサ111と、メモリ112と、ストレージ113と、入出力インタフェース114と、通信インタフェース115とを主に備える。また、サーバ11の各構成要素は、通信バス116に接続する。
【0052】
プロセッサ111は、メモリ112又はストレージ113に格納されているサーバプログラム11Pに含まれる一連の命令を実行することによって、処理、及び、制御を実現する。
【0053】
プロセッサ111は、例えば、CPU(Central Processing Unit)、GPU(Graphics Processing Unit)、MPU(Micro Processing Unit)、FPGA(Field-Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、又は、これらの組み合わせ等の演算装置、及び、制御装置である。
【0054】
メモリ112は、サーバプログラム11P、及び、データ等を記憶する主記憶装置である。例えば、サーバプログラム11Pは、ストレージ113からロードされる。また、データは、サーバ11に入力されたデータと、プロセッサ111によって生成されたデータとを含む。例えば、メモリ112は、RAM(Random Access Memory)、又は、その他の揮発メモリである。
【0055】
ストレージ113は、サーバプログラム11P、及び、データ等を記憶する補助記憶装置である。ストレージ113は、例えば、ROM(Read-Only Memory)、ハードディスク装置、フラッシュメモリ、又は、その他の不揮発記憶装置である。また、ストレージ113は、メモリカードのように着脱可能な記憶装置でもよい。更に、他の例として、ストレージ113は、外部記憶装置であってもよい。このような構成によれば、例えば、アミューズメント施設のように複数のユーザ端末20が使用される場面において、サーバプログラム11P、又は、データの更新等を一括して行うことが可能になる。
【0056】
入出力インタフェース114は、モニタ、入力装置(例えば、キーボード、又は、ポインティングデバイス等である。)、外部記憶装置、スピーカ、カメラ、マイク、及び、センサ等の外部装置をサーバ11に接続するインタフェースである。
【0057】
また、プロセッサ111は、入出力インタフェース114を通じて外部装置と通信する。入出力インタフェース114は、例えば、USB(Universal Serial Bus)、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)、無線、及び、その他の端子である。
【0058】
通信インタフェース115は、通信ネットワーク2に接続する他の装置(例えば、ユーザ端末20等である。)と通信する。例えば、通信インタフェース115は、LAN(Local Area Network)等の有線通信インタフェース、Wi-Fi(登録商標)(Wireless Fidelity)、Bluetooth(登録商標)、又は、NFC(Near Field Communication)等の無線通信インタフェースである。
【0059】
ただし、情報処理装置は、上記のハードウェア構成に限られない。例えば、ユーザ端末20は、カメラ等のセンサを更に備えてもよい。そして、ユーザ端末20がセンサで取得する様々なデータがサーバ11に送信されてもよい。
【0060】
[学習モデル、及び、学習済みモデルの構成例]
図6は、AIの構成例を示すネットワーク図である。学習モデルA1、及び、学習済みモデルA2は、例えば、以下のようなネットワークで示す構成のAIである。
【0061】
以下、学習モデルA1、及び、学習済みモデルA2は、サーバ11上、すなわち、クラウド上に実装される例で説明する。ただし、学習モデルA1、及び、学習済みモデルA2の一部、又は、全部は、ユーザ端末20等に実装されてもよい。
【0062】
ネットワーク300は、例えば、入力層L1、中間層L2(「隠れ層」等ともいう。)、及び、出力層L3等を有する構成である。
【0063】
入力層L1は、データを入力する層である。
【0064】
中間層L2は、入力層L1で入力するデータを重み、及び、バイアス等に基づいて変換する。このように中間層L2で処理された結果が出力層L3へ伝えられる。
【0065】
出力層L3は、出力内容等を出力する層である。
【0066】
そして、学習により、重みの係数、及び、学習で変化させるパラメータ等が最適化される。なお、ネットワーク300は、図示するネットワーク構造に限られない。つまり、AIは、他の機械学習によって実現されてもよい。
【0067】
例えば、AIは、「教師なし」の機械学習等により、次元削減(例えば、3次元以上の関係を3次元以下程度の簡略な計算で求まる関係に変える処理である。)等の前処理を行う構成等でもよい。入力と出力の関係は、1次式等の単純な計算で処理されるのが望ましい。このような計算であると、計算コストを少なくできる。
【0068】
また、AIは、ドロップアウト等といった過学習(「過剰適合」又は「過適合」等ともいう。)(overfitting)を軽減化させる処理が行われてもよい。他にも、次元削減、及び、正規化等の前処理が行われてもよい。
【0069】
AIは、CNN(畳み込みニューラルネットワーク、Convolution Neural Network)のネットワーク構造等があってもよい。他にも、例えば、ネットワーク構造は、LLM(Large Language Model 大規模言語モデル)、RNN(再帰型ニューラルネットワーク、Recurrent Neural Network)又はLSTM(Long Short-Term Memory)等の構成を有してもよい。すなわち、AIは、ディープラーニング以外のネットワーク構造等であってもよい。
【0070】
また、AIは、ハイパパラメータを有する構成であってもよい。すなわち、AIは、一部の設定をユーザ等が行う構成でもよい。更に、AIは、学習対象とする特徴量を特定してもよいし、ユーザが学習対象とする一部又は全部の特徴量を設定してもよい。
【0071】
更に、学習モデルA1、及び、学習済みモデルA2は、他の機械学習を利用してもよい。例えば、学習モデルA1、及び、学習済みモデルA2は、教師なしのモデルにより、正規化等を前処理で行ってもよい。更に、学習は、強化学習(Reinforcement Learning、AIに選択をさせ、選択に対する評価(報酬)を与えて、評価が大きくなるような学習方法をいう。)等であってもよい。
【0072】
学習では、データの拡張等が行われてもよい。すなわち、学習モデルA1の学習に用いる学習データを増やすため、1つの実験データ等を拡張させて、複数の学習データにする前処理が行われてもよい。このようにして、学習データを増やせると、より学習モデルA1の学習を進めることができる。
【0073】
また、学習モデルA1、及び、学習済みモデルA2は、転移学習(Transfer Learning)、又は、ファインチューニング(Fine tuning)等を行う構成でもよい。すなわち、ユーザ端末20は、装置ごとに異なる実行環境となる場合が多いため、実行環境に合わせて装置ごとに設定が異なってもよい。例えば、AIの基本構成は、別の情報処理装置で学習する。その後、各々の情報処理装置は、各々の実行環境に最適化するため、追加して学習、又は、設定等がされてもよい。
【0074】
[RPG(Role-Playing Game)における学習処理の例]
以下、RPGを対象にした例で説明する。RPGでは、ゲームを進行させると、イベント等が生じ、様々な要素が登場する。以下、ゲーム内で登場する要素を「ゲーム内要素」という。
【0075】
ゲーム内要素は、具体的には、ゲームのストーリ上で登場する、アイテム、キャラクタ、スキル(技)、魔法、・・・等である。ゲーム内要素は、具体的には、ゲームのストーリ上で登場する、アイテム、キャラクタ、スキル(技)、魔法、・・・等、ゲームを構成する各種の要素を含む。ゲーム内要素は、アイテム、又は、スキルのようにプレイにおいて操作する対象となる場合もあるし、ユーザ4による操作がされない対象の場合もある。
【0076】
例えば、アイテムは、ゲームを進行させるイベントに必要なイベントアイテムや、敵を攻撃することができる攻撃アイテムの他、キャラクタの体力や状態異常を回復させる回復アイテム、キャラクタの攻撃力や防御力、すばやさ等の各種パラメータを向上させる(所謂、バフ効果を発揮させる。)、又は、敵の各種パラメータを低下させる(所謂、デバフ効果を発揮させる等である。)といった補助アイテム等を含む、ゲーム内要素の一つである。
【0077】
なお、アイテムは上記に限らず、武器や防具、アクセサリ等の装備品の他、デッキを構成するカード、アイテム合成、又は、モンスター等の合成に用いられるような各種の素材アイテム等であってもよい。また、アイテムは、必ずしもゲームの進行上取得が必須でない、ゲーム内では使用することができないアイテム(例えば、所定の敵を撃破(所定数撃破等を意味する。)した等のゲーム内における所定条件の成就を称える勲章やバッジ等である。)を含んでもよい。
【0078】
また、キャラクタは、ゲーム内の人間や動物、ロボット等であって、ゲームを進行させる上でイベントを発生させるのに何らかのきっかけを作る、主人公の仲間となってパーティを形成する、又は、ストーリを構成する等の要素である。なお、キャラクタには、プレイヤが操作できるプレイアブルなキャラクタ、プレイヤが操作できないノンプレイアブルなキャラクタ(いわゆるNPC)を含む。また、必ずしも実在するものに限られず、亜人や獣人、アンドロイド等のゲームの世界観に合わせて設定されたオブジェクトであってもよい。
【0079】
スキル(技)、又は、魔法(ゲームによって名称は様々である。)は、ユーザ4の操作に基づき発動し、ゲーム内における戦闘等を有利に進めることができるコマンド等を含む要素である。なお、スキルや魔法について、必ずしも有利となるものだけに限られず、例えば、火耐性+50となるが、氷耐性は-50、といったような、一部のパラメータは強化されるが別のパラメータは弱化されるようなものも含む。また、操作によらずに発動するいわゆる「パッシブスキル」のようなものも含む。
【0080】
以下、ゲーム内要素を「アイテム」とする例で説明する。そして、以下の例では、出力データD3は、アイテムがどのようなものであるか(例えば、使用するとどのような効果が生じるか等の仕様である。)を示し、出力データD3があればユーザ端末20でプレイされるゲーム内にアイテムを登場させることができるとする。
【0081】
[第1学習データ、ストーリデータ、ログデータ、及び、第1正解データの例]
図7は、RPGにおける第1学習モデルの学習処理の例を示す図である。例えば、第1学習モデルA11を学習させるのに、以下のようなデータを学習に用いる。
【0082】
ログデータDL12は、例えば、ゲームがプレイされると、ゲームの進行に合わせて生成される。なお、ログデータDL12は、ゲームを開始する前の時点におけるゲームを進めようとする設定、及び、予定等でもよい。一方で、ログデータDL12は、ゲームを途中まで進行させた場合等では、ゲームを開始させた最初の時点から進行させた時点までの記録等である。
【0083】
ログデータDL12は、例えば、画像データDL121、及び、プロフィールデータDL122等を含むデータ構成である。ただし、各データは、ファイル等が分かれてなくともよく、1つのデータに複数の内容を含むデータ構成でもよい。また、ログデータDL12は、ゲームにおける各種の設定等を示す。
【0084】
画像データDL121は、例えば、出力画面(ユーザ4に未公開の画面を含む。)、キャラクタの外観、又は、様々なアイテムの外観等を示すデータである。なお、画像データDL121は、画像解析がされてパラメータが抽出されてもよい。
【0085】
プロフィールデータDL122は、ゲームにおいて登場するキャラクタ、又は、ユーザ4のプロフィールを示す。プロフィールデータDL122が、どのキャラクタ、又は、ユーザ4のプロフィールを示すのかは、ゲームの設定、又は、入力項目等によって異なる。
【0086】
例えば、プロフィールデータDL122は、ゲーム開始の際に、ユーザ4が入力する。ただし、プロフィールデータDL122は、ユーザ4の設定でなく事前の設定でもよいし、ユーザ端末20、又は、他のデータベース等から取得されてもよい。
【0087】
具体的には、プロフィールデータDL122は、名前、出身、性別、年齢、職業、及び、友人関係等の設定項目である。どのようなプロフィールの項目とするかは事前に設定される。
【0088】
名前は、例えば、ユーザ4の本名、略称、又は、変名等である。また、名前は、キャラクタに設定するニックネーム等の識別情報でもよい。同様に、出身、性別、年齢、職業、及び、友人関係は、ユーザ4の設定でもよいし、ゲーム上の架空の設定でもよい。
【0089】
ストーリデータDL11は、例えば、ストーリを文章で示すテキストデータである。ただし、ストーリデータDL11には、画像等があってもよい。
【0090】
第1正解データDL13は、ゲームに登場させるアイテムを示すデータである。具体的には、第1正解データDL13は、アイテムの外観、名称、使用した場合の効果等といった仕様である。第1正解データDL13、すなわち、アイテムを登場させるための仕様は、ゲームによって異なる。したがって、第1正解データDL13は、ゲーム内にアイテムを登場させるのに要する項目を含むデータである。
【0091】
以上のような学習を行うと、第1学習モデルA11は、ストーリ、及び、プロフィール等から、どのようなアイテムを生成するのかの相関関係を学習する。上記の通り、アイテムを生成する上で、ストーリ以外に、補助データとして、プロフィール、及び、画像等を入力すると、アイテムの生成に補助データの情報が考慮される。
【0092】
[第2学習データ、キーワード、ログデータ、及び、第2正解データの例]
図8は、RPGにおける第2学習モデルの学習処理の例を示す図である。例えば、第2学習モデルA12を学習させるのに、以下のようなデータを学習に用いる。
【0093】
ログデータDL12は、例えば、第1学習モデルA11、すなわち、
図7に示す学習処理と同様である。ただし、ログデータDL12は、第1学習モデルA11の学習処理とはデータの内容が異なる、又は、データ量が異なるようにしてもよい。
【0094】
キーワードDL21は、ストーリデータDL11を生成するのに参考にされる単語、又は、文章である。例えば、キーワードDL21は、ゲーム内要素の意味、ゲーム内要素の特徴、キャラクタにおきる出来事、ストーリに登場させたい要素、又は、ストーリの要点等である。
【0095】
ストーリデータDL11は、例えば、ストーリを文章で示すテキストデータである。すなわち、ストーリデータDL11は、
図7に示す学習処理と同様である。
【0096】
例えば、キーワードDL21が入力されると、キーワードDL21が含まれるストーリが生成されるように、第2学習モデルA12は学習する。なお、キーワードDL21がストーリデータDL11に直接含まれなくともよく、キーワードDL21は、ストーリにおいて間接的に表現されてもよい。
【0097】
また、ログデータDL12も踏まえてストーリが生成される。例えば、プロフィールデータDL122における「性別」、又は、「出身」等のプロフィールにおけるパラメータが異なると、パラメータによってアイテムの効果、仕様、種類、名称、又は、登場の仕方等が変化するようにストーリデータDL11が生成される。
【0098】
以上のような学習を行うと、第2学習モデルA12は、キーワードDL21、及び、プロフィール等から、どのようなストーリを生成するのかの相関関係を学習する。上記の通り、ストーリを生成する上で、プロフィールデータDL122以外に、補助データとして、周辺情報、及び、画像等を入力すると、ストーリの生成に補助データの情報が考慮される。
【0099】
なお、ストーリの生成は、AI以外の構成で実現してもよい。例えば、「性別」又は「年齢」等によって登場させたいアイテムの種類等を固定する場合には、プロフィールデータDL122から、AIを経ずに、固定する条件(例えば、アイテムの種類等である。)を第1学習済みモデルA21に入力する構成(例えば、補助データで入力される。)でもよい。このように、固定した条件が入力できると、登場させるアイテムは、一定のプロフィールでは、これに対応した特定の条件下でアイテムが登場するようにできる。
【0100】
具体的には、「職業」が特定の職種である場合には、必ず「武器」のアイテムになり、一方で、別の職種であれば、必ず「防具」のアイテムになる等の条件がつけられる。
【0101】
[RPGにおける実行処理の例]
図9は、RPGにおける実行処理の例を示す図である。
図7、及び、
図8に示すような学習処理により、学習済みモデルA2が生成された後、以下のように実行処理が実行される。
【0102】
第2未知データDU2、すなわち、未知ログデータDU11、及び、未知キーワードDU21は、データが入力される時点では正解が不明である。そして、実行処理では、第2学習済みモデルA22は、学習した、キーワードDL21及びログデータDL12の組み合わせと、第2正解データDL22の相関関係に基づき、未知ログデータDU11、及び、未知キーワードDU21の組み合わせを踏まえて、未知ストーリデータDU12を生成する。そして、未知ストーリデータDU12は、第2学習済みモデルA22によって生成された後、第1学習済みモデルA21に入力される。
【0103】
なお、未知ストーリデータDU12は、生成された後、第1学習済みモデルA21に入力される前に、管理者5等がストーリを編集してもよい。
【0104】
次に、第1学習済みモデルA21に、未知ログデータDU11、及び、未知ストーリデータDU12が第1未知データDU1として入力される。第1未知データDU1、すなわち、未知ログデータDU11、及び、未知ストーリデータDU12の組み合わせは、データが入力される時点では正解が不明である。
【0105】
そして、実行処理では、第1学習済みモデルA21は、学習した、ストーリデータDL11及びログデータDL12の組み合わせと、第1正解データDL13の相関関係に基づき、未知ログデータDU11、及び、未知ストーリデータDU12の組み合わせを踏まえて、出力データD3を生成する。
【0106】
そして、出力データD3が生成されると、以降、出力データD3に基づき生成したアイテムが登場するゲームがプレイできる。例えば、ゲームは、ユーザ端末20等でプレイできる。
【0107】
[全体処理例]
図10は、全体処理例を示す図である。以下の例では、全体処理は、事前処理と実行処理を連続して行う。具体的には、ステップS11乃至ステップS14が学習処理である。また、ステップS21乃至ステップS24が実行処理である。ただし、全体処理には、これら以外の処理が含まれてもよい。
【0108】
以下、ステップS11とステップS12、及び、ステップS13とステップS14、すなわち、第1学習モデルA11の学習処理と第2学習モデルA12の学習処理は、並列で行うとする。ただし、これらの学習処理は、並列でなく、前後して行われてもよい。例えば、第2学習モデルA12を先に学習して、第2学習済みモデルA22とした後、第2学習済みモデルA22を用いて第1学習モデルA11の学習処理を実行するといった順序でもよい。
【0109】
ステップS11では、サーバ11は、第1学習データDL1を入力する。
【0110】
ステップS12では、サーバ11は、第1学習データDL1を入力して、第1学習モデルA11を学習させて第1学習済みモデルA21を生成する。
【0111】
ステップS13では、サーバ11は、第2学習データDL2を入力する。
【0112】
ステップS14では、サーバ11は、第2学習データDL2を入力して、第2学習モデルA12を学習させて第2学習済みモデルA22を生成する。
【0113】
ステップS11乃至ステップS14を行うと、
図7、及び、
図8に示す学習処理となる。以上のように、ある程度学習処理を行うと、学習モデルA1が学習して学習済みモデルA2となる。次に、学習処理によって生成された学習済みモデルA2を用いて以下のように実行処理が行われる。
【0114】
ステップS21では、サーバ11は、第2未知データDU2を第2学習済みモデルA22に入力する。
【0115】
ステップS22では、サーバ11は、第2学習済みモデルA22を用いて未知ストーリデータDU12を生成する。
【0116】
ステップS23では、サーバ11は、第1学習済みモデルA21を用いて出力データD3を生成する。以降、サーバ11は、出力データD3に基づき、ゲームをユーザ端末20に提供する。
【0117】
ステップS24では、サーバ11は、出力データD3に基づき、ゲーム内要素が登場するようにゲームを進行させる。
【0118】
[機能構成例]
図11は、機能構成例を示す図である。例えば、システム1は、学習装置61、及び、実行装置62を備える生成AIシステムである。
【0119】
学習装置61は、ストーリデータ生成手段1F11、第1学習データ入力手段1F12、及び、学習手段1F13を備える。
【0120】
ストーリデータ生成手段1F11は、キーワードDL21、及び、ログデータDL12が入力されると、ストーリデータDL11を生成するストーリデータ生成手順を行う。例えば、ストーリデータ生成手段1F11は、ストーリ生成器12等で実現する。
【0121】
第1学習データ入力手段1F12は、ストーリデータDL11、ログデータDL12、及び、第1正解データDL13を含む第1学習データDL1を入力する第1学習データ入力手順を行う。例えば、第1学習データ入力手段1F12は、通信インタフェース115等で実現する。
【0122】
学習手段1F13は、第1学習データDL1を用いて第1学習モデルA11を学習させて、第1学習済みモデルA21を生成する学習手順を行う。例えば、学習手段1F13は、プロセッサ111等で実現する。
【0123】
実行装置62は、未知ストーリデータ生成手段1F21、第1未知データ入力手段1F22、実行手段1F23、及び、進行手段1F24を備える。未知ストーリデータ生成手段1F21は、第1生成手段の例である。また、実行手段1F23は、第2生成手段、及び、出力データ生成手段の例である。
【0124】
未知ストーリデータ生成手段1F21は、未知キーワードDU21、及び、未知ログデータDU11が入力されると、未知ストーリデータDU12を生成する未知ストーリデータ生成手順を行う。例えば、未知ストーリデータ生成手段1F21は、ストーリ生成器12等で実現する。
【0125】
第1未知データ入力手段1F22は、未知ストーリデータDU12、及び、未知ログデータDU11を含む第1未知データDU1を入力する第1未知データ入力手順を行う。例えば、第1未知データ入力手段1F22は、通信インタフェース115等で実現する。
【0126】
実行手段1F23は、第1学習済みモデルA21を用いて、出力データD3を生成する実行手順を行う。例えば、実行手段1F23は、プロセッサ111等で実現する。
【0127】
進行手段1F24は、出力データD3に基づき、ユーザ端末20でゲームを進行させる進行手順を行う。例えば、進行手段1F24は、プロセッサ111等で実現する。
【0128】
学習装置61、及び、実行装置62は、例えば、サーバ11である。このように、学習装置61、及び、実行装置62は、1台の情報処理装置が兼ねてもよい。ただし、学習装置61、及び、実行装置62は、異なる情報処理装置でもよい。
【0129】
以上のような構成であると、ストーリの素となるキーワード、及び、ストーリを生成する上で周辺の設定等を示すログデータ等が入力されると、キャラクタ等に合わせたストーリが生成される。そして、ストーリ、及び、周辺の設定等に応じたアイテム等のゲーム内要素が生成される。具体的には、ストーリが生成され、ストーリに登場するアイテムが、実際にゲーム内で登場するようにできる。このようにゲームに登場させるゲーム内要素をキャラクタ等の様々な要因に応じて異なるように揃える場合でも、ストーリに合わせてアイテムが生成されるため、ゲームで扱うゲーム内要素に関する設定作業の負荷を軽減させることができる。
【0130】
また、アイテムは、キャラクタのプロフィール等に応じて生成されるため、オリジナリティのあるアイテムとなる。例えば、繰り返しゲームをする場合、又は、プレイヤが異なる場合等には、プレイごとに異なるストーリ、及び、アイテムが生成できる。
【0131】
また、事前にアイテムを用意する方法と比較して、アイテムの種類を豊富にすることができる。ストーリ、又は、プロフィール等が変われば、アイテムも変化するため、ゲームを繰り返しプレイする等の場合でも、ユーザ4がゲームに飽きないようにできる。このようにして、ユーザ4に対して魅力的なゲームが提供できる。
【0132】
[変形例]
なお、ゲームの種類は、ノベルゲームに限られない。例えば、ゲームの種類は、RPG、スポーツ、アクション、パズル、又は、格闘等を含むゲームでもよい。更に、上記のゲームでなくともよい。
【0133】
例えば、ゲーム内要素は、キャラクタ等でもよい。したがって、ゲーム内に登場するキャラクタ等がストーリ、又は、プロフィール等に応じて変更されてもよい。
【0134】
上記の説明では、未知ストーリデータDU12を第2学習済みモデルA22が生成する構成で説明したが、実施形態は、これに限られない。例えば、未知ストーリデータDU12は、管理者5等がテキストを入力する操作をしてストーリを示す文章を作成(AIが生成したストーリをベースに改良するものを含む。)して、第1学習済みモデルA21に入力してもよい。
【0135】
したがって、ストーリ生成器12は、AIを用いる構成に限られず、管理者5等がテキストを編集する操作を支援するプログラムを実行する装置等でもよい。
【0136】
なお、ストーリ生成器12は、サーバ11等が兼ねてもよいし、サーバ11等とは別の情報処理装置でもよい。
【0137】
[その他の実施形態]
上記の例では、情報処理装置は、学習モデルに対する事前処理、及び、学習済みモデルを用いて実行処理の両方を行う。ただし、事前処理、及び、実行処理は、同じの情報処理装置が行わなくともよい。また、事前処理、及び、実行処理も、1つの情報処理装置で一貫して実行しなくともよい。すなわち、各処理、及び、データの記憶等は、複数の情報処理装置で構成する情報システム等で行ってもよい。
【0138】
なお、学習処理は、実行処理の後、又は、実行処理の前に追加して更に行われてもよい。
【0139】
上記のような処理は、サーバ11、及び、ユーザ端末20以外の情報処理装置が補助的に行ってもよい。
【0140】
図12は、補助装置を用いる構成例を示す図である。
図1に示す例と比較すると、
図12に示す構成は、補助装置60が加わる点が異なる。なお、補助装置60は、一時的に用いる構成でもよい。
【0141】
補助装置60は、ユーザ端末20(この例では、ユーザ端末20A付近に設置しているが、他の装置近くにあってもよい。)等の近くに設置される情報処理装置である。そして、補助装置60は、特定の処理をユーザ端末20、又は、サーバ11に代わって一部又は全部を実行する。
【0142】
例えば、補助装置60は、グラフィック処理に特化したデバイスを備えて、グラフィック処理を高速で行う。このように、補助装置60等を設置して、所謂エッジコンピューティング(Edge Computing)等が行われてもよい。このように、前述する処理は、様々な情報処理装置のハードウェアリソースを活用して実行されてもよい。したがって、前述する処理は、前述したのとは異なる情報処理装置が実行してもよい。
【0143】
前述の処理、及び、本実施形態で実行される処理に用いるデータは、情報処理システムによって実行、及び、記憶されてもよい。例えば、情報処理システムは、処理又は記憶を冗長、分散、並列、又は、これらの組み合わせを実現するため、複数の情報処理装置で実行又は記憶してもよい。したがって、本発明は、前述に示すハードウェア構成以外の装置、及び、前述に示す装置以外のシステムで実現されてもよい。
【0144】
また、本発明に係るプログラムは、単一のプログラムに限定されず、複数のプログラムの集合体でもよい。また、本発明に係るプログラムは、単一の装置で実行されるものに限定されず、複数の情報処理装置で分担して実行されてもよい。更に、各情報処理装置の役割分担は、前述の例に限定されない。すなわち、前述した処理の一部、又は、全部が前述した情報処理装置とは異なる情報処理装置が実行してもよい。
【0145】
更に、プログラムによって実現される各手段の一部、又は、全部は、集積回路等のハードウェアで実現することもできる。更に、プログラムは、コンピュータによって読み出し可能な非一過性の記録媒体に記録されて提供されてもよい。記録媒体とは、例えば、ハードディスク、SDカード(登録商標)、DVD等の光学ディスク、又は、インターネット上のサーバ等を指す。したがって、プログラムは、インターネット等の電気通信回線を介して配信されでもよい。
【0146】
また、情報処理システムを構成する情報処理装置等は、海外にあってもよい。すなわち、情報処理システムが実行する処理のうち、一部の処理を実行する情報処理装置が海外にあってもよい。
【0147】
なお、本発明は、前述に例示する各実施形態に限定されない。したがって、本発明は、技術的な要旨を逸脱しない範囲で、構成要素の追加、又は、変形が可能である。ゆえに、特許請求の範囲に記載された技術思想に含まれる技術的事項のすべてが本発明の対象となる。なお、前述に例示する実施形態は、実施において好適な具体例である。そして、当業者であれば、開示した内容から様々な変形例を実現で可能であって、このような変形例は、特許請求の範囲に記載された技術的範囲に含まれる。
【符号の説明】
【0148】
1 :システム
1F11 :ストーリデータ生成手段
1F12 :第1学習データ入力手段
1F13 :学習手段
1F21 :未知ストーリデータ生成手段
1F22 :第1未知データ入力手段
1F23 :実行手段
1F24 :進行手段
4 :ユーザ
5 :管理者
11 :サーバ
12 :ストーリ生成器
20 :ユーザ端末
60 :補助装置
61 :学習装置
62 :実行装置
A1 :学習モデル
A11 :第1学習モデル
A12 :第2学習モデル
A2 :学習済みモデル
A21 :第1学習済みモデル
A22 :第2学習済みモデル
D1 :第1未知データ
D2 :第2未知データ
D3 :出力データ
D4 :ビッグデータ
DL1 :第1学習データ
DL11 :ストーリデータ
DL12 :ログデータ
DL121 :画像データ
DL122 :プロフィールデータ
DL13 :第1正解データ
DL2 :第2学習データ
DL21 :キーワード
DL22 :第2正解データ
DU1 :第1未知データ
DU11 :未知ログデータ
DU12 :未知ストーリデータ
DU2 :第2未知データ
DU21 :未知キーワード
【要約】
【課題】ゲームで扱うアイテム等のゲーム内要素に関する設定作業の負荷を軽減させる。
【解決手段】プログラムは、コンピュータを、ゲームに関する未知キーワード、及び、前記ゲームのプレイに関する未知ログデータが入力されると、ゲーム内要素を含む前記ゲームのストーリに関する未知ストーリデータを生成する第1生成手段と、ストーリデータ、及び、ログデータを含む第1学習データを用いて学習した第1学習済みモデルに対し、前記未知ストーリデータ、及び、前記未知ログデータを含む未知データを入力する入力手段と、前記未知データが入力されると、前記未知データに基づき、前記ゲーム内要素に関する出力データを生成する第2生成手段と、前記出力データに基づき、前記ゲーム内要素が登場する前記ゲームを進行させる進行手段として機能させる。
【選択図】
図11