JP2020115957A - Information processing device, information processing program, and information processing method - Google Patents
Information processing device, information processing program, and information processing method Download PDFInfo
- Publication number
- JP2020115957A JP2020115957A JP2019007461A JP2019007461A JP2020115957A JP 2020115957 A JP2020115957 A JP 2020115957A JP 2019007461 A JP2019007461 A JP 2019007461A JP 2019007461 A JP2019007461 A JP 2019007461A JP 2020115957 A JP2020115957 A JP 2020115957A
- Authority
- JP
- Japan
- Prior art keywords
- information processing
- electronic game
- strategy
- character
- evaluation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 46
- 238000003672 processing method Methods 0.000 title claims description 5
- 238000011156 evaluation Methods 0.000 claims abstract description 128
- 230000001186 cumulative effect Effects 0.000 claims abstract description 43
- 230000001174 ascending effect Effects 0.000 claims abstract description 11
- 238000010801 machine learning Methods 0.000 claims abstract description 10
- 238000000034 method Methods 0.000 claims description 31
- 230000006870 function Effects 0.000 claims description 10
- 238000013473 artificial intelligence Methods 0.000 abstract description 4
- 239000003795 chemical substances by application Substances 0.000 description 75
- 238000012545 processing Methods 0.000 description 30
- 230000002787 reinforcement Effects 0.000 description 26
- 230000008569 process Effects 0.000 description 23
- 230000000694 effects Effects 0.000 description 18
- 239000004575 stone Substances 0.000 description 18
- 238000010606 normalization Methods 0.000 description 15
- 239000013598 vector Substances 0.000 description 14
- 238000004364 calculation method Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000004913 activation Effects 0.000 description 8
- 230000009471 action Effects 0.000 description 6
- 230000003213 activating effect Effects 0.000 description 6
- 238000013528 artificial neural network Methods 0.000 description 6
- 210000004027 cell Anatomy 0.000 description 5
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000013135 deep learning Methods 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 230000002860 competitive effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000001747 exhibiting effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005728 strengthening Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Landscapes
- Electrically Operated Instructional Devices (AREA)
Abstract
Description
本発明は、情報処理装置、情報処理プログラム及び情報処理方法に関し、特に、電子ゲームを提供する情報処理装置、情報処理プログラム及び情報処理方法に関する。 The present invention relates to an information processing device, an information processing program, and an information processing method, and more particularly to an information processing device, an information processing program, and an information processing method for providing an electronic game.
従来、電子ゲームを提供する情報処理装置が知られている。このような情報処理装置によって提供される電子ゲームとしては、キャラクタやカードといった複数のオブジェクト(ゲーム内オブジェクト)を使用する電子ゲームが知られている。その一例として、プレイヤが複数のオブジェクトを使用しながら、コンピュータあるいは他のプレイヤである対戦相手と戦う対戦ゲームがある。 Conventionally, an information processing device that provides an electronic game is known. As an electronic game provided by such an information processing apparatus, an electronic game using a plurality of objects (in-game objects) such as characters and cards is known. As an example thereof, there is a competitive game in which a player uses a plurality of objects and fights against a competitor who is a computer or another player.
一方、近年、機械学習の研究が盛んに行われている。例えば、多層のニューラルネットワークを用いたディープラーニングに関する研究が行われている。このようなディープラーニングを用いて、電子ゲームをプレイする人工知能(AI;Artificial Intelligence)エージェントを学習させ、従来よりも高い性能を有する(すなわちゲームが「うまい」)AIエージェントが実現されている。例えば、非特許文献1には、囲碁をプレイするAIエージェントに適用されたディープニューラルネットワークに関する技術が開示されている。
On the other hand, in recent years, machine learning has been actively researched. For example, research on deep learning using a multilayer neural network has been conducted. By using such deep learning, an AI agent that plays an electronic game (AI; Artificial Intelligence) agent is learned, and an AI agent having higher performance than before (that is, the game is “good”) is realized. For example, Non-Patent
対戦型ゲームにおいて、AI等によって得られた評価値に基づいて仮想の対戦相手(NPC)としてユーザ(プレイヤ)がプレイする際に興趣を感じさせるためには適切な強さに設定できることが望まれる。例えば、ユーザ(プレイヤ)が初心者である場合にはNPCが強すぎると電子ゲームに対する興味を失ってしまうことがある。一方、熟練度が高いユーザ(プレイヤ)の場合にはNPCが弱すぎると電子ゲームに対する満足感が得られないことがある。 In a competitive game, it is desirable that the strength can be set to an appropriate level so that the user (player) can enjoy the game as a virtual opponent (NPC) based on the evaluation value obtained by AI or the like. .. For example, if the user (player) is a beginner, the NPC may lose interest in the electronic game if the NPC is too strong. On the other hand, a highly skilled user (player) may not be satisfied with the electronic game if the NPC is too weak.
本発明は、複数のオブジェクトを使用する電子ゲームをプレイする人工知能エージェントにおいて適切な強さを発揮できる技術を提供することを目的とする。 It is an object of the present invention to provide a technique capable of exerting appropriate strength in an artificial intelligence agent playing an electronic game using a plurality of objects.
本発明の1つの態様は、複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせた戦略評価手段と、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、を備えることを特徴とする情報処理装置である。 One aspect of the present invention comprises a strategy evaluation unit that performs machine learning for evaluating an electronic game strategy for use of the object as an evaluation value in an electronic game using a plurality of objects, and the strategy evaluation unit. Obtaining the output result of the evaluation value for the use of the object that is applicable in the electronic game by using the evaluation value corresponding to the evaluation value corresponding to the reference range in the cumulative value obtained by arranging the evaluation values in ascending or descending order. An information processing apparatus comprising: a strategy determining unit that determines the use of the object that is actually applied to the electronic game from the use.
ここで、前記戦略決定手段は、前記累積値を所定の範囲に正規化し、当該正規化された累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定することが好適である。 Here, the strategy determining means normalizes the cumulative value to a predetermined range, and actually applies to the electronic game from the use of the object corresponding to the evaluation value corresponding to the reference range in the normalized cumulative value. It is preferable to determine the use of said object.
また、前記戦略決定手段は、前記基準範囲を所定の範囲に正規化し、前記累積値において当該正規化された基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定することが好適である。 In addition, the strategy determination means normalizes the reference range to a predetermined range, and actually applies to the electronic game from the use of the object corresponding to the evaluation value corresponding to the normalized reference range in the cumulative value. It is preferable to determine the use of said object.
また、前記戦略評価手段は、電子ゲームにおける過去のプレイ履歴を用いて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせたものであることが好適である。 In addition, it is preferable that the strategy evaluation unit performs machine learning for evaluating a strategy on the electronic game for use of the object as an evaluation value by using a past play history in the electronic game.
また、前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値のすべてを用いて前記累積値を算出することが好適である。 Further, it is preferable that the strategy determining means calculates the cumulative value by using all the evaluation values for use of the object applicable in the electronic game using the strategy evaluating means.
また、前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の一部のみを用いて前記累積値を算出することが好適である。 Further, it is preferable that the strategy determining means calculates the cumulative value by using only a part of the evaluation value for use of the object applicable in the electronic game by using the strategy evaluating means.
また、前記基準範囲は、電子ゲームの難易度に応じて設定変更が可能であることが好適である。 Further, it is preferable that the setting of the reference range can be changed according to the degree of difficulty of the electronic game.
また、前記基準範囲の幅は変更可能であることが好適である。 Further, it is preferable that the width of the reference range can be changed.
また、前記基準範囲は、電子ゲームのプレイの経過時間に応じて設定変更されることが好適である。 Further, it is preferable that the reference range is set and changed according to the elapsed time of playing the electronic game.
また、前記基準範囲を複数設定し、前記基準範囲の各々に対する前記オブジェクトの使用を決定することによって複数のプレイヤによる電子ゲームのプレイの戦略を決定することが好適である。 Further, it is preferable that a plurality of the reference ranges are set and a use strategy of the electronic game by a plurality of players is determined by determining the use of the object for each of the reference ranges.
また、前記戦略決定手段は、前記基準範囲に該当する評価値から均一な確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することが好適である。 Further, the strategy determining means determines the use of the object corresponding to the evaluation value selected according to the uniform probability distribution from the evaluation values corresponding to the reference range as the use of the object to be actually applied to the electronic game. Is preferred.
また、前記戦略決定手段は、前記基準範囲に該当する評価値から所定の確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することが好適である。ここで、前記確率分布は、前記基準範囲の最大値又は最小値において確率分布の最大値をとる正規分布であることが好適である。 Further, the strategy determining means determines the use of the object corresponding to the evaluation value selected according to a predetermined probability distribution from the evaluation values corresponding to the reference range as the use of the object to be actually applied to the electronic game. Is preferred. Here, it is preferable that the probability distribution is a normal distribution having the maximum value of the probability distribution at the maximum value or the minimum value of the reference range.
本発明の別の態様は、コンピュータを、複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせた戦略評価手段と、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、して機能させることを特徴とする情報処理プログラムである。 Another aspect of the present invention is a strategy evaluation means for causing a computer to perform machine learning for evaluating an electronic game strategy for use of an object as an evaluation value in an electronic game using a plurality of objects, and the strategy. The evaluation value output result of the evaluation value for the use of the object applicable to the electronic game is obtained using the evaluation means, and the evaluation value corresponding to the evaluation value corresponding to the reference range in the cumulative value obtained by arranging the evaluation values in ascending order or descending order. It is an information processing program characterized by causing it to function as strategy determining means for determining the use of the object to be actually applied to an electronic game from the use of the object.
本発明の別の態様は、複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせる戦略学習工程と、前記戦略学習工程で学習されたエージェントを用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定工程と、を備えることを特徴とする情報処理方法である。 Another aspect of the present invention is, in an electronic game using a plurality of objects, a strategy learning step of performing machine learning for evaluating a strategy on an electronic game for use of the object as an evaluation value, and learning in the strategy learning step. The output value of the evaluation value for the use of the object that is applicable in the electronic game is obtained by using the selected agent, and the evaluation value corresponding to the reference range is accumulated in the cumulative value obtained by arranging the evaluation value in ascending or descending order. A strategy determining step of determining the use of the object to be actually applied to the electronic game from the use of the object to perform the information processing method.
本発明によれば、複数のオブジェクトを使用する電子ゲームをプレイする人工知能エージェントにおいて適切な強さを発揮できる情報処理装置及び情報処理プログラムを提供することができる。 According to the present invention, it is possible to provide an information processing device and an information processing program capable of exhibiting appropriate strength in an artificial intelligence agent playing an electronic game using a plurality of objects.
以下、本発明の実施形態について説明する。 Hereinafter, embodiments of the present invention will be described.
図1に、本実施形態に係るゲームシステム10の構成概略図が示されている。ゲームシステム10は、ゲームシステム10により提供される電子ゲーム(以下単に「本ゲーム」と記載する)の開発者、より詳しくは、本ゲームで使用されるオブジェクト(キャラクタ)の作成者であるプランナが使用するプランナ端末12、本ゲームのプレイヤが使用するプレイヤ端末14、及び、情報処理装置としてのゲームサーバ16を含んで構成されている。プランナ端末12とゲームサーバ16との間、及び、プレイヤ端末14とゲームサーバ16との間は、通信回線18を介して互いに通信可能に接続されている。通信回線18は、例えばインターネットあるいはローカルエリアネットワーク(LAN)などによって構成される。なお、図1には、プランナ端末12及びプレイヤ端末14がそれぞれ1つずつ示されているが、これらはそれぞれ複数設けられてよい。
FIG. 1 shows a schematic configuration diagram of a
ゲームシステム10においては、プランナがプランナ端末12を用いてゲームサーバ16にアクセスすることで、オブジェクトの作成を含む本ゲームの開発を行うことができる。また、ユーザ(プレイヤ)がプレイヤ端末14を用いてゲームサーバ16にアクセスすることで、ユーザはNPC(Non Player Character)との電子ゲームの対戦を行うことができる。また、ゲームサーバ16においてNPC(Non Player Character)同士を対戦させることもできる。
In the
ここで、本ゲームの内容について説明する。図2に、プレイヤ端末14に表示されるゲーム画面の例が示されている。本ゲームは、複数のオブジェクトとしての複数のキャラクタを使用して、敵プレイヤと対戦を行うものである。敵プレイヤとしては、自プレイヤ以外の他のプレイヤであってもよいし、コンピュータ(ゲームサーバ16)であってもよい。具体的には、ゲームフィールドとしての、複数のマスが定義された盤20上に、オセロ(登録商標)の要領で自プレイヤと敵プレイヤとが交互にキャラクタを配置していくものである。図2においては、各マスの行が数字「1」〜「6」で、列が英字「A」〜「F」で示されている。
Here, the contents of this game will be described. FIG. 2 shows an example of the game screen displayed on the
盤20上の白丸は自プレイヤの石(白石)を示し、黒丸は敵プレイヤの石(黒石)を示す。そして、盤20上の白丸の中にキャラクタ名(例えば「C0055」)が記載されたものは自プレイヤのキャラクタ(自キャラクタ)を示し、黒丸の中にキャラクタ名が記載されたものは敵プレイヤのキャラクタ(敵キャラクタ)を示す。2つの自キャラクタ、又は、1つの白石と1つの自キャラクタで、敵キャラクタあるいは黒石を挟み込むと、敵キャラクタあるいは黒石を白石に変化させる(ひっくり返す)ことができる。また、2つの敵キャラクタ、又は、1つの黒石と1つの敵キャラクタで、自キャラクタあるいは白石が挟み込まれると、自キャラクタあるいは白石が黒石に変化させられる。なお、通常のオセロ同様、ゲーム開始時において、盤20の中央部4つのマスには白石と黒石が2つずつ置かれていてよい。すなわち、3Cのマス及び4Dのマスには白石が、3Dのマス及び4Cのマスには黒石が置かれていてよい。
The white circles on the
プレイヤは、本ゲーム内において定義された複数のキャラクタであって、当該プレイヤが取得した(本ゲーム内で使用可能となった)キャラクタの中から複数のキャラクタを選択する。例えば、本実施形態では16個のキャラクタを選択する。プレイヤによって選択された16個のキャラクタ群をデッキと呼ぶ。プレイヤは、ゲームの進行に応じて、あるいは、課金することによって新たなキャラクタを取得することができる。図2に示すように、デッキの中から選択された4つのキャラクタが画面に表示される。当該4つのキャラクタを手駒22と呼ぶ。なお、手駒22は、ゲームサーバ16によってデッキの中からランダムに選択されてもよいし、プレイヤがデッキの中から選択可能となっていてもよい。ユーザは、4つの手駒22の中から任意のキャラクタを選択し、選択したキャラクタを盤20上のマスに配置する。手駒22の中から1つのキャラクタが盤20上に配置されると、デッキの中から選択された1つのキャラクタが新たに手駒22に加えられる。
The player selects a plurality of characters from among the plurality of characters defined in the present game and obtained by the player (made available in the present game). For example, in this embodiment, 16 characters are selected. A group of 16 characters selected by the player is called a deck. The player can acquire a new character according to the progress of the game or by charging. As shown in FIG. 2, four characters selected from the deck are displayed on the screen. The four characters are called the
詳細は後述するが、各キャラクタには複数のパラメータが設定されている。例えば、攻撃力、スキル効果、スキル発動条件といったパラメータが設定されている。キャラクタが盤20上に配置されると、当該キャラクタの攻撃力に応じたダメージを対戦相手に与えることができる。あるいは、当該キャラクタのスキル発動条件が満たされると、当該キャラクタが有する特殊効果としてのスキル(技)が実行され、スキル効果(あるいはスキル効果及び攻撃力)に応じたゲーム上の効果が発動される。
Although details will be described later, a plurality of parameters are set for each character. For example, parameters such as offensive power, skill effect, and skill activation condition are set. When the character is placed on the
自プレイヤ及び敵プレイヤにはそれぞれHP(ヒットポイント)が設定されている。図2においては、自プレイヤの最大HPが250であり、現在のHPが180であることが示されている。キャラクタが盤20上に配置されたことや、スキルを実行することなどによって対戦相手のHPを減らすことができる。また、キャラクタのスキルによってHPが回復できるようになっていてもよい。そして、先にHPが0になった方が負けであり、他方が勝ちとなる。
HPs (hit points) are set for the own player and the enemy player, respectively. In FIG. 2, it is shown that the maximum HP of the player is 250 and the current HP is 180. The HP of the opponent can be reduced by arranging the character on the
このように、ゲームシステム10により提供されるゲームは、プレイヤが複数のキャラクタを使用しながら対戦相手と対戦を行うゲームである。
As described above, the game provided by the
図3には、プランナ端末12の構成概略図が示されている。プランナ端末12は、例えば一般的なコンピュータであってよい。
FIG. 3 shows a schematic configuration diagram of the
制御部12aは、例えばCPU(Central Processing Unit)あるいはマイクロコンピュータなどを含んで構成され、後述の記憶部12eに記憶されたプログラムに従ってプランナ端末12の各部を制御するものである。通信部12bは、例えばネットワークアダプタなどを含んで構成され、通信回線18を介してゲームサーバ16と通信する機能を有するものである。入力部12cは、例えばマウス、キーボード、あるいはタッチパネルなどを含んで構成される。入力部12cは、プランナの指示をプランナ端末12に入力するためのものである。表示部12dは、例えば液晶ディスプレイなどを含んで構成され、各種画面を表示するものである。特に、表示部12dには、ゲームの開発画面などが表示される。記憶部12eは、例えばハードディスク、RAM(Random Access Memory)、あるいはROM(Read Only Memory)などを含んで構成される。記憶部12eには、プランナ端末12の各部を動作させるためのプログラムが記憶される。あるいは、記憶部12eには、各種の制御データあるいは各種の処理結果データなどが記憶される。
The
図4には、プレイヤ端末14の構成概略図が示されている。本実施形態においては、プレイヤ端末14としてはスマートフォンやタブレット端末といった携帯型の端末が用いられるが、プレイヤ端末14は据え置き型のコンピュータであってもよい。
FIG. 4 shows a schematic configuration diagram of the
制御部14aは、例えばCPUあるいはマイクロコンピュータなどを含んで構成され、後述の記憶部14eに記憶されたゲームのクライアントプログラムに従ってプレイヤ端末14の各部を制御するものである。通信部14bは、例えばネットワークアダプタなどを含んで構成され、通信回線18を介してゲームサーバ16と通信する機能を有するものである。入力部14cは、例えばタッチパネルあるいはボタンなどを含んで構成される。入力部14cは、プレイヤの指示をプレイヤ端末14に入力するためのものである。表示部14dは、例えば液晶ディスプレイなどを含んで構成され、各種画面を表示するものである。特に、表示部14dにはゲーム画面などが表示される。記憶部14eは、例えばRAMあるいはROMなどを含んで構成される。記憶部14eには、ゲームのクライアントプログラムが記憶される。あるいは、記憶部14eには、各種の制御データあるいは各種のゲーム処理結果データなどが記憶される。
The
図5には、ゲームサーバ16の構成概略図が示されている。
FIG. 5 shows a schematic configuration diagram of the
通信部30は、例えばネットワークアダプタなどを含んで構成され、通信回線18を介してプランナ端末12及びプレイヤ端末14と通信する機能を有するものである。記憶部32は、例えばハードディスク、RAM、あるいはROMなどを含んで構成される。記憶部32には、情報処理プログラムとしての、ゲームのホストプログラムが記憶される。当該ホストプログラムが実行されることで、ゲームが進行すると共に、ゲームサーバ16の各部が動作する。また、図5に示される通り、記憶部32には、キャラクタDB34、プレイヤログDB36、分散表現DB38、AIログDB40、AIエージェント42、及び、複数の統計データ44aからなる統計データ群44が記憶される。
The
キャラクタDB34は、本ゲームにおいて(すなわちホストプログラムによって)定義され、本ゲーム内で自プレイヤあるいは敵プレイヤが使用可能なキャラクタに関するデータが格納されたデータベースである。具体的には、キャラクタDB34には、各キャラクタに設定された各パラメータが格納されている。なお、本ゲームにおいては、千数百のキャラクタを使用することが可能となっており、また、新規キャラクタが逐次追加されていく仕様になっている。
The
図6に、キャラクタDB34の内容例が示されている。図6においては、キャラクタDB34がテーブル形式で示されているが、キャラクタDB34のデータ形式はこれに限られるものではない。図6においては、1つのレコードが1つのキャラクタに対応している。本実施形態では、各キャラクタは、キャラクタ名、当該キャラクタの特徴を示す属性、当該キャラクタの入手困難度を示すレア度、当該キャラクタが盤20上に配置されたときに対戦相手に与えるダメージの基準となる攻撃力、スキル名、当該キャラクタのスキルが発動する条件を示すスキル発動条件、及び、スキルが発動したときの効果であるスキル効果のパラメータを有している。なお、スキル効果の欄にある「通常攻撃」とは、キャラクタが盤20上に配置され、スキルを発動せずに攻撃力の値に基づいて対戦相手にダメージを与えることを意味する。
FIG. 6 shows an example of the contents of the
これらのパラメータはプランナによって定義することができる。もちろん、パラメータの項目としては、これらに限られず、各キャラクタは、その他の項目に対するパラメータを有していてもよい。 These parameters can be defined by the planner. Of course, the items of parameters are not limited to these, and each character may have parameters for other items.
図6に示すように、本実施形態においては、各キャラクタのスキル発動条件が、例えば「HPが最大HPの5%以下」あるいは「盤上に属性がP1の自キャラクタが3つ以上」といったように、ゲーム状況に関する条件で規定されている。したがって、プレイヤとして、各キャラクタのスキル発動条件がゲーム状況に関する条件で規定されているために、デッキに入れるキャラクタを適切に選択することが難しくなっている。すなわち、プレイヤとして、キャラクタのスキル発動条件を見ても、当該キャラクタがどの程度の確率でスキルを発動するのかを把握することが容易でないからである。 As shown in FIG. 6, in the present embodiment, the skill activation condition of each character is, for example, "HP is 5% or less of the maximum HP" or "there are three or more own characters with the attribute P1 on the board". It is stipulated in the conditions regarding the game situation. Therefore, as the player, since the skill activation condition of each character is defined by the condition relating to the game situation, it is difficult to properly select the character to be included in the deck. That is, as a player, it is not easy to understand the probability of the character activating a skill by looking at the skill activating condition of the character.
図5に戻り、プレイヤログDB36、分散表現DB38、及びAIログDB40には、それぞれ各種データが格納される。これらのデータベースに格納されるデータの詳細については後述する。
Returning to FIG. 5, various data is stored in the
AIエージェント42は、本ゲームをプレイする人工知能プログラムである。AIエージェント42は、戦略評価手段として機能する。AIエージェント42は、後述のディープラーニングを用いた方法によって学習される。AIエージェント42の学習手法の詳細については後述する。本実施形態におけるAIエージェント42は、多層ニューラルネットワークを含んで構成される。多層ニューラルネットワークは、各種パラメータ(層構造、各層におけるニューロン構造、各ニューロンの重みあるいはバイアスなど)により定義されるため、記憶部32は、これらのパラメータが記憶される。
The
統計データ44aは、キャラクタの使用結果に関する統計データである。本実施形態においては、統計データ44aはキャラクタ毎に生成され、各キャラクタに対応した複数の統計データ44aが統計データ群44である。なお、統計データ44aは、後述の統計データ生成部64により生成されるものであり、その詳細については後述する。
The
制御部50は、例えばCPU、GPU(Graphics Processing Unit)あるいはマイクロコンピュータなどを含んで構成され、記憶部32に記憶されたゲームのホストプログラムに従ってゲームサーバ16の各部を制御する。また、図5に示される通り、制御部50は、ホストプログラムによって、プレイヤログ収集部52、表現学習部54、教師あり学習部56、AI対戦処理部58、強化学習部60、AIログ収集部62、統計データ生成部64、及び、表示制御部66としても機能する。以下、制御部50が有するこれらの機能について説明する。
The
プレイヤログ収集部52は、本ゲームに関するプレイヤのゲーム進行履歴を示すデータであるプレイヤログを取得して、プレイヤログDB36に格納する。プレイヤログ収集部52は、プレイヤによるゲームプレイが終了した時、あるいはゲームプレイ中にプレイヤログを取得する。ちなみに、ここでいうプレイヤには、本ゲームの開発者も含まれていてよく、プレイヤログ収集部52は、開発者によるテストプレイに関するログを取得するようにしてもよい。いずれにしても、プレイヤログは、人間による実際のゲームプレイに関するログである。
The player
図7に、プレイヤログDB36の内容例が示されている。図7においては、プレイヤログDB36もテーブル形式で示されているが、プレイヤログDB36のデータ形式はこれに限られるものではない。上述の通り、本ゲームは第1プレイヤと第2プレイヤとが交互にキャラクタを盤20上に配置していくものであるから、プレイヤログDB36には、「ターン数」、当該ターンで第1プレイヤ又は第2プレイヤが盤20上に配置したキャラクタを示す「配置キャラクタ」、当該ターンで当該キャラクタが配置された場所を示す「配置場所」、当該ターンで相手の石又は敵キャラクタをひっくり返した枚数を示す「ひっくり返した枚数」、当該ターンで配置されたキャラクタのスキルが発動したか否かを示す「スキル発動」、及び、当該スキル発動により生じた効果(例えばダメージ量)を示す「スキル効果値」の項目を含む。もちろん、図7に示された項目は一例であり、プレイヤログにはその他の項目が含まれていてもよい。例えば、キャラクタの通常攻撃によって相手に与えた実績ダメージ量などの項目が含まれていてもよい。
FIG. 7 shows an example of the contents of the
このように、プレイヤログには、第1プレイヤあるいは第2プレイヤが各キャラクタを用いた(つまり盤20上に置いた)場合における使用結果(「ひっくり返した枚数」、「スキル発動」、あるいは「スキル効果値」)が含まれている。 As described above, in the player log, the use result (“the number of flipped sheets”, “skill activation”, or “use” when the first player or the second player uses each character (that is, the character is placed on the board 20 ). Skill effect value”) is included.
表現学習部54は、プレイヤログDB36に格納された、ゲームログとしてのプレイヤログに基づいて、表現学習を行う。これにより、キャラクタDB34に登録された各キャラクタの特徴を表す特徴ベクトルを学習する。すなわち、表現学習部54は、本ゲームで用いられる各キャラクタの分散表現を学習する。表現学習部54により学習された各キャラクタの特徴ベクトル(分散表現)は、分散表現DB38に格納される。また、表現学習部54は、プレイヤログに代えて、あるいはプレイヤログと併せて、後述するAI対戦処理部58によるAIエージェント42によるゲーム進行履歴を示す、ゲームログとしてのAIログを用いて表現学習を行ってもよい。
The
本実施形態に係る特徴ベクトルは、例えば5次元のベクトルであり、各要素は本ゲームにおける戦略上の特徴(例えば、「角に置きたい」、「序盤に使いたい」など)を示すものである。 The feature vector according to the present embodiment is, for example, a five-dimensional vector, and each element indicates a strategic feature in the present game (for example, "I want to put it in a corner", "I want to use it in the beginning", etc.). ..
表現学習部54は、例えばニューラルネットワークから構成される表現学習用の学習器を用いて表現学習を行う。具体的には、プレイヤログのうち、あるキャラクタが使用される前のゲーム状態(盤20上の石あるいはキャラクタの配置状態など)と、当該キャラクタが使用された結果(次状態)とに基づいて、当該キャラクタの特徴ベクトルの各要素の値を学習していく。
The
このように、各キャラクタを分散表現することで、多数のキャラクタをより低次元のベクトルで表現することが可能となる。また、本ゲームにおける戦略上の特徴が似ているキャラクタが、似た特徴ベクトルで表現されることになる。なお、表現学習の方法としては、様々な既知の学習方法を用いることができる。 In this way, by representing each character in a distributed manner, it becomes possible to represent a large number of characters by a lower dimensional vector. Characters having similar strategic features in this game are represented by similar feature vectors. Note that various known learning methods can be used as the expression learning method.
教師あり学習部56は、プレイヤログDB36に格納されたプレイヤログと、表現学習部54が学習した各キャラクタの特徴ベクトルとを少なくとも用いて、AIエージェント42に各キャラクタの使用に関する戦略を機械学習させる。教師あり学習部56は、後述する強化学習部60と併せて戦略学習手段として機能する。
The
ここで、各キャラクタの使用に関する戦略とは、あるゲーム状態において、どのような特徴を有するキャラクタを使用すべきか、あるいは、キャラクタを盤20上のどの位置に配置すべきかなどを含む戦略である。
Here, the strategy regarding the use of each character is a strategy including what characteristics the character should use in a certain game state, and which position on the
具体的には、教師あり学習部56は、あるゲーム時点における盤面上あるいは手駒内に存在するキャラクタの特徴ベクトル、配置位置、ターン数、行動可能手、ヒットポイントといったゲーム状態、及び行動情報(特定のキャラクタをあるマスに配置すること)などを入力とし、入力されたゲーム状態における入力された行動情報の評価値を出力とした学習データを用いてAIエージェント42を学習させる。なお、当該評価値は、プレイヤログに基づいて予め算出される。すなわち、教師あり学習部56は教師あり学習によってAIエージェント42を学習させる。
Specifically, the
教師あり学習部56における学習においては、各キャラクタが特徴ベクトルで表現した上で学習を行うから、各キャラクタを個別にラベル付けした場合に比して、学習における演算量を低下させることができる。また、特徴が似ているキャラクタは、似た特徴ベクトルで表現されているから、あるキャラクタに関する学習が、当該キャラクタに似たキャラクタに関する学習をすることになる。つまり、学習の汎化の効果が期待できる。
In the learning with the
AI対戦処理部58は、教師あり学習部56によって学習された、あるいは、後述の強化学習部60によってさらに学習されたAIエージェント42を利用して対戦処理を行う。すなわち、AI対戦処理部58は、戦略学習手段である教師あり学習部56及び後述の強化学習部60によって学習されたAIエージェント42を用いた電子ゲームに対する戦略決定手段として機能する。
The AI
AI対戦処理部58では、AIエージェント42とユーザ(プレイヤ)との対戦処理を行う。また、AI対戦処理部58は、AIエージェント42同士を対戦させる処理を行うようにしてもよい。対戦においては、デッキに入れるキャラクタの選択からAIエージェント42に任せてもよい。AI対戦処理部58における対戦処理については後述する。
The AI
強化学習部60は、AIエージェント42を強化するための学習である強化学習を行う。強化学習とは、教師あり学習とは異なる手法であり、強化学習としては例えばQ学習などを用いることができる。具体的には、強化学習においては、あるゲーム状態からのAIエージェント42が選択した一連の行動の結果(例えば勝ちあるいは負け)に基づいてAIエージェント42に報酬が与えられ、AIエージェント42は、当該報酬に基づいて取るべき行動を学習する。
The
本実施形態においては、強化学習部60は、AI対戦処理部58による対戦結果に基づいて学習を行う。なお、強化学習部60は、プレイヤログDB36に格納されたプレイヤログに基づいて強化学習を行うようにしてもよい。また、強化学習部60は、強化学習において、AIエージェント42と他のNPC(Non Player Character;AIエージェント42ではないルールベースのAI)との対戦結果に基づいて学習を行うようにしてもよい。
In the present embodiment, the
本ゲームにおいては、ゲーム状態によってAIエージェント42が取り得る行動が異なる。例えば、盤20の状態によってキャラクタを配置できる位置が異なるし、手駒22の種類によってそもそも使用できるキャラクタが異なる。したがって、本実施形態においては、あるゲーム状態とAIエージェント42が取ることができる行動とを両方入力し、入力された行動の価値を示す指標を出力するという方法で強化学習を行う。
In this game, the action that the
なお、強化学習においても、表現学習部54が学習した各キャラクタの特徴ベクトルを用いながら学習するのが好適である。これにより、教師あり学習部56における効果と同様の効果を強化学習においても得ることができる。
In the reinforcement learning as well, it is preferable to perform learning while using the feature vector of each character learned by the
本実施形態においては、教師あり学習部56及び強化学習部60の少なくとも一方が戦略学習手段に相当する。すなわち、各キャラクタの使用に関する戦略をAIエージェント42に学習させる戦略学習は、教師あり学習と強化学習のどちらか一方又は両方である。
In the present embodiment, at least one of the
強化学習部60において強化学習されたAIエージェント42に基づいて、AI対戦処理部58において対戦処理を行ってもよい。この場合、強化学習部60によってさらに学習されたAIエージェント42とユーザ(プレイヤ)との対戦処理を行う。また、AI対戦処理部58は、AIエージェント42同士を対戦させる処理を行うようにしてもよい。対戦においては、デッキに入れるキャラクタの選択からAIエージェント42に任せてもよい。AI対戦処理部58における評価値に基づく対戦処理については後述する。
The AI
AIログ収集部62は、AI対戦処理部58における本ゲームのゲーム進行履歴を示し、複数のキャラクタの使用結果を含むデータであるAIログを取得して、AIログDB40に格納する。AIログはプレイヤログと同等の項目を有するため、ここではAIログの詳細な説明は省略する。プレイヤログとAIログとの差異は、プレイヤによるゲーム進行の履歴を示すものであるか、少なくともプレイヤの一方がAIエージェント42であるときのゲーム進行の履歴を示すものであるかのみである。なお、AIログ収集部62は、AIエージェント42とユーザ(プレイヤ)との対戦によるログのみならず、AIエージェント42同士の対戦やAIエージェント42とNPCとの対戦によるログをAIログとして取得するようにしてもよい。
The AI
統計データ生成部64は、AIログDB40に格納されたAIログに基づいて、統計データ44aを生成する。上述の通り、統計データ44aは、各キャラクタに応じて生成されるものであり、各キャラクタの使用結果に関するものである。例えば、統計データ44aは、キャラクタを使用した場合における勝率を含んでいてよい。この場合、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタが使用された場合に使用したAIエージェント42が勝ったか否かを抽出して、注目キャラクタに関する勝率を算出する。
The statistical
また、統計データ44aは、キャラクタを使用した場合におけるスキルの発動確率を含んでいてよい。この場合、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタが使用された場合にスキルが発動されたか否かを抽出して、注目キャラクタに関するスキル発動確率を算出する。
Further, the
また、統計データ44aは、キャラクタを使用した場合に生じた効果の分布を含んでいてよい。この場合、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタがスキルを発動した場合におけるスキル効果値を抽出して、注目キャラクタに関するスキル効果値の分布を算出する。あるいは、キャラクタを使用した場合に生じた効果には、キャラクタが通常攻撃をした場合に相手に与えたダメージ量が含まれていてもよく、すなわち、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタの通常攻撃により相手に与えたダメージを抽出して、注目キャラクタの通常攻撃のダメージの分布を算出する。
In addition, the
以上の通り、本実施形態においては、統計データ44aは、キャラクタを使用した場合における勝率、キャラクタを使用した場合におけるスキルの発動確率、及び、キャラクタを使用した場合に生じた効果の分布の少なくとも1つを含むものである。もちろん、統計データ44aにはその他のデータが含まれていてもよい。
As described above, in the present embodiment, the
統計データ生成部64は、上述の処理によって、キャラクタDB34に登録された複数のキャラクタ、理想的には、全てのキャラクタについての統計データ44aを生成する。これにより統計データ群44が形成される。
The statistical
表示制御部66は、プランナ端末12からの(すなわちプランナからの)要求に従って、統計データ生成部64が生成した統計データ44aをプランナ端末12の表示部12dに表示させる。また、表示制御部66は、プレイヤ端末14からの(すなわちプレイヤからの)要求に従って、統計データ生成部64が生成した統計データ44aをプレイヤ端末14の表示部14dに表示させる。なお、表示制御部66は、開発中キャラクタに関する統計データ44aはプレイヤ端末14の表示部14dには表示させないものとする。
The
[AI対戦処理部]
以下、AI対戦処理部58での対戦処理について説明する。上記のとおり、AI対戦処理部58は、教師あり学習部56及び強化学習部60によって学習させたAIエージェント42を用いて、AIエージェント42とユーザ(プレイヤ)、AIエージェント42同士の対戦処理を行う。
[AI battle processing section]
Hereinafter, the battle process in the AI
AI対戦処理部58は、図8に示すように、評価値算出部58a、評価値正規化部58b、基準範囲設定部58c及び処理決定部58dを含んで構成される。
As shown in FIG. 8, the AI
評価値算出部58aでは、教師あり学習部56又は強化学習部60で学習させたAIエージェント42を適用して電子ゲームにおいて現状使用できるキャラクタに対する評価値を求める。
The evaluation
例えば、デッキに含まれる16個のキャラクタのうち手駒22と呼ばれる4のキャラクタ(キャラクタA〜D)をそれぞれ4つのマス(マスB4,B5,D2,F3)のうちいずれかに配置可能な場合、図9に示すように、4つのキャラクタに対してそれぞれ4つのマスに配置するという16通りのキャラクタの使用のバリエーションがある。そこで、これら16通りのキャラクタの使用の各々についてAIエージェント42を用いて評価値を求める。図9では、例えば、キャラクタの使用(1)としてキャラクタAをマスB4に配置することに対応して評価値が20、キャラクタの使用(2)としてキャラクタAをマスB5に配置することに対応して評価値が15・・・というように、キャラクタの使用の各々についてAIエージェント42を用いて評価値を求められている。
For example, in a case where four characters (characters A to D) called a
評価値正規化部58bは、評価値を正規化する処理を行う。評価値正規化部58bは、評価値算出部58aで求められた複数の評価値を昇順に並べて累積し、当該累積値が所定の数値範囲となるように正規化処理を行う。
The evaluation
以下、説明を簡潔にするために、評価値算出部58aにおいて5通りのキャラクタの使用のバリエーション(キャラクタの使用(1)〜(5))について5つの評価値が得られた例について示す。評価値正規化部58bは、図10に示すように、5つの評価値を小さい順(昇順)に並べて累積値を求め、当該累積値が0〜100の数値範囲となるように正規化する。これによって、評価値算出部58aで得られた評価値に対して正規化された累積値が得られる。
To simplify the description, an example in which the evaluation
なお、評価値正規化部58bにおける正規化の数値範囲は、0〜100に限定されるものではなく、複数の評価値の累積値を一定の値に正規化できるものであればよい。例えば、数値範囲は、0〜1、0〜10等の範囲としてもよい。
The numerical value range for normalization in the evaluation
また、評価値正規化部58bにおいて累積対象とする評価値は、評価値算出部58aにおいて得られたすべての評価値を累積するものとしてもよいし、一部の評価値を累積するものとしてもよい。例えば、電子ゲームにおいて選択可能なすべてのキャラクタの使用を考慮して実際に電子ゲームに適用されるキャラクタの使用を決定したい場合には評価値算出部58aにおいて得られたすべての評価値を累積して正規化された累積値を算出する。また、例えば、電子ゲームにおいて所定基準値未満の評価値となったキャラクタの使用は避けて実際に電子ゲームに適用されるキャラクタの使用を決定したい場合には当該基準値以上の評価値のみを累積して正規化された累積値を算出してもよい。
The evaluation values to be accumulated in the evaluation
基準範囲設定部58cは、評価値正規化部58bにおいて正規化された累積値に対して処理を選択するための基準範囲を設定する。基準範囲は、評価値正規化部58bにおける正規化された累積値の数値範囲内に設定される。AIエージェント42は、正規化された累積値において基準範囲に含まれる評価値に対応するキャラクタの使用のみを選択することができる。すなわち、基準範囲は、電子ゲームにおいてAIエージェント42が選択できるキャラクタの使用の範囲を決定する。
The reference
例えば、図11に示すように、評価値の累積値を0〜100の数値範囲に正規化する処理が行われた場合、基準範囲は0〜100の範囲内において40〜80に設定される。この場合、AIエージェント42は、当該基準範囲40〜80に含まれる評価値に対応するキャラクタの使用(1:キャラクタAをマスB4に配置),(5:キャラクタBをマスB4に配置),(3:キャラクタAをマスD2に配置)のうちいずれか1つを実際に適用するキャラクタの使用として決定できる。
For example, as shown in FIG. 11, when the process of normalizing the cumulative value of the evaluation values into the numerical range of 0 to 100 is performed, the reference range is set to 40 to 80 within the range of 0 to 100. In this case, the
処理決定部58dは、電子ゲームで実際に適用される処理の決定が行われる。決定される処理は、例えば、電子ゲームにおいてどのキャラクタをどのマスに配置するか等の処理である。処理決定部58dは、基準範囲設定部58cで設定された基準範囲に該当する評価値に対応する処理を電子ゲームに適用する処理として決定する。具体的には、基準範囲設定部58cで設定された基準範囲から所定の確率分布にしたがって選択値を選択し、当該選択値に該当する評価値に対応するキャラクタの使用を実際に適用されるキャラクタの使用として選択する。
The
例えば、評価値について正規化された累積値に対する基準範囲の全範囲に亘って均一な確率分布に基づいて選択値を決定する。正規化された累積値に対する基準範囲が40〜80に設定されている場合、図12に示すように、当該基準範囲の全範囲に亘って均一な確率分布に基づいて選択値を決定する。そして、正規化された累積値において当該選択値に該当する評価値に対応するキャラクタの使用(5:キャラクタBをマスB4に配置する)を実際に電子ゲームに適用するキャラクタの使用として選択する。すなわち、基準範囲の全範囲からランダムに選択値を決定し、当該選択値に対応するキャラクタの使用を実際に電子ゲームに適用するキャラクタの使用として選択する。 For example, the selection value is determined based on a uniform probability distribution over the entire range of the reference range for the cumulative value normalized for the evaluation value. When the reference range for the normalized cumulative value is set to 40 to 80, as shown in FIG. 12, the selection value is determined based on a uniform probability distribution over the entire reference range. Then, the use of the character corresponding to the evaluation value corresponding to the selected value in the normalized cumulative value (5: character B is placed in the square B4) is selected as the use of the character actually applied to the electronic game. That is, the selection value is randomly determined from the entire range of the reference range, and the use of the character corresponding to the selection value is selected as the use of the character actually applied to the electronic game.
本実施の形態のように、正規化された累積値に対して基準範囲を設定することによって、当該基準範囲に該当する複数通りの候補からキャラクタの使用が選択されることになり、電子ゲームにおけるAIエージェント42の強さを調節することができる。
As in the present embodiment, by setting the reference range for the normalized cumulative value, the use of the character is selected from a plurality of candidates that fall within the reference range. The strength of the
ここで、電子ゲームの難易度に応じて基準範囲の設定が変更できるようにしてもよい。例えば、図13に示すように、対戦相手のユーザ(プレイヤ)が初心者である場合には基準範囲を0以上30未満に設定し、中級者である場合には基準範囲を30以上60未満に設定し、上級者である場合には基準範囲を60以上90未満に設定し、最上級者である場合には基準範囲を90以上100以下に設定してもよい。これによって、初心者に対しては正規化された累積値に含まれる評価値のうち相対的に低い評価値に対応するキャラクタの使用が選択され、上級になるにしたがって相対的により高い評価値に対応するキャラクタの使用が選択されるようにすることができる。 Here, the setting of the reference range may be changed according to the difficulty level of the electronic game. For example, as shown in FIG. 13, when the opponent user (player) is a beginner, the reference range is set to 0 or more and less than 30, and when the user is an intermediate player, the reference range is set to 30 or more and less than 60. However, the reference range may be set to 60 or more and less than 90 for advanced users, and the reference range may be set to 90 or more and 100 or less for advanced users. As a result, for beginners, the use of the character corresponding to the relatively low evaluation value of the evaluation values included in the normalized cumulative value is selected, and the higher the evaluation value, the higher the evaluation value. The use of the character to play can be selected.
具体的には、電子ゲームのプレイを開始する際等にプレイヤ端末14からユーザ(プレイヤ)が希望するレベル(難易度)の入力を受けて、当該入力結果をゲームサーバ16へ送信することによって、ゲームサーバ16において当該レベルに応じた基準範囲を設定するようにすればよい。また、統計データ生成部64において得られた統計データ44aに基づいて基準範囲を設定するようにしてもよい。例えば、AIエージェント42とユーザ(プレイヤ)との対戦における過去の勝率に応じて基準範囲を設定するようにしてもよい。
Specifically, by receiving an input of a level (difficulty level) desired by the user (player) from the
また、図14に示すように、基準範囲の幅を変更できるようにしてもよい。基準範囲の幅は、AIエージェント42によって選択され得るキャラクタの使用の選択幅に対応する。したがって、基準範囲の幅を拡げることによって、AIエージェント42が毎回適用するキャラクタの使用のばらつきも拡がり、AIエージェント42の強さに変化を持たせることができる。一方、基準範囲の幅を狭めることによって、AIエージェント42が毎回適用するキャラクタの使用のばらつきは小さくなり、AIエージェント42を一定の強さに安定させることができる。なお、基準範囲の代わりに1つの基準値を設定して、AIエージェント42の強さを完全に一定に維持するようにしてもよい。
Further, as shown in FIG. 14, the width of the reference range may be changed. The width of the reference range corresponds to the selection width of the use of the character that can be selected by the
具体的には、電子ゲームのプレイを開始する際等にプレイヤ端末14を用いてユーザ(プレイヤ)に電子ゲームをプレイするときに希望する強さの安定性の入力を受けて、当該入力結果をゲームサーバ16へ送信することによって、ゲームサーバ16において当該安定性に応じて基準範囲の幅を設定するようにすればよい。また、統計データ生成部64において得られた統計データ44aに基づいて基準範囲の幅を設定するようにしてもよい。例えば、AIエージェント42とユーザ(プレイヤ)との対戦における過去の勝率の変動に応じて基準範囲の幅を設定するようにしてもよい。
Specifically, when the user (player) receives an input of stability of desired strength when playing an electronic game using the
また、基準範囲は、電子ゲームのプレイの経過時間に応じて変更できるようにしてもよい。例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲がより高い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42がより強くなったかのように調整することができる。また、例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲がより低い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42が疲れによって弱くなったかのように調整することができる。また、例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲の幅がより広い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42が疲れによって選択にぶれが生じたかのように調整することができる。また、例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲の幅がより狭い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42の集中力が高まって選択にぶれが生じ難くなったかのように調整することができる。
Further, the reference range may be changed according to the elapsed time of playing the electronic game. For example, it is preferable to set the reference range to a higher numerical range as the elapsed time of playing the electronic game becomes longer. As a result, as the playing time of the electronic game becomes longer, it is possible to make an adjustment as if the
また、基準範囲の全域に亘って均一な確率分布にしたがってランダムに選択値を決定することによって、基準範囲に含まれる複数のキャラクタの使用のいずれかがランダムに選択される。これによって、基準範囲で設定されるAIエージェント42の強さの範囲内において強さにばらつきを持たせることができ、AIエージェント42においてより人間に近い自然な振る舞いを実現することができる。
Further, by randomly selecting the selection value according to a uniform probability distribution over the entire reference range, any one of the plurality of characters included in the reference range is randomly selected. As a result, the strength can be varied within the strength range of the
なお、基準範囲に設定する確率分布は特に限定されるものではない。例えば、図15に示すように、基準範囲の最大値において最大確率を有する正規分布に基づいて選択範囲から選択値を決定するようにしてもよい。この場合、設定された基準範囲においてより評価値が高いキャラクタの使用が選択され易くなり、より評価値が低いキャラクタの使用は選択され難くなる。したがって、AIエージェント42の強さをほぼ一定に維持しつつ、ときどき誤った選択をするような仕様を実現することができる。また、例えば、図16に示すように、基準範囲の最小値において最大確率を有する正規分布に基づいて選択範囲から選択値を決定するようにしてもよい。この場合、設定された基準範囲においてより評価値が低いキャラクタの使用が選択され易くなり、より評価値が高いキャラクタの使用は選択され難くなる。したがって、AIエージェント42の強さをほぼ低いレベルに維持しつつ、ときどき評価値の高い選択をするような仕様を実現することができる。
The probability distribution set in the reference range is not particularly limited. For example, as shown in FIG. 15, the selection value may be determined from the selection range based on the normal distribution having the maximum probability at the maximum value of the reference range. In this case, it becomes easier to select the use of a character having a higher evaluation value within the set reference range, and it becomes difficult to select the use of a character having a lower evaluation value. Therefore, it is possible to realize a specification that sometimes makes an erroneous selection while maintaining the strength of the
また、正規分布の中心値や標準偏差を変更できるようにしてもよい。例えば、電子ゲームのプレイを開始する際等にプレイヤ端末14からユーザ(プレイヤ)が希望するレベルの入力を受けて、当該入力結果をゲームサーバ16へ送信することによって、ゲームサーバ16において当該レベルに応じて正規分布の中心値や標準偏差を設定するようにすればよい。中心値を変更することによってAIエージェント42の相対的な強さを調節することができ、標準偏差を変更することによってAIエージェント42の相対的な安定性を調節することができる。
Further, the center value and standard deviation of the normal distribution may be changed. For example, by receiving an input of a level desired by the user (player) from the
また、AIエージェント42によってNPCとして複数のプレイヤを模擬することもできる。この場合、模擬する複数のプレイヤ毎に基準範囲を設定し、基準範囲の各々についてキャラクタの使用を決定することによって模擬する複数のプレイヤ毎にレベルや安定性を調整することができる。
Further, the
なお、本実施の形態では、評価値を昇順に並べて累積値を算出して当該累積値を正規化する処理としたが、評価値を降順に並べて累積値を算出して当該累積値を正規化する処理としてもよい。この場合、正規化された累積値において低い値ほど評価値の高いキャラクタの使用が選択されることになる。 In the present embodiment, the evaluation values are arranged in ascending order to calculate the cumulative value and normalize the cumulative value. However, the evaluation values are arranged in descending order to calculate the cumulative value and normalize the cumulative value. The processing may be performed. In this case, use of a character having a higher evaluation value is selected as the value is lower in the normalized cumulative value.
また、上記実施の形態では、評価値正規化部58bにおいて評価値の累積値を所定の数値範囲に正規化するものとしたが、評価値の累積値に応じて基準範囲を正規化するように変形してもよい。
In the above embodiment, the evaluation
図17は、当該変形例におけるAI対戦処理部58の構成を示す。基準範囲設定部58cでは、予め定められた数値範囲において基準となる基準範囲を設定する。例えば、予め定められた数値範囲を0〜100として基準となる基準範囲を30以上60以下に設定する。基準範囲正規化部58eでは、基準範囲設定部58cで定められた基準範囲を評価値算出部58aにおいて算出された評価値の累積値に応じて正規化する。例えば、図18に示すように、評価値の累積値が300である場合、当該累積値の範囲0〜300と基準範囲がとり得る予め定められた数値範囲0〜100とが一致するように基準範囲設定部58cで定められた基準範囲を3倍して90以上180以下に正規化する。
FIG. 17 shows the configuration of the AI
なお、当該変形例においても、上記実施の形態と同様に基準範囲を設定変更できるようにしてもよい。例えば、電子ゲームの難易度に応じて基準範囲やその幅を設定変更したり、電子ゲームのプレイの経過時間に応じて基準範囲を設定変更したりするようにしてもよい。 Note that, also in this modification, the reference range may be set and changed as in the above-described embodiment. For example, the reference range and its width may be set and changed according to the degree of difficulty of the electronic game, or the reference range may be set and changed according to the elapsed time of playing the electronic game.
本実施形態に係るゲームシステム10の概要は以上の通りである。本実施形態によれば、表現学習部54によって各キャラクタが特徴ベクトルで表現された上で、教師あり学習部56あるいは強化学習部60によりAIエージェント42の学習が行われる。これにより、AIエージェント42の学習をより効率的に行うことが可能となっている。具体的には、上述の通り、キャラクタを表現するベクトルの次元の圧縮による学習のための演算量の低減、及び学習の汎化が実現される。
The outline of the
また、本実施形態では、学習されたAIエージェント42とユーザ(プレイヤ)又はAIエージェント42同士の対戦において適切な強さを発揮するようにすることができる。すなわち、学習されたAIエージェント42によって得られるキャラクタの使用に対する評価値に基づいてAIエージェント42を適切な強さに設定することが可能となる。これによって、電子ゲームをプレイするユーザ(プレイヤ)により高い満足感を与えることができる。
Further, in the present embodiment, it is possible to exert appropriate strength in the battle between the learned
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。 Although the embodiment according to the present invention has been described above, the present invention is not limited to the above embodiment, and various modifications can be made without departing from the spirit of the present invention.
10 ゲームシステム、12 プランナ端末、12a,14a,50 制御部、12b,14b,30 通信部、12c,14c 入力部、12d,14d 表示部、12e,14e,32 記憶部、14 プレイヤ端末、16 ゲームサーバ、34 キャラクタDB、36 プレイヤログDB、38 分散表現DB、40 AIログDB、42 AIエージェント、44 統計データ群、44a 統計データ、52 プレイヤログ収集部、54 表現学習部、56 教師あり学習部、58 AI対戦処理部、58a 評価値算出部、58b 評価値正規化部、58c 基準範囲設定部、58d 処理決定部、58e 基準範囲正規化部、60 強化学習部、62 AIログ収集部、64 統計データ生成部、66 表示制御部。 10 game system, 12 planner terminal, 12a, 14a, 50 control section, 12b, 14b, 30 communication section, 12c, 14c input section, 12d, 14d display section, 12e, 14e, 32 storage section, 14 player terminal, 16 game Server, 34 character DB, 36 player log DB, 38 distributed expression DB, 40 AI log DB, 42 AI agent, 44 statistical data group, 44a statistical data, 52 player log collection unit, 54 expression learning unit, 56 supervised learning unit , 58 AI battle processing unit, 58a evaluation value calculation unit, 58b evaluation value normalization unit, 58c reference range setting unit, 58d process determination unit, 58e reference range normalization unit, 60 reinforcement learning unit, 62 AI log collection unit, 64 Statistical data generator, 66 Display controller.
Claims (15)
前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、
を備えることを特徴とする情報処理装置。 In an electronic game using a plurality of objects, a strategy evaluation means that allows machine learning to evaluate a strategy on an electronic game for use of the objects as an evaluation value,
Obtaining the output result of the evaluation value for the use of the object that is applicable in the electronic game using the strategy evaluation means, the evaluation value corresponding to the reference range in the cumulative value obtained by arranging the evaluation values in ascending order or descending order. Strategy determining means for determining the use of the object to be actually applied to the electronic game from the use of the corresponding object,
An information processing apparatus comprising:
前記戦略決定手段は、前記累積値を所定の範囲に正規化し、当該正規化された累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定することを特徴とする情報処理装置。 The information processing apparatus according to claim 1, wherein
The strategy determining unit normalizes the cumulative value to a predetermined range, and uses the object corresponding to the evaluation value corresponding to the reference range in the normalized cumulative value from the use of the object to be actually applied to the electronic game. An information processing device characterized by determining use.
前記戦略決定手段は、前記基準範囲を所定の範囲に正規化し、前記累積値において当該正規化された基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定することを特徴とする情報処理装置。 The information processing apparatus according to claim 1, wherein
The strategy determining means normalizes the reference range to a predetermined range, and uses the object corresponding to an evaluation value corresponding to the normalized reference range in the cumulative value to actually apply the object to an electronic game. An information processing device, characterized in that the use of the information processing device is determined.
前記戦略評価手段は、電子ゲームにおける過去のプレイ履歴を用いて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせたものであることを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 3,
The strategy evaluation means is machine learning for evaluating a strategy in an electronic game for use of the object as an evaluation value by using a past play history in an electronic game. ..
前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値のすべてを用いて前記累積値を算出することを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 4,
The information processing apparatus, wherein the strategy determining means calculates the cumulative value by using all of the evaluation values for use of the object applicable in an electronic game using the strategy evaluating means.
前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の一部のみを用いて前記累積値を算出することを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 4,
The information processing apparatus, wherein the strategy determining means calculates the cumulative value by using only part of the evaluation values for use of the object applicable in the electronic game using the strategy evaluating means.
前記基準範囲は、電子ゲームの難易度に応じて設定変更が可能であることを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 6,
An information processing apparatus, wherein the reference range can be set and changed according to a difficulty level of an electronic game.
前記基準範囲の幅は変更可能であることを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 7,
An information processing apparatus, wherein the width of the reference range is changeable.
前記基準範囲は、電子ゲームのプレイの経過時間に応じて設定変更されることを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 8,
An information processing apparatus, wherein the reference range is set and changed according to an elapsed time of playing an electronic game.
前記基準範囲を複数設定し、前記基準範囲の各々に対する前記オブジェクトの使用を決定することによって複数のプレイヤによる電子ゲームのプレイの戦略を決定することを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 9,
An information processing apparatus, wherein a plurality of the reference ranges are set, and a strategy of playing an electronic game by a plurality of players is determined by determining the use of the object for each of the reference ranges.
前記戦略決定手段は、前記基準範囲に該当する評価値から均一な確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 10, wherein
The strategy determining means determines the use of the object corresponding to the evaluation value selected according to the uniform probability distribution from the evaluation values corresponding to the reference range as the use of the object to be actually applied to the electronic game. An information processing device characterized by:
前記戦略決定手段は、前記基準範囲に該当する評価値から所定の確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することを特徴とする情報処理装置。 The information processing apparatus according to any one of claims 1 to 10,
The strategy determining means determines the use of the object corresponding to the evaluation value selected according to a predetermined probability distribution from the evaluation values corresponding to the reference range as the use of the object actually applied to the electronic game. An information processing device characterized by:
前記確率分布は、前記基準範囲の最大値又は最小値において確率分布の最大値をとる正規分布であることを特徴とする情報処理装置。 The information processing apparatus according to claim 12,
The information processing apparatus, wherein the probability distribution is a normal distribution having the maximum value of the probability distribution at the maximum value or the minimum value of the reference range.
複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせた戦略評価手段と、
前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、
して機能させることを特徴とする情報処理プログラム。 Computer,
In an electronic game using a plurality of objects, a strategy evaluation means that causes machine learning to evaluate a strategy on an electronic game for use of the objects as an evaluation value,
Obtaining the output result of the evaluation value for the use of the object applicable in the electronic game by using the strategy evaluation means, the evaluation value corresponding to the reference range in the cumulative value obtained by arranging the evaluation values in ascending order or descending order Strategy determining means for determining the use of the object to be actually applied to an electronic game from the use of the corresponding object,
An information processing program characterized by causing it to function.
前記戦略学習工程で学習されたエージェントを用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定工程と、
をコンピュータによって実行することを特徴とする情報処理方法。
In an electronic game using a plurality of objects, a strategy learning step of performing machine learning for evaluating a strategy on the electronic game for use of the objects as an evaluation value,
Using the agent learned in the strategy learning step, obtain the output result of the evaluation value for the use of the object that is applicable in the electronic game, and arrange the evaluation value in the ascending or descending order to obtain a total value within the reference range. A strategy determining step of determining the use of the object actually applied to the electronic game from the use of the object corresponding to the corresponding evaluation value,
An information processing method, characterized in that the method is executed by a computer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019007461A JP7299709B2 (en) | 2019-01-21 | 2019-01-21 | Information processing device, information processing program and information processing method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019007461A JP7299709B2 (en) | 2019-01-21 | 2019-01-21 | Information processing device, information processing program and information processing method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020115957A true JP2020115957A (en) | 2020-08-06 |
JP7299709B2 JP7299709B2 (en) | 2023-06-28 |
Family
ID=71891594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019007461A Active JP7299709B2 (en) | 2019-01-21 | 2019-01-21 | Information processing device, information processing program and information processing method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7299709B2 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7021382B1 (en) | 2021-04-19 | 2022-02-16 | 株式会社Cygames | How to generate a trained model to predict the action the user chooses, etc. |
WO2024116387A1 (en) * | 2022-12-01 | 2024-06-06 | 日本電信電話株式会社 | Information processing device, information processing method, and information processing program |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH114969A (en) * | 1997-06-16 | 1999-01-12 | Konami Co Ltd | Game device, game method, and readable recording medium |
JP2018110744A (en) * | 2017-01-12 | 2018-07-19 | 株式会社コナミデジタルエンタテインメント | Game control device, game system, and program |
-
2019
- 2019-01-21 JP JP2019007461A patent/JP7299709B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH114969A (en) * | 1997-06-16 | 1999-01-12 | Konami Co Ltd | Game device, game method, and readable recording medium |
JP2018110744A (en) * | 2017-01-12 | 2018-07-19 | 株式会社コナミデジタルエンタテインメント | Game control device, game system, and program |
Non-Patent Citations (1)
Title |
---|
今井 哲也 ,吉用 雅弥,寺井 秀一,藤田 智弘,山内 党紀: "リアルタイムGAをめざすGAプロセッサ・アーキテクチャと要素プロセッサのVLSI設計", JOURNAL OF SIGNAL PROCESSING 信号処理, vol. 8, no. 4, JPN6022055849, 4 March 2008 (2008-03-04), JP, pages 323 - 334, ISSN: 0004958355 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7021382B1 (en) | 2021-04-19 | 2022-02-16 | 株式会社Cygames | How to generate a trained model to predict the action the user chooses, etc. |
WO2022224932A1 (en) * | 2021-04-19 | 2022-10-27 | 株式会社Cygames | Method for generating trained model for predicting action to be selected by user |
JP2022164964A (en) * | 2021-04-19 | 2022-10-31 | 株式会社Cygames | Method, etc. for creating learned model for predicting action that user selects |
WO2024116387A1 (en) * | 2022-12-01 | 2024-06-06 | 日本電信電話株式会社 | Information processing device, information processing method, and information processing program |
Also Published As
Publication number | Publication date |
---|---|
JP7299709B2 (en) | 2023-06-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6612306B2 (en) | Information processing apparatus and information processing program | |
Andrade et al. | Dynamic game balancing: An evaluation of user satisfaction | |
Pfau et al. | Enemy within: Long-term motivation effects of deep player behavior models for dynamic difficulty adjustment | |
US11504627B2 (en) | Game system, server system, terminal and method of executing game that provides advantageous effect to team | |
Togelius et al. | Characteristics of generatable games | |
JP2019050938A (en) | Information processing system, information processing device, information processing server, information processing program, and information processing method | |
JP7299709B2 (en) | Information processing device, information processing program and information processing method | |
Bailey et al. | An experimental testbed to enable auto-dynamic difficulty in modern video games | |
Koesnaedi et al. | Implementation drunkard’s walk algorithm to generate random level in roguelike games | |
JP2024037952A (en) | Game system, server, program and lottery event execution method | |
US10780351B2 (en) | Information processing device and information processing program | |
Fürnkranz | Recent advances in machine learning and game playing | |
Wang et al. | Hearthstone AI: Oops to well played | |
Norton et al. | Monsters of Darwin: A strategic game based on artificial intelligence and genetic algorithms | |
JP6967680B1 (en) | Game server, game program, information processing method | |
Francillette et al. | Automated Difficulty Assessment Model for Platformer Games: A Comprehensive Approach | |
Thawonmas et al. | Identification of player types in massively multiplayer online games | |
JP7417451B2 (en) | Electronic game information processing device and electronic game information processing program | |
JP2019197592A (en) | Information processor and information processing program | |
US20090270178A1 (en) | Method and apparatus for developing video game elements with automatic game element evaluation | |
Ferguson | Machine learning arena | |
JP7516688B1 (en) | Information processing system, information processing device, program, and information processing method | |
Foong et al. | Interactive procedural generation for items in role-playing game | |
JP2019136575A (en) | Information processing device and information processing program | |
KR102633350B1 (en) | Electronic device and method for providing information related to game |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211119 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20221109 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230110 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230606 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230616 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7299709 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |