The subject matter described herein relates to systems, apparatus, methods and articles for determining a skill factor for a digital game.
Many digital games require both skill and luck to play well. What does it mean for chance to dominate skill, or vice versa? The extremes of the skill and chance spectrum are relatively easy to identify. For example, a video game that simulates throwing dice is purely a game of chance. Conversely, a video chess game is purely a game of skill. Additional examples of games of skill include checkers, billiards, and bowling. By contrast, raffle and roulette are games of pure chance.
However, many games are comprised of a mix of skill and chance. For those cases, the term skill factor or dominant factor relates to an inquiry into the relative proportions of skill and chance. When chance is an integral part that influences the result, chance dominates the game. In other words, for skill to dominate, skill must control the final result and the final result must be within the players control to a certain degree. However, this determination is often subjective, and therefore reasonable minds may differ regarding whether a game outcome is dominated by skill or chance.
In an aspect, data characterizing a quantifiable outcome for each of a plurality of game trials can be accessed. Each game trial can be associated with one of a plurality of players and a game. The game can be a digital game played on a computing platform. Using the accessed data, a first variance measure of the quantifiable outcome for all game trials associated with the plurality of players can be computed. For one or more of the plurality of players and using the accessed data, a second variance measure of the quantifiable outcome for the game trials associated with the one or more of the plurality of players can be computed. Based on at least the first variance measure and the second variance measure, a skill factor for the game can be computed. Data characterizing the skill factor can be provided.
In another aspect, data characterizing a quantifiable outcome for each of a plurality of game trials can be accessed. Each game trial can be associated with one of a plurality of players and a game. The game can be a digital game played on a computing platform. Using the accessed data, at least two variance measures of the quantifiable outcome for the game trials associated with the plurality of players can be computed. Based on at least the computed variance measures, a dominant factor between skill and chance for the game can be computed. Data characterizing the dominant factor can be provided.
In yet another aspect, data characterizing a request to access digital games of skill can be received. A characterization of two or more digital games of skill can be presented in a graphical user interface. In response to a selection of one of the games, the selected game can be initiated. The games can be classified as games of skill by accessing data characterizing a quantifiable outcome for each of a plurality of game trials. Each game trial can be associated with one of a plurality of players and a game. The game can be a digital game played on a computing platform. Using the accessed data, at least two variance measures of the quantifiable outcome can be computed. Based on the computed variance measures, a dominant factor for the game can be computed. The game can be classified as one of skill when the dominant factor for the game indicates the game is predominately a game of skill.
One or more of the following features can be included in any feasible combination. For example, using the skill factor, whether a dominant factor of game outcome in the game is skill or chance can be determined. The game can be classified as a game of skill or a game of chance. The quantifiable outcome of each game trial can be independent from all other quantifiable outcomes of the plurality of game trials. A confidence level of the skill factor can be determined. A likelihood a classification of the game as a game of skill or a game of chance is incorrect can be determined. The skill factor can be classified as unclassifiable.
Computing the first variance measure can include computing a percentile score. Computing the second variance measure can include computing a percentile score. Computing the first variance measure can include computing a normal distribution. Computing the second variance measure includes computing a normal distribution. Computing the second variance measure can include computing a sample variance. Computing the second variance measure can include computing a weighted average of outcome variances of each of the one or more of the plurality of players. The weights can be based on an amount of trials associated with each player. Determining the game skill factor can be further based on a predetermined skill factor of one or more games known to be purely skill. Computing the at least two variance measures can include one or more of: computing a percentile score, computing a normal distribution, and computing a sample variance.
Computer program products are also described that comprise non-transitory computer readable media storing instructions, which when executed by at least one data processors of one or more computing systems, causes at least one data processor to perform operations herein. Similarly, computer systems are also described that may include one or more data processors and a memory coupled to the one or more data processors. The memory may temporarily or permanently store instructions that cause at least one processor to perform one or more of the operations described herein. In addition, methods can be implemented by one or more data processors either within a single computing system or distributed among two or more computing systems.
The subject matter described herein provides many advantages. For example, a game dominant factor can be determined objectively rather than subjectively. The determination can be automatic and further a degree of skill or chance can be determined, rather than merely a classification as purely skill or purely chance. Additionally, a probability that the determination is incorrect can be computed to provide a level of confidence in the determination.
The details of one or more variations of the subject matter described herein are set forth in the accompanying drawings and the description below. Other features and advantages of the subject matter described herein will be apparent from the description and drawings, and from the claims.
Like reference symbols in the various drawings indicate like elements.
A first variance measure of the quantifiable outcome for all game trials associated with the plurality of players is computed using the accessed data at 120. A second variance measure of the quantifiable outcome for the game trials associated with one or more of the plurality of players is computed using the accessed data at 130. Each variance measure can be a measure of how far a set of numbers (i.e., set of quantifiable outcomes) is spread out. The variance is a parameter describing in part either the actual probability distribution of an observed population of numbers, or the theoretical probability distribution of a not-fully-observed population of numbers. A sample of data from such a distribution can be used to construct an estimate of its variance. A variance measure can be a moment of a distribution.
A skill factor is determined based on at least the first variance measure and the second variance measure at 140. The skill factor is provided at 150. Providing can include transmitting, persisting, displaying, and processing. The skill factor can be used to determine whether a dominant factor of game outcome in the game is skill or chance. The game can be classified as a game of skill, a game of chance, and/or unclassifiable by comparing the dominant factor to a predetermined threshold or a pre-computed threshold. The predetermined threshold can vary based on a definition of a game of skill (e.g., a definition of how much skill should dominate chance). A confidence level of the skill factor or classification can be determined. A likelihood the classification is incorrect can be determined.
In a game of pure chance, the quantifiable outcome variation experienced by a single player over many trials will be similar to the quantifiable outcome variation of all trials by all players.
The game server 520 can receive a request to access the game from the user clients 530i and initiate at the user clients 530i a presentation, in a graphical user interface, a characterization of two or more digital games that were classified as a game of skill using the classification server 510. In response to a selection of one of the games of skill, the game server 520 initiates and provides game data for the selected game to enable one or more of the plurality of user clients 530, to play the game.
In an example implementation, total variance σ2 can represent the variation in quantifiable outcome over all game trials, regardless of associated player identity. The mean variance
Skill factor S can be defined as:
Skill factor S, which represents variation in performance due to skill, will be zero or near zero for a game of pure chance. In a game of pure skill, S will be greater than zero (R will be less than one). The mean variance
Initially, a dataset for a game G comprises m trials or records with a quantifiable outcome and player identifier. If a data entry includes k scores for competing players, that can be treated as k records for each player. The player identifier can include a computer address. The quantifiable outcome or scores can be labeled xl through xm. The scores for player j are designated xj,l through xj,m, where mj is the number of scores associated with player j.
Quantifiable outcome (e.g., score) may not be proportional to player performance. To compensate for the lack of proportionality, scores can be converted to a common scale. In a percentile score, each score can be converted to a number between 0 and 1 reflecting the fraction of scores that are lower than the given one, plus half the fraction that are equal. The following equation can convert a quantifiable outcome xi, x2, xp, to percentile scores yi, y2, . . . , ym.
yi=1/m(|{j:xj<xi}|+1/2|+1/2|{j:xj=xi}|)
Where i is an index of all trials in a dataset, j is index of players, xi is the score of the ith trial, m is the total number of score, and y, is the percentile score. The mean of a set of percentiles is always ½.
The percentile score can be converted to standard-normal using an inverse standard error function according to the following equation.
z=√{square root over (2)}erf−1(2y−1)
Where zi is the corresponding standard normal score of percentile score yi. The error function is defined as:
(The normal score zi can be used interchangeably with yi in the equations described herein, depending on whether the percentile score or standard normal score is desired.)
A sample variance can be computed according to the following equation.
Where sj2 is the sample variance of player j, mj is the number of trials played by (e.g., associated with) player j, yj,k is the percentile score of the player's kth trial, and
The sample variance can be weighted according to the number of trials associated with each player. This gives greater importance to datasets with more trials (and therefore an accurate estimate of the sample variance). Each sample variance sj2 is a random variable, whose variance, in a game of pure luck, is given by:
Where κ is the excess kurtosis of the population distribution. If μ4 is the fourth moment of the population, then k:=μ4/σ4−3. κ gives the value 0 for the normal distribution and is negative for the platykurtic uniform distribution. For a standard normal population, the distribution of sj2 is given by:
Where χ is the chi-squared distribution. Since κ=0 and σ2=1, the variance formula is
Weighting can provide additional accuracy by prioritizing players with a greater number of trials. For any set of weights wj, which sum to 1, the following equation can minimize the variance of sj2.
2 can then be computed as:
Using this formulation for
The overall population variance σ2 can be defined as:
Having both
In order to determine or classify a game as predominantly skill or predominantly chance, data for a set of games of pure skill is obtained. A skill factor can be computed (described above) for each game in the set and averaged to get a benchmark skill factor S0. For the game to be classified, the data G can be obtained. The skill factor S is computed for the game to be classified and can be compared to ½S0. The game can be classified as predominately a game of skill if S>½S0 and predominantly a game of chance if S<½S0. When S and ½S0 are similar, a confidence measure or probability that the estimate of S is in error can be used to determine if the game should be designated unclassifiable. The statistical variation in S can be assumed to be the same for a game that is predominantly a game of skill or a game of chance. As described above, the variance of the skill factor is:
Games can be unclassifiable if the difference between S and ½S0 is within two standard deviations from the mean. In other words, games are unclassifiable if the following is true:
If data of a game is unclassifiable, a larger set of data (i.e., more trials) can be obtained. When the game is classifiable, if S>½S0, the game is classified as predominantly skill; if S<½S0, the game is classified as predominantly chance.
As an example, if the data includes 1000 scores for 100 players, so that the standard deviation of S is s=1/(√{square root over (900)})= 1/30. Then 2s= 1/15, and if S0=½, then: if S≧¼+ 1/15˜0.32, the game is predominantly skill; if S≦¼−⅕˜0.18, the game is predominantly chance; and if 0.18<S<0.32, the game is unclassifiable. If the dataset instead is 10,000 scores for 1000 players, and s shrinks by a factor of √{square root over (10)}, then: if S≧0.27, the game is predominantly skill; if S≦0.23, the game is predominantly chance; and if 0.23<S<0.27, the game is unclassifiable.
Various implementations of the subject matter described herein may be realized in digital electronic circuitry, integrated circuitry, specially designed ASICs (application specific integrated circuits), computer hardware, firmware, software, and/or combinations thereof. These various implementations may include implementation in one or more computer programs that are executable and/or interpretable on a programmable system including at least one programmable processor, which may be special or general purpose, coupled to receive data and instructions from, and to transmit data and instructions to, a storage system, at least one input device, and at least one output device.
These computer programs (also known as programs, software, software applications or code) include machine instructions for a programmable processor, and may be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly/machine language. As used herein, the term “machine-readable medium” refers to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The term “machine-readable signal” refers to any signal used to provide machine instructions and/or data to a programmable processor.
To provide for interaction with a user, the subject matter described herein may be implemented on a computer having a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user and a keyboard and a pointing device (e.g., a mouse or a trackball) by which the user may provide input to the computer. Other kinds of devices may be used to provide for interaction with a user as well; for example, feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form, including acoustic, speech, or tactile input.
The subject matter described herein may be implemented in a computing system that includes a back-end component (e.g., as a data server), or that includes a middleware component (e.g., an application server), or that includes a front-end component (e.g., a client computer having a graphical user interface or a Web browser through which a user may interact with an implementation of the subject matter described herein), or any combination of such back-end, middleware, or front-end components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (“LAN”), a wide area network (“WAN”), and the Internet.
The computing system may include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other.
Although a few variations have been described in detail above, other modifications are possible. For example, the logic flow depicted in the accompanying figures and described herein do not require the particular order shown, or sequential order, to achieve desirable results. Other embodiments may be within the scope of the following claims.
This application claims priority to U.S. Provisional Patent Application No. 61/816,930 filed Apr. 29, 2013, the entire contents of which is hereby expressly incorporated by reference in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
20090325709 | Shi | Dec 2009 | A1 |
20100222124 | Goshen | Sep 2010 | A1 |
20130165196 | Kroeckel et al. | Jun 2013 | A1 |
Number | Date | Country | |
---|---|---|---|
61816930 | Apr 2013 | US |