Computer program, game system used in same, and control method
The game system provides impact information through analysis of selection sets, addressing complexity in series of selection opportunities, enhancing decision-making in games like card games.
Patent Information
- Application Number
- PCT/JP2025/013460
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-27
- Filing Date
- 2025-04-02
- Publication Date
- 2025-12-04
AI Technical Summary
Existing game systems with series of selection opportunities, such as card games, often lead to complicated game developments due to the need for deep knowledge of card combinations and complex decision-making, especially in computer-based matches, where considering the appropriateness of each choice in a series is crucial for optimal outcomes.
A computer program and game system that utilize information acquisition and influence acquisition means to analyze the impact of each selection set, providing influence information based on game information, enabling more appropriate decision-making in series of selection opportunities.
Enhances decision-making in games with series of selection opportunities by providing impact information, simplifying complex scenarios and improving the appropriateness of choices, especially in computer-assisted gameplay.
Smart Images

Figure JP2025013460_04122025_PF_FP_ABST
Abstract
Description
Computer program, game system using same, and control method
[0001] The present invention relates to a computer program that is applied to a computer incorporated in a game system that provides a game that progresses according to the results of selections made in a series of selection opportunities.
[0002] There are game systems that provide a game that progresses according to the results of selections made in a series of selection opportunities. For example, a game system that provides a card game via a game screen that includes card objects is known (see, for example, Patent Document 1). Another prior art document related to the present invention is Patent Document 2.
[0003] JP 2018-175636 A JP 2021-159187 A
[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 at each selection opportunity. The rules of the card game may be changed as appropriate. Furthermore, various card games may 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 such as those described in Patent Document 1 or Patent Document 2 are often provided as competitive games. Competitive games often include single-player computer battles (hereinafter sometimes referred to as "COM battles"). Meanwhile, card games such as those described in Patent Document 1 or Patent Document 2 include a series of selection opportunities that are provided as a set. For example, the card game described in Patent Document 1 requires a series of selections, 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 the card's effect will be activated, and where that effect will be activated. Therefore, a series of selection opportunities arise for these series of selections. The same is true for the card game described in Patent Document 2.
[0006] However, this type of series of selection opportunities is likely to lead to complicated game developments. For example, it is necessary to consider situations that arise from card combinations. It is also necessary to select factors to be considered based on the effects of card objects, and in the case of computer-based matches, to devise calculation formulas for these. Deep knowledge of the entire game is also required. Furthermore, card games such as those described in Patent Document 1 or Patent Document 2 generally have a huge variety of cards, and new cards are often added continuously.
[0007] Furthermore, a series of choice opportunities are often presented in such a way that options derived from the first choice are developed in sequence. In this type of series of choice opportunities, independently considering the first choice may not yield an appropriate result. For example, if a card effect (progression) associated with the series of choices occurs after the final choice in the series, unless the appropriateness of the choice in the final choice opportunity is considered, an appropriate decision may not be made even if only the appropriateness of each option in the first choice opportunity is considered. In this case, a computer-based match requires consideration of not only the candidate options in the facing choice opportunity, but also the candidate options in the final choice opportunity in the series. For this reason, there is a need for computer-based matchups that enable more appropriate decisions to be made in games that include a series of choice opportunities. Furthermore, similar needs exist not only in computer-based matchups but also in games that require computer-based decisions, such as computer-assisted advice. Furthermore, similar needs exist in games other than card games as long as they include a series of choice opportunities.
[0008] Therefore, an object of the present invention is to provide a computer program or the like that can acquire more appropriate influence information for a series of choices in a series of selection opportunities.
[0009] The computer program of the present invention is configured to cause a computer incorporated in a game system that provides a game that progresses according to the results of selections made in a series of selection opportunities to function as: 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 a combination of a series of selections made in the series of selection opportunities being treated as one selection set; and influence acquisition means for acquiring the influence information regarding each selection set by utilizing a predetermined process that outputs the influence information based on the game information.
[0010] On the other hand, the game system of the present invention is a game system that provides a game that progresses according to the results of selections made in a series of selection opportunities, and is equipped with an information acquisition means that acquires game information indicating the state of the game necessary to obtain impact information regarding the impact that each selection set has on the game, with a combination of selections made in the series of selection opportunities being treated as one selection set, and an impact acquisition means that acquires the impact information regarding each selection set by utilizing a predetermined process that outputs the impact information based on the game information.
[0011] Furthermore, the control method of the present invention causes a computer incorporated in a game system that provides a game that progresses according to the results of selections made in a series of selection opportunities to execute an information acquisition procedure 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 a combination of a series of selections made in the series of selection opportunities being treated as one selection set, and an influence acquisition procedure that acquires the influence information regarding each selection set using a predetermined process that outputs the influence information based on the game information.
[0012] 1 is a diagram showing a schematic configuration of a network system to which a game system according to an embodiment of the present invention is applied; a functional block diagram showing the main parts of a control system of the network system; a diagram schematically showing an example of a battle screen for playing a card game; a diagram showing an example of the procedure for progressing a card game; an explanatory diagram for explaining an example of a series of selection opportunities; an explanatory diagram for explaining a list of options (actions) that a player can take in a certain situation on the battle screen; an explanatory diagram for explaining an example of a method by which an artificial intelligence model calculates probability values; an explanatory diagram for explaining an example of a chain; a flowchart showing an example of the procedure for selection execution processing; a flowchart showing an example of the procedure for selection redetermining processing; a flowchart showing an example of the procedure for battle AI processing; a diagram showing an overview of the system configuration of UDI; a table showing the win rate after 2,000 matches against COM; a table showing some of the input features; a table showing the results of 4,000 matches against COM at the end of learning.
[0013] (Overall Configuration) A control method according to one embodiment of the present invention, and a game system in which a computer program is implemented (a game system according to one embodiment of the present invention) will be described below with reference to the drawings. First, the overall configuration of a network system to which a game system according to one 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 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 one embodiment of the present invention. The game server 2 functions as a game system in the network system 1 in accordance with one embodiment of the present invention.
[0014] The user device 3 is a device used daily by a user and is a computer device (information and communication terminal device) equipped with an information and communication function via the network NT. The user device 3 may be a smartphone or a tablet device equipped with a communication and call function. The user device 3 may be a PC (short for personal computer) or a personal or home game machine provided as a so-called consumer game machine. Furthermore, the user device 3 may also be an arcade game machine for commercial use. The following describes, as an example, a case where a smartphone is used as the user device 3.
[0015] The user device 3 functions as a game machine by implementing predetermined software (applications). The user device 3 provides a game that progresses according to the results of selections made over 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 competitive game (video game) in which the user of the user device 3 competes against opponents (other users, including computers) according to predetermined rules via a game screen including multiple objects. In a competitive game, the user and the opponents may function as members of a team, and the competitive game may be played in a one-on-many format (including cases where multiple users other than the user are independent opponents, such as in mahjong) or a many-on-many format. The following describes, as an example, a competitive game played in a one-on-one format.
[0016] Competitive games may be provided as either perfect information games such as shogi or chess (both of which use pieces as objects), or imperfect information games. In contrast to perfect information games in which all of the elements necessary for selection in a selection opportunity are shared with the user, imperfect information games are games in which the contents of at least one element of a group of elements (e.g., the contents of cards in a card game) used by other users (including computers) are not shared with the user. Imperfect information games include various games such as mahjong. Below, we will explain, as an example, the case where a card game classified as an imperfect information game is provided as a competitive game.
[0017] The game server 2 may be configured by appropriately combining multiple server units (server devices), or may be configured by a single server unit. The game server 2 may be configured as a cloud server using cloud computing technology. The game server 2 provides various services related to the game to the user device 3. These services include an analysis service. The analysis service is a service for assisting the progress of the game. Specifically, the analysis service is a service for analyzing the impact on the card game of choices made to progress the game. The analysis service will be described in detail below.
[0018] The game server 2 may also provide various other services to the user devices 3, such as a distribution service, a matching service, or a relay service. The distribution service is a service that distributes computer programs and various data necessary for playing a game on the user devices 3. The matching service is a service that matches users who want to cooperate or compete in a game. The relay service is a service that relays game information that should be shared between user devices 3.
[0019] The network NT may be configured as appropriate as long as it can connect the user device 3 to the game server 2. As an example, the network NT is configured to realize network communication using the TCP / IP protocol. Typically, the network NT is configured by combining the Internet as a WAN and an intranet as a LAN. In the example of Figure 1, the game server 2 is connected to the network NT via a router NTr, and the user device 3 is connected to the network NT via an access point PP.
[0020] (Control System of Network System) Next, the main parts of the control system of the network system 1 will be described with reference to Figure 2. First, the game server 2 is provided with a control unit 21 and a storage unit 22 as storage means. The control unit 21 is configured as a computer that combines a processor unit that executes various arithmetic processes and operational control according to a predetermined computer program with internal memory and other peripheral devices required for the operation. The processor unit may include units such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and an NPU (Neural Network Processing Unit) as appropriate (including cases where each processor unit is integrated as appropriate, such as when a GPU is incorporated into a CPU).
[0021] The memory unit 22 is an external storage device realized by a memory unit including a non-volatile memory medium (computer-readable memory medium) such as a hard disk array. The memory unit 22 may be configured to store all data on a single memory unit, or may be configured to store data in a distributed manner across multiple memory units. The memory unit 22 stores a server program PG1 and server data SD. The server program PG1 is a computer program that causes the control unit 21 to execute processes necessary to provide various services to the user device 3. The server program PG1 may include various programs as appropriate depending on the processes to be executed by the control unit 21. The example in FIG. 2 shows an analysis program AP as an example.
[0022] The analysis program AP is a computer program that causes the control unit 21 to execute various processes for realizing an analysis service. The analysis program AP may be configured as appropriate, and may be configured, for example, to cause the control unit 21 to execute a process for outputting analysis results based on predetermined logic (including predetermined rules such as rules). In the example of FIG. 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 analytical trained data (parameters) AD that are output by training a training program (for analysis) on a training dataset (for analysis).
[0023] The server data SD is data referenced by the server program PG1 to provide various services. The server data may include appropriate data related to the various services. In the example of FIG. 2 , play data PD and analytical learned data AD are shown as examples. The play data PD describes information about each user's past playing history. The play data PD may include other information necessary for managing each user, such as various personal information including attributes such as the user's gender or address, in addition to play history. Each user's possessions in the card game may be managed as appropriate, and are managed by the play data PD, for example. Specifically, the card game is configured to grant card objects to users who meet certain granting conditions (such as purchase, loan, lottery, or granting due to game progress). The card objects granted to each user (hereinafter sometimes referred to as "owned cards") are managed in association with each user in the play data PD.
[0024] The control unit 21 can be provided with various logical devices by combining the hardware resources of the control unit 21 with the server program PG1 as a software resource. In the example of Figure 2, an analytical model unit 23 and a COM battle realization unit 25 are shown as examples.
[0025] The analytical model unit 23 is a logical device that functions as an artificial intelligence model. The analytical model unit 23 functions as an artificial intelligence model that outputs analysis results based on the analytical program AP. The analytical model unit 23 (artificial intelligence model) is realized, for example, by a combination of analytical trained data AD and the analytical program AP (the analytical program AP executed by incorporating the analytical trained data AD), and performs various processes to realize the analytical service. This type of artificial intelligence model can form different thoughts depending on various factors. For example, this type of artificial intelligence model tends to have different thoughts 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 analytical trained data AD), and the algorithm of the inference program. The analytical model unit 23 performs various processes related to the analytical service in accordance with the analytical program. This process includes, for example, a process of outputting impact information regarding the impact of each selection on the game based on a game situation indicating the game situation.
[0026] The COM battle realization unit 25 is a logical device that executes various processes for realizing a computer battle (COM battle) in a card game. Various modes may be provided for a card game, including an AI battle mode in which a player battles against an AI. When the AI battle mode is selected in the card game, the COM battle realization unit 25 executes various processes for realizing the battle. For example, in the AI battle mode, the COM battle realization unit 25 executes a process for determining each selection in a series of selection opportunities based on the analysis results output by the analytical model unit 23. As such processes, the COM battle realization unit 25 executes, for example, a selection execution process and a selection redetermination process. The procedures for the selection execution process and the selection redetermination process will be described in detail below.
[0027] The control unit 21 may also be provided with a service management unit as a logical device for implementing processes related to various services, such as the distribution service, matching service, or relay service described above. Similarly, input devices such as a keyboard and output devices such as a monitor may be connected to the control unit 21 as needed. However, these are not shown in the drawings.
[0028] On the other hand, the user device 3 is provided with a control unit 31 and a storage unit 32 as storage means. The control unit 31 is configured as a computer that combines a processor unit that executes various arithmetic processes and operation control according to a predetermined computer program with an internal memory and other peripheral devices required for the operation. The processor unit may include units such as a CPU, a GPU, and an NPU as appropriate, similar to the game server 2 (including cases where each processor unit is appropriately integrated, such as when a GPU is incorporated into a CPU).
[0029] The memory unit 32 is an external storage device realized by a storage unit including a non-volatile storage medium (computer-readable storage medium) such as a hard disk or semiconductor storage device. The memory unit 32 stores a game program PG2 and game data GD. The game program PG2 is a computer program that causes the control unit 21 to execute processes necessary to make the user device 3 function as a game device. The game data GD is data referenced by the game program PG2 to provide 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] The game data GD may include various data (including various tables) necessary for playing the game, such as image data, audio data, and card data, as appropriate. Image data is data for displaying various images for the game. Audio data is data for playing various sounds (including background music such as music). Card data is data for defining each card object. In the example of Figure 2, play data PD is shown as an example of such various data. The play data PD is provided and saved from the game server 2 as needed. Furthermore, when an analysis program AP is provided to the user device 3 from the game server 2, the game data GD may include analytical learned data AD.
[0031] The control unit 31 is provided with a progress control unit 33 and a data management unit 34 as logical devices realized by a combination of the hardware resources of the control unit 31 and the game program PG2 as software resources. The data management unit 34 executes various processes related to the management of the game data GD. For example, when a card object is given to a user, the data management unit 34 executes a process to reflect the card object in the play data PD as an owned card.
[0032] The progress control unit 33 executes various processes necessary for the progress of the card game. These processes include processes necessary for enjoying the services provided by the game server 2. For example, the progress control unit 33 executes processes related to opponent matching in cooperation with the service management unit, and processes for reflecting the opponent's play on the player's own progress during a match, and vice versa. The progress control unit 33 also executes processes for providing selection opportunities during each turn or phase, which will be described later, and for switching between turns and phases.
[0033] The processing executed by the progress control unit 33 includes processing for realizing the AI battle mode. Therefore, the progress control unit 33 also executes processing in cooperation with the COM battle realization unit 25 of the game server 2. For example, the progress control unit 33 executes processing for actually executing each selection determined by the COM battle realization unit 25 in the AI battle mode. As an example of such processing, the progress control unit 33 executes a selection execution processing and a selection re-determination processing in cooperation with the COM battle realization unit 25.
[0034] The progress control unit 33 also generates a situation log SL that records game information necessary for analysis by the analytical model unit 23, stores the situation log SL in the internal storage device of the control unit 31, and executes processing to appropriately update the situation log SL as the situation changes. The situation log SL may appropriately include various information related to the game situation as game information. For example, the situation log SL (data) includes various information (which may be limited to an appropriate portion of the information) for determining the status of the card game, such as information on all card objects currently in use, information on each card object placed in various placement locations described below, attributes of each card object (including the status of each card object, such as whether it has been summoned or left the field area, described below), life points, phases, and information on options selectable in each situation.
[0035] The user device 3 is provided with appropriate output devices and input devices. In the example of FIG. 2, a monitor MO, a speaker SK, and a touch sensor TS are shown as examples of output devices. All of these are general-purpose hardware provided in information communication terminals such as smartphones. For example, the touch sensor TS is an input device that inputs signals corresponding to a user's touch operation (operation of touching with a finger) to the control unit 31. The speaker SK is an output device that reproduces various sounds in response to signals from the control unit 31. The monitor MO is an output device (display device) that presents a game screen, etc. in response to signals from the control unit 31. Note that the user device 3 may also be provided with various other devices, such as a gyro sensor, an acceleration sensor, a location information (e.g., GPS information) receiving device, etc., as appropriate.
[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 suitable game. As an example, the card game is configured as a video game played via a game screen including various areas where each card object should be placed. Furthermore, the card game is configured to be played using a deck card, which is a pile of card objects (a group of a predetermined number of card objects) selected by the user for play from a group of owned cards.
[0037] FIG. 3 is a diagram schematically illustrating an example of a battle screen for playing a card game. The battle screen 50 is a game screen displayed when a user and an opponent battle using each other's deck cards. Various card objects may be arranged (displayed) on the battle screen 50. However, in the example of FIG. 3, for ease of explanation, regardless of type or content, card objects CO facing face-up (the orientation in which the content of the card object can be viewed by the user) are shown with a dotted pattern, and card objects facing back-up (the orientation in which the content of the card object cannot be viewed and is concealed) are shown with a right-hand diagonal line. The predetermined number constituting a deck card may be fixed or variable, and may not match the number of deck cards of the opponent.
[0038] As shown in Fig. 3, the battle screen 50 includes a user area 51, a common area 52, and an opponent area 53. The user area 51 is an area dedicated to the user. The user area 51 can be configured as appropriate. In the example of Fig. 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 excluded area EA, and a point display area LR.
[0039] The field area 54 is an area where multiple card spaces CP (only some of which are indicated by symbols) are formed. Each card space CP is a location (area) where a card object CO from the deck of cards is placed to progress the game. Card games may be provided with various card objects CO with various roles (purposes), effects, etc. For example, card objects CO may be provided, such as a card object CO representing a monster (hereinafter sometimes referred to as a "monster card CO1"), a card object CO representing a magic spell (a predetermined effect) (hereinafter sometimes referred to as a "magic card CO2"), a card object CO representing a trap (a type of effect different from magic) (hereinafter sometimes referred to as a "trap card CO3"), or a card object CO representing a special effect (hereinafter sometimes referred to as a "special card CO4"). When a card object CO is placed in each card space CP, the card object CO actually performs its role in the battle.
[0040] For example, monster cards CO1 are assigned roles such as attacking or defending against the opponent or the opponent's monster cards CO1. Monster cards CO1 can be classified into various types. As an example, monster cards CO1 include two types: normal monster cards CO1 and extra monster cards CO1. Normal monster cards CO1 are monster cards CO1 that can be placed from the hand placement area 57 to the field area 54.
[0041] On the other hand, the extra monster card CO1 is a monster card CO1 that is summoned (called) in exchange for a monster card CO1 leaving the field area 54. The placement (summoning) of the extra monster card CO1 is normally restricted to the common area 52, but placement in the field area 54 may be permitted if certain field conditions are met. For this reason, the monster card CO1 may have the role of summoning (calling) other monster cards CO1 to the field area 54, etc. The monster card CO1 placed in the card area CP is used to actually assign roles such as attack, defense, or summoning to the progress of the game.
[0042] Similarly, a magic card CO2, a trap card CO3, and a special card CO4 are card objects CO that can be placed from the hand placement area 57 to the field area 54. These are placed in the card area CP and are used to activate the effects indicated by each card object CO.
[0043] The multiple card places CP may be arranged appropriately in the field area 54. In the example of FIG. 3 , the multiple card places CP are arranged to form two rows, a front row 54A located closer to the opponent area 53 and a back row 54B located behind it. The front row 54A and the back row 54B are formed by six card places CP and five card places CP arranged side by side, respectively. Any card object CO may be placed in each card place CP without any restrictions. As an example, a restriction is placed on the type of card object CO that can be placed in each card place CP. The front row 54A and the back row 54B may be used appropriately, for example, depending on the type of card object CO that can be placed.
[0044] Specifically, the front row 54A is used as each card placement space CP where monster cards CO1, one of the card object CO types, should be placed. However, of the six card placement spaces CP that make up the front row 54A, the leftmost card placement space CP (which may be formed as desired, but in the example of FIG. 3 is formed slightly smaller than the other card placement spaces CP) is the only exception. The leftmost card placement space CP is used as each card placement space CP where special cards should be placed. In other words, the placement of card objects CO such as magic cards CO2 or trap cards CO3 in the front row 54A is restricted, the placement of special cards CO4 in any card placement space CP other than the leftmost card placement space CP in the front row 54A is restricted, and the placement of monster cards CO1 in the leftmost card placement space CP is further restricted.
[0045] On the other hand, the back row 54B is used as card spaces CP for placing magic cards CO2 and trap cards CO3, among the card object CO types. In other words, placement of card objects CO such as monster cards CO1 or special cards CO4 in the back row 54B is restricted. Monster cards CO1 with the characteristics of magic cards CO2 (monster cards CO1 corresponding to monsters with magical effects) may also be prepared, and such monster cards CO1 with magical attributes may be permitted to be placed in predetermined card spaces CP in the back row 54B (e.g., the card spaces CP at both the left and right ends). In other words, card objects CO with multiple attributes may be included, and placement of such card objects CO may be permitted in both the front row 54A and the back row 54B depending on the multiple attributes.
[0046] In the field area 54, card objects CO can be placed as appropriate in accordance with the user's instructions, subject to the restrictions of each card placement area CP. In the example of FIG. 3, one monster card CO1 is placed in the third card placement area CP from the right in the front row 54A. Furthermore, each card object CO may be placed in a card placement area CP so as to face in various directions, such as vertically or horizontally, and the placement direction, such as vertically, can be used appropriately. In the example of FIG. 3, the monster card CO1 is placed horizontally when used in defense and vertically when used in attack.
[0047] The hand placement area 57 is an area where card objects CO (hereinafter, sometimes referred to as hand CO5) from the deck cards that are virtually at hand should be placed (displayed). The hand CO5 is a candidate card object CO to be 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 of FIG. 3 , five hand CO5 cards 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 objects CO representing the remaining deck cards (the original deck cards minus the card objects CO in the field area 54 and hand placement area 57) should be placed. However, the main deck placement area 55 and the extra deck placement area 56 have different uses.
[0049] Specifically, the main deck placement area 55 is an area where remaining deck cards, including card objects CO (hereinafter sometimes referred to as the deck CO6) that are candidates for addition to the hand CO5, should be placed. The card objects CO from the deck CO6 are added to the hand CO5 through a draw in the draw phase, which will be described later. On the other hand, the extra deck placement area 56 is an area where a group of card objects (hereinafter sometimes referred to as the extra deck cards CO7) consisting of a stack of extra monster cards CO1 should be placed. When an extra monster card CO1 is summoned via a normal monster card CO1, the extra monster card CO1 to 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 are placed in the main deck placement area 55 and the extra deck placement area 56, respectively.
[0050] In principle, the graveyard area 58 is an area for storing card objects CO that have left the field area 54. For example, a monster card CO1 will leave the field area 54 when a predetermined condition (a condition for leaving the field area 54, etc.) is met, such as an attack by the opponent's monster card CO1 or the summoning of an extra monster card CO1. Similarly, card objects CO that exert predetermined effects, such as a magic card CO2 or a trap card CO3, will leave the field area 54 according to the card's effect after activating that effect. The graveyard area 58 is provided as a place (destination) for storing (placing) card objects CO that have left the field area 54. The graveyard area 58 may be configured to display card objects CO that have left the field area 54. In the example of FIG. 3 , the graveyard area 58 is configured to omit displaying card objects CO.
[0051] The exclusion area EA is an area for placing card objects CO that have been removed from the game. When a predetermined exclusion condition is met, the card object CO is removed from the game and placed in the exclusion area EA. The exclusion area EA may be configured to display the card object CO placed therein, but in the example of FIG. 3 , it is configured to omit display of the card object CO, similar to the graveyard area 58.
[0052] The point display area LR is an area for displaying the user's life points. In a card game, appropriate life points may be set for both the user and the opponent. As an example, 8000 life points are set for each player, and in the example of FIG. 3, this value, "8000" (initial value), is displayed as the remaining balance in the point display area LR. The win / loss condition for determining victory or defeat in a battle may be set as appropriate, but is met, for example, when the opponent's life points are reduced to zero. In other words, life points function as a parameter for determining victory or defeat. Specifically, the user can reduce the opponent's life points by using monster cards CO1 placed in the field area 54 and the common area 52 in attacks. If the opponent's life points are reduced to zero, the user is declared a winner and the battle ends. Conversely, if the user's life points are reduced to zero by an attack from the opponent's monster card CO1, the user is declared a loser and the battle ends.
[0053] The common area 52 is an area shared by the user and the opponent. The common area 52 may be configured as appropriate. In the example of FIG. 3 , two card spaces CP are provided in the common area 52. The user's card object CO and the opponent's card object CO are appropriately placed in each card space CP. As an example, placement in each card space CP is limited to extra monster cards CO1. In other words, an extra monster card CO1 summoned from an extra deck card CO7 is first placed in each card space CP in the common area 52, and is only allowed to be placed in the field area 54 when certain field conditions are met. Note that placement in each card space CP in the common area 52 may be allowed without restriction, regardless of the type of card object CO.
[0054] The opponent area 53 is an area reserved for the opponent. The opponent area 53 plays the same role as the user area 51 for the opponent. For this reason, the opponent 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 excluded area EA, and a point display area LR. Since their roles are the same as those of the user area 51, their explanation will be omitted.
[0055] FIG. 4 is a diagram showing an example of the procedure for playing the card game in the example of FIG. 3 . As shown in FIG. 4 , the card game includes a user turn and an opponent turn (including a computer turn). The game proceeds in a so-called turn-based format, in which the user and the opponent (hereinafter, sometimes referred to as "players" when no distinction is made between the two) alternate (in order) throughout these turns. Specifically, as preparation for the game, for example, players' deck cards are shuffled and placed in the main deck placement area 55, and a predetermined number of card objects CO are drawn from each player's deck cards (the deck CO6) and displayed (placed) as their hand CO5 in the hand placement area 57. Once preparation is complete, the game begins with the turn of the player going first (for example, the user going first). Each turn is divided into multiple phases. Phases are a concept for dividing the procedures to be performed in one turn into multiple stages according to their content and nature. In the example of FIG. 4 , one turn is divided into six stages, from the draw phase to the end phase, but this is merely an example.
[0056] In each phase, the player given a turn can select an appropriate action within the range set for that phase. An example is as follows: In the draw phase, a card object CO6 is drawn from the deck CO6, and in the standby phase, the effect of the card object CO6 designated for effect processing in that phase can be activated. In the first main phase, various actions are permitted using the card objects CO6 in the field area 54 as appropriate, such as summoning various objects such as monsters to be used in battle, setting card objects CO6 with unique effects such as spells and traps, or activating their effects. In the battle phase, a battle is conducted using card objects CO6. For example, a battle is conducted by selecting a monster card CO6 to be used in the user's attack during their turn and a monster card CO6 to be targeted by the opponent's attack (a direct attack on Life Points if no monster card CO6 is present in the field area 54). The outcome of the battle is determined by parameters such as the attributes and strength of the monster card CO6. In the second main phase, the same actions as in the first main phase are permitted. The end of the turn is announced during the end phase.
[0057] Note that combat during the Battle Phase can be avoided by the player who has been given a turn. In that case, the Battle Phase and the Second Main Phase are skipped. Similarly, the player can also avoid the Second Main Phase during the Battle Phase by choosing to do so. Furthermore, the types of phases provided in each turn may vary as appropriate, such as skipping the Draw Phase, Battle Phase, and Second Main Phase during the first turn. The end of a phase is indicated by a predetermined end operation. After a turn ends, the turn passes to the opposing player. As turns are alternated, the game ends when a predetermined victory or defeat condition is met. As an example of the victory or defeat condition, as described above, the victory or defeat condition is met when the life points set for each player decrease to a predetermined value (e.g., 0) through combat.
[0058] (Analysis Service) Next, with reference to FIG. 5, the analysis service will be described in detail. As described above, the analysis service is a service that analyzes the impact of each choice on the card game. As a result of the analysis, the analysis service may provide various information regarding the impact of each choice (hereinafter, sometimes referred to as impact information). 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 selection opportunities. For example, the analysis service is applied to selection opportunities included in the battle screen 50.
[0059] Specifically, a battle on the battle screen 50 is played by players repeatedly repeating turns including multiple phases, as shown in FIG. 4 . Therefore, options on the battle screen 50 may include a phase end instruction to end each phase (e.g., entering the next battle phase in the first main phase) or a turn end instruction to end each turn. Furthermore, on the battle screen 50, deck cards (a group of card objects) are used throughout each phase as described above and placed in the field area 54 or the like via the hand CO5. Therefore, the user is required to select which hand CO5 to place in which card area CP and how. For magic cards CO2 and trap cards CO3, the user must also select when and how to activate their effects. For monster cards CO1, the user must also select whether to attack in 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 relative merits of these options is provided.
[0060] The superiority / inferiority information may be provided appropriately on the battle screen 50, for example, via an advice display field for displaying the superiority / inferiority information. The advice display field may be displayed appropriately, and may be displayed automatically without a request, or may be displayed upon a predetermined request from the user (including selection of a specific play mode that provides the superiority / inferiority information). The superiority / inferiority information may be appropriate information regarding the influence of each option, such as information indicating the degree of influence each option has on victory, such as A, B, C, etc. As an example, the superiority / inferiority information is configured as numerical information indicating the likelihood of progress being advantageous in the battle through numerical magnitude. The numerical information may be a numerical value indicating various advantages, for example, a numerical value indicating the likelihood of progress being advantageous (less likely to be disadvantaged) within a predetermined range of turns or selections to be analyzed. As an example, the numerical information is provided as a probability value indicating the possibility (probability) of ultimately winning the battle.
[0061] In addition, a card game may include a series of selection opportunities in which a continuous series of choices must be made. In the case of such a series of selection opportunities, the analysis service is configured to treat a combination of a series of choices in the series of selection opportunities as one selection set and provide influence information, i.e., probability values (inferiority information), for each selection set. For example, in a case where a series of selection opportunities are provided in which choices derived from a first selection in a first selection opportunity are made in order, the analysis service is provided to analyze the next choice that occurs by making the first selection in the first selection opportunity.
[0062] Specifically, for example, the first main phase or the second main phase (hereinafter, when there is no distinction between them, they may simply be referred to as the main phase) includes a selection opportunity for selecting the card object CO to be used and the placement destination (card place CP) of that card object CO. Furthermore, when a card object capable of activating an effect is selected, a selection may be required for whether or not to activate the effect and the destination of the effect. In other words, in order to activate the effect (or ability) of one card object CO (to use it so that the progress associated with that effect is granted), a series of selections (multiple selections) may be required as a set (continuously). For this reason, the main phase includes a series of selection opportunities (multiple selection opportunities) for executing them. Other phases, such as the battle phase, may also include a series of selection opportunities in which a similar series of selections should be executed.
[0063] Figure 5 is an explanatory diagram illustrating an example of a series of selection opportunities that may be included in the main phase. The example in Figure 5 shows a series of selections (flow) when using the effect of a specific magic card CO2 to summon one Extra Monster card CO1 from an Extra Deck card CO7 to the card area CP in the field area 54. As shown in Figure 5, the summoning in this case requires a series of selections through a series of selection opportunities from the first selection opportunity to the fifth selection opportunity.
[0064] First, at the first selection opportunity, any selection is permitted from the hand CO5, the card object to be used, or predetermined progress such as phase transition or turn end. The selection of the card object to be used is performed within an area that includes usable card objects CO, such as the Graveyard area 58 or the Exclusion Area EA. In the example of Figure 5, the activation of the effect of Magic Card CO2 (hereinafter sometimes referred to as "Fusion" Magic Card CO2), which has the effect of enabling the summoning of Extra Monster Card CO1, is selected at the first selection opportunity.
[0065] The "Fusion" Magic Card CO2 has the effect of summoning an Extra Monster Card CO1 to be summoned from an Extra Deck Card CO7 to the card area CP in the field area 54. This summoning is performed in exchange for sending a predetermined card object CO (material) from the card area CP to the 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 selection opportunity (selection of the activated card), a second selection opportunity is given to select the Extra Monster Card CO1 to be summoned by the activated effect.
[0066] In the example of FIG. 5 , in the second selection opportunity (selection of summoned cards), an extra monster card CO1 is selected as the summon target, using two monster cards CO1 (often specific monster cards CO1) as materials. In this case, a third selection opportunity (first material selection) and a fourth selection opportunity (second material selection) for selecting the two materials (monster cards CO1) are provided in order, derived from the selection in the second selection opportunity. In the third and fourth selection opportunities, the two monster cards CO1 (first material and second material) that will be used as materials are selected, respectively. The range in which the two monster cards CO1 can be selected (which may vary depending on the contents of the magic card CO2, etc.) may be set as appropriate, and, as an example, is set to the card object CO in the card area CP and the hand CO5. In the example of FIG. 5 , a normal monster card CO1 is selected as material in both the third and fourth selection opportunities.
[0067] Following the selection of materials, a fifth selection opportunity is provided to select the card space CP into which the Extra Monster Card CO1 to be summoned should be placed (summoned). After the placement destination is selected in the fifth selection opportunity, the Extra Monster Card CO1 to be summoned selected in the second selection opportunity is summoned (placed) in the card space CP selected in the fifth selection opportunity. In other words, the effect (progress) of summoning the Extra Monster Card CO1 actually occurs according to the selection results (series of selections) in the series of selection opportunities from the first selection opportunity to the fifth selection opportunity.
[0068] Meanwhile, with the summoning of the Extra Monster Card CO1, the two Normal Monster Cards CO1 (first and second materials) selected at the third and fourth selection opportunities are sent to the Graveyard 58. As an example, various phases, such as the Main Phase, include a series of selection opportunities like this, depending on the effects of the card objects CO used. For such a series of selection opportunities, the analysis service provides impact information on a selection set basis. In other words, for a series of selection opportunities, rather than analyzing the impact of each choice for each selection opportunity, the service analyzes the impact for each selection set and provides a probability value for each selection set as the analysis result.
[0069] (Method of Calculating Probability Values) Next, with reference to FIGS. 6 and 7, a method of calculating the probability value (superiority / inferiority information) for each selection set output by the artificial intelligence model (analysis model unit 23) of the analysis service will be described. FIG. 6 is an explanatory diagram for describing a list of options (actions) that a player can take in a certain situation on the battle screen 50. In the example of FIG. 6, the options (conceptualized by "○") that a player can take are shown in a tree format, with each option branching off to the next option. As shown in FIG. 6, the options that a player can take are classified into multiple layers of option groups. Then, a probability value for each option is output for the option group in the deepest layer in each tree.
[0070] Specifically, the example of Figure 6 shows a group of options that can be selected in a situation where three monster cards CO1 have already been placed in the front row 54A of the field area 54 in the example of Figure 5, three magic cards CO2 have already been placed in the back row 54B, and the player has two "Monster Card A" and two "Magic Card B" in their hand CO5. In this case, the first options available to the player include four: use "Monster Card A," use "Magic Card B," "phase transition," and "end turn." These four options form the first-tier options that can be selected initially.
[0071] Furthermore, when using "A Monster Cards" and "B Magic Cards," there are further options for where and how to use them, forming a second layer of options. For example, in the example of Figure 5, the front row 54A of the field area 54 is divided into card areas 1 through 5, excluding the leftmost card area CP (where Monster Card CO1 cannot be placed), and proceeding from the leftmost card area CP to the right, respectively. If three Monster Cards CO1 are placed in card areas 3 through 5, the only card areas CPs where an "A Monster Card" (Monster Card CO1) can be placed are the first card area CP and the second card area CP. Therefore, these two card areas CP correspond to the options for where the "A Monster Card" can be placed. Furthermore, there are two ways to place a Monster Card CO1 in a card area CP: "Summon" (where Monster Card CO1 is placed face-up) and "Set" (where Monster Card CO1 is placed face-down). Therefore, for each of the two card placement options, the first card placement option and the second card placement option, 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 options and the two card placement options.
[0072] On the other hand, for example, in the field area 54 in the example of Figure 5, if the back row 54B is divided into the sixth card place CP to the tenth card place CP from left to right, and three magic cards CO2 and the like are placed in the eighth card place CP to the tenth card place CP, then the two card place CPs in which a "B Magic Card" (Magic Card CO2) can be placed are the sixth card place CP and the seventh card place CP. Therefore, these two card place CPs correspond to the options for where to place the "B Magic Card".
[0073] The "B Magic Card" can be configured as any magic card CO2. The example in Figure 6 shows the case where the "B Magic Card" is the "Fusion" magic card CO2 in the example in Figure 5. The placement methods for the "B Magic Card" in the card placement area CP include two placement methods: "activate" (the option to activate the effect) and "set" (the option to withhold the activation of the effect). Therefore, these two placement methods exist as options. As a result, there are also four options for using the "B Magic Card," corresponding to the two card placement areas CP and the two placement methods. These four options, plus the four options corresponding to the "A Monster Card," total eight options form the second-tier options group.
[0074] If an "A Monster Card" has an effect, further options are generated. For example, if an "A Monster Card" has an effect that requires it to be placed in the card space CP by "Summoning," then there are two further options for the "Summon" placement method: "Activate effect" and "Do not activate effect." Therefore, four options corresponding to these two options x two card space CP are generated from the second-tier options for "A Monster Cards."
[0075] Similarly, when the effect of a "B Magic Card" is activated, options are derived for each placement location. Therefore, two options corresponding to each of the two card placement locations CP are generated from the second-tier options group for the "B Magic Card." These two options are then added to the four options derived from the second-tier options group for the "A Monster Card," resulting in a total of six options forming the third-tier options group. Note that various other options may also exist for the Magic Card CO2 depending on the situation. For example, if the destination of the effect can be specified, further options for selecting the destination may be generated. Although not shown in the example of Figure 6, the same applies to other card objects CO, such as the Trap Card CO3.
[0076] Furthermore, the third-tier options group leads to the fourth-tier options group, the fourth-tier options group leads to the fifth-tier options group, the fifth-tier options group leads to the sixth-tier options group, and the sixth-tier options group leads to the seventh-tier options group. When the "Fusion" effect in the example of Figure 5 is activated, a series of choices is required, including the selection of the Extra Monster Card CO1 to be summoned, the selection of materials, and the selection of a placement location. These series of choices form the fourth through seventh options groups. For example, if the Extra Deck Card CO7 contains two types of Extra Monster Card CO1, Extra Monster Card A CO1 and Extra Monster Card B CO1, these are summon candidates and function as options for the summon target. Therefore, four options corresponding to two card placement locations CP times two options form the fourth-tier options group.
[0077] If two specific Monster Cards CO1 are required to summon A Extra Monster Card CO1, when A Extra Monster Card CO1 is selected as the summoning target, the first material (first material) will form the fifth layer selection group. Similarly, if one specific Monster Card CO1 is required to summon B Extra Monster Card CO1, the first material (first material) will form the fifth layer selection group. As a result, the fifth layer selection group is formed by four options (two card space CP x two first materials corresponding to each of the two summoning candidates) that arise from the four options in the fourth layer selection group.
[0078] Furthermore, when the A Extra Monster Card CO1 is selected as the summon target, the player is required to select a second material (second material). Therefore, the selection of the second material derives from the selection of the first material (fifth layer selection group). On the other hand, when the B Extra Monster Card CO1 is selected as the summon target, once the selection of the first material is complete, the player is required to select a card space CP from which to summon the summon target. If the B Extra Monster Card CO1 can be placed in both the front row 54A and the common area 52 in the field area 54, then the first card space CP, the second card space CP, and the two card space CPs in the common area 52 are candidates for placement. In other words, there are four options for the placement of the B Extra Monster Card CO1 (some are omitted in the example of FIG. 6 ). Therefore, the sixth layer options are formed by five options (one option when A Extra Monster Card CO1 is selected (second material) plus four options for the placement of B Extra Monster Card CO1) x two card placement areas (sixth card placement area CP and seventh card placement area CP), for a total of ten options.
[0079] If the A Extra Monster Card CO1 can be placed in both the front row 54A and the common area 52 in the field area 54, there are similar placement options as for the B Extra Monster Card CO1. In other words, there are four options for the placement of the A Extra Monster Card CO1. Therefore, these four options are derived from the selection of the second material (sixth layer options). Therefore, four options x two card places (sixth card place CP and seventh card place CP), a total of eight options, form the seventh layer options.
[0080] In the example of Figure 6, in the tree of options derived from an "A Monster Card," part of the second-layer options (when placed in a "set" state in each card space CP) and the third-layer options correspond to the options in the deepest layer. Therefore, each option in these option spaces is input to the artificial intelligence model, and a probability value (the number in the "○") is output for each option. Similarly, in the tree of options derived from a "B Magic Card," part of the second-layer options (when placed in a "set" state in each card space CP), part of the sixth-layer options (when the B Extra Monster Card CO1 is the summon target), and the seventh-layer options correspond to the options in the deepest layer. Therefore, each option in these option spaces is input to the artificial intelligence model, and a probability value is output for each option.
[0081] Each option in the first through seventh layer option groups is presented and selected in the first through seventh selection opportunities, respectively. In the example of Figure 6, each option forming each selection set is shown expanded for each option, but each tree generated from the second layer option group onward corresponds to a series of selections. For example, when an A monster card is used, the first through third selection opportunities for selecting the first through third layer option groups (some of which are the second option group) correspond to a series of selection opportunities. Similarly, when a B magic card is used, the first through seventh selection opportunities for selecting the seventh through seventh layer option groups (some of which are the sixth option group) correspond to a series of selection opportunities. In both cases, probability values are calculated only for each option in the deepest layer option group. In other words, a series of selections in a series of selection opportunities is treated as a single set (selection set), and a probability value for the final selection result of each selection set is output. In this example, the series of selection combinations when an A monster card is used and the series of selection combinations when a B magic card is used function as multiple selection sets in the present invention.
[0082] However, the example of Figure 6 shows a case where the summoner does not have the first material required to summon B Extra Monster Card CO1 (for ease of explanation, the example of Figure 6 also displays options when the first material is not possessed, but display of options may be omitted for impossible choices, such as when the first material is not possessed). Therefore, a zero is output as the probability value for all of the sixth-layer options derived from the fifth-layer options for B Extra Monster Card CO1. On the other hand, because the summoner has both the first and second materials required to summon A Extra Monster Card CO1, probability values such as "8.0", "15.0", or "14.0" are output for the seventh-layer options (options derived from the sixth-layer options for A Extra Monster Card CO1).
[0083] On the other hand, there are no options derived from "phase transition" (phase end instruction) and "turn end" (turn end instruction), and for these, the first layer options group corresponds to the deepest layer options group. For this reason, the two options of "phase transition" and "turn end" are input into the artificial intelligence model, and a probability value is 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 information to assist beginners in playing, for example. As an example, the probability values output by the analysis service are used to determine the selections to be made by a computer acting as the user's opponent in AI battle mode. In other words, in AI battle mode, the opponent (computer) determines the card object CO to be used based on the probability values output by the analysis service and actually executes the determined selection. Furthermore, when a series of selections is requested in the analysis service, the probability values are calculated for each combination of the series of selections (selection set). Therefore, in AI battle mode, a series of selections to be made by the opponent is determined for each selection set, and the determined series of selections is executed.
[0085] For example, in the example of Figure 6, the "Second Card Placement (Common Area)" in the seventh layer options group has the highest probability value. Therefore, in the situation of the example of Figure 6, a selection set is determined as the execution target, in which the B Magic Card CO2 is placed in the sixth card placement CP so that its effect is activated, and the A Extra Monster Card CO1 is summoned to the second card placement CP in the common area in exchange for the first and second materials, and this series of selections is executed. In this example, the selection set leading up to the "Second Card Placement (Common Area)" in the seventh layer options group functions as the execution target selection set of the present invention. Furthermore, the series of selections corresponding to this selection 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) function as the target series of selections of the present invention. Furthermore, the first selection opportunity to execute the first selection in each selection set (first layer options group), or each selection opportunity up to the final selection, functions as a selection opportunity of the present invention. Similarly, each subsequent choice opportunity following the first in each choice set serves as a subsequent choice opportunity of the present invention.
[0086] Note that the example in FIG. 6 shows an example of a group of options in the main phase. Therefore, in addition to a phase end instruction, the card objects CO to be placed from the hand CO5 in each card place CP and the options corresponding to the card place CP to which the card objects CO should be placed are shown. However, options corresponding to the phase are prepared for each phase, such as adding (drawing) a card from the deck CO6 to the hand CO5 in the draw phase. Therefore, at least some of the options available for each phase (for example, the end of the phase, the end of the turn, etc. may be the same) are different. In other words, the options available in each phase are different. Then, information on the probability value of each option available for each phase is output.
[0087] FIG. 7 is an explanatory diagram illustrating an example of a method by which an artificial intelligence model calculates a probability value. Generally, an artificial intelligence model is generated by machine learning a training dataset using a predetermined learning method (algorithm), and tends to have a way of thinking (algorithm) that corresponds to the learning method. Learning methods in machine learning include various methods, such as imitation learning and reinforcement learning (imitation learning may be considered a type of reinforcement learning). Imitation learning is often classified into methods such as behavior cloning, dataset aggregation, or inverse reinforcement learning, but rewards are often 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 rewards.
[0088] The artificial intelligence model (analysis program AP) for the analysis service may be generated appropriately using various learning methods, for example, the TD method of reinforcement learning. The TD method may also include techniques such as SARSA. For example, the Q-learning method is used to generate the artificial intelligence model for the analysis service.
[0089] Q-learning is a method for evaluating actions (options) by calculating an action value function (Q-function). The Q-function is generally defined as a function that predicts the future reward (often referred to as a Q-value) that will result from performing a certain action in a certain state (the specific function formula will not be described). However, with Q-learning, when the Q-function table (input information) becomes large (huge in volume), the calculations tend to be insufficient, making it difficult to implement. On the other hand, for example, the input information (information in the situation log SL) on the battle screen 50 is considered to be enormous. For this reason, a trained artificial intelligence model for the analysis service is generated using the DQN (Deep Q Network) method, which uses a neural network to obtain an approximation of the Q-value. In this case, the artificial intelligence model for the analysis service is configured to calculate a probability value (Q-value) using the DQN method.
[0090] Furthermore, the reward (a predetermined result obtained by an action, which may be included in the algorithm of the learning program) that is the target of the Q value may be set as appropriate, and for example, a specific way of winning, such as a narrow victory, or a tendency for winning, may be set. The artificial intelligence model for the analysis service may also have different ways of thinking depending on the reward (predetermined result) 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] The example of Figure 7 shows an overview of the DQN method for calculating a probability value (Q value). As shown in Figure 7, the DQN method uses a neural network (deep learning), forming an input layer, an intermediate layer, and an output layer, each of which cooperates to output a calculation result for data. The input layer is responsible for collecting data. The intermediate layer is responsible for calculations to calculate the probability value. Multiple intermediate layers (generally, the more layers there are, the higher the accuracy tends to be) are often included. While only two intermediate layers are shown in the example of Figure 7, any number of intermediate layers may be formed. The output layer is a layer for outputting the calculation results performed in the intermediate layer. The artificial intelligence model trained using the DQN method is configured to output a probability value of winning a match in the output layer. Furthermore, connecting lines (often called synapses) are provided between the input layer, intermediate layer, and output layer. Each connection line is assigned a weight (often expressed by the symbol w) that indicates importance (strength of connection), and the importance of the information is determined based on the magnitude of the weight value. In the example of Figure 7, both input values (input information) and output values (sometimes generally called nodes) are represented by "○".
[0092] Specifically, information from the situation log SL, which indicates the current state of the battle screen 50, is first input to the input layer. The situation log SL contains information on many dimensions (input values). It is desirable for the number of dimensions to be less than approximately 5,000. As described above, the situation log SL may contain various information for determining the status 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 first card place CP to the tenth card place CP, the situation log SL may also contain information on possible options, such as ending a turn, summoning an A monster card, activating the effect of an A monster card, and activating a B magic card (see, for example, the example in Figure 6).
[0093] A predetermined function formula using appropriate weighting (weight value w) is applied to the input values in the input layer, and the output values of the intermediate layer (first layer) are calculated using this function formula. An appropriate number of output values can be calculated in the first intermediate layer. In the example of Figure 7, four output values are calculated. Furthermore, a predetermined function formula using appropriate weighting is applied to the four output values, and the output values of the intermediate layer (second layer) are calculated using this function formula. An appropriate number of output values can also be calculated in the second intermediate layer. In the example of Figure 7, four output values are also calculated. Note that the weighting (weight value w) corresponding to each connection line is calculated as a learning result and is managed, for example, in the learned data for analysis AD. Note that the connection lines (synapses) connecting the input layer and the intermediate layer are omitted as appropriate in Figure 7.
[0094] The output value of the final intermediate layer (second layer) is calculated as a Q value using a predetermined function formula that uses appropriate weighting in the output layer. The Q value (output value of the output layer) is calculated for each predetermined action (option on the battle screen 50). For example, in each tree in the example of FIG. 6, a Q value is calculated for each option (selectable option) in the option group at the deepest layer using the method in the example of FIG. 7. If an option requires a series of selections, a Q value is calculated for each series of selections (selection set). The calculated Q value may be converted into a probability value using a normalization function (e.g., Softmax function) so that the sum of the values of all selectable options equals 100%.
[0095] (Special Rules) Next, with reference to FIG. 8 , an example of a special rule provided for a card game will be described. A card game includes various special rules in addition to basic rules (e.g., the example of FIG. 4 ). The card game includes a chain rule as an example of a special rule. The chain rule is a rule for smoothly resolving the exchange of various card objects CO, such as magic cards CO2 and trap cards CO3. Specifically, the chain rule is a rule that allows 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 chain rule always provides the opposing player with a choice opportunity (hereinafter, sometimes referred to as a counter-choice opportunity) to make a choice to counter the activation of the effect. During the counter-choice opportunity, the player is naturally allowed to choose to do nothing (not to perform a counter-action).
[0096] If the opposing player makes a counter-choice choice (hereinafter, sometimes simply referred to as a chain) during the counter-choice opportunity, the player can then chain. If the opposing player does not chain, the player can also chain themselves (select a card object CO to activate an effect on their own card object CO that has activated its effect). Chains can be stacked as much as possible. Then, when neither player is chaining, a process is executed to activate the effects of the card object CO that last activated the chain, starting with the card object CO that activated the chain. In other words, the activation of the effects of each card object CO used as an activation target in a chain is suspended (stacked) until the final chain is executed. Then, with the final chain, the suspended effects are activated, starting with the card object CO in the final chain, in reverse chronological order of use.
[0097] The analysis service calculates probability values for each selection set, and the probability values are used to determine a series of selections that a player should make in a series of selection opportunities in the AI battle mode. However, when a chain is executed according to the chain rule, a case may arise in which a series of selections determined based on the probability values becomes impossible to execute. In this case, an alternative selection to the impossible selection is determined.
[0098] FIG. 8 is an explanatory diagram illustrating an example of a chain that can occur after the summoning of the Extra Monster Card CO1. For example, if both the first and second materials in FIG. 5 have effects that can be activated by moving them to the Graveyard 58 upon summoning, a chain can occur after the summoning in the example of FIG. 5. Specifically, in the example of FIG. 5, the Extra Monster Card CO1 is summoned by the effect of the "Fusion" Spell Card CO2, and the first and second materials are sent to the Graveyard 58 for this summoning. Therefore, if the first and second materials have effects that require them to be moved to the Graveyard 58, the effects of the first and second materials can be activated as their own chain in conjunction with the summoning effect. The example of FIG. 8 illustrates this case as an example. The example of FIG. 8 also illustrates a case in which one of the 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 above-mentioned effects are set for both the first material and the second material in Figure 5, after summoning the Extra Monster Card CO1, the summoner (for example, the computer in AI battle mode; hereinafter, the role of the computer in AI battle mode may be referred to as COM) will have two chain opportunities. The two chain opportunities are opportunities to make choices regarding the effects of the two materials, respectively. Hereinafter, they may be referred to as the first chain and the second chain in chronological order.
[0100] The first chain includes three options: activate the effect of the first material, activate the effect of the second material, or do nothing (activate neither effect). In the example of Figure 8 , the first material has the effect "●●" set to it, provided that it is moved to the Graveyard area 58 ("Graveyard"). Therefore, when the activation of the first material's effect is selected, a progression occurs to activate the "●● effect." Meanwhile, the second material has the effect of adding either a face-up D Monster card CO1 ("D Monster") from the Extra Deck card CO7 or a C Monster card CO1 ("C Monster") from the Graveyard area 58 to the hand CO5, provided that it is moved to the Graveyard area 58. Therefore, when the activation of the first material's effect is selected, two options corresponding to the addition target (D Monster card CO1 and C Monster card CO1) are derived from that selection. Various further options can arise from the two addition target options, but details are omitted in the example of Figure 8 .
[0101] The unit of selection set analyzed by the analysis service may be set as appropriate. For example, the selection of the "Fusion" magic card CO2 in the example of FIG. 5 to the selection of the second chain (including the selection of additional targets within each chain) in the example of FIG. 8 may be set as one selection set. Alternatively, the selections up to the end of the summoning in the example of FIG. 5 may be set as one selection set (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 separated 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 FIG. 8, the series of selections from the first chain to the second chain are separated from the selection set up to the end of the summoning, but are not separated 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 summoning via the analysis service.
[0102] In the first chain, an appropriate selection may be determined based on the analysis results of the analysis service. In the example of FIG. 8 , of the three options, activating the effect of the first material is determined as the selection to be executed. 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 in the analysis by the analysis service may be used as is. In this case, it is assumed that the probability values for the series of selections for the second material calculated in the first chain will be similar to the analysis results in the first chain. Therefore, analysis by the analysis service may be omitted in the second chain. In the example of FIG. 8 , as an example, the analysis service in the second chain is executed based on the game information used in the first chain, reflecting the selection results in the first chain. In other words, in the second chain, probability values for the remaining two options, activating the effect of the second material and doing nothing, are calculated assuming that the selections in the first chain are executed (since the probability values are calculated for the selections up to the second chain as one selection set, the selections in the first chain have not yet been executed). In the example of FIG. 8, the selection to be executed in the second chain is to activate the effect of the second material, and the C monster card CO1 in the graveyard area 58 is determined as an additional target in association with the activation.
[0103] Under the chain rule, an opposing player (e.g., a user) is given a chain opportunity for each chain against the COM, where they can make a choice that counters the COM's choice. However, a series of choices in the first and second chains are treated as a single selection set, and a probability value is calculated, and each choice is determined. Therefore, the COM does not take the opposing player's chain into consideration when determining the choices to be made in the first and second chains. However, after each choice is actually made, there is a possibility that the opposing player's chain will be made. In the example of FIG. 8 , the opposing player's chain is not made after the choice to be made in the first chain is determined, but after the second chain is selected, the opposing player (user) makes a choice (third chain) that counters the second chain.
[0104] Specifically, the user uses a magic card CO2 as the third chain after the second chain. This magic card CO2 has an effect that, if this magic card CO2 is included in the hand CO5, it can be removed from the graveyard area 58 of COM (the user's opponent) on the condition that it is sent (discarded) to the graveyard area 58. A C monster card CO1 in COM's graveyard area 58 is selected as the target for activating the effect of this magic card CO2.
[0105] According to the chain rule, the activation of the effects resulting from the selections made in each chain is suspended (stacked) during the 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 this order after the third chain. Therefore, the effect of the magic card CO2 in the third chain is activated first, and the C monster card CO1 in the COM's Graveyard 58 is removed from the Graveyard 58. In the next second chain, a 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. Meanwhile, due to the effect of the third chain, the C monster card CO1 that was scheduled to be added is removed from the Graveyard 58 and cannot be added. In other words, the addition of the C monster card CO1, one of a series of choices determined based on the analysis service, is prevented by the user's chain. In this case, the COM determines the choices following the impossible choice according to predetermined rules.
[0106] The predetermined rule may be any appropriate rule for determining another selection. For example, the predetermined rule may be configured to determine a selection with a probability value subsequent to the initial selection based on the probability values of other selections calculated to determine the initial selection. Alternatively, a lottery result may be used as the predetermined rule. If the initially determined selection is impossible, a lottery is held, and another selection may be randomly determined based on the lottery result. In the example of FIG. 8 , if the C monster card CO1 is impossible to select, the D monster card CO1 is the only option left. Therefore, the D monster card CO1 is the addition target in the second chain anyway, but the lottery result is used as an example of a predetermined rule. Then, upon activation of the effect of the second chain, the D monster card CO1 is added to the hand CO5. Furthermore, after activation of the effect of the second chain, the "●● effect" of the first chain is activated. The series of selections when a chain is applied is realized, for example, by the procedure described above. In this example, the COM and the user function as multiple players of the present invention, and also function as one player and another player, respectively. Furthermore, the selection of a C monster in the second chain functions as one selection of the present invention.
[0107] 9 and 10, a selection execution process and a selection redetermination process will be described as examples of processes performed by the network system 1. As an example, the selection execution process and the selection redetermination process are both realized by the COM battle realization unit 25 of the game server 2 and the progress control unit 33 of the user device 3 in cooperation with each other. For this reason, in FIGS. 9 and 10, the process mainly performed by the COM battle realization unit 25 is shown as the game server 2, and the process mainly performed by the progress control unit 33 is shown as the user device 3.
[0108] The selection execution process is a process for executing various selections in the AI battle mode. The selection execution process is configured to execute various selections using an analysis service. When a selection opportunity arrives in the COM during a battle in the AI battle mode, the progress control unit 33 starts the selection execution process of FIG. 9 and first acquires game information related to the current game situation required for calculating the probability value (S101). As an example, the game information is managed by a situation log SL. Therefore, the progress control unit 33 updates (including generates) the situation log SL in step S101 so as to record the acquired game information.
[0109] Next, the progress control unit 33 requests the game server 2 to confirm the selection in the target selection opportunity (step S102). This request includes the latest situation log SL. In other words, this request includes the game information acquired in step S101.
[0110] When a request is sent from the progress control unit 33, the COM battle realization unit 25 starts the selection execution process of FIG. 9 , first acquiring the request (including game information) (step S201). The COM battle realization unit 25 then provides the game information acquired in step S201 to the artificial intelligence model (analysis model unit 23) so that an analysis service can be executed (probability values can be calculated) (step S202). Next, the COM battle realization unit 25 acquires the analysis results (probability values) from the artificial intelligence model (analysis model unit 23) (step S203). That is, the AI model is used to acquire probability value information for each option (or for each selection set in the case of a series of selection opportunities). Furthermore, the COM battle realization unit 25 determines the selection to be executed in the target selection opportunity based on the probability value information acquired in step S203 (step S204). The COM battle realization unit 25 may appropriately determine the selection based on the probability value. For example, the COM battle realization unit 25 may determine the option with the highest probability value as the execution target. A similar determination is made in the case of a series of selection opportunities. In other words, the selection set with the highest probability value among the selection sets is determined as the series of selections to be executed in the series of selection opportunities. Then, the COM battle realization unit 25 transmits the determination result determined in step S204 to the progress control unit 33 (step S205), and the current selection execution process is terminated.
[0111] On the other hand, when the determination result is transmitted from the COM battle realization unit 25, the progress control unit 33 acquires the determination result (step S103). The progress control unit 33 then executes a selection at the target selection opportunity in accordance with the determination result acquired in step S103 (step S104). If the target selection opportunity is a series of selection opportunities, the progress control unit 33 executes a series of selections corresponding to the selection set as the determination results in the series of selection opportunities, in order. After this selection, the progress control unit 33 terminates the current selection execution process.
[0112] The procedure of FIG. 9 realizes selection (battle) using an artificial intelligence model (analysis service) in the AI battle mode. Furthermore, analysis by the artificial intelligence model is performed on a selection set basis for a series of selection opportunities, and a series of selections of execution targets are determined for each selection set based on the analysis results. In the example of FIG. 9 , information on the selection sets of execution targets for a series of selection opportunities is collectively transmitted to the user device 3 as the determination results in step S104, but this is merely an example. For example, the selection execution process may be configured such that, for each selection opportunity in the series of selection opportunities, the user device 3 inquires about the selection of the execution target to the game server 2, and a selection corresponding to the selection opportunity in the selection set of execution targets (determination results) is transmitted as the execution target each time.
[0113] The selection redetermination process is a process for redeterminating an unexecutable selection when a chain is executed during a series of selections (a selection set to be executed) and the series of selections determined in the selection execution process (or, in some cases, the selection determined in the reselection determination process) becomes unexecutable. Each time a selection in the series of selections (including a selection determined in the reselection determination process) is executed, the progress control unit 33 starts the selection redetermination process shown in FIG. 10 and determines whether an unexecutable selection has occurred in the series of selections determined (step S301). If an unexecutable selection has not occurred (S301: No), the progress control unit 33 skips the subsequent processes and terminates the current reselection determination process.
[0114] On the other hand, if an unexecutable selection has occurred (S301: Yes), the progress control unit 33 acquires current game information (step S302). This process is executed in the same manner as step S101 in the example of FIG. 9. Next, the progress control unit 33 requests the game server 2 to redetermine the remaining unexecutable selections (selections after the unexecutable selection) (step S303). This request includes the latest situation log SL (game information acquired in step S302).
[0115] When a request is sent from the progress control unit 33, the COM battle realization unit 25 starts the selection redetermination process of FIG. 10 and first receives the request (step S401). The COM battle realization unit 25 then redeterminates the remaining selections (step S402). The COM battle realization unit 25 may perform the redetermination using an analysis service, but as an example, performs the redetermination according to a predetermined rule. The predetermined rule may be any appropriate rule. For example, the remaining selection may be determined 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 the remaining selection randomly (by lottery) from the currently selectable options. Therefore, the COM battle realization unit 25 refers to the game information acquired in step S401, selects one of the currently selectable options by lottery, and determines the remaining selection to be the selected option. If there are multiple remaining selections, each of them is determined by a similar lottery. The COM battle realization unit 25 then transmits the determination result determined in step S403 to the progress control unit 33, and the current selection redetermination process ends.
[0116] On the other hand, when the determination result is transmitted from the COM battle realization unit 25, the progress control unit 33 acquires the determination result (step S304). The progress control unit 33 then executes the remaining selections in the target selection opportunity in accordance with the determination result acquired in step S304 (step S305). After this selection, the progress control unit 33 terminates the current selection redetermining process. As a result, if a series of determined selections becomes unexecutable due to a chain, the remaining unexecutable selections are redetermined and executed. In other words, even under the chain rule, a series of selections utilizing an artificial intelligence model (analysis service) is permitted.
[0117] As described above, according to this embodiment, information on the probability value of a selection in each selection opportunity is obtained using an artificial intelligence model (AI). In the case of a series of selection opportunities, a series of combinations of selections in the series of selection opportunities is treated as one selection set, and information on the probability value relating to the winning rate that each selection set provides to the game is obtained. In other words, for the selections in the series of selection opportunities, probability value information is obtained for each combination of selections. Therefore, for a series of selections in a series of selection opportunities, more appropriate probability value information regarding winning can be obtained compared to when a probability value is calculated for each selection opportunity and for each option. In particular, in a series of selection opportunities, a type of selection is made in which options are derived in order from the selection in the first selection opportunity. This type of selection often tends to be complex. As a result, more appropriate probability value information can be obtained for selections that tend to be complex.
[0118] In addition, in the AI battle mode, a selection set of execution targets to be executed in a series of selection opportunities is determined based on a probability value. Then, a series of selections corresponding to the selection set of execution targets are sequentially executed as selections by the COM (the player acting as the user's opponent). In other words, a series of selections corresponding to the selection set of execution targets determined based on the probability value are actually realized. This allows the battle (game) to proceed based on the probability value calculated by the artificial intelligence model. In other words, a so-called computer (AI) battle can be realized, utilizing the influence of each selection set on victory.
[0119] Furthermore, if a series of choices determined based on probability values becomes unfeasible due to the chain rule, a feasible choice is determined in place of the unfeasible choice according to a predetermined rule. In other words, since the series of choices is complemented by the determination of alternative choices, the chain rule does not prevent the acquisition of probability values on a choice set basis. Therefore, even in a match (game) that includes the chain rule (opponent choice opportunity), it is possible to acquire probability values on a choice set basis.
[0120] In the above embodiment, the analytical model unit 23 of the game server 2 functions as a predetermined process of the present invention. Furthermore, the COM battle realization 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 of FIG. 9 . Specifically, the COM battle realization unit 25 functions as an information acquisition means by executing step S201 of FIG. 9 , and as an influence acquisition means by executing step S203. Furthermore, the COM battle realization unit 25 of the game server 2 functions as a selection determination means of the present invention by executing the procedures of FIG. 9 and FIG. 10 . Specifically, the COM battle realization unit 25 functions as a selection determination means by executing step S204 of FIG. 9 and step S402 of FIG. 10 .
[0121] The present invention is not limited to the above-described embodiments and may be embodied in embodiments with appropriate modifications or alterations. Furthermore, the present invention may be embodied in embodiments obtained by appropriately combining various technical means included in the above-described embodiments and the following modified embodiments. In the above-described embodiments, a series of selection opportunities is provided so that options derived in order from a selection in a first selection opportunity are selected. However, the present invention is not limited to such embodiments. For example, a series of selection opportunities may be provided so that a selection in any of the selection opportunities is derived in a later selection opportunity. Alternatively, a series of selection opportunities may be provided so that options in later selection opportunities change (including both changes in number and content) depending on the selection result in an earlier selection opportunity. In other words, each selection opportunity in a series of selection opportunities is not limited to being derived, and may have an appropriate relationship. Furthermore, a series of selection opportunities may not have a relationship with each other. In other words, a series of selection opportunities may be an appropriate concept applied to multiple selection opportunities that should be treated as a set.
[0122] In the above embodiment, a battle between a user and a COM in the AI battle mode is described. However, the present invention is not limited to this embodiment. In the AI battle mode, an appropriate battle between multiple players may be executed. For example, the multiple players may be different artificial intelligence models with different thinking. In other words, the AI battle mode may be applied to a battle between multiple COMs.
[0123] In the above-described embodiment, the network system 1 is configured such that the game server 2 (including a case where the network system 1 is configured with multiple server devices) functions alone as the game system of the present invention. However, the present invention is not limited to this embodiment. For example, the user device 3 may perform all or part of the role (various processes) of the game server 2. When the user device 3 performs all of the role of the game server 2 (e.g., the processes of Figures 9 and 10), the user device 3 may function alone as the game system of the present invention. In this case, the user device 3 may be configured as an offline game device that is played without being connected to the network NT. The game server 2 may be omitted. Alternatively, when 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, a program and a control method implemented in a device 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] FIG. 11 is a flowchart showing an example of the procedure for the AI battle processing. The AI battle processing is a process for executing the selection of a COM in the AI battle mode in place of the selection execution process of FIG. 9 and the selection redetermination process of FIG. 10 when an artificial intelligence model (analysis model unit 23) is provided in the user device 3 (hereinafter, the analysis model unit of the user device 3 may be referred to as a terminal analysis model unit to distinguish it from the analysis model unit 23). Furthermore, each selection set may be set as 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 of FIG. 11 shows a case where a series of selections in each chain is set as one selection set, i.e., a case where a probability value for a series of selections is calculated for each chain.
[0125] When a selection opportunity arrives for the COM in a battle in the AI battle mode, the progress control unit 33 acquires game information about the current game situation and requests the terminal analysis model unit to execute a selection along with the game information. When this request occurs, the terminal analysis model unit acquires the request (including the game information) and starts the battle AI processing of Figure 11, first determining whether there is a determined selection to be executed at the target selection opportunity (step S501).
[0126] If a previously determined selection exists (step S501: Yes), the device analysis model unit determines whether the previously determined selection is selectable based on the game information acquired in step S501 (step S502). For example, because a series of selections have already been determined in a series of selection opportunities, it is determined in step S501 that a previously determined selection exists. Then, it is determined in step S502 whether that selection is selectable. For example, as in the example of FIG. 8, if the previously determined selection in Chain 2 becomes unexecutable due to the activation of the effect of Chain 3, it is determined that the selection is unexecutable. On the other hand, for example, because the activation of the effect of Chain 1 allows selection even after the activation of the effect of Chain 3, it is determined that the previously determined selection is selectable. If the previously determined selection is selectable (step S502: Yes), the device analysis model unit executes the previously determined selection in the target selection opportunity (step S503). After this execution, the device analysis model unit terminates the current battle AI processing.
[0127] On the other hand, if the determined selection is not selectable (step S502: No), the device analysis model unit, while referring to the game information, randomly (by lottery) determines the selection to be executed from the options selectable in the current situation (step S504), and executes the determined selection at the target selection opportunity (step S505). After this execution, the device analysis model unit terminates the current battle AI processing. Note that all or part of the probability value used when determining the determined selection (the determination result of step S506) may be saved, and in that case, the processing of step S504 may be configured to select the option with the next highest probability value from the selectable options based on the saved probability value.
[0128] On the other hand, if there is no determined selection in the target selection opportunity (step S501: No), the terminal analysis model unit determines the options that can be taken in the current selection opportunity (step S506). More specifically, the terminal analysis model unit determines, as the options that can be taken in the current selection opportunity, each option corresponding to the first layer option group in the example of Figure 6.
[0129] Next, the terminal analysis model unit determines options derived from the possible options (first layer option group) determined in step S506 (step S507). More specifically, the terminal analysis model unit determines options from the second layer option group onwards that arise from the first layer option group (options at the first selection opportunity) in the example of Figure 6, for example, i.e., each option in a series of selection opportunities.
[0130] Next, the terminal analysis model unit performs an analysis of each option (step S508). More specifically, the terminal analysis model unit calculates a probability value for each option group in the deepest layer based on the determination results of steps S507 and S506.
[0131] Next, the device analysis model unit determines the choice to be made in the target selection opportunity based on the analysis results of step S508 (step S509). More specifically, the device analysis model unit determines the option with the highest probability value (highest probability of winning) as the choice to be made based on the probability values calculated in step S508. If the option with the highest probability value is the last choice in a series of selection opportunities, the device analysis model unit determines the series of choices leading up to the last choice as the choice to be made, and determines the first choice in the series of choices as the choice to be made in the target selection opportunity.
[0132] Furthermore, the device analysis model unit determines whether a chain is possible after the selection in the target selection opportunity (step S510). If a chain is possible (step S510: Yes), the device analysis model unit updates the game information by assuming that the selection to be executed determined in step S509 has been executed (step S511), returns to step S506, and executes the subsequent processes again. For example, if the target selection opportunity is a selection opportunity in which a selection corresponding to the first chain in the example of FIG. 8 should be executed, the device analysis model unit determines the selection (series of selections) to be executed in the first chain in steps S506 to S509, and then reflects the determination result in the game information in step S511, returns to step S506, and executes the subsequent processes again for the second chain. The same applies when chains subsequent to the second chain are executed.
[0133] On the other hand, if chaining 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 selections to be executed at multiple selection opportunities including a series of selections, such as the selections to be executed in the first and second chains in the example of FIG. 8, are determined in step S509, the first of these selections to be executed is executed at the target selection opportunity. After this execution, the terminal analysis model unit terminates the current battle AI processing. This realizes the selection of the COM in the AI battle mode.
[0134] In the example of Fig. 11, the terminal analysis model unit may execute only the processing of step S508, and the other processing may be executed by the progress control unit 33 or the like. Also, for example, when the first chain to the second chain in the example of Fig. 8 are determined to be one option set, or when the chain rule is applied, the processing of step S510 in the example of Fig. 11 may be omitted as appropriate. Furthermore, the processing of Fig. 11 may be executed as the processing of the analysis model unit 23 in the example of Fig. 9. In that case, the processing of Fig. 10 may be omitted.
[0135] Examples related to the computer programs and the like according to the above-described embodiments will be described below, but the technical scope of the present invention is not limited to the following examples.
[0136] (UDI) When developing AI, an interface is required to access the game client (hereafter referred to as the client) from an external environment such as Python. For this reason, we developed a function called the "Universal Duel Interface" (hereafter referred to as UDI). Figure 12 shows an overview of the UDI system configuration. UDI is a function that exchanges duel (match) information and input currently required by the client between the client and the AI. There are two types of clients: card games (game programs) and console simulators designed for high-speed processing. The client sends the following information to the AI through UDI when input is required or at the end of the duel.
[0137] ・Current duel information: Information about the revealed board state, such as the hand, field, graveyard, and extra deck, as well as player information such as LP (life points) ・Past duel information: A duel log listing card movements made during the duel so far ・Executable commands: Summon, activate, decide, etc.
[0138] The AI receives information from the client and sends the following information through UDI: Response to the input requested by the client Evaluation value and text of the executable command (selection) or group of commands (selection set) Predicted face-down card and its probability value
[0139] The client progresses the duel based on the information sent by the AI. If the client is a card game (game program), it displays the evaluation value of the action and the predicted face-down card.
[0140] (Problem Setting) The decks used in the match were two decks: one centered around the card "Dark Magician" and the other centered around the card "Blue-Eyes White Dragon." Hereafter, these will be referred to as the "DM Deck" and "BE Deck," respectively. The goal of this example was to train the AI without using the user's play log. Therefore, an agent to serve as an opponent or imitation was required for efficient learning. Therefore, in addition to the currently under development computer-on-machine (COM) (a computer incorporating AI currently under development; hereafter referred to simply as COM), a rule-based AI was created specifically for this deck. The rule-based AI thinks faster than the COM, contributing to improved learning efficiency. Furthermore, because it is specialized for this deck and stronger than the COM, it is an excellent imitation target. Figure 13 shows the win rates for 2,000 matches against the COM. Significant differences are marked with an asterisk. A Z-test was performed at a 5% significance level to determine whether the win rates were different from 50%, and significant differences were observed for all combinations. In order to reduce the impact of the quality of the cards in one's hand, each player's hand was fixed for each match, and the players switched roles of first and second.
[0141] (Model Architecture) A proven value-based method was used as the algorithm for reinforcement learning. A neural network was used as the function model that outputs the action value Q. In card games, the actions that can be selected at each time are variable. Therefore, a model was adopted that takes state features and action features as input and outputs one Q value for that action option. When selecting an action, input features are concatenated in batch direction for the number of options, and the action with the largest output Q value is executed. The method for creating the feature vector will be described later; the size of the input feature is 5294, and one Q value is output through a five-layer fully connected network (with intermediate layer sizes of 2048, 768, 256, and 128).
[0142] (Features) Figure 14 is a table showing some of the input features. Regarding game information such as each other's LP, if it was numerical information it was normalized to between 0 and 1, and other information was converted to one-hot data before use. Regarding deck and board information, since the card pool was fixed in this case, one-hot vectors and bitmaps of card IDs were mainly used.
[0143] We used special ingenuity when it came to chains. Some chains can transition to different states as a result of a certain action, which is difficult to model within a typical reinforcement learning framework. Therefore, we addressed this by including chain information in the state features. For example, if no chain is occurring, the chain vector is filled with all zeros. On the other hand, if a chain is occurring, the one-hot vectors of the cards that activated it and the cards affected by its effect are added as chain vectors to the input features. This allows us to express the transition, "As a result of taking a certain action, we transitioned to a state where a chain is occurring." Furthermore, since the chains in this card pool do not pile up very deeply, we added information about the most recent five chains to the state features.
[0144] We also devised ways to improve the action characteristics. Card games have a variety of card effects, many of which can be considered 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 location of the monster from the Graveyard to the Monster Zone (the card placement area CP in the front row 54A of the field area 54 in the example of Figure 3). Therefore, we added a vector indicating the card ID to be moved and the location from which it was moved to the action characteristics. Since there are also effects that strengthen allies and negate opponents' effects, we also provided vectors for those. We also consider the normal summoning, attacking, and display changes of monsters, as well as the set of various cards, to be effects, and similarly provided vectors.
[0145] (Learning method) A slightly modified Monte Carlo method was used as the learning algorithm. Rewards were only given at the end of a duel, with a -1 for a loss, a 0 for a draw, and a +1 for a win. The discount rate was set to 1.0 to achieve the goal of ultimately winning the duel.
[0146] The specific steps are as follows: (1) Create a data storage list. (2) When one match is completed, the transitions (state features, selected action features, reward) for each time are obtained. The reward is either -1, 0, or +1 for all times. (3) Store the obtained data in the storage list. (4) Repeat steps (2)-(3) until the number of data items in the list exceeds 1024. (5) Randomly extract 64 batches of data from the list and perform learning. This is repeated eight times. Note that the data is not reused. (6) Repeat steps (2)-(5) more than 2000 times.
[0147] The loss function used was the sum of the squared errors between the model output and the reward. The optimizer used SGD, with L2 regularization. Hyperparameters such as the regularization coefficient and learning rate were changed empirically depending on the progress of learning.
[0148] The training data was generated by combining imitation learning and reinforcement learning. In imitation learning, the rule-based AI was made to play matches to generate transition data. This allows the Q-value when acting according to the rule-based AI's strategy to be learned. In reinforcement learning, matches were played according to the model's output to generate transition data. During this time, no exploration was performed, and the action that maximized the Q-value was continuously selected. In addition, as an intermediate method between these, a method was used that switches between action selection by the rule-based AI and action selection according to the model's output with a certain probability during the match. Note that 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 model with the highest win rate against COM and rule-based AI was repeatedly trained. The opponents were mainly changed in the order COM, rule-based AI, and past match AI. The decks used were fixed for each model, and the opponent's decks were randomly swapped. Approximately 100,000 matches were used for training.
[0150] (Results) Figure 15 is a table showing the results of 4,000 matches against COM at the end of learning. A Z-test was performed at a significance level of 5% to see if there was a difference in win rate from 50%, and if a significant difference was found, an asterisk (*) is added. The AI for DM decks was able to win against COM, but the AI for BE decks remained at the same strength or less than COM.
[0151] Next, we observed actual play to analyze the qualitative characteristics of the strategies the AI had learned. While we found insufficient learning, such as not attacking in situations where attacking would have won, we were able to confirm cases where combos could be executed just like the rule-based AI. Additionally, the rule-based AI implements theories such as "not setting Spell / Trap cards before entering the Battle Phase," and we were able to observe that, although this was incomplete, it had learned behavior to a certain extent.
[0152] (Discussion) Using imitation learning and reinforcement learning, we have achieved AI learning to play card games with a certain degree of strength. The win rate is lower than that of rule-based AI, and the AI sometimes behaves in a strategically unsound manner, so it is thought that the learning is insufficient. However, since the AI can hardly win against COM when playing randomly, it can be said that the method used in this example was successful in learning gameplay.
[0153] Furthermore, even though the winning rate was lower, there were two advantages that rule-based AI could not have. First, by visualizing the Q value, it is possible to express something like the AI's state of mind. In this problem setting, the Q value reflects the winning rate. Therefore, the audience can interpret that if the Q value is large, the AI is confident of winning, and if it is small, it is not confident.
[0154] Next, I showed the possibility of measuring the differences in characteristics between decks. From my own experience playing, I found that DM decks can win by adopting a consistent strategy regardless of the opponent, whereas BE decks require flexible and precise strategies depending on the opponent. As such, it can be inferred that BE decks are more difficult to learn, which led to the difference in win rates against control between AI for DM decks and AI for BE decks. It is interesting to note that this suggests that the difficulty of learning may vary depending on the deck.
[0155] Regarding insufficient learning, there is room for improvement, particularly in the learning algorithm. The reinforcement learning in this method does not involve exploration. Unlike typical reinforcement learning approaches, it is believed to actually fine-tune the policy obtained through imitation learning. This method was adopted to create an AI of a certain level of strength in a short period of time in problem settings with a large search space and sparse reward design, such as card games. Furthermore, because learning was primarily based on increasing the win rate against computer games, there is a possibility that the AI may not perform well when the opponent changes. Therefore, we felt the need to further refine self-play by incorporating exploration that does not rely on rule-based AI and league matches, aiming to develop a more general-purpose AI.
[0156] Various aspects of the present invention derived from the above-described embodiments and modifications will be described below. In the following description, corresponding components shown in the accompanying drawings will be written in parentheses to facilitate understanding of each aspect of the present invention, but the present invention is not limited to the illustrated forms.
[0157] The computer program (PG1) of the present invention is configured to cause a computer (21) incorporated in a game system (2) that provides a game that progresses according to the results of selections made in a series of selection opportunities to function as an information acquisition means (25) that acquires 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 a combination of a series of selections made in the series of selection opportunities being treated as one selection set, and an influence acquisition means (25) that acquires the influence information regarding each selection set using a predetermined process (23) that outputs the influence information based on the game information.
[0158] According to the present invention, a predetermined process is used to acquire influence information regarding the influence that each combination of selections in a series of selection opportunities has on the game, with each combination of selections being treated as a single selection set. In other words, influence information is acquired for each combination of selections in a series of selection opportunities. This makes it possible to acquire more appropriate influence information for a series of selections in a series of selection opportunities.
[0159] The influence information may be used appropriately. For example, it may be provided to the user as auxiliary information for playing the game. Alternatively, when a game is played by a team including the user, the influence information may be used to determine a series of choices to be made by one of the team's teammates. Similarly, the influence information may be used to determine a series of choices to be made by the user's opponent in a competitive game. Specifically, for example, as one aspect of the computer program of the present invention, a computer program may be employed that causes the computer to further function as a selection determination means (25) that determines one of the multiple selection sets as a target selection set based on the influence information, so that a target series of selections corresponding to the target selection set among the multiple selection sets is performed in the series of selection opportunities. In this case, a series of selections corresponding to the target selection set determined based on the influence information is realized. Therefore, the game can be progressed based on the influence information.
[0160] In an aspect in which a computer further functions as the selection determination means, a competitive game in which a plurality of players compete against each other is provided as the game, and the predetermined process is configured to output, as the influence information, information regarding the relative merits of the influence that each selection set has on victory in the competitive game, and the series of selections of the targets may be executed as the selections of one of the plurality of players. In this case, an execution target is determined based on the influence that each selection set has on victory, and the execution target is executed as the selection of one player. Thus, a so-called computer battle can be realized that utilizes the influence that each selection set has on victory.
[0161] The multiple players may be any suitable players. For example, the multiple players may include users (people), or may not include users and may all be computers (not limited to a computer executing the computer program of the present invention, but including another computer that uses the decision results provided by that computer). Similarly, a competitive game may be configured as appropriate. For example, a competitive game may be configured so that multiple players make choices simultaneously (in parallel), or so that turns are given in sequence, each including a series of selection opportunities. Even when turns are given in sequence, the choices of players outside of their turn may not be completely excluded in each turn, for example, a choice made by one player in their turn may prompt other opposing players to make a choice. Furthermore, when turns are given in sequence, the change of turns may be automatically performed based on time, the number of instructions, etc., or may be performed as one of the choices made in each turn. Furthermore, each turn may be configured as appropriate, for example, it may include only a series of selection opportunities, or it may include other selection opportunities. Each turn may include various selection opportunities that are appropriately differentiated through phases, etc., and the options at each selection opportunity may all be the same, or at least some (including all) of the options may be different. The end of each phase may be automatic or optional. The choice to change turns or end a phase may function as one of a series of choices, or may be executed as a separate choice from the series of choices.
[0162] For example, in one aspect of the computer program of the present invention, the competitive game may be configured to provide turns including the series of selection opportunities to each player in turn. Furthermore, in this aspect, the competitive game may be configured to provide a player other than the first player with a counter selection opportunity as a selection opportunity to make a selection opposing the first player before at least one selection in the target series of selections is made, and the selection determination means may determine subsequent selections in accordance with a predetermined rule if the selection in the counter selection opportunity makes the first selection impossible to make. In this case, even if a series of selections becomes impossible to make due to the counter selection opportunity, an executable selection is determined in place of the impossible selection in accordance with the predetermined rule. In other words, because the series of selections is complemented by the determination of an alternative selection, the counter selection opportunity does not prevent the acquisition of influence information in units of selection sets. Therefore, even in a game including a counter selection opportunity, it is possible to obtain influence information in units of selection sets.
[0163] When a selection after one selection in a series of target selections is determined according to a predetermined rule, the predetermined rule may be set appropriately. For example, the predetermined rule may be set to a rule that uses a selection set having the next most favorable influence information of the target based on influence information at the time of determining the selection set of the target. Alternatively, the predetermined rule may be set to a rule that randomly determines a selection from feasible selection candidates. Specifically, for example, in one aspect of the present invention that uses a predetermined rule, the predetermined rule may be a lottery result, and the selection determination means may randomly determine selections after the first selection according to the lottery result.
[0164] The series of choice opportunities may be composed of appropriate choice opportunities that are planned to be provided as a set. For example, the series of choice opportunities may be choice opportunities for performing related choices, or may be choices that are unrelated to each other but require selection as a set. Furthermore, when composed of related choice opportunities, the relationship may be appropriate. For example, the series of choice opportunities may have a relationship in which a choice in an earlier choice opportunity limits (changes) the selection candidates in a later choice opportunity. Alternatively, the series of choice opportunities may have a relationship in which a choice in any choice opportunity, including the first choice opportunity, derives the selection candidates in a later choice opportunity. For example, in one aspect of the computer program of the present invention, the series of choice opportunities may be configured so that choices derived from the selection in one choice opportunity are provided in choice opportunities following a previous choice opportunity. In this case, more appropriate influence information can be obtained for choices that tend to be complicated and derive from the selection in one choice opportunity.
[0165] The predetermined process may be configured as appropriate as long as it is capable of outputting impact information. For example, the predetermined process may be configured to output impact information according to predetermined logic (including predetermined rules, 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 aspect 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 machine learning a predetermined training dataset into a pre-trained model.
[0166] On the other hand, the game system of the present invention is a game system (2) that provides a game that progresses according to the results of selections made in a series of selection opportunities, and is equipped with an information acquisition means (25) that acquires game information indicating the state of the game necessary to obtain impact information regarding the impact that each selection set has on the game, with a combination of selections made in the series of selection opportunities being treated as one selection set, and an impact acquisition means (25) that acquires the impact information regarding each selection set using a predetermined process (23) that outputs the impact information based on the game information.
[0167] Furthermore, the control method of the present invention causes a computer (21) incorporated in a game system (2) that provides a game that progresses according to the results of selections made in a series of selection opportunities to execute an information acquisition procedure for acquiring 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 a combination of a series of selections made in the series of selection opportunities being treated as one selection set, and an influence acquisition procedure for acquiring the influence information regarding each selection set using a predetermined process that outputs the influence information based on the game information.
[0168] 2 Game server (game system) 21 Control unit (computer) 23 Analysis model unit (predetermined processing) 25 COM battle realization unit (information acquisition means, influence acquisition means, selection determination means) PG1 Server program (computer program)
Claims
1. A computer program configured to cause a computer incorporated in a game system that provides a game that progresses according to the results of selections made in a series of selection opportunities to function as: an information acquisition means that acquires game information indicating the state of the game necessary to obtain impact information regarding the impact that each combination of selections made in the series of selection opportunities has on the game, with each selection set being a single selection set; and an impact acquisition means that acquires the impact information regarding each selection set using a predetermined process that outputs the impact information based on the game information.
2. The computer program of claim 1, further configured to cause the computer to function as a selection determination means for determining one of the plurality of choice sets as a selection set to be executed based on the influence information, so that a series of target selections corresponding to a selection set to be executed among the plurality of choice sets is executed in the series of selection opportunities.
3. The computer program of claim 2, wherein the game provided is a competitive game in which multiple players compete against each other, the predetermined process is configured to output, as the influence information, information regarding the relative influence that each selection set has on winning the competitive game, and the series of target selections is executed as the selections of one of the multiple players.
4. The computer program of claim 3, wherein the competitive game is configured so that turns including the series of selection opportunities are provided to each player in turn.
5. The computer program of claim 4, wherein the competitive game is configured to provide a player other than the one player with a counter selection opportunity as a selection opportunity to make a selection that competes with the one player before at least one selection in the series of target selections is made, and the selection determination means, when the one selection cannot be made due to the selection result of the counter selection opportunity, determines the selections after the one selection in accordance with predetermined rules.
6. The computer program of claim 5, wherein the predetermined rule is a lottery result, and the selection determination means randomly determines subsequent selections in accordance with the lottery result.
7. A computer program according to any one of claims 1 to 6, wherein the series of selection opportunities is configured such that in a selection opportunity following a selection opportunity, an option derived from the selection made in the selection opportunity is provided.
8. A 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 impact information by machine learning a predetermined training dataset into a pre-training model.
9. A game system that provides a game that progresses according to the results of selections made in a series of selection opportunities, comprising: an information acquisition means 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 a combination of a series of selections made in the series of selection opportunities being treated as one selection set; and an influence acquisition means that acquires the influence information regarding each selection set using a predetermined process that outputs the influence information based on the game information.
10. A control method for causing a computer incorporated in a game system that provides a game that progresses according to the results of selections made in a series of selection opportunities to execute: an information acquisition procedure for acquiring game information indicating the state of the game necessary to obtain influence information regarding the influence that each combination of selections made in the series of selection opportunities has on the game, with each selection set being a single selection set; and an influence acquisition procedure for acquiring the influence information regarding each selection set using a predetermined process that outputs the influence information based on the game information.
Citation Information
Patent Citations
Game machine and computer program used the same
JP2011147498A
Information processing device, game control program, and game control method
JP2018175051A
Game system, game control device, and program
JP2018175635A
Method for generating trained model for predicting action to be selected by user
WO2022224932A1