Analytical systems, analytical instruments, and analytical methods
The analysis system for turn-based sports like curling uses a trained model to simulate moves, calculate win rates, and determine optimal strategies, addressing the lack of advanced analysis in existing systems by providing real-time tactical insights.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- JAPAN SPORT COUNCIL
- Filing Date
- 2025-03-31
- Publication Date
- 2026-05-11
AI Technical Summary
Existing systems for analyzing turn-based sports like curling lack the capability to perform advanced analysis beyond simple shot percentage, such as calculating the expected win rate in a given play situation.
An analysis system that utilizes a trained model to analyze the win rate in a play phase, simulates multiple candidate moves, generates a score distribution, and determines the win rate for each move based on environmental and skill parameters, ultimately identifying the optimal move with the highest winning probability.
Enables advanced analysis of game states in turn-based sports, allowing for real-time calculation of expected win rates and optimal moves, enhancing tactical decision-making.
Smart Images

Figure 0007856345000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an analysis system, an analysis apparatus, and an analysis method. [Background technology]
[0002] Curling is an example of a turn-based sport in which players take turns playing against an opponent. Patent Document 1 discloses an information terminal, system, information processing program, and recording medium for supporting curling, which can input, analyze, and store play information for curling. [Prior art documents] [Patent Documents]
[0003] [Patent Document 1] Patent No. 6435119 [Overview of the project] [Problems that the invention aims to solve]
[0004] However, while the technology disclosed in Patent Document 1 also discloses the ability to calculate and display the shot percentage for a team and an individual in real time, it cannot perform advanced analysis beyond the shot percentage for a single shot, such as the expected win rate in a given play situation. Therefore, in turn-based sports such as curling, where players take turns playing against an opponent, there is a need for a more advanced method for analyzing play situations.
[0005] This invention has been made in view of the above circumstances, and one of its objectives is to provide an analysis system, analysis device, and analysis method that can perform a more advanced analysis of the game state in turn-based games in which players take turns playing against an opponent. [Means for solving the problem]
[0006] The present invention has been made to solve the above problems, and one aspect of the present invention is an analysis system for analyzing the play phase of a turn-based game in which players take turns playing with an opponent, comprising: an analysis unit that analyzes the win rate in the play phase of the turn to be analyzed using the play phase of the turn to be analyzed and a trained model that has been machine-trained using a dataset that includes data on multiple play phases and score data.
[0007] Furthermore, in one aspect of the present invention, the analysis system described above includes the analysis unit simulating multiple candidate moves in the play position of the turn to be analyzed, generating a score distribution summarizing the scores for each of the multiple candidate moves in the play position using the trained model, and determining the win rate for each of the multiple candidate moves in the play position of the turn to be analyzed based on the score distribution for each of the multiple candidate moves.
[0008] Furthermore, in one aspect of the present invention, the analysis unit in the above analysis system refers to a table relating the progress of play based on turns, the score difference with the opponent, and the win rate, and calculates the win rate for each of the multiple candidate moves in the play position of the turn being analyzed, based on the score difference with the opponent based on the score distribution of each of the multiple candidate moves simulated in the play position of the turn being analyzed.
[0009] Furthermore, in one aspect of the present invention, in the above analysis system, the analysis unit determines the optimal move to be the candidate move with the highest winning probability among multiple candidate moves in the play position of the turn being analyzed.
[0010] Furthermore, in one aspect of the present invention, the analysis unit simulates multiple candidate moves in the play phase of the turn being analyzed, based on environmental parameters and team or player skill parameters.
[0011] Furthermore, in one aspect of the present invention, in the analysis system described above, the play phase of the turn-based game is a curling play phase in which players take turns moving stones toward the house, and the candidate move is a candidate shot that moves the stone toward the house.
[0012] Furthermore, in one aspect of the present invention, in the analysis system described above, the play phase of the turn-based game is the play phase of curling, in which players take turns moving stones toward the house, and the optimal move is the optimal shot for moving the stone toward the house.
[0013] Furthermore, in one aspect of the present invention, in the above analysis system, the analysis unit determines the difficulty level of the optimal move based on the winning probability distribution of multiple candidate moves in the play position of the turn being analyzed.
[0014] Furthermore, one aspect of the present invention is an analysis device for analyzing the play phase of a turn-based game in which players take turns playing against an opponent, comprising: an analysis unit that analyzes the win rate in the play phase of the turn to be analyzed using the play phase of the turn to be analyzed and a trained model that has been machine-trained using a dataset containing data on multiple play phases and score data.
[0015] Furthermore, one aspect of the present invention is an analysis method in an analysis system for analyzing the play phase of a turn-based game in which players take turns playing against each other, comprising the steps of: an acquisition unit acquiring data on the play phase of a turn to be analyzed; and an analysis unit analyzing the win rate in the play phase of a turn to be analyzed using the play phase of the turn to be analyzed acquired by the acquisition unit, a trained model that has been machine-trained using a dataset that includes data on multiple play phases and score data. [Effects of the Invention]
[0016] According to the present invention, in turn-based games where players take turns playing against an opponent, it is possible to analyze the game state in a more advanced way.
Brief Description of the Drawings
[0017] [Figure 1] A diagram showing an overview of the tactical analysis system according to an embodiment. [Figure 2] A diagram showing a first example of the screen of the tactical analysis app according to an embodiment. [Figure 3] A diagram showing a second example of the screen of the tactical analysis app according to an embodiment. [Figure 4] A diagram showing a third example of the screen of the tactical analysis app according to an embodiment. [Figure 5] A diagram showing an example of generating a learning dataset for the tactical analysis model according to an embodiment. [Figure 6] A diagram showing an example of machine learning of the tactical analysis model according to an embodiment. [Figure 7] A diagram showing an example of creating a winning percentage table according to an embodiment. [Figure 8] A diagram showing an example of generating the optimal move in the play situation according to an embodiment. [Figure 9] A diagram showing an example of parameter setting in the physical simulator according to an embodiment. [Figure 10] An image diagram showing the variation of shots during simulation according to an embodiment. [Figure 11] A block diagram showing an example of the schematic configuration of the information processing terminal according to an embodiment. [Figure 12] A flowchart showing an example of the tactical analysis process according to an embodiment. [Figure 13] A diagram showing an example of a method for determining the difficulty level of the optimal move according to an embodiment. [Figure 14] A diagram showing an example of display when the tactical analysis result according to an embodiment is displayed on a video for projection. [Figure 15] An explanatory diagram showing an overview of the play situation acquisition process according to an embodiment. [Figure 16] A diagram showing an example of the flow in the learning stage according to an embodiment. [Figure 17] A block diagram showing an example of the configuration for executing the play situation acquisition process in the information processing terminal according to an embodiment. [Figure 18] A flowchart showing an example of the process for acquiring gameplay status according to the embodiment. [Figure 19] A diagram showing an example of occlusion according to the embodiment. [Figure 20] A diagram showing an example of a shot detection method according to the embodiment. [Figure 21] A diagram showing an example of shot information and stone placement according to the embodiment. [Figure 22] A diagram illustrating an example of a method for obtaining information regarding the rotation of a stone according to the embodiment. [Figure 23] A flowchart showing an example of the sweep information acquisition process according to the embodiment. [Figure 24] A schematic block diagram showing an example of the hardware configuration of an information processing terminal according to this embodiment. [Figure 25] An explanatory diagram illustrating the execution procedure of machine learning using a CNN according to the embodiment. [Figure 26] An explanatory diagram illustrating the machine learning training procedure using a CNN according to this embodiment. [Figure 27] A block diagram showing a modified configuration of the tactical analysis system according to the embodiment. [Modes for carrying out the invention]
[0018] One embodiment of the present invention will be described below with reference to the drawings. The analysis system according to this embodiment is a system for analyzing tactics and other aspects in turn-based games (so-called rally-type games) where players take turns playing against an opponent. In this embodiment, tactical analysis in the play phase of curling, where players take turns moving stones toward the house, will be explained as an example. Note that a stone is an example of an object used in turn-based games (so-called rally-type games).
[0019] First, with reference to Figure 1, an overview of a curling tactical analysis system, which is an example of an analysis system according to this embodiment, will be described. Figure 1 is a diagram showing an overview of the tactical analysis system according to this embodiment. The tactical analysis system SYS according to this embodiment can analyze the expected winning percentage in each play phase of curling (stone placement, etc.), analyze candidate shots and optimal shots, and display the analysis results. Candidate shots are candidates for shots that move the stone towards the house. Optimal shots are the optimal shots that move the stone towards the house.
[0020] Furthermore, the tactical analysis system SYS can automatically detect the play phase (stone placement, etc.) from the images (camera footage) captured by the camera during curling play, and perform the above analysis on that play phase (stone placement, etc.).
[0021] For example, as shown in Figure 1, the tactical analysis system SYS automatically acquires the curling game situation in real time without requiring manual input of stone placement, etc., by capturing images of the game situation using an information processing terminal 10 such as a smartphone or tablet computer equipped with a camera (imaging device) (Step S1).
[0022] For example, the information processing terminal 10 captures images of the play situation for each shot (1 turn) in each end of a curling match, detects the position and color of the stones from the captured images, and obtains the play situation by detecting the arrangement of stones of each color. When detecting the position and color of the stones from the captured images, for example, a pre-trained model that has been machine-learned specifically for stone detection is used.
[0023] Next, the information processing terminal 10 analyzes the detected play situation (play phase) in real time using AI (Artificial Intelligence) and generates tactics (Step S2). For example, the information processing terminal 10 performs play analysis based on the detected play situation (play phase) and calculates the expected score distribution, expected win rate, etc. for each play phase. The information processing terminal 10 also performs tactical analysis on the detected play situation (play phase) and generates the optimal move for the next shot.
[0024] The information processing terminal 10 then outputs analysis results in real time, such as the expected score distribution, expected winning percentage, candidate moves for the next shot, or the optimal move for each play situation (step S3). For example, the information processing terminal 10 may output the analysis results to be displayed on its built-in display unit, or it may output them to be displayed on the video feed of a television program broadcasting the play.
[0025] The configuration of the tactical analysis system SYS according to this embodiment is an example of a configuration in which the processing of the tactical analysis system SYS is executed by application software installed on an information processing terminal 10 such as a smartphone or tablet PC (personal computer), but is not limited to this. Either or both of the process of detecting a play position from an image captured by the information processing terminal 10 and acquiring the play situation (hereinafter referred to as the "play situation acquisition process") and the process of analyzing the expected score distribution, expected winning percentage, candidate moves or optimal moves in the play position from the acquired play situation (hereinafter referred to as the "tactical analysis process") may be executed by another information processing device that communicates with the information processing terminal 10. In addition, either or both of the play situation acquisition process and the tactical analysis process may be executed by a server (for example, a cloud server) connected via a communication network.
[0026] Here, the tactical analysis process can perform analysis of game situations based on game situations automatically acquired in real time by the game situation acquisition process. However, it is also possible to perform similar game analysis and tactical analysis by acquiring past game situations or virtual game situations. In other words, step S1 shown in Figure 1 is not necessary, and analysis and tactical generation may be performed in step S2 based on past game situations or virtual game situations entered by the user. The tactical analysis process will be explained in detail below, followed by a detailed explanation of the game situation acquisition process, which automatically acquires game situations in real time.
[0027] [Regarding tactical analysis processing] Tactical analysis processing is performed by application software (hereinafter referred to as the "tactical analysis app") installed on the information processing terminal 10. First, examples of the screen of this tactical analysis app are shown in Figures 2 to 4.
[0028] (Example screen of a tactical analysis app) Figure 2 shows a first example of the screen of the tactical analysis application according to this embodiment. Screen G1 in Figure 2 shows an example of a play data input screen. The area indicated by reference numeral 11 in screen G1 displays a "New" operation button used to create a new play situation, and an operation button to display a list of created and saved play situations (position list). By operating the "New" operation button, the user can create a new play situation and perform analysis. The user can also input data for created and saved play situations by displaying the position list.
[0029] The area indicated by symbol 12 displays buttons for returning all stones to their initial positions before throwing and for returning all stones to their positions after throwing. When the user operates the button for returning all stones to their positions after throwing, all stones are returned to the play area as if they had been thrown.
[0030] The area indicated by symbol 13 displays the target period (Season), the play schedule (Date), and event notations that identify the game state (Events). For example, the save date and time may be set as the event notation that identifies the game state (Events), but this may be editable by the user. The area indicated by symbol 14 displays operation buttons for the user to specify the number of play ends, the number of ends to display, and the hammer.
[0031] The area indicated by symbol 15 displays the game state (such as the placement of stones). The area indicated by symbol 16 allows for the display of the names of the first and second teams, switching between the first and second team's stone colors, and specifying the score status.
[0032] Figure 3 shows a second example of the screen of the tactical analysis application according to this embodiment. Screen G2 in Figure 3 shows an example of a screen that displays the expected win rate and expected score distribution as analysis results of the play situation. The area indicated by reference numeral 21 in screen G2 displays the name of the tournament and the date of the play shown on this screen. The area indicated by reference numeral 22 displays the names of the teams playing in the play shown on this screen, as well as the first and second teams, the score for each end, etc.
[0033] The area indicated by symbol 23 displays a graph showing the change in win rate as the game progresses. This win rate change graph can be switched between showing the results per end and the results per position.
[0034] The area indicated by symbol 24 displays the control panel. The user can perform operations on the control panel's operation buttons, such as advancing or reversing shots within an end, advancing or reversing an end, moving to the end or beginning of play, loading play data, and saving data. For example, by performing the operation to load play data, the user can also input play status (playing phase) data obtained through the play status acquisition process, which will be described in more detail later.
[0035] The area indicated by symbol 25 displays the play position (stone placement, etc.) for the end and shot selected on the control panel. The area indicated by symbol 26 displays the expected win percentage (Win%) for the displayed play position. There is also an operation button to switch the display of the Best Move on or off. In Figure 3, the display of the Best Move is set to off.
[0036] The area indicated by symbol 27 displays the number of ends in the displayed play phase, the names of the first and second teams, and the number of remaining stones for each team. The area indicated by symbol 28 displays a graph of the expected score distribution for the displayed play phase. When the position of the stone indicated by symbol 25 is moved, the expected score distribution graph indicated by symbol 28 is updated to reflect the expected score distribution in the new position. Therefore, the impact of stone placement on scoring can be quantitatively analyzed during post-match reviews and tactical training.
[0037] Figure 4 shows a third example of the screen of the tactical analysis application according to this embodiment. Screen G3 in Figure 4 is an example of the screen display when the display of the best move is turned on, compared to screen G2 in Figure 3, and the best move is displayed as an analysis result of the play situation. In Figure 4, the same parts as in Figure 3 are omitted from the explanation, and only the differences are explained.
[0038] The area indicated by symbol 35 on screen G3 displays the trajectory 35a of the optimal move, which was generated as a result of the analysis of the play position. The area indicated by symbol 36 displays the expected win rate (Win%) for the optimal move. Note that the user has set an on / off switch to turn the display of the best move on and off. In addition, the area indicated by symbol 38 displays a graph of the expected score distribution for the optimal move.
[0039] (Regarding tactical analysis models) Next, we will explain the tactical analysis model used when analyzing tactics such as expected score distribution, expected win rate, and optimal moves (candidate moves) from the game state.
[0040] Figure 5 shows an example of generating a training dataset for the tactical analysis model according to this embodiment. (A) shows an example of the position before the last throw of the end is made. For example, of the two stones, the stone indicated by the white circle is the yellow stone, and the stone indicated by the black circle is the red stone, and the generated position shows the stone arrangement where the yellow side is making the final move and is about to make the last throw.
[0041] In (B), for the final throw in the situation shown in (A), a physics simulator is used to generate numerous shots that numerically reproduce the movement and rotation of the stone, the effect of the ice, and the effect of the sweep, and the score of each shot is simulated. For example, the physics simulator generates a variety of shots by adding parameters related to the environment, such as the state of the ice, or parameters such as the skills of the team and players, and the score of each shot (+2, -1, etc.) is simulated based on the stone placement after the simulation of each shot.
[0042] (C) shows the expected score distribution, which is an aggregated distribution of simulation results (scores) obtained by simulating a large number of shots as shown in (B). In other words, by generating a large number of shots using a physical simulator as shown in (B) and simulating the scores, it is possible to create the expected score distribution for the stone arrangement shown in (A) (the expected score distribution when the yellow side makes the last throw). For example, a physical simulator can be used to generate about 1 million stone arrangements and their expected score distributions, and a training dataset (training data) can be created by pairing the generated stone arrangements with the expected score distributions. In other words, a trained model can be generated that can output the expected score distribution shown in (C) when the stone arrangement is as shown in (A).
[0043] For example, out of approximately 1 million possible stone placements, about 900,000 patterns could be used for training, and the remaining 100,000 patterns could be used to verify the accuracy of the training results.
[0044] The above is a simulation for when there is one throw remaining, but all shot patterns (candidate moves) for the remaining 2 to 15 throws will also be simulated using a physical simulator. The position (stone arrangement) after throwing the last 2 throws corresponds to the position (stone arrangement) before throwing the last throw shown in (A), so the expected score distribution for candidate moves in the remaining 2 throws is obtained as the expected score distribution output by the trained model for the remaining 1 throw shown above. This allows us to determine the win rate from the expected score distribution for all candidate moves in the remaining 2 throws. The candidate move with the highest win rate is designated as the optimal move in that position, and a training dataset (training data) is created by pairing the expected score distribution when the optimal move is thrown as the ground truth data, and a trained model is generated by performing machine learning.
[0045] When there are 3 throws remaining, a training dataset (training data) is created from the expected score distribution output by the trained model for when there are 2 throws remaining, and machine learning is performed to generate a trained model for when there are 3 throws remaining. By repeating this process, a training dataset (training data) can be created for all shot patterns (candidate moves) from 2 to 15 throws remaining. Alternatively, actual gameplay data may be used as training data instead of a physical simulator. Alternatively, training data combining data created with a physical simulator and actual gameplay data may be used.
[0046] Next, we will explain machine learning using the training dataset (supervised data) described in Figure 5, referring to Figure 6. Figure 6 shows an example of machine learning for the tactical analysis model according to this embodiment. First, we will explain an example of the position (stone placement) data (input data) to be input to the neural network. For machine learning, we use, for example, game tree search using the Expectimax method to generate a trained model that has been trained by a 5-layer neural network as a position evaluation function to evaluate the play position. As an example, we train on 1 million positions for each throw.
[0047] The input data for the neural network includes data related to the game state (stone arrangement), such as the position information (x and y coordinates) of stone No. 1 (the stone closest to the center of the house), the player who owns stone No. 1 (for example, a player on the red team), whether stone No. 1 is in the house, and whether stone No. 1 is in play. This data is entered in order from the stone closest to the center of the house, up to a maximum of stone No. 16. If any of stones No. 1 through No. 16 do not exist, invalid data will be set. Note that this input data is just an example, and any input data can be set.
[0048] Furthermore, the output data from the neural network represents the expected score distribution at the end of the game. For example, there are 17 outputs ranging from -8 to 8 points, such as the probability of getting -8 points, -7 points, ..., 0 points, 1 point, ..., 8 points.
[0049] Furthermore, machine learning can utilize deep learning methods such as Transformer, or reinforcement learning methods that do not require training data.
[0050] Next, we will explain an example of how to calculate the win rate from the game state and its expected score distribution. Here, we will explain a method of calculating the win rate based on the win / loss record of a large number of games played so far.
[0051] Figure 7 shows an example of creating a win rate table according to this embodiment. As shown in (A), a large amount of stats (score progression data) summarizing the scoring progress of a play are aggregated. For example, in the example play shown, in a play between Team A and Team B, Team A is winning 2-1 at the end of the second end. In a game with 10 ends, Team A is winning by 1 point with 8 ends remaining and will have the first to bat in the next end. By aggregating such a large amount of stats, for example, the win rate for a situation can be calculated by aggregating the stats for similar situations where a team is winning by 1 point with 8 ends remaining and will have the first to bat in the next end, and determining whether the team ultimately won or lost. The aggregated win rates for all situations are shown in (B) and (C).
[0052] (B) and (C) show examples of win percentage tables that summarize the win percentage for each situation, with the number of remaining ends on the horizontal axis and the score difference on the vertical axis. (B) shows the win percentage table when going second, and (C) shows the win percentage table when going first. For example, as mentioned above, Team A is winning by 1 point with 8 ends remaining and will go first in the next end. Referring to the win percentage table for going first in (C), the value at the circle indicated where the number of remaining ends on the horizontal axis is 8 and the score difference on the vertical axis is 1 (58.0%) is the win percentage. This win percentage is the expected win percentage in that situation.
[0053] When creating a win rate table, for example, data from several thousand games played by teams that consistently rank highly in major tournaments can be used for analysis. Alternatively, the win rate table can be created using a large amount of gameplay data from AI-controlled matches, rather than just actual gameplay.
[0054] Next, we will explain how to generate the optimal move in a given play position based on the analysis of the play position described above. Figure 8 shows an example of generating the optimal move in a play position according to this embodiment.
[0055] Here, we assume that the situation analyzed in (A) is one point behind with 8 ends remaining and the second player on the first shot. We will explain an example of analyzing what the optimal shot would be in this situation. For the situation analyzed in (A), 9600 patterns of shots (stone trajectories) are simulated and generated using a physical simulator, as shown in (B). These 9600 patterns of shots include, for example, 4800 patterns for each of the two directions of stone rotation: intern and outturn. Note that the number of shot patterns simulated is just an example and is not limited to this number.
[0056] Next, as shown in (C), the optimal move is the shot that yields the highest expected win rate among the simulated shots. For example, for each shot, the expected score distribution is generated using the position evaluation function (trained model) described above for the simulated position (stone arrangement), and the expected win rate for each shot is determined from the win rate table, thereby determining the expected win rate for each shot. The shot with the highest expected win rate among all shots is selected as the optimal move for the position under analysis shown in (A).
[0057] Next, we will explain the parameters used when simulating multiple shots in a physics simulator. Figure 9 shows an example of parameter settings in the physical simulator according to this embodiment. The parameters include environmental parameters such as the state of the ice, and parameters related to the skills of the team and players. Environmental parameters include, for example, parameters such as the curvature of the ice and the slipperiness of the ice. Skill parameters include parameters such as the shot accuracy of the lead, second, third, and fourth interns and outturners, which are set for each team. The parameter settings are set as decimal values with a baseline of "1," for example, but the settings shown in this figure are provisional and can be set to any value. The physical simulator can use these environmental and skill parameters to set the shot variability during simulation as a probability distribution.
[0058] Note that the parameters shown in Figure 9 are just examples, and you may set any parameters that affect the shot during simulation.
[0059] Figure 10 is an illustrative diagram of the variation in shots during simulation. In this diagram, the stones move from the top of the figure towards the house at the bottom, and each black circle represents the stopping position of the stone for each shot.
[0060] (A) shows the simulation result when the parameter setting for the slipperiness of the ice is large (i.e., when the stone slides easily on the ice). In this case, each shot can be simulated so that there is a large variation in the stopping position of the stone in the direction of its movement.
[0061] (B) shows the simulation result when the parameter setting for how easily the ice curves is large (i.e., when the stone curves easily on the ice). In this case, each shot can be simulated so that the variation in the stopping position of the stone is large in the horizontal direction when the direction of stone movement is considered to be the vertical direction.
[0062] (C) shows the simulation result when the setting value for the player's shot accuracy parameter is large (i.e., when the player's shot accuracy is high). In this case, each shot can be simulated so that the variation in the stopping position of the stones is small and they cluster close to the true value.
[0063] (D) shows the simulation result when the setting value for the player's shot accuracy parameter is small (i.e., when the player's shot accuracy is low). In this case, each shot can be simulated so that the variation in the stopping position of the stone is large compared to the true value.
[0064] [Regarding the configuration of information processing terminals that perform tactical analysis processing] Next, with reference to Figure 11, the configuration of the information processing terminal 10 that performs tactical analysis processing by running at least a tactical analysis application will be described.
[0065] Figure 11 is a block diagram showing an example of the schematic configuration of an information processing terminal 10 according to this embodiment. The information processing terminal 10 is a computer device such as a PC (personal computer) whose main components include a CPU (Central Processing Unit) and memory. For example, the information processing terminal 10 includes a communication unit 110, a display unit 120, a storage unit 130, an input / editing unit 140, an analysis unit 150, and a display control unit 160. Here, the "input / editing unit" 140, the analysis unit 150, and the display control unit 160 are functional configurations realized, for example, by the CPU of the information processing terminal 10 executing a tactical analysis application.
[0066] The communication unit 110 communicates with other devices, servers, etc., via a wireless or wired communication network. For example, the communication unit 110 is configured to include a wired LAN (Local Area Network) interface such as Ethernet® or a wireless LAN interface such as Wi-Fi®. The communication unit 11 may also be configured to include a USB (Universal Serial Bus) interface or a Bluetooth® interface.
[0067] The display unit 120 is a display that shows video, images, text, etc., and is composed of a liquid crystal display panel, an organic EL display panel, etc. For example, the display unit 120 displays the screen of a tactical analysis application as shown in Figures 2 to 4.
[0068] The memory unit 130 is a memory device that stores data necessary for tactical analysis processing. For example, the memory unit 130 includes a tournament / player data storage unit 131, a score progression data storage unit 132, a shot information storage unit 133, a situation evaluation function storage unit 134, a win rate table storage unit 135, and a parameter storage unit 136.
[0069] The tournament / player data storage unit 131 stores information such as the tournament, the opposing teams, and the players belonging to the teams for the play being analyzed.
[0070] The score progression data storage unit 132 stores the score progression data (see Figure 7(A)) used when creating the win rate table.
[0071] The shot information storage unit 133 stores information about the shots taken by each opposing team during their turn at each end of the game as play progresses. For example, the shot information storage unit 133 stores information about the shots taken up to the play position (stone placement) being analyzed. The shot information storage unit 133 also stores information about numerous shots generated by the physical simulator, as well as information about candidate moves and optimal moves.
[0072] The position evaluation function memory unit 134 stores a position evaluation function (trained model) generated by machine learning using a training dataset (training data) that pairs play positions (stone placements) with expected score distributions. This position evaluation function is a trained model that, when data about a position (stone placement) is input, outputs the expected score distribution for that position.
[0073] The win rate table storage unit 135 stores a win rate table (see Figures 7(B) and (C)) which aggregates the win rates for each play situation calculated based on the score progression data (see Figure 7(A)). The win rate table is a table that associates, for example, the number of remaining ends, which is the progress of play based on each team's turns, the score difference with the opponent, and the win rate.
[0074] The parameter storage unit 136 stores the setting values (see Figure 9) of the parameters (environmental parameters, skill-related parameters) used when simulating a shot using a physical simulator.
[0075] The input / editing unit 140 includes a play data reading unit 141, a play data input / editing unit 142, and a parameter input / editing unit 146.
[0076] The play data reading unit 141 reads data related to the gameplay situation. For example, the play data reading unit 141 reads data on the gameplay situation (stone placement) of the team being analyzed, which is automatically detected and acquired from the captured image by the gameplay situation acquisition process (details described later), in response to the user's operation on the play data input screen shown in Figure 2.
[0077] The play data input and editing unit 142 accepts play data input in response to user operations on the play data input screen shown in Figure 2, for example. For example, the play data input and editing unit 142 includes a tournament / player data input and editing unit 143, a score progression data input and editing unit 144, and a shot information input and editing unit 145.
[0078] The tournament / player data input / editing unit 143 accepts input of information such as the tournament, opposing teams, and players belonging to the teams for the play being analyzed, in response to user input. The tournament / player data input / editing unit 143 also accepts editing of the entered information in response to user input. Based on the entered or edited information, the tournament / player data input / editing unit 143 stores information such as the tournament, opposing teams, and players belonging to the teams for the play being analyzed in the tournament / player data storage unit 131.
[0079] The score progression data input / editing unit 144 accepts input of score progression data (see Figure 7(A)) used when creating a win rate table, in response to user operations. The score progression data input / editing unit 144 also accepts editing of the input information in response to user operations. Based on the input or edited information, the score progression data input / editing unit 144 stores the score progression data (see Figure 7(A)) in the score progression data storage unit 132.
[0080] The Shot Information Input / Editing Unit 145 accepts input of shot information for each opposing team's turn at each end of the game as play progresses, in response to user input. For example, the Shot Information Input / Editing Unit 145 accepts input of shot information leading up to the play phase (stone placement) being analyzed, in response to user input. The Shot Information Input / Editing Unit 145 also accepts editing of the input information, in response to user input. Based on the input or edited information, the Shot Information Input / Editing Unit 145 stores the shot information in the Shot Information section.
[0081] The parameter input / editing unit 146 accepts input of parameter settings (environmental parameters, skill-related parameters) (see Figure 9) for simulating shots using a physical simulator, in response to user input. The parameter input / editing unit 146 also accepts editing of the input information in response to user input. Based on the input or edited information, the parameter input / editing unit 146 stores the parameter settings (environmental parameters, skill-related parameters) for simulating shots using a physical simulator in the parameter storage unit 136.
[0082] The analysis unit 150 includes a simulator unit 151, a position evaluation function learning unit 152, an expected score distribution analysis unit 153, an expected win rate analysis unit 154, and an optimal shot generation unit 155.
[0083] The simulator unit 151 simulates multiple candidate moves (shots) in the play phase of the turn being analyzed using a physical simulator. For example, the simulator unit 151 simulates by applying the setting values of parameters (environment-related parameters, skill-related parameters) stored in the parameter storage unit 136.
[0084] The position evaluation function learning unit 152 generates a position evaluation function (trained model) for evaluating play positions by performing machine learning using a dataset that includes data on multiple play positions and score data. When data on a position (stone placement) is input to this position evaluation function (trained model), it outputs the expected score distribution for that position. The position evaluation function learning unit 152 stores the generated position evaluation function (trained model) in the position evaluation function storage unit 134.
[0085] The expected score distribution analysis unit 153 simulates multiple candidate moves in the play position (stone placement) of the turn being analyzed using the simulator unit 151 (physical simulator), and generates an expected score distribution by summarizing the scores for each of the multiple candidate moves in the play position using a position evaluation function (trained model).
[0086] The expected win rate analysis unit 154 calculates the expected win rate for each of the multiple candidate moves in the play position of the turn being analyzed, based on the expected score distribution of each of the multiple candidate moves generated by the expected score distribution analysis unit 153. For example, the expected win rate analysis unit 154 refers to the win rate table (see Figures 7(A) and (B)) and calculates the expected win rate for each of the multiple candidate moves in the play position of the turn being analyzed, based on the score difference with the opponent, which is based on the expected score distribution of each of the multiple candidate moves simulated in the play position of the turn being analyzed.
[0087] The optimal shot generation unit 155 generates the optimal move from among multiple candidate moves in the play position of the turn being analyzed, based on the expected win rate for each of the multiple candidate moves determined by the expected win rate analysis unit 154, and selecting the candidate move with the highest win rate.
[0088] The display control unit 160 controls the display of the UI (User Interface) in the tactical analysis application. For example, the display control unit 160 displays the input screen for play data (see Figure 2), the display screen showing the expected win rate and expected score distribution as analysis results of the play situation (see Figure 3), and the display screen showing the optimal move as analysis results of the play situation (see Figure 4) on the display unit 120.
[0089] Next, we will explain how the tactical analysis process works in the SYS tactical analysis system. Figure 12 is a flowchart showing an example of the tactical analysis process according to this embodiment.
[0090] (Step S101) The input / editing unit 140 acquires data on the play phase (stone placement) of the team being analyzed during their turn, for example, in response to the user's operation on the play data input screen shown in Figure 2. Then, it proceeds to step S103.
[0091] (Step S103) The analysis unit 150 simulates multiple candidate moves in the play position (stone placement) of the turn being analyzed using a physical simulator. Then, the process proceeds to step S105.
[0092] (Step S105) The analysis unit 150 uses a position evaluation function (a trained model) to generate an expected score distribution that summarizes the scores for each of the multiple candidate moves in a given play position. Then, the process proceeds to step S107.
[0093] (Step S107) The analysis unit 150 calculates the expected winning percentage for each of the candidate moves in the play position of the turn being analyzed, based on the expected score distribution of each of the candidate moves. For example, the analysis unit 150 refers to the winning percentage table (see Figures 7(A) and (B)) and calculates the expected winning percentage for each of the candidate moves in the play position of the turn being analyzed, based on the score difference with the opponent, which is based on the expected score distribution of each of the candidate moves simulated in the play position of the turn being analyzed. Then, the process proceeds to step S109.
[0094] (Step S109) The analysis unit 150 generates the optimal move from among the multiple candidate moves in the play position of the turn being analyzed, based on the expected winning percentage for each of the multiple candidate moves. Then, the process proceeds to step S111.
[0095] (Step S111) The display control unit 160 causes the display screen (see Figures 3 and 4) to display the expected winning percentage, expected score distribution, optimal move, etc., as an analysis result of the play situation, on the display unit 120.
[0096] Furthermore, the analysis unit 150 may determine the difficulty level of the optimal move generated by analyzing the play situation. Figure 13 is a diagram showing an example of a method for determining the difficulty level of the optimal move according to this embodiment. As shown in (A), variations (errors) occur in relation to the optimal move depending on environmental and skill parameters, so the position where the stone stops may shift from the position of the white circle of the optimal move to the position of the black circle. (B) and (C) are graphs sorted in descending order of expected win rate for candidate moves (80 candidate moves in this figure) that include the black circle. That is, (B) and (C) are graphs showing the distribution of the expected win rate for each candidate move. Here, a graph showing the distribution of the expected win rate of candidate moves in (B) (symbol R1) and a graph showing the distribution of the expected win rate of candidate moves in (C) (symbol R2) are shown.
[0097] The analysis unit 150, when selecting the optimal move, also considers the possibility that the stopping position of the stones will vary around the area. In the graphs shown in (B) and (C), the expected win rate is assumed to be 60% when the optimal move is at the position of the white circle. In the example shown in (B), there are about 10 candidate moves that exceed the expected win rate of 60% when deviating from the position of the white circle of the optimal move, and there are few good shots among the candidate moves. On the other hand, in the example shown in (C), there are more candidate moves that exceed the expected win rate of 60% when deviating from the position of the white circle of the optimal move compared to the example shown in (B), and there are many good shots among the candidate moves. In other words, in the example shown in (B), the expected win rate decreases even if the position is deviated from the position of the optimal move, so it can be determined that the optimal move is difficult. On the other hand, in the example shown in (C), the expected win rate is higher for about half of the total candidate moves, and the expected win rate can be maintained even if the position is deviated from the position of the optimal move to some extent, so it can be determined that the optimal move is easy. The display control unit 160 may display the difficulty level of the optimal move on the display unit 120 as a result of the analysis of the play position.
[0098] [Summary of the tactical analysis process according to this embodiment] Thus, the tactical analysis system SYS according to this embodiment is an example of an analysis system that analyzes the play phases of curling (an example of a turn-based sport) played alternately by players against an opponent. The tactical analysis system SYS includes an analysis unit 150 (an example of an analysis unit) that analyzes the win rate in the play phases of the target turn using acquired play phases of the target turn and a position evaluation function (an example of a trained model) that has been machine-learned using a dataset containing data on multiple play phases and score data. The tactical analysis system SYS also includes, for example, an input / editing unit 140 (an example of an acquisition unit) that acquires data on the play phases of the target turn.
[0099] This allows the SYS tactical analysis system to analyze the expected win rate in each phase of play in turn-based sports (so-called rally games) where players take turns playing against an opponent, such as curling, enabling more advanced analysis of gameplay. Furthermore, by using AI for tactical analysis, the SYS tactical analysis system has the potential to generate entirely new and innovative tactics.
[0100] For example, the analysis unit 150 simulates multiple candidate moves in the play phase of the turn being analyzed, generates an expected score distribution (an example of a score distribution) by summarizing the scores for each of the multiple candidate moves in the play phase using a position evaluation function (an example of a trained model), and calculates the expected winning percentage (an example of a winning percentage) for each of the multiple candidate moves in the play phase of the turn being analyzed based on the expected score distribution for each of the multiple candidate moves. Here, for example, candidate moves in curling are candidate shots that move the stone towards the house.
[0101] This allows the tactical analysis system SYS to analyze the expected win rate and expected score distribution for each play phase in turn-based sports (so-called rally games) where players take turns playing against an opponent, such as curling, for each of the multiple shot options, thereby enabling a more advanced analysis of play phases.
[0102] Specifically, for example, the analysis unit 150 refers to a win rate table (an example of a table) which associates the progress of play based on a turn (e.g., which end it is), the score difference with the opponent, and the win rate. Based on the score difference with the opponent, which is based on the expected score distribution of each of the multiple candidate moves simulated in the play phase of the turn being analyzed, the analysis unit calculates the expected win rate for each of the multiple candidate moves in the play phase of the turn being analyzed. Here, for example, in curling, candidate moves are candidate shots that move the stone towards the house.
[0103] This allows the tactical analysis system SYS to analyze the expected win rate and expected score distribution for each play phase in turn-based sports (so-called rally games) where players take turns playing against an opponent, such as curling, for each of the multiple shot options, thereby enabling a more advanced analysis of play phases.
[0104] Furthermore, the analysis unit 150 determines the optimal move from among multiple candidate moves in the play phase of the turn being analyzed, the one with the highest probability of winning. Here, the optimal move in curling is the best shot that moves the stone towards the house.
[0105] As a result, the tactical analysis system SYS can generate the optimal move (optimal shot) for each play phase in turn-based sports (so-called rally-type games) where players take turns playing against an opponent, such as curling. Therefore, the tactical analysis system SYS can present the optimal move (optimal shot) for each play phase to the player, enabling tactical support during play. The analysis unit 150 can also present the player with the second-highest probability candidate move as the second choice, the third-highest probability candidate move as the third choice, and so on.
[0106] Furthermore, when the analysis unit 150 simulates multiple candidate moves in the play phase of the turn being analyzed, it does so based on environmental parameters and parameters related to the skills of the team or players.
[0107] This allows the tactical analysis system SYS to analyze win rates and generate optimal moves (optimal shots) using environmental factors (e.g., ice conditions) and player skills as parameters, thus contributing to pre-game simulations and tactical planning. Furthermore, in curling, the tactical analysis system SYS can analyze win rates when players are substituted, enabling team building that takes player skills into account.
[0108] Furthermore, the analysis unit 150 may determine the difficulty level of the optimal move based on the win rate distribution of multiple candidate moves in the play position of the turn being analyzed (see Figure 13).
[0109] This allows the tactical analysis system SYS to present the optimal move (optimal shot) to the player according to the play situation, along with the difficulty level of that move, thus enabling tactical support during gameplay.
[0110] For example, the tactical analysis system SYS can display tactical analysis results such as win rates, expected score distribution, candidate moves, and the difficulty level of those candidate moves on the broadcast footage. Figure 14 shows an example of how the tactical analysis results according to this embodiment are displayed on a broadcast video. Screen TG is a display screen of a television, smartphone, tablet PC, etc., receiving and displaying live video of a curling tournament. In the illustrated example, the tactical analysis results of the live video of the play are overlaid on areas AG1 and AG2 of the broadcast video. Area AG1 displays candidate moves for the play in progress, the expected score of those candidates, the probability of winning those candidates, and the difficulty level of those candidates. Area AG2 displays the current winning percentage of each team as a percentage, indicated by the length of a bar, to make it easy to intuitively understand which team is in the lead.
[0111] Visualizing strategic options and their impact in this way makes it easier to understand the tactical depth of curling, leading to improved viewer comprehension. Adding data-driven analysis beyond simple match commentary provides a more interesting viewing experience and enhances the entertainment value of the broadcast. Showing expected score distributions and changes in winning percentages allows commentators to engage in deeper tactical discussions, improving the quality of commentary. Numerical supplementation of the strategies behind players' shot choices, showing whether a player's decision is theoretical or a risky one, enhances the drama of the match.
[0112] Furthermore, the information processing terminal 10 (an example of an analysis device) according to this embodiment analyzes the play phases of curling (an example of a turn-based sport) played alternately by players against an opponent. The information processing terminal 10 includes an analysis unit 150 (an example of an analysis unit) that analyzes the win rate in the play phases of the target turn using the acquired play phases of the target turn and a position evaluation function (an example of a trained model) that has been machine-learned using a dataset containing data on multiple play phases and score data. The information processing terminal 10 also includes, for example, an input / editing unit 140 (an example of an acquisition unit) that acquires data on the play phases of the target turn.
[0113] This allows the information processing terminal 10 to analyze the expected win rate in each phase of play in turn-based sports (so-called rally-type games) where players take turns playing against an opponent, such as curling, thereby enabling more advanced analysis of gameplay. Furthermore, by performing tactical analysis using AI, the information processing terminal 10 has the potential to generate new and unprecedented tactics.
[0114] Furthermore, the analysis method in the tactical analysis system SYS according to this embodiment is an analysis method in an analysis system that analyzes the play phase of curling (an example of a turn-based sport) played alternately with an opponent, and includes the steps of: an input / editing unit 140 (an example of an acquisition unit) provided in an information processing terminal 10 (an example of an analysis device) acquires data on the play phase of the turn to be analyzed; and an analysis unit 150 (an example of an analysis unit) provided in the information processing terminal 10 analyzes the win rate in the play phase of the turn to be analyzed using the play phase of the turn to be analyzed acquired by the input / editing unit 140, a position evaluation function (an example of a trained model) that has been machine-learned using a dataset containing data on multiple play phases and score data.
[0115] This allows the tactical analysis system SYS to analyze the expected win rate in each phase of play in turn-based sports (so-called rally games) where players take turns playing against an opponent, such as curling, thus enabling more advanced analysis of gameplay. Furthermore, the analysis method of the tactical analysis system SYS, by using AI for tactical analysis, has the potential to lead to the generation of entirely new and unprecedented tactics.
[0116] [Regarding the process of acquiring gameplay status] Next, we will explain in detail the play status acquisition process, which automatically acquires the play status (play phase) in real time. The tactical analysis system SYS according to this embodiment has the function of a play information acquisition system that executes the play status acquisition process. For example, the play status acquisition process is executed by application software installed on the information processing terminal 10 (hereinafter referred to as the "play status acquisition app").
[0117] The information processing terminal 10 detects the game state in real time from the captured image (camera video) taken by the camera and acquires the game status. If only stationary stone placements need to be photographed and detected, the captured image may be a still image, but to accurately detect the stone placements, a video (a series of images captured over time) is preferable. For example, the information processing terminal 10 uses its built-in camera (imaging unit) to track moving stones, detect the position (stone placement) of stationary stones in real time, and acquire time-series data of position coordinates.
[0118] Figure 15 is an explanatory diagram illustrating the overview of the play status acquisition process in the tactical analysis system SYS according to this embodiment. As shown in (A), the information processing terminal 10 uses its built-in camera (imaging unit 170) to image the area of the curling sheet where the curling play takes place in real space. (B) shows an example of an image (video). The extent to which the curling sheet is to be imaged can be appropriately determined according to the detection items, but at least the location and surrounding area of the house is necessary. Alternatively, almost the entire curling sheet may be to be imaged. For example, the information processing terminal 10 may be installed on a tripod or the like at a position higher than the curling sheet, such as in the audience seating area of the venue.
[0119] The imaging unit 170 is a monocular camera that acquires captured images, such as video. These captured images (video) consist of multiple frame images captured at a predetermined frame rate. Each frame image is associated with time information indicating when it was captured. The imaging unit 170 captures images of players, stones, etc., on the curling sheet.
[0120] As shown in (B), the information processing terminal 10 detects one or more stones, shots in each turn, sweeps, etc., from the captured image and acquires data related to the play situation (playing state). For example, the information processing terminal 10 acquires data on the playing state (stone placement, etc.) using a trained model (hereinafter referred to as the "playing state acquisition model") that has been trained by machine learning to acquire the playing state from the captured image.
[0121] (C) shows an example of play phase data detected and acquired by the information processing terminal 10 from the captured image. The information processing terminal 10 acquires, for example, stone placement, stone information, and sweep information for each shot as play phase data. For example, as stone placement data, the information processing terminal 10 acquires data for each stone for each shot, such as the position information (x coordinate, y coordinate) of stone No. 1, the player who owns stone No. 1 (for example, a player on the red team), whether stone No. 1 is in the house, and whether stone No. 1 is in play. The information processing terminal 10 also acquires data for each shot as stone information, such as stone trajectory, stone velocity, break point, curl point, curl width, direction of rotation, number of rotations, rotation speed, shot type, and the friction coefficient of the stone based on the stone's acceleration (kinetic friction coefficient between the stone and the ice). The information processing terminal 10 may also acquire data for each shot as sweep information, such as speed, position, and brush direction.
[0122] Furthermore, as shown in (D), the information processing terminal 10 acquires data on the scores of each team (red, yellow) at each end, and data on the scores of each team (red, yellow) at the end of play.
[0123] Next, referring to Figure 16, we will explain the overview of the learning phase process that generates the game state acquisition model (trained model). Figure 16 shows an example of the learning phase flow according to this embodiment. The learning phase is further divided into two stages: the creation of a training dataset and the generation of a trained model using the training dataset.
[0124] In the stage of creating the training dataset, multiple training images (raw data) are prepared (step S201), and the training dataset is created from these multiple training images (step S202). The multiple training images are raw data of images taken of the play phase to be analyzed (for example, the play phase of curling). For example, the training dataset is created by digitizing the feature information of the stones in the captured images (feature information such as stone, color, and handle).
[0125] In the stage of generating a trained model, machine learning is performed by inputting the generated training dataset into a training program (such as a neural network) (step S203), and a trained model (playing position acquisition model) for acquiring play positions (to detect stones, colors, handles, etc.) is generated and output (step S204).
[0126] Next, referring to Figures 17 and 18, we will explain the usage stage process for acquiring the game situation (game state) using the game state acquisition model (trained model), and the configuration for executing the process.
[0127] Figure 17 is a block diagram showing an example of a configuration of the information processing terminal 10 according to this embodiment that performs play status acquisition processing. The illustrated play status acquisition unit 180 is a functional configuration realized, for example, by the CPU of the information processing terminal 10 executing a play status acquisition application. The play status acquisition unit 180 includes a video input unit 181, a stone detection unit 182, a stone placement acquisition unit 183, a shot information acquisition unit 184, a score acquisition unit 185, and an output unit 186. In this play status acquisition unit 180, the video input unit 181 acquires captured images from the imaging unit 170, and the stone detection unit 182, stone placement acquisition unit 183, shot information acquisition unit 184, and score acquisition unit 185 detect the play situation (stone placement, etc.) from the captured images and acquire data on the play situation (play situation). The output unit 186 then generates data on the play situation (play situation) and outputs it to the input / editing unit 140 shown in Figure 11 as needed (for example, in response to user operation).
[0128] Furthermore, the play position acquisition model learning unit 190 generates a play position acquisition model (trained model) by performing the learning stage processing shown in Figure 16. The play position acquisition model learning unit 190 stores the generated play position acquisition model (trained model) in the play position acquisition model storage unit 137.
[0129] Here, following the flowchart shown in Figure 18, we will explain the process of detecting the play situation (such as stone placement) from the captured image using each part of the play situation acquisition unit 180 and acquiring data on the play situation (play situation). Figure 18 is a flowchart of an example of the play situation acquisition process that acquires the play situation (play situation) according to this embodiment.
[0130] (Step S301) When the video input unit 181 acquires captured images (video) from the imaging unit 170 of the play phase to be analyzed (for example, the play phase of curling), it proceeds to step S303.
[0131] (Step S303) The video input unit 181 converts the pixel coordinates of the captured image into absolute coordinates on the ice sheet using information about the ice sheet of known size (e.g., the pattern of the house). For example, the video input unit 181 automatically detects the pattern of the house reflected in the captured image using image processing or deep learning, and converts the pixel coordinates of the captured image into absolute coordinates on the ice sheet by associating it with a sheet model of the ice sheet created in advance. For example, the hill climbing method or the Levenberg-Marquardt method can be used. Then, the process proceeds to step S305.
[0132] (Step S305) The stone detection unit 182 uses the play position acquisition model generated by the play position acquisition model learning unit 190 and stored in the play position acquisition model storage unit 137 to detect stones, stone colors, and handles from the captured image. Then, the process proceeds to step S307.
[0133] (Step S307) The stone detection unit 182 tracks the detected stone (identical stone) using the stone's color information and movement information (change in position coordinates). This is because, with only the play situation acquisition model, stones may not be detected due to overlapping (occlusion) of players and stones, or motion blur.
[0134] Figure 19 shows examples of occlusion. In example (A), a player standing in the house in front of the stone (e.g., the skip) overlaps with the stone in the captured image, which can prevent the stone from being detected correctly. In example (B), the sweeping player and brush overlap with the stone, which can prevent the stone from being detected correctly.
[0135] For example, the stone detection unit 182 tracks the same stone by associating a series of detection results between frames of the captured image (video) based on similarity using IoU (Intersection over Union) and color information as features obtained by the Kalman Filter. Then, it proceeds to step S309 in Figure 18.
[0136] (Step S309) The shot information acquisition unit 184 detects a shot based on whether or not it has passed through a designated area on the ice sheet. Figure 20 shows an example of a shot detection method. As shown in Figure 20(A), a stone that has passed through a designated line on the ice sheet is detected as a shot. Then, the process proceeds to step S311 in Figure 18.
[0137] (Step S311) When the shot information acquisition unit 184 detects a shot in step S309, it acquires shot information for each shot. Shot information includes stone information such as stone velocity and acceleration. The stone placement acquisition unit 183, as shown in Figure 20(B), determines whether the stone has stopped based on the stone velocity acquired by the shot information acquisition unit 184, and acquires the stone placement at the time of stopping.
[0138] Figure 21 shows an example of shot information and stone placement obtained in step S311. The shot information obtained in step S311 includes, for example, the stone's trajectory, stone's velocity, stone's acceleration, stone's friction, stone's stopping position (stone placement), curl point, curl width, curl length, stone release velocity, and lap time between Hog lines.
[0139] Furthermore, the shot information acquisition unit 184 acquires information for each shot, including the direction of rotation, number of rotations, and rotation speed of the stone. Figure 22 shows an example of how information regarding the rotation of the stone is acquired. For example, the stone detection unit 182 detects the handle of the stone from the time it starts moving until it stops for each shot, and detects the orientation (angle) of the detected handle. The shot information acquisition unit 184 calculates and acquires the direction of rotation, number of rotations, and rotation speed of the stone from the orientation (angle) of the stone's handle and the time difference (Time) information detected by the stone detection unit 182. Then, the process proceeds to step S313 in Figure 18.
[0140] (Step S313) The scoring unit 185 acquires and records the score at the end of each end (after 16 shots). Then, proceed to step S315.
[0141] (Step S315) The scoring unit 185 calculates and records the score at the end of the play from the scores of each end.
[0142] Furthermore, as explained with reference to Figure 15, the play status acquisition unit 180 may acquire sweep information (speed, position, brush direction, etc.) from the captured image of the play phase. Conventionally, information regarding sweeping has not been recorded. For example, even when judging the state of the ice, the Hog-Hog time and stopping position change depending on whether or not a sweep has been performed, its intensity, and its type. Therefore, by visualizing the areas swept throughout the game, it can be used as a basis for judging ice reading, and it is also expected to be used in tactical planning, physical fitness evaluation, and training. For example, the effect of sweeping can be clarified by verifying the relationship between stone trajectory and sweeping. In addition, by evaluating the sweeping speed, it is possible to quantify the changes in sweeping performance throughout the game and use it as a basis for judging physical fitness.
[0143] Furthermore, since the play status acquisition unit 180 can acquire sweep information from captured images in real time, it can also be used when displaying tactical analysis results on broadcast footage, as shown in Figure 14, and the effects described in (1) to (5) below can be obtained.
[0144] (1) To promote understanding among viewers. • Visualize the effects of the sweep. By displaying in real time how the stone's trajectory changes due to the sweep, viewers can intuitively understand the effect of the sweep. • Numerical display of sweep intensity. By displaying the sweep speed using different colors, it's possible to show how much sweeping was performed at each stage of the process.
[0145] (2) To improve the entertainment value of the broadcast. • Display the heat map of the sweep. By using color to indicate areas that have been swept during a match, it's possible to visually communicate "how much the ice in this area has been affected."
[0146] (3) Strengthen tactical commentary. • Compare the sweep characteristics of each player. The system displays each player's sweep speed during gameplay, enabling commentary such as, "This player is able to maintain a high level of sweeping ability even in the late stages of the game."
[0147] (4) Evaluation and analysis of the players' physical condition. • Visualize the trend of sweep performance. The speed and number of sweeps during play can be graphed and used as an indicator of a player's physical exhaustion and endurance.
[0148] (5) Support for strategy and ice reading. • Associate the swept areas with changes in the ice. It provides real-time information such as, "This area has been swept many times throughout the match, so the number of ice pebbles is decreasing," allowing for a deeper understanding of the underlying strategies. • Shot prediction using sweep data. It explains information such as, "In this part of the sheet, the stone is more likely to move than usual due to the sweep," helping to predict the outcome of the next shot.
[0149] In this way, the information processing terminal 10 acquires and analyzes sweep information in real time and utilizes it in the broadcast, which is expected to have various effects such as improving viewer understanding, enhancing entertainment value, strengthening tactical commentary, evaluating players' physical condition, and supporting strategies.
[0150] Figure 23 is a flowchart showing an example of the process for acquiring sweep information when obtaining the play status (play phase) according to this embodiment.
[0151] (Step S401) The play situation acquisition unit 180 acquires captured images (videos) of the play phase to be analyzed (for example, the play phase of curling) from the imaging unit 170, and then proceeds to step S403.
[0152] (Step S403) The play status acquisition unit 180 uses information about the ice sheet of known size (e.g., the pattern of the house) to convert the pixel coordinates of the captured image into absolute coordinates on the ice sheet. For example, the play status acquisition unit 180 automatically detects the pattern of the house reflected in the captured image using image processing or deep learning, and converts the pixel coordinates of the captured image into absolute coordinates on the ice sheet by associating it with a sheet model of the ice sheet created in advance. For example, the hill climbing method or the Levenberg-Marquardt method can be used. Then, the process proceeds to step S405.
[0153] (Step S405) The play status acquisition unit 180 detects the pad (brush head, which is the tip of the brush) from the captured image. That is, the play status acquisition unit 180 detects from the captured image the points where the brush used by the player to sweep is in contact with the surface of the ice. For example, using captured images (video) of a curling game (from the start to the stop of the stone's movement for each shot) as training images, the sweep detection model (trained model) which has been trained using a training dataset created by digitizing the pad (brush head) in the captured images (video) is used to detect the orientation and position of the pad (brush head) from the captured images (video) of the game being analyzed. Then, the process proceeds to step S407.
[0154] (Step S407) The play status acquisition unit 180 tracks the detected pad (brush head) and proceeds to step S409.
[0155] (Step S409) The play status acquisition unit 180 detects frames in the captured image (video) in which sweeping is taking place. This is because there are scenes in which the player is simply holding the brush and not actually sweeping. Then, the process proceeds to step S411.
[0156] (Step S411) The play status acquisition unit 180 determines the sweep type (clean, curve, hurry, yes, off, etc.) based on the orientation and behavior of the pad (brush head) in the frame in which the sweep is being performed. Then, the process proceeds to step S413.
[0157] (Step S413) The play status acquisition unit 180 analyzes the sweep area, sweep speed, etc., swept by each shot during play, and proceeds to step S415.
[0158] (Step S415) The display control unit 160 displays the analysis results on the display unit 120 for visualization. For example, the display control unit 160 may integrate and visualize the stone tracking results and the analysis results of the sweep region and sweep speed name.
[0159] [Hardware configuration of information processing terminals] Here, we will explain the hardware configuration of the information processing terminal 10. Figure 24 is a schematic block diagram showing an example of the hardware configuration of the information processing terminal 10 according to this embodiment. In this figure, the same reference numerals are used for components corresponding to Figures 11 and 17.
[0160] The information processing terminal 10 includes, as a hardware configuration, a communication unit 110, a CPU 111, RAM (Random Access Memory) 112, ROM (Read Only Memory) 113, an input unit 114, a display unit 120, a storage unit 130, and an imaging unit 170.
[0161] As described above, the communication unit 110 communicates with other devices, servers, etc., via a wireless or wired communication network.
[0162] The CPU 111 is a processor that performs various processes by executing programs stored in the ROM 113 or the storage unit 130. Furthermore, the system may also be equipped with a GPU (Graphics Processing Unit) or other processor.
[0163] RAM112 is used as a reading area for programs executed by CPU111, or as a work area for writing data used for processing by said programs.
[0164] ROM113 consists of electrically rewritable non-volatile memory, such as EEPROM (Electrically Erasable Programmable Read Only Memory) or flash ROM. For example, ROM113 stores at least a portion of the system program and programs that execute various processes.
[0165] The input unit 114 includes, for example, input devices such as a keyboard, touchpad, touch panel, and microphone.
[0166] As mentioned above, the display unit 120 is composed of a liquid crystal display, an organic EL display, and the like.
[0167] The storage unit 130 is comprised of an HDD (Hard Disk Drive), an SSD (Solid State Drive), and the like. For example, the storage unit 130 may store at least a portion of a system program, a program that executes various processes, and so on. The storage unit 130 may also store various types of data and the aforementioned electronic certificates.
[0168] Although not shown in the diagram, the information processing terminal 10 also includes input devices such as a microphone and a speaker, as well as output devices.
[0169] [Summary of the play information acquisition process according to this embodiment] As described above, the tactical analysis system SYS (an example of a play information acquisition system) according to this embodiment is a system that acquires data indicating the play phase of curling (an example of a turn-based sport) in which players take turns moving stones (an example of objects) used in the game with their opponents. The tactical analysis system SYS includes a video input unit 181 (an example of an image acquisition unit) that acquires captured images of the area of the ice sheet (an example of a predetermined area) in which the game is being played in real space. The tactical analysis system SYS also includes a stone detection unit 182 (an example of an object detection unit) that detects one or more stones (an example of objects) present in the area of the ice sheet from the captured images acquired by the video input unit 181, acquires the position coordinates (pixel coordinates) of the detected stones on the image and attribute information (e.g., color information) of the stones for each turn, and converts the acquired pixel coordinates of the stones into position coordinates (absolute coordinates) in real space. The tactical analysis system SYS also includes an output unit 186 that generates and outputs data indicating the play phase by associating the absolute coordinates and attribute information (e.g., color information) of the stones detected for each turn.
[0170] This allows the SYS tactical analysis system to automatically and easily detect the play phase from captured images (camera footage) in curling (an example of a turn-based sport), where players take turns playing against their opponents. Therefore, the SYS tactical analysis system can easily input the play phase and perform tactical analysis. Furthermore, because the SYS tactical analysis system can automatically and easily detect the game phase, it enables the automation of score recording, which is expected to reduce the burden on referees and operators and improve the accuracy of game data.
[0171] For example, the stone detection unit 182 detects stones from the captured image (video) in real time as the video input unit 181 acquires the captured image (video), and acquires the pixel coordinates and attribute information (e.g., color information) of the detected stones in real time for each turn. It also acquires time-series data of absolute coordinates by converting the acquired pixel coordinates of the stones to absolute coordinates in real time. The output unit 186 generates and outputs data in real time that associates the time-series data of the absolute coordinates of the stones detected from the captured image (video) with their attribute information (e.g., color information) as data indicating the state of play.
[0172] As a result, the SYS tactical analysis system can automatically detect the play phase in real time from captured images (camera footage) in curling (an example of a turn-based sport) where players take turns playing against their opponents. Therefore, the SYS tactical analysis system can perform real-time tactical analysis of the play phase.
[0173] Furthermore, the stone detection unit 182 uses a play position acquisition model (an example of a trained model) that has been machine-trained using a dataset containing the captured image and the characteristic information of the stones to detect stones from the captured image, and acquires the pixel coordinates of the detected stones and the attribute information of the stones (for example, color information) for each turn.
[0174] This allows the tactical analysis system SYS to accurately detect stones from captured images (camera footage) using AI. Furthermore, because the tactical analysis system SYS can accurately detect stones, it can automatically measure the distance of stones within the house, assisting the referee in situations requiring subtle judgments. In addition, because it can accurately acquire the speed of the stones, it can automatically determine if a stone crosses the Hog line upon release, enabling real-time detection of violations.
[0175] Furthermore, the turn-based gameplay is similar to that of curling, where players take turns moving stones toward the house. The stone detection unit 182 detects stones from the captured image and acquires the position coordinates of the stone when it stops at the end of each turn, associating them with the stone's color information.
[0176] This allows the tactical analysis system SYS to obtain the stone placement and color for each turn from the captured images, enabling it to automatically detect the stone placement for each team in each turn.
[0177] Furthermore, the stone detection unit 182 tracks the stone based on the color information and changes in position coordinates of the stone detected from the captured image.
[0178] This allows the tactical analysis system SYS to track and detect the same stone even if it is not detected due to overlapping (occlusion) of players or stones, or motion blur. As a result, the tactical analysis system SYS can obtain natural stone trajectories.
[0179] Furthermore, the stone detection unit 182 detects the stone's handle from the captured image and detects rotational information, including at least the direction of rotation of the stone, based on the change in the orientation of the handle over time.
[0180] This allows the tactical analysis system SYS to automatically detect the rotation direction, number of rotations, and rotation speed of each stone in each shot.
[0181] Furthermore, the stone detection unit 182 converts the pixel coordinates of the stones into absolute coordinates using the patterns of a known house in the real space where curling is being played.
[0182] This allows the tactical analysis system SYS to easily convert the pixel coordinates of stones detected from captured images into absolute coordinates in real space. Therefore, the tactical analysis system SYS can acquire stone information accurately in real time and use it for broadcast footage. For example, the tactical analysis system SYS can draw the trajectory of stones in real time, making it visually easy to understand. In addition, the tactical analysis system SYS can change the color of the trajectory according to the speed of the stone's movement (for example, red when moving at high speed and blue when slowing down), allowing viewers to intuitively grasp the speed of the stone and how it changes. The tactical analysis system SYS can also change the color of the stone's trajectory and effects according to the number of rotations and direction. Furthermore, the tactical analysis system SYS can clearly represent "the timing when the stone begins to curve" and "the effect of maintaining speed by sweeping." As a result, it leads to an improved understanding of the game situation by viewers.
[0183] Furthermore, the SYS tactical analysis system can be used for training because it can acquire stone information accurately in real time. For example, by utilizing real-time feedback, the SYS tactical analysis system can be expected to improve shot accuracy and reproducibility. In addition, the SYS tactical analysis system provides immediate feedback on speed and spin rate, allowing players to immediately check the difference between their intended throw and the actual result and make appropriate corrections. Moreover, by comparing current shots with past successful shots, the SYS tactical analysis system enables the acquisition of consistent form and throwing technique. In addition, it can identify variations in spin rate and release, leading to more consistent throwing.
[0184] Furthermore, the stone detection unit 182 acquires information about the sweep, including at least the sweep position, by detecting the tip of the brush used by the curling player for sweeping from the captured image.
[0185] This allows the tactical analysis system SYS to automatically detect and visualize the areas swept during curling play, providing valuable information for ice reading decisions, as well as potential applications in tactical planning, physical fitness assessment, and training.
[0186] Furthermore, the information processing terminal 10 (an example of a play information acquisition device) according to this embodiment acquires data indicating the play phase of curling (an example of a turn-based sport) in which players take turns moving stones (an example of objects) used in the game. The information processing terminal 10 includes a video input unit 181 (an example of an image acquisition unit) that acquires captured images of the area of the ice sheet (an example of a predetermined area) in which the game is being played in real space. The information processing terminal 10 also includes a stone detection unit 182 (an example of an object detection unit) that detects one or more stones (an example of objects) present in the area of the ice sheet from the captured images acquired by the video input unit 181, acquires the position coordinates (pixel coordinates) of the detected stones on the image and attribute information (e.g., color information) of the stones for each turn, and converts the acquired pixel coordinates of the stones into position coordinates (absolute coordinates) in real space. The information processing terminal 10 also includes an output unit 186 that generates and outputs data indicating the play phase by associating the absolute coordinates and attribute information (e.g., color information) of the stones detected for each turn.
[0187] As a result, the information processing terminal 10 can automatically and easily detect the play phase from captured images (camera footage) in curling (an example of a turn-based sport) where players take turns playing against their opponents. Therefore, the information processing terminal 10 can easily input the play phase and perform tactical analysis.
[0188] Furthermore, the play information acquisition method in the tactical analysis system SYS (an example of a play information acquisition system) according to this embodiment is a play information acquisition method in a system that acquires data indicating the play phase of curling (an example of a turn-based sport) in which players take turns moving stones (an example of objects) used in the game with their opponents, and includes the steps of: an information processing terminal 10 (an example of a play information acquisition device) having a video input unit 181 (an example of an image acquisition unit) acquire an image of the area of the ice sheet (an example of a predetermined area) in which the game is being played in real space; and a stone detection unit 182 of the information processing terminal 10 (An example of an object detection unit) includes the steps of: detecting one or more stones (an example of an object) that exist within the range of the ice sheet from the captured image acquired by the video input unit 181, acquiring the position coordinates (pixel coordinates) of the detected stones on the image and attribute information (e.g., color information) of the stones for each turn, and converting the acquired pixel coordinates of the stones into position coordinates (absolute coordinates) in real space; and the output unit 186 of the information processing terminal 10 generates and outputs data indicating the play situation by associating the absolute coordinates and attribute information (e.g., color information) of the stones detected for each turn.
[0189] As a result, the tactical analysis system SYS can automatically and easily detect the play phase from captured images (camera footage) in curling (an example of a turn-based sport) where players take turns playing against their opponents. Therefore, the tactical analysis system SYS can easily input the play phase and perform tactical analysis.
[0190] [Specific examples of learning programs] Here, for reference, we will explain a specific example of a training program. As mentioned above, for the neural network (training program) used for machine learning, for example, a convolutional neural network (CNN) or, more specifically, Mask R-CNN may be used. Below, we will explain a convolutional neural network (CNN) as an example of machine learning.
[0191] [About CNN] Figure 25 is an explanatory diagram illustrating the procedure for executing machine learning using a CNN. In this diagram, a CNN consists of I+1 layers L0 to LI. Layer L0 is the input layer, layers L1 to L(I-1) are the hidden layers, and layer LI is also called the output layer. I is determined by the structure of the CNN, for example, I=3 or 4, and in the case of a 5-layer neural network, I=4.
[0192] In a CNN, the input image is input to the input layer L0. The input image is represented by a pixel matrix D11, where the vertical and horizontal positions of the input image are the positions in the matrix. Each element of the pixel matrix D11 is input as the subpixel value of the pixel corresponding to the matrix position: the R (red), G (green), and B (blue) subpixel values. The first intermediate layer, L1, is a layer where convolution (also called filtering) and pooling operations are performed.
[0193] (Convolution process) This section describes an example of convolution in the intermediate layer L1. Convolution is a process that applies a filter to the original image to output a feature map. Specifically, the input pixel values are divided into R subpixel matrices D121, B subpixel matrices D122, and G subpixel matrices D123, respectively. For each subpixel matrix D121, D122, and D123 (each also referred to as "subpixel matrix D12"), the first pixel value is calculated by multiplying each element of the s x t submatrix by the elements of the s x t convolution matrix CM1 (also called the kernel) and adding them together. The second pixel value is calculated by multiplying each first pixel value calculated in each subpixel matrix D12 by a weight coefficient and adding them together. The second pixel value is set as a matrix element corresponding to the position of the submatrix in each element of the convolutional image matrix D131. By shifting the position of the submatrix in each subpixel matrix D12 element by element (subpixel), the second pixel value at each position is calculated, and all matrix elements of the convolutional image matrix D131 are calculated.
[0194] For example, Figure 25 shows an example of a 3x3 convolution matrix CM1. The first pixel value D1311 is calculated for each sub-pixel matrix D12, specifically for the 3x3 submatrices from the 2nd to 4th rows and the 2nd to 4th columns. A weight coefficient is calculated and added to the first pixel value of each sub-pixel matrix D121, D122, and D123 to obtain the second pixel value as the matrix element in the 2nd row and 2nd column of the convolution image matrix D131. Similarly, the second pixel value for the matrix element in the 3rd row and 2nd column of the convolution image matrix D131 is calculated from the submatrices from the 3rd to 5th rows and the 2nd to 4th columns. Similarly, the convolutional image matrix D132, ... is calculated using other weighting coefficients or other convolution matrices.
[0195] (pooling process) This section describes an example of pooling in the intermediate layer L1. Pooling is a process that reduces the size of an image while preserving its features. Specifically, for each region PM of the convolutional image matrix D131 (u rows, v columns), representative values for the matrix elements within that region are calculated. These representative values are, for example, the maximum values. These representative values are then set as matrix elements corresponding to the region's position in each element of the CNN image matrix D141. By shifting the regions in the convolutional image matrix D131 for each region PM, representative values are calculated at each position, and all matrix elements of the convolutional image matrix D131 are calculated.
[0196] For example, Figure 25 shows an example of a 2x2 region PM, where the maximum value of the second pixel within the 2x2 region (rows 3-4 and columns 3-4 of the convolutional image matrix D131) is calculated as a representative value. This representative value is set as the matrix element in the second row and second column of the CNN image matrix D141. Similarly, the representative value for the matrix element in the third row and second column of the CNN image matrix D141 is calculated from the submatrix (rows 5-6 and columns 2-4). Also similarly, the CNN image matrices D142, ... are calculated from the convolutional image matrices D132, ....
[0197] Each matrix element (N elements) of the CNN image matrices D141, D142, ··· is arranged in a predetermined order to generate a vector x. In FIG. 25, the element x n (n = 1, 2, 3, ··· N) is represented by N nodes.
[0198] The intermediate layer Li represents the intermediate layer of the i-th intermediate layer (i = 2 to I - 1). From the nodes of the i-th intermediate layer, the vector u (i) is input as the value into the function f(u (i) ), and the vector z (i) is output. The vector u (i) is a vector obtained by multiplying the vector z (i-1) output from the nodes of the (i - 1)-th intermediate layer by the weight matrix W (i) from the left and adding the vector b (i) . The function f(u (i) ) is an activation function, and the vector b (i) is a bias. Also, the vector u (0) is the vector x.
[0199] The nodes of the output layer L4 are z (I-1) , and its output is M y m (m = 1, 2, ··· M). That is, from the output layer LI of the CNN, a vector y having y m as an element (=(y1, y2, y3, ··· y M )) is output. As described above, when pixel values of an input image are input as input variables, the CNN outputs a vector y as an output variable. The vector y represents an evaluation value.
[0200] FIG. 26 is an explanatory diagram for explaining the learning procedure of machine learning by the CNN. This figure is an explanatory diagram when the CNN in FIG. 26 performs machine learning. Regarding the pixel values of the images in the learning dataset, let the vector x output from the first intermediate layer be the vector X. Let the vector representing the definite class of the learning dataset be the vector Y.
[0201] Weight matrix W (i) Initial values are set for this. When an input image is input to the input layer, and as a result a vector X is input to the second hidden layer, a vector y(X) corresponding to vector X is output from the output layer. The error E between vector y(X) and vector Y is calculated using a loss function. Gradient ΔE of the i-th layer i The output z from each layer i and error signal δ i The error signal δ is calculated using [this method]. i The error signal δ i-1 It is calculated using [this method]. Note that this process of transmitting error signals from the output layer to the input layer is also called backpropagation. Weight matrix W (i) The gradient ΔE i It is updated based on this. Similarly, in the first intermediate layer, the convolution matrix CM or weight coefficients are also updated.
[0202] (Setting up the trained model) The learning unit (for example, the position evaluation function learning unit 152, the play position acquisition model learning unit 190, etc.) sets the number of layers, the number of nodes in each layer, the node connection method between layers, the activation function, the error function, and the gradient descent algorithm, the pooling region, the kernel, the weight coefficients, and the weight matrix for the CNN. The learning unit sets the number of layers to, for example, 3 layers (I=3). The learning unit sets the number of nodes in each layer (also called "number of nodes") to 800 for the number of elements in vector x (number of nodes N), 500 for the second hidden layer (i=2), and 10 for the output layer (i=3). However, the present invention is not limited to this, and the total number of layers may be 4 or more, and different values may be set for the number of nodes.
[0203] The learning unit sets up 20 5x5 convolution matrices CM and 2x2 regions PM. However, the present invention is not limited to this, and a different number of matrices or a different number of convolution matrices CM may be set up. Also, a different number of matrices or regions PM may be set up. The learning unit may perform more convolution or pooling operations.
[0204] The learning unit sets the connections of each layer of the neural network to fully connected. However, the present invention is not limited to this, and the connections of some or all layers may be set to non-fully connected. The learning unit sets the activation function of all layers to a sigmoid function. However, the present invention is not limited to this, and the activation function of each layer may be other activation functions such as a step function, linear combination, soft sine, soft plus, ramp function, truncated power function, polynomial, absolute value, radial basis function, wavelet, maxout, etc. Furthermore, the activation function of one layer may be of a different type than that of other layers.
[0205] The learning unit sets the squared loss (mean squared error) as the error function. However, the present invention is not limited to this, and the error function may also be cross-entropy, τ-quantile loss, Huber loss, or ε-sensitivity loss (ε-tolerance error function). The learning unit also sets SGD (stochastic gradient descent) as the algorithm for calculating the gradient (gradient descent algorithm). However, the present invention is not limited to this, and gradient descent algorithms such as Momentum (inertia term), SDG, AdaGrad, RMSprop, AdaDelta, Adam (Adaptive moment estimation) may also be used.
[0206] (A variation of learning) Furthermore, you may use R(Region)-CNN, Fast R-CNN, Faster R-CNN, YOLO, etc., as training programs. You may also use Stacked Hourglass Networks, PoseResnet, HRNet, Cascaded Pyramid Network, etc., as training programs. You may also set up other neural networks such as perceptron neural networks, recurrent neural networks (RNNs), residual networks (ResNet), Transformers, etc. You may also use pre-trained supervised learning models such as decision trees, regression trees, random forests, gradient boosting trees, linear regression, logistic regression, or SVM (Support Vector Machines).
[0207] Furthermore, the input image for each input unit to be input to the training program is not limited to a single image, but may be multiple images (video) taken over time. For example, a video may be divided into predetermined frames and used as input images. This allows for the creation of an AI that takes spatiotemporal information into consideration, thereby resolving ambiguity and improving temporal consistency. For example, it is possible to perform highly accurate pose estimation even when part of the body is hidden (occlusion) or when the image is blurred due to abrupt movements (motion blur). As a training program, 3D CNNs (3D Convolutional Neural Networks), RNNs (Recurrent Neural Networks), Video Transformers, etc., which perform 3D convolution by combining spatial information (2D) and temporal information (1D) on the input video may be used.
[0208] Although one embodiment of this invention has been described in detail above with reference to the drawings, the specific configuration is not limited to that described above, and various design changes can be made without departing from the spirit of this invention.
[0209] For example, in the above embodiment, an example was described in which the imaging unit 170 of the information processing terminal 10 is used to image the gameplay situation (gameplay phase). However, the gameplay situation (gameplay phase) may also be imaged using an imaging device other than the information processing terminal 10, such as a video camera or digital camera. In this case, the imaging device other than the information processing terminal 10 and the information processing terminal 10 may be connected by wired or wireless communication, or instead of communication, the image captured by the imaging device may be transferred to the information processing terminal 10 via a recording medium such as an optical disc or memory card.
[0210] Furthermore, the tactical analysis system SYS may be configured to include multiple information processing terminals 10 (or a combination of information processing terminals 10 and imaging devices). The tactical analysis system SYS may also be configured to include multiple imaging units 170. While a single camera may fail to detect objects (e.g., stones) due to occlusion, integrating images from different angles enables accurate position detection. Additionally, motion blur is reduced, resulting in more stable object detection. While a single camera may have a limited object detection range, using multiple cameras allows for detection of objects over a wider area. Furthermore, multiple cameras may be positioned at different viewpoints, and the object's position in three-dimensional space may be obtained by analyzing multiple images.
[0211] Furthermore, the captured images processed by the information processing terminal 10 may be videos previously captured by imaging devices in other systems (environments not connected to the information processing terminal 10) and recorded on the cloud or physical media, or videos from video sharing services or broadcasts.
[0212] Furthermore, some or all of the storage unit 130 of the information processing terminal 10 may be provided by an external storage device. In this case, the external storage device may be a storage device that can be connected to the information processing terminal 10 via a network. Also, some of the functions of the analysis unit 150 of the information processing terminal 10 may be provided by an external device.
[0213] Figure 27 is a block diagram showing a modified configuration of the tactical analysis system SYS. The configuration of the tactical analysis system SYS shown in this figure illustrates both the configuration for executing the tactical analysis process shown in Figure 11 and the configuration for executing the play status acquisition process shown in Figure 17. However, this is an example configuration in which at least a part of the configuration of the storage unit 130 and the analysis unit 150 is provided on a cloud-based server or database (storage device) that can communicate with the information processing terminal 10 via the Internet. In this case, a part of the configuration of the storage unit 130 and the analysis unit 150 is provided on the analysis server 200 and the database 300. The information processing terminal 10 communicates with the analysis server 200 and the database 300 via the communication unit 110.
[0214] For example, the analysis server 200 includes a learning unit 201. This learning unit 201 is a cloud-based version of the position evaluation function learning unit 152 or the play position acquisition model learning unit 190 shown in Figure 11. The database 300 also includes a tournament / player data storage unit 301 and an analysis result storage unit 302. The tournament / player data storage unit 301 corresponds to the tournament / player data storage unit 131 shown in Figure 11. The analysis result storage unit 302 acquires and stores the analysis results of the tactical analysis processing performed by the information processing terminal 10.
[0215] Note that the configurations that can be implemented on servers and databases (storage devices) in the cloud are not limited to the examples shown in this diagram.
[0216] Furthermore, the configuration for performing the tactical analysis process shown in Figure 11 or Figure 17, and the configuration for performing the play status acquisition process shown in Figure 17, may be provided on one information processing terminal 10, on different information processing terminals 10, or on an information processing terminal 10 and other information processing devices other than the information processing terminal 10.
[0217] In the above embodiment, curling was used as an example of a turn-based sport (a so-called rally-type game) in which players take turns playing against an opponent. However, the tactical analysis processing and play information acquisition processing according to this embodiment can also be applied to other turn-based sports (so-called rally-type games). Examples of other turn-based sports (so-called rally-type games) include boccia, table tennis, tennis, badminton, and volleyball.
[0218] For example, when applying the play information acquisition process according to this embodiment to table tennis, the information processing terminal 10 can track the ball's trajectory, speed, and spin, and acquire match information. For example, the information processing terminal 10 can acquire the ball's speed and direction by capturing the ball's trajectory during a rally with a camera (ball trajectory). Also, since ball spin is very important in table tennis, the information processing terminal 10 can acquire the number of spins or the direction of spin by capturing changes in the printed position on the ball's surface with a camera (ball spin). Furthermore, the information processing terminal 10 can acquire the type of shot (serve, drive, smash, cut, etc.) from the ball's trajectory and spin (shot type). In addition, the information processing terminal 10 can automatically acquire points scored and lost from the ball's trajectory (points scored and lost).
[0219] Furthermore, when the tactical analysis processing according to this embodiment is applied to table tennis, it is possible to evaluate what tactics each player is employing and analyze the optimal shot selection and tactical patterns. For example, the information processing terminal 10 can analyze which shots a player is selecting and evaluate how that selection is giving the player an advantage in the match (whether it has led to points) (shot selection evaluation). The information processing terminal 10 can also analyze the success rate of each shot in past match data and in the current match (shot success rate). This allows players to evaluate their strengths and weaknesses in shots and find suitable shot options. The information processing terminal 10 can also analyze the difficulty level of shots.
[0220] Furthermore, rallies are a crucial element in table tennis. The information processing terminal 10 can analyze rally patterns and shot sequences to identify which rally developments are most likely to lead to points (rally pattern analysis). For example, the information processing terminal 10 can analyze and visualize, for a specific opponent, the type and course of the shot that is most likely to score a point after a serve, the subsequent rally pattern, and its probability of occurrence. This can lead to the adoption of tactics that exploit the opponent's weaknesses or to overcoming one's own weak patterns.
[0221] The information processing terminal 10 described above has a computer system inside. The processing in each configuration of the information processing terminal 10 may be performed by recording a program for realizing the functions of each configuration of the information processing terminal 10 onto a computer-readable recording medium, loading the program recorded on this recording medium into the computer system, and executing it. Here, "loading the program recorded on the recording medium into the computer system and executing it" includes installing the program into the computer system. Here, "computer system" includes hardware such as the OS and peripheral devices. Furthermore, "computer system" may include multiple computer devices connected via a network including communication lines such as the Internet, WAN, LAN, and dedicated lines. Also, "computer-readable recording medium" refers to portable media such as flexible disks, magneto-optical disks, ROMs, CD-ROMs, and storage devices such as hard disks built into the computer system. Thus, the recording medium storing the program may be a non-transient recording medium such as a CD-ROM.
[0222] Furthermore, the recording medium also includes internal or external recording media accessible from the distribution server for distributing the program. The program may be divided into multiple parts, downloaded at different times, and then combined in each configuration of the information processing terminal 10, and different distribution servers may distribute each of the divided programs. Additionally, "computer-readable recording media" includes volatile memory (RAM) within computer systems that act as servers or clients when a program is transmitted over a network, which retains the program for a certain period of time. Moreover, the program may be intended to implement only a portion of the functions described above. Furthermore, the program may be a so-called differential file (differential program) that can implement the functions described above in combination with a program already recorded in the computer system.
[0223] Furthermore, part or all of the information processing terminal 10 may be implemented as an integrated circuit such as an LSI (Large Scale Integration). Also, each component within the information processing terminal 10 of this embodiment may be individually implemented as a processor, or some or all of them may be integrated into a single processor. In addition, the method of implementing the integrated circuit is not limited to LSIs; it may also be implemented using dedicated circuits or general-purpose processors. Furthermore, if an integrated circuit technology that can replace LSIs emerges due to advances in semiconductor technology, an integrated circuit using that technology may be used. [Explanation of symbols]
[0224] SYS…Tactical Analysis System, 10…Information Processing Terminal, 110…Communication Unit, 111…CPU, 112…RAM, 113…ROM, 130…Storage Unit, 114…Input Unit, 120…Display Unit, 130…Storage Unit, 131…Tournament / Player Data Storage Unit, 132…Score Progression Data Storage Unit, 133…Shot Information Storage Unit, 134…Position Evaluation Function Storage Unit, 135…Win Rate Table Storage Unit, 136…Parameter Storage Unit, 137…Play Position Acquisition Model Storage Unit, 140…Input / Editing Unit, 141…Play Data Reading Unit, 142…Play Data Input / Editing Unit, 143…Tournament / Player Data Input / Editing Unit, 144…Score Progression Data Input / Editing Unit, 145… Shot information input / editing unit, 146… Parameter input / editing unit, 150… Analysis unit, 151… Simulator unit, 152… Position evaluation function learning unit, 153… Expected score distribution analysis unit, 154… Expected win rate analysis unit, 155… Optimal shot generation unit, 160… Display control unit, 170… Imaging unit, 180… Play status acquisition unit, 181… Video input unit, 182… Stone detection unit, 183… Stone placement acquisition unit, 184… Shot information acquisition unit, 185… Score acquisition unit, 186… Output unit, 190… Play position acquisition model learning unit, 200… Analysis server, 201… Learning unit, 300… Database, 301… Tournament / player data storage unit, 302… Analysis result storage unit
Claims
1. This is an analysis system that analyzes the gameplay phase of a turn-based game where players take turns playing against each other. An analysis unit analyzes the win rate in the play phase of the turn being analyzed, using a pre-trained model that has been machine-trained using a dataset containing data on multiple play phases and scoring data, and Equipped with, The aforementioned analysis unit is The system simulates multiple candidate moves in the play position of the turn under analysis, generates a score distribution summarizing the scores for each of the multiple candidate moves in the play position using the trained model, and calculates the win rate for each of the multiple candidate moves in the play position of the turn under analysis based on the score distribution for each of the multiple candidate moves. The optimal move is the one with the highest probability of winning among multiple candidate moves in the play phase of the turn being analyzed. The difficulty level of the optimal move is determined based on the win rate distribution of multiple candidate moves in the play position of the turn being analyzed. Analysis system.
2. The aforementioned analysis unit is Referencing a table that links turn-based play progress, score difference with opponent, and win rate, the win rate for each of the multiple candidate moves simulated in the play phase of the turn under analysis is calculated based on the score difference with the opponent for each of the multiple candidate moves based on the score distribution of the multiple candidate moves in the play phase of the turn under analysis. The analysis system according to claim 1.
3. The aforementioned analysis unit is When simulating multiple candidate moves in the play phase of the turn being analyzed, the simulation is based on environmental parameters and parameters related to team or player skills. The analysis system according to claim 1.
4. The gameplay phases of the aforementioned turn-based competition are as follows: This is a curling game phase in which players take turns moving stones toward the house, and the aforementioned candidate moves are candidate shots that move the stone toward the house. The analysis system according to claim 1.
5. The gameplay phases of the aforementioned turn-based competition are as follows: This is a curling game where players take turns moving stones toward the house, and the optimal move is the best shot to move the stone toward the house. The analysis system according to claim 1.
6. An analytical device for analyzing the gameplay phase of a turn-based game in which players take turns playing against each other. An analysis unit analyzes the win rate in the play phase of the turn being analyzed, using a pre-trained model that has been machine-trained using a dataset containing data on multiple play phases and scoring data, and Equipped with, The aforementioned analysis unit is The system simulates multiple candidate moves in the play position of the turn under analysis, generates a score distribution summarizing the scores for each of the multiple candidate moves in the play position using the trained model, and calculates the win rate for each of the multiple candidate moves in the play position of the turn under analysis based on the score distribution for each of the multiple candidate moves. The optimal move is the one with the highest probability of winning among multiple candidate moves in the play phase of the turn being analyzed. The difficulty level of the optimal move is determined based on the win rate distribution of multiple candidate moves in the play position of the turn being analyzed. Analyzer.
7. An analysis method in an analysis system for analyzing the gameplay phase of a turn-based game in which players take turns playing against each other, The acquisition unit performs the step of acquiring data on the play state of the turn to be analyzed, The analysis unit analyzes the win rate in the play phase of the turn to be analyzed, using the play phase of the turn to be analyzed acquired by the acquisition unit, and a trained model that has been machine-trained using a dataset containing data on multiple play phases and score data. Includes, In the step where the analysis unit performs the analysis, The system simulates multiple candidate moves in the play position of the turn under analysis, generates a score distribution summarizing the scores for each of the multiple candidate moves in the play position using the trained model, and calculates the win rate for each of the multiple candidate moves in the play position of the turn under analysis based on the score distribution for each of the multiple candidate moves. The optimal move is the one with the highest probability of winning among multiple candidate moves in the play phase of the turn being analyzed. The difficulty level of the optimal move is determined based on the win rate distribution of multiple candidate moves in the play position of the turn being analyzed. Analysis method.