Computer program, game system used therein, and control method
The computer program and game system analyze game state to provide influence information, addressing complex card game choices and improving computer opponent judgment, thus simplifying gameplay.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- KONAMI DIGITAL ENTERTAINMENT CO LTD
- Filing Date
- 2024-05-27
- Publication Date
- 2026-05-25
Smart Images

Figure 0007864366000001 
Figure 0007864366000002 
Figure 0007864366000003
Abstract
Description
Technical Field
[0001] The present invention relates to a computer program or the like applied to a computer incorporated in a game system that provides a game that progresses according to selection results in a series of selection opportunities.
Background Art
[0002] There are game systems that provide a game that progresses according to selection results in a series of selection opportunities. For example, a game system that provides a card game via a game screen including card objects is known (see, for example, Patent Document 1). In addition, Patent Document 2 exists as a prior art document related to the present invention.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Patent Document 2
Summary of the Invention
Problems to be Solved by the Invention
[0004] The card game of Patent Document 1 includes various selection opportunities regarding card objects according to predetermined rules and progresses according to the selection results in each selection opportunity. The rules of the card game may be changed as appropriate. In addition, various card games can be provided according to different rules. The card game of Patent Document 2 is an example of a card game provided according to different rules.
[0005] Card games like those described in Patent Document 1 or Patent Document 2 are often offered as competitive games. Competitive games often include a computer opponent mode (hereinafter sometimes referred to as COM opponent) for single-player mode. On the other hand, card games like those described in Patent Document 1 or Patent Document 2 include a set of choices. For example, in the card game of Patent Document 1, a set of choices is always required, such as which card to place on the duel field from the hand, the specific position where that card should be placed, whether or not to activate the card's effect, and where that effect should be activated. Therefore, a set of choices arises for these choices. The card game of Patent Document 2 is similar.
[0006] However, this kind of series of choices is likely to lead to increased complexity in gameplay. For example, it is necessary to consider the situations that arise from the combination of cards. It may also be necessary to select factors to consider based on the effects of card objects, or, in the case of a computer opponent, to devise calculation formulas. A deep understanding of the game as a whole is also required. Furthermore, card games like those described in Patent Document 1 or Patent Document 2 generally have a vast number of cards, and new cards are often added continuously.
[0007] Furthermore, a series of choices is often presented in a way that the options derived from the initial choice unfold sequentially. In this type of series of choices, considering only the initial choice in isolation may not yield an appropriate result. For example, if the effect (progression) of a card associated with a series of choices occurs after the final choice in a series of choices, if the validity of the choice in the final choice is not considered, then considering only the validity of each option in the initial choice may not lead to an appropriate judgment. In this case, a computer opponent must consider not only the candidate options in the choice opportunity they face, but also the candidate options in the final choice opportunity of the series. For this reason, games that include a series of choices have a need for a computer opponent capable of making more appropriate judgments. Moreover, this need is not limited to computer opponents; similar needs exist when computer judgment is required, such as in computer advice. Furthermore, as long as a series of choices is included, similar needs exist in games other than card games as well.
[0008] Therefore, the present invention aims to provide a computer program or the like that can acquire more appropriate influence information regarding a series of choices in a series of selection opportunities. [Means for solving the problem]
[0009] The computer program of the present invention is configured to function as an information acquisition means for acquiring game information that indicates the state of the game, which is necessary to obtain influence information regarding the influence that each selection set has on the game, by utilizing a predetermined process that outputs the influence information based on the game information, and for incorporating a computer into a game system that provides a game that includes progression according to the results of selections in a series of selection opportunities.
[0010] On the other hand, the present invention is a game system that provides a game that includes progression according to the results of selections in a series of selection opportunities, and comprises: information acquisition means for acquiring game information that indicates the state of the game, which is necessary to obtain influence information regarding the influence that each selection set has on the game, with the combination of a series of selections in the series of selection opportunities being treated as a single selection set; and influence acquisition means for acquiring the influence information for each selection set by utilizing a predetermined process that outputs the influence information based on the game information.
[0011] Furthermore, the control method of the present invention causes a computer incorporated into a game system that provides a game including progression according to the selection results in a series of selection opportunities to execute an information acquisition procedure for acquiring game information indicating the state of the game, which is necessary to obtain influence information regarding the influence that each selection set has on the game, as a single selection set formed by a series of combinations of selections in the series of selection opportunities; and an influence acquisition procedure for acquiring the influence information for each selection set by using a predetermined process that outputs the influence information based on the game information. [Brief explanation of the drawing]
[0012] [Figure 1] A diagram showing the schematic configuration of a network system to which a game system according to one embodiment of the present invention is applied. [Figure 2] A functional block diagram showing the essential components of the control system of a network system. [Figure 3] A schematic diagram showing an example of a battle screen for playing a card game. [Figure 4] A diagram illustrating an example of the steps involved in playing a card game. [Figure 5] An explanatory diagram illustrating an example of a series of choice opportunities. [Figure 6] An explanatory diagram illustrating a list of possible actions a player can take in a given situation on the battle screen. [Figure 7] An explanatory diagram illustrating an example of a method used by artificial intelligence models to calculate probability values. [Figure 8]Explanatory drawing for explaining an example of a chain. [Figure 9] Flowchart showing an example of the procedure of selection execution processing. [Figure 10] Flowchart showing an example of the procedure of selection re-determination processing. [Figure 11] Flowchart showing an example of the procedure of battle AI processing. [Figure 12] Diagram showing an overview of the system configuration of UDI. [Figure 13] Table showing the winning rate of 2000 matches against COM. [Figure 14] Table showing a part of the input features. [Figure 15] Table showing the results of 4000 matches against COM at the end of learning.
Mode for Carrying Out the Invention
[0013] (Overall Configuration) Hereinafter, a control method according to an embodiment of the present invention, a game system in which a computer program is implemented (a game system according to an embodiment of the present invention), etc. will be described with reference to the drawings. First, the overall configuration of a network system to which a game system according to an embodiment of the present invention is applied will be described with reference to FIG. 1. As shown in FIG. 1, the network system 1 is configured as a client-server type system including a plurality of user devices 3 as clients and a game server 2 connected to each user device 3 via a network NT. The game server 2 is a computer device that implements a computer program according to an embodiment of the present invention. The game server 2 functions as a game system according to an embodiment of the present invention in the network system 1.
[0014] The user device 3 is a device for daily use by the user, and is a computer device (information communication terminal device) having an information communication function via the network NT. As the user device 3, a smartphone having a communication call function or a tablet terminal may be used. The user device 3 may be a PC (abbreviation for personal computer), or may be a personal or household game machine provided as a so-called consumer game machine. Further, as the user device 3, a business-use game machine provided as a so-called arcade game machine may be used. Hereinafter, as an example, the case where a smartphone is used as the user device 3 will be described.
[0015] The user device 3 functions as a game machine by implementing a predetermined software (application). The user device 3 provides a game including progress according to the selection result in a series of selection opportunities. The user device 3 may provide an appropriate game such as a role-playing game, a simulation game, or an action game as a game machine. As an example, the user device 3 provides a battle-type game (video game) in which the user of the user device 3 and an opponent (another user including a computer) battle according to a predetermined rule via a game screen including a plurality of objects. In the battle-type game, the user and the opponent may function as members of a team, and the battle-type game may be played in a one-to-many (including the case where a plurality of users other than oneself are independent opponents as in mahjong) or many-to-many format. Hereinafter, as an example, the case where the battle-type game is played in a one-to-one format will be described.
[0016] Competitive games may be offered as either perfect information games, such as shogi or chess (both games that use pieces as objects), or imperfect information games. In contrast to perfect information games, where the content of all elements necessary for making a choice is shared with the user, imperfect information games are games in which the content of at least one element of the set of elements used by other users (including computers) (for example, the content of cards in a card game) is not shared with the user. Imperfect information games include various games such as mahjong. Below, we will describe, as an example, the case in which a card game classified as an imperfect information game is offered as a competitive game.
[0017] Game Server 2 may be configured by combining multiple server units (server devices) as appropriate, or it may be configured as a single server unit. Game Server 2 may also be configured as a cloud server utilizing cloud computing technology. Game Server 2 provides various game-related services to User Device 3. These services include analysis services. Analysis services are services that assist in the progress of the game. Specifically, analysis services analyze the impact that choices made to advance the game have on the card game. Details of the analysis services will be described later.
[0018] Game Server 2 may also provide various other services to User Device 3, such as distribution services, matchmaking services, or relay services. Distribution services distribute computer programs and various data necessary for playing games on User Device 3. Matchmaking services match users who want to cooperate or compete in the game. Relay services relay game information that should be shared between User Devices 3.
[0019] Network NT may be configured as appropriate, as long as it allows user device 3 to connect to game server 2. For example, network NT is configured to achieve network communication using the TCP / IP protocol. Typically, network NT is configured by combining the internet as a WAN and an intranet as a LAN. In the example in Figure 1, game server 2 is connected to network NT via router NTr, and user device 3 is connected via access point PP.
[0020] (Control system for network systems) Next, the main components of the control system of the network system 1 will be explained with reference to Figure 2. First, the game server 2 is provided with a control unit 21 and a storage unit 22 as a storage means. The control unit 21 is configured as a computer that combines a processor unit that performs various calculations and operation controls according to a predetermined computer program, and internal memory and other peripheral devices necessary for its operation. The processor unit may appropriately include units such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and an NPU (Neural Network Processing Unit) (including cases where each processor unit is integrated as appropriate, such as when a GPU is incorporated into the CPU).
[0021] The storage unit 22 is an external storage device implemented by a storage unit that includes a non-volatile storage medium (computer-readable storage medium) such as a hard disk array. The storage unit 22 may be configured to hold all data on a single storage unit, or it may be configured to distribute and store data across multiple storage units. The storage unit 22 records the server program PG1 and the server data SD. The server program PG1 is a computer program that causes the control unit 21 to execute the processing necessary to provide various services to the user device 3. The server program PG1 may appropriately include various programs corresponding to the processing to be executed by the control unit 21. In the example in Figure 2, the analysis program AP is shown as one example.
[0022] The analysis program AP is a computer program that causes the control unit 21 to execute various processes to realize the analysis service. The analysis program AP may be configured as appropriate; for example, it may be configured to cause the control unit 21 to execute a process that outputs analysis results based on predetermined logic (including predetermined rules such as rules). In the example in Figure 2, the analysis program AP is configured to cause the control unit 21 (e.g., a GPU) to function as an artificial intelligence model that outputs analysis results. Specifically, the analysis program AP is configured as an inference program that incorporates the trained data (parameters) AD for analysis, which is output by training a training program (for analysis) with a training dataset (for analysis).
[0023] Server data SD is data referenced by the server program PG1 in order to provide various services. Server data may include appropriate data related to various services. In the example in Figure 2, play data PD and pre-trained data AD for analysis are shown as examples. Play data PD is data that describes information about each user's past play history. Play data PD is not limited to play history and may include other information necessary for managing each user, such as various personal information including attributes such as each user's gender or address. Each user's possessions within the card game may be managed as appropriate, and are managed in play data PD as an example. Specifically, the card game is configured to grant card objects to users who meet predetermined granting conditions (such as purchase, lending, granting through lottery or game progress). Then, the card objects granted to each user (hereinafter sometimes referred to as owned cards) are managed in play data PD so that they are associated with each user.
[0024] The control unit 21 can be equipped with various logical devices through a combination of hardware resources and server program PG1 as software resources. In the example shown in Figure 2, an analysis model unit 23 and a COM battle implementation unit 25 are shown as examples.
[0025] The analysis model unit 23 is a logical device that functions as an artificial intelligence model. The analysis model unit 23 functions as an artificial intelligence model that outputs analysis results based on the analysis program AP. The analysis model unit 23 (artificial intelligence model) is realized, for example, by a combination of pre-trained data AD for analysis and the analysis program AP (the analysis program AP that is executed incorporating the pre-trained data AD for analysis), and performs various processes to realize the analysis service. Different thinking can be formed by various elements of this type of artificial intelligence model. For example, this type of artificial intelligence model tends to have different thinking depending on at least one difference in the content of the training dataset, the algorithm of the training program (in other words, the content of the pre-trained data AD for analysis), and the algorithm of the inference program. The analysis model unit 23 performs various processes related to the analysis service according to the analysis program. These processes include, for example, outputting influence information about the impact each choice has on the game based on the game situation, which shows the state of the game.
[0026] The COM battle implementation unit 25 is a logical device that performs various processes to implement computer battles (COM battles) in a card game. Card games may have various modes, one example being an AI battle mode where a player battles against an AI. When the AI battle mode is selected in a card game, the COM battle implementation unit 25 performs various processes to implement that battle. For example, in the AI battle mode, the COM battle implementation unit 25 performs a process to determine each selection in a series of selection opportunities based on the analysis results output by the analysis model unit 23. As such processes, the COM battle implementation unit 25 performs, for example, a selection execution process and a selection re-determination process. Details of the procedures for the selection execution process and the selection re-determination process will be described later.
[0027] Furthermore, the control unit 21 may be equipped with a service management unit as a logical device to implement processing related to various services, such as the aforementioned distribution service, matching service, or relay service. Similarly, input devices such as a keyboard, output devices such as a monitor, etc., may be connected to the control unit 21 as needed. However, their illustrations have been omitted.
[0028] On the other hand, the user device 3 is provided with a control unit 31 and a storage unit 32 as a storage means. The control unit 31 is configured as a computer that combines a processor unit that performs various calculations and operation controls according to a predetermined computer program with internal memory and other peripheral devices necessary for its operation. The processor unit may appropriately include units such as a CPU, GPU, and NPU (including cases where each processor unit is integrated as appropriate, such as when a GPU is built into the CPU), similar to the game server 2.
[0029] The memory unit 32 is an external storage device implemented by a storage unit that includes a non-volatile storage medium (computer-readable storage medium) such as a hard disk or semiconductor memory device. The memory unit 32 stores the game program PG2 and the game data GD. The game program PG2 is a computer program that causes the control unit 21 to execute the processing necessary to make the user device 3 function as a game device. The game data GD is data referenced by the game program PG2 for providing the game. The user device 3 may be provided with an analysis program AP from the game server 2 as appropriate, in which case the game data GD may include the analysis program AP.
[0030] Game data GD may appropriately include various types of data necessary for playing the game (including various tables), such as image data, audio data, and card data. Image data is data for displaying various images for the game. Audio data is data for playing various sounds (including background music such as songs). Card data is data that defines each card object. In the example in Figure 2, play data PD is shown as an example of such various types of data. Play data PD is provided and stored from game server 2 as needed. Also, if the analysis program AP is provided to user device 3 from game server 2, game data GD may include pre-trained data AD for analysis.
[0031] The control unit 31 is equipped with a progress control unit 33 and a data management unit 34, which are logical devices realized by combining the hardware resources of the control unit 31 and the game program PG2 as software resources. The data management unit 34 performs various processes related to the management of game data GD. For example, when a card object is assigned to a user, the data management unit 34 performs a process to reflect that card object as an owned card in the play data PD.
[0032] The progress control unit 33 performs various processes necessary for the progress of the card game. These processes include those necessary to enjoy the services provided by the game server 2. For example, the progress control unit 33 works in cooperation with the service management unit to perform processes related to matching opponents, and during a match, it performs processes to reflect the opponent's play in its own progress, and vice versa. The progress control unit 33 also performs processes to provide opportunities for choice in each turn or phase, as described later, and to switch between turns or phases.
[0033] The processes executed by the progress control unit 33 include processes for realizing the AI battle mode. For this reason, the progress control unit 33 also executes processes that are realized in cooperation with the COM battle realization unit 25 of the game server 2. For example, the progress control unit 33 executes the process of actually executing each selection determined by the COM battle realization unit 25 in the AI battle mode. As an example of such a process, the progress control unit 33 executes selection execution processing and selection re-determination processing in cooperation with the COM battle realization unit 25.
[0034] Furthermore, the progress control unit 33 generates a situation log SL that records game information necessary for analysis by the analysis model unit 23, stores it in the internal memory of the control unit 31, and also performs processing to update the situation log SL as appropriate in accordance with changes in the situation. The situation log SL may appropriately include various information about the game situation as game information. For example, the situation log SL (data) includes various information (which may be limited to some information as appropriate) for determining the situation of the card game, such as information on all card objects currently in use, information on each card object placed in the various placement locations described later, attributes of each card object (including the state of various card objects such as summoning or leaving the field area described later), life points, phase, and information on selectable options in each situation.
[0035] The user device 3 is equipped with appropriate output and input devices. In the example shown in Figure 2, a monitor MO, speaker SK, and touch sensor TS are shown as examples of output devices. All of these are general-purpose hardware installed in information and communication terminals such as smartphones. For example, the touch sensor TS is an input device that inputs a signal corresponding to the user's touch operation (operation by touching with a finger) to the control unit 31. The speaker SK is an output device for playing various sounds in response to signals from the control unit 31. The monitor MO is an output device (display device) for displaying game screens, etc., in response to signals from the control unit 31. In addition, the user device 3 may be equipped with various other devices as appropriate, such as a gyro sensor, an acceleration sensor, and a location information (e.g., GPS information) receiver.
[0036] (Game Overview) Next, an overview of the card game will be described with reference to Figures 3 and 4. The card game may be configured as any game as appropriate. As an example, the card game is configured as a video game played through a game screen that includes various areas where each card object should be placed. Alternatively, the card game may be configured to be played using a deck of cards, which is a set of card objects (a predetermined number of card objects) selected by the user from their owned cards for gameplay.
[0037] Figure 3 is a schematic diagram showing an example of a battle screen for playing a card game. The battle screen 50 is the game screen displayed when a user and an opponent play against each other using their respective deck cards. Various card objects can be placed (displayed) on the battle screen 50, but in the example of Figure 3, for the sake of explanation, regardless of type or content, face-up card objects CO (the orientation in which the user can see the contents of the card object) are shown with a dot pattern, and face-down card objects (the orientation in which the contents of the card object cannot be seen and are kept secret) are shown with a diagonal line to the right. The predetermined number of cards that make up a deck may be constant or variable, and does not have to match the number of cards in the opponent's deck.
[0038] As shown in Figure 3, the battle screen 50 includes a user area 51, a shared area 52, and an opponent area 53. The user area 51 is an area exclusively for the user. The user area 51 can be configured as appropriate. In the example in Figure 3, the user area 51 includes a field area 54, a main deck placement area 55, an extra deck placement area 56, a hand placement area 57, a graveyard area 58, an exile area EA, and a point display area LR.
[0039] Field area 54 is an area where multiple card placement areas CP (only some of the symbols are shown) are formed. Each card placement area CP is a place (area) where each card object CO from the deck cards necessary to advance the game should be placed. Card games may have various types of card object COs with different roles (uses) and effects. For example, there may be card object COs that represent monsters (hereinafter sometimes called "monster card CO1"), card object COs that represent magic (a predetermined effect) (hereinafter sometimes called "magic card CO2"), card object COs that represent traps (an effect different from magic) (hereinafter sometimes called "trap card CO3"), or card object COs that represent special effects (hereinafter sometimes called "special card CO4"). When a card object CO is placed in each card placement area CP, that card object CO actually performs its role in the game.
[0040] For example, Monster Card CO1 is assigned roles such as attacking or defending against the opponent or the opponent's Monster Card CO1. Furthermore, Monster Card CO1 can be classified into various types. As an example, Monster Card CO1 includes two types: Normal Monster Card CO1 and Extra Monster Card CO1. Normal Monster Card CO1 is a Monster Card CO1 that can be placed from the hand placement area 57 to the field area 54.
[0041] On the other hand, Extra Monster Card CO1 is a Monster Card CO1 that is summoned (called out) in exchange for Monster Card CO1 leaving Field Area 54. The placement (summoning) of Extra Monster Card CO1 is normally restricted to Common Area 52, but placement in Field Area 54 may be permitted if certain field conditions are met. For this reason, Monster Card CO1 may have the role of summoning (calling out) other Monster Card CO1 to Field Area 54, etc. Then, Monster Card CO1 placed in Card Placement CP is used to actually impart roles such as attack, defense, or summoning to the progress of the game.
[0042] Similarly, Spell Card CO2, Trap Card CO3, and Special Card CO4 are card objects CO that can be placed in the hand area 57 to the field area 54. These are placed in the card area CP and used to activate the effect indicated by each card object CO.
[0043] Multiple card placement areas CP may be appropriately arranged in the field area 54. In the example in Figure 3, the multiple card placement areas CP are arranged to form two rows: a front row 54A located closer to the opponent's area 53, and a back row 54B located behind it. The front row 54A and the back row 54B are columns formed by six card placement areas CP and five card placement areas CP, respectively, arranged side by side. There are no restrictions on which card object CO can be placed in each card placement area CP. For example, each card placement area CP may have restrictions on the types of card object CO that can be placed in it. The front row 54A and the back row 54B may be used interchangeably as appropriate, for example, depending on the types of card object CO that can be placed in them.
[0044] Specifically, the front row 54A is used as each card placement CP where a monster card CO1 should be placed among the card object CO types. However, the leftmost card placement CP of the six card placement CPs that make up the front row 54A (which can be formed as appropriate, but in the example in Figure 3 it is formed to be slightly smaller than the other card placement CPs) is an exception. The leftmost card placement CP is used as each card placement CP where a special card should be placed. In other words, the placement of card object COs such as magic cards CO2 or trap cards CO3 in the front row 54A is restricted, the placement of special cards CO4 in the front row 54A other than the leftmost card placement CP is restricted, and the placement of monster cards CO1 in the leftmost card placement CP is further restricted.
[0045] On the other hand, the back row 54B is used as card placement CPs where magic cards CO2 and trap cards CO3 should be placed. In other words, the placement of card object COs such as monster cards CO1 or special cards CO4 in the back row 54B is restricted. However, a monster card CO1 with the characteristics of a magic card CO2 (a monster card CO1 corresponding to a monster with a magic effect) may be provided, and such a monster card CO1 with a magic attribute may be allowed to be placed in the designated card placement CPs in the back row 54B (for example, the card placement CPs at both the left and right ends). In other words, a card object CO with multiple attributes may be included, and the placement of such card object COs may be allowed in both the front row 54A and the back row 54B depending on the multiple attributes.
[0046] Within the field area 54, card objects CO can be placed as appropriate according to the user's instructions, subject to the limitations of each card placement area CP. In the example in Figure 3, one monster card CO1 is placed in the third card placement area CP from the right in the front row 54A. Each card object CO may be placed in a card placement area CP facing various directions, such as vertically or horizontally, and the orientation can be used as appropriate. In the example in Figure 3, monster card CO1 is placed horizontally when used for defense and vertically when used for attack.
[0047] The hand placement area 57 is the area where card objects CO (hereinafter sometimes referred to as hand CO5) from the deck that are virtually in the player's hand should be placed (displayed). Hand CO5 are candidate card objects CO that are placed in the field area 54 (each card placement area CP). An appropriate number of hand CO5 may be placed in the hand placement area 57. In the example in Figure 3, five hand CO5 are placed in the hand placement area 57.
[0048] The Main Deck placement area 55 and the Extra Deck placement area 56 are both areas where card object COs representing the remaining deck cards (the remaining cards after deducting the card object COs for the Field area 54 and the Hand placement area 57 from the original deck cards) should be placed. However, the Main Deck placement area 55 and the Extra Deck placement area 56 have different purposes.
[0049] Specifically, the Main Deck placement area 55 is the area where card objects CO (sometimes referred to as the Deck CO6) that are candidates to be added to the Hand CO5 from the remaining deck cards should be placed. The card objects CO of the Deck CO6 are added to the Hand CO5 through the draw during the Draw Phase, which will be described later. On the other hand, the Extra Deck placement area 56 is the area where the group of card objects as a bundle of Extra Monster Cards CO1 (sometimes referred to as Extra Deck Cards CO7) should be placed. When an Extra Monster Card CO1 is summoned via a Normal Monster Card CO1, an Extra Monster Card CO1 that should be placed in the Field Area 54 is drawn from the Extra Deck Cards CO7. In other words, the remaining deck cards are divided into the Deck CO6 and the Extra Deck Cards CO7, and placed in the Main Deck placement area 55 and the Extra Deck placement area 56, respectively.
[0050] The Graveyard Area 58 is, in principle, an area for accommodating card objects CO that have left the Field Area 54. For example, a monster card CO1 will leave the Field Area 54 when it meets certain conditions (conditions that cause it to leave the Field Area 54, etc.), such as being attacked by an opponent's monster card CO1 or being summoned as an Extra Monster Card CO1. Similarly, card objects CO that perform certain effects, such as a spell card CO2 or a trap card CO3, will leave the Field Area 54 after activating their effect, depending on the card's effect. The Graveyard Area 58 is provided as a place (destination) for accommodating (placing) these card objects CO that have left the Field Area 54. The Graveyard Area 58 may be configured to display the card objects CO that have left the Field Area 54. In the example in Figure 3, the Graveyard Area 58 is configured to omit the display of card objects CO.
[0051] The Exclusion Area EA is an area for placing card objects CO that have been removed from the game. When the predetermined exclusion conditions are met, card objects CO are removed from the game and placed in the Exclusion Area EA. The Exclusion Area EA may be configured to display the card objects CO placed there, but in the example in Figure 3, it is configured to omit the display of card objects CO, similar to the Graveyard Area 58.
[0052] The point display area LR is an area for displaying the user's life points. In card games, appropriate life points may be set for both the user and the opponent. For example, both players may be set to 8000 life points, and in the example in Figure 3, the value "8000" (initial value) is displayed as the remaining amount in the point display area LR. The win / loss conditions for determining the winner and loser in a match can be set as appropriate, but are met, for example, when the opponent's life points are reduced to zero. In other words, life points function as a parameter for determining the winner and loser. Specifically, the user can reduce the opponent's life points by using monster card CO1, which is placed in the field area 54 and the common area 52, to attack. If the user can reduce the opponent's life points to zero, it is determined that the user has won, and the match ends. On the other hand, if the user's life points are reduced to zero by an attack from the opponent's monster card CO1, it is determined that the user has lost, and the match ends.
[0053] The shared area 52 is an area shared by the user and the opponent. The shared area 52 can be configured as appropriate. In the example in Figure 3, the shared area 52 has two card placement areas CP. The user's card object CO and the opponent's card object CO are placed in each card placement area CP as appropriate. As an example, placement in each card placement area CP is limited to Extra Monster Card CO1. That is, Extra Monster Card CO1 summoned from Extra Deck Card CO7 is first placed in each card placement area CP in the shared area 52, and is only allowed to be placed in the field area 54 if predetermined field conditions are met. Note that placement in each card placement area CP in the shared area 52 may be permitted without restriction, regardless of the type of card object CO.
[0054] The opponent's area 53 is an area exclusively for the opponent. The opponent's area 53 serves the same purpose for the opponent as the user area 51. For this reason, the opponent's area 53 also has a field area 54, a main deck placement area 55, an extra deck placement area 56, a hand placement area 57, a graveyard area 58, an exile area EA, and a point display area LR. Their roles are the same as those of the user area 51, so their explanation is omitted.
[0055] Figure 4 shows an example of the procedure for playing the card game in the example shown in Figure 3. As shown in Figure 4, the card game includes the user's turn and the opponent's (including the computer's) turn. The game proceeds in a so-called turn-based system, with the user and the opponent (hereinafter, when neither is distinguished, they may be referred to as players) taking turns alternately (in order). Specifically, first, as preparation for the game, processes such as shuffling the players' deck cards and placing them in the main deck placement area 55, and drawing a predetermined number of card objects CO from each player's deck cards (deck CO6) and displaying (placing) them as hand CO5 in the hand placement area 57 are performed. Once the preparation is complete, the game begins with the turn of the first player (for example, the user takes the first turn). One turn is divided into multiple phases. A phase is a concept for dividing the procedures to be performed in one turn into multiple stages according to their content and nature. In the example in Figure 4, one turn is divided into six stages from the draw phase to the end phase, but this is just one example.
[0056] In each phase, the player who has been given a turn can choose appropriate actions within the scope defined for each phase. For example, in the Draw Phase, a Card Object CO is drawn from Deck CO6, and in the Standby Phase, the effects of Card Object COs designated to be processed in that phase can be activated. In the First Main Phase, various actions are permitted, such as summoning various objects like monsters to be used in battle, setting Card Object COs with unique effects like spells and traps, or activating their effects, while appropriately using Card Object COs in Field Area 54. In the Battle Phase, battles are fought using Card Object COs. For example, a battle takes place when a Monster Card CO1 to be used for an attack on the user's turn and a Monster Card CO1 to be targeted by the opponent's attack (or a direct attack to life points if no Monster Card CO1 exists in Field Area 54) are selected. The outcome of the battle is determined according to parameters such as the attribute and strength of Monster Card CO1. In the Second Main Phase, the same actions as in the First Main Phase are permitted. During the end phase, the end of the turn is indicated (declared).
[0057] In the Battle Phase, combat can be avoided by the player whose turn it is. In that case, the Battle Phase and the Second Main Phase are skipped. Similarly, the Second Main Phase can be avoided by the player during the Battle Phase. Also, the types of phases provided in each turn may vary as appropriate; for example, the first turn may skip the Draw Phase, Battle Phase, and Second Main Phase. The end of a phase is indicated by a predetermined end operation. When a turn ends, the turn passes to the opponent player. The game ends when the predetermined win / loss conditions are met as turns are repeated alternately. As an example of a win / loss condition, as mentioned above, the conditions are met when each player's life points are reduced to a predetermined value (for example, 0) through combat.
[0058] (Analysis service) Next, the details of the analysis service will be explained with reference to Figure 5. As mentioned above, the analysis service is a service that analyzes the impact of each choice on the card game. The analysis service may provide various information (hereinafter sometimes referred to as impact information) regarding the impact of each choice as an analysis result. As an example of impact information, the analysis service is configured to provide superiority / inferiority information regarding the impact of each choice on winning the card game. The analysis service can be applied to appropriate situations, including choice opportunities. For example, the analysis service is applied to choice opportunities included in the battle screen 50.
[0059] Specifically, as shown in Figure 4, battles on the battle screen 50 are played by players exchanging turns that include multiple phases. Therefore, phase end instructions to end each phase (for example, moving to the next battle phase after the first main phase) or turn end instructions to end each turn can function as options on the battle screen 50. Also, on the battle screen 50, deck cards (groups of card objects) are used throughout each phase as described above and are placed in the field area 54 etc. via hand cards CO5. Therefore, the user is required to choose which hand cards CO5 to place in which card area CP and how. For magic cards CO2 and trap cards CO3, the user also needs to choose when and how to activate their effects. Furthermore, for monster cards CO1, the user needs to choose whether or not to attack during the battle phase, and if so, which monster card CO1 to attack. When the analysis service is applied to the battle screen 50, information on the advantages and disadvantages of these choices is provided.
[0060] In the battle screen 50, advantage / disadvantage information may be provided as appropriate, for example, through an advice display field for displaying advantage / disadvantage information. The advice display field may be displayed as appropriate, and may be displayed automatically without a request, or it may be displayed upon a predetermined request from the user (including the selection of a specific play mode that includes the provision of advantage / disadvantage information). The advantage / disadvantage information may be appropriate information regarding the influence of each option, for example, various types of information such as information indicating the degree to which each option, A, B, C, etc., influences victory. For example, the advantage / disadvantage information is composed of numerical information that indicates the possibility of gaining an advantage in the battle through the magnitude of the numerical value. The numerical information may be numerical values that indicate various advantages, for example, numerical values that indicate the possibility of gaining an advantage (less likely to be at a disadvantage) within a predetermined range of turns or choices being analyzed. For example, the numerical information is provided as a probability value that indicates the possibility (probability) of ultimately winning in the battle.
[0061] Furthermore, card games may present a series of choices that require making a sequential sequence of selections. In such cases, the analysis service is configured to provide influence information, i.e., probability values (superiority / inferiority information), for each selection set, treating the combination of choices in the series of choices as a single selection set. For example, if a series of choices is provided in which choices are made sequentially, starting with the first choice in the first choice opportunity, the analysis service is provided to analyze the subsequent choices by making the first choice in the first choice opportunity.
[0062] Specifically, for example, the first main phase or the second main phase (hereinafter, if these are not distinguished, they may simply be referred to as the main phase) includes opportunities to make choices such as selecting the card object CO to be used and where to place that card object CO (card placement area CP). Furthermore, if a card object capable of activating an effect is selected, choices such as whether or not to activate the effect and where to activate it may also be necessary. In other words, in order to activate the effect (or ability) of a single card object CO (to use it in a way that grants the progression associated with that effect), a series of choices (multiple choices) may be required as a set (sequentially). For this reason, the main phase includes a series of opportunities to make choices (multiple choices) to perform these actions. Other phases, such as the battle phase, may also include a series of opportunities to make choices in a similar manner.
[0063] Figure 5 is an explanatory diagram illustrating an example of a series of choice opportunities that may be included in the Main Phase. The example in Figure 5 shows a series of choices (flow) when using the effect of a given Spell Card CO2 to summon one Extra Monster Card CO1 from Extra Deck Card CO7 to Card Placement CP in Field Area 54. As shown in Figure 5, this summon requires a series of choices through a series of choice opportunities from the 1st to the 5th choice opportunities.
[0064] First, during the first selection opportunity, any choice is allowed from hand card CO5, the target card object, or predetermined actions such as phase transition or turn end. The selection of the target card object is performed within a range that includes usable card objects CO, such as the graveyard area 58 and the banished area EA. In the example in Figure 5, during the first selection opportunity, the activation of the effect of Spell Card CO2 (hereinafter sometimes referred to as the "Fusion" Spell Card CO2), which has the effect of enabling the summoning of Extra Monster Card CO1, is selected.
[0065] The Spell Card "Fusion" CO2 has the effect of summoning Extra Monster Card CO1, the target of the summon, from Extra Deck Card CO7 to Card Placement CP in Field Area 54. This summon is performed in exchange for sending a predetermined Card Object CO (material) from Card Placement CP to Graveyard Area 58. The predetermined Card Object CO is set in advance according to the Extra Monster Card CO1 to be summoned. Therefore, following the first opportunity to choose (selection of the card to activate), a second opportunity to choose the Extra Monster Card CO1 to be summoned by the activated effect is provided.
[0066] In the example in Figure 5, during the second selection opportunity (selection of summoning card), an Extra Monster Card CO1 that uses two Monster Card CO1 (often specific Monster Card CO1) as materials is selected as the summoning target. In this case, a third selection opportunity (first material selection) and a fourth selection opportunity (second material selection) for selecting the two materials (Monster Card CO1) are provided sequentially, derived from the selection in the second selection opportunity. In the third and fourth selection opportunities, the two Monster Card CO1 to be used as materials (first material and second material) are selected, respectively. The range in which the two Monster Card CO1 can be selected (which may differ depending on the contents of Spell Card CO2, etc.) may be set as appropriate, and as an example, it may be set to card object CO in the card area CP and hand CO5. In the example in Figure 5, in both the third and fourth selection opportunities, a normal type Monster Card CO1 is selected as material.
[0067] Following the selection of materials, a fifth choice opportunity is provided to select a card placement CP where the Extra Monster Card CO1 to be summoned should be placed (summoned). After the placement location is selected in the fifth choice opportunity, the Extra Monster Card CO1 selected in the second choice opportunity is summoned (placed) in the card placement CP selected in the fifth choice opportunity. In other words, the effect (procedure) of summoning the Extra Monster Card CO1 actually occurs according to the results of the selections (series of selections) in the series of choice opportunities from the first to the fifth choice opportunity.
[0068] On the other hand, when Extra Monster Card CO1 is summoned, the two Normal Monster Cards CO1 (First Material and Second Material) selected in the Third and Fourth Choice Opportunities are sent to Graveyard 58. For example, various phases such as the Main Phase include a series of such choice opportunities depending on the effect of the card object CO used. The analysis service then provides impact information in units of selection sets in the case of such a series of choice opportunities. In other words, for a series of choice opportunities, the impact is not analyzed for each individual choice opportunity, but rather for each selection set, and the probability value for each selection set is provided as the analysis result.
[0069] (Method for calculating probability values) Next, with reference to Figures 6 and 7, we will explain how the probability values (superiority / inferiority information) for each selection set output by the artificial intelligence model (analysis model unit 23) of the analysis service are calculated. Figure 6 is an explanatory diagram for illustrating a list of choices (actions) that a player can take in a given situation on the battle screen 50. In the example in Figure 6, the choices that a player can take (conceptualized with "○") are shown in a tree structure where each choice branches to the next choice. As shown in Figure 6, the choices that a player can take are classified into layers of multiple choice groups. Then, for the choice group in the deepest layer of each tree, the probability values for each choice are output.
[0070] Specifically, in the example in Figure 6, three monster cards CO1 are already placed in the front row 54A of the field area 54 in the example in Figure 5, and three magic cards CO2, etc., are already placed in the back row 54B, and the player has two cards, "A monster card" and "B magic card," in their hand CO5. The set of selectable options in this situation is shown. In this case, the first set of options that the player can take includes four choices: using "A monster card," using "B magic card," "phase transition," and "end turn." These four options form the first set of selectable options.
[0071] Furthermore, the use of “A Monster Card” and “B Magic Card” involves a set of choices regarding where and how to use them, forming a second layer of choices. For example, in the field area 54 of the example in Figure 5, the front row 54A is distinguished as the 1st card area CP to the 5th card area CP, starting from the leftmost card area CP (where Monster Card CO1 cannot be placed) and moving to the right. If three Monster Card CO1 cards are placed in the 3rd to 5th card area CPs, then the only card area CPs where “A Monster Card” (Monster Card CO1) can be placed are the 1st card area CP and the 2nd card area CP. Therefore, these two card area CPs correspond to the choices for where “A Monster Card” can be placed. Additionally, there are two ways to place Monster Card CO1 into a card area CP: “Summon” (Monster Card CO1 is placed face up) and “Set” (Monster Card CO1 is placed face down). Therefore, for each of the two card placement locations (CP) – the first and second card placement locations – there are two further options: "Summon" and "Set". As a result, there are four options for using an "A Monster Card," corresponding to the two card placement locations and the two placement methods.
[0072] On the other hand, for example, in the field area 54 of the example in Figure 5, the back row 54B is distinguished as the 6th card storage area CP to the 10th card storage area CP from left to right, and if three magic cards CO2 etc. are placed in the 8th card storage area CP to the 10th card storage area CP, then the only card storage areas CP on which the "B magic card" (magic card CO2) can be placed are the 6th card storage area CP and the 7th card storage area CP. Therefore, these two card storage areas CP correspond to the options for where the "B magic card" will be placed.
[0073] A “B Magic Card” can be composed of any appropriate Magic Card CO2. The example in Figure 6 shows that a “B Magic Card” is the “Fusion” Magic Card CO2 from the example in Figure 5. There are two ways to place a “B Magic Card” in the card placement area CP: “Activate” (the option to activate the effect) and “Set” (the option to postpone the activation of the effect). Therefore, these two placement methods exist as options. As a result, there are also four options for using a “B Magic Card,” corresponding to two card placement areas CP × two placement methods. These four options, plus the four options corresponding to “A Monster Card,” form a total of eight options, which constitute the second layer of options.
[0074] If an effect is set for "Monster Card A," further options arise. For example, if "Monster Card A" has a conditional effect that requires it to be placed in a card placement area (CP) by "summoning," then there are two further options for the "summoning" method: "activate the effect" and "do not activate the effect." Therefore, these two options multiplied by two card placement areas (CP) result in four options, which in turn arise from the second layer of options related to "Monster Card A."
[0075] Similarly, when the effect of a “B Magic Card” is activated, choices are derived for each placement location. Therefore, two choices corresponding to each of the two card placement locations CP are generated from the second layer of choices related to “B Magic Card.” These two choices, plus four choices derived from the second layer of choices related to “A Monster Card,” form a total of six choices that constitute the third layer of choices. In addition, for Magic Card CO2, various other choices may exist depending on the situation. For example, if the target of the effect can be specified, further choices may arise to select that target. Although not illustrated in the example in Figure 6, the same applies to other card object COs such as Trap Card CO3.
[0076] Furthermore, the fourth group of choices is derived from the third group of choices, the fifth group from the fourth group, the sixth group from the fifth group, and the seventh group from the sixth group. When the effect of "Fusion" in the example in Figure 5 is activated, a series of choices are required, such as selecting the Extra Monster Card CO1 to be summoned, selecting the materials, and selecting the placement location. The fourth to seventh group of choices are formed by the candidates for this series of choices. For example, if Extra Deck Card CO7 contains two types of Extra Monster Card CO1, A Extra Monster Card CO1 and B Extra Monster Card CO1, these are summoning candidates and function as choices for the summoning target. Therefore, four choices corresponding to two card placement locations CP × two candidates form the fourth group of choices.
[0077] If the summoning of Extra Monster Card A CO1 requires two specific Monster Card CO1, and Extra Monster Card A CO1 is selected as the summoning target, the first material (first material) forms the fifth layer selection group. Similarly, if the summoning of Extra Monster Card B CO1 requires one specific Monster Card CO1, the first material (first material) forms the fifth layer selection group. As a result, the fifth layer selection group is formed by four choices (two card placement CPs × two first materials corresponding to the two summoning candidates) arising from the four choices in the fourth layer selection group.
[0078] Furthermore, if Extra Monster Card A CO1 is selected as the target for summoning, the selection of a second material (second material) is required. Therefore, the selection of the second material is derived from the selection of the first material (fifth layer selection group). On the other hand, if Extra Monster Card B CO1 is selected as the target for summoning, after the selection of the first material is complete, the selection of the card placement area CP to which the target should be summoned is required. If Extra Monster Card B CO1 can be placed in both the front row 54A and the common area 52 in the field area 54, then the first card placement area CP, the second card placement area CP, and the two card placement areas CP in the common area 52 are all candidates for placement. In other words, there are four options for where Extra Monster Card B CO1 can be placed (some are omitted in the example in Figure 6). Therefore, when Extra Monster Card A CO1 is selected, one option (second material) is added to the four options for the placement of Extra Monster Card B CO1, resulting in five options × two card placement areas (6th card placement area CP and 7th card placement area CP), for a total of ten options that form the 6th layer option group.
[0079] If Extra Monster Card A CO1 can be placed in both the front row 54A and the common area 52 in the field area 54, then there are the same placement options as for Extra Monster Card B CO1. In other words, there are four options for where Extra Monster Card A CO1 can be placed. These four options are derived from the selection of the second material (the sixth layer of options). Therefore, the four options × two card placement areas (the sixth card placement area CP and the seventh card placement area CP) total eight options form the seventh layer of options.
[0080] In the example in Figure 6, in the tree of choices derived from "Monster Card A," a portion of the second layer of choices (when placed in the "set" state at each card placement CP) and the third layer of choices correspond to the deepest layer of choices. Therefore, each choice in these groups is input into the artificial intelligence model, and a probability value (the number in "○") is output for each choice. Similarly, in the tree of choices derived from "Magic Card B," a portion of the second layer of choices (when placed in the "set" state at each card placement CP), a portion of the sixth layer of choices (when Extra Monster Card B CO1 is the target of the summon), and the seventh layer of choices correspond to the deepest layer of choices. Therefore, each choice in these groups is input into the artificial intelligence model, and a probability value is output for each choice.
[0081] Each option in the first to seventh layer of options is presented and selected in the first to seventh selection opportunities. In the example in Figure 6, each option forming each selection set is shown expanded for each option, but each tree that arises from the second layer of options onward corresponds to a series of selections. For example, when Monster Card A is used, the first to third selection opportunities for selecting the third option group (partially the second option group) from the first layer of options constitute a series of selection opportunities. Similarly, when Magic Card B is used, the first to seventh selection opportunities for selecting the seventh option group (partially the sixth option group) from the first total option group constitute a series of selection opportunities. In both cases, probability values are calculated only for each option in the deepest layer of options. In other words, a series of selections in a series of selection opportunities is treated as a single set (selection set), and probability values for the final selection result of each selection set are output. In this example, the combinations of selections when Monster Card A is used and the combinations of selections when Magic Card B is used function as multiple selection sets of the present invention.
[0082] However, the example in Figure 6 shows the case where the summoner does not possess the first material required to summon Extra Monster Card B CO1 (for the sake of explanation, the options are expanded in the example in Figure 6 even when the first material is not possessed, but the expansion of options may be omitted for options that cannot be taken, such as when the first material is not possessed). For this reason, the probability values for the sixth layer of options derived from the fifth layer of options for Extra Monster Card B CO1 are all zero. On the other hand, since the summoner possesses both the first and second materials required to summon Extra Monster Card A CO1, the seventh layer of options (the options derived from the sixth layer of options for Extra Monster Card A CO1) are output with probability values such as "8.0", "15.0", or "14.0".
[0083] On the other hand, there are no options derived from "phase transition" (phase end instruction) or "turn end" (turn end instruction), and for these, the first layer of options corresponds to the deepest layer of options. Therefore, the two options, "phase transition" and "turn end," are input into the artificial intelligence model, and probability values are output for each option.
[0084] The probability values output by the analysis service may be used as appropriate, and may be provided to users as needed, for example, as information to assist beginners in their gameplay. As an example, the probability values output by the analysis service are used to determine the choices that the computer, as the user's opponent, should make in AI battle mode. In other words, in AI battle mode, the opponent (computer) decides which card object CO to use based on the probability values output by the analysis service, and then actually executes the determined choice. Furthermore, when a series of choices are required by the analysis service, the probability values are calculated in units of combinations of those choices (selection sets). Therefore, in AI battle mode, the series of choices that the opponent should make are determined in units of selection sets, and those determined series of choices are executed.
[0085] For example, in the example in Figure 6, the "Second Card Placement (Common Area)" in the seventh layer's choice group has the highest probability. Therefore, in the situation shown in Figure 6, the choice set of placing the B Magic card CO2 in the sixth card placement CP to activate its effect, and summoning the A Extra Monster card CO1 to the second card placement CP in the common area in exchange for the first and second materials, is determined to be the target of execution, and this series of selections is executed. In this example, the choice set leading to the "Second Card Placement (Common Area)" in the seventh layer's choice group functions as the target of execution of the present invention. Furthermore, the series of selections corresponding to this choice set (B Magic card, sixth card placement, effect activation, A Extra Monster card CO1, first material, second material, and the second card placement CP in the common area) functions as the target of the present invention. Moreover, the first selection opportunity to execute the first selection (first layer's choice group) in each selection set, or each selection opportunity up to the last selection, all function as a selection opportunity of the present invention. Similarly, each subsequent selection opportunity following the first selection opportunity in each selection set functions as a subsequent selection opportunity according to the present invention.
[0086] In the example in Figure 6, an example of the set of choices in the main phase is shown. Therefore, in addition to instructions to end the phase, the card object CO that should be placed from the hand CO5 to each card placement CP, and the choices corresponding to the card placement CP where that card object CO should be placed are shown. However, for example, in the draw phase, choices such as adding (drawing) from the deck CO6 to the hand CO5 are provided for each phase. Therefore, at least some of the choices that can be selected differ from phase to phase (for example, choices at the end of the phase or the end of the turn may be common). In other words, the choices that can be taken differ in each phase. Then, information on the probability value of each choice that can be selected in each phase is output.
[0087] Figure 7 is an explanatory diagram illustrating an example of a method by which an artificial intelligence model calculates probability values. Generally, artificial intelligence models are generated by machine learning a training dataset using a predetermined learning method (algorithm), and tend to have thinking (algorithms) corresponding to the learning method. Various learning methods are included in machine learning, such as imitation learning and reinforcement learning (imitation learning is sometimes considered a type of reinforcement learning). Imitation learning is often classified into methods such as Behavoir cloning, Dataset Aggregation, or Inverse Reinforcement Learning, but in many cases the reward is not explicitly defined. On the other hand, reinforcement learning is often classified into methods such as Dynamic Programming (DP), Monte Carlo (MC), or Temporal Difference Learning (TD), and is often a method that maximizes the reward.
[0088] Artificial intelligence models (analysis programs AP) for analytical services can be generated using various learning methods as appropriate. One example is the TD method of reinforcement learning. The TD method may include techniques such as SARSA. As an example, the Q-Learning method is used to generate artificial intelligence models for analytical services.
[0089] Q-learning is a method that evaluates actions (choices) by finding an action-value function (Q-function). The Q-function is generally defined as a function that predicts what the reward (often called the Q-value) will be if a certain action is taken in a given state (a detailed explanation of the specific function formula is omitted). However, in Q-learning, if the Q-function table (input information) becomes large (an enormous amount), the calculations tend to fall behind, making implementation difficult. On the other hand, for example, the input information in the battle screen 50 (information from the situation log SL) is considered to be enormous. For this reason, a trained artificial intelligence model for analysis services is generated using the DQN (Deep Q Network) method, which obtains an approximate value of the Q-value using a neural network. In this case, the artificial intelligence model for analysis services is configured to calculate probability values (Q-values) using the DQN method.
[0090] Furthermore, the reward that is the target of the Q-value (a predetermined outcome obtained by an action, which may be included in the algorithm of the learning program) may be set as appropriate. For example, a specific way of winning, such as a victory by a narrow margin, or a tendency to win may be set. The artificial intelligence model for the analysis service may have different thinking depending on the reward (predetermined outcome) in Q-learning. As an example, the artificial intelligence model for the analysis service is configured to calculate the probability value (Q-value) for winning a match using the DQN method. In other words, in the artificial intelligence model for the analysis service, winning a match is set as an example of a reward.
[0091] Figure 7 shows an overview of the DQN method for calculating probability values (Q-values). As shown in Figure 7, the DQN method utilizes a neural network (deep learning), forming an input layer, hidden layers, and an output layer, with each layer working together to output calculation results for the data. The input layer is responsible for collecting data. The hidden layers are responsible for calculations to determine probability values. Hidden layers often consist of multiple layers (generally, the more layers there are, the higher the accuracy tends to be). In the example in Figure 7, only two hidden layers are shown, but any number of hidden layers may be formed. The output layer is responsible for outputting the calculation results performed in the hidden layers. An artificial intelligence model trained using the DQN method is configured to output the probability value of winning a match in the output layer. In addition, connecting lines (often called synapses) are provided between the input layer, hidden layers, and output layer. Each connecting line is assigned a weight value (often expressed with the sign w) indicating its importance (strength of connection), and the importance of the information is determined by the magnitude of the weight value. In the example in Figure 7, both the input value (input information) and the output value (sometimes referred to as a node) are represented by "○".
[0092] Specifically, in the input layer, information from the situation log SL, which shows the current state of the battle screen 50, is first input. The situation log SL contains information from many dimensions (input values). It is desirable that the number of pieces of information in this dimension be less than about 5000. As mentioned above, the situation log SL may contain various pieces of information that determine the state of the card game. For example, in addition to information on the placement status in the field area 54, such as the status of the 1st card placement area CP to the 10th card placement area CP, the situation log SL contains information on possible choices (see example in Figure 6) such as end of turn, summoning A monster card, activating A monster card effect, and activating B magic card.
[0093] A predetermined function formula using appropriate weights (weight values w) is applied to the input values in the input layer, and the output value of the hidden layer (first layer) is calculated using this function formula. The first hidden layer can have an appropriate number of output values. In the example in Figure 7, four output values are calculated. Furthermore, a predetermined function formula using appropriate weights is applied to these four output values, and the output value of the hidden layer (second layer) is calculated using this function formula. The second hidden layer can also have an appropriate number of output values. In the example in Figure 7, four output values are again calculated. Note that the weights (weight values w) corresponding to each connection line are calculated as a learning result and are managed, for example, in the trained data AD for analysis. Also, the connection lines (synapses) connecting the input layer and the hidden layers are omitted in Figure 7 as appropriate.
[0094] The output value of the final intermediate layer (second layer) is calculated as a Q value using a predetermined function formula that utilizes appropriate weighting in the output layer. The Q value (output value of the output layer) is calculated for each predetermined action (choice on the battle screen 50). For example, in each tree in the example of Figure 6, the Q value is calculated for each choice (selectable choice) in the deepest layer's choice group using the method in the example of Figure 7. If a series of choices are required, the Q value is calculated for that series of choices (choice set). The calculated Q values may be converted into probability values using a normalization function (e.g., Softmax function) so that the sum of the values of all selectable choices equals 100%.
[0095] (Special rules) Next, with reference to Figure 8, an example of a special rule found in a card game will be explained. In addition to the basic rules (for example, the example in Figure 4), card games include various special rules. One example of a special rule in a card game is the chain rule. The chain rule is a rule designed to smoothly resolve exchanges of various card object COs, such as magic cards CO2 and trap cards CO3. Specifically, the chain rule is a rule that allows for the activation of one card object CO in response to the activation of another card object CO. When the effect of a card object CO is activated, the opposing player is always given an opportunity to make a choice to counter that effect activation (hereinafter sometimes referred to as a counter-choice opportunity) by the chain rule. Of course, the option of doing nothing (not performing a counter-action) is also permitted during the counter-choice opportunity.
[0096] If the opposing player makes a counter choice during a counter choice opportunity (hereinafter sometimes simply referred to as a chain), then you can then chain. If the opposing player does not chain, you can chain yourself (by selecting a card object CO that will activate an effect on your own card object CO that has already activated an effect). Chains can be stacked as many times as possible. When neither player chains, the effects are activated in order, starting with the last card object CO activated in the chain. In other words, the activation of the effects of each card object CO used as a target for activation in a chain is held in reserve (stacked) until the last chain is executed. Then, with the final chain, the held effects are activated in reverse order of their usage, starting with the card object CO in that last chain.
[0097] The analysis service calculates probability values for each set of choices, and these probability values are used in AI battle mode to determine the set of choices an opponent should make in a series of choices. On the other hand, when a chain is executed according to the chain rules, it may become impossible to execute the set of choices determined based on the probability values. In this case, an alternative choice is determined for the impossible choice.
[0098] Figure 8 is an explanatory diagram illustrating an example of a chain that may occur after the summoning of Extra Monster Card CO1. For example, if both the first and second materials in Figure 5 have effects that can be activated by moving to Graveyard 58 upon summoning, a chain may occur after the summoning in the example of Figure 5. Specifically, in the example of Figure 5, Extra Monster Card CO1 is summoned by the effect of the "Fusion" Spell Card CO2, and the first and second materials are sent to Graveyard 58 for this summoning. Therefore, if the first and second materials have effects that are conditional on moving to Graveyard 58, it becomes possible to activate the effects of the first and second materials as part of their own chain in conjunction with the summoning effect. The example in Figure 8 illustrates this case. The example in Figure 8 also shows a case where one of a series of choices determined based on the analysis service becomes impossible to execute due to the user's chain.
[0099] As shown in Figure 8, if the effects described above are set for both the first and second materials in Figure 5, then after the summoning of the Extra Monster Card CO1, the summoner (for example, the computer in AI battle mode; hereafter, the role of the computer in AI battle mode may be referred to as COM) will have two chain opportunities. These two chain opportunities are opportunities to make choices regarding the effects of the two materials, respectively. Hereafter, these may be referred to as the first chain and the second chain in chronological order.
[0100] The first chain includes three options: activating the effect of the first material, activating the effect of the second material, or doing nothing (not activating any effect). In the example in Figure 8, the first material has an effect called "●●" that is triggered when it moves to Graveyard Zone 58 ("Graveyard"). Therefore, if the activation of the first material's effect is chosen, the process proceeds to activate the "●● effect". On the other hand, the second material has an effect that adds either a face-up D-Monster card CO1 ("D-Monster") from Extra Deck card CO7 or a C-Monster card CO1 ("C-Monster") from Graveyard Zone 58 to hand CO5, triggered when it moves to Graveyard Zone 58. Therefore, if the activation of the first material's effect is chosen, two options corresponding to the added targets (D-Monster card CO1 and C-Monster card CO1) are derived from that choice. Various further options may arise from these two options for added targets, but the details are omitted in the example in Figure 8.
[0101] The unit of selection sets to be analyzed by the analysis service can be set as appropriate. For example, the selection of the "Fusion" magic card CO2 in the example of Figure 5 to the selection of the second chain (including the selection of additional targets within each chain) in the example of Figure 8 may be set as one selection set. Alternatively, the selection up to the end of the summon in the example of Figure 5 may be set as one selection set (a series of selections), and the series of selections from the first chain to the second chain may be set as a separate selection set. In this case, the series of selections may be further distinguished by chain, and the series of selections within each chain, such as the selection of additional targets, may be set as one selection set. In the example of Figure 8, the series of selections from the first chain to the second chain are distinguished from the selection set up to the end of the summon, but are not distinguished by chain, and the series of selections from the first chain to the second chain are set as one selection set. Therefore, the series of selections from the first chain to the second chain are determined after the summon via the analysis service.
[0102] In the first chain, appropriate choices may be determined based on the analysis results of the analysis service. In the example in Figure 8, among the three options, activating the effect of the first material is selected as the target of execution. In this case, the second chain includes two options: activating the effect of the second material, and doing nothing (not activating the effect of the second material). In the second chain, the game information used in the first chain may be used directly in the analysis of the analysis service. In this case, it is assumed that the probability values for the series of choices of the second material calculated in the first chain will yield the same results as the analysis results in the first chain. For this reason, the analysis in the analysis service may be omitted in the second chain. In the example in Figure 8, as an example, the analysis service in the second chain is executed with the game information used in the first chain and the selection results of the first chain reflected in the content. That is, in the second chain, assuming that the selection in the first chain has been executed (the probability values are calculated as if the selection up to the second chain is one set of choices, so the selection in the first chain has not yet been executed), the probability values for the remaining two options, activating the effect of the second material and doing nothing, are calculated. In the example shown in Figure 8, the choice to be made in the second chain is to activate the effect of the second material, and the additional target associated with that activation is the C monster card CO1 in the graveyard area 58.
[0103] Under the chain rule, each chain gives the opposing player (the user, for example) an opportunity to make a chain against the COM, where they can make a choice that opposes the COM's choice. However, the series of choices in the first and second chains are treated as a single set of choices, and their probability values are calculated accordingly, determining each choice. Therefore, the COM does not consider the opposing player's chain when deciding which choices to make in the first and second chains. On the other hand, after each choice has actually been made, the opposing player's chain may be executed. In the example in Figure 8, the opposing player's chain has not been executed after the decision on which choices to make in the first chain, but after the choice in the second chain, the opposing player (user) makes a choice (third chain) that opposes the second chain.
[0104] Specifically, after the second chain, the user uses the spell card CO2 as the third chain. This spell card CO2 has an effect that, if it is included in the hand CO5, can be sent (discarded) to Graveyard 58, allowing the COM (the user's opponent) to banish one card object CO from Graveyard 58. The target of this effect of spell card CO2 is the C monster card CO1 located in Graveyard 58 of the COM.
[0105] In the chain rules, the effects of choices made in each chain are held in reserve (stacked) during a chain and executed in reverse order after the final chain. If the third chain is the final chain, the effects of the third chain, second chain, and first chain are activated in that order. Therefore, the effect of the magic card CO2 in the third chain is activated first, and the C monster card CO1, which is in the COM's graveyard 58, is removed from the graveyard 58. In the next second chain, the choice to add the C monster card CO1 from the graveyard 58 to the hand CO5 (activation of the effect of the second material) was planned. However, due to the effect of the third chain, the C monster card CO1 that was to be added is removed from the graveyard 58 and cannot be added. In other words, the addition of the C monster card CO1, which was one of the choices determined based on the analysis service, is made impossible by the user's chain. In this case, the COM decides the choices after the impossible choice according to the prescribed rules.
[0106] The prescribed rule may be any appropriate rule for determining an alternative choice. For example, the prescribed rule may be configured to determine a choice with a probability value following the initial choice, based on the probability values of other choices calculated to determine the initial choice. Alternatively, a lottery result may be used as the prescribed rule, and if the initially decided choice is not feasible, a lottery may be held, and another choice may be randomly determined based on the lottery. In the example in Figure 8, if the selection of monster card C CO1 is not possible, the only remaining option is the selection of monster card D CO1. Therefore, in any case, the additional target in the second chain will be monster card D CO1, but the lottery result is used as an example of the prescribed rule. Then, with the activation of the effect of the second chain, monster card D CO1 is added to hand CO5. Furthermore, after the activation of the effect of the second chain, the "●● effect" of the first chain is activated. The determination of a series of choices when chains are applied is achieved, as an example, by the procedure described above. In this example, the COM and the user function as multiple players of the present invention, as well as functioning as one player and another player, respectively. Furthermore, the selection of a C monster in the second chain functions as one of the choices in this invention.
[0107] (Network system processing) Next, referring to Figures 9 to 10, the selection execution process and the selection re-determination process will be described as examples of the processing of the network system 1. Both the selection execution process and the selection re-determination process are, as an example, implemented through the cooperation of the COM battle implementation unit 25 of the game server 2 and the progress control unit 33 of the user device 3. Therefore, in Figures 9 and 10, the processes mainly executed by the COM battle implementation unit 25 are shown as the game server 2, and the processes mainly executed by the progress control unit 33 are shown as the user device 3.
[0108] The selection execution process is the process for executing various selections in AI battle mode. The selection execution process is configured to execute various selections using the analysis service. When the COM has an opportunity to make a selection during a battle in AI battle mode, the progress control unit 33 starts the selection execution process shown in Figure 9 and first acquires game information about the current game situation necessary for calculating probability values (S101). Game information is managed by the situation log SL as an example. For this reason, in step S101, the progress control unit 33 updates (including generating) the situation log SL to record the acquired game information.
[0109] Next, the progress control unit 33 requests the game server 2 to make a decision on the selection opportunity for the target (step S102). This request includes the latest status log SL. In other words, this request includes the game information obtained in step S101.
[0110] When a request is sent from the progress control unit 33, the COM battle implementation unit 25 starts the selection execution process shown in Figure 9 and first acquires the request (including game information) (step S201). Next, the COM battle implementation unit 25 provides the game information acquired in step S201 to the artificial intelligence model (analysis model unit 23) so that the analysis service is executed (probability values are calculated) (step S202). Then, the COM battle implementation unit 25 acquires the analysis results (probability values) from the artificial intelligence model (analysis model unit 23) (step S203). In other words, it uses the artificial intelligence model to acquire information on the probability values of each option (or the unit of the selection set in the case of a series of selection opportunities). Furthermore, the COM battle implementation unit 25 decides which selection to execute for the target selection opportunity based on the probability value information acquired in step S203 (step S204). The COM battle implementation unit 25 may decide on a selection as appropriate based on the probability values, and as an example, it may decide on the option with the highest probability value as the target for execution. The same decision is made in the case of a series of selection opportunities. In other words, the set of choices with the highest probability value among the set of choices is determined as the set of choices to be executed in a series of choices. Then, the COM match implementation unit 25 transmits the decision result determined in step S204 to the progress control unit 33 (step S205), and the selection execution process for this time ends.
[0111] Meanwhile, when the COM match implementation unit 25 transmits the decision result, the progress control unit 33 acquires that decision result (step S103). Subsequently, the progress control unit 33 executes the selection at the target selection opportunity according to the decision result acquired in step S103 (step S104). If the target selection opportunity is a series of selection opportunities, the progress control unit 33 sequentially executes a series of selections corresponding to the selection set as a result of the decision at that series of selection opportunities. After these selections, the progress control unit 33 terminates the selection execution process for this time.
[0112] The procedure shown in Figure 9 enables selection (competition) using an artificial intelligence model (analysis service) in AI battle mode. Furthermore, in a series of selection opportunities, analysis by the artificial intelligence model is performed in units of selection sets, and a series of selections to be executed is determined in units of selection sets based on the analysis results. In the example in Figure 9, in step S104, the information of the selection sets to be executed in a series of selection opportunities is sent to the user device 3 as a single result of the decision, but this is just one example. For example, the selection execution process may be configured such that, for each selection opportunity in a series of selection opportunities, the user device 3 queries the game server 2 for the selection of the target to be executed, and the selection set (decision result) to be executed is sent each time as the selection target corresponding to the selection opportunity.
[0113] The selection re-determination process is a process for re-determining selections that become unexecutable when a chain is executed in the middle of a series of selections (a set of selections to be executed), and a series of selections determined in the selection execution process (or, in some cases, selections determined in the re-selection determination process) becomes unexecutable. After each selection in the series of selections (including selections determined in the re-selection determination process) is executed, the progress control unit 33 starts the selection re-determination process shown in Figure 10 and determines whether or not an unexecutable selection has occurred in the determined series of selections (step S301). If no unexecutable selection has occurred (S301: No), the progress control unit 33 skips the subsequent processes and terminates the current re-selection determination process.
[0114] On the other hand, if an unexecutable selection occurs (S301: Yes), the progress control unit 33 obtains the current game information (step S302). This process is performed in the same way as step S101 in the example in Figure 9. Subsequently, the progress control unit 33 requests the game server 2 to re-determine the remaining unexecutable selections (selections after the unexecutable selection) (step S303). This request includes the latest status log SL (game information obtained in step S302).
[0115] When a request is sent from the progress control unit 33, the COM battle implementation unit 25 starts the selection re-determination process shown in Figure 10 and first obtains the request (step S401). Next, the COM battle implementation unit 25 re-determines the remaining selections (step S402). The COM battle implementation unit 25 may perform the re-determination using an analysis service, but as an example, it performs the re-determination according to a predetermined rule. The predetermined rule may be any appropriate rule. For example, it may be a rule that determines the remaining selections so as to transition to the selection with the second highest probability value based on the probability value output when the selection set was determined in the selection execution process. As an example, the predetermined rule is set to a rule that determines randomly (by lottery) from the currently selectable options. For this reason, the COM battle implementation unit 25 refers to the game information obtained in step S401, draws one of the currently selectable options, and determines the remaining selections to the drawn option. If there are multiple remaining selections, they are determined by a similar lottery for each selection. Then, the COM battle implementation unit 25 sends the determination result determined in step S403 to the progress control unit 33 and ends the selection re-determination process.
[0116] Meanwhile, when the COM match implementation unit 25 transmits the decision result, the progress control unit 33 acquires that decision result (step S304). Subsequently, the progress control unit 33 executes the remaining selections in the target selection opportunity according to the decision result acquired in step S304 (step S305). After this selection, the progress control unit 33 terminates the selection re-determination process for the current selection. This ensures that if a series of decided selections become impossible to execute due to a chain, the remaining impossible selections are re-determined and executed. In other words, a series of selections using an artificial intelligence model (analysis service) is permitted even under chain rules.
[0117] As explained above, this configuration uses an artificial intelligence model (AI) to obtain information on the probability values of choices in each choice opportunity. For a series of choice opportunities, the combination of choices in that series of choices is treated as a single choice set, and information on the probability value of each choice set's winning percentage in the game is obtained. In other words, for choices in a series of choice opportunities, probability value information is obtained at the unit of the combination of choices. Therefore, for a series of choices in a series of choice opportunities, it is possible to obtain more appropriate probability value information regarding winning compared to when probability values are calculated for each choice opportunity and each choice. In particular, in a series of choice opportunities, choices are made in a way that the choices are sequentially derived from the choice in the first choice opportunity. This type of choice often tends to be complex. As a result, it is possible to obtain more appropriate probability value information for choices that tend to be complex.
[0118] Furthermore, in AI battle mode, the set of choices to be executed in a series of choice opportunities is determined based on probability values. Then, the series of choices corresponding to that set of choices are executed sequentially as choices by the COM (the player acting as the user's opponent). In other words, the series of choices corresponding to the set of choices determined based on probability values are actually realized. Therefore, the battle (game) can be advanced based on the probability values calculated by the artificial intelligence model. In short, it is possible to realize so-called computer (AI) battles that utilize the impact of each set of choices on victory.
[0119] Furthermore, if a series of choices determined based on probability values becomes impossible due to the chain rule, a feasible choice is determined in its place according to a predetermined rule. In other words, the series of choices is complemented by the determination of an alternative choice, so the chain rule does not prevent the acquisition of probability values at the unit of a set of choices. For this reason, even in a game that includes the chain rule (opposing choice opportunity), it is possible to acquire probability values at the unit of a set of choices.
[0120] In the above configuration, the analysis model unit 23 of the game server 2 functions as a predetermined process of the present invention. Furthermore, the COM battle implementation unit 25 of the game server 2 functions as an information acquisition means and an influence acquisition means of the present invention by executing the procedure in Figure 9. Specifically, the COM battle implementation unit 25 functions as an information acquisition means by executing step S201 in Figure 9, and as an influence acquisition means by executing step S203. In addition, the COM battle implementation unit 25 of the game server 2 functions as a selection decision means of the present invention by executing the procedure in Figure 9 and the procedure in Figure 10. Specifically, the COM battle implementation unit 25 functions as a selection decision means by executing step S204 in Figure 9 and step S402 in Figure 10.
[0121] The present invention is not limited to the embodiments described above and may be implemented in forms that are appropriately modified or altered. Furthermore, the present invention may be implemented in forms obtained by appropriately combining various technical means included in the embodiments described above and the embodiments that are appropriately modified below. In the embodiments described above, a series of selection opportunities are provided so that the user can select options that are derived sequentially from the selection in the first selection opportunity. However, the present invention is not limited to this form. For example, a series of selection opportunities may be provided so that the selection in any part of the selection opportunities is derived in subsequent selection opportunities. Alternatively, a series of selection opportunities may be provided so that the options in subsequent selection opportunities change (including both changes in number and content) depending on the selection result in the earlier selection opportunity. In other words, each selection opportunity in a series of selection opportunities may have appropriate relationships, not limited to derivation. Furthermore, a series of selection opportunities may not have relationships with one another. In other words, a series of selection opportunities may be an appropriate concept that applies to multiple selection opportunities that should be treated as a set.
[0122] The above-described embodiment describes a match between a user and the computer in AI battle mode. However, the present invention is not limited to this embodiment. In AI battle mode, a suitable match may be performed between multiple players. For example, the multiple players may be different artificial intelligence models with different thinking processes. In other words, AI battle mode may be applied to a match between multiple computers.
[0123] In the above-described configuration, the network system 1 functions as the game system of the present invention, with the game server 2 (including cases where it is composed of multiple server devices) functioning independently. However, the present invention is not limited to this configuration. For example, the user device 3 may perform all or part of the role (various processes) of the game server 2. If the user device 3 performs all of the role (for example, the processes in Figures 9 to 10), the user device 3 may function as the game system of the present invention independently. In this case, the user device 3 may be configured as an offline game device that is played without connecting to the network NT. The game server 2 may also be omitted. Alternatively, if part of the role of the game server 2 is performed by the user device 3, the combination of the user device 3 and the game server 2 (including the network system 1) may function as the game system of the present invention. Furthermore, programs and control methods implemented in devices such as the network system 1, the user device 3, or the game server 2 may function as the game program and control method of the present invention.
[0124] Figure 11 is a flowchart showing an example of the procedure for AI battle processing. AI battle processing is a process for executing the COM selection in AI battle mode, instead of the selection execution process in Figure 9 and the selection re-determination process in Figure 10, when an artificial intelligence model (analysis model unit 23) is installed in the user device 3 (hereinafter, to distinguish it from the analysis model unit 23, the analysis model unit of the user device 3 may be called the terminal analysis model unit). Furthermore, each selection set may be set to a series of selections in an appropriate unit; for example, as described above, a series of selections from the first chain to the second chain may be set as one selection set. The example in Figure 11 shows the case where a series of selections within each chain is set as one selection set, that is, the probability value of a series of selections is calculated for each chain.
[0125] In AI battle mode, when the COM has an opportunity to make a choice, the progress control unit 33 acquires game information regarding the current game situation and requests the terminal analysis model unit to execute the choice along with that game information. When this request occurs, the terminal analysis model unit acquires the request (including the game information) and starts the battle AI processing shown in Figure 11, first determining whether there is a predetermined choice to be executed at the target choice opportunity (step S501).
[0126] If there is already a decided choice (Step S501: Yes), the terminal analysis model unit determines whether the decided choice is selectable based on the game information obtained in Step S501 (Step S502). For example, in a series of selection opportunities, since the series of selections are already decided, it is determined in Step S501 that there is a decided choice. Then, in Step S502, it is determined whether that selection is possible. For example, as in the example in Figure 8, if the decided choice in Chain 2 becomes unexecutable due to the activation of the effect of Chain 3, it is determined that the selection is unselectable. On the other hand, for example, the activation of the effect of Chain 1 is still selectable even after the activation of the effect of Chain 3, so it is determined that the decided choice is selectable. If the decided choice is selectable (Step S502: Yes), the terminal analysis model unit executes that decided choice in the target selection opportunity (Step S503). After this execution, the terminal analysis model unit terminates the AI processing for this match.
[0127] On the other hand, if a previously decided selection is unavailable (step S502: No), the terminal analysis model unit, while referring to game information, randomly (by lottery) determines the selection of the target to be executed from the options available in the current situation (step S504), and then executes the determined selection at the opportunity to select the target (step S505). After this execution, the terminal analysis model unit terminates the AI processing for this match. Note that all or part of the probability values used when deciding on the previously decided selection (the result of the determination in step S506) may be saved, in which case the processing in step S504 may be configured to select the option with the next highest probability value from the available options based on the saved probability values.
[0128] On the other hand, if there is no predetermined selection at the opportunity to select a target (Step S501: No), the terminal analysis model unit determines the options that can be taken at the current selection opportunity (Step S506). More specifically, the terminal analysis model unit determines the options that can be taken at the current selection opportunity, for example, the options corresponding to the first layer of options in the example in Figure 6.
[0129] Next, the terminal analysis model unit identifies the options derived from the possible choices (first-layer choice group) identified in step S506 (step S507). More specifically, the terminal analysis model unit identifies the options from the second-layer choice group onward that arise from the first-layer choice group (the choices at the first choice opportunity) in the example of Figure 6, that is, each choice in a series of choice opportunities.
[0130] Next, the terminal analysis model unit performs an analysis of each option (step S508). More specifically, the terminal analysis model unit calculates probability values for each of the options in the deepest layer based on the discrimination results from steps S507 and S506.
[0131] Next, the terminal analysis model unit determines which choice to execute at the target selection opportunity based on the analysis results in step S508 (step S509). More specifically, the terminal analysis model unit determines the choice with the highest probability (highest probability of winning) based on the probability values calculated in step S508 as the choice to execute. If the choice with the highest probability is the last choice in a series of selection opportunities, the terminal analysis model unit determines the series of choices leading up to that last choice as the target to execute, and also determines the first choice in that series as the choice to execute at the target selection opportunity.
[0132] Furthermore, the terminal analysis model unit determines whether a chain is possible after the selection at the target selection opportunity (step S510). If a chain is possible (step S510: Yes), the terminal analysis model unit updates the game information as if the selection of the execution target determined in step S509 has been executed (step S511), returns to step S506, and executes the subsequent processing again. For example, if the target selection opportunity is a selection opportunity where the selection corresponding to the first chain in the example of Figure 8 should be executed, the terminal analysis model unit determines the selection (series of selections) to be executed in the first chain in steps S506 to S509, reflects the result of that decision in the game information in step S511, returns to step S506, and executes the subsequent processing again for the second chain. The same applies when chains from the second chain onward are executed.
[0133] On the other hand, if a chain is not possible (step S510: No), the terminal analysis model unit executes the selection determined in step S509 at the target selection opportunity (step S512). For example, if in step S509 a selection is determined for multiple selection opportunities, including a series of selections such as the selection to be executed in the first chain and the selection to be executed in the second chain in the example of Figure 8, the selection that should be executed first among them is executed at the target selection opportunity. After this execution, the terminal analysis model unit terminates the AI processing for this battle. This realizes the COM's selection in AI battle mode.
[0134] In the example of Figure 11, the terminal analysis model unit may only execute the process in step S508, while other processes are executed by the progress control unit 33, etc. Also, in the example of Figure 11, the process in step S510 may be appropriately omitted, for example, when the first chain to the second chain in the example of Figure 8 is determined to be a single set of choices, or when chain rules are applied. Furthermore, the process in Figure 11 may be executed as the process of the analysis model unit 23 in the example of Figure 9. In that case, the process in Figure 10 may be omitted. [Examples]
[0135] Examples related to the computer program and the like according to the above-described embodiment will be explained. However, the technical scope of the present invention is not limited to the following embodiments.
[0136] (UDI) When developing AI, an interface is needed to access the game client (hereinafter referred to as the client) from an external environment such as Python. Therefore, we developed a function called "Universal Duel Interface" (hereinafter referred to as UDI). Figure 12 shows an overview of the UDI system configuration. UDI is a function that allows the AI to exchange duel (match) information and inputs that the client currently needs. There are two types of clients: a card game (game program) and a console simulator designed for high-speed processing. The client sends the following information to the AI via UDI when input is needed or at the end of a duel.
[0137] • Current Duel Information: Information about the players, including their hand, field, graveyard, extra deck, and other publicly available board elements, as well as their LP (Life Points). • Past Duel Information: Duel log lists the movement of cards during the duel. • Executable commands: summon, activate, confirm, etc.
[0138] The AI receives information from the client and transmits the following information via UDI. • Response to the input requested by the client • Text describing the evaluation value and content of an executable command (selection) or a set of commands (selection set). • Predicted face-down cards and their probabilities
[0139] The client progresses through the duel based on the information sent by the AI. If the client is a card game (game program), it also evaluates actions and displays predicted face-down cards.
[0140] (Problem setting) The decks used in the matches were two decks: one centered around the card "Black Magician" and the other centered around the card "Blue-Eyes White Dragon." Hereafter, these will be referred to as the "DM Deck" and the "BE Deck," respectively. This implementation aimed to train the AI without using user play logs. Therefore, opponents or agents to emulate were necessary to efficiently advance the learning process. Thus, in addition to the COM (a computer with the AI under development applied; hereinafter simply referred to as COM), a rule-based AI was created specifically for these decks. The rule-based AI thinks faster than COM and contributes to improved learning efficiency. Furthermore, it is specialized for these decks and stronger than COM, making it an excellent target for emulation. Figure 13 is a table showing the win rates after 2000 matches against COM. Significant differences are marked with an asterisk (*). A Z-test was performed at a significance level of 5% to check if the win rate differed from 50%, and significant differences were found in all combinations. To reduce the influence of hand quality, the hands of both players were fixed for each match, and the first and second players were switched between matches.
[0141] (Model Architecture) For reinforcement learning, we used a proven value-based method. A neural network was used as the function model to output the action value Q. In the card game, the actions that can be selected at each time step are variable. Therefore, we adopted a model that takes state features and action features as input and outputs a single Q value for each action choice. When selecting an action, the input features for each choice are concatenated in the batch direction and input, and the action with the largest output Q value is executed. The method for creating the feature vector will be described later, but the size of the input features is 5294, and a single Q value is output through a 5-layer fully connected network (the sizes of the hidden layers are 2048, 768, 256, and 128).
[0142] (Features) Figure 14 is a table showing some of the input features. For game information such as LP, numerical information was normalized to 0 to 1, and other information was converted to one-hot vectors. For deck and board information, since the card pool is fixed in this case, one-hot vectors and bitmaps of card IDs were mainly used.
[0143] We implemented a special approach to chains. Depending on the chain, a certain action can result in a transition to a different state, making it difficult to model within a general reinforcement learning framework. Therefore, we addressed this by including chain information as a state feature. For example, if no chains exist, the chain vectors are all filled with 0s. On the other hand, when a chain exists, the one-hot vectors of the card that activated it and the cards affected by its effect are added as input features to represent the chain vector. This allows us to represent transitions such as "taking a certain action resulted in a transition to a state where a chain exists." In this card pool, the chain stacking is not very deep, so we added information on the five most recent chains to the state features.
[0144] Furthermore, we also made improvements to the behavioral characteristics. Card games have various card effects, but many of them can be considered as effects that change the location of a card. For example, the effect of Special Summoning a monster from the graveyard can be considered an effect that changes the monster's location from the graveyard to the monster zone (card placement area CP in the front row 54A of field area 54 in the example in Figure 3). Therefore, we added a vector indicating the moving card ID and the original location to the behavioral characteristics. In addition, since there are also effects that strengthen allies and effects that negate opponents' effects, we have also prepared vectors for those as well. Furthermore, we considered the Normal Summon, Attack, and Position Change of monsters, as well as various card sets, to be effects, and similarly prepared vectors for them.
[0145] (Learning Methods) The learning algorithm used was a slightly modified version of the Monte Carlo method. Rewards were given only at the end of the duel: -1 for a loss, 0 for a draw, and +1 for a win. The discount rate was set to 1.0 to achieve the ultimate goal of winning the duel.
[0146] The specific steps are as follows. (1) Create a list for saving data. (2) Once a match is completed, the transitions at each time point (state characteristics, selected action characteristics, reward) are obtained. The reward is either -1, 0, or +1 at all times. (3) Store the obtained data in a storage list. (4) Repeat steps (2)-(3) until the number of data items in the list exceeds 1024. (5) Randomly select 64 batches of data from the list and use them for training. Repeat this 8 times. Note that the data will not be reused. (6) Repeat (2)-(5) more than 2000 times.
[0147] The loss function used was the sum of the squared errors between the model's output and reward. The optimizer used was SGD, with L2 regularization applied. Hyperparameters such as the regularization coefficient and learning rate were modified empirically as training progressed.
[0148] The training data was generated by combining imitation learning and reinforcement learning. In imitation learning, a rule-based AI was made to play matches to generate transition data. This allowed the model to learn the Q-value when acting according to the policy of the rule-based AI. In reinforcement learning, matches were played according to the output of the model to generate transition data. In this case, no exploration was performed, and the model continuously selected the action that would result in the largest Q-value. As an intermediate method, a method was also used in which the action selection by the rule-based AI and the action selection according to the output of the model were switched at a certain probability during the match. During training, the learning process mainly proceeded in the order of imitation learning, intermediate method, and reinforcement learning.
[0149] Furthermore, the models trained using these methods were saved, and the cycle of continuing to train models with high win rates against the COM and against rule-based AI was repeated. Opponents were mainly changed in the order of COM, rule-based AI, and past opponent AI. The decks used were fixed for each model, while the opponent's decks were randomly changed. Approximately 100,000 matches were used for training.
[0150] (result) Figure 15 is a table showing the results after 4000 matches against the COM at the end of training. A Z-test was performed at a significance level of 5% to check if there was a difference in win rate from 50%, and if a significant difference was found, it was marked with an asterisk (*). The AI for DM decks was able to win more matches against the COM, but the AI for BE decks remained at or below the strength of the COM.
[0151] Next, to analyze the qualitative characteristics of the strategies the AI had learned, we observed actual gameplay. While there were instances where the learning was insufficient, such as not attacking in situations where attacking would have resulted in a win, we were able to confirm cases where the AI could execute combos like a rule-based AI. Furthermore, rule-based AIs implement theories such as "not setting spell / trap cards before entering the battle phase," and we observed behaviors that, although incomplete, showed a certain degree of learning in this area as well.
[0152] (Consideration) Using imitation learning and reinforcement learning, we successfully trained an AI to play card games with a certain level of skill. While the win rate is lower than that of rule-based AIs and the AI sometimes exhibits strategically poor behavior, suggesting insufficient training, the fact that it can hardly beat the COM in random play indicates that the method used in this implementation successfully trained the AI in gameplay.
[0153] Furthermore, even though it may not have the same win rate, it offered two advantages that rule-based AI cannot. First, by visualizing the Q-value, it was possible to represent something like the AI's thinking state. In this problem setting, the Q-value reflects the win rate. Therefore, the audience could interpret a high Q-value as the AI being confident in winning, and a low Q-value as being unconfident.
[0154] Next, the possibility of measuring the differences in characteristics between decks was demonstrated. Based on the author's actual gameplay experience, the DM deck could be won by employing a consistent strategy regardless of the opponent, while the BE deck required flexible and precise strategies depending on the opponent. Therefore, it can be inferred that the BE deck was more difficult to learn, which led to the difference in win rates against the computer between the AI for the DM deck and the AI for the BE deck. This suggestion that the difficulty of learning may vary depending on the deck is interesting.
[0155] Regarding the shortcomings of the learning process, there is particular room for improvement in the learning algorithm. Unlike typical reinforcement learning approaches, this method does not perform search, and it is thought that it actually fine-tunes the policy obtained through imitation learning. This method was adopted to create an AI of a certain strength or higher in a short period of time in a problem setting with a large search space and sparse reward design, such as a card game. Also, since the learning was mainly conducted with the win rate against the computer as the metric, there is a possibility that it may not play well when the opponent changes. Therefore, it was felt that there is a need to further refine self-play by incorporating search that does not rely on rule-based AI and league matches, in order to develop a more general-purpose AI.
[0156] Various aspects of the present invention derived from the embodiments and modifications described above are described below. In the following description, corresponding components shown in the accompanying drawings are indicated in parentheses to facilitate understanding of each aspect of the present invention, but this does not mean that the present invention is limited to the illustrated forms.
[0157] The computer program (PG1) of the present invention is configured to make a computer (21) incorporated into a game system (2) that provides a game including progression according to the results of selections in a series of selection opportunities function as an influence acquisition means (25) that acquires game information indicating the state of the game necessary to obtain influence information regarding the influence that each selection set has on the game, using an information acquisition means (25) that acquires influence information regarding each selection set, by utilizing a predetermined process (23) that outputs the influence information based on the game information.
[0158] According to the present invention, by utilizing a predetermined process, influence information regarding the impact of each selection set on the game is obtained by treating a series of selection combinations in a series of selection opportunities as a single selection set. In other words, influence information is obtained for each selection in a series of selection opportunities as a combination of selections. Therefore, more appropriate influence information can be obtained for a series of selections in a series of selection opportunities.
[0159] Influence information may be used as appropriate. For example, it may be provided to the user as supplementary information for playing the game. Alternatively, if the game is played by a team including the user, it may be used to determine a series of choices to be made by one of the team members. Similarly, it may be used to determine a series of choices that the user's opponent should make in a competitive game. Specifically, for example, as one embodiment of the computer program of the present invention, a computer program may be employed in which the computer is further configured to function as a selection determination means (25) that determines one of the multiple selection sets as the selection set to be executed based on the influence information, such that a series of choices of targets corresponding to a selection set to be executed from among a plurality of selection sets are executed in the series of selection opportunities. In this case, a series of choices corresponding to the selection set to be executed determined based on the influence information is realized. Therefore, the game can be advanced based on the influence information.
[0160] Furthermore, in an embodiment in which the computer functions as a selection decision means, a competitive game is provided as the game, in which multiple players compete against each other, and the predetermined process is configured to output information regarding the relative importance of the influence each selection set has on victory in the competitive game as the influence information, and the series of selections of the target may be executed as the selection of one of the multiple players. In this case, the target to be executed is determined based on the influence of each selection set on victory, and that target to be executed is executed as the selection of one player. Therefore, so-called computer matches that utilize the influence of each selection set on victory can be realized.
[0161] Multiple players may be any type of player. For example, multiple players may include users (people), or they may not include users and be all computers (not limited to computers running the computer program of the present invention, but including other computers that utilize the decision results provided by that computer). Similarly, competitive games may be configured as appropriate. For example, a competitive game may be configured so that multiple players make choices at any time (in parallel), or it may be configured so that turns containing a series of choice opportunities are given sequentially. Even when turns are given sequentially, the selection of players outside of their turn does not have to be completely excluded in each turn, for example, when one player makes a choice during their turn, other opposing players may be prompted to make a choice. Also, when turns are given sequentially, the turn change may be performed automatically according to time, the number of instructions, etc., or it may be performed as one of the choices in each turn. Furthermore, each turn may be configured as appropriate, for example, it may contain only a series of choice opportunities, or it may contain other choice opportunities. Within each turn, various opportunities for choice may be provided, appropriately distinguished through phases, etc. The choices in each opportunity may be the same, or at least some (or all) of the choices may differ. Furthermore, the end of each phase may be automatic or optional. Choices such as passing a turn or ending a phase may function as one of a series of choices, or they may be performed as choices separate from a series of choices.
[0162] For example, in one embodiment of the computer program of the present invention, the competitive game may be configured such that each player is sequentially provided with turns including the series of selection opportunities. In this embodiment, the competitive game is configured such that, before at least one of the selections in the series of selections is executed, a counter-selection opportunity is given to a player other than the first player, as an opportunity to make a selection that opposes the first player. The selection determination means may, if one selection becomes unexecutable due to the selection result of the counter-selection opportunity, determine subsequent selections according to predetermined rules. In this case, even if the series of selections becomes unexecutable due to the counter-selection opportunity, an executable selection is determined in place of the unexecutable selection according to predetermined rules. In other words, since the series of selections are complemented by the determination of alternative selections, the counter-selection opportunity does not hinder the acquisition of influence information in units of selection sets. For this reason, even in a game that includes a counter-selection opportunity, it is possible to acquire influence information in units of selection sets.
[0163] In a series of selections of targets, if subsequent selections are determined according to a predetermined rule, the predetermined rule may be set as appropriate. For example, it may be set to a rule that uses the next most favorable set of selections based on the influence information at the time of determining the set of selections of the target to be executed. Alternatively, it may be set to a rule that randomly selects from the executable selection candidates. Specifically, for example, in one embodiment of the present invention that utilizes a predetermined rule, the predetermined rule may be a lottery result, and the selection determination means may randomly determine the selections after the first selection according to the lottery result.
[0164] A series of selection opportunities may consist of appropriate selection opportunities that are intended to be provided as a set. For example, a series of selection opportunities may be selection opportunities that perform related selections, or selections that are required as a set but are unrelated to each other. Furthermore, if it consists of related selection opportunities, the relationship may be appropriate. For example, the relationship may be of the type in which the selections in a later selection opportunity are limited (changed) by the selection in a earlier selection opportunity. Alternatively, the relationship may be of the type in which the selections in a later selection opportunity are derived from the selection in any selection opportunity, including the first selection opportunity. For example, in one embodiment of the computer program of the present invention, the series of selection opportunities may be configured such that in a selection opportunity following one selection opportunity, options derived from the selection in the first selection opportunity are provided. In this case, more appropriate influence information can be obtained in selections that tend to become more complex, which are of the type derived from the selection in one selection opportunity.
[0165] The predetermined process may be configured as appropriate, as long as it can output impact information. For example, the predetermined process may be configured to output impact information according to predetermined logic (including predetermined rules and calculation formulas, etc.). Alternatively, the predetermined process may be configured as an artificial intelligence model (so-called AI) generated to output impact information. Specifically, in one embodiment of the computer program of the present invention, the predetermined process may be configured as a trained artificial intelligence model (23) generated to output the impact information by having a pre-trained model machine learn a predetermined training dataset.
[0166] On the other hand, the present invention provides a game (2) that includes a game that progresses according to the results of selections in a series of selection opportunities, and comprises: an information acquisition means (25) that acquires game information indicating the state of the game necessary to obtain influence information regarding the influence that each selection set has on the game, with the combination of a series of selections in the series of selection opportunities being a single selection set; and an influence acquisition means (25) that acquires the influence information for each selection set by utilizing a predetermined process (23) that outputs the influence information based on the game information.
[0167] Furthermore, the control method of the present invention causes a computer (21) incorporated into a game system (2) that provides a game including progression according to the selection results in a series of selection opportunities to execute an information acquisition procedure for acquiring game information that indicates the state of the game, which is necessary to obtain influence information regarding the influence that each selection set has on the game, as a single selection set formed by a series of combinations of selections in the series of selection opportunities, and an influence acquisition procedure for acquiring the influence information for each selection set by using a predetermined process that outputs the influence information based on the game information. [Explanation of Symbols]
[0168] 2. Game Server (Game System) 21. Control Unit (Computer) 23. Analysis Model Section (Prescribed Processing) 25. COM Match Implementation Unit (Information Acquisition Means, Influence Acquisition Means, Selection Decision Means) PG1 Server Program (Computer Program)
Claims
1. A computer incorporated into a game system that provides a game that includes progression based on the results of choices in a series of choice opportunities, including choice opportunities that branch so that the number of subsequent choice opportunities changes depending on the choice result, Information acquisition means for acquiring game information indicating the state of the game, which is necessary to obtain influence information regarding the influence that each selection set has on the game, with the combination of a series of selections in the series of selection opportunities being treated as a single selection set, so that in the series of selection opportunities, the next selection opportunity includes the selection from the previous selection opportunity as part of the game state, and An influence acquisition means that acquires the influence information for each selection set by utilizing a predetermined process that outputs the influence information based on the game information for each selection opportunity in the series of selection opportunities, A computer program configured to function as such.
2. The aforementioned computer, The computer program according to claim 1, further configured to function as a selection determination means for determining one of the multiple selection sets as the selection set to be executed, based on the influence information, such that a series of selections of targets as a series of selections corresponding to the selection set to be executed from among multiple selection sets are executed in the series of selection opportunities.
3. As mentioned above, a competitive game is provided in which multiple players compete against each other. The predetermined process is configured to output information regarding the relative importance of each selection set's influence on victory in the competitive game as the influence information. The computer program according to claim 2, wherein the series of selections of the aforementioned targets is performed as a selection of one of the plurality of players.
4. The computer program according to claim 3, wherein the competitive game is configured such that each player is sequentially provided with turns including the series of selection opportunities.
5. The competitive game is configured to grant a player other than the first player a counter-selection opportunity, which is an opportunity to make a choice that opposes the first player, before at least one of the series of choices for the target is made. The computer program according to claim 4, wherein the selection decision means determines subsequent selections according to a predetermined rule when one selection becomes impossible to execute due to the selection result of the competing selection opportunity.
6. The lottery results are used as the prescribed rule. The computer program according to claim 5, wherein the selection determination means randomly determines subsequent selections in accordance with the lottery result.
7. The computer program according to any one of claims 1 to 6, wherein the series of selection opportunities are configured such that in a selection opportunity following one selection opportunity, options derived from the selection in the first selection opportunity are provided.
8. The computer program according to any one of claims 1 to 6, wherein the predetermined processing is configured as a trained artificial intelligence model generated to output the influence information by having a pre-trained model machine learn a predetermined training dataset.
9. A game system that provides a game that includes progression based on the results of choices in a series of choice opportunities, including choice opportunities that branch so that the number of subsequent choice opportunities changes depending on the choice result, Information acquisition means for acquiring game information indicating the state of the game, which is necessary to obtain influence information regarding the influence that each selection set has on the game, with the combination of a series of selection opportunities being treated as a single selection set, such that in each of the series of selection opportunities the selection from the previous selection opportunity is included as the state of the game in the next selection opportunity. An influence acquisition means that acquires the influence information for each selection set by utilizing a predetermined process that outputs the influence information based on the game information for each selection opportunity in the series of selection opportunities, A game system that includes these features.
10. A computer incorporated into a game system that provides a game that includes progression based on the results of choices in a series of choice opportunities, including choice opportunities that branch so that the number of subsequent choice opportunities changes depending on the choice result, Information acquisition procedure for acquiring game information indicating the state of the game, which is necessary to obtain influence information regarding the influence that each selection set has on the game, by treating a series of combinations of selections in the series of selection opportunities as a single selection set, such that in the series of selection opportunities, the selections from the previous selection opportunity are included as the state of the game in the next selection opportunity, An influence acquisition procedure for acquiring influence information for each selection set, using a predetermined process that outputs influence information based on the game information for each selection opportunity in the series of selection opportunities, A control method to execute something.