|European Case Law Identifier:||ECLI:EP:BA:2013:T004210.20130228|
|Date of decision:||28 February 2013|
|Case number:||T 0042/10|
|IPC class:||G06Q 10/00|
|Language of proceedings:||EN|
|Download and more information:||
|Title of application:||Determining relative skills of players|
|Applicant name:||Microsoft Corporation|
|Relevant legal provisions:||
|Keywords:||Inventive step - (no)|
See points 2.13.2 and 2.14.
Summary of Facts and Submissions
I. The appeal is against the Examining Division's decision to refuse European patent application 06270014.1. They found that there was a lack of inventive step, because the skilled person had the task of implementing a mathematical method, and because an implementation using factor graphs would have been obvious.
II. In the statement setting out its grounds of appeal, the appellant requested that the Examining Division's decision be set aside and that a patent be granted on the basis of the main request or the first or second auxiliary requests which had been filed as the third, fourth and fifth auxiliary requests before the Examining Division on 6 August 2009. The appellant also requested that oral proceedings be held, if none of those were accepted as being patentable on the basis of its written statements.
III. The Board arranged for oral proceedings to be held, at which both this case and the related case T 1281/10 would be considered. In an annex to the summons, the Board presented its provisional opinion.
IV. Oral proceedings were held as scheduled. The appellant's final requests were identical to those set out above.
V. Claim 1 according to the main request reads as follows.
A computer-implemented method of determining an indication of the relative skill (205) of at least a first player and a second player of a game based on the outcome of one or more such games involving those players said method comprising the steps of:
(i) arranging a processor (204) to, for each player, set statistics (200) describing a probability distribution associated with skill of that player to default values;
(ii) at the processor (204) receiving information about the outcome (201) of one of the games;
(iii) arranging the processor (204) to form and store a factor graph comprising variable nodes and factor nodes, the factor nodes having associated calculation rules, said graph being formed using the received information about the outcome, and arranging the processor (204) to instantiate at least some of the variable nodes with the statistics; and arranging the processor to form and store the factor graph such that it comprises a plurality of first groups of nodes, each first group being associated with a particular player and comprising nodes linked in series; and
(iv) arranging the processor (204) to update the statistics associated with each player by applying message passing to the factor graph using the calculation rules;
(v) arranging the processor to repeat the process of updating the statistics as further game outcomes are received
VI. Claim 1 according to the first auxiliary request reads identically, except for the following, added after "comprising nodes linked in series" at the end of step (iii).
[... comprising nodes linked in series] and wherein said first groups of nodes are linked with edges such that the order of the linking reflects the outcome of the game; [and ...]
VII. Claim 1 according to the second auxiliary request reads as in auxiliary request 1, except that steps (ii) and (iii) read as follows.
(ii) at the processor (204) receiving information about the outcome (201) of one of the games comprising a partial ranking of players said partial ranking comprising order information for at least one player as compared to a plurality of other players and no order information among the plurality of said other players;
(iii) arranging the processor (204) to form and store a factor graph comprising variable nodes and factor nodes, the factor nodes having associated calculation rules, said graph being formed using the received information about the outcome, and arranging the processor (204) to instantiate at least some of the variable nodes with the statistics; and arranging the processor to form the factor graph such that it comprises a plurality of first groups of nodes, each first group being associated with a particular player and comprising nodes linked in series and wherein said first groups of nodes are linked with edges such that the order of the linking reflects the outcome of the game; and wherein a link is created between a node associated with said at least one player and a node associated with each of the said other players;
VIII. The appellant's arguments, as far as they are relevant to this decision, can be summarised as follows.
The invention addressed and solved the technical problem of controlling an online gaming system so as to keep players interested. It did that by tracking their performance so that suitable opponents could be found. According to T 717/05, Auxiliary game/LABTRONIX CONCEPT INC., not published in the OJ EPO, using technical means to keep a player's interest was technical.
Moreover, methods of measuring were patentable and were a special subcategory of methods mentioned in T 619/02, Odour selection/QUEST INTERNATIONAL, OJ EPO 2007, 63, at 2.4.1.
In the present case, there was no psychological assessment, but simply observations of game outcomes and the mathematics involved were not abstract but applied to a real-world situation, which might depend, for example, on reaction times or hand - eye coordination. As a result, the arguments against technicality did not apply. The measurement of skill, in the present case, was technical irrespective of the implementation on a computer.
The invention carried out the updating of the probability distributions that represent the players' performance by forming a factor graph and passing messages. Factor graphs were technical, because, by allowing message passing algorithms, computation time can be reduced, while accuracy is maintained, and this was an effect produced by interaction with the processor. That effect would not be obtained if the same calculations were carried out by hand. In that case, they would take longer. The speed of processing was important, because it allowed the system to cope with millions of players. It was irrelevant that Article 52(2) EPC excluded all mathematical methods, because the mathematics here were not purely abstract, but were applied to measurement and to the use of a particular data structure. That was different from the situation in the decision of the Court of Appeal of England and Wales in Re Gale's Application  RPC 305, which concerned a particular method of calculating a square root. While the calculation of a square root was an abstract mathematical method, the application of a mathematical method to the measurement of a player's skill was not abstract at all. The data involved was also not abstract data; nor was it cognitive or administrative. It was functional data, because it was used for the function of measuring players' skills.
A further technical effect, was a reduction in traffic on the network, because a player could quickly find suitable opponents and would not need to scroll through a long list with many unsuitable opponents first, and because the same accuracy could be obtained with observations from fewer matches. The latter effect was stronger in the second auxiliary request, because the use of partial ranking information allowed more matches to contribute to the measurement of a player's performance.
Reasons for the Decision
1.1 This case is related to T 1281/10. In T 1281/10, the invention concerned the representation of how well game players performed, the use of that representation in tracking performance, and the use of the outcomes to find suitable opponents. The present case is concerned with a particular way of carrying out the calculations involved in tracking performance.
1.2 The basic idea in tracking performance is to represent performance not simply as a score, but as a probability distribution. In practice, Gaussian distributions are used, each represented by its mean and variance. Intuitively, a player with a high mean tends to perform well; a player with high variance will have a large spread of results about the mean, while a player with low variance consistently gets results close to the mean.
1.3 The tracking of performance can be applied to teams, as well as to individual players.
1.4 As games are played, results are collected and the distributions that represent the players' performances are updated. When the distributions are Gaussian and represented by their means and variances, a straightforward set of update equations results. However, the computational complexity increases as the cube of the number of teams.
1.5 The invention deals with that rise in complexity by using "factor graphs". A factor graph is a way of representing a calculation as a bi-partite graph (the application suggests, in paragraph  as published, that it need not be bipartite, but that seems to be an incautious use of the word "preferably," and nothing in this decision depends on the precise definition.) It has one set of nodes, each of which represents a variable, and another distinct set of nodes, each of which represents an operation. There is an edge between a node in the first set and a node in the second exactly when the variable represented by the first node is used in, or is produced by, the operation represented by the second. As an example, the equation z = x + y would be represented by three variable nodes, one for each of x, y, and z; and one operation node for +. The latter is connected to each of the former, and there are no other connections.
A factor graph performs calculations by passing messages between nodes. Those variable nodes that form the input to an operation pass their values to the operation node. Operation nodes pass their results to output nodes. In the example of z = x + y, the x and y nodes pass the values of x and y to the + node; the + node passes the result of its operation to the z node. The graphs will generally be much more complicated than this.
Main request, claim 1, inventive step
2. Main request, claim 1, inventive step
2.1 Claim 1 according to the main request defines a method that, based on outcomes of games, calculates indications of the skills of the players, by passing messages between nodes of a factor graph. It is necessary to determine in how far the features of the claim have technical character and so could contribute to inventive step.
2.2 The appellant, relying on paragraph 2.4.1 of T 619/02, argues that the method of assessing player performance is technical by virtue of being a method of measuring.
2.3 The board notes that T 619/02 does not say that all methods of measuring are technical. It must therefore be assessed whether the measurement can be accepted as technical in the present case.
2.4 The term "measurement" is rather broad. It encompasses finding the spectrum of the hydrogen atom, or the salinity of sea water; but also whether one political party is more or less popular than another. In T 619/02, the measurement was of reactions to odours, and it was found to be non-technical. The appellant seeks to distinguish the present case, arguing that the reasons for rejecting the method in T 619/02 do not apply to the present case, because there are no psychological assessments involved.
2.5 In the Board's view, the lack of psychological assessments cannot, alone, be determinative. What is needed is a technical problem and a technical solution to it, i.e. a technical effect. However, judging the skill of a game player does not seem to involve a physical change at all, still less a technical effect.
2.6 In this context, the appellant argues that the measurement of player performance might involve the measurement of hand-eye coordination or of reaction times. However, the claimed method does not measure reaction times, or use it to deduce information on performance. Nor does it take the information on performance and deduce anything about reaction times. The reaction time is never known. The same goes for hand-eye coordination. In fact, the claimed method is in no way limited to games in which reaction time or hand-eye coordination are important. It applies to chess as much as to football, and to poker as much as to pinball.
2.7 The Board, therefore, sees clear reasons for considering the measurement of performance in games as non-technical.
2.8 The appellant's second argument is based on paragraph 5.9 of T 717/05, in which it is stated that "amusement is the psychological purpose of a gaming apparatus and is the relevant objective technical problem to the extent that the enhanced amusement is achieved by technical features of the claim."
2.9 In T 717/05, the deciding Board did indeed hold that the step of monitoring outcomes of games was a technical feature, but only in combination with the step of displaying them (paragraph 5.6 with paragraph 4.5). The displaying step was necessary, since it permitted the player to be informed about the development of the game, thus addressing the problem of maintaining interest (paragraph 5.1). The present claim, however, does not require the players' scores to be displayed, but only to be calculated. For this reason alone, T 717/05 does not appear to be relevant. A more basic reason is that the Board has strong doubts that amusement, even if achieved by technical (in particular, computing and displaying) means, really is a technical problem. If it were, any dull computer game could be regarded a posing a technical problem that could be solved by any less dull game. The difficulties involved in such a view are evident (the skilled person need not be skilled in a technical art; the effect would be subjective), and the decision has been largely ignored in the jurisprudence of the Boards of Appeal. T 528/07, Portal system/ACCENTURE, not published in the OJ EPO, expressly declined to follow the approach taken in T 717/05.
2.10 The appellant's third argument is that factor graphs, and the associated message passing algorithm, are technical. They address the technical problem of speeding up computation.
2.11 In its full generality, speed of computation is a mathematical problem. It may be the case that a computer has a particular processor that is particularly good, or particularly poor, at some (class of) operations. Recasting a mathematical method so as to take advantage of what the processor does quickly, or to avoid what it does slowly, might involve technical considerations. In such a case, the recast method, when performed on that particular processor, might not be "just" mathematical but also be technical. However, not all recasting of mathematical methods in order to increase speed are technical. In the days when people looked up trigonometric functions in tables, recasting a method so as to reduce the number of times the tables had to be consulted might speed up computation, but nothing technical was happening.
2.12 The appellant has not provided any evidence that there really is an increase in speed of computation. There is no analysis of the complexity of any prior art method of performing the same sort of calculation, and there is none of the complexity using factor graphs. Nor has the appellant provided any evidence for its assertion that the increase in speed would only be obtained on a computer, whereas calculations by hand would be slower. However, the Board also considers that, even if the increase in speed were established, it would not be an increase which solved a technical problem, and that is enough to reject the argument. According to the application (paragraph  as published), it does not matter what sort of technical apparatus is used to perform the calculations. What matters is only the ability to carry out the necessary steps. It follows from that, that any improvement in speed is inherent in the method of calculation. It does not result from exploiting ability or avoiding some lack in the computer. At best, if the appellant is correct, and there is an increase in speed which only occurs on computers, it is a matter of abstract computer science.
2.13 During oral proceedings before the board, Re Gale's Application (supra) was briefly discussed, and the Board finds it useful to comment on it.
2.13.1 Mr Gale had found an algorithm for calculating square roots, which he had implemented as a computer program. The court was concerned with the question of whether that was excluded under Section 1(2) of the Patents Act 1977. That provision gives effect, in UK law, to Article 52(2) EPC. Lord Justice Nicholls delivered the lead judgment. He found that the program did not "embody a technical process which [existed] outside the computer," and that although the computer "will be a better computer when programmed with Mr Gale's instructions," it did not "solve a 'technical' problem lying within the computer."
2.13.2 The Board's approach to assessing questions of what is and what is not technical about a computer-implemented method, in this case, asks the same questions as Nicholls LJ in Re Gale's Application. The first is: what does the method as a whole do, and does it produce an overall technical result? The second is: if there is no overall technical result, does the method at least have a technical effect within the computer? If both questions are answered in the negative, no technical problem has been solved and there can be no inventive step.
2.14 The Board's view regarding technicality can be summarized as follows.
2.14.1 The overall aim of keeping players interested is not technical.
2.14.2 The intermediary aim of assessing and comparing playing performance is not technical.
2.14.3 The representation of performance by probability distributions, and the updating of them, are mathematical methods.
2.14.4 The use of factor graphs with message passing is a matter of mathematics or abstract computer science.
2.15 Given the Board's conclusions regarding technicality, the only technical feature defined in this claim is the (computer) processor. The subject matter of claim 1, therefore, does not involve an inventive step if it would have been obvious to the skilled person, who has the task of implementing the method, to use a computer processor.
2.16 It is not disputed that suitable computer processors were well known at the filing date (10 February 2006). The skilled person would have been aware that they would be able to carry out the mathematical operations involved in forming a factor graph and passing messages between nodes. Indeed, the method involves the collection of data, possibly large amounts of data, and the carrying out of calculations on it. That is just what computer processors were designed to be good at. It would, then, have been obvious to use them.
2.17 The appellant's argument that online Bayesian learning was not (well) known at the filing date does not affect the conclusion, even if correct. That is because the Bayesian learning is already part of the non-technical method the skilled person is required to automate.
2.18 The appellant's other argument, that there is a reduction in network traffic also fails to affect the Board's conclusion. Firstly, there is no evidence of a reduction. Secondly, if there is an effect on network traffic, it is an effect that is obtained in any technical implementation that uses a communication network at all, rather than one that belongs to some particular (claimed) such implementation but not to others.
2.19 The main request, therefore, cannot be allowed, because the method defined in claim 1 does not involve an inventive step.
3. Auxiliary requests 1 and 2, claim 1, inventive step
3.1 These two version of claim 1 differ from that according to the main request by features of the factor graph. That means there are no additional technical features.
3.2 It must be noted, that the differences in the factor graphs do not introduce any technical effect outside the computer, and do not affect the arguments given above regarding the lack of technical effect inside the computer.
3.3 The conclusions on inventive step must, therefore, be the same as for the main request. As a result, neither request can be allowed.
For these reasons it is decided that:
The appeal is dismissed.