Model training method, game match player matching method, medium and device
By training an advantage prediction model and using advantage values during gameplay to measure the game experience and the intensity of the match, this solves the problem that existing technologies cannot improve the game experience through opponent matching, and achieves a more effective improvement in user experience and a reduction in churn rate.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- BEIJING ZITIAO NETWORK TECH CO LTD
- Filing Date
- 2022-12-15
- Publication Date
- 2026-05-29
AI Technical Summary
In existing technologies, matching opponents based on win rate and KDA cannot effectively improve the gaming experience for both players, nor can it measure the intensity of the game.
By acquiring the game advantage value and historical performance sample data of both sides within a preset historical time period, an advantage prediction model is trained. This model is then used to measure the advantage during the game, thereby matching the target player with an opponent.
It improves the user experience, reduces the probability of game user churn, and allows for a global measurement of the game experience and the intensity of the match.
Smart Images

Figure CN115845394B_ABST
Abstract
Description
Technical Field
[0001] This disclosure relates to the field of game technology, and more specifically, to a model training method, a game player matching method, a medium, and a device. Background Technology
[0002] In competitive games (such as MOBA (Multiplayer Online Battle Arena), sports games, etc.), opponent matching is mostly based on the user's historical game results. For example, opponents can be matched based on the win rate and KDA (Kill Death Assist) in historical games to ensure the balance of win rates and KDA performance between the two sides. Summary of the Invention
[0003] This summary section is provided to briefly introduce the concepts, which will be described in detail in the detailed description section below. This summary section is not intended to identify key or essential features of the claimed technical solution, nor is it intended to limit the scope of the claimed technical solution.
[0004] This disclosure provides a method for training a model, a method for matching players in a game, and a medium and device.
[0005] In a first aspect, this disclosure provides a method for training an advantage prediction model, the method comprising:
[0006] Obtain the advantage value of each game in multiple games within a preset historical time period, as well as sample data of the positive performance of both sides in their historical games before each game.
[0007] The advantage prediction model is obtained by training the first preset initial model using the advantage value of each game in multiple games and the sample data of the positive performance of both sides in the previous games.
[0008] Secondly, this disclosure provides a method for matching players in a game, characterized in that it is applied to a controller, the controller including the advantage prediction model described in the first aspect above, and the method includes:
[0009] In response to a target player's matchmaking request, the predicted advantage value between each player to be matched and the target player is determined using the advantage prediction model. The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player.
[0010] The target player is matched with an opponent from a pool of potential matchmakers based on the predicted advantage value.
[0011] Thirdly, this disclosure provides a training apparatus for an advantage prediction model, the apparatus comprising:
[0012] The acquisition module is configured to acquire the advantage value of each game in multiple games within a preset historical time period, as well as the sample data of the positive performance of both sides in the historical games before each game.
[0013] The training module is configured to train a first preset initial model using the advantage value of each game in multiple games and the historical positive performance sample data of both sides before each game as the first training data, so as to obtain the advantage prediction model.
[0014] Fourthly, this disclosure provides a game player matching device applied to a controller, the controller including the advantage prediction model described in the first aspect above, the device comprising:
[0015] The first determining module is configured to, in response to a target player's game opponent matching request, determine a predicted advantage value between each player to be matched and the target player through the advantage prediction model. The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player.
[0016] The second determining module is configured to match the target player with an opponent player from a plurality of players to be matched based on the predicted advantage value.
[0017] Fifthly, this disclosure provides a computer-readable medium having a computer program stored thereon, which, when executed by a processing device, implements the steps of the methods described in the first or second aspect above.
[0018] Sixthly, this disclosure provides an electronic device, including:
[0019] A storage device on which computer programs are stored;
[0020] A processing device for executing the computer program in the storage device to implement the steps of the method described in the first or second aspect above.
[0021] The above technical solution obtains the advantage value of each game in multiple matches within a preset historical time period, as well as the sample data of the positive performance of both sides in previous matches before each match. Using the advantage value of each game in multiple matches and the sample data of the positive performance of both sides in previous matches before each match as the first training data, a first preset initial model is trained to obtain the advantage prediction model. This advantage prediction model can measure the advantage in the game process through the advantage value, thereby measuring the game experience and the intensity of the game from a global perspective. Based on the advantage value, the target player is matched with an opponent, which can more effectively improve the user experience and reduce the probability of game user churn.
[0022] Other features and advantages of this disclosure will be described in detail in the following detailed description section. Attached Figure Description
[0023] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale. In the drawings:
[0024] Figure 1 This is a flowchart illustrating a training method for an advantage prediction model according to an exemplary embodiment of this disclosure;
[0025] Figure 2 It is based on Figure 1 The illustrated embodiment shows a flowchart of a training method for an advantage prediction model;
[0026] Figure 3 This is an exemplary embodiment of the present disclosure illustrating a model test heatmap;
[0027] Figure 4 This is a schematic diagram of the win rate curve of a game process illustrated in an exemplary embodiment of this disclosure;
[0028] Figure 5 This is a flowchart illustrating a game player matching method according to an exemplary embodiment of the present disclosure;
[0029] Figure 6 Based on this disclosure Figure 5 The illustrated embodiment shows a flowchart of a game player matching method;
[0030] Figure 7 This is a schematic diagram illustrating the application process of a game player matching method according to an exemplary embodiment of this disclosure;
[0031] Figure 8This is a block diagram illustrating a training apparatus for an advantage prediction model, as shown in an exemplary embodiment of this disclosure.
[0032] Figure 9 This is a block diagram illustrating a game player matching device according to another exemplary embodiment of this disclosure;
[0033] Figure 10 This is a block diagram illustrating an electronic device according to an exemplary embodiment of the present disclosure. Detailed Implementation
[0034] Embodiments of this disclosure will now be described in more detail with reference to the accompanying drawings. While some embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided to provide a more thorough and complete understanding of this disclosure. It should be understood that the accompanying drawings and embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of protection of this disclosure.
[0035] It should be understood that the steps described in the method embodiments of this disclosure may be performed in different orders and / or in parallel. Furthermore, the method embodiments may include additional steps and / or omit the steps shown. The scope of this disclosure is not limited in this respect.
[0036] The term "comprising" and its variations as used herein are open-ended inclusions, meaning "including but not limited to". The term "based on" means "at least partially based on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". Definitions of other terms will be given in the description below.
[0037] It should be noted that the concepts of "first" and "second" mentioned in this disclosure are used only to distinguish different devices, modules or units, and are not used to limit the order of functions performed by these devices, modules or units or their interdependencies.
[0038] It should be noted that the terms "a" and "a plurality of" used in this disclosure are illustrative rather than restrictive, and those skilled in the art should understand that, unless otherwise expressly indicated in the context, they should be understood as "one or more".
[0039] The names of messages or information exchanged between multiple devices in the embodiments of this disclosure are for illustrative purposes only and are not intended to limit the scope of such messages or information.
[0040] It is understood that before using the technical solutions disclosed in the various embodiments of this disclosure, users should be informed of the types, scope of use, and usage scenarios of the personal information involved in this disclosure in an appropriate manner in accordance with relevant laws and regulations, and user authorization should be obtained.
[0041] For example, upon receiving a user's active request, a prompt message is sent to the user to explicitly inform them that the requested operation will require the acquisition and use of the user's personal information. This allows the user to independently choose whether to provide personal information to the software or hardware, such as the electronic device, application, server, or storage medium performing the operations of this disclosed technical solution, based on the prompt message.
[0042] As an optional but non-limiting implementation, in response to a user's active request, sending a prompt message to the user can be done via a pop-up window, where the prompt message can be presented in text format. Furthermore, the pop-up window can also include a selection control allowing the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0043] It is understood that the above notification and user authorization process are merely illustrative and do not constitute a limitation on the implementation of this disclosure. Other methods that comply with relevant laws and regulations may also be applied to the implementation of this disclosure.
[0044] Meanwhile, it is understood that the data involved in this technical solution (including but not limited to the data itself, the acquisition or use of the data) shall comply with the requirements of relevant laws, regulations and related provisions.
[0045] Before detailing the specific implementation methods of this disclosure, the application scenarios of this disclosure are first explained below. This disclosure can be applied to the matchmaking process for opponents in sports competitive games and MOBA competitive games. Currently, in related technologies, opponent matching is usually based on the user's historical game results. Game results typically include win / loss status, KDA performance, etc. However, the inventors found that win / loss status itself contains insufficient information, and KDA only measures the individual game experience. The relevant data of game results are insufficient to measure the user's experience in the game process from a global perspective, nor can they represent the intensity of the game. In other words, simply matching opponents based on win / loss rate and KDA (Kill Death Assist) cannot effectively improve the game experience for both sides.
[0046] To address the above technical issues, this disclosure provides a model training method, a game player matching method, a medium, and a device. The training method for the advantage prediction model involves acquiring the advantage value of each game within a preset historical time period, as well as sample data of the positive performance of both players in previous games before each game. Using the advantage value of each game and the sample data of the positive performance of both players in previous games as the first training data, a first preset initial model is trained to obtain the advantage prediction model. This advantage prediction model can measure the advantage during a game by using the advantage value, thereby measuring the game experience and the intensity of the game from a global perspective. Matching target players with opponents based on this advantage value can more effectively improve the user experience and reduce the probability of game user churn.
[0047] The technical solution of this disclosure will be described in detail below with reference to specific embodiments.
[0048] Figure 1 This is a flowchart illustrating a training method for an advantage prediction model, as shown in an exemplary embodiment of this disclosure. Figure 1 As shown, the training process of this advantage prediction model may include:
[0049] S1, obtain the advantage value of each game in multiple games within a preset historical time period, as well as the sample data of the positive performance of both sides in the historical games before each game.
[0050] The advantage value is used to measure the advantage generated during the game. The larger the advantage value, the more obvious the advantage. An advantage value of zero indicates that the advantages of both sides are balanced.
[0051] S2, using the advantage value of each game in multiple games and the historical positive performance sample data of both sides before each game as the first training data, train the first preset initial model to obtain the advantage prediction model.
[0052] In the first training data, the advantage value of each game can be used to label the historical positive performance sample data of both sides before the current game. The first preset initial model can be a neural network model or other machine learning model.
[0053] The above technical solutions can train an advantage prediction model to obtain the player's advantage during the game. The advantage value output by the advantage prediction model can measure the game experience and the intensity of the game from a global perspective.
[0054] Figure 2 It is based on Figure 1 The illustrated embodiment presents a flowchart of a training method for an advantage prediction model, as shown below. Figure 2 As shown, Figure 1 The advantage value obtained in S1 for each game within a preset historical time period can be achieved through the following steps shown in S11 to S13:
[0055] S11 retrieves the game rank of each player before each match, as well as the game data corresponding to each time bucket during the match.
[0056] The game rank refers to the game level of each player on both sides of the match. The game data includes the score difference for each game scoring dimension. For example, in a game that includes killing game characters or animals and tower pushing missions, the tower pushing missions include tasks to destroy outer towers, destroy secondary towers, and destroy high ground towers. The game data can include the difference in the number of kills, the difference in the total number of towers destroyed, the difference in the number of outer towers destroyed, the difference in the number of secondary towers destroyed, and the difference in the number of high ground towers destroyed, etc.
[0057] S12: Determine the average rank and rank difference for each match based on the respective game ranks of both players before each match.
[0058] Here, the average rank is the average rank of both players in the game, and the rank difference is the difference between the sum of the ranks of both players in the game.
[0059] For example, if a game consists of two teams, red and blue, with three players on the red team (player A, player B, and player C) and three players on the blue team (player a, player b, and player c), where player A is at rank 2, player B at rank 4, and player C at rank 3, player a at rank 3, player b at rank 4, and player c at rank 5, then the average rank in this game is 3.5. The rank difference between the red and blue teams is (2+4+3)-(3+4+5)=-3.
[0060] S13, determine the advantage value for each game based on the average rank, the rank difference, and the game data.
[0061] Specifically, S13 can be implemented through the following steps S131 to S133:
[0062] S131, based on the average rank, the rank difference, and the game data corresponding to each time bucket, determine the game win rate of the specified opponent at each time point.
[0063] In this step, a target win rate prediction model can be determined from the target set based on the average rank and the target identifier of each time bucket. The target set includes win rate prediction models for each time bucket under different average ranks. The average rank, the rank difference, and the score difference of each game score dimension are used as inputs to the target prediction model to obtain the game win rate output by the target prediction model.
[0064] The training method for the win rate prediction model for each time bucket under different average tiers is as follows:
[0065] Acquire historical game sample data, which includes the rank difference sample features of both sides in each game under each time bucket in multiple games and the score difference sample features of each game score dimension; determine the win rate prediction model corresponding to each time bucket under each average rank in the historical game sample data based on the rank difference sample features and the score difference sample features of each time bucket under each average rank.
[0066] It should be noted that each win rate prediction model can be a Linear Regression. A game includes 17 time buckets, 8 average ranks, and 6 game features (rank difference feature, score difference feature across 5 game score dimensions (which could be kill difference, total tower destroyed difference, outer tower destroyed difference, secondary tower destroyed difference, and high ground tower destroyed difference)). If the win rate prediction model for each time bucket under each average rank is a vector containing 7 parameters (coefficients of the rank difference feature, coefficients of the score difference feature across the 5 game score dimensions, and the intercept), then 8 × 17 win rate prediction models can be obtained. Figure 3 As shown, Figure 3 This is an exemplary embodiment of the present disclosure illustrating a model test heatmap, in Figure 3 The horizontal axis represents minute buckets, with [0-10] being the 0th minute bucket, [10-11] the 1st minute bucket, [11-12] the 2nd minute bucket, [13-26] each minute forming a bucket, and [over 26 minutes] the 16th minute bucket. The vertical axis represents the average skill level of both players. Different gray levels represent the accuracy of the model, with larger gray levels indicating lower accuracy and smaller gray levels indicating higher accuracy. Each cell corresponds to a test result of a win rate prediction model. Figure 3 It includes test results for 8×17 win rate prediction models.
[0067] For example, let Y(7,9) represent the win rate of the red team at the 18th minute (9th minute) when the average rank is 7. This win rate prediction model Y(7,9) can be represented by the rank difference X1 and the score difference in the game score dimension (e.g., including the difference in the number of kills X2, the difference in the total number of towers destroyed X3, the difference in the number of outer towers destroyed X4, the difference in the number of second-tier towers destroyed X5, and the difference in the number of high ground towers destroyed X6). For example, it can be represented as:
[0068] Y(7,9)=0.012X1+0.003X2+0.003X3-0.02X4+0.051X5+0.004X6+0.516.
[0069] S132, calculate the advantageous time period and the size of the advantage of the specified opponent at each time point based on the opponent's win rate at each time point.
[0070] The designated opponent can be either of the two players in the game.
[0071] For example, Figure 4 This is a schematic diagram of the win rate curve of a game process illustrated in an exemplary embodiment of this disclosure. Figure 4 In the diagram, the vertical axis represents the win rate, and the horizontal axis represents the game time. Figure 4 The curve in the image represents the win rate curve of the red side during the game between the red and blue sides. This win rate curve is used to characterize the win rate of the red side at each point in time during the game, and the advantage value of the red side in this game is... Figure 4 The difference between Area 1 and Area 2 represents the advantage Red has during the game, where Area 1 indicates a win rate greater than 50%. Area 2 represents the advantage Red has less than 50%, indicating a smaller advantage for Red compared to Blue. The difference between Area 1 and Area 2 represents Red's advantage in this game. If the difference (advantage value) is less than 0, Red's advantage is less than Blue's. If the difference (advantage value) is greater than 0, Red's advantage is greater than Blue's. If the difference (advantage value) is equal to 0, Red's advantage is equal to Blue's. Figure 4 For example, if the designated opponent is the red side, the designated opponent's advantage period is from 0 to 13 minutes. The advantage is positive from 0 to 6.5 minutes and negative from 6.5 to 13 minutes. The size of the advantage at each time point is the difference between each point on the curve and 50%.
[0072] S133, determine the advantage value for each game based on the advantage time period and the size of the advantage at each time point.
[0073] One method is to calculate the integral of the advantage magnitude over the advantage time period to obtain the advantage value.
[0074] For example, still using the above... Figure 4 For example, calculate the integral value of the advantage size over the advantage time period, and use this integral as the advantage value of the red side. In geometric terms, the difference between area 1 and area 2 is the advantage value of the red side.
[0075] The above technical solution measures the advantage during the game by using an advantage value, thereby measuring the game experience and the intensity of the game from a global perspective. Matching target players with opponents based on this advantage value can more effectively improve the user experience and reduce the probability of game user churn.
[0076] Figure 5 This is a flowchart illustrating a game player matching method according to an exemplary embodiment of this disclosure; as follows: Figure 5 As shown, this method can be applied to a controller and may include:
[0077] Step 101: In response to receiving a game opponent matching request from the target player, determine the predicted advantage value between each player to be matched and the target player using the advantage prediction model.
[0078] The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player.
[0079] In this step, the advantage prediction model is as follows: Figure 1 or Figure 2 The model trained using the method shown above. The implementation method described above for determining the predicted advantage value between each player to be matched and the target player using the advantage prediction model can be as follows: Figure 6 As shown ( Figure 6 Based on this disclosure Figure 5 The illustrated embodiment shows a flowchart of a game player matching method:
[0080] Step 1011: Obtain the positive performance data of the first game of the player to be matched within the specified historical time period and the positive performance data of the second game of the target player.
[0081] The first set of positive performance data may include: the win rate, KDA, and MVP (Most Valuable Player, the player who contributed the most to the victory in this game) rate of the player to be matched in a specified historical period before the current time, and the second set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period before the current time, and the second set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period before the current time, and the second set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period before the current time, and the third set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period before the current time, and the fourth set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period before the current time, and the fifth set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period, and the sixth ..., and the second set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period, and the fifth set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period, and the second set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period, and the second set of positive performance data may include: the win rate, KDA, and MVP rate of the target player in a specified historical period, and the second set of positive performance data may include: the win
[0082] Step 1012: Input the first game performance data and the second game performance data into a preset advantage prediction model to obtain the predicted advantage value output by the advantage prediction model.
[0083] Step 102: Match the target player with an opponent from among the multiple players to be matched based on the predicted advantage value.
[0084] In this step, the target match type corresponding to the target player can be determined, wherein the target match type is used to represent different levels of game experience needs; if it is determined that the predicted advantage value belongs to the target match type, the player to be matched is taken as the opponent player.
[0085] One possible implementation of determining the target match type corresponding to the target player as described above is to obtain the user attribute data of the target player, which includes user identity characteristics and user game attribute characteristics; input the user attribute data into a preset match type prediction model to obtain the target match type output by the match type prediction model.
[0086] User identity features may include identifiers such as user ID, avatar, and name; user game attribute features may include attributes related to in-game events such as user game level, recent win rate, and game duration.
[0087] The training method for the game type prediction model described above is as follows:
[0088] Obtain user attribute sample data from multiple players, including match type labeling data; use the user attribute sample data as the second training data to train the second preset initial model to obtain the match type prediction model.
[0089] It should be noted that the user attribute sample data may include user identity features and user game attribute features. The second preset initial model may be a neural network model or a regression model in the prior art.
[0090] In another possible implementation, the target player can pre-set the target match type according to their game preferences. Different target match types correspond to different advantage value ranges. The correspondence between the target match type and the advantage value range can be pre-set. In this way, after obtaining the target player's preset target match type, it can be automatically mapped to the advantage value range corresponding to the target match type.
[0091] It should be noted that the advantage value is used to represent the advantage in the game. The larger the advantage value, the more obvious the advantage. An advantage value of zero indicates that the advantages of both sides are balanced. This advantage value range includes multiple different advantage values to represent the range of an advantage.
[0092] In addition, the implementation method for determining that the predicted advantage value belongs to the target game type in step 102 above may include: determining the advantage value range corresponding to the target game type; and determining that the predicted advantage value belongs to the target game type when the predicted advantage value belongs to the advantage value range.
[0093] For example, if the target player's target match type is the "the more setbacks, the stronger you become" type, and the corresponding advantage value range is [-1.5, 0], then if the predicted advantage value of the player to be matched and the target player belongs to this advantage value range, then the predicted advantage value belongs to the target match type, and the player to be matched is taken as the opponent player.
[0094] Figure 7 This is a schematic diagram illustrating the application flow of a game player matching method according to an exemplary embodiment of this disclosure, such as... Figure 7 As shown, the game balance is measured by the game advantage value and win rate, and the game quality is guaranteed by the health of player behavior, which can effectively improve the player's game experience and thus effectively improve the player retention rate.
[0095] The above technical solution, in response to receiving a game opponent matching request from a target player, determines the target game type corresponding to the target player. Different target game types represent different levels of game experience needs. Based on the target game type, it matches the target player with an opponent from multiple players to be matched. It can match opponents based on the target player's preferred advantage, thereby matching both sides of the game from the perspective of global advantage, which can effectively improve the game experience for both sides of the game.
[0096] Figure 8 This is a block diagram illustrating a training apparatus for an advantage prediction model, as shown in an exemplary embodiment of this disclosure; Figure 8 As shown, the device may include:
[0097] The acquisition module 801 is configured to acquire the advantage value of each game in multiple games within a preset historical time period, as well as the sample data of the positive performance of both sides in the historical games before each game.
[0098] Training module 802 is configured to train a first preset initial model using the advantage value of each game in multiple games and the historical positive performance sample data of both sides before each game as the first training data, so as to obtain the advantage prediction model.
[0099] The above technical solutions can train an advantage prediction model to obtain the player's advantage during the game. The advantage value output by the advantage prediction model can measure the game experience and the intensity of the game from a global perspective.
[0100] Optionally, the acquisition module 801 is configured to:
[0101] Obtain the game rank of each player before each game, and the game data corresponding to each time bucket during the game. The game data includes the score difference of each game score dimension.
[0102] The average rank and rank difference of a match are determined based on the individual game ranks of both players before each match.
[0103] The advantage value for each game is determined based on the average rank, the rank difference, and the game data.
[0104] Optionally, the acquisition module 801 is configured to:
[0105] The game win rate of a specified opponent at each time point is determined based on the average rank, the rank difference, and the game data corresponding to each time bucket.
[0106] Calculate the advantageous time period and the size of the advantage of the specified opponent at each time point based on the win rate of the specified opponent at each time point;
[0107] The advantage value for each game is determined based on the advantageous time period and the magnitude of the advantage at each time point.
[0108] Optionally, the acquisition module 801 is configured to:
[0109] Based on the average rank and the target identifier of each time bucket, a target win rate prediction model is determined from the target set, which includes the win rate prediction model for each time bucket under different average ranks.
[0110] The average rank, the rank difference, and the score difference for each game score dimension are used as inputs to the target prediction model to obtain the game win rate output by the target prediction model.
[0111] Optionally, the training method for the win rate prediction model for each time bucket under different average tiers is as follows:
[0112] Acquire historical game sample data, which includes the rank difference sample features of both sides in each game under each time bucket in multiple games and the score difference sample features of each game score dimension.
[0113] The win rate prediction model corresponding to each time bucket under each average rank is determined based on the rank difference sample features and the score difference sample features of each time bucket under each average rank in the historical game sample data.
[0114] The above technical solutions can train an advantage prediction model to obtain the player's advantage during the game. The advantage value output by the advantage prediction model can measure the game experience and the intensity of the game from a global perspective.
[0115] Figure 9 This is a block diagram illustrating a game player matching device according to another exemplary embodiment of this disclosure; as shown below. Figure 9 As shown, the game matchmaking device can be applied to a controller, which includes the above... Figure 1 or Figure 2 The advantage prediction model trained by the method, the device comprising:
[0116] The first determining module 901 is configured to, in response to a game opponent matching request from a target player, determine a predicted advantage value between each player to be matched and the target player through the advantage prediction model. The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player.
[0117] The second determining module 902 is configured to match the target player with an opponent player from among a plurality of players to be matched based on the predicted advantage value.
[0118] The above technical solution can measure the advantage in the game process through the advantage value, thereby measuring the game experience and the intensity of the game from a global perspective. Matching target players with opponents based on the advantage value can more effectively improve the user experience and reduce the probability of game user churn.
[0119] Optionally, the second determining module 902 is configured to:
[0120] Determine the target match type corresponding to the target player, wherein the target match type is used to represent different levels of game experience needs;
[0121] If the predicted advantage value is determined to belong to the target match type, the player to be matched will be the opponent player.
[0122] Optionally, the second determining module 902 is configured to:
[0123] Determine the advantage value range corresponding to the target game type;
[0124] If the predicted advantage value falls within the advantage value range, the predicted advantage value is determined to belong to the target game type.
[0125] Optionally, the first determining module 901 is configured to:
[0126] Obtain the positive performance data of the first game of the player to be matched within a specified historical time period and the positive performance data of the second game of the target player;
[0127] The first game performance data and the second game performance data are input into the preset advantage prediction model to obtain the predicted advantage value output by the advantage prediction model.
[0128] Optionally, the second determining module 902 is configured to:
[0129] Obtain the user attribute data of the target player, the user attribute data including user identity characteristics and user game attribute characteristics;
[0130] The user attribute data is input into a preset game type prediction model to obtain the target game type output by the game type prediction model.
[0131] Optionally, the training method for the game type prediction model is as follows:
[0132] Obtain user attribute sample data from multiple players, including match type labeling data;
[0133] Using the user attribute sample data as the second training data, the second preset initial model is trained to obtain the game type prediction model.
[0134] The above technical solution measures the advantage during the game by using an advantage value, thereby measuring the game experience and the intensity of the game from a global perspective. Matching target players with opponents based on this advantage value can more effectively improve the user experience and reduce the probability of game user churn.
[0135] The following is for reference. Figure 10 This document illustrates a structural schematic diagram of an electronic device 600 suitable for implementing embodiments of the present disclosure. The terminal devices in these embodiments may include, but are not limited to, mobile terminals such as mobile phones, laptops, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), in-vehicle terminals (e.g., in-vehicle navigation terminals), and fixed terminals such as digital TVs and desktop computers. Figure 10 The electronic device shown is merely an example and should not be construed as limiting the functionality and scope of the embodiments disclosed herein.
[0136] like Figure 10As shown, electronic device 600 may include a processing device (e.g., a central processing unit, a graphics processor, etc.) 601, which can perform various appropriate actions and processes according to a program stored in read-only memory (ROM) 602 or a program loaded from storage device 608 into random access memory (RAM) 603. RAM 603 also stores various programs and data required for the operation of electronic device 600. Processing device 601, ROM 602, and RAM 603 are interconnected via bus 604. Input / output (I / O) interface 605 is also connected to bus 604.
[0137] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 607 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 608 including, for example, magnetic tapes, hard disks, etc.; and communication devices 609. Communication device 609 allows electronic device 600 to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 10 An electronic device 600 with various devices is shown; however, it should be understood that it is not required to implement or possess all of the devices shown. More or fewer devices may be implemented or possessed alternatively.
[0138] In particular, according to embodiments of this disclosure, the processes described above with reference to the flowcharts can be implemented as computer software programs. For example, embodiments of this disclosure include a computer program product comprising a computer program carried on a non-transitory computer-readable medium, the computer program containing program code for performing the methods shown in the flowcharts. In such embodiments, the computer program can be downloaded and installed from a network via a communication device 609, or installed from a storage device 608, or installed from a ROM 602. When the computer program is executed by the processing device 601, it performs the functions defined in the methods of embodiments of this disclosure.
[0139] It should be noted that the computer-readable medium described in this disclosure can be a computer-readable signal medium or a computer-readable storage medium, or any combination thereof. A computer-readable storage medium can be, for example,—but not limited to—an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples of a computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer disk, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination thereof. In this disclosure, a computer-readable storage medium can be any tangible medium containing or storing a program that can be used by or in connection with an instruction execution system, apparatus, or device. In this disclosure, a computer-readable signal medium can include a data signal propagated in baseband or as part of a carrier wave, carrying computer-readable program code. Such propagated data signals can take various forms, including but not limited to electromagnetic signals, optical signals, or any suitable combination thereof. A computer-readable signal medium can be any computer-readable medium other than a computer-readable storage medium, which can send, propagate, or transmit a program for use by or in connection with an instruction execution system, apparatus, or device. The program code contained on the computer-readable medium can be transmitted using any suitable medium, including but not limited to: wires, optical fibers, RF (radio frequency), etc., or any suitable combination thereof.
[0140] In some implementations, the client or server may communicate using any currently known or future-developed network protocol such as HTTP (Hypertext Transfer Protocol) and may interconnect with digital data communication (e.g., communication networks) of any form or medium. Examples of communication networks include local area networks (“LANs”), wide area networks (“WANs”), the Internet (e.g., the Internet of Things), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks), as well as any currently known or future-developed networks.
[0141] The aforementioned computer-readable medium may be included in the aforementioned electronic device; or it may exist independently and not assembled into the electronic device.
[0142] The aforementioned computer-readable medium carries one or more programs. When the aforementioned one or more programs are executed by the electronic device, the electronic device causes the electronic device to: acquire the advantage value of each game in multiple games within a preset historical time period, and sample data of the positive performance of both sides in the historical games before each game; and train a first preset initial model using the advantage value of each game in multiple games and the sample data of the positive performance of both sides in the historical games before each game as first training data to obtain the advantage prediction model.
[0143] Computer program code for performing the operations of this disclosure can be written in one or more programming languages or a combination thereof, including but not limited to object-oriented programming languages such as Java, Smalltalk, and C++, as well as conventional procedural programming languages such as the "C" language or similar programming languages. The program code can be executed entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving remote computers, the remote computer can be connected to the user's computer via any type of network—including a local area network (LAN) or a wide area network (WAN)—or can be connected to an external computer (e.g., via the Internet using an Internet service provider).
[0144] The flowcharts and block diagrams in the accompanying drawings illustrate the architecture, functionality, and operation of possible implementations of systems, methods, and computer program products according to various embodiments of this disclosure. In this regard, each block in a flowchart or block diagram may represent a module, segment, or portion of code containing one or more executable instructions for implementing a specified logical function. It should also be noted that in some alternative implementations, the functions indicated in the blocks may occur in a different order than those indicated in the drawings. For example, two consecutively indicated blocks may actually be executed substantially in parallel, and they may sometimes be executed in reverse order, depending on the functions involved. It should also be noted that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can be implemented using a dedicated hardware-based system that performs the specified function or operation, or using a combination of dedicated hardware and computer instructions.
[0145] The modules described in the embodiments of this disclosure can be implemented in software or hardware. The names of the modules do not necessarily limit the module itself; for example, the first determining module can also be described as "a module that, in response to a target player's matchmaking request, determines a predicted advantage value between each player to be matched and the target player using the advantage prediction model, wherein the predicted advantage value characterizes the advantage the target player would have if the player to be matched were to play against the target player."
[0146] The functions described above in this document can be performed, at least in part, by one or more hardware logic components. For example, exemplary types of hardware logic components that can be used, without limitation, include: Field Programmable Gate Arrays (FPGAs), Application-Specific Integrated Circuits (ASICs), Application Standard Products (ASSPs), System-on-Chip (SoCs), Complex Programmable Logic Devices (CPLDs), and so on.
[0147] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.
[0148] According to one or more embodiments of this disclosure, Example 1 provides a method for training an advantage prediction model, characterized in that the method includes:
[0149] Obtain the advantage value of each game in multiple games within a preset historical time period, as well as sample data of the positive performance of both sides in their historical games before each game.
[0150] The advantage prediction model is obtained by training the first preset initial model using the advantage value of each game in multiple games and the sample data of the positive performance of both sides in the previous games.
[0151] According to one or more embodiments of this disclosure, Example 2 provides the method of Example 1, wherein obtaining the advantage value of each game in multiple games within a preset historical time period includes:
[0152] Obtain the game rank of each player before each game, and the game data corresponding to each time bucket during the game. The game data includes the score difference of each game score dimension.
[0153] The average rank and rank difference of a match are determined based on the individual game ranks of both players before each match.
[0154] The advantage value for each game is determined based on the average rank, the rank difference, and the game data.
[0155] According to one or more embodiments of this disclosure, Example 3 provides the method of Example 2, wherein determining the advantage value for each game based on the average rank, the rank difference, and the game data includes:
[0156] The game win rate of a specified opponent at each time point is determined based on the average rank, the rank difference, and the game data corresponding to each time bucket.
[0157] Calculate the advantageous time period and the size of the advantage of the specified opponent at each time point based on the win rate of the specified opponent at each time point;
[0158] The advantage value for each game is determined based on the advantageous time period and the magnitude of the advantage at each time point.
[0159] According to one or more embodiments of this disclosure, Example 4 provides the method of Example 3, wherein determining the game win rate of a specified opponent at each time point based on the average rank, the rank difference, and the game data corresponding to each time bucket includes:
[0160] Based on the average rank and the target identifier of each time bucket, a target win rate prediction model is determined from the target set, which includes the win rate prediction model for each time bucket under different average ranks.
[0161] The average rank, the rank difference, and the score difference for each game score dimension are used as inputs to the target prediction model to obtain the game win rate output by the target prediction model.
[0162] According to one or more embodiments of this disclosure, Example 5 provides the method of Example 4, wherein the training method for the win rate prediction model for each time bucket under different average tiers is as follows:
[0163] Acquire historical game sample data, which includes the rank difference sample features of both sides in each game under each time bucket in multiple games and the score difference sample features of each game score dimension.
[0164] The win rate prediction model corresponding to each time bucket under each average rank is determined based on the rank difference sample features and the score difference sample features of each time bucket under each average rank in the historical game sample data.
[0165] According to one or more embodiments of this disclosure, Example 6 is a method for matching players in a game match, characterized in that it is applied to a controller, the controller comprising the advantage prediction model described in any one of Examples 1-5 above, the method comprising:
[0166] In response to a target player's game opponent matchmaking request, the predicted advantage value between each player to be matched and the target player is determined by the advantage prediction model. The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player.
[0167] Based on the predicted advantage value, the target player is matched with an opponent from among the multiple players to be matched.
[0168] According to one or more embodiments of this disclosure, Example 7 provides the method of Example 6, wherein matching an opponent player for a target player from a plurality of players to be matched based on the predicted advantage value includes:
[0169] Determine the target match type corresponding to the target player, wherein the target match type is used to represent different levels of game experience needs;
[0170] If the predicted advantage value is determined to belong to the target match type, the player to be matched will be the opponent player.
[0171] According to one or more embodiments of this disclosure, Example 8 provides the method of Example 7 for determining that the predicted advantage value belongs to the target game type, including:
[0172] Determine the advantage value range corresponding to the target game type;
[0173] If the predicted advantage value falls within the advantage value range, the predicted advantage value is determined to belong to the target game type.
[0174] According to one or more embodiments of this disclosure, Example 9 provides the method of Example 6, wherein determining the predicted advantage value between each of the players to be matched and the target player includes:
[0175] Obtain the positive performance data of the first game of the player to be matched within a specified historical time period and the positive performance data of the second game of the target player;
[0176] The first game performance data and the second game performance data are input into the preset advantage prediction model to obtain the predicted advantage value output by the advantage value prediction model.
[0177] According to one or more embodiments of this disclosure, Example 10 provides the method of Example 7, wherein determining the target match type corresponding to the target player includes:
[0178] Obtain the user attribute data of the target player, the user attribute data including user identity characteristics and user game attribute characteristics;
[0179] The user attribute data is input into a preset game type prediction model to obtain the target game type output by the game type prediction model.
[0180] According to one or more embodiments of this disclosure, Example 11 provides the method of Example 10, wherein the game type prediction model is trained as follows:
[0181] Obtain user attribute sample data from multiple players, including match type labeling data;
[0182] Using the user attribute sample data as the second training data, the second preset initial model is trained to obtain the game type prediction model.
[0183] According to one or more embodiments of this disclosure, Example 12 provides a training apparatus for an advantage prediction model, the apparatus comprising:
[0184] The acquisition module is configured to acquire the advantage value of each game in multiple games within a preset historical time period, as well as the sample data of the positive performance of both sides in the historical games before each game.
[0185] The training module is configured to train a first preset initial model using the advantage value of each game in multiple games and the historical positive performance sample data of both sides before each game as the first training data, so as to obtain the advantage prediction model.
[0186] According to one or more embodiments of this disclosure, Example 13 provides a game matchmaking device applied to a controller, the controller including the advantage prediction model described in any one of Examples 1-5 above, the device comprising:
[0187] The first determining module is configured to, in response to a game opponent matching request from a target player, determine a predicted advantage value between each player to be matched and the target player using the advantage prediction model. The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player.
[0188] The second determining module is configured to match the target player with an opponent player from among a plurality of players to be matched based on the predicted advantage value.
[0189] According to one or more embodiments of the present disclosure, Example 14 provides a computer-readable medium having a computer program stored thereon that, when executed by a processing device, implements the steps of the method described in any one of Examples 1-5 or 6-11.
[0190] According to one or more embodiments of this disclosure, Example 15 provides an electronic device, including:
[0191] A storage device on which computer programs are stored;
[0192] A processing device for executing the computer program in the storage device to implement the steps of any one of Examples 1-5 or 6-11.
[0193] The above description is merely a preferred embodiment of this disclosure and an explanation of the technical principles employed. Those skilled in the art should understand that the scope of this disclosure is not limited to technical solutions formed by specific combinations of the above-described technical features, but should also cover other technical solutions formed by arbitrary combinations of the above-described technical features or their equivalents without departing from the above-described concept. For example, technical solutions formed by substituting the above features with (but not limited to) technical features disclosed in this disclosure that have similar functions.
[0194] Furthermore, while the operations are described in a specific order, this should not be construed as requiring these operations to be performed in the specific order shown or in a sequential order. In certain environments, multitasking and parallel processing may be advantageous. Similarly, while several specific implementation details are included in the above discussion, these should not be construed as limiting the scope of this disclosure. Certain features described in the context of individual embodiments may also be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment may also be implemented individually or in any suitable sub-combination in multiple embodiments.
[0195] Although the subject matter has been described using language specific to structural features and / or methodological logic, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. Rather, the specific features and actions described above are merely illustrative forms of implementing the claims. Regarding the apparatus in the above embodiments, the specific manner in which the various modules perform their operations has been described in detail in the embodiments relating to the method, and will not be elaborated upon here.
Claims
1. A training method for an advantage prediction model, characterized in that, The method includes: Obtain the advantage value of each game in multiple games within a preset historical time period, as well as sample data of the positive performance of both sides in their historical games before each game. The advantage prediction model is trained by using the advantage value of each game in multiple games and the historical positive performance sample data of both sides before each game as the first training data. The step of obtaining the advantage value for each game in multiple games within a preset historical time period includes: Obtain the game rank of each player before each game, and the game data corresponding to each time bucket during the game. The game data includes the score difference of each game score dimension. The average rank and rank difference of a match are determined based on the individual game ranks of both players before each match. The game win rate of a specified opponent at each time point is determined based on the average rank, the rank difference, and the game data corresponding to each time bucket. Calculate the advantageous time period and the size of the advantage of the specified opponent at each time point based on the win rate of the specified opponent at each time point; The advantage value for each game is determined based on the advantageous time period and the magnitude of the advantage at each time point.
2. The method according to claim 1, characterized in that, The step of determining the game win rate of a specific opponent at each time point based on the average rank, the rank difference, and the game data corresponding to each time bucket includes: Based on the average rank and the target identifier of each time bucket, a target win rate prediction model is determined from the target set, which includes the win rate prediction model for each time bucket under different average ranks. The average rank, the rank difference, and the score difference for each game score dimension are used as inputs to the target win rate prediction model to obtain the game win rate output by the target win rate prediction model.
3. The method according to claim 2, characterized in that, The training method for the win rate prediction model for each time bucket under different average tiers is as follows: Acquire historical game sample data, which includes the rank difference sample features of both sides in each game under each time bucket in multiple games and the score difference sample features of each game score dimension. The win rate prediction model corresponding to each time bucket under each average rank is determined based on the rank difference sample features and the score difference sample features of each time bucket under each average rank in the historical game sample data.
4. A method for matching players in a game, characterized in that, Applied to a controller, the controller including a dominance prediction model, the dominance prediction model being trained based on the training method of the dominance prediction model according to any one of claims 1-3, the method comprising: In response to a target player's game opponent matchmaking request, the predicted advantage value between each player to be matched and the target player is determined by the advantage prediction model. The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player. Based on the predicted advantage value, the target player is matched with an opponent from among the multiple players to be matched.
5. The method according to claim 4, characterized in that, The step of matching the target player with an opponent from among the multiple players to be matched based on the predicted advantage value includes: Determine the target match type corresponding to the target player, wherein the target match type is used to represent different levels of game experience needs; If the predicted advantage value is determined to belong to the target match type, the player to be matched will be the opponent player.
6. The method according to claim 5, characterized in that, Determining that the predicted advantage value belongs to the target game type includes: Determine the advantage value range corresponding to the target game type; If the predicted advantage value falls within the advantage value range, the predicted advantage value is determined to belong to the target game type.
7. The method according to claim 4, characterized in that, Determining the predicted advantage value between each of the players to be matched and the target player includes: Obtain the positive performance data of the first game of the player to be matched within a specified historical time period and the positive performance data of the second game of the target player; The first game performance data and the second game performance data are input into the preset advantage prediction model to obtain the predicted advantage value output by the advantage value prediction model.
8. The method according to claim 5, characterized in that, Determining the target match type corresponding to the target player includes: Obtain the user attribute data of the target player, the user attribute data including user identity characteristics and user game attribute characteristics; The user attribute data is input into a preset game type prediction model to obtain the target game type output by the game type prediction model.
9. The method according to claim 8, characterized in that, The training method for the game type prediction model is as follows: Obtain user attribute sample data from multiple players, including match type labeling data; Using the user attribute sample data as the second training data, the second preset initial model is trained to obtain the game type prediction model.
10. A training device for a dominance prediction model, characterized in that, The device includes: The acquisition module is configured to acquire the advantage value of each game in multiple games within a preset historical time period, as well as the sample data of the positive performance of both sides in the historical games before each game. The training module is configured to train the first preset initial model using the advantage value of each game in multiple games and the historical positive performance sample data of both sides before each game as the first training data, so as to obtain the advantage prediction model. The acquisition module is configured to: acquire the game ranks of both sides before each match, and the game data corresponding to each time bucket during the match, wherein the game data includes the score difference of each game score dimension; determine the average rank and rank difference of the match based on the game ranks of both sides before each match; determine the game win rate of a specified side at each time point based on the average rank, the rank difference, and the game data corresponding to each time bucket; calculate the advantageous time period and the advantage size of the specified side at each time point based on the game win rate of the specified side at each time point; and determine the advantage value of each match based on the advantageous time period and the advantage size at each time point.
11. A game player matching device, characterized in that, Applied to a controller, the controller including a dominance prediction model, the dominance prediction model being trained based on the training method of the dominance prediction model according to any one of claims 1-3, the apparatus comprising: The first determining module is configured to, in response to a game opponent matching request from a target player, determine a predicted advantage value between each player to be matched and the target player using the advantage prediction model. The predicted advantage value is used to characterize the advantage that the target player will have if the player to be matched plays against the target player. The second determining module is configured to match the target player with an opponent player from among a plurality of players to be matched based on the predicted advantage value.
12. A computer-readable medium having a computer program stored thereon, characterized in that, When executed by the processing device, the program implements the steps of the method according to any one of claims 1-3 or 4-9.
13. An electronic device, characterized in that, include: A storage device on which computer programs are stored; A processing device for executing the computer program in the storage device to implement the steps of the method according to any one of claims 1-3 or 4-9.