Computer program, game system used therein, and control method
The computer program and game system address biased AI simulation by using multiple AI models with diverse training datasets to enhance reliability and accuracy of game analysis and inference services.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- KONAMI DIGITAL ENTERTAINMENT CO LTD
- Filing Date
- 2024-01-19
- Publication Date
- 2026-06-02
Smart Images

Figure 0007868867000001 
Figure 0007868867000002 
Figure 0007868867000003
Abstract
Description
Technical Field
[0001] The present invention relates to a computer program or the like applied to a computer incorporated in a game system that provides a user with superiority-inferiority information regarding the superiority or inferiority of the influence exerted by each option in a game including a selection opportunity for selecting a part of a plurality of options before the selection of some of the options.
Background Art
[0002] There is a game system that provides a user with superiority-inferiority information regarding the superiority or inferiority of the influence exerted by each option in a game including a selection opportunity for selecting a part of a plurality of options before the selection of some of the options. For example, as a game, options, and superiority-inferiority information, a system in which shogi in the real space, a move in the shogi, and information such as "winning rate" for each move are respectively adopted is known (see, for example, Non-Patent Document 1).
Prior Art Documents
Non-Patent Documents
[0003]
Non-Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Non-Patent Document 1 discloses a technique of adding information such as "winning rate", "candidate moves", and "reading lines" simulated for each move by AI (artificial intelligence) to a relay screen obtained by photographing the shogi board during a game from above. However, this information (simulation result) is only a simulation result based on one type of AI.
[0005] Generally, AI tends to develop thinking patterns (or perhaps even a personality) influenced by the training datasets that formed the basis of machine learning. For example, differences in the content of the training dataset or the machine learning learning methods (algorithms) often lead to the formation of unique thinking patterns in AI. Therefore, if the same move in the shogi game described in Non-Patent Document 1 were simulated by multiple types of AI, the simulation results of one AI might differ from those of another. If only simulation results based on one type of AI are provided, the simulation results may be biased, or the simulation may be performed for a purpose different from the player's intention. As a result, the reliability of the simulation results may decrease, or even if not, a situation may arise where simulation results from AIs with different thinking patterns, in other words, from various perspectives, are widely needed. Simulation results may be calculated not only by AI but also by various other logics, and similar situations can occur in those cases as well.
[0006] Therefore, the present invention aims to provide a computer program or the like that can provide information on the superiority or inferiority of each option from various perspectives in a game that includes an opportunity to select from among several options. [Means for solving the problem]
[0007] The computer program of the present invention is configured to function as a computer incorporated into a game system that provides the user with superiority / inferiority information regarding the influence of each option in a game that includes an opportunity to select some of several options, before the selection of some of the options, for at least one of the multiple options, by utilizing multiple types of processing that output the superiority / inferiority information for each of the at least one option, and as a superiority / inferiority provisioning means that provides the multiple superiority / inferiority information for each option before the selection of some of the options.
[0008] On the other hand, the present invention is a game system that includes a computer that provides the user with superiority / inferiority information regarding the influence of each option in a game that includes an opportunity to select some of several options, before the selection of some of the options, for at least one of the multiple options, wherein the computer functions as a superiority / inferiority acquisition means that acquires multiple superiority / inferiority pieces of information for each of the at least one option by utilizing multiple types of processing that output the superiority / inferiority information for each of the at least one option, and a superiority / inferiority provision means that provides the multiple superiority / inferiority pieces of information for each option before the selection of some of the options.
[0009] Furthermore, the control method of the present invention involves causing a computer incorporated into a game system that provides the user with superiority / inferiority information regarding the influence of each of the multiple options before the selection of some of the options, to perform the following steps: acquire multiple pieces of superiority / inferiority information for each of the at least one of the options using multiple types of processing that output the superiority / inferiority information for each of the at least one of the options; and provide the multiple pieces of superiority / inferiority information for each of the options before the selection of some of the options. [Brief explanation of the drawing]
[0010] [Figure 1] A diagram showing the schematic configuration of a network system to which a game system according to one embodiment of the present invention is applied. [Figure 2] A functional block diagram showing the essential components of the control system of a network system. [Figure 3] A schematic diagram showing an example of a battle screen for playing a card game. [Figure 4] A diagram illustrating an example of the steps involved in playing a card game. [Figure 5] A schematic diagram showing an example of a battle screen when the analysis service is applied. [Figure 6]An explanatory diagram illustrating a list of possible actions (options) a player can take in a given situation on the battle screen. [Figure 7] An explanatory diagram illustrating an example of a method used by artificial intelligence models to calculate probability values. [Figure 8] A schematic diagram showing an example of a match screen when the prediction service is applied. [Figure 9] An explanatory diagram illustrating an example of how artificial intelligence models calculate inferred information. [Figure 10] An explanatory diagram illustrating an example of the types of inferred information output by multiple types of artificial intelligence models. [Figure 11] An explanatory diagram illustrating the training dataset used to realize inferred information for each period and rank. [Figure 12] A flowchart illustrating an example of the procedure for analyzing choices. [Figure 13] A flowchart illustrating an example of the procedure for changing the display. [Figure 14] A flowchart illustrating an example of the backend prediction process. [Figure 15] An explanatory diagram illustrating an example of a variation in the display method of superiority / inferiority information. [Modes for carrying out the invention]
[0011] (Overall structure) Hereinafter, a control method according to one embodiment of the present invention and a game system with a computer program implemented (a game system according to one embodiment of the present invention) will be described 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 Figure 1. As shown in Figure 1, the network system 1 is configured as a client-server type system including a plurality of user devices 3 as clients and a game server 2 connected to each user device 3 via the network NT.
[0012] The user device 3 is a device for daily use by the user, and is a computer device (information communication terminal device) having an information communication function via the network NT. The user device 3 implements a computer program according to an aspect of the present invention and functions as a game system according to an aspect of the present invention in the network system 1. As an example, a smartphone having a communication call function or a tablet terminal may be used as the user device 3. The user device 3 may be a PC (abbreviation for personal computer), or may be a personal or household game machine provided as a so-called consumer game machine. Further, as the user device 3, a business game machine provided as a so-called arcade game machine may be used.
[0013] The user device 3 functions as a game machine by implementing predetermined software (application) and provides a game. The user device 3 provides a game including an opportunity to select a part of a plurality of options. Such a game may be configured as an appropriate game such as a role-playing game, a simulation game, or an action game. As an example, it is configured as a battle-type video game in which the user of the user device 3 and an opponent (another user including a computer) battle according to a predetermined rule via a game screen including a plurality of objects. In a battle-type game, the user and the opponent may function as a member of a team. The battle-type game may be played in a one-to-many (including the case where a plurality of users other than oneself become independent opponents as in mahjong) or many-to-many format. Hereinafter, the case of playing in a one-to-one format will be described as an example.
[0014] In addition, the competitive game may be provided as a perfect information game such as shogi or chess (both are games of the type that use pieces as objects), but as an example, it is provided as an imperfect information game. For a perfect information game in which all the contents of various elements necessary for selection in a selection opportunity are shared with the user, an imperfect information game is a game in which the content of at least one element of an element group (for example, the content of cards in a card game) used by other users (including computers) is not shared with the user. Various games such as mahjong are included in the imperfect information game, but below, the case where a card game is provided as an example thereof will be described.
[0015] The game server 2 may be configured by appropriately combining a plurality of 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. This service includes an analysis service and a speculation service. Both the analysis service and the speculation service are services for assisting selection in the selection opportunity of the game. Specifically, the analysis service is configured to provide the user with at least one option before selection as an analysis result with superiority information regarding the superiority or inferiority of the influence given by each option included in the selection opportunity. On the other hand, the speculation service is configured to provide speculation information regarding information not shared with the user in a card game. Details of the analysis service and the speculation service will be described later.
[0016] Note that the game server 2 may also provide the user device 3 with, for example, a distribution service for distributing a computer program and various data necessary for playing a game on the user device 3, a matching service for matching users who cooperate or compete in the game, a relay service for relaying game information to be shared between the user devices 3, and the like.
[0017] Network NT may be configured as appropriate, as long as it allows user device 3 to connect to game server 2. For example, network NT is configured to achieve network communication using the TCP / IP protocol. Typically, network NT is configured by combining the internet as a WAN and an intranet as a LAN. In the example in Figure 1, game server 2 is connected to network NT via router NTr, and user device 3 is connected via access point PP.
[0018] (Control system for network systems) Next, the main components of the control system of the network system 1 will be explained with reference to Figure 2. First, the game server 2 is provided with a control unit 21 and a storage unit 22 as a storage means. The control unit 21 is configured as a computer that combines a processor unit that performs various calculations and operation controls according to a predetermined computer program, and internal memory and other peripheral devices necessary for its operation. The processor unit may appropriately include units such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and an NPU (Neural Network Processing Unit) (including cases where each processor unit is integrated as appropriate, such as when a GPU is incorporated into the CPU).
[0019] The storage unit 22 is an external storage device implemented by a storage unit containing a non-volatile storage medium (computer-readable storage medium) such as a hard disk array. The storage unit 22 may be configured to hold all data on a single storage unit, or it may be configured to distribute and store data across multiple storage units. The storage unit 22 records the server program PG1 and the server data SD. The server program PG1 is a computer program that causes the control unit 21 to execute the processing necessary to provide various services to the user device 3. The server program PG1 may appropriately include various programs corresponding to the processing to be executed by the control unit 21, but in the example in Figure 2, it includes the analysis program AP and the prediction program FP.
[0020] The analysis program AP is a computer program that causes the control unit 21 to execute various processes to realize the analysis service. The analysis program AP may be configured as appropriate; for example, it may be configured to cause the control unit 21 to execute a process that outputs analysis results based on predetermined logic (including predetermined rules such as rules), but in the example in Figure 2, it is configured to make the control unit 21 (e.g., a GPU) function as an artificial intelligence model that outputs analysis results. The analysis program AP can be configured as appropriate, but in the example in Figure 2, it is configured as an inference program that incorporates the trained data (parameters) AD for analysis, which is output by training the training program (for analysis) with the training dataset (for analysis).
[0021] The pre-trained data AD for analysis may be of one type, but the example in Figure 2 includes multiple types of pre-trained data AD. Multiple types of pre-trained data AD for analysis may be generated by applying the same training dataset to training programs with different algorithms (learning methods), but as an example, they can be generated by applying different training datasets to the same training program. The analysis program AP incorporates and executes each of the multiple types of pre-trained data AD for analysis, thereby making the control unit 21 function as an artificial intelligence model with different ways of thinking. In the example in Figure 2, the analysis program AP incorporating each of the multiple types of pre-trained data AD is distinguished as the first analysis program AP1, the second analysis program AP2, and so on. Therefore, the analysis program AP is provided with multiple analysis program APs such as the first analysis program AP1, the second analysis program AP2, and so on.
[0022] The inference program FP is a computer program that causes the control unit 21 to execute various processes to realize the inference service. The inference program FP may be configured as appropriate; for example, it may be configured to cause the control unit 21 to execute a process that outputs an inference result based on a predetermined logic. However, in the example in Figure 2, it is configured to make the control unit 21 (e.g., a GPU) function as an artificial intelligence model, similar to the analysis program AP. The inference program FP can also be configured as appropriate, but in the example in Figure 2, it is configured as an inference program that incorporates the trained data (parameters) FD for inference, which is output by training the training program (for inference) with the training dataset (for inference).
[0023] The pre-trained data FD for inference may be of one type, but in the example in Figure 2, it includes multiple types of pre-trained data FD for inference (the number of types does not have to match the number of pre-trained data AD for analysis), similar to the pre-trained data AD for analysis. Multiple types of pre-trained data FD for inference may be generated by applying the same training dataset to training programs with different algorithms (learning methods), but as an example, they can be generated by applying different training datasets to the same training program. The inference program FP incorporates each of the multiple types of pre-trained data FD for inference and executes it, thereby making the control unit 21 function as an artificial intelligence model with different thinking processes. In the example in Figure 2, the inference programs FP incorporating each of the multiple types of pre-trained data FD for inference are distinguished as the first inference program FP1, the second inference program FP2, and so on. Therefore, the inference program FP has multiple inference programs FP, such as the first inference program FP1 and the second inference program FP2.
[0024] Server data SD is data referenced by the server program PG1 in order to provide various services. Server data may include appropriate data related to various services, but in the example in Figure 2, play data PD, analysis trained data AD, and inference trained data FD are shown as examples. Play data PD is data that describes information about each user's past play history. Play data PD is not limited to play history, but may also include other information necessary for managing each user, such as various personal information including attributes such as each user's gender or address. Each user's possessions within the card game may be managed as appropriate, but as an example, they are managed in play data PD. Specifically, the card game is configured to grant card objects to users who meet predetermined granting conditions (such as purchase, lending, granting through lottery or game progress). Then, the card objects granted to each user (hereinafter sometimes referred to as owned cards) are managed in play data PD so that they are associated with each user.
[0025] The control unit 21 can be equipped with various logical devices through a combination of hardware resources and server program PG1 as software resources. In the example shown in Figure 2, an analysis model unit 23 and an inference model unit 24 are provided. Both the analysis model unit 23 and the inference model unit 24 are logical devices that function as artificial intelligence models. Specifically, the analysis model unit 23 functions as an artificial intelligence model that outputs analysis results based on the analysis program AP, and the inference model unit 24 functions as an artificial intelligence model that outputs inference results based on the inference program FP.
[0026] The analysis model unit 23 (artificial intelligence model) is implemented, for example, by a combination of pre-trained data AD for analysis and an analysis program AP (an analysis program AP that incorporates and executes the pre-trained data AD for analysis), and performs various processes to realize the analysis service. Different thinking patterns can be formed depending on various elements. For example, it tends to have different thinking patterns depending on at least one difference in the content of the training dataset, the algorithm of the training program, and the algorithm of the inference program. The analysis model unit 23 can be provided with appropriate types of analysis model units 23 depending on these differences. In the example in Figure 2, two types of analysis model units 23 are shown: the first analysis model unit 23A and the second analysis model unit 23B.
[0027] The first analysis model unit 23A is the analysis model unit 23 corresponding to the first analysis program AP1. Similarly, the second analysis model unit 23B is the analysis model unit 23 corresponding to the second analysis program AP2. The first analysis model unit 23A and the second analysis model unit 23B execute various processes according to the first analysis program AP1 or the second analysis program AP2. For example, these processes include choice analysis. Details of the procedure for choice analysis will be described later.
[0028] Similarly, the inference model unit 24 (artificial intelligence model) is implemented, for example, by a combination of pre-trained data FD for inference and an inference program FP (an inference program FP that incorporates the pre-trained data FD for inference and is executed), and performs various processes to realize the inference service. The inference model unit 24 can also be of an appropriate type (including one type). In the example in Figure 2, two types of inference model units 24 are shown: the first inference model unit 24A and the second inference model unit 24B.
[0029] The first inference model unit 24A is the inference model unit 24 corresponding to the first inference program FP1. Similarly, the second inference model unit 24B is the inference model unit 24 corresponding to the second inference program FP2. The first inference model unit 24A and the second inference model unit 24B execute various processes according to the first inference program FP1 or the second inference program FP2. For example, these processes include backend inference processing. Details of the backend inference processing procedure will be described later.
[0030] Furthermore, the control unit 21 may also be equipped with logical devices such as a Web service management unit to implement processing for various services, including the aforementioned distribution service, matching service, or relay service. 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, their illustrations have been omitted.
[0031] On the other hand, the user device 3 is provided with a control unit 31 and a storage unit 32 as a storage means. The control unit 31 is configured as a computer that combines a processor unit that performs various calculations and operation controls according to a predetermined computer program with internal memory and other peripheral devices necessary for its operation. The processor unit may appropriately include units such as a CPU, GPU, and NPU (including cases where each processor unit is integrated as appropriate, such as when a GPU is built into the CPU), similar to the game server 2.
[0032] The memory unit 32 is an external storage device implemented by a storage unit that includes a non-volatile storage medium (computer-readable storage medium) such as a hard disk or semiconductor memory device. The memory unit 32 stores the game program PG2 and the game data GD. The game program PG2 is a computer program that causes the control unit 21 to execute the processing necessary to make the user device 3 function as a game device. The game data GD is data referenced by the game program PG2 for providing the game. The user device 3 may be provided with an analysis program AP or a prediction program FP from the game server 2 as appropriate, in which case the game data GD may include the analysis program AP or the prediction program FP.
[0033] Game data GD may include various data necessary for playing the game (including various tables), such as image data for displaying various images for the game, audio data for playing various sounds (including background music), and card data that defines each card object. However, in the example in Figure 2, play data PD is shown. Play data PD is provided and stored from the game server 2 as needed. Furthermore, if the analysis program AP or the prediction program FP is provided to the user device 3 from the game server 2, game data GD may include pre-trained data AD for analysis and pre-trained data FD for prediction.
[0034] The control unit 31 is equipped with a progress control unit 33, a data management unit 34, and a model processing unit 35, which are logical devices realized through a combination of the hardware resources of the control unit 31 and the game program PG2 as a software resource.
[0035] The progress control unit 33 executes various processes necessary for the progress of the card game. These processes include those necessary to enjoy the services provided by the game server 2. For example, the progress control unit 33 works in cooperation with the Web service management unit to perform processes related to matching opponents, and during a match, it performs processes to reflect the opponent's play in its own progress, and vice versa. The progress control unit 33 also performs processes to provide opportunities for choice in each turn and phase, as well as to switch between turns and phases, as described later.
[0036] The data management unit 34 performs various processes related to the management of game data GD. For example, when a card object is assigned to a user, the data management unit 34 performs a process to reflect that card object as an owned card in the play data PD.
[0037] The model processing unit 35 performs various processes necessary to provide analysis services and inference services to the user of the user device 3. The processes performed by the model processing unit 35 include processes implemented in cooperation with the analysis model unit 23 or the inference model unit 24 of the game server 2. For example, the model processing unit 35 works in cooperation with the analysis model unit 23 to perform processes to analyze the impact that at least one of the multiple selectable options in a selection opportunity has on the progress of the card game and to provide the analysis results. Similarly, the model processing unit 35 works in cooperation with the inference model unit 24 to perform processes to provide inference information regarding information not shared with the user in the card game.
[0038] For example, the model processing unit 35, as a process to realize the analysis service, collaborates with the analysis model unit 23 of the game server 2 to perform choice analysis processing. The model processing unit 35 also performs display change processing. Similarly, the model processing unit 35, as a process to realize the prediction service, collaborates with the prediction model unit 24 of the game server 2 to perform backend prediction processing. Details of the display change processing procedure will be described later.
[0039] Furthermore, the model processing unit 35 generates a situation log SL necessary for analysis by the analysis model unit 23 or estimation by the estimation model unit 24, stores it in the internal memory of the control unit 31, and also performs processing to update the situation log SL as appropriate in accordance with changes in the situation. The situation log SL may appropriately include various information about the game situation. The situation log SL (data) includes various information (which may be limited to some information as appropriate) for determining the situation of the card game, such as information on all card objects currently in use, information on each card object placed in the various placement locations described later, attributes of each card object (including the state of various card objects such as summoning or leaving the field area described later), life points, phase, and information on selectable options in each situation.
[0040] The user device 3 is equipped with appropriate output and input devices, but in the example shown in Figure 2, a monitor MO, speaker SK, and touch sensor TS are shown as examples of output devices, etc. All of these are general-purpose hardware installed in information and communication terminals such as smartphones. For example, the touch sensor TS is an input device that inputs a signal corresponding to the user's touch operation (operation by touching with a finger) to the control unit 31. The speaker SK is an output device for playing various sounds in response to signals from the control unit 31. The monitor MO is an output device (display device) for displaying game screens, etc. in response to signals from the control unit 31. In addition, the user device 3 may be equipped with various other devices as appropriate, such as a gyro sensor, an accelerometer, and a location information (e.g., GPS information) receiver.
[0041] (Game Overview) Next, an overview of the card game will be described with reference to Figures 3 to 11. The card game may be configured as any game, but as an example, it will be configured as a video game played through a game screen containing multiple card objects. More specifically, the card game is configured to be played using a deck of cards, which is a set of card objects (a predetermined number of card objects) selected by the user from their owned cards for gameplay.
[0042] Figure 3 is a schematic diagram showing an example of a battle screen for playing a card game. The battle screen 50 is the game screen displayed when a user and an opponent play against each other using their respective deck cards. Various card objects can be placed (displayed) on the battle screen 50, but in the example of Figure 3, for the sake of explanation, regardless of type and content, face-up card objects CO (orientation in which the contents of the card object can be seen) are shown with a dot pattern, and face-down card objects (orientation in which the contents of the card object cannot be seen and are kept secret) are shown with a diagonal line to the right. In this example, a predetermined number of card objects CO (which may be constant or variable, and may not match the number of cards in the opponent's deck) included in the user's deck cards function as multiple objects and card objects of the present invention. In addition, the owned card group and the deck cards function as the denominator element group and two or more elements, respectively, of the present invention.
[0043] As shown in Figure 3, the battle screen 50 includes a user area 51, a shared area 52, and an opponent area 53. The user area 51 is an area exclusively for the user. The user area 51 can be configured as appropriate, but in the example in Figure 3, it 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, and a points display area LR.
[0044] Field area 54 is an area where multiple card placement areas CP (only some of the symbols are shown) are formed. Each card placement area CP is a place (area) where each card object CO from the deck cards necessary to advance the game should be placed. Card games may have various types of card object COs with different roles (uses) and effects, such as a card object CO representing a monster (sometimes called "monster card CO1"), a card object CO representing magic (a predetermined effect) (sometimes called "magic card CO2"), a card object CO representing a trap (an effect different from magic) (sometimes called "trap card CO3"), or a card object CO representing a special effect (sometimes called "special card CO4"). When a card object CO is placed in each card placement area CP, that card object CO actually performs its role in the game.
[0045] For example, a Monster Card CO1 is assigned roles such as attacking or defending against the opponent or the opponent's Monster Card CO1. Monster Card CO1 can be classified into various types, but one example includes two types: Normal Monster Card CO1 and Extra Monster Card CO1. Normal Monster Card CO1 can be placed in the hand area 57 and then in the field area 54. Extra Monster Card CO1, on the other hand, is summoned (called out) in exchange for leaving the field area 54. The placement (summoning) of Extra Monster Card CO1 is usually restricted to the common area 52, but placement in the field area 54 may be permitted if certain field conditions are met. Therefore, a Monster Card CO1 may have the role of summoning other Monster Card CO1 to the field area 54, etc. Monster Card CO1 placed in the card area CP are then used to actually impart roles such as attack, defense, or summoning to the progress of the game. Similarly, Spell Card CO2, Trap Card CO3, and Special Card CO4 are card objects CO that can be placed from the hand placement area 57 to the field area 54, and Spell Card CO2, Trap Card CO3, and Special Card CO4 placed in the card placement area CP are used to activate the effects indicated by each card object CO.
[0046] Multiple card placement areas CP may be placed as appropriate in the field area 54, but in the example in Figure 3, they are arranged to form two rows: a front row 54A located closer to the opponent's area 53, and a back row 54B located behind it. The front row 54A and the back row 54B are rows formed by six card placement areas CP and five card placement areas CP, respectively, arranged side by side. There are no restrictions on which card object CO may be placed in each card placement area CP, but as an example, there are restrictions on the types of card object CO that can be placed. The front row 54A and the back row 54B may be used interchangeably as appropriate, but as an example, they may be used interchangeably depending on the types of card object CO that can be placed.
[0047] Specifically, the front row 54A is used as each card placement CP where monster cards CO1, one of the card object CO types, should be placed. However, the leftmost card placement CP of the six card placement CPs that make up the front row 54A (which can be formed as appropriate, but in the example in Figure 3 it is formed to be slightly smaller than the other card placement CPs) is an exception and is used as each card placement CP where special cards should be placed. In other words, the placement of card object COs such as magic cards CO2 or trap cards CO3 in the front row 54A is restricted, the placement of special cards CO4 in the front row 54A other than the leftmost card placement CP is restricted, and the placement of monster cards CO1 in the leftmost card placement CP is further restricted.
[0048] On the other hand, the back row 54B is used as card placement CPs where magic cards CO2 and trap cards CO3 should be placed. In other words, the placement of card object COs such as monster cards CO1 or special cards CO4 in the back row 54B is restricted. However, a monster card CO1 with the characteristics of a magic card CO2 (a monster card CO1 corresponding to a monster with a magic effect) may be provided, and such a monster card CO1 with a magic attribute may be allowed to be placed in the designated card placement CPs in the back row 54B (for example, the card placement CPs at both the left and right ends). In other words, a card object CO with multiple attributes may be included, and the placement of such card object COs may be allowed in both the front row 54A and the back row 54B depending on the multiple attributes.
[0049] In the field area 54, card objects CO can be placed as appropriate according to the user's instructions, subject to the limitations of each card placement area CP. In the example in Figure 3, one monster card CO1 is placed in the third card placement area CP from the right in the front row 54A. Each card object CO may be placed in a card placement area CP facing various directions, such as vertically or horizontally. The orientation can be used as appropriate, but as an example, monster card CO1 may be placed horizontally when used for defense and vertically when used for attack.
[0050] The hand placement area 57 is the area where card objects CO (hereinafter sometimes referred to as hand CO5) that are virtually in the player's hand from the deck cards should be placed (displayed). Hand CO5 are candidate card objects CO that are to be placed in the field area 54 (each card placement area CP). An appropriate number of hand CO5 can be placed in the hand placement area 57, but in the example in Figure 3, five hand CO5 are placed. In this example, the hand placement area 57 functions as the hand area of the present invention.
[0051] The Main Deck placement area 55 and the Extra Deck placement area 56 are both areas where card object COs representing the remaining deck cards (the remaining cards after deducting the card object COs for the Field Area 54 and Hand Placement Area 57 from the initial deck cards) should be placed, but their uses differ. Specifically, the Main Deck placement area 55 is the area where card object COs (hereinafter sometimes referred to as Deck CO6) that are candidates to be added to Hand CO5 from the remaining deck cards should be placed. The card object COs for Deck CO6 are added to Hand CO5 through the draw during the Draw Phase, which will be described later. On the other hand, the Extra Deck placement area 56 is the area where card object groups representing bundles of Extra Monster Card CO1 (hereinafter sometimes referred to as Summon Deck Card CO7) should be placed. When an Extra Monster Card CO1 is summoned via a Normal Monster Card CO1, an Extra Monster Card CO1 that should be placed in Field Area 54 is drawn from Summon Deck Card CO7. In other words, the remaining deck cards are divided into the deck area CO6 and the summoned deck cards CO7, and are placed in the main deck placement area 55 and the extra deck placement area 56, respectively. In this example, the main deck placement area 55 functions as the deck area of the present invention.
[0052] Graveyard Area 58 is, in principle, an area for accommodating card objects CO that have left the Field Area 54. For example, Monster Card CO1 will leave the Field Area 54 when it meets certain conditions (conditions that cause it to leave the Field Area 54, etc.), such as being attacked by an opponent's Monster Card CO1 or being summoned as an Extra Monster Card CO1. Similarly, card objects CO that activate certain effects, such as Spell Card CO2 and Trap Card CO3, will leave the Field Area 54 after activating their effects, in accordance with the card's effect. Graveyard Area 58 is provided as a place (destination) for accommodating (placing) these card objects CO that have left the Field Area 54. Graveyard Area 58 may be configured to display card objects CO that have left the Field Area 54, but in the example in Figure 3, the display of card objects CO is omitted.
[0053] The point display area LR is an area for displaying the user's life points. In card games, appropriate life points may be set for both the user and the opponent, but in the example in Figure 3, both life points are set to 8000 points ("8000"). The win / loss conditions for determining the winner and loser in a match may be set as appropriate, but for example, they are met when the opponent's life points are reduced to zero. In other words, life points function as a parameter for determining the winner and loser. Specifically, the user can reduce the opponent's life points by using monster card CO1, which is placed in the field area 54 and the common area 52, to attack. If the user can reduce the opponent's life points to zero, it is determined that the user has won, and the match ends. On the other hand, if the user's life points are reduced to zero by an attack from the opponent's monster card CO1, it is determined that the user has lost, and the match ends.
[0054] The shared area 52 is an area shared by the user and the opponent. The shared area 52 can be configured as appropriate, but in the example in Figure 3, two card placement areas CP are provided. The user's card object CO and the opponent's card object CO are appropriately placed in each card placement area CP. Placement in each card placement area CP of the shared area 52 may be permitted without restriction regardless of the type of card object CO, but as an example, it is limited to Extra Monster Card CO1. That is, Extra Monster Card CO1 summoned from Summon Deck Card CO7 is first placed in each card placement area CP of the shared area 52, and is only permitted to be placed in the field area 54 if predetermined field conditions are met. In this example, the user area 51 and each card placement area CP of the shared area 52 (which may include the Extra Deck placement area 56) function as multiple card placement areas of the present invention.
[0055] The opponent's area 53 is an area exclusively for the opponent. The opponent's area 53 serves the same purpose as the user area 51 for the opponent. For this reason, the opponent's area 53 also has a field area 54, a main deck placement area 55, an extra deck placement area 56, a hand placement area 57, a graveyard area 58, and a point display area LR, but their functions are the same as those of the user area 51, so their explanation will be omitted.
[0056] Figure 4 shows an example of the procedure for playing the card game in the example shown in Figure 3. As shown in Figure 4, the card game includes the user's turn and the opponent's turn (hereinafter, the two may be referred to as "players" when not distinguished). The game proceeds in a so-called turn-based system, with the user and opponent taking turns alternately throughout these turns. Specifically, first, as preparation for the game, processes such as shuffling the players' deck cards and placing them in the main deck placement area 55, and drawing a predetermined number of card objects CO from each player's deck cards (deck CO6) and displaying (placing) them as hand CO5 in the hand placement area 57 are performed. Once the preparation is complete, the game begins with the turn of the first player (for example, the user takes the first turn). One turn is divided into multiple phases. A phase is a concept for dividing the procedures to be performed in one turn into multiple stages according to their content and nature. In the example in Figure 4, one turn is divided into six stages from the draw phase to the end phase, but this is just one example.
[0057] In each phase, the player who has been given a turn can choose appropriate actions within the scope defined for each phase. For example, in the Draw Phase, a Card Object CO is drawn from Deck CO6, and in the Standby Phase, the effects of Card Object COs designated to be processed in that phase can be activated. In the First Main Phase, various actions are permitted, such as summoning various objects like monsters to be used in battle, setting Card Object COs with unique effects like spells and traps, or activating their effects, while appropriately using Card Object COs in Field Area 54. In the Battle Phase, battles are fought using Card Object COs. For example, battle is fought when a Monster Card CO1 to be used for an attack on the user's turn and a Monster Card CO1 to be targeted by the opponent's attack (or a direct attack to life points if no Monster Card CO1 exists in Field Area 54) are selected. The outcome of the battle is determined according to parameters such as the attribute and strength of Monster Card CO1. In the Second Main Phase, the same actions as in the First Main Phase are permitted. During the end phase, the end of the turn is indicated (declared).
[0058] In the Battle Phase, combat can be avoided by the player whose turn it is. In that case, the Battle Phase and the Second Main Phase are skipped. Similarly, the Second Main Phase can also be avoided by the player during the Battle Phase. The end of a phase is indicated by a predetermined end operation. When a turn ends, the turn passes to the opposing player. The game ends when the predetermined win / loss conditions are met as turns continue to alternate. As an example of a win / loss condition, as mentioned above, the conditions are met when the life points set for each player P are reduced to a predetermined value (for example, 0) through combat.
[0059] (Analysis service) Next, the details of the analysis service will be explained with reference to Figure 5. As described above, the analysis service is a service that provides superiority / inferiority information as an analysis result for at least one option in a choice opportunity. The analysis service can be applied to any situation, including choice opportunities, but for example, it is applied to the choice opportunities included in the battle screen 50. Figure 5 schematically shows an example of the battle screen 50 when the analysis service is applied. In the example in Figure 5, components similar to those in the battle screen 50 of Figure 3 are denoted by the same reference numerals and their explanations are omitted.
[0060] As shown in Figure 4, battles on the battle screen 50 are played by players exchanging turns that include multiple phases. Therefore, phase end instructions to end each phase (for example, moving to the next battle phase after the first main phase) or turn end instructions to end each turn can function as options on the battle screen 50. Also, on the battle screen 50, deck cards (groups of card objects) are used throughout each phase as described above and are placed in the field area 54 etc. via hand cards CO5. Therefore, the user is required to choose which hand cards CO5 to place in which card area CP and how. For magic cards CO2 and trap cards CO3, the user also needs to choose when and how to activate their effects. Furthermore, for monster cards CO1, the user needs to choose whether or not to attack during the battle phase, and if so, which monster card CO1 to attack. When the analysis service is applied to the battle screen 50, information on the advantages and disadvantages of these choices is provided.
[0061] Specifically, as shown in Figure 5, when the analysis service is applied, an additional advice display field 60 is displayed compared to the example in Figure 3. The advice display field 60 is a field for displaying superiority / inferiority information (analysis results) for each option provided by the analysis service. Whether or not the analysis service is used, in other words, whether or not the advice display field 60 is displayed, can be set as appropriate, and it may be displayed by a predetermined operation to request its display, but as an example, it may be displayed automatically for each selection opportunity without requiring a request from the user.
[0062] The advice display area 60 may display an appropriate number of superiority / inferiority information. For example, superiority / inferiority information for all options may be displayed. However, in the example in Figure 5, five pieces of advice information are displayed via five advice units 61, from the first advice unit 61A to the fifth advice unit 61E. In addition, the analysis service utilizes multiple artificial intelligence models installed on the game server 2, and multiple pieces of superiority / inferiority information (analysis results) are output for each option via these models. Therefore, the advice display area 60 displays multiple pieces of superiority / inferiority information output by multiple artificial intelligence models for each option. The number (types) of artificial intelligence models may be an appropriate number. However, in the example in Figure 5, two types of artificial intelligence models, "offensive AI" and "defensive AI," are used, and two types of superiority / inferiority information are displayed for each option via these models.
[0063] "Offensive AI" and "Defensive AI" refer to offensive artificial intelligence models (hereinafter sometimes referred to as offensive AI) and defensive artificial intelligence models (hereinafter sometimes referred to as defensive AI), respectively. The five advisory sections 61 in the advisory display section 60 are classified into advisory sections 61 that display superiority / inferiority information based on offensive AI and advisory sections 61 that display superiority / inferiority information based on defensive AI. In the example of Figure 5, the advisory sections 61 corresponding to offensive AI are displayed in white, for example, the first advisory section 61A, the third advisory section 61C, and the fourth advisory section 61D. On the other hand, in the example of Figure 5, the advisory sections 61 corresponding to defensive AI are displayed in gray, for example, the second advisory section 61B and the fifth advisory section 61E.
[0064] As described above, each artificial intelligence model is implemented using the content of the pre-trained data AD for analysis, and each pre-trained data AD for analysis is generated from the content of the training dataset. Then, offensive AI corresponds to a trained artificial intelligence model based on the pre-trained data AD for analysis generated from the offensive training dataset, and defensive AI corresponds to a trained artificial intelligence model based on the pre-trained data AD for analysis generated from the defensive training dataset. For example, among the multiple types of analysis model units 23, the first analysis unit 23A corresponds to offensive AI, and the second analysis model unit 23B corresponds to defensive AI. The offensive training dataset and the defensive training dataset can be configured as appropriate, but for example, they can be configured using a dataset containing a set of results where an offensive strategy was successful, and a dataset containing a set of results where a defensive strategy was successful, respectively.
[0065] Each advice unit 61 can be configured as appropriate, but in the example in Figure 5, it includes an advice information unit 62 and a choice information unit 63. The advice information unit 62 is the part that displays detailed information, including superiority / inferiority information. The superiority / inferiority information may be appropriate information regarding the influence of each choice, such as symbols indicating the degree of influence each choice has on victory, such as A, B, and C, or textual information that intuitively indicates the influence each choice has, such as "likely to lead to victory." However, in the example in Figure 5, it is configured as numerical information that indicates the possibility of having an advantage in the match through the magnitude of the numerical value. For example, in the first advice unit 61A, the numerical information "42.0%" is displayed as superiority / inferiority information. The numerical information may be a numerical value indicating various advantages, such as a numerical value indicating the possibility of having an advantage (less likely to be at a disadvantage) within a predetermined range of turns or choices within the analysis target. However, in the example in Figure 5, it is displayed as a probability value indicating the possibility (probability) of ultimately winning the match.
[0066] The probability value is information indicating the winning probability when compared to other options output by the same artificial intelligence model. In other words, for example, if it is the probability value for an offensive AI model, it is set so that the sum of the probability values of all options output by the offensive AI model equals 100%. The numerical information may be independent values (the sum of the values of all options does not necessarily equal 100%), such as the evaluation results of each option by the offensive AI model, but as an example, it is calculated as a probability value that adds up to 100%. In addition to the probability value information (superiority / inferiority information), the detailed information may also include appropriate information, but in the example in Figure 5, it includes information indicating the artificial intelligence model that output the probability value, such as "Evaluation of offensive AI Type A". Note that in the example in Figure 5, only one type (e.g., "Type A") is used for both offensive and defensive AI, but multiple identical (offensive, etc.) artificial intelligence models based on different performance sets, such as "Type B", may be used to output the probability value.
[0067] The option information section 63 displays information about the options that are subject to superiority / inferiority information (probability value). For example, the option information section 63 of the first advice section 61A displays information about the option "Enter Battle Phase" (the option corresponding to the start of the Battle Phase). In this case, the first advice section 61A indicates that the probability value (superiority / inferiority information) of the option "Enter Battle Phase" is "42.0%". In the example in Figure 5, the display of the advice information section 62 and the option information section 63 of the third advice section 61C to the fifth advice section 61E is simplified, but details may be displayed in the same way as the first advice section 61A, etc., by touching each advice section 61, for example.
[0068] Furthermore, in the example in Figure 5, the probability value for the option "Enter Battle Phase" is output only by the offensive AI, but the probability value for similar options is also output by the defensive AI. Specifically, both the offensive and defensive AIs output probability values for all selectable options in each situation on the battle screen 50. Therefore, for each selectable option, at least two types of probability values corresponding to the offensive AI and the defensive AI are output. The advice display area 60 may be configured to display all the information on the two types of probability values for each option, but in the example in Figure 5, it is configured to display only the top five options (some options) in terms of probability value.
[0069] The ranking of probability values is evaluated for each artificial intelligence model, such as offensive AI and defensive AI, and the top rankings from each may be displayed in the advice display area 60. However, in the example in Figure 5, the evaluation spans between offensive AI and defensive AI (different artificial intelligence models). For example, if "Entering the Battle Phase" is evaluated as having the highest probability value in the offensive AI, but "Entering the Battle Phase" is evaluated as having a low probability value in the defensive AI, then only the analysis results of the offensive AI may be displayed in the advice display area 60. In this way, there may be cases where only one of the offensive AI or defensive AI displays the probability value for the same option in the advice display area 60. However, as mentioned above, both the offensive AI and defensive AI output the same probability value for all options, so both may be displayed as advice in the advice display area 60.
[0070] (Method for calculating probability values) Next, referring to Figures 6 and 7, we will explain how to calculate the probability values (superiority / inferiority information) for each option output by each artificial intelligence model, such as an offensive AI. Figure 6 is an explanatory diagram for illustrating a list of options (actions) that a player can take in a given situation on the battle screen 50. In the example in Figure 6, the options that a player can take (conceptualized with "○") are shown in a tree structure where each option branches to the next option. As shown in Figure 6, the options that a player can take on the battle screen 50 are classified into layers of multiple option groups, and the option group in the deepest layer of each tree corresponds to each option that can actually be selected. All of the options that can actually be selected are then input into multiple artificial intelligence models, such as offensive AIs and defensive AIs, and each of the multiple artificial intelligence models outputs a probability value for each option.
[0071] Specifically, in the example in Figure 6, three monster cards CO1 are already placed in the front row 54A of the field area 54 in the example in Figure 5, and three magic cards CO2, etc., are already placed in the back row 54B, and the player has two cards, "A monster card" and "B magic card," in their hand CO5. The set of selectable options in this situation is shown. In this case, the first four options the player can take are to use "A monster card," to use "B magic card," to "transition to the next phase," and to "end the turn." Therefore, these four options form the first set of selectable options.
[0072] Furthermore, the use of “A Monster Card” and “B Magic Card” involves a set of choices regarding where and how to use them, forming a second layer of choices. For example, in the field area 54 of the example in Figure 5, the front row 54A is distinguished as the 1st card area CP to the 5th card area CP, starting from the leftmost card area CP (where Monster Card CO1 cannot be placed) and moving to the right. If three Monster Card CO1 cards are placed in the 3rd to 5th card area CPs, then the only card area CPs where “A Monster Card” (Monster Card CO1) can be placed are the 1st card area CP and the 2nd card area CP. Therefore, these two card area CPs correspond to the choices for where “A Monster Card” can be placed. Additionally, there are two ways to place Monster Card CO1 into a card area CP: “Summon” (Monster Card CO1 is placed face up) and “Set” (Monster Card CO1 is placed face down). Therefore, for each of the two card placement locations (CP 1 and CP 2), there are further two options: "Summon" and "Set". As a result, there are four options for using "Monster Card A" corresponding to the two card placement locations (CP) x two placement methods. In addition, for Monster Card CO1, various other options may exist depending on the situation. For example, in the case of Extra Monster Card CO1, it is necessary to specify a certain number of Monster Card CO1 that should leave Field Area 54 (and be moved to Graveyard Area 58). In this case, options such as the specified number (e.g., three) x the type of Extra Monster Card CO1 x the card placement location (CP) may be derived.
[0073] On the other hand, for example, in the field area 54 of the example in Figure 5, the back row 54B is distinguished from the left end to the right as the 6th card storage CP to the 10th card storage CP, and if three magic cards CO2 are placed in the 8th card storage CP to the 10th card storage CP, then the only card storage CPs on which the "B magic card" (magic card CO2) can be placed are the 6th card storage CP and the 7th card storage CP. Therefore, these two card storage CPs correspond to the options for where the "B magic card" can be placed. Also, the "B magic card" can be configured as any magic card CO2, but for example, if the "B magic card" is a magic card CO2 that has two placement methods for placing it in a card storage CP, namely "activate" (an option to activate the effect) and "set" (an option to postpone the activation of the effect), then these two placement methods exist as options. As a result, there are also four options for using the "B magic card," corresponding to two card storage CPs × two placement methods. Then, these four options, plus four options corresponding to "A Monster Card," form a total of eight options, which constitute the second layer of choices.
[0074] If an effect is set for "Monster Card A," further options arise. For example, if "Monster Card A" has a conditional effect that requires it to be placed in a card placement area (CP) by "summoning," then there are two further options for the "summoning" method: "activate the effect" and "do not activate the effect." Therefore, these two options multiplied by two card placement areas (CP) result in four options, which in turn arise from the second layer of options related to "Monster Card A."
[0075] Similarly, if a “B Magic Card” has two effects, options are derived. For example, if a “B Magic Card” has two effects, A and B, then there are two further options for placement: “Activate A effect” and “Activate B effect.” Therefore, four options corresponding to these two options × two card placement CPs are generated from the second layer of options for “B Magic Card.” Then, these four options, plus the four options derived from the second layer of options for “A Monster Card,” form a total of eight options that make up the third layer of options. In addition, for Magic Card CO2, various other options may exist depending on the situation. For example, if the target of the effect can be specified, there may be further options to select that target. Although not illustrated in the example in Figure 6, the same applies to other card object COs such as Trap Card CO3.
[0076] Furthermore, the fourth layer of choices is derived from the third layer of choices. For example, if two of the three monster cards CO1 already placed in the card placement area CP (e.g., "C monster card" and "D monster card") can be targets for the effect of "B magic card", then these two targets are derived as choices. Therefore, the eight choices corresponding to these two targets × four choices (two types of effects occurring for each of the two card placement areas CP) form the fourth layer of choices.
[0077] In the example in Figure 6, in the tree of choices derived from "Monster Card A," a portion of the second layer of choices (when placed in the "set" state at each card placement CP) and the third layer of choices correspond to the deepest layer of choices. Therefore, each choice in these groups is input into an artificial intelligence model such as an attack-type AI, and a probability value (the number in "○") is output for each choice. Similarly, in the tree of choices derived from "Magic Card B," a portion of the second layer of choices (when placed in the "set" state at each card placement CP) and the fourth layer of choices correspond to the deepest layer of choices. Therefore, each choice in these groups is input into an artificial intelligence model such as an attack-type AI, and a probability value is output for each choice.
[0078] 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 of options corresponds to the deepest layer of options. Therefore, the two options, "phase transition" and "turn end," are input into an AI model such as an attack AI, and a probability value is output for each option. Note that in the example in Figure 6, the probability value information output by one type of AI model out of several is shown as an example, but in reality, multiple probability values are output for each option by each of the multiple AI models.
[0079] Furthermore, the example in Figure 6 shows an example of the set of choices in the battle phase. In addition to instructions to end the phase, it shows the card object CO to be placed from the hand CO5 to each card placement CP, and the choice corresponding to the card placement CP where that card object CO should be placed. However, for example, in the draw phase, there are choices to add (draw) from the deck CO6 to the hand CO5. Therefore, at least some of the choices that can be selected differ from phase to phase (for example, the choices at the end of the phase or the end of the turn may be common). In other words, the choices that can be taken differ in each phase. Then, information on the probability value of each choice that can be selected in each phase is output. In this example, the set of choices in the deepest layer functions as an example of multiple choices in the present invention. Also, the set of choices for each phase functions as two or more choices in the present invention.
[0080] Figure 7 is an explanatory diagram illustrating an example of a method by which an artificial intelligence model calculates probability values. Generally, artificial intelligence models are generated by machine learning a training dataset using a predetermined learning method (algorithm), and tend to have thinking (algorithms) corresponding to the learning method. Various learning methods are included in machine learning, such as imitation learning and reinforcement learning (imitation learning is sometimes considered a type of reinforcement learning). Imitation learning is often classified into methods such as Behavoir cloning, Dataset Aggregation, or Inverse Reinforcement Learning, but in many cases the reward is not explicitly defined. On the other hand, reinforcement learning is often classified into methods such as Dynamic Programming (DP), Monte Carlo (MC), or Temporal Difference Learning (TD), and is often a method that maximizes the reward.
[0081] Artificial intelligence models (analysis programs AP) for analysis services may be generated using various learning methods as appropriate, but one example is generation using the TD method of reinforcement learning. Furthermore, the TD method may include techniques such as SARSA, but one example is the Q-Learning method, which is used to generate artificial intelligence models for analysis services.
[0082] Q-learning is a method that evaluates actions (choices) by finding an action-value function (Q-function). The Q-function is generally defined as a function that predicts what the reward (often called the Q-value) will be if a certain action is taken in a given state (a detailed explanation of the specific function formula is omitted). However, in Q-learning, if the Q-function table (input information) becomes large (an enormous amount), the calculations tend to fall behind, making implementation difficult. On the other hand, for example, the input information in the battle screen 50 (information from the situation log SL) is considered to be enormous. For this reason, a trained artificial intelligence model for analysis services is generated using the DQN (Deep Q Network) method, which obtains an approximate value of the Q-value using a neural network. In this case, the artificial intelligence model for analysis services is configured to calculate probability values (Q-values) using the DQN method.
[0083] Furthermore, the reward (a predetermined outcome 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. For example, a specific way of winning, such as a victory by a narrow margin, or a tendency to win may be set. The artificial intelligence model for the analysis service may have different thinking depending on the reward (predetermined outcome) in Q-learning. As an example of a reward, victory in a match is set, and the artificial intelligence model for the analysis service is configured to calculate the probability value (Q-value) for winning the match using the DQN method.
[0084] Figure 7 shows an overview of the DQN method for calculating probability values (Q-values). As shown in Figure 7, the DQN method utilizes a neural network (deep learning), forming an input layer, hidden layers, and an output layer, with each layer working together to output calculation results for the data. The input layer is responsible for collecting data. The hidden layers are responsible for calculations to determine probability values. Hidden layers often consist of multiple layers (generally, the more layers there are, the higher the accuracy tends to be), and although only two hidden layers are shown in the example in Figure 7, an appropriate number of hidden layers may be formed. The output layer is responsible for outputting the calculation results performed in the hidden layers. An artificial intelligence model trained using the DQN method is configured to output the probability value of winning a match in the output layer. In addition, connecting lines (often called synapses) are provided between the input layer, hidden layers, and output layer. Each connecting line is assigned a weight value (often expressed with the sign w) indicating its importance (strength of connection), and the importance of the information is determined by the magnitude of the weight value. In the example in Figure 7, both the input value (input information) and the output value (sometimes referred to as a node) are represented by "○".
[0085] Specifically, in the input layer, information from the situation log SL, which shows the current state of the battle screen 50, is first input. The situation log SL contains information from many dimensions (input values). It is desirable that the number of pieces of information in this dimension be less than about 5000. As mentioned above, the situation log SL may contain various information to determine the state of the card game, but in addition to information on the placement status in the field area 54, such as the status of the 1st card placement area CP to the 10th card placement area CP, it also contains information on possible choices (see example in Figure 6) such as end of turn, summoning A monster card, activating A monster card effect, and activating B magic card.
[0086] A predetermined function formula using appropriate weights (weight values w) is applied to the input values in the input layer, and the output values of the hidden layer (first layer) are calculated using this function formula. The first hidden layer can have an appropriate number of output values, but in the example in Figure 7, four output values are calculated. Furthermore, a predetermined function formula using appropriate weights is applied to these four output values, and the output values of the hidden layer (second layer) are calculated using this function formula. The second hidden layer can also have an appropriate number of output values, but in the example in Figure 7, four output values are again calculated. Note that the weights (weight values w) corresponding to each connection line are calculated as a learning result and are managed, for example, in the trained data AD for analysis. Also, the connection lines (synapses) connecting the input layer and the hidden layers are omitted in Figure 7 as appropriate.
[0087] The output value of the final intermediate layer (second layer) is calculated as a Q value using a predetermined function formula that utilizes appropriate weighting in the output layer. The Q value (output value of the output layer) is calculated for each predetermined action (choice on the battle screen 50). For example, in each tree in the example of Figure 6, the Q value is calculated for each choice (selectable choice) in the deepest layer's choice group using the method in the example of Figure 7. The calculated Q values are then converted into probability values using a normalization function (e.g., Softmax function) so that the sum of the values of all selectable choices equals 100%. As an example, probability values are calculated for all selectable choices for each situation using this method. Similar calculations are also performed by each of the multiple artificial intelligence models (e.g., the first analysis program AP1 and the second analysis program AP2), such as offensive AI or defensive AI. The top five of the multiple probability values calculated by the multiple artificial intelligence models (e.g., the five in the example of Figure 5) are then provided to the user via the advice display area 60. Note that the application of a normalization function is not mandatory. For example, if various conditions such as learning methods differ, the application of normalization functions may be omitted as appropriate.
[0088] (Prediction service) Next, with reference to Figure 8, the details of the prediction service will be explained. The prediction service is a service that provides prediction information to predict the content of the opponent's elements (e.g., card object CO) that are not shared with the user, from the set of elements (e.g., card object CO) prepared for each player in a card game. The prediction service can be applied to various situations that include elements that are kept secret from the user, but for example, in the battle screen 50, it is applied to predicting card object CO such as card object CO, hand CO5, deck CO6, or summon deck card CO7 that are placed face down in the field area 54 which is kept secret. In other words, in the battle screen 50, prediction information that predicts the content of face-down card object CO, etc., is provided via the prediction service. Figure 8 schematically shows an example of the battle screen 50 when the prediction service is applied. Note that in the example of Figure 8, the same reference numerals are used for components that are the same as those in the battle screen 50 of Figure 3, and their explanations are omitted.
[0089] As shown in Figure 8, when the prediction service is applied, the prediction information section 70 is additionally displayed on the battle screen 50 compared to the example in Figure 3. The prediction information section 70 is the part for displaying prediction information. The prediction information section 70 can be configured as appropriate, but in the example in Figure 8, it includes a target designation section 71, a candidate image 72, and a candidate sequence line 73. The target designation section 71 is the part that indicates the target (prediction target) for which prediction information will be displayed. The target designation section 71 can be configured as appropriate as long as it allows the user to identify the target, but in the example in Figure 8, it is shown by a dashed line surrounding the card object CO (card object CO whose face side is hidden) that is the prediction target. The prediction information section 70 may also be displayed to target appropriate card object COs, for example, it may be displayed to target all face-down card objects CP, or to target an appropriate portion of them. In the example in Figure 8, it is displayed to target face-down card objects CP specified (selected) by the user. In this case, the target designation unit 71 has the function of distinguishing the card object CP designated as the target of prediction by the user from other face-down card objects CP.
[0090] Candidate image 72 is an image that shows a candidate for the card object CO to be predicted. More specifically, the image of the front side (content) of the card object CO that is predicted to be the card object CO to be predicted is displayed as candidate image 72. Only the card object CO with the highest probability candidate may be displayed as candidate image 72, but in the example in Figure 8, two candidate images 72 ("A" and "B") corresponding to the top two with the highest probability (this is just an example, and there may be an appropriate number) are displayed. In addition, a numerical value indicating the probability (hereinafter sometimes referred to as the matching probability value) is displayed at the top of each candidate image 72. For example, the number "56%" is displayed at the top of candidate image 72 corresponding to "A", and the number "35%" is displayed at the top of candidate image 72 corresponding to "B". These matching probability values are output by a trained artificial intelligence model (prediction program FP) for the prediction service based on the situation log SL.
[0091] The candidate sequence line 73 is a line that indicates the relationship between the target designation section 71 and each candidate image 72. Each candidate image 72 is arranged below the candidate sequence line 73, along that line 73. Therefore, the candidate sequence line 73 also functions as a reference for aligning each candidate image 72 horizontally.
[0092] (Method for calculating inferred information) Next, with reference to Figure 9, we will explain how to calculate the inference information (candidates and matching probability values) output by the trained artificial intelligence model for the inference service. Figure 9 is an explanatory diagram illustrating an example of a method by which the artificial intelligence model calculates inference information. The example in Figure 9 shows a case where inference information is provided on the battle screen 50. The artificial intelligence model for the inference service may also be trained using an appropriate training method, but the example in Figure 9 shows a case where it is generated using a neural network (deep learning) method. As shown in Figure 9, in this case, similar to the calculation of probability values, the inference information is calculated using an input layer, an intermediate layer, and an output layer. Specifically, in the input layer, information indicating the situation on the battle screen 50 is input to the trained artificial intelligence model for the inference service as input information (input values). Different information may be used as input information compared to the case of calculating probability values, but as an example, the same situation log SL (only partially shown in Figure 9) is used.
[0093] In the hidden layer, output values are calculated from input values in the input layer using a predetermined function formula with appropriate weighting (weight values). However, the weight values and function formulas used there differ from those of the artificial intelligence model used for the analysis service. The weight values are defined by the pre-trained data FD for inference (data generated by the above-mentioned training), and the function formula is configured to infer the contents of the face-down card object CO. In calculating the inference information, an appropriate number of hidden layers may be formed, but in the example in Figure 9, two hidden layers are formed. Similarly, an appropriate number of output values (nodes) may be provided in each hidden layer, but in the example in Figure 9, four output values are provided in each hidden layer.
[0094] In the output layer, a value indicating the probability of each card object CO being predicted is calculated from the output value of the final intermediate layer (second layer). The card object COs for which the probability is calculated may be all types that can be used in the card game (opponent's deck cards may not be considered), but as an example, it is limited to card object COs that the opponent has included in their deck cards. This limitation may be implemented as appropriate; for example, if a training dataset is prepared in advance that includes only deck cards of the opponent as actual samples, and a trained artificial intelligence model (prediction model unit 24) that has trained on that training dataset is provided, the limitation may be achieved by using that artificial intelligence model, but as an example, it can be achieved by excluding (filtering) anything other than deck cards of the opponent from the candidates after the prediction candidates have been calculated.
[0095] Furthermore, the rules are reflected in the card game as appropriate. For example, there may be rules that limit the number of cards that can be used, such as only being able to include up to three of a particular type of card object (CO) in a deck. In this case, if all three of that particular type of card object (CO) are already face up (for example, placed face up in field area 54), that particular type of card object (CO) is excluded from the inferred information (filtered).
[0096] Furthermore, rule changes may occur as needed at predetermined times (including regular periods such as once a year, and irregular periods such as temporary periods to respond to circumstances as they arise). For example, the number of usable cards of a particular type of card object CO that can be included in a deck may change, such as from three to two. Similarly, regulation changes, such as limit regulations (restrictions that make certain card object COs unusable), may be implemented as needed. For example, if there is a card object CO that is too powerful, it may lead to an imbalance in deck cards, as that card object CO will always be included. Alternatively, it may lead to a sense of unfairness in the outcome of matches. For this reason, if a particular card object CO is banned, that particular card object CO will also be excluded (filtered) from the calculation of its possibilities. Or, if the number of usable cards is changed to two, once both cards are revealed, that card object CO will be excluded from the calculation of its possibilities (conversely, if the limit is increased, exclusion from the calculation will be postponed until the limit is reached).
[0097] In card games, as mentioned above, various changes, such as changes in number or type, can occur in the usable card object COs (elements) in accordance with rule revisions, etc. These changes are then reflected in the speculative information. Specifically, the range in which values indicating possibilities are calculated (in other words, card object COs that correspond to candidates for hidden card object COs) is limited to card object COs that are usable under the current rules and that the opponent has included in their deck cards.
[0098] Furthermore, in the output layer, the values indicating possibility (the values of each candidate after being limited to usable candidates by filtering) are normalized using a normalization function (e.g., the Softmax function) so that the sum of the values of all selectable options (e.g., all card object COs included in the opponent's deck) equals 100%. This normalized value is then calculated as inferred information (matching probability value). As an example, using this method, candidate card object COs and matching probability values are calculated for each card object CO to be inferred (card object COs whose contents are kept secret) by a trained artificial intelligence model for the inference service. The top two in the example in Figure 8 (e.g.) among the calculated candidate card object COs are then provided to the user via the inferred information unit 70. In addition, if the information input to the input layer includes executable actions (options), even if the situation is the same, how they were used to arrive at the current situation (board state) is taken into consideration. This enables the calculation of highly accurate inferred information.
[0099] (Types of inferred information) Next, with reference to Figures 10 and 11, the types of inferential information that may be provided through the inferential service will be explained. While only one type of trained artificial intelligence model may be used for the inferential service, as an example, multiple types of artificial intelligence models (e.g., a first inferential program FP1 and a second inferential program FP2, etc.) may be provided. Each artificial intelligence model outputs inferential information based on different trained data FD for inferential purposes. Since different artificial intelligence models may reach the same conclusion, i.e., the same inferential information, multiple types of artificial intelligence models do not necessarily output different inferential information; however, in many cases, multiple types of inferential information are output. Figure 10 is an explanatory diagram illustrating an example of the types of inferential information output by multiple types of artificial intelligence models. Furthermore, various types of inferential information may be output as appropriate by each artificial intelligence model, but in the example in Figure 10, (1) recommended information for each period and (2) recommended information for each rank are shown. Additionally, appropriate recommendations (including all of them) from these multiple recommendations may be displayed, but in the example in Figure 10, only some of the recommendations selected by the user are displayed in both (1) and (2).
[0100] The period-specific recommendation information is output by a trained artificial intelligence model based on period-specific pre-trained inference data FDs generated from period-specific training datasets. In this case, multiple pre-trained inference data FDs are generated based on multiple training datasets (each containing actual samples from multiple periods). Period-specific inference information may be provided as appropriate, but as an example, it can be switched by user instruction (selection). User instructions may be executed as appropriate, but the example in Figure 10 shows that they are executed via the information switching unit 80.
[0101] On the other hand, the recommended information for each rank is the recommended information output by a trained artificial intelligence model based on pre-trained inference data FD for each rank, which is generated from training datasets for each rank. The card game has a function to rank players (information indicating the player's skill level) according to their performance, and the recommended information for each rank corresponds to the output result of an artificial intelligence model whose source is a training dataset containing performance samples of the same rank. In this case, multiple pre-trained inference data FDs are prepared, each corresponding to multiple training datasets (each containing performance samples of multiple ranks). The inference information for each rank may be provided as appropriate, but as an example, it is provided so that it can be switched by user instruction via the information switching unit 80, similar to the inference information for each period. In the example in Figure 10, the inference information unit 70 is shown schematically in an enlarged view when the battle screen 50 includes the information switching unit 80 in both (1) and (2).
[0102] As shown in Figures 10(1) and (2), the information switching unit 80 includes an information type unit 81, a first switching unit 82, and a second switching unit 83. The information type unit 81 is the part that displays the type of inferred information that is currently being displayed. Both the first switching unit 82 and the second switching unit 83 are parts that indicate the position where an instruction (for example, a touch operation) should be performed to switch the type of inferred information to be displayed. When a touch operation is performed on the first switching unit 82 or the second switching unit 83, the current display target is switched to the previous display target and the next display target, respectively.
[0103] Specifically, as shown in Figure 10(1), when inference information for each period is provided, the type of inference information is represented, for example, by the information "23.1-23.2" which indicates a period. The information "23.1-23.2" (indicating a one-month period from January to February 2023) indicates the period during which the actual samples included in the training dataset from which it was generated were collected. On the other hand, when a touch operation is performed on the first switching unit 82, the display target is switched to a period prior to the currently displayed period (for example, a one-month period from December 2022 to January 2023). In other words, the display target is switched to the inference information (candidate images 72 including the matching probability value) output by the artificial intelligence model generated by multiple training datasets, each containing the actual samples from the previous period. Similarly, when a touch operation is performed on the second switching unit 83, the display target is switched to a period later than the currently displayed period (for example, a one-month period from February to March 2023). In the example in Figure 10, the display range is divided into one-month intervals, but this is not limited to this and can be adjusted as appropriate.
[0104] Furthermore, as shown in (2) of Figure 10, when inference information is provided for each rank, the type of inference information is represented by the "second rank" information indicating the rank. The "second rank" information indicates the rank of the player from which the performance samples included in the training dataset from which the information was generated were collected. In this case, it means that the source is multiple training datasets, each containing performance samples only from players of rank 2. On the other hand, when a touch operation is performed on the first switching unit 82, the display target is switched to a rank lower than the currently displayed target (for example, rank 1). In other words, the display target is switched to the inference information (candidate image 72 including the matching probability value) output by the artificial intelligence model generated by multiple training datasets, each containing performance samples only from players of rank 1, which is one rank lower than the current rank 2. Similarly, when a touch operation is performed on the second switching unit 83, the display target is switched to a rank higher than the currently displayed target (for example, rank 3).
[0105] In the example in Figure 10, the display range is divided into one rank at a time, but it is not limited to this and may be any appropriate range (for example, two or more ranks), in which case information indicating the range may be added. Also, the initial display target (default display) may be set as appropriate, for example, the user's own rank or the opponent's rank. In this case, estimated information tailored to the user's or opponent's rank is displayed by default, which can improve usefulness. Similarly, the initial display for a period may be set as appropriate, for example, the most recent period or the most frequently used period.
[0106] Each artificial intelligence model can output various types of inferential information based on differences in algorithms, etc., but as mentioned above, in the example of Figure 10, multiple types of inferential information are output based on differences in the pre-trained data FD used for inference. In card games, there are sometimes trends in the types of card objects (COs) used (combinations of deck cards). When there are trends, an artificial intelligence model that reflects those trends is more likely to output more accurate inferential information. Furthermore, trends often occur on a period-by-period basis. Therefore, if inferential information for each period is provided, the trends can be reflected in the inferential information, and consequently, more accurate inferences can be achieved. Similarly, with card objects, there are often differences in the card objects (COs) included in the card deck and how they are used depending on the rank (player's skill level). Therefore, if inferential information for each rank is provided, the usage trends for each rank can be reflected in the inferential information, and consequently, more accurate inferences can be achieved.
[0107] Furthermore, the training datasets are not limited to the period-specific or rank-specific training datasets mentioned above. Multiple training datasets may be used, including performance data collected from various perspectives such as rules (regulations) and the number of usable cards. For example, a training dataset containing performance samples for all card objects (CO) included in the card game (not limited by period or rank) may be used. In other words, multiple pre-trained inference data (FD) may be data generated from various training datasets that provide appropriate thinking to the inference program.
[0108] Figure 11 is an explanatory diagram illustrating the training datasets used to realize period-specific and rank-specific inference information. Period-specific and rank-specific inference information may be prepared separately as independent inference information, for example, by using separate training datasets such as multiple training datasets for each period or multiple training datasets for each rank. Alternatively, inference information that specifically considers both may be prepared, such as providing period-specific inference information for each rank. The example in Figure 11 shows the types of training datasets when inference information that considers both is prepared.
[0109] As shown in Figure 11, when inferential information that takes both into account is provided, training datasets of a type corresponding to the number of periods × the number of ranks are prepared. Specifically, training datasets corresponding to the first rank (including performance samples of first-rank players) are prepared for each period, such as the "first training dataset" corresponding to the period "2023.1-2023.2" and the "second training dataset" corresponding to the period "2023.1-2023.2" (both training datasets include performance samples of players during the respective periods). In this case, for example, the artificial intelligence model generated using the "first training dataset" will output inferential information that takes into account (reflects) both the trends of first-rank players and the trends of deck cards that were popular from January to February 2023.
[0110] The same applies to the second and third ranks, where training datasets for each period, such as "third training dataset" to "sixth training dataset," are prepared. The artificial intelligence model based on these datasets then outputs inferential information that takes into account (reflects) the trends of each rank and each period. In the example in Figure 11, the first to third ranks are shown, but a card game may have an appropriate number of ranks, and training datasets corresponding to that number may be prepared. The same applies to the periods.
[0111] (Network system processing) Next, referring to Figures 12 to 14, we will explain the choice analysis process, display change process, and background prediction process as examples of the processing of the network system 1. The choice analysis process is a process that uses multiple types of artificial intelligence models to provide multiple types of superiority / inferiority information for each choice in a selection opportunity. The choice analysis process may be configured to provide multiple types of superiority / inferiority information by using multiple types of artificial intelligence models in parallel, but the example in Figure 12 shows a case where multiple types of artificial intelligence models are used serially to provide multiple types of superiority / inferiority information. Furthermore, the choice analysis process is realized through the cooperation of the analysis model unit 23 of the game server 2 and the model processing unit 35 of the user device 3, but in the example in Figure 12, the process mainly executed by the analysis model unit 23 is shown as the game server 2, and the process mainly executed by the model processing unit 35 is shown as the user device 3.
[0112] When a predetermined analysis time arrives (for example, the user's turn in the battle screen 50, or each phase), the model processing unit 35 starts the choice analysis process shown in Figure 12 and first requests the game server 2 to analyze each choice at the choice opportunity (step S101). This request may be executed as appropriate, for example, to the analysis model unit 23, and the analysis results of each analysis model unit 23, such as the first analysis model unit 23A and the second analysis model unit 23B, may be output in a predetermined order. As an example, it may be executed to either the first analysis model unit 23A or the second analysis model unit 23B in a predetermined order. Specifically, in step S101, the model processing unit 35 first requests the first analysis model unit 23A to analyze each choice. This request also includes a situation log SL that shows the situation at the time of the request.
[0113] When an analysis request is sent, the first analysis model unit 23A starts the choice analysis process shown in Figure 12 and first acquires the request (step S201). Next, the first analysis model unit 23A performs an analysis of each choice based on the situation log SL included in the acquired request (step S202). This analysis may be performed on only some of the choices in the choice opportunity, but as an example, it is performed on all choices. After performing the analysis, the first analysis model unit 23A outputs the analysis results (step S203) and sends them to the model processing unit 35 (step S204). Then, the first analysis model unit 23A terminates the choice analysis process after sending the results.
[0114] Meanwhile, when the model processing unit 35 receives the analysis results from the first analysis model unit 23A, it retrieves the analysis results and determines whether the number of types of acquired analysis results (in other words, artificial intelligence models) has reached a set number (for example, two types: offensive AI and defensive AI) (step S102). If the number of types of acquired analysis results has not reached the set number (step S102: No), the model processing unit 35 returns to step S101 and requests analysis from the next analysis model unit 23 (second analysis model unit 23B) in a predetermined order (step S101).
[0115] When an analysis request is sent, the second analysis model unit 23B starts the choice analysis process shown in Figure 12 and first acquires the request (step S201). Then, similar to the first analysis model unit 23A, it performs the analysis of each choice (step S202), outputs the analysis results (step S203), and sends them to the model processing unit 35 (step S204). After sending the results, the second analysis model unit 23B terminates the choice analysis process.
[0116] On the other hand, if the number of types of analysis results obtained reaches a set number (step S102: Yes), the model processing unit 35 extracts the analysis results to be displayed (superiority / inferiority information) from all the obtained analysis results (including the analysis results of multiple types of analysis model units 23) (step S103). The analysis results to be displayed can be set as appropriate, but as an example, it is set to the analysis results that show the top five probability values that span the analysis results of multiple types of analysis model units 23. For this reason, in step S103, the model processing unit 35 extracts the analysis results corresponding to the top five probability values from all the analysis results to be displayed. Next, the model processing unit 35 displays an advice display field 60 on the battle screen 50, each containing the five analysis results extracted in step S104 as an advice field 61. After this display, the model processing unit 35 terminates the current choice analysis process. As a result, the analysis service on the battle screen 50 is realized via the advice display field 60. More specifically, a battle screen 50 is realized that includes an advice display area 60 that provides the top five selected probability values for each option, based on information from multiple artificial intelligence models.
[0117] The display change process is a process for changing the display manner of each analysis result in the advice display field 60, such as the items to be displayed or the order in which they are displayed. The display manner of the advice display field 60 may be fixed, for example, by displaying the top 5 in order of probability value, but it may also be variable and change according to the user's specifications. When the user instructs the model processing unit 35 to change the display manner of the advice display field 60, the model processing unit 35 starts the display change process shown in Figure 13 and first determines the conditions specified by the user (step S301). The user may be allowed to specify any conditions, but as an example, it is limited to conditions provided in advance. The conditions provided in advance may include appropriate conditions, such as filter conditions and sort conditions.
[0118] Filter conditions are conditions for limiting the displayed analysis results to a portion of the results. Filter conditions may be various conditions that limit the displayed results to a suitable portion, but include, for example, limiting the results to the analysis results of a specific artificial intelligence model (or two or more analysis model units 23 if three or more analysis model units 23 are provided) based on user specification. Sorting conditions (rearrangement conditions) are conditions for rearranging the analysis results in a predetermined order specified by the user. For this reason, in step S301, the model processing unit 35 determines that a filter condition or a sort condition is a specified condition. In the case of a filter condition, the model processing unit 35 also determines that a specific artificial intelligence model designated as the filter target is a specified condition. On the other hand, in the case of a sort condition, the model processing unit 35 also determines that a predetermined sorting order designated as the sort condition is a specified condition. Both filter conditions and sort conditions may be specified, in which case both will be determined.
[0119] Next, the model processing unit 35 identifies the analysis results (superiority / inferiority information) corresponding to the specified conditions determined in step S301 from all the analysis results output by the analysis model unit 23 (all analysis results obtained in step S102 of the choice analysis process in Figure 12) (step S302). Specifically, the model processing unit 35 identifies the analysis results output by a specific artificial intelligence model (a specific type of analysis model unit 23, such as the first analysis model unit 23A or the second analysis model unit 23B) that was specified as a filter condition among all the analysis results. Alternatively, the model processing unit 35 identifies each analysis result corresponding to a predetermined order. The predetermined order can be specified as appropriate, for example, the order for each artificial intelligence model such as the second analysis model unit 23B (defensive AI) and the first analysis model unit 23A (offensive AI), the order in ascending order of probability value, the order in descending order of probability value within a predetermined range, or the order in descending order of the sum of probability values from multiple artificial intelligence models (which can be in descending order, descending order, etc., as appropriate).
[0120] Next, the model processing unit 35 changes the display of the advice display area 60 to display the analysis results of the target identified in step S302 according to the specified conditions (step S303). For example, if the analysis results of the first analysis model unit 23A (e.g., offensive AI) are specified as the filter condition, the display of the advice display area 60 is changed so that only the analysis results of the first analysis model unit 23A are displayed. If the sorting condition specifies the sorting order for each artificial intelligence model, the display of the advice display area 60 is changed so that the advice unit 61 is sorted according to each artificial intelligence model. The same applies when sorting orders such as sorting in ascending order of probability value, sorting in descending order of probability value within a predetermined range, or sorting in descending order of the sum of probability values from multiple artificial intelligence models are specified. In these cases, the number of items to be displayed may change as appropriate, but as an example, it is set to five, the same as before the change. Therefore, the model processing unit 35 changes the display of the advice display area 60 to display the advice unit 61 corresponding to the top five probability values of the first analysis model unit 23A, or the top five probability values in the predetermined sorting order. After this change, the model processing unit 35 terminates the display change process. As a result, the display of the advice display area 60 is changed to show the analysis results specified by the user in the specified order, etc.
[0121] The back-side prediction process is a process that uses a trained artificial intelligence model to provide prediction information about the opponent's face-down card object CO (information not shared with the user) on the battle screen 50. The back-side prediction process is realized through the cooperation of the prediction model unit 24 of the game server 2 and the model processing unit 35 of the user device 3. In the example in Figure 14, the processes mainly executed by the prediction model unit 24 are shown as the game server 2, and the processes mainly executed by the model processing unit 35 are shown as the user device 3.
[0122] The model processing unit 35 starts the face-down prediction process shown in Figure 14 when predetermined start conditions are met (for example, when a face-down card object CO is selected by the user via touch operation on the battle screen 50), or when a switch in the type of prediction information is instructed via the first switching unit 82 of the information switching unit 80, etc. First, it requests the game server 2 to predict the target face-down card object CO on the battle screen 50 (the card object CO selected by touch operation, or the card object CO selected before the switch instruction) (step S401). This request includes a status log SL indicating the situation at the time of the request. In addition, if a switch in the type of prediction information is instructed via the first switching unit 82 of the information switching unit 80, etc., the request also includes information on the type of prediction information specified in that instruction.
[0123] When a prediction request is sent, the prediction model unit 24 starts the back-side prediction process shown in Figure 14 and first acquires the request (step S501). Subsequently, the prediction model unit 24 performs prediction of the contents of the back-facing card object CO based on the situation log SL included in the acquired request (step S502). If a switch in the type of prediction information is instructed via the first switching unit 82 of the information switching unit 80, this prediction is performed by the prediction model unit 24 of the type corresponding to the instructed type, such as the first prediction model unit 24A and the second prediction model unit 24B. The prediction model unit 24 then outputs the prediction result of the specified artificial intelligence model, such as the first prediction model unit 24A (step S503). In this case, the prediction model unit 24 may output only the prediction results for the number that should be displayed as candidate images 72 (for example, the top two), but as an example, it outputs information including all candidates. Furthermore, the prediction model unit 24 may output prediction information as prediction results for all face-down card objects CP included in the battle screen 50 (in this case, if a target other than the one specified this time is newly specified as a prediction target thereafter, the user device 3 may extract and display the prediction information for the newly specified target from the prediction information already output), but as an example, only the prediction information for the face-down card objects CP specified this time will be output.
[0124] Next, the inference model unit 24 adjusts the inference results (step S504). The adjustment can be performed as appropriate, but as an example, it is performed to reflect rules such as limit regulations and the opponent's deck cards. For example, the inference model unit 24 adjusts the inference results to exclude card object COs that are prohibited from use and card object COs that the opponent has not included in their deck cards. This exclusion may also be performed by simply removing prohibited card object COs from the candidates output as inference results, but as an example, it is performed so that the match probability value is recalculated (adjusted) after the exclusion. After that, the inference model unit 24 sends the adjusted inference results to the model processing unit 35 as inference information (step S505). After this transmission, the inference model unit 24 terminates the back-side inference process. Note that if the processing is performed by an artificial intelligence model trained on a training dataset limited to the adjusted targets as described above (if the same result can be obtained without adjustment), or if adjustment is not necessary (including cases where adjustment is not performed at all), the process in step S504 may be omitted as appropriate.
[0125] Meanwhile, when the model processing unit 35 receives the prediction information from the prediction model unit 24, it acquires that prediction information (step S402). Next, the model processing unit 35 identifies the prediction information to be displayed from the acquired prediction information (step S403). For example, if the numbers that should be displayed as candidate images 72 in the prediction information unit 70 are the top two in terms of matching probability, the model processing unit 35 identifies the prediction information from the acquired prediction information that corresponds to the top two in terms of matching probability as the display target. Next, the model processing unit 35 displays the prediction information to be displayed, which was identified in step S404, on the battle screen 50 (step S404). Specifically, it displays the prediction information unit 70 containing the prediction information identified in step S404 on the battle screen 50. After this display, the model processing unit 35 terminates the back-side prediction process.
[0126] The prediction service on the battle screen 50 is realized via the prediction information unit 70 through the procedure shown in Figure 14. More specifically, the battle screen 50 is realized which includes a prediction information unit 70 that selects and provides the top two prediction information (for example, information including the content of candidate card object COs and the probability of matching) output from the artificial intelligence model as information to predict the content of face-down card object COs. Note that the display targets or order of the prediction information unit 70 may be changed as appropriate, in which case the display targets etc. may be changed by a procedure similar to the display change process in the example of Figure 13 (however, the procedure targets the prediction information and the prediction information unit 70 instead of the analysis results and advice display field 60).
[0127] As explained above, in this configuration, through the analysis service, multiple probability values (superiority information) are output for each choice on the battle screen 50, each indicating the probability of winning the battle (which may be information indicating various possibilities for progressing favorably within a predetermined range of the analysis target), by multiple types of trained artificial intelligence models (first analysis model unit 23A, second analysis model unit 23B). The information of the top five probability values among these is provided before the choice is made. Therefore, in order to win the battle, information on probability values (superiority information), that is, numerical information indicating the magnitude of the impact on winning the game, can be provided from various perspectives for each choice, such as which card object CO should be placed in which card placement area CP, or whether to end the phase.
[0128] In card games, players are given turns that consist of multiple phases, and each phase offers a choice opportunity. However, the end of a phase or the end of a turn is also included in the set of choices for each choice opportunity. When the change of turn functions as one of the choices, the impact of choices made at a choice opportunity on the game's progression tends to become more complex. If each turn contains multiple choice opportunities through multiple phases, and each of these choice opportunities can be terminated selectively, the complexity is likely to increase even further. Since each choice opportunity inherently requires a complex choice involving many options (including options derived from each option), even if turn instructions are not selective, a complex choice is still required. Furthermore, information on multiple probability values can be provided from various perspectives regarding such complex choices. Moreover, information on multiple probability values can be limited to certain parts or rearranged as appropriate through filter conditions, etc. Therefore, the convenience of accessing specific probability value information (option information) through filter conditions, etc., can be improved.
[0129] On the other hand, through the prediction service, information about the opponent's card object CO (elements) that is not shared with the user, such as the contents of card object CO that are hidden from the user by being placed face down, is predicted by a trained artificial intelligence model (prediction model unit 24), and the prediction result is provided as prediction information. Therefore, the prediction information can help predict card object CO that are hidden in incomplete information games.
[0130] Furthermore, in card games, players use deck cards selected by the user from their owned cards, out of all available card object COs (Card Objects). Therefore, card games are structured as competitive games where players have varying levels of assets. In this case, it is likely to be more difficult to deduce the hidden card object COs compared to when all elements are available. Similarly, in card games, the available card object COs may change depending on the time period, making it more difficult to deduce the hidden card object COs compared to when they are fixed (unchanging). Therefore, while experienced players may be able to deduce the contents of hidden card object COs based on experience, such as their orientation, this is generally difficult, especially for beginners. Even in such cases where deduction of hidden card object COs is difficult, inference information can assist in the deduction process. Therefore, inference information can help bridge the gap between experienced and novice players. Moreover, when changes in available card object COs are reflected in the inference information, the accuracy of the inference information can be improved compared to when similar changes are not reflected. Therefore, inference information can further help bridge the gap between experienced and novice players.
[0131] Furthermore, multiple pre-trained artificial intelligence models, tailored to different time periods and ranks, provide a wealth of inferential information. In card games, trends can sometimes be observed in the types (sets of elements) of card objects used. When trends exist, an artificial intelligence model that reflects those trends is more likely to output more accurate inferential information. Trends often occur periodically. Similarly, differences in the types of card object COs incorporated into the set of card objects used, and their usage methods, often vary depending on the rank (user's skill level). Therefore, by training the model with a training dataset containing performance data for predetermined periods, trends for each period can be reflected in the inferential information. Alternatively, by training the model with a training dataset containing performance data for each rank, usage trends for each rank can be reflected in the inferential information. These methods enable more accurate inferences. Moreover, the type of inferential information (target period and rank) can be switched by the user. This allows users to select types of inferential information that are appropriate for their opponent (whether they are a beginner, or which period's trends their deck cards represent, etc.) (in other words, the user's inferences about their opponent can be reflected in the inferential information), further improving the accuracy of the inferential information.
[0132] In the above configuration, the first analysis model unit 23A and the second analysis model unit 23B of the game server 2 (or the processes shown in Figure 12 that they each perform) function as multiple types of processing according to the present invention. On the other hand, the model processing unit 35 of the user device 3 functions as a means for obtaining superiority / inferiority and a means for providing superiority / inferiority according to the present invention by executing the procedure shown in Figure 12. Specifically, the model processing unit 35 functions as a means for obtaining superiority / inferiority by executing step S102 in Figure 12, and as a means for providing superiority / inferiority by executing step S104. Furthermore, the model processing unit 35 of the user device 3 functions as a filtering means or sorting means according to the present invention by executing the procedure shown in step S303 in Figure 13.
[0133] Furthermore, the inference model unit 24 of the game server 2 (or the process shown in Figure 14 that it performs) functions as a predetermined process of the present invention. On the other hand, the model processing unit 35 of the user device 3 functions as an information acquisition means and an information provision means of the present invention by executing the procedure shown in Figure 14. Specifically, the model processing unit 35 functions as an information acquisition means by executing step S402 in Figure 14, and as an information provision means by executing step S404.
[0134] The present invention is not limited to the embodiments described above and may be implemented in forms that have been appropriately modified or altered. Furthermore, the present invention may be implemented in forms obtained by appropriately combining various technical means included in the embodiments described above and the embodiments that have been modified below. In the embodiments described above, advantage / disadvantage information and prediction information are provided to the players of a card game provided as a video game. However, the present invention is not limited to this form. For example, advantage / disadvantage information and prediction information may be provided to the players of a game in real space, or to viewers watching the game. Specifically, for example, in a game in real space, advantage / disadvantage information or prediction information may be provided by adding it to video footage (viewer video) of the game, or it may be provided via audio to the real space in which the game is played (which may include not only players but also spectators).
[0135] In the above-described configuration, each analysis model unit 23 (a trained artificial intelligence model for analysis services), such as the first analysis model unit 23A, and each inference model unit 24 (a trained artificial intelligence model for inference services), such as the first inference model unit 24A, are given different ways of thinking depending on the differences in the trained data, such as the trained data AD for analysis or the trained data FD for inference. However, the present invention is not limited to this configuration. Each analysis model unit 23 and each inference model unit 24 may also be given different ways of thinking depending on, for example, the algorithm of the training program (including the reward in reinforcement learning such as Q-learning, i.e., a predetermined result) and the algorithm of the inference program.
[0136] In the above-described configuration, the superiority / inferiority information is provided via the advice display section 60. However, the present invention is not limited to this configuration. The superiority / inferiority information may be provided as appropriate. Figure 15 is an explanatory diagram illustrating an example of a modified configuration of the display of superiority / inferiority information. In the example of Figure 15, two modified configurations are shown by (1) the first modified configuration and (2) the second modified configuration. As shown in (1) of Figure 15, in the first modified configuration, the probability values of each analysis model section 23 are provided via the target card image 90, the first analysis result section 91, and the second analysis result section 92.
[0137] The target card image 90 is an image representing a candidate card object CO as an option. The target card image 90 may be the card object CO itself, or it may be a thumbnail-like image that substitutes for it. The first analysis result section 91 and the second analysis result section 92 are parts that indicate the type of analysis model section 23 (type of analysis result), such as the first analysis model section 23A (e.g., offensive AI) or the second analysis model section 23B (e.g., defensive AI). The first analysis result section 91 and the second analysis result section 92 can be formed as appropriate, but in the example in Figure 15, both are formed as rectangles surrounding the target card image 90 and are shown by a dashed line and a thick solid line, respectively.
[0138] Furthermore, the first analysis result unit 91 and the second analysis result unit 92 are provided with a numerical information unit 93 that displays probability values (analysis results) from each analysis model unit 23, such as "46.2". In addition, a summation information unit 94 may also be provided. For example, in the first modified example in Figure 15, three candidates are shown, and the middle candidate has a summation information unit 94 added to it. The summation information unit 94 is the part that displays the summation of probability values from multiple types of artificial intelligence models for a single candidate (choice). The target card image 90 may be displayed for all candidates, but in the example in Figure 15, it is limited to displaying only the top three or so probability values. Since probability values from multiple types of analysis model units 23 are output for all three candidates, the summation information unit 94 may be displayed for all of them, but in the example in Figure 15, it is limited to displaying only a part of them (the middle target card image 90). The display target of the summation information unit 94 can be set as appropriate, but as an example, it is set for the candidate whose summation value exceeds the highest probability value. For example, the central target card image 90 is provided with numerical information sections 93 showing "25.2" and "32.0" in the first analysis result section 91 and the second analysis result section 92, respectively, and the summation information section 94 shows "57.2" as the sum of these values. This summation value is higher than any of the probability values of the other target card images 90. In such cases, the summation information section 94 is provided.
[0139] Furthermore, as shown in Figure 15(2), in the second modified example, the probability values of each analysis model section 23 are provided via the target card image 90, the first gauge section 95, and the second gauge section 96. The target card image 90 is the same as in the first modified example. The first gauge section 95 and the second gauge section 96 are parts that indicate each analysis model section 23 (type of analysis result), such as the first analysis model section 23A, and are configured to visually indicate the magnitude of the probability values. The first gauge section 95 and the second gauge section 96 can be formed as appropriate, but in the example of Figure 15, they are both formed in the shape of a rod extending upward from a predetermined position according to the magnitude of the probability value, and are shown in white and black, respectively.
[0140] Furthermore, both the first gauge section 95 and the second gauge section 96 are provided with a detailed information section 97. The detailed information section 97 may contain various types of information, but in the example in Figure 15, it includes information on the type of analysis model section 23 (e.g., first analysis model section 23A (e.g., offensive AI) or second analysis model section 23B (e.g., defensive AI) ("offensive AI" or "defensive AI"), and information on probability values ("46.1" or "32.0"). Although omitted in the example in Figure 15, a summation information section 94 may be provided as appropriate to display total value information. Superiority / inferiority information may be provided as appropriate, and is not limited to the example in Figure 5; for example, it may be provided as shown in the modified example in Figure 15.
[0141] In the above-described configuration, the network system 1 includes the game server 2. However, the present invention is not limited to this configuration. For example, when an offline game is provided that is played without connecting to the network NT, the game server 2 may be omitted, and the user device 3 may function as the game system of the present invention on its own. In other words, various artificial intelligence models such as each analysis model unit 23 may be provided in the user device 3. For this reason, for example, in the example in Figure 12 or Figure 14, the processing (role) of the game server 2 may be executed by an artificial intelligence model (a logical device similar to the analysis model unit 23, etc.) provided in the user device 3, which is called by the model processing unit 35.
[0142] Alternatively, the game server 2 may perform all or part of the role (various processing, etc.) of the user device 3. For example, trained data such as trained data AD for analysis or trained data FD for inference may be stored in the game server 2, and programs for the artificial intelligence model, such as the analysis program AP or the inference program FP, may be provided in the user device 3. Furthermore, data necessary for realizing the present invention, such as parts of various trained data or parts of the programs for the artificial intelligence model, may be appropriately distributed and recorded in the game server 2 and the user device 3. The game system of the present invention may then be realized through the cooperation of the game server 2 and the user device 3. The same applies to the game program PG2 and game data GD. In these cases, a combination of the user device 3 and the game server 2 (for example, network system 1), or the game server 2 alone (including cases where it is composed of multiple server devices), may appropriately function as the game system of the present invention. Furthermore, programs and control methods implemented in devices such as network system 1, user device 3, or game server 2 may function as the game program and control method of the present invention.
[0143] Various aspects of the present invention derived from the embodiments and modifications described above are described below. In the following description, corresponding components shown in the accompanying drawings are indicated in parentheses to facilitate understanding of each aspect of the present invention, but this does not mean that the present invention is limited to the illustrated forms.
[0144] The computer program of the present invention is configured such that a computer (31) incorporated into a game system (3) that provides the user with superiority / inferiority information regarding the influence of each option in a game that includes an opportunity to select some of several options, before the selection of some of the options, functions as a superiority / inferiority acquisition means (35) that acquires multiple superiority / inferiority pieces of information for each of the at least one option using multiple types of processing (23A, 23B) that output the superiority / inferiority information for each of the at least one option, and a superiority / inferiority provision means (35) that provides the multiple superiority / inferiority pieces of information for each of the options before the selection of some of the options.
[0145] According to the present invention, multiple types of processing output multiple pieces of superiority / inferiority information for each option, and these are provided as superiority / inferiority information before some of the options are selected. Therefore, in a game that includes an opportunity to select some of multiple options, superiority / inferiority information can be provided for each option from various perspectives. Note that the game of the present invention may be a game in real space and does not necessarily have to be provided by a game system. Similarly, the multiple processing does not necessarily have to be provided by a game system. For example, all or appropriate parts of the multiple processing may be executed by a system different from the game system (and operated by a different operator).
[0146] Superiority / inferiority information may be provided in appropriate games that include opportunities for choice. For example, superiority / inferiority information may be provided in cooperative games that include opportunities for choice (including those played in teams), or in competitive games (including 1-on-1, 1-on-many (including cases where multiple users other than oneself are independent opponents, such as in Mahjong), and many-on-many). Similarly, superiority / inferiority information may be provided in games that are simply played by one person. In addition, various effects that each choice has on each game may be output as superiority / inferiority information. For example, in a game with a concept of victory, the effect on victory may be output as superiority / inferiority information. Alternatively, the effect on certain aspects of game progression, such as specific developments within the game (including specific missions and the acquisition of bonus points, etc.), may be output as superiority / inferiority information. Specifically, for example, in one embodiment of the computer program of the present invention, a competitive game is provided as the game, in which the user and the opponent compete, and the multiple types of processing may be configured to output information regarding the superiority / inferiority of the effect that each choice has on victory in the competitive game as the multiple types of superiority / inferiority information. In this case, information regarding the effect on victory in the competitive game can be provided from various perspectives for each choice.
[0147] Superiority information may be any information relating to superiority or inferiority. For example, it may be information with symbols that distinguish degrees of superiority or inferiority, such as A, B, and C, or it may be information that expresses superiority or inferiority subjectively, such as "seems good" or "seems bad." Alternatively, superiority information may be information that quantifies superiority or inferiority. When superiority or inferiority is quantified, the numerical value may be a number that indicates the possibility of progressing favorably (less likely to be at a disadvantage) within a predetermined range (including a predetermined number of choices, a predetermined time, or a predetermined development), or of course, a number that indicates the probability of ultimately winning in a match. For example, in an embodiment in which a competitive game is provided, the multiple types of processing may be configured to output numerical information that indicates the possibility of progressing favorably in the competitive game through the magnitude of the numerical value, all of which may be the multiple types of superiority information.
[0148] The competitive game may be structured as appropriate. For example, the competitive game may be structured so that the user and opponent make choices simultaneously (in parallel), or it may be structured so that turns containing opportunities to make choices are given alternately. Even when turns are given alternately, the choices of those outside the turn (which may function as the opportunity to make a choice in this invention) do not have to be completely excluded in each turn, for example, when the opponent is prompted to make a choice in conjunction with the user's choice. Also, when turns are given alternately, the change of turns may be performed automatically according to time, the number of instructions, etc., or it may be performed as one of the choices in each turn. When a turn changes due to a choice, that choice may function as the subject of superiority / inferiority information, or it may be excluded from the subject of superiority / inferiority information. Also, each turn may be structured as appropriate, for example, it may contain only one opportunity to make a choice, or it may contain multiple opportunities to make a choice. Multiple opportunities to make a choice may be appropriately distinguished through phases, etc., and the choices in each opportunity to make a choice may all be the same, or at least some (including all) of the choices may differ. Also, the end of each phase may be automatic or selective. If the end of each phase is selective, that selection may or may not be subject to priority information.
[0149] For example, in an embodiment where a competitive game is provided, the competitive game is configured such that turns including the choice opportunity are provided alternately to the user and the opponent, and the multiple choices may include a choice corresponding to a turn-end instruction to end the user's turn. Also in this embodiment, each turn includes multiple phases, each providing multiple choice opportunities, and each choice opportunity in each phase is configured to provide two or more choices as the multiple choices, each including two or more choices that differ between the choice opportunities in each phase, and each of the two or more choices in each choice opportunity may include a choice corresponding to a phase-end instruction to end each phase. When the alternation of turns functions as one of the choices, the impact of choices in choice opportunities on the progress tends to become more complex. If each turn includes multiple choice opportunities, and each of those choice opportunities can be selectively ended, it is likely to become even more complex. When choices corresponding to turn-end instructions, etc., are subject to superiority / inferiority information, it is possible to provide multiple pieces of superiority / inferiority information from various perspectives regarding complex choices.
[0150] A game that includes opportunities for choice may be a game played in the real world or an electronic game. Therefore, information on superiority and inferiority may be provided as appropriate. For example, in a game played in the real world, information on superiority and inferiority may be provided by adding it to video footage of the game (such as a display on a monitor or a wearable device), or it may be provided via audio in the real world where the game is played. Similarly, in an electronic game, information on superiority and inferiority may be displayed on the game screen for that game, or it may be provided via audio. Furthermore, an electronic game may be configured as appropriate, for example, to be provided via appropriate objects of a display device that displays a game screen including various objects. Specifically, in an embodiment in which a competitive game is provided, the competitive game may be provided as a game in which a player competes against an opponent according to predetermined rules via multiple objects (CO) of a display device (MO) that displays multiple objects (CO).
[0151] In games where a competitive game is provided through multiple objects, the multiple objects may be used as appropriate. For example, in the case of an electronic shogi or chess game, electronic pieces may be used as multiple objects. Alternatively, in the case of an electronic mahjong or card game, electronic mahjong tiles or cards may be used as multiple objects. Furthermore, in a game that includes various characters (including not only human-like beings but also various objects such as cars and animals), multiple characters may function as multiple objects. These objects may be used as appropriate according to the rules of the game. Similarly, various elements set according to the rules of the game may function as multiple choices. For example, each object (e.g., a character) may or may not function as a choice.
[0152] Specifically, for example, in an embodiment where a competitive game is provided, the competitive game is provided as a card game that uses multiple card objects (COs) as the multiple objects, and the card game is played by utilizing multiple card placement areas (CPs) where the card objects used in the game against the opponent are to be placed, a hand area (57) where the hand (CO5) as candidate card objects to be placed in each card placement area is to be placed, and a deck area (55) where the deck (CO6) as candidate card objects to be added to the hand is to be placed, and the multiple choices may include choices that correspond to at least one of the multiple card placement areas, the hand to be placed in each card placement area, and the addition from the deck to the hand. In this case, in a game that requires complex choices involving many choices (including choices that are further derived from each choice), multiple pieces of superiority and inferiority information can be provided from various perspectives.
[0153] Multiple types of processing may be configured as appropriate, as long as they can output multiple types of superiority / inferiority information. For example, each processing may be configured to output superiority / inferiority information according to a predetermined logic (including predetermined rules or calculation formulas). Alternatively, at least one of the multiple types of processing may be configured as an artificial intelligence model (so-called AI) generated to output superiority / inferiority information. Specifically, in one embodiment of the computer program of the present invention, at least one of the multiple types of processing may be configured as a trained artificial intelligence model generated to output superiority / inferiority information regarding a predetermined result in the game as superiority / inferiority information by having a pre-trained model machine learn a predetermined training dataset. Furthermore, in this embodiment, all of the multiple types of processing may be configured as the trained artificial intelligence model, and may be configured to output the multiple types of superiority / inferiority information based on differences in at least one of the predetermined result, the training dataset, and the algorithm of the pre-trained model for learning the training dataset.
[0154] Multiple pieces of superiority / inferiority information may be provided as appropriate. For example, superiority / inferiority information may be provided in an order predetermined for each option, or, if numerical, in descending order or in an order corresponding to the magnitude of the numerical value. Furthermore, the order in which each piece of superiority / inferiority information is provided may be fixed or variable. For example, multiple pieces of superiority / inferiority information may be provided in an order specified by the user. Alternatively, multiple pieces of superiority / inferiority information may be provided only in part according to predetermined filter conditions. The filter conditions may be fixed or variable. For example, the filter conditions may be specified by the user. Specifically, in one embodiment of the computer program of the present invention, the superiority / inferiority information providing means may be provided with at least one of the following: a filter means (35) that limits the multiple pieces of superiority / inferiority information to a part that satisfies predetermined filter conditions, and a sorting means (35) that rearranges the multiple pieces of superiority / inferiority information according to predetermined rearrangement conditions. In this case, multiple pieces of superiority / inferiority information are provided in part or rearranged as appropriate through filter conditions, etc. Therefore, the convenience of accessing specific superiority / inferiority information through filter conditions, etc., can be improved.
[0155] On the other hand, the present invention is a game system (3) that incorporates a computer (31) that provides the user with superiority / inferiority information regarding the superiority / inferiority of the influence each option has on the player in a game that includes an opportunity to select some of several options, before the player selects some of the options, wherein the computer functions as a superiority / inferiority acquisition means (35) that acquires a plurality of superiority / inferiority pieces of information for each of the at least one option by utilizing a plurality of types of processing that output the superiority / inferiority information for each of the at least one option, and a superiority / inferiority provision means (35) that provides the plurality of superiority / inferiority pieces of information for each of the options before the player selects some of the options.
[0156] Furthermore, the control method of the present invention causes a computer (31) incorporated into a game system (3) that provides the user with superiority / inferiority information regarding the influence of each option before the selection of some of the options, to perform the following steps: acquire multiple pieces of superiority / inferiority information for each of the at least one option using multiple types of processing that output the superiority / inferiority information for each of the at least one option; and provide the multiple pieces of superiority / inferiority information for each option before the selection of some of the options.
[0157] (Reference example) Non-patent document 1 discloses a technology that adds information such as "winning probability," "candidate moves," and "strategic moves" simulated by AI (artificial intelligence) for each move to a live broadcast screen of a shogi game taken from above. Games like shogi are a type of game called a perfect information game, in which all information about the pieces used by each player is disclosed. On the other hand, there are also types of games called imperfect information games. In these types of games, the content of at least one element of a set of elements (e.g., choices) used by other users (including computers) is not shared with a single user as the game progresses. For this reason, in imperfect information games, information about elements that are not shared (confidential) with users can be important.
[0158] Therefore, the reference example aims to provide a computer program or the like that can help infer elements that are hidden in an incomplete information game.
[0159] The computer program in the example is configured such that a computer (31) incorporated into a game system (3) that provides element information as information relating to at least one of the user-specific element groups (COs) in a game played by multiple users using user-specific element groups (COs) functions as an information acquisition means (35) that acquires inference information using a predetermined process (24) set to obtain inference information that infers the content of at least one element in an incomplete information game of the type in which the content of at least one of another user's element groups is not shared with the user, and an information providing means (35) that provides the inference information as element information.
[0160] According to the example, the content of elements not shared with a single user, that is, elements kept secret from a single user, is inferred through a predetermined process, and the inference result is provided as inferred information. Therefore, the inferred information can help infer elements that are kept secret in an incomplete information game. Note that the game in the example may be a game in real space and does not necessarily have to be provided by a game system.
[0161] Various elements included in an incomplete information game may be used as elements. For example, when an incomplete information game such as mahjong or a card game is provided, elements such as other users' hands or cards (cards in hand) may be used as elements. Alternatively, like the mahjong tiles in mahjong, each user's element set may be fixed and used by appropriately distributing elements from a set of elements (mahjong tiles) that are used in common by all users. The same applies to card games such as Seven Up or poker. Or, an incomplete information game may be played using a subset of elements arbitrarily specified by the user from an element set associated with each user. For example, in one embodiment of the computer program in the reference example, each user's element set may be formed by two or more elements selected by each user from a denominator element set associated with each user, which serves as the denominator of the element set.
[0162] An incomplete information game may be constructed as appropriate. For example, the available elements of an incomplete information game may be fixed, or they may be variable depending on appropriate conditions such as the time of year. Furthermore, changes in the available elements may occur as appropriate; for example, the number of available elements may change, or the types of available elements may change. In other words, depending on a predetermined time, elements may become unavailable, or new elements may be added. When the available elements change, this change may or may not be reflected in the inference information. Specifically, for example, in one embodiment of the computer program in the reference example, the incomplete information game may be provided such that the available elements change at a predetermined time. In this embodiment, the change in the available elements may include at least one of a change in number and a change in type. Similarly, in an embodiment in which the available elements change, the predetermined processing may be set to reflect the change in the available elements in the inference information. When the available elements change depending on the time of year, it is highly likely that inferring the hidden elements will be more difficult than when the available elements are fixed. Even when inferring such hidden elements is difficult, the inference information can help in that inference. Furthermore, when changes in available elements are reflected in the inferred information, the accuracy of the inferred information can be improved compared to when similar changes are not reflected.
[0163] An incomplete information game may be structured as any appropriate game. For example, it may be structured as a cooperative game (including when played in teams), or a competitive game (including 1v1, 1vmany (including cases where multiple users other than oneself are independent opponents, such as in Mahjong), and manyvmany). Similarly, it may be structured as a game played simply by one person. Furthermore, an incomplete information game may be a game in the real world or an electronic game. For this reason, inferential information may be provided as appropriate. For example, in a game in the real world, inferential information may be provided by adding it to video footage of the game (such as a display on a monitor or a wearable device), or it may be provided via audio in the real world where the game is played. Similarly, in an electronic game, inferential information may be displayed on the game screen for that game, or it may be provided via audio. Furthermore, an electronic game may be structured as appropriate, for example, it may be structured so that it is provided via an appropriate object of a display device that displays a game screen including various objects. Specifically, in one embodiment of the computer program of the reference example, the incomplete information game may be provided as a card game in which one user and another user compete according to predetermined rules via a plurality of card objects (COs) displayed on a display device (MO) that displays a plurality of card objects that function as elements for each user. In this embodiment, the display device may also display a game screen (50) including the plurality of card objects, and the game system may provide the card game as a video game via the game screen.
[0164] Furthermore, when a card game is provided as an incomplete information game, changes in usable elements (e.g., whether or not they can be used due to rule changes) may or may not be reflected in the inference information as described above, but if they are reflected in the inference information, the reflection may be implemented as appropriate. For example, unusable elements may be reflected in the inference information by simply removing them from the inference results after the inference results have been obtained. Alternatively, unusable elements may be reflected in the inference information by adjusting the inference results again after the unusable elements have been removed (e.g., reflecting the impact of unusability in other inferences). In any case, unusability may be reflected in such a way that the unusable card object is excluded from the inference information. Specifically, for example, in an embodiment in which a card game is provided as an incomplete information game, changes in usable card objects in the card game include changes that make certain card objects unusable due to rule changes, and the predetermined process may be set to reflect the unusability of a particular card object in the inference information by excluding that particular card object.
[0165] The card game may be played according to the rules as appropriate. For example, the card game may be played using fixed cards. Alternatively, the card game may be configured so that appropriate card objects are granted to users who meet certain granting conditions, and some of the card objects are owned by the users, and the game is played using the card objects owned by each user. All of the card objects owned by each user may be used in the game, or only some of them, such as card objects selected by each user, may be used in the game. Specifically, for example, in a configuration in which the card game is provided as an incomplete information game, the card game may be configured to grant card objects (COs) to users who meet certain granting conditions, and the denominator elements may be composed of the card objects (COs) granted to each user. In this case, compared to the case where the usable elements are fixed, the candidates for the hidden elements change with each play, making it likely that guessing them will be more difficult. And even when it is difficult to guess such hidden elements, guessing information can help in that guessing.
[0166] When a card game is provided as an incomplete information game, the card game may be configured to use multiple card objects (groups of elements) as appropriate. A suitable portion of these multiple card objects may be the subject of inferred information. For example, in an embodiment where the card game is provided as an incomplete information game, the card game is played using multiple card placement areas (CP) where card objects used in a match against other users are to be placed, a hand area (57) where candidate card objects (CO5) to be placed in each card placement area are to be placed, and a deck area (55) where candidate card objects (CO6) to be added to the hand are to be placed. The predetermined process may be configured so that the content of at least one card object from the multiple card placement areas, the hand, and the deck of the other user is obtained as inferred information.
[0167] The predetermined process may be configured as appropriate, as long as inferential information can be obtained. For example, each process may be configured to output inferential information according to a predetermined logic (including predetermined rules and calculation formulas, etc.). Alternatively, the predetermined process may be configured as an artificial intelligence model (so-called AI) generated to obtain inferential information. Furthermore, the predetermined process may be configured as a single process that obtains one type of inferential information, or as multiple processes that obtain multiple pieces of inferential information for a single confidential element. For example, in one embodiment of the computer program in the reference example, the predetermined process may be configured as a trained artificial intelligence model generated to obtain the inferential information by machine learning a predetermined training dataset. Furthermore, in this embodiment, the trained artificial intelligence model may include multiple trained artificial intelligence models (24A, 24B) each generated by machine learning multiple training datasets (FD) with different content. In card games, there may be trends in the types (groups of elements) of card objects used. When there are trends, an artificial intelligence model that reflects those trends is more likely to output more accurate inferential information. And trends often occur periodically. Similarly, differences are often observed in the types and usage of card objects incorporated into the set of card objects used according to the user's rank (skill level). Therefore, by training the model with a training dataset that includes performance data for each predetermined period, trends for each period can be reflected in the inferred information. Alternatively, by training the model with a training dataset that includes performance data for each rank, usage trends for each rank can be reflected in the inferred information. These methods enable more accurate inferences.
[0168] When a trained artificial intelligence model includes multiple trained artificial intelligence models, multiple pieces of inferential information obtained by the multiple trained artificial intelligence models may be provided, or only a portion of the multiple pieces of inferential information may be provided. When only a portion of the multiple pieces of inferential information is provided, the portion may be specified as appropriate, for example, according to the play situation, or according to evaluation over a certain period (such as accuracy rate or user evaluation). Alternatively, it may be specified based on user designation. For example, in an embodiment where a trained artificial intelligence model includes multiple trained artificial intelligence models, the inferential information includes multiple pieces of inferential information obtained using each of the multiple trained artificial intelligence models, and the information providing means may provide the user with inferential information corresponding to the trained artificial intelligence model selected by the user from among the multiple pieces of inferential information.
[0169] On the other hand, the reference example game system is a game system in which a computer is incorporated that provides element information as information relating to at least one of the user-specific element groups (COs) in a game played by multiple users, wherein the computer functions as an information acquisition means (35) that acquires the inference information using a predetermined process (24) set to obtain inference information that infers the content of at least one element in an incomplete information game of the type in which the content of at least one of another user's element groups is not shared with one user, and an information providing means (35) that provides the inference information as the element information.
[0170] Furthermore, the control method in the reference example involves causing a computer (31) incorporated into a game system (3) that provides element information as information relating to at least one of the user-specific element groups (COs) in a game played by multiple users using user-specific element groups, to perform the following steps: obtaining the inference information using a predetermined process (24) that is set up to obtain inference information for inferring the content of at least one element in an incomplete information game of the type in which the content of at least one of another user's element groups is not shared with one user; and providing the inference information as element information. [Explanation of Symbols]
[0171] 3. User device (game system) 31. Control Unit (Computer) 35 Model Processing Unit (Means for obtaining superiority / inferiority, means for providing superiority / inferiority, filtering means, sorting means, information acquisition means, information provision means) 50 Battle screen (game screen) 55 Main deck placement area (deck area) 57 Hand placement area (hand area) CO card object (object) CP card placement area (card placement area) MO display device CO5 Hand CO6 Deck PG2 Game Program (Computer Program)
Claims
1. A computer incorporated into a game system that provides the user with information regarding the relative importance of the influence of each option in a game that includes an opportunity to choose from some of several options, before the user makes a choice about at least one of the options, A means for obtaining a plurality of superiority information for each of the at least one of the choices, using a plurality of types of processing configured to output the superiority information for each of the at least one choice based on different thinking, and Prior to selecting some of the aforementioned options, a means for providing the aforementioned superiority / inferiority information in order for each option, A computer program configured to function as such.
2. The aforementioned game is a competitive game in which the user and an opponent compete against each other. The computer program according to claim 1, wherein the aforementioned multiple types of processing are configured to output information regarding the relative importance of the influence each option has on victory in the competitive game as the aforementioned multiple types of superiority information.
3. The computer program according to claim 2, wherein the aforementioned multiple types of processing are configured to output numerical information indicating the likelihood of gaining an advantage in the competitive game through the magnitude of the numerical values, all of which are referred to as the aforementioned multiple types of advantage / disadvantage information.
4. The competitive game is configured such that turns including the opportunity to make a choice are alternately provided to the user and the opponent. The computer program according to claim 2, wherein the plurality of options include an option corresponding to a turn end instruction for ending the user's turn.
5. Each turn includes multiple phases, each offering multiple choices. Each phase's selection opportunity is configured to provide two or more choices, each of which includes different choices between each phase's selection opportunities, as the aforementioned plurality of choices. The computer program according to claim 4, wherein each of the two or more options for each selection opportunity includes an option corresponding to a phase termination instruction that terminates each phase.
6. The computer program according to claim 4, wherein the competitive game is provided as a game in which the player competes against an opponent according to predetermined rules via the multiple objects of a display device that displays multiple objects.
7. The aforementioned competitive game is provided as a card game that uses multiple card objects as multiple objects, The card game is played using a plurality of card placement areas where card objects used in a match against an opponent are to be placed, a hand area where the hand of cards, which are candidates for card objects to be placed in each card placement area, is to be placed, and a deck area where the deck of cards, which are candidates for card objects to be added to the hand, is to be placed. The computer program according to claim 6, wherein the plurality of options include options corresponding to at least one of the plurality of card placement areas, the hand to be placed in each card placement area, and an additional card from the deck to the hand.
8. The computer program according to any one of claims 1 to 7, wherein at least one of the multiple types of processing is configured as a trained artificial intelligence model generated by having a pre-trained model machine-learn a predetermined training dataset, so as to output information on superiority or inferiority regarding predetermined results in the game as superiority or inferiority information.
9. The computer program according to claim 8, wherein each of the aforementioned multiple types of processing is configured as the trained artificial intelligence model, and is configured to output the multiple types of superiority / inferiority information based on at least one difference between the predetermined result, the training dataset, and the algorithm of the pre-trained model for training the training dataset.
10. The computer program according to any one of claims 1 to 7, wherein the means for providing priority rankings includes at least one of a filtering means for limiting the plurality of priority rankings to a portion that satisfies predetermined filtering conditions, and a sorting means for rearranging the plurality of priority rankings according to predetermined rearrangement conditions.
11. A game system that includes a computer that provides the user with information on the relative importance of the influence of each option in a game that includes an opportunity to choose from a selection of multiple options, before the selection of the selection of options, for at least one of the multiple options, The aforementioned computer, A means for obtaining a plurality of superiority information for each of the at least one of the choices, using a plurality of types of processing configured to output the superiority information for each of the at least one choice based on different thinking, and Prior to selecting some of the aforementioned options, a means for providing the aforementioned superiority / inferiority information in order for each option, A game system that functions as such.
12. A computer incorporated into a game system that provides the user with information on the relative importance of the influence of each option in a game that includes a choice opportunity to select some of several options, before the user makes a selection of some of the options. A procedure for obtaining multiple pieces of superiority information for each of the at least one of the options by using multiple types of processing configured to output superiority information for each of the at least one option based on different reasoning, A procedure to provide the aforementioned multiple pieces of superiority / inferiority information in order for each option before selecting some of the aforementioned options, A control method to execute something.