U.S. Pat. No. 7,604,541
SYSTEM AND METHOD FOR DETECTING COLLUSION IN ONLINE GAMING VIA CONDITIONAL BEHAVIOR
AssigneeINFORMATION EXTRACTION & TRANSPORT Inc; Information Extraction Transport Inc
Issue DateMarch 31, 2006
Illustrative Figure
Abstract
The present invention provides a system and method for detecting collusion in online gaming involving a plurality of players, the method comprising storing game information data and game action data on every action in every game for every player in the online gaming database, performing a player action analysis of correlated actions between a pair of online game players and storing data from the player action analysis in a user action database, employing one or more Bayesian Network graphical models to determine a likelihood of conditional behavior between the pair of online game players, computing individual scores for the Bayesian Network graphical models and comparing the score of a collusional model with that of a non-collusional model.
Description
DETAILED DESCRIPTION In the following paragraphs, the present invention will be described in detail by way of example with reference to the attached drawings. Throughout this description, the preferred embodiment and examples shown should be considered as exemplars, rather than as limitations on the present invention. As used herein, the “present invention” refers to any one of the embodiments of the invention described herein, and any equivalents. Furthermore, reference to various feature(s) of the “present invention” throughout this document does not mean that all claimed embodiments or methods must include the referenced feature(s). In accordance with the principles of the present invention, a system and method are provided for detecting collusion among players in online games. The system and method preferably implemented using a computer software program residing on a server of an online gaming firm. The software program comprises machine readable or interpretable instructions for gathering various data and determining whether hidden information was shared illegally between players of online games. The system and method described herein may involve detecting collusionary tactics through conditional behavior signatures, wherein the identification of conditional behavior may be performed using a Bayesian statistical algorithm in conjunction with a graphical model to represent the behavioral dependencies. The system and method set forth herein provide a process by which an online gaming firm can gather information from game play and analyze the information to detect collusion among players. When a player takes an action in a game, data sufficient to describe the action is stored in a database of the online gaming firm. Subsequently, the whole of the player's actions are analyzed conditional to other players' actions. Similarly, game information available only to the online gaming firm is stored in the database and referenced to the game being played and the players in the game. ...
DETAILED DESCRIPTION
In the following paragraphs, the present invention will be described in detail by way of example with reference to the attached drawings. Throughout this description, the preferred embodiment and examples shown should be considered as exemplars, rather than as limitations on the present invention. As used herein, the “present invention” refers to any one of the embodiments of the invention described herein, and any equivalents. Furthermore, reference to various feature(s) of the “present invention” throughout this document does not mean that all claimed embodiments or methods must include the referenced feature(s).
In accordance with the principles of the present invention, a system and method are provided for detecting collusion among players in online games. The system and method preferably implemented using a computer software program residing on a server of an online gaming firm. The software program comprises machine readable or interpretable instructions for gathering various data and determining whether hidden information was shared illegally between players of online games. The system and method described herein may involve detecting collusionary tactics through conditional behavior signatures, wherein the identification of conditional behavior may be performed using a Bayesian statistical algorithm in conjunction with a graphical model to represent the behavioral dependencies.
The system and method set forth herein provide a process by which an online gaming firm can gather information from game play and analyze the information to detect collusion among players. When a player takes an action in a game, data sufficient to describe the action is stored in a database of the online gaming firm. Subsequently, the whole of the player's actions are analyzed conditional to other players' actions. Similarly, game information available only to the online gaming firm is stored in the database and referenced to the game being played and the players in the game. Using the information stored in the database, the software program of the invention determines the probability of collusion between the players and reports its findings to appropriate online gaming firm authorities, if necessary. One feature of the software program of the invention involves the use of behavioral information and hidden information to examine the possibility of collaboration between players. Such hidden information is known only to the online gaming firm. This feature may involve the use of: (1) graphical models to represent conditional dependence and independence of players actions; and/or (2) Bayesian Statistical techniques to determine the likelihood of conditional behavior between players.
According to the invention, effective collusion occurs when hidden information is passed between two or more players. Hidden information refers to information that by the rules of the game should be known only to a single player. In poker there are many types of non-hidden information that are passed between players including, but not limited to, facial expressions, nervous ticks, reaction time and other “tells”. This type of information allows skilled poker players to better evaluate the strength of their opponents hands. Additionally, there exist many non-psychological forms of legal information transfer including, but not limited to, a player's bankroll, common cards and play history. Since the game revolves around decision-making with partial information, the most important hidden information is knowledge of an opposing player's hand. With this knowledge, other tactics such as a shared strategy are possible, giving colluders an unfair advantage in an otherwise fair game.
With regard to the detecting of collusional behavior in online gaming, the sharing of hidden information among players is ineffectual unless the colluding players act on the knowledge they gain from the hidden information. If players are colluding without acting on the hidden information received, or if they act in a manner consistent with fair play, they will gain no benefit from their cheating and there is no resultant problem to resolve. On the other hand, actions taken due to hidden information result in different types of behavior than non-colluding players will present. Detecting the differences in behavior of the colluding players is paramount to the system and method for collusion detection described herein.
In online gaming, there may exist conditional behavior among any two or more players, wherein one or more actions are undertaken based on the current known situation and a player's beliefs about the future. For example, a poker player may decide to fold based on another player's bankroll, play history or other non-hidden available information.FIG. 1illustrates this conditional behavior by showing that when Player 1's bankroll is high (step2) Player 2 is caused to fold (step4). Since the other player's bankroll is non-hidden information, this type of conditional behavior is legal. However, in the collusion paradigm, two or more players will have conditional behavior through a hidden form of information. Referring toFIG. 2, another example is provided wherein if a colluding partner (Player 1) has a strong hand (step6), then the other colluding player (Player 2) raises with a weak hand (step8). In this instance, Player 2's action of raising with a weak hand is conditional upon Player 1 having a strong hand. Since the other player's hand rank is hidden information in a legal game, this type of conditional behavior is indicative of collusional activities.
In order to detect causal behavior between players in an online poker game, the problem may be modeled as a Bayesian Network. Specifically, the conditional (and causal) nature of the problem may be described using conventional Bayesian Network formalism. Additionally, the Bayesian Network also provides a built in capability for both learning structures and scoring known structures against data. A Bayesian Score may then be employed to score different graph structures against data from poker games. In the simplest interpretation, if the structure with the highest score has an illegal causation, then the conclusion is that the players may be colluding.
Referring toFIG. 3, in accordance with the principles of the present invention, a preferred system10for detecting collusion in online gaming among a plurality of online game players14comprises a collusion detection suite12designed to discover collaboration among pairs of players in an online poker game. The preferred system10of present invention is presented in terms of online poker for illustrative purposes only, to particularly point out and describe the details of the invention. As would be appreciated by those of ordinary skill in the art, the system and method described herein may be employed for detecting collaboration in many other types of online games without departing from the scope of the invention. By way of example, the system and method of the invention may be used to detect collusion among players of online first person shooter games.
With continued reference toFIG. 3, the preferred system10comprises the collusion detection suite12, an online poker firm16, an online gaming server18, and an online gaming database20. In particular, the online poker firm16collects and stores data on every action in every game for every player14in the online gaming database20. The data is examined to determine the possibility that two or more players are collaborating with one another. Specifically, the collusion detection suite12examines data on every combination of pairs of players that are playing in the same game. The collusion detection suite12preferably includes a user action database22for storing information pertaining to correlated actions between two online game players14. The actions are correlated in the sense that the players14follow one another in the poker game. Additionally, the collusion detection suite12is employed to create one or more Bayesian Network graphical models24to determine the likelihood of conditional behavior between two online game players14. The online gaming server18comprises a host computer on a network that holds information and responds to requests for information. The term “server” is also used to refer to the software of the invention that resides on the server18. In general, the server18controls the functionality of the online games and sends game information and game action data to the online gaming database20, which stores this information.
The user action database22comprises various pertinent information regarding the selected pair of online players14(i.e., Player 1 & Player 2). Such information may include without limitation: (1) the actions of Player 1; (2) the hand strength of Player 1; (3) the actions of Player 2; and (4) the hand strength of Player 2. In operation, Player 1's data is always correlated to Player 2's data in that Player 2 is one step behind Player 1 in game play. As a result, Player 2's action or hand strength can be viewed as causing Player 1's action. Hand strength can be determined by any number of standard algorithms that are conventional and per se known in the art.
As set forth hereinabove, the collusion detection suite12is employed to score one or more Bayesian Network graphical models24to determine the likelihood of conditional behavior between two online game players14. The Bayesian Network graphical models24may be: (1) learned from known collusional and non-collusional data; (2) developed by experts; or (3) a combination thereof. The Bayesian Network graphical models24are designed to represent forms of collusional and non-collusional behavior. One model24describes collusional behavior, which is defined as behavior where the actions of Player 1 are correlated to Player 2's hand strength. Of course, in the game of poker, a player's hand is hidden information with respect to the other players, such that Player 2's hand strength would be unknown to Player 1. The remaining Bayesian Network graphical models24describe non-collusional or legal behavior. Scores for the individual models24may be computed via a Bayesian statistical technique.
After computing the score for the individual models, the collusion detection suite12compares the ratios of the scores of the collusional and non-collusional models. The collusion detection suite12may then use a conventional thresholding scheme to determine whether the collusional model is appropriate for the pair of online game players14in question. For example, given the data provided, the thresholding scheme may be employed to determine whether the collusional model has a higher score than that of the non-collusional models. If such a situation occurs, the system10may alert the online poker firm's security personnel of the possibility of unfair collusional play. By way of example, the alert may comprise an analysis results alert26in the form of a letter, email, text message, facsimile, or other conventional type of message.
With further reference toFIG. 3, a preferred method for detecting collusion in online gaming will now be described. Specifically, in step102, the online poker firm16collects data on every action in every game for every player14in the online gaming database20and sends the updated information to the database20via the online gaming server18. Step104involves storing game information data on every action in every game for every player12in the online gaming database20. Similarly, step105involves storing game action data on every action in every game for every player12in the online gaming database20. In step107, the collusion detection suite12performs a player action analysis of correlated actions between a pair of online game players14and builds the user action database22with data obtained in the player action analysis. Step109involves creating one or more Bayesian Network graphical models24using the collusion detection suite12. These models24are employed to determine the likelihood of conditional behavior between the pair of online game players14.
After determining the likelihood of conditional behavior, the method proceeds to step110, wherein individual scores for the Bayesian Network graphical models24are computed, for example using a Bayesian statistical technique. Step111involves comparing the score of the collusional model with that of the non-collusional model using the collusion detection suite12. In step112, the collusion detection suite12performs a collusion threshold analysis using a thresholding scheme to determine whether the collusional model is appropriate for the players in question. In step113, the system10sends an analysis results alert26(e.g., to the online poker firm's security personnel) to notify the online poker firm16of the possibility of unfair collusional play. Step113is performed only if it is determined that the collusional model is appropriate for the pair of players14in question.
The above-described method of the invention may involve the use of historical and/or streamed information that is employed to construct and analyze models of behavior for the detection of collusion on online gaming. Particularly, the method may be used to determine the likelihood of fairness of an online game, or to make a probabilistic evaluation of the play of a given player in the online game. The method may further comprise modeling collusionary and non-collusionary behavior in a graphical belief network. The method may be implemented using a system comprising a feed of actions, a Bayesian calculator, and a mechanism of reporting the results. The system may further comprise a mechanism to integrate with existing rules-based and manual approaches to augment existing capabilities.
To test the system and method for detecting collusion in online gaming described herein, a simulation capability was developed utilizing a group of automated poker players (“bots”) to simulate poker games. Specifically, off-the-shelf pre-built bots were used for the non-colluding players, whereas custom bots were developed to represent colluding players. All tests were done in a simulator targeting a $20/$40 cash limit version of Texas Hold-em poker. Such cash limit games are an easy target for bots and humans wishing to collude.
In order to produce colluding bots, off-the-shelf bots were modified to include some basic collusion capabilities. Particularly, these bots were customized to know what their colluders' cards are from the very first moment they are dealt. Additionally, the bots were modified to have the capability to re-evaluate all hand probabilities of all players with the knowledge of their colluders' cards. In other words, the customized, colluding bots were tailored to have different, more accurate, probability distributions stored for the other players' hands than non-colluding, off-the-shelf bots. An algorithm was then employed to determine how the bots would collude by observing the actions taken. For the following discussion, the colluding bots are referred to as Bot1and Bot2, and it is assumed that there are more players at the table than just the two colluding bots.
Pursuant to the collusion detection algorithm, if Bot2's hand rank is calculated to be greater than a predetermined value X, and Bot2's hand rank is better than this Bot1's hand rank, then Bot1plays the hand as if it has the same cards as Bot2and is in the same position at the table as Bot2. Otherwise, Bot1plays the hand as normal, on the merits of Bot1's hand only. This algorithm has the effect of allowing the bots to play as if they had the stronger hand, thereby raising the pot up even if they have a weaker hand. However, the algorithm accounts for the condition where the colluding bots are the only bots left in a hand by causing the bot with the weaker to fold. This collusion algorithm comprises a reasonable approximation as to what actual human colluding players would do; playing like they had the stronger hand to increase winnings until they are the only players left.
During testing of the collusion detection algorithm, several thousand games were run for three different values (0.25, 0.5, 0.75, where hand rank was parameterized from 0 to 1) of the X parameter. The three datasets correspond to three different levels of intensity of collusion (in poker terms, from very tight to very loose). The data was then loaded into a relational database for analysis against the collusion detection algorithm. The attribute variables from the relational database that were considered for analysis included: (1) player hand rank; (2) opponent hand rank; (3) player action; and (4) opponent action. Player and opponent refer to the pair of players that are being analyzed. The whole set of variables was produced at every action point during the game, such that each game yielded several variable sets. Other combinations of attribute variables were tried (such as including player position at the table and betting round), but showed no improvement from the minimum set mentioned above.
After the generation of the three datasets, two layers of analysis were run on the dataset. The first layer of analysis involved the learning of graph structures to determine what collusion looks like for these bots, and by extension, for collusion in general. The second layer of analysis examined the results of scoring the learned graph structures against all pairs of players to verify the discrimination power of the collusion detection algorithm. Specifically, standard Bayesian structure learning techniques and a genetic algorithm were used to search through different graph structures for the highest scoring graph structure given the observed data. Given the set of four variables set forth above, every player against every other player was tested, resulting in a maximum of five (out of a possible 16) distinct graph structures from every combination of players in every dataset.
In each dataset, for the pair of colluding players, a graph was produced showing an illegal hidden relationship between the opponent's hand rank and the player's action.FIG. 4illustrates a graph of the learned Bayesian Network for colluding bots, wherein a direct causal link exists between opponent hand rank and player action. An illegal hidden relationship was not present for most of the non-colluding player pairs.FIG. 5illustrates a first non-collusion graph, wherein no hidden information forms a causal link. Similarly,FIG. 6illustrates a second non-collusion graph, wherein no hidden information forms a causal link, whileFIG. 7illustrates a third non-collusion graph, wherein no hidden information forms a causal link.FIG. 8illustrates a fourth non-collusion graph, wherein no hidden information forms a causal link. The collusion detection algorithm of the invention was able to uniquely identify collusion behavior in all three of the bot datasets (i.e., 0.25, 0.5, 0.75).
The five distinct graph structures for collusion and non-collusion illustrated inFIGS. 4-8were examined in view of the discriminating power of the collusion detection algorithm. Specifically, this was accomplished by computing the score of all the learned graph structures (for a given dataset) of the graph structures described above while varying the number of games (and hence number of variable sets) being scored. Then, performance curves were built to depicts how well the collusion detection algorithm performs with varying amounts of data. To plot the comparisons on one chart, the logarithm of the Bayesian Score (an odds-ratio) is calculated between the collusion graph (FIG. 4, numerator of the odds ratio) and the other learned non-collusion graphs (FIGS. 5-8, denominator of odds ratio). The ratio is computed relative to the colluding graph, such that a positive ratio indicates that the colluding graph is favored. When all the curves become positive it indicates that the collusion model is favored over all others.
FIGS. 9-11illustrate the effect of the number of games on the odds-ratio for the two colluding bots. These figures depict the effect of varying the amount of data going into scoring of the graph structures for colluding players, wherein all graphs are compared to the graph ofFIG. 4to compute the odds ratio. In particular, the graph ofFIG. 9represents the effect of number of games on the odds-ratio for the X=0.25 dataset. InFIG. 9, one is able to distinguish between colluding and non-colluding models by about the 500 game mark where X=0.25. When X=0.25, the colluders play the loosest (collude the most). The graph ofFIG. 10represents the effect of number of games on the odds-ratio for the X=0.5 dataset, whereas the graph ofFIG. 11represents the effect of number of games on the odds-ratio for the X=0.75 dataset. InFIG. 10, one is able to distinguish between colluding and non-colluding models by about the 800 game mark where X=0.5. InFIG. 11, one is able to distinguish between colluding and non-colluding models by about the 1000 game mark in the worst case where X=0.75. When X=0.25, the colluders play the tightest (collude the least).
As a counter-example,FIGS. 12-14depict graphs that illustrate the effect of the number of games on a randomly selected set of non-colluding players, wherein all graphs are compared to the graph ofFIG. 4to compute the odds ratio. In this case, negative odds ratios indicate that colluding is not taking place. When any curve stays negative, collusion is not the most favored model, such that a non-colluding model may be more favored than the collusion model. Particularly,FIG. 12illustrates a graph that represents the effect of varying the amount of data going into scoring of the graph structures for non-colluding players where X=0.25. The graph ofFIG. 13illustrates a graph that represents the effect of varying the amount of data going into scoring of the graph structures for non-colluding players where X=0.5, while the graph ofFIG. 14illustrates a graph that represents the effect of varying the amount of data going into scoring of the graph structures for non-colluding players where X=0.75. InFIGS. 12-14, one can see that one of the models (such as the model ofFIG. 6) does not support the colluding model. The lack of support for the colluding model at relatively small numbers of games (e.g., 200) reasonably indicates that there is no collusion between the pair of players.
The system and method for detecting collusion in online gaming for online gaming described herein is based on the hypothesis that colluders will have conditional behavior based on hidden information. The method was applied to data produced through a poker simulation utilizing bots which collude with a reasonably realistic collusion algorithm. The structure of both fair play and collusion Bayesian Networks was learned and then applied to show the discrimination power of our collusion detection algorithm. Using the system and method of the invention, one can uniquely identify colluders most of the time in on the order of 500 to 800 games for looser colluding strategies. This sort of behavioral strategy for detecting colluders offers great promise as a knowledge-light way of determining collusion that is difficult to defeat without severely limiting collusion strategies and payoff. The strategy is in contrast to a knowledge heavy rule-based system that can be exploited.
Thus, it is seen that a method for detecting collusion in online gaming via conditional behavior is provided. One skilled in the art will appreciate that the present invention can be practiced by other than the various embodiments and preferred embodiments, which are presented in this description for purposes of illustration and not of limitation, and the present invention is limited only by the claims that follow. It is noted that equivalents for the particular embodiments discussed in this description may practice the invention as well.
Claims
- A method for detecting collusion in online poker involving a plurality of players, comprising the steps of: collecting data on every action in every game for every player and sending the data to an online poker database;storing hidden game information data on every action in every game for every player in the online poker database;storing game action data on every action in every game for every player in the online poker database;performing a player action analysis of correlated actions between a pair of online poker players and building a user action database with data obtained in the player action analysis;creating two or more Bayesian Network graphical models including at least one collusional model to represent forms of collusional behavior and at least one non-collusional model to represent forms of non-collusional behavior;employing the created Bayesian Network graphical models to determine a likelihood of conditional behavior between the pair of online poker players;after determining the likelihood of conditional behavior, computing individual scores for the Bayesian Network graphical models using a Bayesian statistical technique;comparing the computed score of a collusional model with that of a non-collusional model;after comparing the computed scores, performing a collusion threshold analysis using a thresholding scheme to determine whether the collusional model indicates collusion for the pair of online poker players;and notifying an appropriate party of unfair collusional play if it is determined that the collusional model is appropriate for the pair of online poker players.
- The method of claim 1 , further comprising the step of sending an analysis results alert to notify an appropriate online poker firm of the possibility of unfair collusional play.
- The method of claim 1 , wherein the step of collecting data involves the collection of historical information that is used to construct and analyze models of behavior for the detection of collusion.
- The method of claim 1 , wherein the step of collecting data involves the collection of streamed information that is used to construct and analyze models of behavior for the detection of collusion.
- The method of claim 1 , further comprising the step of determining a likelihood of fairness of a particular poker game.
- The method of claim 1 , further comprising the step of probabilistically evaluating the play of a particular online poker player.
- A system for detecting collusion in online poker among a plurality of online poker players, comprising: an online poker firm;a collusion detection suite designed to discover collaboration among pairs of players in an online poker game;an online poker server that controls the functionality of online games;an online poker database that receives hidden game information and game action data from the online poker server;a first Bayesian Network graphical models designed to represent forms of collusional behavior;and a second Bayesian Network graphical models designed to represent forms of non-collusional behavior;wherein the online poker firm collects and stores data on every action in every game for every player in the online poker database;wherein the collusion detection suite examines the data in the online poker database to determine the likelihood that two or more online poker players are collaborating with one another;wherein the collusion detection suite is employed to create one or more Bayesian Network graphical models to determine the likelihood of conditional behavior between a pair of online poker players;wherein the collusion detection suite compares the scores of the collusional and non-collusional models;and wherein the collusion detection suite uses a thresholding scheme to determine whether the collusional model is appropriate for the pair of online poker players wherein an appropriate party is notified of unfair collusional play if it is determined that the collusional model is appropriate for the pair of online poker players.
- The system of claim 7 , wherein the collusion detection suite examines data on every combination of pairs of players that are playing in the same poker game.
- The system of claim 7 , wherein the collusion detection suite includes a user action database for storing information pertaining to correlated actions between two online poker players.
- The system of claim 7 , wherein the system alerts the online poker firm of the possibility of unfair collusional play if the collusion detection suite determines that the collusional model is appropriate for the pair of online poker game players.
Disclaimer: Data collected from the USPTO and may be malformed, incomplete, and/or otherwise inaccurate.