Team matching method, apparatus, device, and medium
By simplifying team compatibility calculations using anchor virtual objects and contribution factors in multiplayer online role-playing games, the slow calculation speed of existing technologies is solved, resulting in more efficient team matching.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- TENCENT TECHNOLOGY (SHENZHEN) CO LTD
- Filing Date
- 2022-02-25
- Publication Date
- 2026-06-19
AI Technical Summary
In massively multiplayer online role-playing games, existing technologies that use depth-first search to calculate team compatibility suffer from slow computation speed, high time complexity, and reduced computational efficiency.
By determining the anchor virtual object and contribution factors, and using n contribution factors and the position weight of the replacement virtual object to perform n calculations, the team compatibility calculation process is simplified.
It reduces the computational complexity of team compatibility and improves computational efficiency, enabling the rapid identification of target matching teams when matching conditions are not met.
Smart Images

Figure CN116688525B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of virtual worlds, and in particular to a team matching method, apparatus, device, and medium. Background Technology
[0002] In online games with virtual environments, such as massively multiplayer online role-playing games, it is usually necessary to match teams for virtual objects controlled by players so that two or more teams of similar strength can engage in virtual combat in the virtual world.
[0003] In related technologies, it is necessary to calculate the team compatibility to ensure that the compatibility of different teams meets preset requirements. A common method for calculating team compatibility is depth-first search. Taking a 5-person team as an example, it is necessary to calculate the team compatibility under 5! (i.e., 5 factorial) = 120 allocation schemes. When the team compatibility does not meet the preset requirements, team members need to be replaced. For the replaced team, the team compatibility under the 120 allocation schemes still needs to be calculated.
[0004] Based on the above calculation method, the calculation speed of team compatibility is low and the time complexity is high, which consumes more processing time of the central processing unit and affects the calculation efficiency. Summary of the Invention
[0005] This application provides a team matching method, apparatus, device, and medium. By using n contribution factors of the first team member and n position weights that replace virtual objects, the calculation process for the compatibility of the second team is simplified, and the calculation efficiency is improved. The technical solution is as follows:
[0006] According to one aspect of this application, a team matching method is provided, the method comprising:
[0007] Determine the anchor virtual object. The anchor virtual object belongs to the first candidate matching team. The first candidate matching team includes n members, and the n members correspond to n different professions.
[0008] If the compatibility of the first member in the first candidate matching team does not meet the first matching condition, calculate the contribution factor corresponding to the first member in the first candidate matching team engaging in n different professions. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the compatibility of the first member when the first member is engaged in the m-th profession.
[0009] The second candidate matching team's fit is obtained by performing n calculations based on n contribution factors and the position weights of the replacement virtual object in n different professions. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member of the first candidate matching team with the replacement virtual object.
[0010] If the compatibility of the second team meets the second matching condition, the second candidate matching team will be determined as the target matching team of the anchor virtual object.
[0011] According to one aspect of this application, a team matching device is provided, the device comprising:
[0012] The determination module is used to determine the anchor virtual object. The anchor virtual object belongs to the first candidate matching team. The first candidate matching team includes n members, and the n members correspond to n different professions.
[0013] The calculation module is used to calculate the contribution factors of the first member of the first candidate matching team for each of the n occupations they engage in when the compatibility of the first member of the first candidate matching team does not meet the first matching condition. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the compatibility of the first member when the first member engages in the m-th occupation.
[0014] The calculation module is also used to perform n calculations based on n contribution factors and the position weights of the replacement virtual object in n professions to obtain the second team fit of the second candidate matching team. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member with the replacement virtual object in the first candidate matching team.
[0015] The determination module is also used to determine the second candidate matching team as the target matching team of the anchor virtual object when the second team's compatibility meets the second matching condition.
[0016] According to one aspect of this application, a computer device is provided, the computer device including a processor;
[0017] The processor is used to determine the anchor virtual object, which belongs to the first candidate matching team. The first candidate matching team includes n members, and the n members correspond to n different professions.
[0018] If the compatibility of the first member in the first candidate matching team does not meet the first matching condition, calculate the contribution factor corresponding to the first member in the first candidate matching team engaging in n different professions. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the compatibility of the first member when the first member is engaged in the m-th profession.
[0019] The second candidate matching team's fit is obtained by performing n calculations based on n contribution factors and the position weights of the replacement virtual object in n different professions. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member of the first candidate matching team with the replacement virtual object.
[0020] If the compatibility of the second team meets the second matching condition, the second candidate matching team will be determined as the target matching team of the anchor virtual object.
[0021] According to one aspect of this application, a computer-readable storage medium is provided, in which a computer program is stored, the computer program being executed by a processor to implement the team matching method as described above.
[0022] According to one aspect of this application, a chip is provided, the chip including programmable logic circuitry and / or program instructions, which, when the chip is running, are used to implement the team matching method as described above.
[0023] According to one aspect of this application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium, wherein a processor reads from and executes the computer instructions to implement the team matching method as described above.
[0024] The beneficial effects of the technical solutions provided in this application include at least the following:
[0025] If the compatibility of the first member of the first candidate matching team does not meet the first matching condition, the compatibility of the second team can be quickly determined through n calculations based on the n contribution factors of the first member and the n position weights of the replacement virtual object. If the compatibility of the second team meets the second matching condition, the second candidate matching team is determined as the target matching team for the anchor virtual object. Based on the n contribution factors of the first member, the compatibility of the second team can be obtained with only n calculations. Compared to n factorial calculations, the team matching method provided in this application reduces the computational complexity of the compatibility of the second team and the number of calculations, thereby improving computational efficiency. Attached Figure Description
[0026] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0027] Figure 1 This is a structural block diagram of a computer system provided in an exemplary embodiment of this application;
[0028] Figure 2 This is a flowchart of a team matching method provided in an exemplary embodiment of this application;
[0029] Figure 3 This is a flowchart of a team matching method provided in an exemplary embodiment of this application;
[0030] Figure 4 This is a flowchart illustrating the calculation of team fit as provided in an exemplary embodiment of this application;
[0031] Figure 5 This is a flowchart of a team matching method provided in an exemplary embodiment of this application;
[0032] Figure 6 This is a flowchart of a team matching method provided in an exemplary embodiment of this application;
[0033] Figure 7 This is a schematic diagram of a team matching device provided in an exemplary embodiment of this application;
[0034] Figure 8 This is a structural block diagram of a server provided in an exemplary embodiment of this application. Detailed Implementation
[0035] To make the objectives, technical solutions, and advantages of this application clearer, the embodiments of this application will be described in further detail below with reference to the accompanying drawings.
[0036] The method provided in this application can be applied to applications with virtual environments and virtual characters. For example, an application supporting a virtual environment is one in which the user can control the movement of a virtual character within the virtual environment. For example, the method provided in this application can be applied to any of the following applications: Virtual Reality (VR) applications, Augmented Reality (AR) applications, 3D mapping applications, Virtual Reality games, Augmented Reality games, First-Person Shooter (FPS) games, Third-Person Shooter (TPS) games, Multiplayer Online Battle Arena Games (MOBA) games, and Simulation Games (SLG).
[0037] For example, a game in a virtual environment consists of maps of one or more game worlds. The virtual environment in the game simulates scenes in the real world. Users can control virtual characters in the game to perform actions such as walking, running, jumping, shooting, fighting, driving, using virtual props to attack other virtual characters, and using virtual props to charge up attacks on other virtual characters. The game is highly interactive, and multiple users can team up online to play competitive games.
[0038] In some embodiments, the aforementioned application may be a shooting game, racing game, role-playing game, adventure game, sandbox game, tactical competitive game, etc. The client can support at least one of the following operating systems: Windows, macOS, Android, iOS, and Linux, and clients on different operating systems can interconnect. In some embodiments, the aforementioned client is a program suitable for mobile terminals with touchscreens.
[0039] In some embodiments, the client described above is an application developed based on a 3D engine, such as the Unity engine.
[0040] The terminal in this application can be a desktop computer, a laptop computer, a mobile phone, a tablet computer, an e-book reader, an MP3 (Moving Picture Experts Group Audio Layer III) player, an MP4 (Moving Picture Experts Group Audio Layer IV) player, etc. The terminal has a client installed and running that supports a virtual environment, such as a client for an application supporting a 3D virtual environment. This application can be any of the following: a Battle Royale (BR) game, a virtual reality application, an augmented reality application, a 3D map application, a third-person shooter game, a first-person shooter game, or a multiplayer online battle royale game. Optionally, the application can be a standalone application, such as a standalone 3D game application, or a network-based application.
[0041] Figure 1 The diagram shows a structural block diagram of a computer system 200 provided in an exemplary embodiment of this application. The computer system 200 includes: a terminal 210 and a server cluster 220.
[0042] Terminal 210 has a client 211 installed and running that supports a virtual environment. This client 211 can be an application that supports a virtual environment. When the terminal runs the client 211, the user interface of the client 211 is displayed on the screen of terminal 210. This client can be any of the following: FPS game, TPS game, MOBA game, tactical competitive game, or SLG game. In this embodiment, an FPS game is used as an example. Terminal 210 is the terminal used by the first user 212. The first user 212 uses terminal 210 to control a first virtual character located in the virtual environment to perform activities. The first virtual character can be referred to as the first virtual character of the first user 212. The activities of the first virtual character include, but are not limited to: adjusting body posture, crawling, walking, running, riding, flying, jumping, driving, picking up, shooting, attacking, and throwing at least one of these. Illustratively, the first virtual character is a virtual character, such as a realistic character or an anime character.
[0043] The device type of terminal 210 includes at least one of the following: smartphone, tablet computer, e-book reader, MP3 player, MP4 player, laptop computer, and desktop computer.
[0044] Figure 2Only one terminal is shown, but multiple other terminals 240 exist in different embodiments. In some embodiments, at least one other terminal 240 is a terminal corresponding to the developer, on which a virtual environment client development and editing platform is installed. The developer can edit and update the client on the other terminal 240 and transmit the updated client installation package to the server cluster 220 via wired or wireless network. The terminal 210 can download the client installation package from the server cluster 220 to update the client.
[0045] As an illustration, each of the other terminals 240 provided in this application embodiment has a client that supports virtual environments installed and running, and the user corresponding to each other terminal 240 can control the corresponding virtual character.
[0046] Terminal 210 and other terminals 240 are connected to server cluster 220 via wireless or wired networks.
[0047] Server cluster 220 includes at least one of a single server, multiple servers, a cloud computing platform, and a virtualization center. Server cluster 220 provides backend services to clients supporting a 3D virtual environment. Optionally, server cluster 220 undertakes the primary computing task, and the terminal undertakes the secondary computing task; or, server cluster 220 undertakes the secondary computing task, and the terminal undertakes the primary computing task; or, server cluster 220 and the terminal collaborate on computing using a distributed computing architecture.
[0048] Optionally, both the aforementioned terminals and servers are computer devices.
[0049] In an illustrative example, server cluster 220 includes servers 221 and 226. Server 221 includes a processor 222, a user account database 223, a battle service module 224, and a user-facing input / output interface (I / O interface) 225. The processor 222 loads instructions stored in server 221 and processes data in the user account database 223 and the battle service module 224. The user account database 223 stores data about user accounts used by terminal 210 and other terminals 240, such as user avatars, nicknames, combat power indices, and the service area where the user accounts are located. The battle service module 224 provides multiple battle rooms for users to play against each other. The user-facing I / O interface 225 establishes communication and exchanges data with terminal 210 via a wireless or wired network.
[0050] Based on the above introduction to the virtual environment and the description of the implementation environment, the team matching method provided in the embodiments of this application will be described below.
[0051] Figure 3 A flowchart of a team matching method provided in an exemplary embodiment of this application is shown. This method can be... Figure 1 The method, performed by the server 221 or other computer device shown, includes the following steps:
[0052] Step 102: Determine the anchor virtual object.
[0053] For illustration purposes, the anchor virtual object belongs to the first candidate matching team, which includes n members, each corresponding to one of the n different professions.
[0054] In this process, the first candidate matching team includes n members who each have one occupation. The same member cannot have two or more occupations, and different members cannot have the same occupation. The number of occupations can be determined according to actual needs.
[0055] The following example uses the anchor virtual object as the first virtual object controlled by the first player, and n is 5.
[0056] The first player controls the first virtual object to enter the game. After the server detects the first virtual object entering the game, it identifies the first virtual object as the anchor virtual object and matches a target match team for the anchor virtual object according to the team matching method provided in the embodiments of this application, so that the virtual object controlled by the player can successfully form a team.
[0057] The target match team consists of n members, each consisting of a first virtual object controlled by the first player and virtual objects controlled by the other four players. The first virtual object and the other four virtual objects each belong to a specific class. For example, if the first virtual object belongs to the first class, it cannot belong to any other class in a virtual match, and the other four virtual objects cannot belong to the first class in a virtual match.
[0058] Step 104: If the compatibility of the first member of the first candidate matching team does not meet the first matching condition, calculate the contribution factor corresponding to the n occupations of the first member of the first candidate matching team.
[0059] For illustration purposes, the first team member is a virtual object distinct from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 team members to the compatibility of the first team member when the first team member is engaged in the m-th occupation.
[0060] The first team member's compatibility is calculated based on the position weights of the n team members in the first candidate matching team, who are engaged in n different professions.
[0061] In a schematic representation, the positional weights of the anchor virtual object in each of the n professions can be determined based on player preference data. This player preference data indicates the player controlling the anchor virtual object's familiarity with the n different professions. The player's familiarity with the n professions can be determined by the number of times the player has chosen each profession, or by the player's cumulative performance in historical virtual matches while playing that profession.
[0062] Optionally, the player controlling the anchor virtual object has a preference range of [0, 100] for one of the n professions. The sum of the preference ranges corresponding to the n professions is 100. Then, the sum of the position weights of the anchor virtual object in each of the n professions is also 100.
[0063] Taking n=5 as an example, based on the positional weights of the five members of the first candidate matching team in the five professions, the weight matrix of the first candidate matching team can be determined. The fit of the first member can then be calculated from this weight matrix. This weight matrix is a 5×5 matrix, where each row indicates the positional weight of each member in the five professions.
[0064] Taking the first row of the weight matrix as an example, which indicates the position weights of the anchor virtual object in the five professions, the position weights can be expressed as: T = [S1, S2, S3, S4, S5]. Among them, the values of S1, S2, S3, S4, and S5 are all in the range of [0, 100], and the sum of S1, S2, S3, S4, and S5 is 100.
[0065] For example, if the position weight of the anchor virtual object is T1 = [0, 52, 0, 0, 48], then the position weight of the anchor virtual object in the second profession is 52, the position weight in the fifth profession is 48, and the position weight in the other three professions is 0. In the first candidate matching team, the anchor virtual object can choose to engage in the second or fifth profession, and the corresponding position weight value is different depending on the profession chosen by the anchor virtual object.
[0066] Among them, the anchor virtual object is 100% of the sum of the position weights of the five occupations.
[0067] Optionally, the first team compatibility can be determined based on the position weights of the five members in the first candidate match team, each of the five professions. For example, the first team compatibility is the product of the five position weights of the five members. The professions of the five members can be either the default configuration professions or professions chosen by the player.
[0068] Indicatively, after determining the compatibility of the first team member, it is necessary to determine whether the compatibility of the first team member meets the first matching condition.
[0069] The first matching condition can be set according to actual needs. Optionally, the first matching condition is: the compatibility of the first team member exceeds the matching threshold. The matching threshold can be set according to actual needs, such as being determined based on the game attribute value of the anchor virtual object, or a pre-set fixed value.
[0070] Indicatively, if the compatibility of the first team members meets the first matching condition, the first candidate matching team is determined as the target matching team of the anchor virtual object; if the compatibility of the first team members does not meet the first matching condition, the contribution factors corresponding to the n occupations of the first team members in the first candidate matching team are calculated.
[0071] The first member refers to any virtual object in the first candidate matching team other than the anchor virtual object. The determination of the first member can be based on actual needs. For example, the first member can be a randomly determined virtual object, or the first member can be the last virtual object to enter the first candidate matching team.
[0072] To illustrate, when the compatibility of the first team member does not meet the first matching condition, it is necessary to calculate n contribution factors for the first team member. Among them, the m-th contribution factor is used to indicate the contribution value of the remaining n-1 team members to the compatibility of the first team member when the first team member is engaged in the m-th occupation.
[0073] Still using n=5 as an example, the first candidate matching team includes 5 members, each engaged in one of 5 different professions. Assuming the first member is the anchor virtual object, then the first member is one of the other four virtual objects besides the first member.
[0074] Based on the foregoing, the weight matrix of the first candidate matching team can be obtained when calculating the first team member's fit. Optionally, after determining the first team member, the position weights of the first team member's n professions can be determined based on the weight matrix. Based on the first team member's n position weights and the weight matrix, n contribution factors of the first team member can be obtained through n calculations.
[0075] For example, if the position weights of the first team member are 0, 51, 0, 0, and 49, and the first team member is engaged in the second profession, the position weight of the first team member in the first row of the weight matrix is 51.
[0076] Based on the 5×5 weight matrix of the first candidate matching team, the first row and second column are deleted to obtain a 4×4 matrix. This 4×4 weight matrix is used to indicate the weight matrices of the remaining four team members excluding the first team member. Subsequently, based on this 4×4 weight matrix, the second contribution factor corresponding to the first team member's second occupation can be obtained.
[0077] Optionally, the contribution factor can be defined as a function g(M). Here, M represents an (n-1)×(n-1) matrix in which n-1 values are sought such that -1n numbers satisfy that there is exactly one in each row and exactly one in each column, and the function g(M) is used to indicate the product of the above n-1 values.
[0078] Based on the foregoing, the m-th contribution value indicates the contribution of the remaining n-1 members to the compatibility of the first team when the first member is engaged in the m-th occupation. Optionally, based on the position weights of the n members of the first candidate matching team engaged in the n occupations, a weight matrix corresponding to the first candidate matching team can be determined. This matrix is a 5×5 matrix, and the k-th row of the weight matrix indicates the position weight of the k-th member engaged in the n occupations.
[0079] Still using n=5 as an example, assume the first team member is the first team member, and the position weights of the five professions the first team member engages in are 0, 51, 0, 0, and 49 respectively. Taking the calculation of the second contribution factor as an example, the second contribution factor is used to indicate the contribution value of the remaining four team members to the fit of the first team when the first team member engages in the second profession.
[0080] Based on the weight matrix of the first candidate matching team, deleting the row containing the first player and the column containing the second profession yields a 4×4 matrix, which is the (n-1)×(n-1) matrix M in the function g(M). Subsequently, according to the definition of the function g(M), the second contribution factor corresponding to the first player can be determined.
[0081] Similarly, based on the calculation method in the example above, we can determine the four contribution factors corresponding to the first team member's occupations of the first, third, fourth, and fifth types.
[0082] It should be understood that the above examples illustrate the calculation method of contribution factors in the form of a weight matrix. Other calculation methods of contribution factors, such as numerical values, vectors, tensors, etc., based on the position weights of n team members engaged in n different professions, are all within the protection scope of the embodiments of this application.
[0083] For example, after determining the professions of the n members in the first candidate matching team, the position weight of the m-th member can be uniquely determined. The m-th contribution factor can be calculated based on the unique position weights of the other n-1 members. Assuming n is 5, and the professions of the 5 members are the specified professions determined when the first candidate matching team was established, then the 5 position weights of the 5 members in their specified professions can be determined, denoted as W1, W2, W3, W4, and W5. Taking the calculation of the second contribution factor as an example, the product or sum of W1, W3, W4, and W5 can be used to determine the second contribution factor.
[0084] For example, based on the position weights of the i-th team member in each of the n professions, a vector can be determined; based on the n team members of the first candidate matching team, n vectors can be determined. Contribution factors can be calculated based on the n vectors. For instance, the calculation of the m-th contribution factor can be based on the n-1 vectors other than the m-th vector.
[0085] Step 106: Perform n calculations based on n contribution factors and the position weights of replacing virtual objects with n different professions to obtain the second team fit of the second candidate matching team.
[0086] For illustrative purposes, the replacement virtual object does not belong to the first candidate match team, and the second candidate match team is obtained by replacing the first member of the first candidate match team with the replacement virtual object.
[0087] If the compatibility of the first member of the first candidate matching team does not meet the first matching condition, the first candidate matching team cannot become the target matching team of the anchor virtual object. Members in the first candidate matching team need to be replaced so that the compatibility of the replaced candidate matching team meets the corresponding matching condition. The replaced candidate matching team can be called the second candidate matching team. The second candidate matching team is obtained by replacing the first member of the first candidate matching team with a replacement virtual object. The second candidate matching team and the first candidate matching team have only one different member, and that member is not the anchor virtual object; the remaining n-1 members of the second candidate matching team and the first candidate matching team are the same.
[0088] This is illustrative; the replacement virtual object is a virtual object that does not belong to the first candidate matchmaking team. Taking the anchor virtual object as the first virtual object controlled by the first player, and n as 5, the first candidate matchmaking team also includes virtual objects controlled by four other different players. The replacement virtual object is neither the first virtual object nor one of the other four virtual objects.
[0089] The determination of the replacement virtual object can be set according to actual needs. For example, since the team is matched for the anchor virtual object, the replacement virtual object can be determined based on the virtual combat attribute value of the anchor virtual object. Any virtual object whose attribute value is within the preset range of the anchor virtual object can be determined as the replacement virtual object; or, the virtual object with the smallest attribute value difference from the anchor virtual object can be determined as the replacement virtual object.
[0090] Indicatively, step 104 allows the calculation of n contribution factors for the first team member; after determining the replacement virtual object, the position weights of the replacement virtual object in n different professions can also be obtained. Subsequently, based on the n contribution factors and n position weights, the compatibility score of the second candidate matching team can be obtained. For example, multiplying the i-th contribution factor and the i-th position weight, after n multiplication operations, yields n products, and the sum of these n products is determined as the compatibility score of the second team.
[0091] Step 108: If the compatibility of the second team meets the second matching condition, the second candidate matching team is determined as the target matching team of the anchor virtual object.
[0092] The second matching condition can be the same as or different from the first matching condition. For example, the first matching condition is that the compatibility of the first player exceeds the matching threshold, and the second matching condition is that the compatibility of the second team exceeds the matching threshold; or the first matching condition is that the compatibility of the first player exceeds the matching threshold, and the second matching condition is that the compatibility of the second team exceeds the compatibility of the first player.
[0093] Optionally, the second matching condition includes one of the following: the compatibility of the second team exceeds the matching threshold; the compatibility of the second team is greater than the compatibility of the first team member; or the compatibility of the second team reaches the maximum value.
[0094] The maximum value of the second team compatibility means that after replacing each member of the first candidate matching team except for the anchor virtual object by using the replacement virtual object, n-1 team compatibility values can be obtained based on the replaced candidate matching teams. The maximum value among the n-1 team compatibility values is determined as the second team compatibility value, and the member to be replaced corresponding to the maximum value is the first member.
[0095] Schematic illustration: If the second team's compatibility meets the second matching condition, the second candidate matching team is determined as the target matching team for the anchor virtual object. It should be understood that if the second team's compatibility still does not meet the second matching condition, steps similar to step 106, such as replacing team members and calculating team compatibility, can be repeated until a team compatibility that meets the matching condition is obtained, and the candidate matching team corresponding to that team compatibility is determined as the target matching team.
[0096] In summary, the team matching method provided in this application, when the compatibility of the first member of the first candidate matching team does not meet the first matching condition, can quickly determine the compatibility of the second team through n calculations based on the n contribution factors of the first member and the n position weights of the replacement virtual object; when the compatibility of the second team meets the second matching condition, the second candidate matching team is determined as the target matching team of the anchor virtual object. Based on the n contribution factors of the first member, the compatibility of the second team can be obtained with only n calculations. Compared to n factorial calculations, the team matching method provided in this application reduces the computational complexity of the second team compatibility and the number of calculations, thereby improving computational efficiency.
[0097] Based on the foregoing, the n contribution factors corresponding to the first team member are calculated when the first team member's fit does not meet the first matching condition.
[0098] Optionally, the n contribution factors can also be calculated simultaneously with the first team member's fit. For example, after determining the first candidate matching team, the first team member's fit and the n contribution factors can be calculated based on the weight matrix of the first candidate matching team.
[0099] Similarly, after determining the positional weights of the first candidate matching team, we can also calculate the n contribution factors corresponding to the other members besides the first member. Based on the n contribution factors corresponding to each of the n members, we can obtain an n×n replacement matrix, which is used to calculate the second team fit of the second candidate matching team.
[0100] refer to Figure 2 , Figure 3 A flowchart of a team matching method provided in an exemplary embodiment of this application is shown. Step 104 can be implemented as steps 1041 and 1042, used to provide a method for calculating n contribution factors; step 106 can be implemented as steps 1061 and 1062, used to provide a method for calculating a second team fit. The specific details of the above steps are as follows:
[0101] Step 1041: Determine the weight matrix of the first candidate matching team.
[0102] Indicatively, the k-th row of the weight matrix indicates the position weights of the k-th team member for each of the n professions.
[0103] Taking n=5 as an example, the first candidate matching team includes 5 members, each of whom is engaged in 5 different professions. Each member has a different position weight corresponding to the 5 different professions. Based on the 5 position weights of the 5 members, the 5×5 weight matrix corresponding to the first candidate matching team can be determined.
[0104] For example, the weight matrix of the first candidate matching team can be represented as follows:
[0105]
[0106] In this context, the k-th row of the 5×5 weight matrix indicates the position weight of the k-th team member in each of the five professions.
[0107] Taking the anchor virtual object as the second team member as an example, the second row of the 5×5 weight matrix is used to indicate the position weight of the anchor virtual object in the five professions: the position weight of the anchor virtual object in the first profession is 98, and the position weight of the anchor virtual object in the fifth profession is 2.
[0108] Similarly, the remaining four rows of this 5×5 weight matrix are used to indicate the weights of the five positions corresponding to the remaining four team members.
[0109] It should be understood that, based on the foregoing, each team member can only engage in one profession, and each profession can only be engaged in by one team member. Therefore, the process of calculating the first team member's compatibility can be understood as: finding 5 numbers in the above 5×5 weight matrix, and each number satisfies that there is only one in each row and only one in each column.
[0110] Step 1042: Based on the weight matrix and the position weights of the first team member in the n professions, determine the contribution factors corresponding to the first team member in the first candidate matching team in the n professions.
[0111] For illustration purposes, the first team member is a virtual object that is distinct from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 team members to the first team member's compatibility when the first team member is engaged in the m-th occupation.
[0112] The description of the first player can be found in the aforementioned content.
[0113] Optionally, before calculating the n contribution factors corresponding to the first team member, it is also necessary to determine the first team member and determine the second candidate matching team based on the replacement of the virtual object and the replacement of the first team member. The team matching method provided in this application embodiment further includes:
[0114] Select any member from the first candidate matching team, excluding the anchor virtual object, as the first member;
[0115] Alternatively, the last member to enter the first candidate team can be designated as the first member.
[0116] Alternatively, determine the replacement profession corresponding to the largest weight value among the n position weights of the replacement virtual object, and determine the team member corresponding to the smallest weight value of the replacement profession in the first candidate matching team as the first team member.
[0117] The third implementation method can be understood as follows:
[0118] Taking the n position weights of the virtual object to be replaced as T = [S1, S2, S3, S4, S5] as an example, assuming that the third position weight S3 among the n position weights is the largest weight value, then the replacement profession corresponding to the largest weight value is the third profession. Subsequently, based on the weight matrix of the first candidate matching team, the third column containing the position weight corresponding to the third profession and the row containing the smallest weight value in the third column can be determined, and the team member corresponding to that row is determined as the first team member.
[0119] It should be understood that determining the first team member according to the implementation method given in the above example can identify the team members who need to be replaced in the first candidate matching team, so as to determine the second candidate matching team. Among them, the first team member determined according to the third implementation method can replace the team members who have a greater impact on the team compatibility, thereby reducing the number of times the team compatibility is calculated in the subsequent process and improving the calculation efficiency.
[0120] After determining the first team member, we can obtain the position weights of the first team member's n occupations; based on the weight matrix and the first team member's n position weights, we can determine the n contribution factors corresponding to the first team member.
[0121] Optionally, step 1042 can be implemented as follows:
[0122] Determine the position weight of the i-th occupation among the n occupations for the first team member, where i is a positive integer with an initial value of 1;
[0123] Delete the i-th column and the row containing the first player from the weight matrix to obtain the weight matrix for n-1 players;
[0124] Based on the weight matrix of n-1 team members, determine the contribution factor corresponding to the first team member engaging in the i-th occupation;
[0125] Let i = i + 1, and repeat the above three steps until n contribution factors are obtained.
[0126] Optionally, the contribution factor corresponding to the first player can be determined based on the weight matrix of n-1 players. Specifically, the contribution factor can be defined as a function g(M). Here, M represents an (n-1)×(n-1) matrix in which n-1 values are searched such that there is exactly one such value in each row and exactly one such value in each column. The function g(M) is used to indicate the product of the above n-1 values.
[0127] Given that there are multiple sets of n-1 values that satisfy the condition that there is only one value in each row and only one value in each column, the maximum value among the products of the multiple sets of n-1 values is determined as the final value of the function g(M).
[0128] Taking an n=5, a weight matrix M as given above, and the first player as an example, the position weights for the first player's five professions are 0, 51, 0, 0, and 49 respectively.
[0129] Let i = 1, then we can determine that the position weight of the first of the five professions for the first team member is 0. Subsequently, by deleting the first row and first column of the weight matrix M, we obtain the weight matrix for the remaining four team members. This weight matrix is a 4×4 matrix, which can be represented as follows:
[0130]
[0131] According to matrix M (1,1) And the defined function g(M) can determine the contribution factor for the first team member engaging in the second profession as g(M). 1,1 ).
[0132] Assuming i = 2, we can determine that the position weight of the first team member in the second of the five professions is 51. Then, by deleting the first row and second column of the weight matrix M, we obtain the weight matrix for the remaining four team members. This weight matrix is a 4×4 matrix, which can be represented as follows:
[0133]
[0134] According to matrix M (1,2) And the defined function g(M) can determine the contribution factor for the first team member engaging in the second profession as g(M). 1,2 ).
[0135] Similarly, assuming i = 3, we can determine that the position weight corresponding to the first team member engaging in the third profession is 0. The resulting weight matrix for the remaining four team members can be represented as follows:
[0136]
[0137] According to matrix M (1,3) And the defined function g(M) can determine the contribution factor of the first team member engaging in the fifth profession as g(M). 1,3 ).
[0138] Assuming i = 4, we can determine that the position weight corresponding to the first team member's fourth profession is 0. The weight matrix of the remaining 4 team members can be represented as follows:
[0139]
[0140] According to matrix M (1,4) And the defined function g(M) can determine the contribution factor of the first team member engaging in the fifth profession as g(M). 1,4 ).
[0141] Assuming i = 5, the position weight corresponding to the first team member engaging in the fifth profession is determined to be 49. The weight matrix of the remaining 4 team members can be represented as follows:
[0142]
[0143] According to matrix M (1,5) And the defined function g(M) can determine the contribution factor of the first team member engaging in the fifth profession as g(M). 1,5 ).
[0144] Optionally, based on the position weight and contribution factor of the first player, it is possible to determine the contribution value of the first player to the first player's fit in the first candidate matching team when the first player is engaged in 5 different professions.
[0145] For example, when the first player is engaged in the second profession, the contribution value to the first player's compatibility in the first candidate matching team is 51×g(M). 1,2 When the first player is engaged in the fifth profession, the contribution value to the first player's compatibility in the first candidate matching team is 49×g(M). 1,5 ).
[0146] It should be understood that since the position weights corresponding to the first, third, and fourth professions of the first team member are all 0, according to the calculation method given above, it can be determined that the contribution values corresponding to the first team member's first, third, and fourth professions are also all 0. Accordingly, the total contribution value of the first team member to the first team member's fit can be expressed as 51 × g(M 1,2 )+49×g(M 1,5 ).
[0147] Based on the foregoing, and using the n contribution factors corresponding to each of the n team members, an n×n replacement matrix can be obtained. This replacement matrix is used to calculate the second team fit of the second candidate matching team.
[0148] Taking n=5 as an example again, based on the 5 contribution factors corresponding to the 5 team members, a 5×5 replacement matrix can be obtained, which can be represented as follows:
[0149]
[0150] Optionally, the replacement matrix A is calculated simultaneously when calculating the compatibility of the first team member.
[0151] Step 1061: Based on the n contribution factors and the n position weights of the replacement virtual object, determine the n contribution values of the replacement virtual object to the fit of the second candidate matching team through n calculations.
[0152] For illustrative purposes, the replacement virtual object does not belong to the first candidate match team, and the second candidate match team is obtained by replacing the first member of the first candidate match team with the replacement virtual object.
[0153] The description of replacing virtual objects can be found in the foregoing content and will not be repeated here.
[0154] Taking n=5 as an example, the position weights of the virtual object in the five professions are T=[S1, S2, S3, S4, S5]. Based on the five contribution factors corresponding to the five professions of the first team member and the five position weights of the virtual object, given above, five calculations can determine the five contribution values of the virtual object to the compatibility of the second candidate matching team.
[0155] Optionally, step 1061 can be implemented as follows:
[0156] Based on the j-th contribution factor and the position weight of the replacement virtual object in the j-th occupation, the j-th contribution value of the replacement virtual object to the compatibility of the second candidate matching team is calculated, where j is a positive integer with an initial value of 1;
[0157] Let j = j + 1, and repeat the above step until n contribution values are obtained.
[0158] Similar to the aforementioned description of the first player's n contribution values to the first player's compatibility in the first candidate matching team, the n contribution values of the replaced virtual object to the second team's compatibility in the second candidate matching team can also be regarded as the product of n contribution factors and n position weights respectively.
[0159] For example, assuming j=2, the second contribution of the replaced virtual object to the fit of the second candidate matching team can be expressed as S2×g(M) 1,2 ).
[0160] Step 1062: Determine the sum of the n contribution values as the compatibility of the second team.
[0161] Based on the foregoing, the second candidate matching team is obtained by replacing the first member in the first candidate matching team with a replacement virtual object. Therefore, the compatibility of the second team can be calculated based on the replacement of the virtual object and the replacement of the first member.
[0162] Referring to the replacement matrix A given above, the compatibility of the second team can be expressed as:
[0163] U new =S1×A i,1 +S2×A i,2 +S3×A i,3 +S4×A i,4 +S5×A i,5 .
[0164] The compatibility of the second team can be abbreviated as:
[0165] It should be understood that replacing the first player with a replacement virtual object is equivalent to replacing the row where the first player is located with the position weight T of the replacement virtual object in the weight matrix M of the first candidate matching team.
[0166] Assuming the first player is the first player in the first candidate matching team, then the first row of the weight matrix is replaced with the five positional weights of the replacement virtual object. The fit of the second team can be expressed as:
[0167] U new =S1×g(M 1,1 )+S2×g(M 1,2 )+S3×g(M 1,3 )+S4×g(M 1,4 )+S5×g(M 1,5 ).
[0168] In summary, the team matching method provided in this application embodiment offers a method for calculating contribution factors and the compatibility of the second team: By using a weight matrix and the position weights of the first team member's n occupations, n contribution factors corresponding to the first team member can be determined; by performing n calculations on the n contribution factors corresponding to the first team member and the n position weights of the virtual replacement object, n contribution values of the virtual replacement object to the compatibility of the second team in the second candidate matching team can be determined. The sum of the n contribution values is then used to determine the compatibility of the second team, thereby reducing the computational complexity of the second team compatibility. Specifically, the calculated n contribution factors are used to calculate the second team compatibility, ensuring that the calculation of the second team compatibility can be obtained through n calculations, avoiding n factorial calculations.
[0169] Optionally, the n contribution factors can be calculated using the weight matrix and the defined function g(M), thus enabling the calculation of contribution factors to be achieved through simple matrix operations, thereby reducing the computational complexity of the second team fit.
[0170] Optionally, the compatibility of the second team can be determined by the sum of n contribution values, thus enabling the calculation of the compatibility of the second team to be achieved through a simple addition operation, which can also reduce the computational complexity and improve the computational efficiency.
[0171] To illustrate, let's take an example where n is 5. Figure 4 This application illustrates a flowchart of an exemplary embodiment for calculating team compatibility, the method of which can be performed by... Figure 1 The server 221 or other computer device shown performs the following steps:
[0172] Step 201: Calculate team compatibility U.
[0173] The team compatibility U is calculated based on the initially assigned candidate matching teams. The calculation of team compatibility U can be found in the aforementioned content.
[0174] Assuming the initially assigned candidate matching team is the first candidate matching team, the team compatibility U can be understood as the first member compatibility in the above embodiment.
[0175] Step 202: Determine the replacement virtual object to replace the xth team member.
[0176] For illustrative purposes, the relevant descriptions of replacing virtual objects can be found in the foregoing content, and will not be repeated here.
[0177] The replacement virtual object is used to replace the xth member in the initially assigned candidate matching team. The xth member is a virtual object other than the anchor virtual object.
[0178] Assuming the initially assigned candidate matching team is the first candidate matching team, then the xth member can be understood as the first member in the above embodiment.
[0179] Step 203: Determine if x is not greater than 5.
[0180] For illustration purposes, if x is greater than 5, it means that the xth member is not a member of the initially assigned candidate matching team, and the calculation will end at this time; if x is not greater than 5, it means that the xth member is a member of the initially assigned candidate matching team, and step 204 will be executed at this time.
[0181] Step 204: Calculate the new team compatibility U new .
[0182] Among them, the new team compatibility is U new The calculation can be referenced from the above content.
[0183] Assuming the initially assigned candidate matchmaking team is the first candidate matchmaking team, then the new team compatibility U new This can be understood as the second team fit in the above embodiments.
[0184] Step 205: Determine U new Is it greater than U?
[0185] Indicative, in U new If the new team compatibility is greater than U, it means the new team compatibility is greater than the compatibility of the initial candidate teams. In this case, proceed to step 206. new If the result is greater than U, it means that the new team compatibility is greater than the team compatibility of the initial candidate matching teams. In this case, let x++ so that x = x+1, and then repeat step 203 until the calculation ends.
[0186] Step 206: Determine the replacement candidate matching teams based on the replaced virtual object.
[0187] Assuming the initially assigned candidate matchmaking team is the first candidate matchmaking team, in U new If the value is greater than U, it means that the compatibility of the second team is greater than that of the first team member. In this case, the replacement virtual object is used to replace the xth team member to determine the candidate matching team after replacement. This team can be understood as the candidate matching team of the person in the above embodiment.
[0188] In summary, the method for calculating team compatibility provided in this application's embodiments determines a new candidate matching team by replacing each member of a candidate matching team with a virtual object. The new candidate matching team achieves its maximum team compatibility value.
[0189] refer to Figure 2 , Figure 5 A flowchart of a team matching method provided in an exemplary embodiment of this application is shown. The method may also optionally include steps 103, 1091, and 1092, which are described in detail below:
[0190] Step 103: Determine the replacement virtual object from the candidate virtual objects in the matching pool.
[0191] Indicatively, the matching pool includes at least one candidate virtual object that has not yet been matched with a team.
[0192] The replacement virtual object is used to replace the first member in the first candidate matching team to obtain the second candidate matching team. The attribute difference between the replacement virtual object and the anchor virtual object is within a preset range.
[0193] Optionally, the replacement virtual object can be determined according to actual needs. For example, the attribute difference between the replacement virtual object and the anchor virtual object is less than a fixed value; or the replacement virtual object is the virtual object with the smallest attribute difference from the anchor virtual object.
[0194] Taking the example where the anchor virtual object is the first virtual object controlled by the first player, and the matchmaking pool includes a second virtual object controlled by the second player and a third virtual object controlled by the third player. Assume the attribute value of the first virtual object is 50, the attribute value of the second virtual object is 60, and the attribute value of the third virtual object is 75.
[0195] If the attribute difference between the replacement virtual object and the anchor virtual object is within 30, either the second virtual object or the third virtual object can be determined as the replacement virtual object; if the replacement virtual object is the virtual object with the smallest attribute difference from the anchor virtual object, then the second virtual object is determined as the replacement virtual object.
[0196] Step 1091: Determine the third candidate matching team.
[0197] Indicatively, the third candidate match team is the team that virtually battles against the target match team.
[0198] It should be understood that the third candidate matching team also includes n members, and the n members correspond to n different professions; and the process of determining the third candidate matching team is similar to the process of determining the target matching team, which can be referred to the above content and will not be repeated here.
[0199] Step 1092: If the third candidate matching team's third team compatibility meets the third matching condition and the difference in team attributes between the third candidate matching team and the target matching team is within a preset range, then the third candidate matching team is determined as the match matching team of the anchor virtual object.
[0200] Among them, team attributes are used to indicate the team's overall strength value.
[0201] Optionally, the team attribute value is the sum of the strength values of the n members included in the team.
[0202] In summary, the team matching method provided in this application reduces the number of times team compatibility is calculated by determining a replacement virtual object from the candidate virtual objects in the matching pool, so as to select a virtual object whose attribute difference with the anchor virtual object is within a preset range; and determines the match matching team based on the third candidate matching team as the anchor virtual object, so that the virtual match can start.
[0203] In one optional implementation scenario, assuming the anchor virtual object is the first virtual object controlled by the first player, in order to start the virtual game, it is necessary to match the first virtual object with a target match team and a match match team of similar strength.
[0204] Still using n=5 as an example, assuming the matching result for the first virtual object includes two candidate matching teams, then the matching result includes 10 virtual objects. Each candidate matching team consists of any 5 virtual objects, and each virtual object can belong to only one candidate matching team. Among them, the team to which the anchor virtual object belongs is the target matching team that needs to be determined, and the other team is the match matching team that needs to be determined.
[0205] Figure 6 This application illustrates a team matching method provided in an exemplary embodiment, which can be used by... Figure 1 The method, performed by the server 221 or other computer device shown, includes the following steps:
[0206] Step 301: Determine the anchor virtual player.
[0207] Step 302: Add the anchor virtual player to the match results.
[0208] Indicatively, the anchor virtual object belongs to the first candidate matching team, which includes n members, each corresponding to a different type of profession. The first candidate matching team is a candidate matching team in the matching results, and it is a temporary team randomly matched to determine the target matching team for the anchor virtual object.
[0209] The descriptions of anchor virtual players and first-choice matchmaking teams are as described above and will not be repeated here.
[0210] Step 303: Determine the replacement virtual object from the candidate virtual objects in the matching pool.
[0211] Indicatively, the matching pool includes at least one candidate virtual object that has not yet been matched with a team.
[0212] The descriptions of the candidate virtual objects are as described above and will not be repeated here.
[0213] Step 304: Determine whether the number of virtual objects in the matching results meets the preset number.
[0214] For illustrative purposes, if the number of virtual objects in the matching results does not meet the preset number, step 305 is executed; if the number of virtual objects in the matching results meets the preset number, step 306 is executed.
[0215] Based on the foregoing, in this embodiment of the application, taking n as 5 as an example, step 304 can be implemented as: determining whether the number of virtual objects in the matching result reaches 10.
[0216] Step 305: Add the replacement dummy object to the matching results.
[0217] For example, if n is 5, and the number of virtual objects in the matching results has not reached 10, the replacement virtual object is added to the matching results, and step 303 is re-executed to determine a new replacement virtual object.
[0218] If the number of virtual objects in the matching results reaches 10, proceed to step 306.
[0219] Step 306: Determine whether the matching result meets the matching conditions.
[0220] For illustration purposes, if the matching result meets the matching conditions, the matching is successful, and the target matching team and the match matching team of the anchor virtual object are determined according to the matching result; if the matching result does not meet the matching conditions, step 307 is executed.
[0221] The matching criteria can be determined according to actual needs.
[0222] Optionally, the matching conditions include at least one of the following: the team compatibility of the target matching team and the match matching team both exceed the matching threshold; the difference in team attributes between the target matching team and the match matching team is within a preset range.
[0223] Step 307: Replace each virtual object except the anchor virtual object with a replacement virtual object.
[0224] If the matching result does not meet the matching conditions, replace virtual objects one by one except for the anchor virtual object, so that the members in the target matching team and the match matching team that need to be determined will change.
[0225] Step 308: Calculate the team compatibility after replacement.
[0226] After replacing the virtual object, the members of the two candidate matching teams will change. At this time, it is necessary to calculate the team compatibility of the two candidate matching teams.
[0227] The calculation of team compatibility can be referred to the above content and will not be repeated here.
[0228] Step 309: Determine whether the compatibility of the replaced team is greater than that of the original team.
[0229] After calculating the team fit of the two candidate matching teams after replacement, the team fit of the replacement teams is compared with the team fit of the original candidate matching teams.
[0230] For illustrative purposes, if the compatibility of the replaced team is greater than that of the original team, proceed to step 310; if the compatibility of the replaced team is not greater than that of the original team, proceed to step 303.
[0231] Step 310: Use a replacement virtual object to perform the replacement, and determine the replacement result as the new matching result.
[0232] It should be understood that when the compatibility of the replaced team is greater than that of the original team, the two candidate teams after the replacement are closer to the matching conditions of the matching result than the original candidate teams. Therefore, a replacement virtual object is used to replace the original team so that the replacement result can be determined as the new matching result; then step 303 is repeated until a match is successful.
[0233] In summary, the team matching method provided in this application can quickly determine the target matching team and the match matching team for the anchor virtual object by replacing the virtual objects one by one in the matching result, thereby simplifying the calculation process of team compatibility and improving calculation efficiency.
[0234] The following are device embodiments of this application. For details not described in detail in the device embodiments, please refer to the corresponding descriptions in the above method embodiments. They will not be repeated here.
[0235] Figure 7 This diagram illustrates a team matching apparatus provided in an exemplary embodiment, the apparatus comprising:
[0236] The determination module 720 is used to determine the anchor point virtual object. The anchor point virtual object belongs to the first candidate matching team. The first candidate matching team includes n members, and the n members correspond to n different professions.
[0237] The calculation module 740 is used to calculate the contribution factors of the first member of the first candidate matching team for each of the n occupations they engage in when the first member of the first candidate matching team does not meet the first matching condition. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the first member's compatibility when the first member engages in the m-th occupation.
[0238] The calculation module 740 is also used to perform n calculations based on n contribution factors and the position weights of the replacement virtual object in n professions to obtain the second team fit of the second candidate matching team. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member with the replacement virtual object in the first candidate matching team.
[0239] The determination module 720 is also used to determine the second candidate matching team as the target matching team of the anchor virtual object when the second team's compatibility meets the second matching condition.
[0240] Optionally, the calculation module 740 is used to determine the weight matrix of the first candidate matching team, where the k-th row of the weight matrix indicates the position weight of the k-th team member in each of the n occupations; and the contribution factor is determined based on the weight matrix and the position weight of the first team member in each of the n occupations.
[0241] Optionally, the calculation module 740 is used to determine the position weight of the i-th occupation among the n occupations of the first team member, where i is a positive integer with an initial value of 1; delete the i-th column and the row where the first team member is located in the weight matrix to obtain the weight matrix of n-1 team members; determine the contribution factor corresponding to the i-th occupation of the first team member based on the weight matrix of n-1 team members; let i = i + 1, and repeat the above three steps until n contribution factors are obtained.
[0242] Optionally, the calculation module 740 is used to determine, through n calculations, the n contribution values of the replacement virtual object to the fit of the second candidate matching team in the second team based on n contribution factors and n position weights; and to determine the fit of the second team by the sum of the n contribution values.
[0243] Optionally, the calculation module 740 is used to calculate the j-th contribution value of the replacement virtual object to the fit of the second candidate matching team in the second team based on the j-th contribution factor and the position weight of the replacement virtual object in the j-th occupation, where j is a positive integer with an initial value of 1; let j = j + 1, and repeat the above step until n contribution values are obtained.
[0244] Optionally, the determining module 720 is further configured to determine any member of the first candidate matching team other than the anchor virtual object as the first member; or, determine the member who last entered the team in the first candidate matching team as the first member; or, determine the replacement profession corresponding to the largest weight value among the n position weights of the replacement virtual object, and determine the member corresponding to the smallest weight value of the replacement profession in the first candidate matching team as the first member.
[0245] Optionally, the determining module 720 is further configured to determine a replacement virtual object among the candidate virtual objects in the matching pool, the matching pool including at least one candidate virtual object that has not yet been matched with a team, and the attribute difference between the replacement virtual object and the anchor virtual object is within a preset range.
[0246] Optionally, the second matching condition includes one of the following: the compatibility of the second team exceeds the matching threshold;
[0247] The second team's compatibility is greater than the first team's compatibility; the second team's compatibility reaches its maximum value.
[0248] Optionally, the determining module 720 is also used to determine a third candidate matching team, which is a team that virtually competes against the target matching team; if the third team compatibility of the third candidate matching team meets the third matching condition and the difference in team attributes between the third candidate matching team and the target matching team is within a preset range, the third candidate matching team is determined as the match matching team of the anchor virtual object.
[0249] Figure 8 A structural block diagram of a server 800 provided in an exemplary embodiment of this application is shown. The server 800 includes a processor 801 and a memory 802.
[0250] Processor 801 may include one or more processing cores, such as a quad-core processor or an octa-core processor. Processor 801 may be implemented using at least one hardware form selected from DSP (Digital Signal Processing), FPGA (Field-Programmable Gate Array), and PLA (Programmable Logic Array). Processor 801 may also include a main processor and a coprocessor. The main processor, also known as a CPU (Central Processing Unit), is used to process data in the wake-up state; the coprocessor is a low-power processor used to process data in the standby state. In some embodiments, processor 801 may integrate a GPU (Graphics Processing Unit), which is responsible for rendering and drawing the content to be displayed on the screen. In some embodiments, processor 801 may also include an AI (Artificial Intelligence) processor, which is used to handle computational operations related to machine learning.
[0251] The memory 802 may include one or more computer-readable storage media, which may be non-transitory. The memory 802 may also include high-speed random access memory and non-volatile memory, such as one or more disk storage devices or flash memory devices. In some embodiments, the non-transitory computer-readable storage media in the memory 802 are used to store at least one instruction, which is executed by the processor 801 to implement the team matching method provided in the method embodiments of this application.
[0252] Those skilled in the art will understand that Figure 8 The structure shown does not constitute a limitation on server 800 and may include more or fewer components than shown, or combine certain components, or use different component arrangements.
[0253] This application also provides a computer device, which includes a processor; the processor is used to determine an anchor virtual object, the anchor virtual object belonging to a first candidate matching team, the first candidate matching team including n members, the n members corresponding to n different professions;
[0254] If the compatibility of the first member in the first candidate matching team does not meet the first matching condition, calculate the contribution factor corresponding to the first member in the first candidate matching team engaging in n different professions. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the compatibility of the first member when the first member is engaged in the m-th profession.
[0255] The second candidate matching team's fit is obtained by performing n calculations based on n contribution factors and the position weights of the replacement virtual object in n different professions. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member of the first candidate matching team with the replacement virtual object.
[0256] If the compatibility of the second team meets the second matching condition, the second candidate matching team will be determined as the target matching team of the anchor virtual object.
[0257] This application also provides a computer-readable storage medium storing a computer program for execution by a processor to implement the team matching method described above.
[0258] This application also provides a chip, which includes programmable logic circuits and / or program instructions, for implementing the team matching method described above when the chip is running.
[0259] This application also provides a computer program product, which includes computer instructions stored in a computer-readable storage medium. A processor reads from the computer-readable storage medium and executes the computer instructions to implement the team matching method described above.
[0260] It should be understood that "multiple" as used in this article refers to two or more. "And / or" describes the relationship between related objects, indicating that three relationships can exist. For example, A and / or B can represent: A alone, A and B simultaneously, or B alone. The character " / " generally indicates that the preceding and following related objects have an "or" relationship.
[0261] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.
[0262] The above description is merely an optional embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.
Claims
1. A team matching method, characterized by, The method includes: Determine an anchor point virtual object, which belongs to a first candidate matching team. The first candidate matching team includes n members, and the n members correspond to n different professions. If the first team fit of the first candidate matching team does not meet the first matching condition, calculate the contribution factor of the first member in the first candidate matching team for each of the n professions. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the first team fit when the first member is engaged in the m-th profession. The second candidate matching team's fit is obtained by performing n calculations based on n contribution factors and the position weights of the replacement virtual object in the n professions. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member with the replacement virtual object in the first candidate matching team. If the compatibility of the second team meets the second matching condition, the second candidate matching team will be determined as the target matching team of the anchor virtual object. Wherein, the first team compatibility is calculated based on the position weights of the n members in the first candidate matching team who are engaged in n different professions; the value of the position weight is determined based on the tendency data of each member, which is used to indicate the familiarity of each member with the n different professions; the first matching condition is that the first team compatibility exceeds the matching threshold; the second matching condition includes one of the following: the second team compatibility exceeds the matching threshold; the second team compatibility is greater than the first team compatibility; the second team compatibility reaches the maximum value.
2. The method of claim 1, wherein, The calculation of the contribution factor for each of the n occupations undertaken by the first member of the first candidate matched team includes: Determine the weight matrix of the first candidate matching team, wherein the k-th row of the weight matrix is used to indicate the position weight of the k-th team member in each of the n professions; The contribution factor is determined based on the weight matrix and the position weights of the first team member in the n professions.
3. The method of claim 2, wherein, The step of determining the contribution factor based on the weight matrix and the position weights of the first team member in the n professions includes: Determine the position weight of the i-th occupation among the n occupations for the first team member, where i is a positive integer with an initial value of 1; Delete the i-th column and the row containing the first player from the weight matrix to obtain the weight matrix of the n-1 players; Based on the weight matrix of the n-1 team members, determine the contribution factor corresponding to the first team member's occupation of the i-th profession; Let i = i + 1, and repeat the above three steps until the n contribution factors are obtained.
4. The method according to any one of claims 1 to 3, characterized in that, The step of performing n calculations based on n contribution factors and the positional weights of the replaced virtual objects performing the n occupations to obtain the second team fit of the second candidate matching team includes: Based on the n contribution factors and n position weights, the n contribution values of the replacement virtual object to the fit of the second candidate matching team are determined through n calculations; The sum of the n contribution values is determined as the second team fit.
5. The method of claim 4, wherein, The step of determining the n contribution values of the replacement virtual object to the fit of the second candidate matching team in the second team through n calculations based on the n contribution factors and n position weights includes: Based on the j-th contribution factor and the position weight of the replacement virtual object in the j-th occupation, the j-th contribution value of the replacement virtual object to the compatibility of the second candidate matching team is calculated, where j is a positive integer with an initial value of 1; Let j = j + 1, and repeat the above step until the n contribution values are obtained.
6. The method according to any one of claims 1 to 3, characterized in that, The method further includes: Any member of the first candidate matching team, excluding the anchor virtual object, is selected as the first member. or, The last member to enter the first candidate matching team is determined as the first member; or, Determine the replacement profession corresponding to the maximum weight value among the n position weights of the replacement virtual object, and determine the member corresponding to the minimum weight value of the replacement profession in the first candidate matching team as the first member.
7. The method according to any one of claims 1 to 3, characterized in that, The method further includes: The replacement virtual object is determined from the candidate virtual objects in the matching pool, which includes at least one candidate virtual object that has not yet been matched with a team, and the attribute difference between the replacement virtual object and the anchor virtual object is within a preset range.
8. The method according to any one of claims 1 to 3, characterized in that, The method further includes: A third candidate matching team is determined, which is the team that will virtually compete against the target matching team; If the third candidate matching team's third team compatibility meets the third matching condition, and the difference in team attributes between the third candidate matching team and the target matching team is within a preset range, then the third candidate matching team is determined as the match matching team of the anchor virtual object.
9. A team matching apparatus characterized by comprising: The device includes: The determination module is used to determine the anchor point virtual object, which belongs to the first candidate matching team. The first candidate matching team includes n members, and the n members correspond to n different professions. The calculation module is used to calculate the contribution factor of the first member in the first candidate matching team for each of the n occupations when the first team fit of the first candidate matching team does not meet the first matching condition. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the first team fit when the first member is engaged in the m-th occupation. The calculation module is also used to perform n calculations based on n contribution factors and the position weights of the replacement virtual object in the n occupations to obtain the second team fit of the second candidate matching team. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member with the replacement virtual object in the first candidate matching team. The determining module is further configured to determine the second candidate matching team as the target matching team of the anchor virtual object when the second team's compatibility meets the second matching condition; Wherein, the first team compatibility is calculated based on the position weights of the n members in the first candidate matching team who are engaged in n different professions; the value of the position weight is determined based on the tendency data of each member, which is used to indicate the familiarity of each member with the n different professions; the first matching condition is that the first team compatibility exceeds the matching threshold; the second matching condition includes one of the following: the second team compatibility exceeds the matching threshold; the second team compatibility is greater than the first team compatibility; the second team compatibility reaches the maximum value.
10. A computer device, comprising: The computer device includes a processor; The processor is used to determine an anchor virtual object, the anchor virtual object belonging to a first candidate matching team, the first candidate matching team including n members, the n members corresponding to n different professions; If the first team fit of the first candidate matching team does not meet the first matching condition, calculate the contribution factor of the first member in the first candidate matching team for each of the n professions. The first member is a virtual object that is different from the anchor virtual object. The m-th contribution factor is used to indicate the contribution value of the remaining n-1 members to the first team fit when the first member is engaged in the m-th profession. The second candidate matching team's fit is obtained by performing n calculations based on n contribution factors and the position weights of the replacement virtual object in the n professions. The replacement virtual object does not belong to the first candidate matching team. The second candidate matching team is obtained by replacing the first member with the replacement virtual object in the first candidate matching team. If the compatibility of the second team meets the second matching condition, the second candidate matching team will be determined as the target matching team of the anchor virtual object. Wherein, the first team compatibility is calculated based on the position weights of the n members in the first candidate matching team who are engaged in n different professions; the value of the position weight is determined based on the tendency data of each member, which is used to indicate the familiarity of each member with the n different professions; the first matching condition is that the first team compatibility exceeds the matching threshold; the second matching condition includes one of the following: the second team compatibility exceeds the matching threshold; the second team compatibility is greater than the first team compatibility; the second team compatibility reaches the maximum value.
11. A computer readable storage medium, characterized in that, The storage medium stores a computer program that is executed by a processor to implement the team matching method as described in any one of claims 1 to 8.
12. A chip, characterized in that, The chip includes programmable logic circuitry and / or program instructions, which, when the chip is running, are used to implement the team matching method as described in any one of claims 1 to 8.
13. A computer program product or computer program, characterized in that, The computer program product or computer program includes computer instructions stored in a computer-readable storage medium, and a processor reads from and executes the computer instructions to implement the team matching method as described in any one of claims 1 to 8.
Citation Information
Patent Citations
Job matching service method based on NCS and the system thereof
KR1020180051377A
Fantasy football game and method of playing same
US20100279774A1