A system and method for grouping a plurality of users
The system optimizes user grouping in online gaming by using compatibility matrices and advanced algorithms to create balanced matches, addressing issues of unbalanced gameplay and device disparities, thereby enhancing retention and engagement.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-09-16
- Publication Date
- 2026-03-26
AI Technical Summary
Conventional matchmaking systems in online gaming often fail to create balanced and engaging matches due to reliance on limited parameters, leading to unbalanced gameplay, device performance disparities, and neglect of player preferences, resulting in reduced retention and engagement.
A system and method for grouping users based on compatibility matrices and game environments using advanced algorithms like maximum weight matching and mixed-integer linear programming, considering parameters such as skill, experience, and device compatibility to optimize pairings.
Enhances user retention and engagement by ensuring fair and engaging gameplay experiences through balanced matches, promoting a sense of fairness and satisfaction among players.
Smart Images

Figure IB2025059256_26032026_PF_FP_ABST
Abstract
Description
[0001] TITLE OF INVENTION:
[0002] A SYSTEM AND METHOD FOR GROUPING A PLURALITY OF USERS
[0003] CROSS-REFERENCE TO RELATED APPLICATIONS AND PRIORITY
[0004] The present application claims priority from the Indian patent application having application number 202411071127 filed on 20 September 2024, incorporated herein by a reference.
[0005] FIELD OF INVENTION
[0006] The presently disclosed embodiments are related, in general, to the field of online gaming. More particularly, the presently disclosed embodiments are related to a system and a method for grouping a plurality of users in one or more game environments.
[0007] BACKGROUND OF THE INVENTION
[0008] This section is intended to introduce the reader to various aspects of art, which may be related to various aspects of the present disclosure that are described or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present disclosure. Accordingly, it should be understood that these statements in this background section are to be read in this light, and not as admissions of prior art. Similarly, a problem mentioned in the background section or associated with the subject matter of the background section should not be assumed to have been previously recognized in the prior art. The subject matter in the background section merely represents different approaches, which in and of themselves may also correspond to implementations of the claimed technology.
[0009] Online gaming has become a popular form of entertainment and social interaction. With the advent of the internet and advancements in technology, players from around the world can compete against each other in a variety of games. These games can range from simple, casual games to complex, strategy-based games. In the realm of online gaming, player matchmaking may be a crucial aspect that contributes to the overall gaming experience.
[0010] Matchmaking refers to the process of pairing players together for online play sessions. It aims to create balanced and fair matches, where players of similar skill levels are matched together. This may be done to ensure that the game may be enjoyable for all participants, and that no player has an unfair advantage over others. However, one of the challenges in online gaming is to ensure fair and balanced matches. Player retention and engagement are pivotal to the success of online gaming platforms which cater to a diverse audience playing various game formats, including both two-player and non- two-player games. However, conventional matchmaking systems often fall short in maintaining these critical metrics. A primary challenge lies in the unbalanced nature of traditional matchmaking, which frequently relies on limited parameters such as win-loss records or experience levels. This can result in highly skilled players being paired with those who are less experienced, leading to frustrating and one-sided matches. Such experiences can cause the less skilled players to feel discouraged and disengaged, ultimately leading to their premature exit from the platform and a subsequent decrease in overall retention rates.
[0011] The diversity of game formats offered by online gaming complicates the matchmaking process by grouping players inappropriately across different game types, such as a strategy game expert being paired with a novice in a fast-paced action game. This mismatch can lead to suboptimal gaming experiences for both players, reducing their overall satisfaction and engagement with the platform.
[0012] Another significant issue impacting retention and engagement is the performance disparity between players' devices. The speed and capability of a player's device can heavily influence their gaming experience, particularly in real-time multiplayer settings. When players with slower devices are matched against those with faster, more powerful hardware, the resulting lag and delays can disrupt the gameplay. This not only frustrates the player with the slower device but can also negatively affect the experience of all participants in the game, further contributing to disengagement.
[0013] Conventional matchmaking systems tend to focus on immediate gameplay rather than long-term player engagement. By neglecting to consider factors such as player preferences, playing styles, and social interactions, these systems miss critical opportunities to enhance engagement. Over time, this oversight can lead to players losing interest in the gaming platform, resulting in reduced retention. Therefore, addressing these challenges through a more sophisticated matchmaking system is essential for maximizing player’s retention and engagement on online gaming platforms.
[0014] In light of the above stated discussion, there exists a need of a system and a method for grouping a plurality of users in one or more game environments to overcome at least one of the above stated problems. SUMMARY OF THE INVENTION
[0015] Before the present system and device and its components are summarized, it is to be understood that this disclosure is not limited to the system and its arrangement as described, as there can be multiple possible embodiments which are not expressly illustrated in the present disclosure. The present disclosure overcomes one or more shortcomings of the prior art and provides additional advantages discussed throughout the present disclosure. Additional features and advantages are realized through the techniques of the present disclosure. It is also to be understood that the terminology used in the description is for the purpose of describing the versions or embodiments only and is not intended to limit the scope of the present application. This summary is not intended to identify essential features of the claimed subject matter nor is it intended for use in detecting or limiting the scope of the claimed subject matter.
[0016] According to embodiments illustrated herein, a method for grouping a plurality of users is disclosed. In one implementation of the present disclosure, the method may involve various steps performed by a processor. The method may involve a step of receiving one or more matchmaking requests associated with the plurality of users. Further, the method may involve a step of computing one or more compatibility matrices corresponding to one or more pair of users from the plurality of users based on the one or more matchmaking requests. Furthermore, the method may involve a step of identifying one or more game environments for grouping of the plurality of users. The one or more game environments may comprise one of a two-user environment, a non-two user environment, or a combination of both. Furthermore, the method may involve a step of grouping the plurality of users using one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices. In an embodiment, a first assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the two-user environment. In another embodiment, a second assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the non-two user environment. Additionally, the method may involve a step of providing the grouped plurality of users, for collaboration in the one or more game environments.
[0017] According to embodiments illustrated herein, a system to group the plurality of users is disclosed. In one implementation of the present disclosure, the system may comprise the processor and a memory. The memory is communicatively coupled to the processor. Further, the memory may be configured to store processor executable instructions, which, on execution, may cause the processor to receive one or more matchmaking requests associated with the plurality of users. Further, the processor may be configured to compute the one or more compatibility matrices corresponding to the one or more pair of users from the plurality of users based on the one or more matchmaking requests. Furthermore, the processor may be configured to identify the one or more game environments for grouping of the plurality of users. The one or more game environments may comprise one of the two-user environment, the non-two user environment, or the combination of both. Furthermore, the processor may be configured to group the plurality of users using one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices. In an embodiment, the first assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the two-user environment. In another embodiment, the second assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the non-two user environment. Additionally, the processor may be configured to provide the grouped plurality of users, for collaboration in the one or more game environments.
[0018] According to embodiments illustrated herein, there is provided a non-transitory computer- readable storage medium having stored thereon, a set of computer-executable instructions causing a computer comprising one or more processors to perform various steps. The steps may involve receiving the one or more matchmaking requests associated with the plurality of users. Further, the steps may involve computing the one or more compatibility matrices corresponding to the one or more pair of users from the plurality of users based on the one or more matchmaking requests. Furthermore, the steps may involve identifying the one or more game environments for grouping of the plurality of users. The one or more game environments may comprise one of the two-user environment, the non-two user environment, or the combination of both. Furthermore, the steps may involve grouping the plurality of users using the one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices. In an embodiment, the first assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the two-user environment. In another embodiment, the second assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the non-two user environment. Additionally, the steps may involve providing the grouped plurality of users, for collaboration in the one or more game environments.
[0019] The foregoing summary is illustrative only and is not intended to be in any way limiting. In addition to the illustrative aspects, embodiments, examples, and features described above, further aspects, embodiments, and features will become apparent by reference to the drawings and the following detailed description. BRIEF DESCRIPTION OF DRAWINGS
[0020] The detailed description is described with reference to the accompanying figures. In the figures, same numbers are used throughout the drawings to refer like features and components. Embodiments of a present disclosure will now be described, with reference to the following diagrams below wherein:
[0021] Figure 1 illustrates a block diagram describing a system (100) to group a plurality of users in one or more game environments, in accordance with at least one embodiment of present subject matter.
[0022] Figure 2 illustrates a block diagram (200) showing an overview of various components of an application server (101) configured for grouping the plurality of users, in accordance with at least one embodiment of present subject matter.
[0023] Figure 3 illustrates a flowchart describing a method (300) for grouping the plurality of users, in accordance with at least one embodiment of present subject matter, and
[0024] Figure 4 illustrates a block diagram (400) of an exemplary computer system (401) for implementing embodiments consistent with the present subject matter.
[0025] It should be noted that the accompanying figures are intended to present illustrations of exemplary embodiments of the present disclosure. These figures are not intended to limit the scope of the present disclosure. It should also be noted that accompanying figures are not necessarily drawn to scale.
[0026] DETAILED DESCRIPTION OF THE INVENTION
[0027] Reference throughout the specification to “various embodiments,” “some embodiments,” “one embodiment,” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, appearances of the phrases “in various embodiments,” “in some embodiments,” “in one embodiment,” or “in an embodiment” in places throughout the specification are not necessarily all referring to the same embodiment. Furthermore, the features, structures or characteristics may be combined in any suitable manner in one or more embodiments.
[0028] The words "comprising," "having," "containing," and "including," and other forms thereof, are intended to be equivalent in meaning and be open ended in that an item or items following any one of these words is not meant to be an exhaustive listing of such item or items or meant to be limited to only the listed item or items. It must also be noted that, the singular forms "a," "an," and "the" include plural references unless the context clearly dictates otherwise. Although any methods similar or equivalent to those described herein can be used in the practice or testing of embodiments of the present disclosure, the exemplary methods are described. The disclosed embodiments are merely exemplary of the disclosure, which may be embodied in various forms.
[0029] The terminology “users”, “plurality of users”, “player”, and “plurality of players” has the same meaning and are used alternatively throughout the specification. The terminology “game environment”, “one or more game environments”, and “game platform” has the same meaning and are used alternatively throughout the specification.
[0030] In the competitive world of gaming, effective matchmaking is important for maximizing user retention and engagement. By strategically grouping users based on compatibility and game environment, the overall gaming experience is significantly enhanced. Effective matchmaking not only ensures balanced and competitive matches but also promotes a sense of fairness and satisfaction among players. This, in turn, leads to increased player loyalty and sustained participation, which are essential for the long-term success of any gaming platform.
[0031] To address the problems of conventional systems, the disclosed method focuses on grouping a plurality of users in one or more game environments. The method involves receiving one or more matchmaking requests over time and computing one or more compatibility matrices for one or more pairs of the plurality of users. Further, the method involves identifying the one or more game environments. Furthermore, the method involves grouping of the plurality of users using one or more group assignment techniques based on the identified game environment and computed compatibility matrix. Additionally, the grouped plurality of users are provided for collaboration in the identified one or more game environments.
[0032] Referring to Figure 1 is a block diagram that illustrates a system (100) to group the plurality of users in the one or more game environments, in accordance with at least one embodiment of the present subject matter. The system (100) typically comprises an application server (101), a database server (102), a communication network (103), and a user computing device (104). The application server (101), the database server (102), and the user computing device (104) are typically communicatively coupled with each other via the communication network (103). In an embodiment, the application server (101) may communicate with the database server (102), and the user computing device (104) using one or more protocols such as, but not limited to, Hypertext Transfer Protocol (HTTP), Transmission Control Protocol / Internet Protocol (TCP / IP), Wireless Application Protocol (WAP), RF mesh, Bluetooth Low Energy (BLE), and the like, to communicate with one another.
[0033] In an embodiment, the database server (102) may refer to a computing device that may be configured to store the received one or more matchmaking requests, one or more pairs of the plurality of users, one or more compatibility matrices, one or more parameters, weights assigned to each pair of users, and the one or more game environment configurations used in the grouping of the plurality of users. The database server (102) may include a special purpose operating system specifically configured to perform one or more database operations on the one or more activities performed by a user. In an embodiment, the database server (102) may include a centralized repository specifically configured for storing the one or more parameters corresponding to the plurality of users. In an exemplary embodiment, one or more parameters may include skill score, proximity score, experience score, loyalty level, responsible gaming score, wait time score, fraud probability score, cross game compatibility score, cross boot compatibility score, or a combination of the same. The centralized repository is specifically configured to store a graph populated with plurality of users as nodes and corresponding weights as edges. Examples of database operations may include, but are not limited to, storing, identifying, grouping and providing the plurality of users for collaborating in one or more game environments. In an embodiment, the database server (102) may include hardware that may be configured to perform one or more predetermined operations. In an embodiment, the database server (102) may be realized through various technologies such as, but not limited to, Microsoft® SQL Server, Oracle®, IBM DB2®, Microsoft Access®, PostgreSQL®, MySQL®, SQLite®, distributed database technology and the like. In an embodiment, the database server (102) may be configured to utilize the application server (101) for storage and retrieval of data used for grouping the plurality of users for maximizing the user retention and engagement in the one or more game environments.
[0034] A person with ordinary skills in art will understand that the scope of the disclosure is not limited to the database server (102) as a separate entity. In an embodiment, the functionalities of the database server (102) can be integrated into the application server (101) or into the user computing device (104).
[0035] In an embodiment, the application server (101) may refer to a computing device or a software framework hosting an application or a software service. In an embodiment, the application server (101) may be implemented to execute procedures such as, but not limited to, programs, routines, or scripts stored in the database server (102) for supporting the hosted application or the software service. In an embodiment, the hosted application or the software service may be configured to perform one or more predetermined operations. The application server (101) may be realized through various types of application servers such as, but are not limited to, a Java application server, a .NET framework application server, a Base application server, a PHP framework application server, or any other application server framework. In an embodiment, the application server (101) may be configured to utilize the database server (102) and the user computing device (104), in conjunction, for grouping the one or more plurality of users. In an implementation, the application server (101) corresponds to receiving the one or more matchmaking requests from the plurality of users, computing one or more matrices corresponding to the one or more pair of users, identifying the one or more game environments, and grouping the plurality of users using one or more group assignment techniques, thereby ensuring sustainable collaboration among the grouped plurality of users.
[0036] In an embodiment, the application server (101) may be configured to receive the one or more matchmaking requests associated with the plurality of users.
[0037] In an embodiment, the application server (101) may be configured to compute the one or more compatibility matrices corresponding to the one or more pair of users from the plurality of users based on the one or more matchmaking requests.
[0038] In an embodiment, the application server (101) may be configured to identify the one or more game environments for grouping of the plurality of users. The one or more game environments may include one of a two-user environment, a non-two user environment, or a combination of both.
[0039] In an embodiment, the application server (101) may be configured to group the plurality of users using the one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices. In an embodiment, a first assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the identified two-user environment. In another embodiment, a second assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the identified non-two user environment.
[0040] In an embodiment, the application server (101) may be configured to provide the grouped plurality of users, for collaboration in the one or more game environments.
[0041] In an embodiment, the communication network (103) may correspond to a communication medium through which the application server (101), the database server (102), and the user computing device (104) may communicate with each other. Such communication may be performed in accordance with various wired and wireless communication protocols. Examples of such wired and wireless communication protocols include, but are not limited to, Transmission Control Protocol and Internet Protocol (TCP / IP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), Wireless Application Protocol (WAP), File Transfer Protocol (FTP), ZigBee, EDGE, infrared IR), IEEE 802.11, 802.16, 2G, 3G, 4G, 5G, 6G, 7G cellular communication protocols, and / or Bluetooth (BT) communication protocols. The communication network (103) may either be a dedicated network or a shared network. Further, the communication network (103) may include a variety of network devices, including routers, bridges, servers, computing devices, storage devices, and the like. The communication network (103) may include, but is not limited to, the Internet, intranet, a cloud network, a Wireless Fidelity (Wi-Fi) network, a Wireless Local Area Network (WLAN), a Local Area Network (LAN), a cable network, the wireless network, a telephone network (e.g., Analog, Digital, POTS, PSTN, ISDN, xDSL), a telephone line (POTS), a Metropolitan Area Network (MAN), an electronic positioning network, an X.25 network, an optical network (e.g., PON), a satellite network (e.g., VSAT), a packet-switched network, a circuit-switched network, a public network, a private network, and / or other wired or wireless communications network configured to carry data.
[0042] In an embodiment, the user computing device (104) may comprise one or more processors and one or more memory. The one or more memory may include computer readable instructions that may be executable by one or more processors to perform predetermined operations of the system (100). In an embodiment, the user computing device (104) may present a web user interface to display operations performed by the application server (101). Example web user interfaces presented on the one or more portable devices to display the one or more game environments and the one or more parameters corresponding to each user from the plurality of users and grouped plurality of users. Examples of the user computing device (104) may include, but are not limited to, a personal computer, a laptop, a personal digital assistant (PDA), a mobile device, a tablet, or any other computing device.
[0043] The system (100) can be implemented using hardware, software, or a combination of both, which includes using where suitable, one or more computer programs, mobile applications, or “apps” by deploying either on-premises over the corresponding computing terminals or virtually over cloud infrastructure. The system (100) may include various micro-services or groups of independent computer programs which can act independently in collaboration with other microservices. The system (100) may also interact with a third-party or external computer system. Internally, the system (100) may be the central processor of all requests for transactions by the various actors or users of the system. A critical attribute of the system (100) is its ability to efficiently group the plurality of users by identifying the one or more game environments and computing the one or more compatibility matrices, in collaboration with other systems. In a specific embodiment, the system (100) is implemented to group the plurality of users to maximize user retention and engagement. Now referring to Figure 2, illustrates a block diagram (200) showing an overview of various components of the application server (101) configured to group the plurality of users, in accordance with at least one embodiment of the present subject matter. Figure 2 is explained in conjunction with elements from Figure 1. In an embodiment, the application server (101) includes a processor (201), a memory (202), a transceiver (203), an input / output unit (204), a user interface unit (205), a receiving unit (206), a computation unit (207), an identification unit (208), and a grouping unit (209). The processor (201) may be communicatively coupled to the memory (202), the transceiver (203), the input / output unit (204), the user interface unit (205), the receiving unit (206), the computation unit (207), the identification unit (208), and the grouping unit (209). The transceiver (203) may be communicatively coupled to the communication network (103) of the system (100).
[0044] In an embodiment, the application server (101) may be configured to receive the one or more matchmaking requests over time, via the receiving unit (206). Further, the application server (101) may be configured to compute the one or more compatibility matrices for one or more pairs of the plurality of users, via the computation unit (207). Furthermore, the application server (101) may be configured to identify the one or more game environments, via the identification unit (208). Furthermore, the application server (101) may be configured to group the plurality of users using one or more group assignment techniques, via the grouping unit (209) based on the identified game environment and computed compatibility matrix. Additionally, the grouped plurality of users ensure sustainable collaboration in the identified one or more game environments.
[0045] The processor (201) comprises suitable logic, circuitry, interfaces, and / or code that may be configured to execute a set of instructions stored in the memory (202), and may be implemented based on several processor technologies known in the art. The processor (201) works in coordination with the memory (202), the transceiver (203), the input / output unit (204), the user interface unit (205), the receiving unit (206), the computation unit (207), the identification unit (208), and the grouping unit (209) for grouping the plurality of users in the one or more game environments. Examples of the processor (201) include, but not limited to, a standard microprocessor, microcontroller, central processing unit (CPU), an X86-based processor, a Reduced Instruction Set Computing (RISC) processor, an Application- Specific Integrated Circuit (ASIC) processor, and a Complex Instruction Set Computing (CISC) processor, distributed or cloud processing unit, state machines, logic circuitries, and / or any devices that manipulate signals based on operational instructions and / or other processing logic that accommodates the requirements of the present invention. The memory (202) comprises suitable logic, circuitry, interfaces, and / or code that may be configured to store the set of instructions, which are executed by the processor (201). Preferably, the memory (202) is configured to store one or more programs, routines, or scripts that are executed in coordination with the processor (201). Additionally, the memory (202) may include any computer-readable medium or computer program product known in the art including, for example, volatile memory, such as static random-access memory (SRAM) and dynamic randomaccess memory (DRAM), and / or non-volatile memory, such as read-only memory (ROM), erasable programmable ROM, a Hard Disk Drive (HDD), flash memories, Secure Digital (SD) card, Solid State Disks (SSD), optical disks, magnetic tapes, memory cards, virtual memory and distributed cloud storage. The memory (202) may be removable, non-removable, or a combination thereof. Further, the memory (202) may include routines, programs, objects, components, data structures, etc., which perform particular tasks or implement particular abstract data types. The memory (202) may include programs or coded instructions that supplement the applications and functions of the system (100). In one embodiment, the memory (202), amongst other things, serves as a repository for storing data processed, received, and generated by one or more of the programs or the coded instructions. In yet another embodiment, the memory (202) may be managed under a federated structure that enables the adaptability and responsiveness of the application server (101).
[0046] The transceiver (203) comprises suitable logic, circuitry, interfaces, and / or code that may be configured to receive, process or transmit information, data or signals, which are stored by the memory (202) and executed by the processor (201). The transceiver (203) is preferably configured to receive, process or transmit, one or more programs, routines, or scripts that are executed in coordination with the processor (201). The transceiver (203) is preferably communicatively coupled to the communication network (103) of the system (100) for communicating all the information, data, signals, programs, routines or scripts through the communication network (103).
[0047] The transceiver (203) may implement one or more known technologies to support wired or wireless communication with the communication network (103). In an embodiment, the transceiver (203) may include but is not limited to, an antenna, a radio frequency (RF) transceiver, one or more amplifiers, a tuner, one or more oscillators, a digital signal processor, a Universal Serial Bus (USB) device, a coder-decoder (CODEC) chipset, a subscriber identity module (SIM) card, and / or a local buffer. Also, the transceiver (203) may communicate via wireless communication with networks, such as the Internet, an Intranet and / or a wireless network, such as a cellular telephone network, a wireless local area network (LAN) and / or a metropolitan area network (MAN). Accordingly, the wireless communication may use any of a plurality of communication standards, protocols and technologies, such as: Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), wideband code division multiple access (W-CDMA), code division multiple access (CDMA), time division multiple access (TDMA), Bluetooth, Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g and / or IEEE 802.1 In), voice over Internet Protocol (VoIP), Wi-MAX, a protocol for email, instant messaging, and / or Short Message Service (SMS).
[0048] The input / output (VO) unit (204) comprises suitable logic, circuitry, interfaces, and / or code that may be configured to receive or present information. The input / output unit (204) comprises various input and output devices that are configured to communicate with the processor (201). Examples of the input devices include but are not limited to, a keyboard, a mouse, a joystick, a touch screen, a microphone, a camera, and / or a docking station. Examples of the output devices include, but are not limited to, a display screen and / or a speaker. The I / O unit (204) may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I / O unit (204) may allow the system (100) to interact with the user directly or through the user computing devices (104). Further, the I / O unit (204) may enable the system (100) to communicate with other computing devices, such as web servers and external data servers (not shown). The I / O unit (204) can facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, LAN, cable, etc., and wireless networks, such as WLAN, cellular, or satellite. The I / O unit (204) may include one or more ports for connecting a number of devices to one another or to another server. In one embodiment, the I / O unit (204) allows the application server (101) to be logically coupled to other user computing devices (104), some of which may be built in. Illustrative components include tablets, mobile phones, wireless devices, etc.
[0049] Further, the input / output (I / O) unit (204) may be configured to display the grouping of the plurality of users in the one or more game environments. In one embodiment, the input / output (I / O) unit (204) may be configured to display the grouping of the plurality of users in the two- user environment, the non-two user environment, or the combination of the same. Further, the input / output (I / O) unit (204) may be configured to display the grouping of the plurality of users in the identified game environment for maximum user retention and engagement.
[0050] Further, the user interface unit (205) may facilitate interaction between the plurality of users and the system (100) to group the plurality of users. In an embodiment, the user interface unit (205) may receive the one or more inputs from the plurality of users, which may trigger the grouping of the plurality of the users. In an exemplary embodiment, the one or more user inputs may correspond to one of launching of a gaming application, pressing a multi-player game module, indicating a collaboration intent for a specific event.
[0051] Further, the receiving unit (206) may be configured to receive one or more matchmaking requests associated with the plurality of users. For example, in a multiplayer gaming environment, the one or more matchmaking requests may include a request made by a player or a group of players to join a game or be paired with other players. In general scenario, on launching a multi-player gaming environment on a gaming platform, a pool of match making requests are accumulated very often (every few seconds). Thus, a platform implementing the disclosed system, may receive hundreds / thousands of the matchmaking requests associated with the plurality of users. Therefore, due to the importance of player retention and engagement on the gaming platform and to improve the overall gaming experience, the disclosed system may perform the proprietary matchmaking operation to ensure balanced and competitive matches but also promotes a sense of fairness and satisfaction among players.
[0052] Further, the computation unit (207) may be configured to compute one or more compatibility matrices corresponding to one or more pair of users from the plurality of users based on the one or more matchmaking requests. In an implementation, the computing of the one or more compatibility matrices may correspond to assigning weight to each pair of users, from the one or more pairs of the plurality of users, based on one or more parameters corresponding to each user from the plurality of users. Post receiving the one or more matchmaking request from the pool of matchmaking requests, the disclosed system may populate one or more cost matrices across all the pair of users, in the universe of the platform. The cost matrices quantify the affinity / compatibility of the pair of users at hand.
[0053] In an exemplary embodiment, the one or more parameters may include hundreds of parameters associated with the plurality of users. The one or more parameters may include, but not limited to, skill score, proximity score, experience score, loyalty level, responsible gaming score, wait time score, fraud probability score, cross game compatibility score, cross boot compatibility score, or a combination of the same. In an exemplary embodiment, the computation unit (207) may comprise one or more weight / score generation modules corresponding to each of the one or more parameters associated with the plurality of users. In one embodiment, a skill detection and scoring module of the computation unit (207) may be configured to identify various skills of the plurality of users and calculate the skill score of a pair of users from the plurality of users. In another embodiment, an experience scoring module of the computation unit (207) may be configured to identify various experiences of the plurality of users and calculate the experience score of a pair of users from the plurality of users. In yet another embodiment, a loyalty level module of the computation unit (207) may be configured to identify loyalty of the plurality of users towards the gaming or other platforms and calculate the loyalty level of a pair of users from the plurality of users. In yet another embodiment, a boot compatibility scoring module of the computation unit (207) may be configured to identify cross boot compatibility of user devices of the plurality of users and calculate the cross-boot compatibility score of a pair of users from the plurality of users. In yet another embodiment, a game compatibility scoring module of the computation unit (207) may be configured to identify cross game compatibility of the plurality of users and calculate the cross-game compatibility score of a pair of users from the plurality of users. In yet another embodiment, a game compatibility scoring module of the computation unit (207) may be configured to identify cross game compatibility of the plurality of users and calculate the cross-game compatibility score of a pair of users from the plurality of users. In yet another embodiment, a responsible gaming scoring module of the computation unit (207) may be configured to identify characteristics of the plurality of users related to responsible game playing and calculate the responsible gaming score of a pair of users from the plurality of users. In yet another embodiment, a wait time scoring module of the computation unit (207) may be configured to identify wait time of the plurality of users, such as Players are going to have to wait for a match? Players aren’t going to wait forever or how long players are willing to wait for a match?, and calculate the wait time score of a pair of users from the plurality of users. In yet another embodiment, a pair level suspicion scoring module of the computation unit (207) may be configured to identify probability of the plurality of users to do a fraud and calculate the fraud probability score of a pair of users from the plurality of users. In yet another embodiment, a churn prediction module of the computation unit (207) may be configured to identify player loyalty and anticipate when they might stop playing a game and calculate the churn prediction score of a pair of users from the plurality of users. In yet another embodiment, a proximity detection module of the computation unit (207) may be configured to identify geographical proximity of the plurality of players and calculate the proximity score of a pair of users from the plurality of users.
[0054] For example, when the plurality of users requests to join a game, the system evaluates the one or more parameters such as skill level, experience, and proximity for each user. The computation unit then assigns a weight to each pair of users, reflecting their compatibility based on the one or more parameters. This weight is stored in the compatibility matrix, which indicates the strength of the relationship between the users in each pair. The system uses the one or more compatibility matrices to group users that provide the highest levels of compatibility with each other, thereby ensuring balanced and engaging gameplay experiences.
[0055] In an implementation, the one or more compatibility matrices is indicative of a correlation between the users in each pair from the one or more pairs.
[0056] In one implementation, the computing of the one or more compatibility matrices may include populating a graph with the plurality of users as nodes and the corresponding weights as edges.
[0057] In another implementation, the computing of the one or more compatibility matrices may include splitting the graph into one or more connected components based on the assigned weight. Splitting of the populated graph into the one or more connected components, based on the assigned weights, may give rise to perform a targeted implementation of the matchmaking operation, which in turn efficiently group the targeted users based on the parameters associated with the users and fasten the overall matchmaking operations due to potentially decreasing the unnecessary pairing of the users and their corresponding operations effort.
[0058] In an exemplary embodiment, the process of computing compatibility matrices involves first creating a graph where each user is represented as a node. For example, consider a gaming system with ten users. Each user is assigned a node in the graph, and edges between nodes are weighted based on compatibility scores such as skill level and experience. After populating the graph with these nodes and weighted edges, the next step is to analyze the graph to identify the one or more connected components. For instance, if the edges contain isolated forests (or nodes), the graph may split into the one or more connected components, each representing a group of users who form a connected graph. By splitting the graph into these connected components, the system may form smaller groups of the plurality of users who lack common linkages. This splitting of graph into the one or more connected components significantly optimizes the performance of the one or more group assignment techniques, which is crucial for scalability. This helps the one or more group assignment techniques work faster and more efficiently, which is important for handling a large number of users.
[0059] Furthermore, the identification unit (208) may be configured to identify the one or more game environments for grouping of the plurality of users. In an embodiment, the one or more game environments may include one of the two-user environment, the non-two user environment, or the combination of the same. Identification of the one or more game environment for grouping the plurality of users may affect the strategy of the disclosed system to use one or more optimal group assignment techniques, to further group the plurality of users for collaboration. An ultimate objective of the disclosed system is to use optimal assignment techniques specifically targeted for the grouping of users of a specific type of game environment. For example, a group assignment technique configured to optimally group the users of two user environments, may not efficiently group the users of non-two user environment. Similarly, another different group assignment technique configured to optimally group the users of non-two user environments, may not efficiently group the users of two user environment. Thus, conventional usage of a single group assignment technique, for all type of user environment, potentially incurred the challenges of less user retention, low user engagement, less user interest, suboptimal user experience, unfair advantage of one user over another user and many more.
[0060] Furthermore, the grouping unit (209) may be configured to group the plurality of users using one or more group assignment techniques based on the identified one or more game environments and the computed one or more compatibility matrices. The one or more group assignment techniques may comprise a first group assignment technique and a second group assignment technique. In an embodiment, the first assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the two-user environment.
[0061] In an exemplary embodiment, the first assignment technique from the one or more group assignment techniques may correspond to one of, but not limited to, a graph based maximum weight matching technique, an Edmonds' blossom technique, Hungarian technique, or a combination of the same. Further usage of graphical algorithms may lead to optimization of the complexity of the one or more group assignment techniques. In one implementation, the disclosed graph-based group assignment technique may use “Blossom” method for finding augmenting paths and the “primal-dual” method for finding a matching of maximum weight.
[0062] In another embodiment, the second assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the non-two user environment. In another exemplary embodiment, the second assignment technique from the one or more group assignment techniques may correspond to one of, but not limited to, a mixed- integer linear program (MILP), a linear program (LP) based constraint formulation technique, an integer linear program (ILP) or a combination of the same. The MILP / LP based group assignment techniques may be configured to execute fast by leveraging the processing power from GPUs.
[0063] Furthermore, the grouping unit (209) may be configured to provide the grouped plurality of users, group by either the first group assignment technique or the second group assignment technique, for collaboration in the one or more game environments. In an embodiment, providing the grouped plurality of users, for collaboration in the one or more game environments may correspond to creating a real-time gaming environment with the grouped plurality of users. In an embodiment, the real-time gaming environment may include the grouped plurality of users for highly engaged game play.
[0064] In an implementation, the one or more pair of users from the plurality of users may be incentivized, based on the one or more parameters and the one or more game environments to maximize retention and engagement among the plurality of users. In an exemplary embodiment, consider a gaming platform with multiplayer environment. To incentivize users, the system might offer rewards such as bonus points or exclusive in-game items to pairs that demonstrate high compatibility based on these parameters. For instance, if a user with a high skill level and another with extensive experience are matched together, they might receive additional in-game currency or access to special content. This incentivization strategy aims to enhance user satisfaction and motivation, leading to higher retention and engagement by rewarding compatible pairs for their successful collaborations.
[0065] Now referring to Figure 3, illustrates a flowchart describing a method (300) for grouping the plurality of users, in accordance with at least one embodiment of the present subject matter. The flowchart is described in conjunction with Figure 1 and Figure 2. The method (300) starts at step (301) and proceeds to step (307).
[0066] In operation, the method (300) may involve a variety of steps, executed by the processor (201), for grouping the plurality of players.
[0067] At step (301), the method involves receiving one or more matchmaking requests associated with the plurality of users.
[0068] At step (302), the method involves computing the one or more compatibility matrices corresponding to the one or more pair of users from the plurality of users based on the one or more matchmaking requests.
[0069] At step (303), the method involves identifying the one or more game environments for grouping of the plurality of users. The one or more game environments may include one of the two-user environment, the non-two user environment, or a combination of the same.
[0070] At step (304), the method involves grouping of the plurality of users using one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices. At step (305), the method involves grouping of the plurality of users using the first assignment technique from the one or more group assignment techniques in case the plurality of users are operating in the two-user environment.
[0071] At step (306), the method involves grouping of the plurality of users using the second assignment technique from the one or more group assignment techniques in case the plurality of users are operating in the non-two user environment.
[0072] At step (307), the method involves providing the grouped plurality of users, for collaboration in the one or more game environments for playing.
[0073] Let us delve into a detailed example of the present disclosure.
[0074] Let’s imagine an online multiplayer game where players submit matchmaking requests indicating their skill levels, preferences, and game types. The system received the one or more matchmaking requests to compute the one or more compatibility matrices, assigning weights to potential pairings based on the one or more parameters including skill score and experience score. The system then creates a graph with players as nodes and weighted edges representing compatibility. This graph is then split into the one or more connected components to significantly optimize performance of the one or more group assignment techniques. For two- player games, the system uses a maximum weight matching algorithm, while for larger groups, the system applies mixed-integer linear programming (MILP) to ensure optimal group formations. Players are incentivized based on their engagement and performance, which helps enhance retention. Finally, the system organizes the grouped players into real-time game environments, providing balanced and engaging gameplay experiences that foster satisfaction and sustained participation.
[0075] Working Example:
[0076] Let’s imagine a popular online multiplayer game that uses an advanced matchmaking system to ensure players are grouped effectively for sustainable collaboration and enjoyable gaming experience. The players submit matchmaking requests to find suitable gaming partners. The system first receives the one or more matchmaking requests and computes the one or more compatibility matrices, which assign weights to potential player pairings based on the one or more parameters such as skill level, experience score, proximity score and more. For instance, players with high skill levels and similar playstyles are given higher compatibility scores. These scores are used to populate a graph, where each player is a node and edges between nodes are weighted based on compatibility. The next step involves creating a graph where each player is represented as a node, and edges between nodes are weighted according to their computed compatibility. For example, if certain sections of the graph contain isolated edges, the graph is then analyzed and split into the one or more connected components, each representing the group of users who form the connected graph. By splitting the graph into these connected components, the system may form smaller groups of the plurality of users who lack common linkages, thereby significantly optimizing the performance of the one or more group assignment techniques.
[0077] For a two-user environment, such as a one-on-one match, the system applies a maximum weight matching technique to ensure that each player is paired with another who has the highest possible compatibility score. In contrast, for larger groups or team-based games, the system uses mixed- integer linear programming (MILP) to handle more complex groupings and constraints.
[0078] Additionally, players are incentivized based on parameters like loyalty and performance, which helps enhance engagement and retention. Finally, the grouped players are provided with realtime game environments tailored to their group configurations, ensuring balanced and engaging gameplay experiences that keep players coming back for more.
[0079] A person skilled in the art will understand that the scope of the disclosure is not limited to scenarios based on the aforementioned factors and using the aforementioned techniques and that the examples provided do not limit the scope of the disclosure.
[0080] Now referring to Figure 4, illustrates a block diagram (400) of an exemplary computer system (401) for implementing embodiments consistent with the present disclosure. Variations of computer system (401) may be used for grouping the plurality of users in the one or more game environments. The computer system (401) may comprise a central processing unit (“CPU” or “processor”) (402). The processor (402) may comprise at least one data processor for executing program components for executing user- or system-generated requests. A user may include a person, a person using a device such as those included in this disclosure, or such a device itself. Additionally, the processor (402) may include specialized processing units such as integrated system (bus) controllers, memory management control units, floating point units, graphics processing units, digital signal processing units, or the like. In various implementations the processor (402) may include a microprocessor, such as AMD Athlon, Duron or Opteron, ARM’s application, embedded or secure processors, IBM PowerPC, Intel’s Core, Itanium, Xeon, Celeron or other line of processors, for example. Accordingly, the processor (402) may be implemented using mainframe, distributed processor, multi-core, parallel, grid, or other architectures. Some embodiments may utilize embedded technologies like application-specific integrated circuits (ASICs), digital signal processors (DSPs), or Field Programmable Gate Arrays (FPGAs), for example.
[0081] Processor (402) may be disposed in communication with one or more input / output (VO) devices via I / O interface (403). Accordingly, the I / O interface (403) may employ communication protocols / methods such as, without limitation, audio, analog, digital, monoaural, RCA, stereo, IEEE-1394, serial bus, universal serial bus (USB), infrared, PS / 2, BNC, coaxial, component, composite, digital visual interface (DVI), high-definition multimedia interface (HDMI), RF antennas, S-Video, VGA, IEEE 802. n / b / g / n / x, Bluetooth, cellular (e.g., code-division multiple access (CDMA), high-speed packet access (HSPA+), global system for mobile communications (GSM), long-term evolution (LTE), WiMAX, or the like, for example.
[0082] Using the I / O interface (403), the computer system (401) may communicate with one or more I / O devices. For example, the input device (404) may be an antenna, keyboard, mouse, joystick, (infrared) remote control, camera, card reader, fax machine, dongle, biometric reader, microphone, touch screen, touchpad, trackball, sensor (e.g., accelerometer, light sensor, GPS, gyroscope, proximity sensor, or the like), stylus, scanner, storage device, transceiver, video device / source, or visors, for example. Likewise, an output device (405) may be a user’s smartphone, tablet, cell phone, laptop, printer, fax machine, video display (e.g., cathode ray tube (CRT), liquid crystal display (LCD), light- emitting diode (LED), plasma, or the like), or audio speaker, for example. In some embodiments, a transceiver (406) may be disposed in connection with the processor (402). The transceiver (406) may facilitate various types of wireless transmission or reception. For example, the transceiver (406) may include an antenna operatively connected to a transceiver chip (example devices include the Texas Instruments® WiLink WL1283, Broadcom® BCM4750IUB8, Infineon Technologies® X-Gold 618-PMB9800, or the like), providing IEEE 802.1 la / b / g / n, Bluetooth, FM, global positioning system (GPS), and / or 2G / 3G / 5G / 6G HSDPA / HSUPA communications, for example.
[0083] In some embodiments, the processor (402) may be disposed in communication with a communication network (408) via a network interface (407). The network interface (407) is adapted to communicate with the communication network (408). The network interface, coupled to the processor may be configured to facilitate communication between the system and one or more external devices or networks. The network interface (407) may employ connection protocols including, without limitation, direct connect, Ethernet (e.g., twisted pair 10 / 100 / 1000 Base T), transmission control protocol / internet protocol (TCP / IP), token ring, or IEEE 802.11a / b / g / n / x, for example. The communication network (408) may include, without limitation, a direct interconnection, local area network (LAN), wide area network (WAN), wireless network (e.g., using Wireless Application Protocol), or the Internet, for example. Using the network interface (407) and the communication network (408), the computer system (401) may communicate with devices such as shown as a laptop (409) or a mobile / cellular phone (410). Other exemplary devices may include, without limitation, personal computer(s), server(s), fax machines, printers, scanners, various mobile devices such as cellular telephones, smartphones (e.g., Apple iPhone, Blackberry, Android-based phones, etc.), tablet computers, eBook readers (Amazon Kindle, Nook, etc.), laptop computers, notebooks, gaming consoles (Microsoft Xbox, Nintendo DS, Sony PlayStation, etc.), or the like. In some embodiments, the computer system (401) may itself embody one or more of these devices.
[0084] In some embodiments, the processor (402) may be disposed in communication with one or more memory devices (e.g., RAM 413, ROM 414, etc.) via a storage interface (412). The storage interface (412) may connect to memory devices including, without limitation, memory drives, removable disc drives, etc., employing connection protocols such as serial advanced technology attachment (SATA), integrated drive electronics (IDE), IEEE- 1394, universal serial bus (USB), fiber channel, small computer systems interface (SCSI), etc. The memory drives may further include a drum, magnetic disc drive, magneto-optical drive, optical drive, redundant array of independent discs (RAID), solid-state memory devices, or solid-state drives, for example.
[0085] The memory devices may store a collection of program or database components, including, without limitation, an operating system (416), user interface application (417), web browser (418), mail client / server (419), user / application data (420) (e.g., any data variables or data records discussed in this disclosure) for example. The operating system (416) may facilitate resource management and operation of the computer system (401). Examples of operating systems include, without limitation, Apple Macintosh OS X, UNIX, Unix-like system distributions (e.g., Berkeley Software Distribution (BSD), FreeBSD, NetBSD, OpenBSD, etc.), Linux distributions (e.g., Red Hat, Ubuntu, Kubuntu, etc.), IBM OS / 2, Microsoft Windows (XP, Vista / 7 / 8, etc.), Apple iOS, Google Android, Blackberry OS, or the like.
[0086] The user interface (417) is for facilitating the display, execution, interaction, manipulation, or operation of program components through textual or graphical facilities. For example, user interfaces may provide computer interaction interface elements on a display system operatively connected to the computer system (401), such as cursors, icons, check boxes, menus, scrollers, windows, or widgets, for example. Graphical user interfaces (GUIs) may be employed, including, without limitation, Apple Macintosh operating systems’ Aqua, IBM OS / 2, Microsoft Windows (e.g., Aero, Metro, etc.), Unix X-Windows, or web interface libraries (e.g., ActiveX, Java, JavaScript, AJAX, HTML, Adobe Flash, etc.), for example.
[0087] In some embodiments, the computer system (401) may implement a web browser (418) stored program component. The web browser (418) may be a hypertext viewing application, such as Microsoft Internet Explorer, Google Chrome, Mozilla Firefox, Apple Safari, or Microsoft Edge, for example. Secure web browsing may be provided using HTTPS (secure hypertext transport protocol), secure sockets layer (SSL), Transport Layer Security (TLS), or the like. Web browsers may utilize facilities such as AJAX, DHTML, Adobe Flash, JavaScript, Java, or application programming interfaces (APIs), for example. In some embodiments the computer system (401) may implement a mail client / server (419) stored program component. The mail server (419) may be an Internet mail server such as Microsoft Exchange, or the like. The mail server may utilize facilities such as ASP, ActiveX, ANSI C++ / C#, Microsoft .NET, CGI scripts, Java, JavaScript, PERL, PHP, Python, or WebObjects, for example. The mail server (419) may utilize communication protocols such as internet message access protocol (IMAP), messaging application programming interface (MAPI), Microsoft Exchange, post office protocol (POP), simple mail transfer protocol (SMTP), or the like. In some embodiments, the computer system (401) may implement a mail client (420) stored program component. The mail client (520) may be a mail viewing application, such as Apple Mail, Microsoft Entourage, Microsoft Outlook, or Mozilla Thunderbird.
[0088] In some embodiments, the computer system (401) may store user / application data (421), such as the data, variables, records, or the like as described in this disclosure. Such databases may be implemented as fault-tolerant, relational, scalable, secure databases such as Oracle or Sybase, for example. Alternatively, such databases may be implemented using standardized data structures, such as an array, hash, linked list, struct, structured text file (e.g., XML), table, or as object- oriented databases (e.g., using ObjectStore, Poet, Zope, etc.). Such databases may be consolidated or distributed, sometimes among the various computer systems discussed above in this disclosure. It is to be understood that the structure and operation of the any computer or database component may be combined, consolidated, or distributed in any working combination.
[0089] Furthermore, one or more computer-readable storage media may be utilized in implementing embodiments consistent with the present invention. A computer-readable storage medium refers to any type of physical memory on which information or data readable by a processor may be stored. Thus, a computer-readable storage medium may store instructions for execution by one or more processors, including instructions for causing the processor(s) to perform steps or stages consistent with the embodiments described herein. The term “computer- readable medium” should be understood to include tangible items and exclude carrier waves and transient signals, i.e., non-transitory. Examples include Random Access Memory (RAM), Read- Only Memory (ROM), volatile memory, non-volatile memory, hard drives, Compact Disc (CD) ROMs, Digital Video Disc (DVDs), flash drives, disks, and any other known physical storage media.
[0090] In light of the above-mentioned advantages and the technical advancements provided by the disclosed method and system, the claimed steps as discussed above are not routine, conventional, or well understood in the art, as the claimed steps enable the following solutions to the existing problems in conventional technologies. Further, the claimed steps clearly bring an improvement in the functioning of the device itself as the claimed steps provide a technical solution to a technical problem.
[0091] Various embodiments of the disclosure provide a non-transitory computer readable medium and / or storage medium, and / or a non-transitory machine-readable medium and / or storage medium having stored thereon, a machine code and / or a computer program having at least one code section executable by a machine and / or a computer for grouping the plurality of users in the one or more game environments. The at least one code section in the application server (101) causes the machine and / or computer including one or more processors to perform the steps, which includes receiving the one or more matchmaking requests associated with the plurality of users. Further, the processor may perform a step of computing the one or more compatibility matrices corresponding to the one or more pair of users from the plurality of users based on the one or more matchmaking requests. Further, the processor may perform a step of identifying the one or more game environments for grouping of the plurality of users. In an embodiment, the one or more game environments may include one of the two-user environment, the non-two user environment, or combination of both. Furthermore, the processor may perform a step of grouping the plurality of users using the one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices. In an embodiment, the first assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the two-user environment. In another embodiment, the second assignment technique from the one or more group assignment techniques may be configured to group the plurality of users for the non-two user environment. Moreover, the processor may perform a step of providing the grouped plurality of users, for collaboration in the one or more game environments. Various embodiments of the disclosure encompass numerous advantages including the method for grouping the plurality of users. The disclosed method and system have several technical advantages, but not limited to the following:
[0092] • Enhanced Player Matching: The disclosed system’s ability to receive and process one or more matchmaking requests ensures that player preferences and compatibility are considered, leading to more suitable and satisfying game pairings.
[0093] • Dynamic Compatibility Assessment: By identifying and utilizing a compatibility matrix based on the one or more parameters including skill score, experience score, cross boot compatibility, cross game compatibility, and loyalty level, etc, the system provides a detailed and precise evaluation of player compatibility, improving the quality of matches.
[0094] • Flexible Grouping Techniques: The system employs different grouping techniques tailored to specific game environments (two-player vs. non-two-player). For two-player environments, it uses advanced techniques like graph-based maximum matching and Edmonds' blossom method. For non-two-player environments, it utilizes mixed-integer linear programming (MILP) or linear programming (LP) formulations, optimizing player group formation.
[0095] • Scalability: The ability to handle both two-player and non-two-player environments with distinct techniques ensures scalability and adaptability to various game types and player group sizes. Further, usage of LP and Graph based algorithms for assignment by leveraging graph data structures for the assignment task is unique which makes it scalable to compute in real time.
[0096] • Optimized Engagement and Retention: The use of advanced matching algorithms and compatibility matrix maximizes player engagement and retention by ensuring that players are grouped in a way that enhances their gaming experience and satisfaction.
[0097] • Data-Driven Decision Making: The system’s reliance on data-driven methods for player grouping allows for more informed decision-making, resulting in better alignment between player skills, preferences, and game requirements.
[0098] • Advanced Computational Methods: By leveraging specialized techniques for different game environments, the system ensures high-performance results in player grouping.
[0099] • Adaptability to Diverse Gaming Scenarios: The disclosed system accommodates a wide range of gaming scenarios, from simple two-player games to complex multi-player environments, making it versatile and effective across different game genres and structures. In summary, these technical advantages solve the technical challenges of delayed matchmaking, mismatched player pairings, failure to accommodate varying game types, less user retention, low user engagement, less user interest, suboptimal user experience, unfair advantage of one user over another user and inefficient grouping techniques. By utilizing one or more compatibility matrices corresponding to the one or more pair of users from the plurality of users and grouping the plurality of users using the one or more group assignment techniques based on the identified game environment and the computed compatibility matrix, the system ensures effective player grouping. This approach leads to enhanced player retention and engagement by improving the accuracy and quality of match.
[0100] The claimed invention of a system and a method for grouping the plurality of users in one or more game environments involves tangible components, processes, and functionalities that interact to achieve specific technical outcomes. The system integrates various elements such as processors, memory, databases, encryption, authorization and authentication techniques to effectively perform grouping of the plurality of users.
[0101] Furthermore, the invention involves a non-trivial combination of technologies and methodologies that provide a technical solution for a technical problem. While individual components like processors, databases, encryption, authorization and authentication are well- known in the field of computer science, their integration into a comprehensive system for grouping the plurality of users, brings about an improvement and technical advancement in the field of grouping the plurality of users in one or more game environments.
[0102] In light of the above mentioned advantages and the technical advancements provided by the disclosed method and system, the claimed steps as discussed above are not routine, conventional, or well understood in the art, as the claimed steps enable the following solutions to the existing problems in conventional technologies. Further, the claimed steps clearly bring an improvement in the functioning of the device itself as the claimed steps provide a technical solution to a technical problem.
[0103] The present disclosure may be realized in hardware, or a combination of hardware and software. The present disclosure may be realized in a centralized fashion, in at least one computer system, or in a distributed fashion, where different elements may be spread across several interconnected computer systems. A computer system or other apparatus adapted for carrying out the methods described herein may be suited. A combination of hardware and software may be a general- purpose computer system with a computer program that, when loaded and executed, may control the computer system such that it carries out the methods described herein. The present disclosure may be realized in hardware that comprises a portion of an integrated circuit that also performs other functions.
[0104] A person with ordinary skills in the art will appreciate that the systems, modules, and submodules have been illustrated and explained to serve as examples and should not be considered limiting in any manner. It will be further appreciated that the variants of the above disclosed system elements, modules, and other features and functions, or alternatives thereof, may be combined to create other different systems or applications.
[0105] Those skilled in the art will appreciate that any of the aforementioned steps and / or system modules may be suitably replaced, reordered, or removed, and additional steps and / or system modules may be inserted, depending on the needs of a particular application. In addition, the systems of the aforementioned embodiments may be implemented using a wide variety of suitable processes and system modules, and are not limited to any particular computer hardware, software, middleware, firmware, microcode, and the like. The claims can encompass embodiments for hardware and software, or a combination thereof.
[0106] While the present disclosure has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made, and equivalents may be substituted without departing from the scope of the present disclosure. In addition, many modifications may be made to adapt a particular situation or material to the teachings of the present disclosure without departing from its scope. Therefore, it is intended that the present disclosure is not limited to the particular embodiment disclosed, but that the present disclosure will include all embodiments falling within the scope of the appended claims.
Claims
WE CLAIM:
1. A method (300) for grouping a plurality of users, wherein the method (300) comprises: receiving (301), via a processor (201), one or more matchmaking requests associated with the plurality of users; computing (302), via the processor (201), one or more compatibility matrices corresponding to one or more pair of users from the plurality of users based on the one or more matchmaking requests; identifying (303), via the processor (201), one or more game environments for grouping of the plurality of users, wherein the one or more game environments comprise one of a two-user environment, a non-two user environment, or a combination thereof; grouping (304), via the processor (201), the plurality of users using one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices, wherein (305) a first assignment technique from the one or more group assignment techniques is configured to group the plurality of users for the two-user environment, wherein (306) a second assignment technique from the one or more group assignment techniques is configured to group the plurality of users for the non-two user environment; and providing (307), via the processor (201), the grouped plurality of users, for collaboration in the one or more game environments.
2. The method (300) as claimed in claim 1, wherein computing (302) the one or more compatibility matrices corresponds to assigning weight to each pair of users, from the one or more pairs, based on one or more parameters corresponding to each user from the plurality of users.
3. The method (300) as claimed in claim 2, wherein computing (302) the one or more compatibility matrices comprises populating a graph with the plurality of users as nodes and the corresponding weights as edges.
4. The method (300) as claimed in claim 3, comprises splitting the graph into one or more connected components based on the assigned weight.
5. The method (300) as claimed in claim 2, wherein the one or more parameters comprises skill score, proximity score, experience score, loyalty level, responsible gaming score, wait time score, fraud probability score, cross game compatibility score, cross boot compatibility score, or a combination thereof.
6. The method (300) as claimed in claim 2, wherein the one or more pair of users from the plurality of users are incentivized, based on the one or more parameters and the one or more game environments to maximize retention and engagement among the plurality of users.
7. The method (300) as claimed in claim 2, wherein the one or more compatibility matrices is indicative of a correlation between the users in each pair from the one or more pairs.
8. The method (300) as claimed in claim 1, wherein the first assignment technique from the one or more group assignment techniques corresponds to one of a graph based maximum weight matching technique, an Edmonds' blossom technique, Hungarian technique, or a combination thereof.
9. The method (300) as claimed in claim 1, wherein the second assignment technique from the one or more group assignment techniques corresponds to one of a mixed-integer linear program (MILP), a linear program (LP) based constraint formulation technique, an integer linear program (ILP) or a combination thereof.
10. The method (300) as claimed in claim 1, wherein providing (307) the grouped plurality of users, for collaboration in the one or more game environments corresponds to creating real-time gaming environment, wherein the real-time gaming environment comprises the grouped plurality of users.
11. A system (100) to group a plurality of users, the system (100) comprises: a processor (201), a memory (202) communicatively coupled with the processor (201), wherein the memory (202) is configured to store one or more executable instructions, which cause the processor (201) to: receive one or more matchmaking requests associated with the plurality of users;compute one or more compatibility matrices corresponding to one or more pair of users from the plurality of users based on the one or more matchmaking requests; identify one or more game environments for grouping of the plurality of users, wherein the one or more game environments comprise one of a two- user environment, a non-two user environment, or a combination thereof; group the plurality of users using one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices, wherein a first assignment technique from the one or more group assignment techniques is configured to group the plurality of users for the two-user environment, wherein a second assignment technique from the one or more group assignment techniques is configured to group the plurality of users for the non-two user environment; and provide the grouped plurality of users, for collaboration in the one or more game environments.
12. A non-transitory computer-readable storage medium having stored thereon, a set of computer-executable instructions causing a computer comprising one or more processors to perform steps comprising: receiving one or more matchmaking requests associated with the plurality of users; computing one or more compatibility matrices corresponding to one or more pair of users from the plurality of users based on the one or more matchmaking requests; identifying one or more game environments for grouping of the plurality of users, wherein the one or more game environments comprise one of a two-user environment, a non-two user environment, or a combination thereof;grouping the plurality of users using one or more group assignment techniques based on the one or more game environments and the one or more compatibility matrices, wherein a first assignment technique from the one or more group assignment techniques is configured to group the plurality of users for the two-user environment, wherein a second assignment technique from the one or more group assignment techniques is configured to group the plurality of users for the non-two user environment; and providing the grouped plurality of users, for collaboration in the one or more game environments.
Citation Information
Patent Citations
Multiplayer video game matchmaking system and methods
US20180111051A1
Collaborative electronic game play employing player classification and aggregation
WO2012075477A2