Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7299709B2 - Information processing device, information processing program and information processing method - Google Patents
[go: Go Back, main page]

JP7299709B2 - Information processing device, information processing program and information processing method - Google Patents

Information processing device, information processing program and information processing method Download PDF

Info

Publication number
JP7299709B2
JP7299709B2 JP2019007461A JP2019007461A JP7299709B2 JP 7299709 B2 JP7299709 B2 JP 7299709B2 JP 2019007461 A JP2019007461 A JP 2019007461A JP 2019007461 A JP2019007461 A JP 2019007461A JP 7299709 B2 JP7299709 B2 JP 7299709B2
Authority
JP
Japan
Prior art keywords
information processing
electronic game
strategy
evaluation
reference range
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.)
Active
Application number
JP2019007461A
Other languages
Japanese (ja)
Other versions
JP2020115957A (en
Inventor
拓真 吉村
純 奥村
健 岡田
一樹 田中
奨平 宮下
亮 岸本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
DeNA Co Ltd
Original Assignee
DeNA Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by DeNA Co Ltd filed Critical DeNA Co Ltd
Priority to JP2019007461A priority Critical patent/JP7299709B2/en
Publication of JP2020115957A publication Critical patent/JP2020115957A/en
Application granted granted Critical
Publication of JP7299709B2 publication Critical patent/JP7299709B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electrically Operated Instructional Devices (AREA)

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 that provide an electronic game.

従来、電子ゲームを提供する情報処理装置が知られている。このような情報処理装置によって提供される電子ゲームとしては、キャラクタやカードといった複数のオブジェクト(ゲーム内オブジェクト)を使用する電子ゲームが知られている。その一例として、プレイヤが複数のオブジェクトを使用しながら、コンピュータあるいは他のプレイヤである対戦相手と戦う対戦ゲームがある。 2. Description of the Related Art Conventionally, information processing apparatuses that provide electronic games are 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. One example is a competitive game in which a player uses a plurality of objects to fight against an opponent who is a computer or another player.

一方、近年、機械学習の研究が盛んに行われている。例えば、多層のニューラルネットワークを用いたディープラーニングに関する研究が行われている。このようなディープラーニングを用いて、電子ゲームをプレイする人工知能(AI;Artificial Intelligence)エージェントを学習させ、従来よりも高い性能を有する(すなわちゲームが「うまい」)AIエージェントが実現されている。例えば、非特許文献1には、囲碁をプレイするAIエージェントに適用されたディープニューラルネットワークに関する技術が開示されている。 On the other hand, in recent years, research on machine learning has been actively conducted. For example, research is being conducted on deep learning using multi-layer neural networks. Such deep learning is used to train an artificial intelligence (AI) agent that plays an electronic game, and an AI agent that has higher performance than before (that is, is "good at playing games") is realized. For example, Non-Patent Document 1 discloses a technology related to a deep neural network applied to an AI agent playing Go.

David Silver, et al, “Mastering the Game of Go with Deep Neural Networks and Tree Search”Nature 529,484-489,(28 January 2016)David Silver, et al, “Mastering the Game of Go with Deep Neural Networks and Tree Search”Nature 529,484-489,(28 January 2016)

対戦型ゲームにおいて、AI等によって得られた評価値に基づいて仮想の対戦相手(NPC)としてユーザ(プレイヤ)がプレイする際に興趣を感じさせるためには適切な強さに設定できることが望まれる。例えば、ユーザ(プレイヤ)が初心者である場合にはNPCが強すぎると電子ゲームに対する興味を失ってしまうことがある。一方、熟練度が高いユーザ(プレイヤ)の場合にはNPCが弱すぎると電子ゲームに対する満足感が得られないことがある。 In a competitive game, it is desirable to be able to set an appropriate strength in order to make the user (player) feel interesting when playing as a virtual opponent (NPC) based on the evaluation value obtained by AI or the like. . For example, a beginner user (player) 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.

本発明は、複数のオブジェクトを使用する電子ゲームをプレイする人工知能エージェントにおいて適切な強さを発揮できる技術を提供することを目的とする。 SUMMARY OF THE INVENTION It is an object of the present invention to provide a technique that allows an artificially intelligent agent playing an electronic game using a plurality of objects to exhibit appropriate strength.

本発明の1つの態様は、複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせた戦略評価手段と、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、を備えることを特徴とする情報処理装置である。 According to one aspect of the present invention, in an electronic game using a plurality of objects, a strategy evaluation means that performs machine learning for evaluating a strategy in the electronic game for using the objects as an evaluation value, and the strategy evaluation means. Obtain the output result of the evaluation value for the use of the object applicable in the electronic game using the electronic game, arrange the evaluation values in ascending or descending order, and add up the cumulative value of the object corresponding to the evaluation value falling within the reference range. and strategy determining means for determining the use of the object to be actually applied to the electronic game from the use.

ここで、前記戦略決定手段は、前記累積値を所定の範囲に正規化し、当該正規化された累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定することが好適である。 Here, the strategy determination means normalizes the cumulative value to a predetermined range, and actually applies 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 preferred 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 preferred to determine the use of said object.

また、前記戦略評価手段は、電子ゲームにおける過去のプレイ履歴を用いて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせたものであることが好適である。 Moreover, it is preferable that the strategy evaluation means performs machine learning for evaluating a strategy in the electronic game for using the object as an evaluation value using a past play history in the electronic game.

また、前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値のすべてを用いて前記累積値を算出することが好適である。 In addition, it is preferable that the strategy determination means calculates the cumulative value using all evaluation values for use of the object that can be applied in the electronic game using the strategy evaluation means.

また、前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の一部のみを用いて前記累積値を算出することが好適である。 Moreover, it is preferable that the strategy determination means calculates the cumulative value using only a part of the evaluation values for the use of the object that can be applied in the electronic game using the strategy evaluation means.

また、前記基準範囲は、電子ゲームの難易度に応じて設定変更が可能であることが好適である。 Moreover, it is preferable that the reference range can be changed according to the difficulty level of the electronic game.

また、前記基準範囲の幅は変更可能であることが好適である。 Also, it is preferable that the width of the reference range is changeable.

また、前記基準範囲は、電子ゲームのプレイの経過時間に応じて設定変更されることが好適である。 Further, it is preferable that the reference range is changed according to the elapsed time of playing the electronic game.

また、前記基準範囲を複数設定し、前記基準範囲の各々に対する前記オブジェクトの使用を決定することによって複数のプレイヤによる電子ゲームのプレイの戦略を決定することが好適である。 Further, it is preferable to determine a strategy for playing the electronic game by a plurality of players by setting a plurality of reference ranges and determining use of the object for each of the reference ranges.

また、前記戦略決定手段は、前記基準範囲に該当する評価値から均一な確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することが好適である。 Also, the strategy determination 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 actually applied to the electronic game. It is preferable to

また、前記戦略決定手段は、前記基準範囲に該当する評価値から所定の確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することが好適である。ここで、前記確率分布は、前記基準範囲の最大値又は最小値において確率分布の最大値をとる正規分布であることが好適である。 Further, the strategy determination 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. It is preferable to Here, it is preferable that the probability distribution is a normal distribution that takes the maximum value of the probability distribution at the maximum value or the minimum value of the reference range.

本発明の別の態様は、コンピュータを、複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせた戦略評価手段と、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、して機能させることを特徴とする情報処理プログラムである。 According to another aspect of the present invention, a strategy evaluation means that causes a computer to perform machine learning for evaluating, as an evaluation value, a strategy in an electronic game for using the objects in an electronic game using a plurality of objects; An output result of an evaluation value for use of the object applicable in the electronic game is obtained using the evaluation means, and the evaluation values are arranged in ascending or descending order and summed up to correspond to the evaluation value corresponding to the reference range. An information processing program characterized by functioning as strategy determining means for determining the use of the object to be actually applied to the electronic game from the use of the object.

本発明の別の態様は、複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせる戦略学習工程と、前記戦略学習工程で学習されたエージェントを用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定工程と、を備えることを特徴とする情報処理方法である。 Another aspect of the present invention is a strategy learning step for performing machine learning for evaluating a strategy in the electronic game for using the objects as an evaluation value in an electronic game using a plurality of objects, and learning in the strategy learning step Obtaining output results of evaluation values for the use of the object applicable in the electronic game using the agent obtained, and arranging the evaluation values in ascending or descending order and totaling them to correspond to the evaluation value corresponding to the reference range. and a strategy determination step of determining the use of the object to be actually applied to the electronic game from the use of the object to be executed.

本発明によれば、複数のオブジェクトを使用する電子ゲームをプレイする人工知能エージェントにおいて適切な強さを発揮できる情報処理装置及び情報処理プログラムを提供することができる。 ADVANTAGE OF THE INVENTION According to this invention, the information processing apparatus and information processing program which can demonstrate appropriate strength in the artificial intelligence agent who plays the electronic game which uses several objects can be provided.

本発明の実施の形態におけるゲームシステムの構成概略図である。1 is a schematic configuration diagram of a game system according to an embodiment of the present invention; FIG. 本発明の実施の形態におけるゲームシステムが提供するゲームのゲーム画面の例を示す図である。It is a figure which shows the example of the game screen of the game which the game system in embodiment of this invention provides. 本発明の実施の形態におけるプランナ端末の構成概略図である。1 is a schematic configuration diagram of a planner terminal according to an embodiment of the present invention; FIG. 本発明の実施の形態におけるプレイヤ端末の構成概略図である。1 is a schematic configuration diagram of a player terminal according to an embodiment of the present invention; FIG. 本発明の実施の形態におけるゲームサーバの構成概略図である。1 is a schematic configuration diagram of a game server according to an embodiment of the present invention; FIG. キャラクタDBの内容例を示す図である。It is a figure which shows the example of the content of character DB. プレイヤログDBの内容例を示す図である。It is a figure which shows the example of the content of player log DB. 本発明の実施の形態におけるAI対戦処理部の構成概略図である。FIG. 4 is a schematic configuration diagram of an AI battle processing unit according to the embodiment of the present invention; 本発明の実施の形態におけるキャラクタの使用と評価値との関係を示す図である。It is a figure which shows the relationship between use of a character and an evaluation value in embodiment of this invention. 本発明の実施の形態における評価値の累積値に対する正規化処理を説明するための図である。FIG. 4 is a diagram for explaining normalization processing for the cumulative value of evaluation values in the embodiment of the present invention; 本発明の実施の形態における基準範囲の設定例を示す図である。It is a figure which shows the example of a setting of the reference range in embodiment of this invention. 本発明の実施の形態におけるキャラクタの使用の選択処理を説明するための図である。FIG. 10 is a diagram for explaining selection processing for using a character according to the embodiment of the present invention; 本発明の実施の形態における基準範囲の設定例を示す図である。It is a figure which shows the example of a setting of the reference range in embodiment of this invention. 本発明の実施の形態における基準範囲の設定例を示す図である。It is a figure which shows the example of a setting of the reference range in embodiment of this invention. 本発明の実施の形態におけるキャラクタの使用の選択処理を説明するための図である。FIG. 10 is a diagram for explaining selection processing for using a character according to the embodiment of the present invention; 本発明の実施の形態におけるキャラクタの使用の選択処理を説明するための図である。FIG. 10 is a diagram for explaining selection processing for using a character according to the embodiment of the present invention; 本発明の変形例におけるAI対戦処理部の構成概略図である。FIG. 11 is a schematic diagram of the configuration of an AI battle processing unit in a modified example of the present invention; 本発明の変形例における基準範囲の設定例を示す図である。It is a figure which shows the example of a setting of the reference range in the modification of this invention.

以下、本発明の実施形態について説明する。 Embodiments of the present invention will be described below.

図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 game system 10 according to this embodiment. The game system 10 is provided by a developer of an electronic game (hereinafter simply referred to as "this game") provided by the game system 10, more specifically, a planner who is a creator of objects (characters) used in this game. It includes a planner terminal 12 to be used, a player terminal 14 to be used by a player of this game, and a game server 16 as an information processing device. The planner terminal 12 and the game server 16 and the player terminal 14 and the game server 16 are connected via a communication line 18 so as to be able to communicate with each other. The communication line 18 is configured by, for example, the Internet or a local area network (LAN). Although one planner terminal 12 and one player terminal 14 are shown in FIG. 1, a plurality of each may be provided.

ゲームシステム10においては、プランナがプランナ端末12を用いてゲームサーバ16にアクセスすることで、オブジェクトの作成を含む本ゲームの開発を行うことができる。また、ユーザ(プレイヤ)がプレイヤ端末14を用いてゲームサーバ16にアクセスすることで、ユーザはNPC(Non Player Character)との電子ゲームの対戦を行うことができる。また、ゲームサーバ16においてNPC(Non Player Character)同士を対戦させることもできる。 In the game system 10, the planner can use the planner terminal 12 to access the game server 16, thereby developing the game including creating objects. In addition, by accessing the game server 16 using the player terminal 14, the user (player) can play an electronic game against an NPC (Non Player Character). Also, NPCs (Non Player Characters) can be played against each other in the game server 16 .

ここで、本ゲームの内容について説明する。図2に、プレイヤ端末14に表示されるゲーム画面の例が示されている。本ゲームは、複数のオブジェクトとしての複数のキャラクタを使用して、敵プレイヤと対戦を行うものである。敵プレイヤとしては、自プレイヤ以外の他のプレイヤであってもよいし、コンピュータ(ゲームサーバ16)であってもよい。具体的には、ゲームフィールドとしての、複数のマスが定義された盤20上に、オセロ(登録商標)の要領で自プレイヤと敵プレイヤとが交互にキャラクタを配置していくものである。図2においては、各マスの行が数字「1」~「6」で、列が英字「A」~「F」で示されている。 Here, the contents of this game will be explained. FIG. 2 shows an example of a game screen displayed on the player terminal 14. As shown in FIG. This game uses a plurality of characters as a plurality of objects to battle an enemy player. The enemy player may be a player other than the player, or may be a computer (game server 16). Specifically, characters are alternately arranged by the self player and the enemy player on a board 20, which serves as a game field, on which a plurality of squares are defined, in the manner of Othello (registered trademark). In FIG. 2, the rows of each square are indicated by numbers "1" to "6", and the columns are indicated by letters "A" to "F".

盤20上の白丸は自プレイヤの石(白石)を示し、黒丸は敵プレイヤの石(黒石)を示す。そして、盤20上の白丸の中にキャラクタ名(例えば「C0055」)が記載されたものは自プレイヤのキャラクタ(自キャラクタ)を示し、黒丸の中にキャラクタ名が記載されたものは敵プレイヤのキャラクタ(敵キャラクタ)を示す。2つの自キャラクタ、又は、1つの白石と1つの自キャラクタで、敵キャラクタあるいは黒石を挟み込むと、敵キャラクタあるいは黒石を白石に変化させる(ひっくり返す)ことができる。また、2つの敵キャラクタ、又は、1つの黒石と1つの敵キャラクタで、自キャラクタあるいは白石が挟み込まれると、自キャラクタあるいは白石が黒石に変化させられる。なお、通常のオセロ同様、ゲーム開始時において、盤20の中央部4つのマスには白石と黒石が2つずつ置かれていてよい。すなわち、3Cのマス及び4Dのマスには白石が、3Dのマス及び4Cのマスには黒石が置かれていてよい。 The white circles on the board 20 indicate the own player's stones (white stones), and the black circles indicate the enemy player's stones (black stones). A white circle on the board 20 with a character name (for example, "C0055") indicates the player's character (own character), and a black circle with a character name indicates the enemy player's character. Indicates a character (enemy character). When an enemy character or a black stone is sandwiched between two own characters or one white stone and one own character, the enemy character or the black stone can be changed (turned over) into a white stone. Also, when the self character or the white stone is sandwiched between two enemy characters or one black stone and one enemy character, the self character or the white stone is changed to a black stone. It should be noted that two white stones and two black stones may be placed in each of the four central squares of the board 20 at the start of the game, as in the case of ordinary Othello. That is, white stones may be placed in the 3C and 4D squares, and black stones may be placed in the 3D and 4C squares.

プレイヤは、本ゲーム内において定義された複数のキャラクタであって、当該プレイヤが取得した(本ゲーム内で使用可能となった)キャラクタの中から複数のキャラクタを選択する。例えば、本実施形態では16個のキャラクタを選択する。プレイヤによって選択された16個のキャラクタ群をデッキと呼ぶ。プレイヤは、ゲームの進行に応じて、あるいは、課金することによって新たなキャラクタを取得することができる。図2に示すように、デッキの中から選択された4つのキャラクタが画面に表示される。当該4つのキャラクタを手駒22と呼ぶ。なお、手駒22は、ゲームサーバ16によってデッキの中からランダムに選択されてもよいし、プレイヤがデッキの中から選択可能となっていてもよい。ユーザは、4つの手駒22の中から任意のキャラクタを選択し、選択したキャラクタを盤20上のマスに配置する。手駒22の中から1つのキャラクタが盤20上に配置されると、デッキの中から選択された1つのキャラクタが新たに手駒22に加えられる。 The player selects a plurality of characters from a plurality of characters defined in the game and acquired by the player (made usable in the 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 new characters as the game progresses or by charging money. As shown in FIG. 2, four characters selected from the deck are displayed on the screen. The four characters are called hand pieces 22 . The hand piece 22 may be randomly selected from the deck by the game server 16, or may be selected from the deck by the player. The user selects an arbitrary character from among the four hand pieces 22 and places the selected character on the squares on the board 20. - 特許庁When one character is placed on the board 20 from the hand piece 22, one character selected from the deck is newly added to the hand piece 22.例文帳に追加

詳細は後述するが、各キャラクタには複数のパラメータが設定されている。例えば、攻撃力、スキル効果、スキル発動条件といったパラメータが設定されている。キャラクタが盤20上に配置されると、当該キャラクタの攻撃力に応じたダメージを対戦相手に与えることができる。あるいは、当該キャラクタのスキル発動条件が満たされると、当該キャラクタが有する特殊効果としてのスキル(技)が実行され、スキル効果(あるいはスキル効果及び攻撃力)に応じたゲーム上の効果が発動される。 Although the details will be described later, each character is set with a plurality of parameters. For example, parameters such as attack power, skill effects, and skill activation conditions are set. When a character is placed on the board 20, the opponent can be dealt damage according to the attack power of the character. Alternatively, when the character's skill activation condition is satisfied, the character's special effect skill (technique) is executed, and a game effect corresponding to the skill effect (or skill effect and attack power) is activated. .

自プレイヤ及び敵プレイヤにはそれぞれHP(ヒットポイント)が設定されている。図2においては、自プレイヤの最大HPが250であり、現在のHPが180であることが示されている。キャラクタが盤20上に配置されたことや、スキルを実行することなどによって対戦相手のHPを減らすことができる。また、キャラクタのスキルによってHPが回復できるようになっていてもよい。そして、先にHPが0になった方が負けであり、他方が勝ちとなる。 HP (hit points) are set for each of the self player and the enemy player. FIG. 2 shows that the player's maximum HP is 250 and the current HP is 180. In FIG. The opponent's HP can be reduced by placing a character on the board 20 or by executing a skill. Also, HP may be recovered by the character's skill. The one whose HP reaches 0 first loses, and the other wins.

このように、ゲームシステム10により提供されるゲームは、プレイヤが複数のキャラクタを使用しながら対戦相手と対戦を行うゲームである。 In this way, the game provided by the game system 10 is a game in which the player uses a plurality of characters to battle against opponents.

図3には、プランナ端末12の構成概略図が示されている。プランナ端末12は、例えば一般的なコンピュータであってよい。 FIG. 3 shows a schematic diagram of the configuration of the planner terminal 12. As shown in FIG. Planner terminal 12 may be, for example, a general computer.

制御部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 control section 12a includes, for example, a CPU (Central Processing Unit) or a microcomputer, and controls each section of the planner terminal 12 according to a program stored in a storage section 12e, which will be described later. The communication unit 12b includes, for example, a network adapter and the like, and has a function of communicating with the game server 16 via the communication line 18. FIG. The input unit 12c includes, for example, a mouse, a keyboard, or a touch panel. The input unit 12c is for inputting a planner's instruction to the planner terminal 12. FIG. The display unit 12d includes, for example, a liquid crystal display, and displays various screens. In particular, a game development screen or the like is displayed on the display unit 12d. The storage unit 12e includes, for example, a hard disk, a RAM (Random Access Memory), or a ROM (Read Only Memory). A program for operating each part of the planner terminal 12 is stored in the storage part 12e. Alternatively, the storage unit 12e stores various control data or various processing result data.

図4には、プレイヤ端末14の構成概略図が示されている。本実施形態においては、プレイヤ端末14としてはスマートフォンやタブレット端末といった携帯型の端末が用いられるが、プレイヤ端末14は据え置き型のコンピュータであってもよい。 FIG. 4 shows a schematic diagram of the configuration of the player terminal 14. As shown in FIG. In this embodiment, a portable terminal such as a smart phone or a tablet terminal is used as the player terminal 14, but the player terminal 14 may be a stationary computer.

制御部14aは、例えばCPUあるいはマイクロコンピュータなどを含んで構成され、後述の記憶部14eに記憶されたゲームのクライアントプログラムに従ってプレイヤ端末14の各部を制御するものである。通信部14bは、例えばネットワークアダプタなどを含んで構成され、通信回線18を介してゲームサーバ16と通信する機能を有するものである。入力部14cは、例えばタッチパネルあるいはボタンなどを含んで構成される。入力部14cは、プレイヤの指示をプレイヤ端末14に入力するためのものである。表示部14dは、例えば液晶ディスプレイなどを含んで構成され、各種画面を表示するものである。特に、表示部14dにはゲーム画面などが表示される。記憶部14eは、例えばRAMあるいはROMなどを含んで構成される。記憶部14eには、ゲームのクライアントプログラムが記憶される。あるいは、記憶部14eには、各種の制御データあるいは各種のゲーム処理結果データなどが記憶される。 The control section 14a includes, for example, a CPU or a microcomputer, and controls each section of the player terminal 14 according to a game client program stored in a storage section 14e, which will be described later. The communication unit 14b includes, for example, a network adapter and the like, and has a function of communicating with the game server 16 via the communication line 18. FIG. The input unit 14c includes, for example, a touch panel or buttons. The input unit 14c is for inputting player instructions to the player terminal 14 . The display unit 14d includes, for example, a liquid crystal display, and displays various screens. In particular, a game screen or the like is displayed on the display unit 14d. The storage unit 14e includes, for example, a RAM or a ROM. The storage unit 14e stores a game client program. Alternatively, the storage unit 14e stores various control data, various game processing result data, and the like.

図5には、ゲームサーバ16の構成概略図が示されている。 FIG. 5 shows a schematic diagram of the configuration of the game server 16. As shown in FIG.

通信部30は、例えばネットワークアダプタなどを含んで構成され、通信回線18を介してプランナ端末12及びプレイヤ端末14と通信する機能を有するものである。記憶部32は、例えばハードディスク、RAM、あるいはROMなどを含んで構成される。記憶部32には、情報処理プログラムとしての、ゲームのホストプログラムが記憶される。当該ホストプログラムが実行されることで、ゲームが進行すると共に、ゲームサーバ16の各部が動作する。また、図5に示される通り、記憶部32には、キャラクタDB34、プレイヤログDB36、分散表現DB38、AIログDB40、AIエージェント42、及び、複数の統計データ44aからなる統計データ群44が記憶される。 The communication unit 30 includes, for example, a network adapter, etc., and has a function of communicating with the planner terminal 12 and the player terminal 14 via the communication line 18 . The storage unit 32 includes, for example, a hard disk, RAM, or ROM. The storage unit 32 stores a game host program as an information processing program. By executing the host program, the game progresses and each part of the game server 16 operates. 5, the storage unit 32 stores a character DB 34, a player log DB 36, a distributed expression DB 38, an AI log DB 40, an AI agent 42, and a statistical data group 44 consisting of a plurality of statistical data 44a. be.

キャラクタDB34は、本ゲームにおいて(すなわちホストプログラムによって)定義され、本ゲーム内で自プレイヤあるいは敵プレイヤが使用可能なキャラクタに関するデータが格納されたデータベースである。具体的には、キャラクタDB34には、各キャラクタに設定された各パラメータが格納されている。なお、本ゲームにおいては、千数百のキャラクタを使用することが可能となっており、また、新規キャラクタが逐次追加されていく仕様になっている。 The character DB 34 is a database that stores data relating to characters that are defined in this game (that is, by the host program) and that can be used by the player or enemy players in this game. Specifically, each parameter set for each character is stored in the character DB 34 . In addition, in this game, more than a thousand characters can be used, and new characters are added one by one.

図6に、キャラクタDB34の内容例が示されている。図6においては、キャラクタDB34がテーブル形式で示されているが、キャラクタDB34のデータ形式はこれに限られるものではない。図6においては、1つのレコードが1つのキャラクタに対応している。本実施形態では、各キャラクタは、キャラクタ名、当該キャラクタの特徴を示す属性、当該キャラクタの入手困難度を示すレア度、当該キャラクタが盤20上に配置されたときに対戦相手に与えるダメージの基準となる攻撃力、スキル名、当該キャラクタのスキルが発動する条件を示すスキル発動条件、及び、スキルが発動したときの効果であるスキル効果のパラメータを有している。なお、スキル効果の欄にある「通常攻撃」とは、キャラクタが盤20上に配置され、スキルを発動せずに攻撃力の値に基づいて対戦相手にダメージを与えることを意味する。 FIG. 6 shows an example of the contents of the character DB 34. As shown in FIG. Although the character DB 34 is shown in a table format in FIG. 6, the data format of the character DB 34 is not limited to this. In FIG. 6, one record corresponds to one character. In this embodiment, each character has a character name, an attribute indicating the characteristics of the character, a rarity indicating the degree of difficulty in obtaining the character, and a reference for damage given to the opponent when the character is placed on the board 20. , a skill name, a skill activation condition that indicates the condition for activating the skill of the character, and a skill effect parameter that is the effect when the skill is activated. "Normal attack" in the skill effect column means that the character is placed on the board 20 and damages the opponent based on the attack power value without activating the skill.

これらのパラメータはプランナによって定義することができる。もちろん、パラメータの項目としては、これらに限られず、各キャラクタは、その他の項目に対するパラメータを有していてもよい。 These parameters can be defined by the planner. Of course, the parameter items 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 this embodiment, the condition for activating the skill of each character is, for example, "HP is 5% or less of maximum HP" or "There are 3 or more own characters with attribute P1 on the board." are stipulated in the Game State Conditions. Therefore, it is difficult for the player to appropriately select the characters to be included in the deck because the skill activation conditions for each character are defined by the game situation conditions. In other words, it is not easy for the player to grasp the probability of the character activating the skill by looking at the skill activation conditions of the character.

図5に戻り、プレイヤログDB36、分散表現DB38、及びAIログDB40には、それぞれ各種データが格納される。これらのデータベースに格納されるデータの詳細については後述する。 Returning to FIG. 5, the player log DB 36, the distributed representation DB 38, and the AI log DB 40 each store various data. Details of the data stored in these databases will be described later.

AIエージェント42は、本ゲームをプレイする人工知能プログラムである。AIエージェント42は、戦略評価手段として機能する。AIエージェント42は、後述のディープラーニングを用いた方法によって学習される。AIエージェント42の学習手法の詳細については後述する。本実施形態におけるAIエージェント42は、多層ニューラルネットワークを含んで構成される。多層ニューラルネットワークは、各種パラメータ(層構造、各層におけるニューロン構造、各ニューロンの重みあるいはバイアスなど)により定義されるため、記憶部32は、これらのパラメータが記憶される。 AI agent 42 is an artificial intelligence program that plays the game. The AI agent 42 functions as strategy evaluation means. The AI agent 42 is learned by a method using deep learning, which will be described later. The details of the learning method of the AI agent 42 will be described later. The AI agent 42 in this embodiment includes a multilayer neural network. Since the multilayer neural network is defined by various parameters (layer structure, neuron structure in each layer, weight or bias of each neuron, etc.), the storage unit 32 stores these parameters.

統計データ44aは、キャラクタの使用結果に関する統計データである。本実施形態においては、統計データ44aはキャラクタ毎に生成され、各キャラクタに対応した複数の統計データ44aが統計データ群44である。なお、統計データ44aは、後述の統計データ生成部64により生成されるものであり、その詳細については後述する。 The statistical data 44a is statistical data relating to the character usage results. In this embodiment, the statistical data 44a is generated for each character, and the statistical data group 44 is a plurality of statistical data 44a corresponding to each character. The statistical data 44a is generated by the statistical data generating section 64, which will be described later, and the details thereof will be described later.

制御部50は、例えばCPU、GPU(Graphics Processing Unit)あるいはマイクロコンピュータなどを含んで構成され、記憶部32に記憶されたゲームのホストプログラムに従ってゲームサーバ16の各部を制御する。また、図5に示される通り、制御部50は、ホストプログラムによって、プレイヤログ収集部52、表現学習部54、教師あり学習部56、AI対戦処理部58、強化学習部60、AIログ収集部62、統計データ生成部64、及び、表示制御部66としても機能する。以下、制御部50が有するこれらの機能について説明する。 The control section 50 includes, for example, a CPU, a GPU (Graphics Processing Unit), or a microcomputer, and controls each section of the game server 16 according to a game host program stored in the storage section 32 . In addition, as shown in FIG. 5, the control unit 50 includes a player log collection unit 52, an expression learning unit 54, a supervised learning unit 56, an AI battle processing unit 58, a reinforcement learning unit 60, an AI log collection unit, and a host program. 62 , statistical data generator 64 , and display controller 66 . These functions of the control unit 50 will be described below.

プレイヤログ収集部52は、本ゲームに関するプレイヤのゲーム進行履歴を示すデータであるプレイヤログを取得して、プレイヤログDB36に格納する。プレイヤログ収集部52は、プレイヤによるゲームプレイが終了した時、あるいはゲームプレイ中にプレイヤログを取得する。ちなみに、ここでいうプレイヤには、本ゲームの開発者も含まれていてよく、プレイヤログ収集部52は、開発者によるテストプレイに関するログを取得するようにしてもよい。いずれにしても、プレイヤログは、人間による実際のゲームプレイに関するログである。 The player log collection unit 52 acquires a player log, which is data indicating the player's game progress history regarding this game, and stores it in the player log DB 36 . The player log collection unit 52 acquires the player log when the player finishes playing the game or during the game play. Incidentally, the player here may include the developer of the game, and the player log collection unit 52 may acquire logs relating to test play by the developer. In any event, player logs are logs of actual game play by humans.

図7に、プレイヤログDB36の内容例が示されている。図7においては、プレイヤログDB36もテーブル形式で示されているが、プレイヤログDB36のデータ形式はこれに限られるものではない。上述の通り、本ゲームは第1プレイヤと第2プレイヤとが交互にキャラクタを盤20上に配置していくものであるから、プレイヤログDB36には、「ターン数」、当該ターンで第1プレイヤ又は第2プレイヤが盤20上に配置したキャラクタを示す「配置キャラクタ」、当該ターンで当該キャラクタが配置された場所を示す「配置場所」、当該ターンで相手の石又は敵キャラクタをひっくり返した枚数を示す「ひっくり返した枚数」、当該ターンで配置されたキャラクタのスキルが発動したか否かを示す「スキル発動」、及び、当該スキル発動により生じた効果(例えばダメージ量)を示す「スキル効果値」の項目を含む。もちろん、図7に示された項目は一例であり、プレイヤログにはその他の項目が含まれていてもよい。例えば、キャラクタの通常攻撃によって相手に与えた実績ダメージ量などの項目が含まれていてもよい。 FIG. 7 shows an example of the contents of the player log DB 36. As shown in FIG. Although the player log DB 36 is also shown in a table format in FIG. 7, the data format of the player log DB 36 is not limited to this. As described above, in this game, the first player and the second player alternately place characters on the board 20. Therefore, the player log DB 36 stores the "number of turns" and Or "arranged character" indicating the character arranged on the board 20 by the second player, "arranged place" indicating the place where the character was arranged in the turn, the number of opponent's stones or enemy characters overturned in the turn. , "skill activation" indicating whether or not the skill of the character placed in the turn was activated, and "skill effect" indicating the effect caused by the activation of the skill (for example, damage value” item. Of course, the items shown in FIG. 7 are an example, and the player log may include other items. For example, items such as the actual amount of damage dealt to the opponent by the normal attack of the character may be included.

このように、プレイヤログには、第1プレイヤあるいは第2プレイヤが各キャラクタを用いた(つまり盤20上に置いた)場合における使用結果(「ひっくり返した枚数」、「スキル発動」、あるいは「スキル効果値」)が含まれている。 In this way, in the player log, the results of use ("the number of characters turned over", "skill activation", or " Skill effect value") is included.

表現学習部54は、プレイヤログDB36に格納された、ゲームログとしてのプレイヤログに基づいて、表現学習を行う。これにより、キャラクタDB34に登録された各キャラクタの特徴を表す特徴ベクトルを学習する。すなわち、表現学習部54は、本ゲームで用いられる各キャラクタの分散表現を学習する。表現学習部54により学習された各キャラクタの特徴ベクトル(分散表現)は、分散表現DB38に格納される。また、表現学習部54は、プレイヤログに代えて、あるいはプレイヤログと併せて、後述するAI対戦処理部58によるAIエージェント42によるゲーム進行履歴を示す、ゲームログとしてのAIログを用いて表現学習を行ってもよい。 The expression learning unit 54 performs expression learning based on the player log as the game log stored in the player log DB 36 . Thereby, the feature vector representing the feature of each character registered in the character DB 34 is learned. That is, the expression learning unit 54 learns distributed expressions of each character used in the game. The feature vector (distributed representation) of each character learned by the representation learning unit 54 is stored in the distributed representation DB 38 . Also, the expression learning unit 54 uses an AI log as a game log, which indicates a game progress history by the AI agent 42 by the AI battle processing unit 58 to be described later, instead of the player log or in combination with the player log. may be performed.

本実施形態に係る特徴ベクトルは、例えば5次元のベクトルであり、各要素は本ゲームにおける戦略上の特徴(例えば、「角に置きたい」、「序盤に使いたい」など)を示すものである。 The feature vector according to this embodiment is, for example, a five-dimensional vector, and each element indicates a strategic feature in the game (for example, "I want to put it in the corner", "I want to use it in the early stages", etc.). .

表現学習部54は、例えばニューラルネットワークから構成される表現学習用の学習器を用いて表現学習を行う。具体的には、プレイヤログのうち、あるキャラクタが使用される前のゲーム状態(盤20上の石あるいはキャラクタの配置状態など)と、当該キャラクタが使用された結果(次状態)とに基づいて、当該キャラクタの特徴ベクトルの各要素の値を学習していく。 The expression learning unit 54 performs expression learning using a learning device for expression learning constituted by, for example, a neural network. Specifically, in the player log, based on the game state (stones on the board 20 or the placement state of the character, etc.) before a certain character is used, and the result of using the character (next state). , the value of each element of the feature vector of the character is learned.

このように、各キャラクタを分散表現することで、多数のキャラクタをより低次元のベクトルで表現することが可能となる。また、本ゲームにおける戦略上の特徴が似ているキャラクタが、似た特徴ベクトルで表現されることになる。なお、表現学習の方法としては、様々な既知の学習方法を用いることができる。 In this way, by representing each character in a distributed manner, it is possible to represent a large number of characters with a lower-dimensional vector. Also, characters with similar strategic features in this game are represented by similar feature vectors. Various known learning methods can be used as the method of learning expressions.

教師あり学習部56は、プレイヤログDB36に格納されたプレイヤログと、表現学習部54が学習した各キャラクタの特徴ベクトルとを少なくとも用いて、AIエージェント42に各キャラクタの使用に関する戦略を機械学習させる。教師あり学習部56は、後述する強化学習部60と併せて戦略学習手段として機能する。 The supervised learning unit 56 uses at least the player log stored in the player log DB 36 and the feature vector of each character learned by the expression learning unit 54 to cause the AI agent 42 to machine-learn a strategy for using each character. . The supervised learning unit 56 functions as a strategy learning means together with the reinforcement learning unit 60 described later.

ここで、各キャラクタの使用に関する戦略とは、あるゲーム状態において、どのような特徴を有するキャラクタを使用すべきか、あるいは、キャラクタを盤20上のどの位置に配置すべきかなどを含む戦略である。 Here, the strategy regarding the use of each character is a strategy including what kind of characteristics the character should have or where the character should be placed on the board 20 in a certain game state.

具体的には、教師あり学習部56は、あるゲーム時点における盤面上あるいは手駒内に存在するキャラクタの特徴ベクトル、配置位置、ターン数、行動可能手、ヒットポイントといったゲーム状態、及び行動情報(特定のキャラクタをあるマスに配置すること)などを入力とし、入力されたゲーム状態における入力された行動情報の評価値を出力とした学習データを用いてAIエージェント42を学習させる。なお、当該評価値は、プレイヤログに基づいて予め算出される。すなわち、教師あり学習部56は教師あり学習によってAIエージェント42を学習させる。 Specifically, the supervised learning unit 56 acquires the game state such as feature vectors, arrangement positions, number of turns, available hands, hit points, and action information (specific The AI agent 42 is trained using the learning data obtained by inputting an input such as arranging a character in a certain square, etc., and outputting an evaluation value of the input action information in the input game state. Note that the evaluation value is calculated in advance based on the player log. That is, the supervised learning unit 56 makes the AI agent 42 learn by supervised learning.

教師あり学習部56における学習においては、各キャラクタが特徴ベクトルで表現した上で学習を行うから、各キャラクタを個別にラベル付けした場合に比して、学習における演算量を低下させることができる。また、特徴が似ているキャラクタは、似た特徴ベクトルで表現されているから、あるキャラクタに関する学習が、当該キャラクタに似たキャラクタに関する学習をすることになる。つまり、学習の汎化の効果が期待できる。 In learning in the supervised learning unit 56, each character is represented by a feature vector and then learned, so the amount of computation in learning can be reduced compared to the case where each character is individually labeled. Also, since characters with similar features are represented by similar feature vectors, learning about a certain character results in learning about characters similar to the character in question. In other words, the effect of learning generalization can be expected.

AI対戦処理部58は、教師あり学習部56によって学習された、あるいは、後述の強化学習部60によってさらに学習されたAIエージェント42を利用して対戦処理を行う。すなわち、AI対戦処理部58は、戦略学習手段である教師あり学習部56及び後述の強化学習部60によって学習されたAIエージェント42を用いた電子ゲームに対する戦略決定手段として機能する。 The AI battle processing unit 58 performs battle processing using the AI agent 42 learned by the supervised learning unit 56 or further learned by the reinforcement learning unit 60 described later. In other words, the AI battle processing unit 58 functions as a strategy decision means for an electronic game using the AI agent 42 trained by the supervised learning unit 56 which is the strategy learning means and the reinforcement learning unit 60 which will be described later.

AI対戦処理部58では、AIエージェント42とユーザ(プレイヤ)との対戦処理を行う。また、AI対戦処理部58は、AIエージェント42同士を対戦させる処理を行うようにしてもよい。対戦においては、デッキに入れるキャラクタの選択からAIエージェント42に任せてもよい。AI対戦処理部58における対戦処理については後述する。 The AI battle processing unit 58 performs battle processing between the AI agent 42 and the user (player). Also, the AI battle processing unit 58 may perform processing for making the AI agents 42 battle each other. In battle, the AI agent 42 may be left to select the characters to be put into the deck. The battle processing in the AI battle processing unit 58 will be described later.

強化学習部60は、AIエージェント42を強化するための学習である強化学習を行う。強化学習とは、教師あり学習とは異なる手法であり、強化学習としては例えばQ学習などを用いることができる。具体的には、強化学習においては、あるゲーム状態からのAIエージェント42が選択した一連の行動の結果(例えば勝ちあるいは負け)に基づいてAIエージェント42に報酬が与えられ、AIエージェント42は、当該報酬に基づいて取るべき行動を学習する。 The reinforcement learning unit 60 performs reinforcement learning, which is learning for strengthening the AI agent 42 . Reinforcement learning is a method different from supervised learning, and Q-learning, for example, can be used as reinforcement learning. Specifically, in reinforcement learning, AI agent 42 is rewarded based on the outcome of a series of actions (e.g., winning or losing) selected by AI agent 42 from a certain game state, and AI agent 42 Learn what actions to take based on rewards.

本実施形態においては、強化学習部60は、AI対戦処理部58による対戦結果に基づいて学習を行う。なお、強化学習部60は、プレイヤログDB36に格納されたプレイヤログに基づいて強化学習を行うようにしてもよい。また、強化学習部60は、強化学習において、AIエージェント42と他のNPC(Non Player Character;AIエージェント42ではないルールベースのAI)との対戦結果に基づいて学習を行うようにしてもよい。 In this embodiment, the reinforcement learning unit 60 performs learning based on the battle results from the AI battle processing unit 58 . Note that the reinforcement learning unit 60 may perform reinforcement learning based on player logs stored in the player log DB 36 . In addition, the reinforcement learning unit 60 may perform learning based on the result of a battle between the AI agent 42 and another NPC (Non Player Character; a rule-based AI that is not the AI agent 42) in reinforcement learning.

本ゲームにおいては、ゲーム状態によってAIエージェント42が取り得る行動が異なる。例えば、盤20の状態によってキャラクタを配置できる位置が異なるし、手駒22の種類によってそもそも使用できるキャラクタが異なる。したがって、本実施形態においては、あるゲーム状態とAIエージェント42が取ることができる行動とを両方入力し、入力された行動の価値を示す指標を出力するという方法で強化学習を行う。 In this game, the actions that the AI agent 42 can take differ depending on the game state. For example, the position where a character can be placed differs depending on the state of the board 20, and the characters that can be used also differ depending on the type of hand piece 22. Therefore, in this embodiment, reinforcement learning is performed by inputting both a certain game state and an action that the AI agent 42 can take, and outputting an index indicating the value of the input action.

なお、強化学習においても、表現学習部54が学習した各キャラクタの特徴ベクトルを用いながら学習するのが好適である。これにより、教師あり学習部56における効果と同様の効果を強化学習においても得ることができる。 It should be noted that, also in reinforcement learning, it is preferable to learn while using the feature vector of each character learned by the expression learning unit 54 . As a result, the same effects as those in the supervised learning unit 56 can be obtained in reinforcement learning.

本実施形態においては、教師あり学習部56及び強化学習部60の少なくとも一方が戦略学習手段に相当する。すなわち、各キャラクタの使用に関する戦略をAIエージェント42に学習させる戦略学習は、教師あり学習と強化学習のどちらか一方又は両方である。 In this embodiment, at least one of the supervised learning unit 56 and the reinforcement learning unit 60 corresponds to the strategy learning means. In other words, the strategy learning that causes the AI agent 42 to learn strategies regarding the use of each character is one or both of supervised learning and reinforcement learning.

強化学習部60において強化学習されたAIエージェント42に基づいて、AI対戦処理部58において対戦処理を行ってもよい。この場合、強化学習部60によってさらに学習されたAIエージェント42とユーザ(プレイヤ)との対戦処理を行う。また、AI対戦処理部58は、AIエージェント42同士を対戦させる処理を行うようにしてもよい。対戦においては、デッキに入れるキャラクタの選択からAIエージェント42に任せてもよい。AI対戦処理部58における評価値に基づく対戦処理については後述する。 Battle processing may be performed in the AI battle processing unit 58 based on the AI agent 42 that has undergone reinforcement learning in the reinforcement learning unit 60 . In this case, a battle process is performed between the AI agent 42 further learned by the reinforcement learning unit 60 and the user (player). Also, the AI battle processing unit 58 may perform processing for making the AI agents 42 battle each other. In battle, the AI agent 42 may be left to select the characters to be put into the deck. Battle processing based on the evaluation value in the AI battle processing unit 58 will be described later.

AIログ収集部62は、AI対戦処理部58における本ゲームのゲーム進行履歴を示し、複数のキャラクタの使用結果を含むデータであるAIログを取得して、AIログDB40に格納する。AIログはプレイヤログと同等の項目を有するため、ここではAIログの詳細な説明は省略する。プレイヤログとAIログとの差異は、プレイヤによるゲーム進行の履歴を示すものであるか、少なくともプレイヤの一方がAIエージェント42であるときのゲーム進行の履歴を示すものであるかのみである。なお、AIログ収集部62は、AIエージェント42とユーザ(プレイヤ)との対戦によるログのみならず、AIエージェント42同士の対戦やAIエージェント42とNPCとの対戦によるログをAIログとして取得するようにしてもよい。 The AI log collecting unit 62 acquires an AI log, which is data indicating the game progress history of the game in the AI battle processing unit 58 and including the results of using a plurality of characters, and stores it in the AI log DB 40 . Since the AI log has the same items as the player log, detailed description of the AI log is omitted here. The only difference between the player log and the AI log is whether it indicates the history of game progress by the player or whether it indicates the history of game progress when at least one of the players is the AI agent 42 . It should be noted that the AI log collection unit 62 acquires not only the log of the match between the AI agent 42 and the user (player), but also the log of the match between the AI agents 42 and the match between the AI agent 42 and the NPC as an AI log. can be

統計データ生成部64は、AIログDB40に格納されたAIログに基づいて、統計データ44aを生成する。上述の通り、統計データ44aは、各キャラクタに応じて生成されるものであり、各キャラクタの使用結果に関するものである。例えば、統計データ44aは、キャラクタを使用した場合における勝率を含んでいてよい。この場合、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタが使用された場合に使用したAIエージェント42が勝ったか否かを抽出して、注目キャラクタに関する勝率を算出する。 The statistical data generator 64 generates statistical data 44a based on the AI log stored in the AI log DB 40. FIG. As described above, the statistical data 44a is generated according to each character and relates to the usage result of each character. For example, the statistical data 44a may include winning percentages when using characters. In this case, the statistical data generator 64 extracts from the AI log whether or not the character of interest and the AI agent 42 used when the character of interest was used wins, and calculates the winning rate of the character of interest. .

また、統計データ44aは、キャラクタを使用した場合におけるスキルの発動確率を含んでいてよい。この場合、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタが使用された場合にスキルが発動されたか否かを抽出して、注目キャラクタに関するスキル発動確率を算出する。 In addition, the statistical data 44a may include the skill activation probability when using a character. In this case, the statistical data generator 64 extracts from the AI log the character of interest and whether or not the skill was activated when the character of interest was used, and calculates the skill activation probability of the character of interest.

また、統計データ44aは、キャラクタを使用した場合に生じた効果の分布を含んでいてよい。この場合、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタがスキルを発動した場合におけるスキル効果値を抽出して、注目キャラクタに関するスキル効果値の分布を算出する。あるいは、キャラクタを使用した場合に生じた効果には、キャラクタが通常攻撃をした場合に相手に与えたダメージ量が含まれていてもよく、すなわち、統計データ生成部64は、AIログの中から、注目キャラクタと、注目キャラクタの通常攻撃により相手に与えたダメージを抽出して、注目キャラクタの通常攻撃のダメージの分布を算出する。 Statistical data 44a may also include the distribution of effects produced when characters are used. In this case, the statistical data generation unit 64 extracts the character of interest and the skill effect values when the character of interest activates a skill from the AI log, and calculates the distribution of the skill effect values of the character of interest. Alternatively, the effect produced when using a character may include the amount of damage dealt to the opponent when the character makes a normal attack. , the character of interest and the damage inflicted to the opponent by the normal attack of the character of interest are extracted, and the distribution of the damage of the normal attack of the character of interest is calculated.

以上の通り、本実施形態においては、統計データ44aは、キャラクタを使用した場合における勝率、キャラクタを使用した場合におけるスキルの発動確率、及び、キャラクタを使用した場合に生じた効果の分布の少なくとも1つを含むものである。もちろん、統計データ44aにはその他のデータが含まれていてもよい。 As described above, in the present embodiment, the statistical data 44a includes at least one of the winning percentage when using a character, the probability of skill activation when using a character, and the distribution of effects generated when using a character. including one. Of course, the statistical data 44a may contain other data.

統計データ生成部64は、上述の処理によって、キャラクタDB34に登録された複数のキャラクタ、理想的には、全てのキャラクタについての統計データ44aを生成する。これにより統計データ群44が形成される。 The statistical data generator 64 generates statistical data 44a for a plurality of characters, ideally all characters, registered in the character DB 34 through the above-described processing. A statistical data group 44 is thus formed.

表示制御部66は、プランナ端末12からの(すなわちプランナからの)要求に従って、統計データ生成部64が生成した統計データ44aをプランナ端末12の表示部12dに表示させる。また、表示制御部66は、プレイヤ端末14からの(すなわちプレイヤからの)要求に従って、統計データ生成部64が生成した統計データ44aをプレイヤ端末14の表示部14dに表示させる。なお、表示制御部66は、開発中キャラクタに関する統計データ44aはプレイヤ端末14の表示部14dには表示させないものとする。 The display control unit 66 causes the display unit 12d of the planner terminal 12 to display the statistical data 44a generated by the statistical data generation unit 64 in accordance with a request from the planner terminal 12 (that is, from the planner). In addition, the display control unit 66 causes the display unit 14d of the player terminal 14 to display the statistical data 44a generated by the statistical data generation unit 64 in accordance with a request from the player terminal 14 (that is, from the player). Note that the display control unit 66 does not cause the display unit 14d of the player terminal 14 to display the statistical data 44a regarding the characters under development.

[AI対戦処理部]
以下、AI対戦処理部58での対戦処理について説明する。上記のとおり、AI対戦処理部58は、教師あり学習部56及び強化学習部60によって学習させたAIエージェント42を用いて、AIエージェント42とユーザ(プレイヤ)、AIエージェント42同士の対戦処理を行う。
[AI battle processing unit]
The battle processing in the AI battle processing unit 58 will be described below. As described above, the AI battle processing unit 58 uses the AI agent 42 trained by the supervised learning unit 56 and the reinforcement learning unit 60 to perform battle processing between the AI agent 42 and the user (player) and between the AI agents 42. .

AI対戦処理部58は、図8に示すように、評価値算出部58a、評価値正規化部58b、基準範囲設定部58c及び処理決定部58dを含んで構成される。 As shown in FIG. 8, the AI battle processing section 58 includes an evaluation value calculation section 58a, an evaluation value normalization section 58b, a reference range setting section 58c, and a processing determination section 58d.

評価値算出部58aでは、教師あり学習部56又は強化学習部60で学習させたAIエージェント42を適用して電子ゲームにおいて現状使用できるキャラクタに対する評価値を求める。 The evaluation value calculation unit 58a applies the AI agent 42 trained by the supervised learning unit 56 or the reinforcement learning unit 60 to obtain evaluation values for characters currently usable in the electronic game.

例えば、デッキに含まれる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, if 4 characters (characters A to D) called handpieces 22 out of 16 characters included in the deck can be placed in any one of the four squares (mass B4, B5, D2, F3), As shown in FIG. 9, there are 16 variations of character usage, in which four characters are arranged in four squares. Therefore, an evaluation value is obtained using the AI agent 42 for each of these 16 character uses. In FIG. 9, for example, character use (1) corresponds to placing character A on cell B4 and the evaluation value is 20, and character use (2) corresponds to placing character A on cell B5. The evaluation value is obtained using the AI agent 42 for each use of the character, such that the evaluation value is 15 . . .

評価値正規化部58bは、評価値を正規化する処理を行う。評価値正規化部58bは、評価値算出部58aで求められた複数の評価値を昇順に並べて累積し、当該累積値が所定の数値範囲となるように正規化処理を行う。 The evaluation value normalization unit 58b performs processing for normalizing evaluation values. The evaluation value normalization unit 58b arranges and accumulates the plurality of evaluation values obtained by the evaluation value calculation unit 58a in ascending order, and performs normalization processing so that the accumulated value falls within a predetermined numerical range.

以下、説明を簡潔にするために、評価値算出部58aにおいて5通りのキャラクタの使用のバリエーション(キャラクタの使用(1)~(5))について5つの評価値が得られた例について示す。評価値正規化部58bは、図10に示すように、5つの評価値を小さい順(昇順)に並べて累積値を求め、当該累積値が0~100の数値範囲となるように正規化する。これによって、評価値算出部58aで得られた評価値に対して正規化された累積値が得られる。 To simplify the explanation, an example in which five evaluation values are obtained for five character use variations (character use (1) to (5)) in the evaluation value calculation unit 58a will be described below. As shown in FIG. 10, the evaluation value normalization unit 58b arranges the five evaluation values in descending order (ascending order) to obtain a cumulative value, and normalizes the cumulative value so that it falls within a numerical range of 0-100. As a result, a cumulative value obtained by normalizing the evaluation value obtained by the evaluation value calculation unit 58a is obtained.

なお、評価値正規化部58bにおける正規化の数値範囲は、0~100に限定されるものではなく、複数の評価値の累積値を一定の値に正規化できるものであればよい。例えば、数値範囲は、0~1、0~10等の範囲としてもよい。 Note that the normalization numerical range in the evaluation value normalization unit 58b is not limited to 0 to 100, and may be any value that can normalize the cumulative value of a plurality of evaluation values to a constant value. For example, the numerical range may be 0-1, 0-10, and so on.

また、評価値正規化部58bにおいて累積対象とする評価値は、評価値算出部58aにおいて得られたすべての評価値を累積するものとしてもよいし、一部の評価値を累積するものとしてもよい。例えば、電子ゲームにおいて選択可能なすべてのキャラクタの使用を考慮して実際に電子ゲームに適用されるキャラクタの使用を決定したい場合には評価値算出部58aにおいて得られたすべての評価値を累積して正規化された累積値を算出する。また、例えば、電子ゲームにおいて所定基準値未満の評価値となったキャラクタの使用は避けて実際に電子ゲームに適用されるキャラクタの使用を決定したい場合には当該基準値以上の評価値のみを累積して正規化された累積値を算出してもよい。 The evaluation value to be accumulated in the evaluation value normalization unit 58b may be obtained by accumulating all evaluation values obtained by the evaluation value calculation unit 58a, or by accumulating a part of the evaluation values. good. For example, if it is desired to determine the use of a character that is actually applied to the electronic game in consideration of the use of all selectable characters in the electronic game, all the evaluation values obtained in the evaluation value calculation unit 58a are accumulated. Calculate the cumulative value normalized by Also, for example, when it is desired to avoid using characters whose evaluation values are less than a predetermined reference value in the electronic game and decide to use characters that are actually applied to the electronic game, only evaluation values equal to or higher than the reference value are accumulated. may be used to calculate the normalized cumulative value.

基準範囲設定部58cは、評価値正規化部58bにおいて正規化された累積値に対して処理を選択するための基準範囲を設定する。基準範囲は、評価値正規化部58bにおける正規化された累積値の数値範囲内に設定される。AIエージェント42は、正規化された累積値において基準範囲に含まれる評価値に対応するキャラクタの使用のみを選択することができる。すなわち、基準範囲は、電子ゲームにおいてAIエージェント42が選択できるキャラクタの使用の範囲を決定する。 The reference range setting unit 58c sets a reference range for selecting a process for the accumulated value normalized by the evaluation value normalization unit 58b. The reference range is set within the numerical range of the normalized accumulated value in the evaluation value normalization section 58b. The AI agent 42 can select only characters whose evaluation values fall within the reference range in the normalized cumulative value. That is, the reference range determines the range of uses of characters that can be selected by the AI agent 42 in the electronic game.

例えば、図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 evaluation value to a numerical range of 0-100 is performed, the reference range is set to 40-80 within the range of 0-100. In this case, the AI agent 42 uses characters corresponding to evaluation values included in the reference range 40 to 80 (1: Place character A in square B4), (5: Place character B in square B4), ( 3: Placing character A on square D2) can be determined as the use of the character that is actually applied.

処理決定部58dは、電子ゲームで実際に適用される処理の決定が行われる。決定される処理は、例えば、電子ゲームにおいてどのキャラクタをどのマスに配置するか等の処理である。処理決定部58dは、基準範囲設定部58cで設定された基準範囲に該当する評価値に対応する処理を電子ゲームに適用する処理として決定する。具体的には、基準範囲設定部58cで設定された基準範囲から所定の確率分布にしたがって選択値を選択し、当該選択値に該当する評価値に対応するキャラクタの使用を実際に適用されるキャラクタの使用として選択する。 The processing determination unit 58d determines processing that is actually applied in the electronic game. The determined process is, for example, the process of placing which character in which square in the electronic game. The processing determination unit 58d determines the processing corresponding to the evaluation value falling within the reference range set by the reference range setting unit 58c as the processing to be applied to the electronic game. Specifically, a selection value is selected according to a predetermined probability distribution from the reference range set by the reference range setting unit 58c, and the character corresponding to the evaluation value corresponding to the selection value is actually applied. Select as the use of

例えば、評価値について正規化された累積値に対する基準範囲の全範囲に亘って均一な確率分布に基づいて選択値を決定する。正規化された累積値に対する基準範囲が40~80に設定されている場合、図12に示すように、当該基準範囲の全範囲に亘って均一な確率分布に基づいて選択値を決定する。そして、正規化された累積値において当該選択値に該当する評価値に対応するキャラクタの使用(5:キャラクタBをマスB4に配置する)を実際に電子ゲームに適用するキャラクタの使用として選択する。すなわち、基準範囲の全範囲からランダムに選択値を決定し、当該選択値に対応するキャラクタの使用を実際に電子ゲームに適用するキャラクタの使用として選択する。 For example, the selection value is determined based on a uniform probability distribution over the entire reference range for the accumulated 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 range of the reference range. Then, the use of the character corresponding to the evaluation value corresponding to the selected value in the normalized cumulative value (5: Place character B on square B4) is selected as the use of the character actually applied to the electronic game. That is, a selection value is randomly determined from the entire 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 a reference range for the normalized cumulative value, use of the character is selected from a plurality of candidates corresponding to the reference range. The strength of AI agent 42 can be adjusted.

ここで、電子ゲームの難易度に応じて基準範囲の設定が変更できるようにしてもよい。例えば、図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, if the opponent user (player) is a beginner, the reference range is set to 0 or more and less than 30, and if 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 in the case of advanced players, and the reference range may be set to 90 or more and 100 or less in the case of the most advanced players. As a result, a character corresponding to a relatively low evaluation value among the evaluation values included in the normalized cumulative value is selected for beginners, and a character corresponding to a relatively higher evaluation value is selected as the advanced level is used. It is possible to select the use of characters that

具体的には、電子ゲームのプレイを開始する際等にプレイヤ端末14からユーザ(プレイヤ)が希望するレベル(難易度)の入力を受けて、当該入力結果をゲームサーバ16へ送信することによって、ゲームサーバ16において当該レベルに応じた基準範囲を設定するようにすればよい。また、統計データ生成部64において得られた統計データ44aに基づいて基準範囲を設定するようにしてもよい。例えば、AIエージェント42とユーザ(プレイヤ)との対戦における過去の勝率に応じて基準範囲を設定するようにしてもよい。 Specifically, by receiving input of a level (difficulty) desired by the user (player) from the player terminal 14 when starting to play the electronic game, etc., and transmitting the input result to the game server 16, The game server 16 may set a reference range according to the level. Also, the reference range may be set based on the statistical data 44a obtained by the statistical data generating section 64. FIG. For example, the reference range may be set according to past winning percentages in matches between the AI agent 42 and the user (player).

また、図14に示すように、基準範囲の幅を変更できるようにしてもよい。基準範囲の幅は、AIエージェント42によって選択され得るキャラクタの使用の選択幅に対応する。したがって、基準範囲の幅を拡げることによって、AIエージェント42が毎回適用するキャラクタの使用のばらつきも拡がり、AIエージェント42の強さに変化を持たせることができる。一方、基準範囲の幅を狭めることによって、AIエージェント42が毎回適用するキャラクタの使用のばらつきは小さくなり、AIエージェント42を一定の強さに安定させることができる。なお、基準範囲の代わりに1つの基準値を設定して、AIエージェント42の強さを完全に一定に維持するようにしてもよい。 Also, as shown in FIG. 14, the width of the reference range may be changed. The width of the reference range corresponds to the selection of character uses that can be selected by the AI agent 42 . Therefore, by widening the width of the reference range, the variation in the use of the character applied by the AI agent 42 every time is also widened, and the strength of the AI agent 42 can be varied. On the other hand, by narrowing the width of the reference range, variations in the use of characters applied by the AI agent 42 every time are reduced, and the AI agent 42 can be stabilized at a constant strength. Note that a single reference value may be set instead of the reference range to keep the strength of the AI agent 42 completely constant.

具体的には、電子ゲームのプレイを開始する際等にプレイヤ端末14を用いてユーザ(プレイヤ)に電子ゲームをプレイするときに希望する強さの安定性の入力を受けて、当該入力結果をゲームサーバ16へ送信することによって、ゲームサーバ16において当該安定性に応じて基準範囲の幅を設定するようにすればよい。また、統計データ生成部64において得られた統計データ44aに基づいて基準範囲の幅を設定するようにしてもよい。例えば、AIエージェント42とユーザ(プレイヤ)との対戦における過去の勝率の変動に応じて基準範囲の幅を設定するようにしてもよい。 Specifically, when starting to play the electronic game, the user (player) uses the player terminal 14 to receive an input of the stability of strength desired when playing the electronic game, and the input result is displayed. By transmitting to the game server 16, the width of the reference range may be set in the game server 16 according to the stability. Further, the width of the reference range may be set based on the statistical data 44a obtained by the statistical data generating section 64. FIG. For example, the width of the reference range may be set according to past fluctuations in winning percentages in matches between the AI agent 42 and the user (player).

また、基準範囲は、電子ゲームのプレイの経過時間に応じて変更できるようにしてもよい。例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲がより高い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42がより強くなったかのように調整することができる。また、例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲がより低い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42が疲れによって弱くなったかのように調整することができる。また、例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲の幅がより広い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42が疲れによって選択にぶれが生じたかのように調整することができる。また、例えば、電子ゲームのプレイの経過時間が長くなるほど基準範囲の幅がより狭い数値範囲になるように設定することが好適である。これによって、電子ゲームをプレイした時間が長くなるにつれて、NPCとして対戦相手となるAIエージェント42の集中力が高まって選択にぶれが生じ難くなったかのように調整することができる。 Also, 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 increases. This makes it possible to adjust as if the AI agent 42, which is the NPC's opponent, has become stronger as the electronic game has been played for a longer period of time. Also, for example, it is preferable to set the reference range to a lower numerical range as the elapsed time of playing the electronic game increases. As a result, as the electronic game is played for a longer period of time, the AI agent 42 acting as an opponent as an NPC can be adjusted as if it has become weaker due to fatigue. Also, for example, it is preferable to set the width of the reference range to a wider numerical range as the elapsed time of playing the electronic game increases. As a result, as the electronic game is played for a longer period of time, the AI agent 42, who is an opponent as an NPC, can make adjustments as if the choice has fluctuated due to fatigue. Also, for example, it is preferable to set the width of the reference range to a narrower numerical range as the elapsed time of playing the electronic game increases. As a result, as the electronic game is played for a longer period of time, the concentration of the AI agent 42, who is the opponent as an NPC, increases, and it is possible to make adjustments as if the choice is less likely to fluctuate.

また、基準範囲の全域に亘って均一な確率分布にしたがってランダムに選択値を決定することによって、基準範囲に含まれる複数のキャラクタの使用のいずれかがランダムに選択される。これによって、基準範囲で設定されるAIエージェント42の強さの範囲内において強さにばらつきを持たせることができ、AIエージェント42においてより人間に近い自然な振る舞いを実現することができる。 Also, by randomly determining a selection value according to a uniform probability distribution over the entire reference range, one of the plurality of characters included in the reference range is randomly selected. As a result, the strength of the AI agent 42 can be varied within the strength range set in the reference range, and the AI agent 42 can realize natural behavior that is more human-like.

なお、基準範囲に設定する確率分布は特に限定されるものではない。例えば、図15に示すように、基準範囲の最大値において最大確率を有する正規分布に基づいて選択範囲から選択値を決定するようにしてもよい。この場合、設定された基準範囲においてより評価値が高いキャラクタの使用が選択され易くなり、より評価値が低いキャラクタの使用は選択され難くなる。したがって、AIエージェント42の強さをほぼ一定に維持しつつ、ときどき誤った選択をするような仕様を実現することができる。また、例えば、図16に示すように、基準範囲の最小値において最大確率を有する正規分布に基づいて選択範囲から選択値を決定するようにしてもよい。この場合、設定された基準範囲においてより評価値が低いキャラクタの使用が選択され易くなり、より評価値が高いキャラクタの使用は選択され難くなる。したがって、AIエージェント42の強さをほぼ低いレベルに維持しつつ、ときどき評価値の高い選択をするような仕様を実現することができる。 Note that 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 a normal distribution having the maximum probability at the maximum value of the reference range. In this case, a character with a higher evaluation value is more likely to be selected for use within the set reference range, and a character with a lower evaluation value is less likely to be used. Therefore, while maintaining the strength of the AI agent 42 substantially constant, it is possible to realize a specification that occasionally makes an erroneous selection. Alternatively, for example, as shown in FIG. 16, the selection value may be determined from the selection range based on a normal distribution having the maximum probability at the minimum value of the reference range. In this case, a character with a lower evaluation value is more likely to be selected for use within the set reference range, and a character with a higher evaluation value is less likely to be used. Therefore, it is possible to realize a specification in which the strength of the AI agent 42 is maintained at a substantially low level while occasionally making a selection with a high evaluation value.

また、正規分布の中心値や標準偏差を変更できるようにしてもよい。例えば、電子ゲームのプレイを開始する際等にプレイヤ端末14からユーザ(プレイヤ)が希望するレベルの入力を受けて、当該入力結果をゲームサーバ16へ送信することによって、ゲームサーバ16において当該レベルに応じて正規分布の中心値や標準偏差を設定するようにすればよい。中心値を変更することによってAIエージェント42の相対的な強さを調節することができ、標準偏差を変更することによってAIエージェント42の相対的な安定性を調節することができる。 Also, the center value and standard deviation of the normal distribution may be changed. For example, when starting to play an electronic game, a level desired by a user (player) is input from the player terminal 14, and by transmitting the input result to the game server 16, the level is reached in the game server 16. The center value and standard deviation of the normal distribution may be set accordingly. By changing the center value, the relative strength of AI agents 42 can be adjusted, and by changing the standard deviation, the relative stability of AI agents 42 can be adjusted.

また、AIエージェント42によってNPCとして複数のプレイヤを模擬することもできる。この場合、模擬する複数のプレイヤ毎に基準範囲を設定し、基準範囲の各々についてキャラクタの使用を決定することによって模擬する複数のプレイヤ毎にレベルや安定性を調整することができる。 Also, the AI agent 42 can simulate multiple players as NPCs. In this case, it is possible to adjust the level and stability for each of the plurality of simulated players by setting a reference range for each of the plurality of simulated players and determining the use of characters for each of the reference ranges.

なお、本実施の形態では、評価値を昇順に並べて累積値を算出して当該累積値を正規化する処理としたが、評価値を降順に並べて累積値を算出して当該累積値を正規化する処理としてもよい。この場合、正規化された累積値において低い値ほど評価値の高いキャラクタの使用が選択されることになる。 In the present embodiment, the evaluation values are arranged in ascending order, the cumulative value is calculated, and the cumulative value is normalized. It is good also as a process to carry out. In this case, the lower the normalized cumulative value, the higher the evaluation value of the character to be used.

また、上記実施の形態では、評価値正規化部58bにおいて評価値の累積値を所定の数値範囲に正規化するものとしたが、評価値の累積値に応じて基準範囲を正規化するように変形してもよい。 In the above-described embodiment, the evaluation value normalization unit 58b normalizes the accumulated evaluation value to a predetermined numerical range. It can be transformed.

図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 battle processing section 58 in this modified example. The reference range setting unit 58c sets a reference range that serves as a reference within a predetermined numerical range. For example, a predetermined numerical range is set to 0 to 100, and a reference range is set to 30 or more and 60 or less. The reference range normalization unit 58e normalizes the reference range determined by the reference range setting unit 58c according to the cumulative value of the evaluation values calculated by the evaluation value calculation unit 58a. For example, as shown in FIG. 18, when the cumulative evaluation value is 300, the reference range is set so that the cumulative value range 0 to 300 matches the predetermined numerical range 0 to 100 that the reference range can take. The reference range determined by the range setting unit 58c is tripled and normalized to 90 or more and 180 or less.

なお、当該変形例においても、上記実施の形態と同様に基準範囲を設定変更できるようにしてもよい。例えば、電子ゲームの難易度に応じて基準範囲やその幅を設定変更したり、電子ゲームのプレイの経過時間に応じて基準範囲を設定変更したりするようにしてもよい。 It should be noted that the reference range may be set and changed in the modified example as well as in the above-described embodiment. For example, the setting of the reference range and its width may be changed according to the difficulty level of the electronic game, or the setting of the reference range may be changed according to the elapsed time of playing the electronic game.

本実施形態に係るゲームシステム10の概要は以上の通りである。本実施形態によれば、表現学習部54によって各キャラクタが特徴ベクトルで表現された上で、教師あり学習部56あるいは強化学習部60によりAIエージェント42の学習が行われる。これにより、AIエージェント42の学習をより効率的に行うことが可能となっている。具体的には、上述の通り、キャラクタを表現するベクトルの次元の圧縮による学習のための演算量の低減、及び学習の汎化が実現される。 The outline of the game system 10 according to this embodiment is as described above. According to this embodiment, each character is represented by a feature vector by the expression learning unit 54, and then the AI agent 42 is learned by the supervised learning unit 56 or the reinforcement learning unit 60. FIG. This enables the AI agent 42 to learn more efficiently. Specifically, as described above, reduction in the amount of computation for learning and generalization of learning are achieved by compressing the dimensions of vectors representing characters.

また、本実施形態では、学習されたAIエージェント42とユーザ(プレイヤ)又はAIエージェント42同士の対戦において適切な強さを発揮するようにすることができる。すなわち、学習されたAIエージェント42によって得られるキャラクタの使用に対する評価値に基づいてAIエージェント42を適切な強さに設定することが可能となる。これによって、電子ゲームをプレイするユーザ(プレイヤ)により高い満足感を与えることができる。 In addition, in this embodiment, it is possible to exhibit appropriate strength in a match between the learned AI agent 42 and the user (player) or between the AI agents 42 . That is, it is possible to set the AI agent 42 to an appropriate strength based on the evaluation value for character use obtained by the AI agent 42 that has been learned. As a result, users (players) who play the electronic game can be given a higher sense of satisfaction.

以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。 Although the embodiments according to the present invention have been described above, the present invention is not limited to the above embodiments, and various modifications can be made without departing from the gist 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 unit, 12b, 14b, 30 communication unit, 12c, 14c input unit, 12d, 14d display unit, 12e, 14e, 32 storage unit, 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 processing 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)

複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせた戦略評価手段と、
前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、
を備えることを特徴とする情報処理装置。
Strategy evaluation means that uses machine learning to evaluate, as an evaluation value, a strategy in an electronic game for using the objects in an electronic game that uses a plurality of objects;
Using the strategy evaluation means, the output result of the evaluation value for the use of the object applicable in the electronic game is obtained, and the evaluation values are arranged in ascending or descending order and totaled to obtain the evaluation value corresponding to the reference range. a 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 device comprising:
請求項1に記載の情報処理装置であって、
前記戦略決定手段は、前記累積値を所定の範囲に正規化し、当該正規化された累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定することを特徴とする情報処理装置。
The information processing device according to claim 1,
The strategy determination means normalizes the cumulative value to a predetermined range, and determines the object actually applied 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. An information processing device characterized by determining use.
請求項1に記載の情報処理装置であって、
前記戦略決定手段は、前記基準範囲を所定の範囲に正規化し、前記累積値において当該正規化された基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定することを特徴とする情報処理装置。
The information processing device according to claim 1,
The strategy determination means normalizes the reference range to a predetermined range, and the object actually applied to the electronic game from the use of the object corresponding to the evaluation value corresponding to the normalized reference range in the accumulated value An information processing apparatus characterized by determining the use of
請求項1~3のいずれか1項に記載の情報処理装置であって、
前記戦略評価手段は、電子ゲームにおける過去のプレイ履歴を用いて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせたものであることを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 3,
The information processing apparatus, wherein the strategy evaluation means performs machine learning for evaluating a strategy in the electronic game for using the object as an evaluation value using a past play history in the electronic game. .
請求項1~4のいずれか1項に記載の情報処理装置であって、
前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値のすべてを用いて前記累積値を算出することを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 4,
The information processing apparatus, wherein the strategy determination means calculates the cumulative value using all evaluation values for use of the object applicable in the electronic game using the strategy evaluation means.
請求項1~4のいずれか1項に記載の情報処理装置であって、
前記戦略決定手段は、前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の一部のみを用いて前記累積値を算出することを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 4,
The information processing apparatus, wherein the strategy determination means calculates the cumulative value using only a part of evaluation values for use of the object applicable in the electronic game using the strategy evaluation means.
請求項1~6のいずれか1項に記載の情報処理装置であって、
前記基準範囲は、電子ゲームの難易度に応じて設定変更が可能であることを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 6,
The information processing apparatus, wherein the reference range can be changed according to the difficulty level of the electronic game.
請求項1~7のいずれか1項に記載の情報処理装置であって、
前記基準範囲の幅は変更可能であることを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 7,
The information processing apparatus, wherein the width of the reference range is changeable.
請求項1~8のいずれか1項に記載の情報処理装置であって、
前記基準範囲は、電子ゲームのプレイの経過時間に応じて設定変更されることを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 8,
The information processing apparatus, wherein the setting of the reference range is changed according to the elapsed time of playing the electronic game.
請求項1~9のいずれか1項に記載の情報処理装置であって、
前記基準範囲を複数設定し、前記基準範囲の各々に対する前記オブジェクトの使用を決定することによって複数のプレイヤによる電子ゲームのプレイの戦略を決定することを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 9,
An information processing apparatus, wherein a plurality of said reference ranges are set, and a strategy for playing an electronic game by a plurality of players is determined by determining use of said object for each of said reference ranges.
請求項1~10のいずれか1項に記載の情報処理装置であって、
前記戦略決定手段は、前記基準範囲に該当する評価値から均一な確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 10,
The strategy determination means determines the use of the object corresponding to the evaluation value selected according to a uniform 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:
請求項1~10のいずれか1項に記載の情報処理装置であって、
前記戦略決定手段は、前記基準範囲に該当する評価値から所定の確率分布に応じて選択された評価値に対応する前記オブジェクトの使用を実際に電子ゲームに適用する前記オブジェクトの使用として決定することを特徴とする情報処理装置。
The information processing device according to any one of claims 1 to 10,
The strategy determination 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:
請求項12に記載の情報処理装置であって、
前記確率分布は、前記基準範囲の最大値又は最小値において確率分布の最大値をとる正規分布であることを特徴とする情報処理装置。
The information processing device according to claim 12,
The information processing apparatus, wherein the probability distribution is a normal distribution that takes the maximum value of the probability distribution at the maximum value or the minimum value of the reference range.
コンピュータを、
複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせた戦略評価手段と、
前記戦略評価手段を用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定手段と、
して機能させることを特徴とする情報処理プログラム。
the computer,
Strategy evaluation means that uses machine learning to evaluate, as an evaluation value, a strategy in an electronic game for using the objects in an electronic game that uses a plurality of objects;
Using the strategy evaluation means, the output result of the evaluation value for the use of the object applicable in the electronic game is obtained, and the evaluation values are arranged in ascending or descending order and totaled to obtain the evaluation value corresponding to the reference range. a 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 program characterized by functioning as
複数のオブジェクトを使用する電子ゲームにおいて前記オブジェクトの使用に対する電子ゲーム上の戦略を評価値として評価するための機械学習をさせる戦略学習工程と、
前記戦略学習工程で学習されたエージェントを用いて電子ゲームにおいて適用可能である前記オブジェクトの使用に対する評価値の出力結果を得て、当該評価値を昇順又は降順に並べて合計した累積値において基準範囲に該当する評価値に対応する前記オブジェクトの使用から実際に電子ゲームに適用する前記オブジェクトの使用を決定する戦略決定工程と、
をコンピュータによって実行することを特徴とする情報処理方法。
a strategy learning step of performing machine learning for evaluating a strategy in an electronic game for using the objects as an evaluation value in an electronic game using a plurality of objects;
The agent learned in the strategy learning step is used to obtain an output result of the evaluation value for the use of the object applicable in the electronic game, and the evaluation values are arranged in ascending or descending order and totaled, and the accumulated value falls within the reference range. a strategy determination step of determining the use of the object to be actually applied to the electronic game from the use of the object corresponding to the corresponding evaluation value;
An information processing method characterized by executing by a computer.
JP2019007461A 2019-01-21 2019-01-21 Information processing device, information processing program and information processing method Active JP7299709B2 (en)

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 JP2020115957A (en) 2020-08-06
JP7299709B2 true 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)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
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.
JP7733998B2 (en) * 2021-06-09 2025-09-04 株式会社 ディー・エヌ・エー Electronic game providing system, electronic game providing method, and electronic game providing program
WO2024116387A1 (en) * 2022-12-01 2024-06-06 日本電信電話株式会社 Information processing device, information processing method, and information processing program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018110744A (en) 2017-01-12 2018-07-19 株式会社コナミデジタルエンタテインメント GAME CONTROL DEVICE, GAME SYSTEM, AND PROGRAM

Family Cites Families (1)

* Cited by examiner, † Cited by third party
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018110744A (en) 2017-01-12 2018-07-19 株式会社コナミデジタルエンタテインメント GAME CONTROL DEVICE, GAME SYSTEM, AND PROGRAM

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
今井 哲也 ,吉用 雅弥,寺井 秀一,藤田 智弘,山内 党紀,リアルタイムGAをめざすGAプロセッサ・アーキテクチャと要素プロセッサのVLSI設計,Journal of Signal Processing 信号処理,日本,信号処理学会,2008年03月04日,VOL.8 NO.4,p.323-334

Also Published As

Publication number Publication date
JP2020115957A (en) 2020-08-06

Similar Documents

Publication Publication Date Title
Denisova et al. Measuring perceived challenge in digital games: Development & validation of the challenge originating from recent gameplay interaction scale (CORGIS)
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
Szita et al. Monte-carlo tree search in settlers of catan
Schreiber et al. Game balance
JP6612306B2 (en) Information processing apparatus and information processing program
Martinez-Arellano et al. Creating AI characters for fighting games using genetic programming
Weber et al. Dynamic difficulty adjustment in digital games using genetic algorithms
Togelius et al. Characteristics of generatable games
JP7299709B2 (en) Information processing device, information processing program and information processing method
Cerny et al. Rogue-like games as a playground for artificial intelligence–evolutionary approach
Koesnaedi et al. Implementation drunkard’s walk algorithm to generate random level in roguelike games
JP7235992B2 (en) game program, game device, game system
Francillette et al. Automated difficulty assessment model for platformer games: A comprehensive approach
Bailey et al. An experimental testbed to enable auto-dynamic difficulty in modern video games
Baldominos et al. Learning levels of mario ai using genetic algorithms
US10780351B2 (en) Information processing device and information processing program
Fürnkranz Recent advances in machine learning and game playing
Zook et al. Temporal game challenge tailoring
Wang et al. Hearthstone AI: Oops to well played
JP2019197592A (en) Information processing apparatus and information processing program
JP7417451B2 (en) Electronic game information processing device and electronic game information processing program
Teoi et al. Towards Adapting a Content Orchestrator to a Different GameGenre: Generating Levels, Rules, and Narrative for Diverse Player Profiles from a Top-down Adventure to a 2D Platformer.
JP7733998B2 (en) Electronic game providing system, electronic game providing method, and electronic game providing program
JP7739516B1 (en) Information processing system, information processing device, program, and information processing method

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