# Stochastic Extensions of the Elo Rating System
## 3 Stochastic Elo Models
### A Discrete Model  
The main difference between this model and the actual score difference is that the former is a continuous process, but the latter is discrete in value (\(S_{t}\in\mathbb{Z}\)) and continuous in time. The process that fulfills this condition best is a Skellam process, as described in [6], i.e., the difference of two Poisson processes with different rates, which model the score of each team or player during the game.  
If \(P_{1}\) and \(P_{2}\) are two independent Poisson distributions with mean \(\mu_{1}\) and \(\mu_{2}\), then their difference is said to follow a Skellam distribution, \(P_{1}-P_{2}\sim Sk(\mu_{1}-\mu_{2})\). If \(N_{1}(t)\) and \(N_{2}(t)\) are independent Poisson processes with rates \(\lambda_{1}\) and \(\lambda_{2}\), the process  
\[Z_{t}:=N_{1}(t)-N_{2}(t)\sim P(\Lambda_{1})-P(\Lambda\lambda_{2})=Sk(t\lambda _{1},t\lambda_{2}) \tag{32}\]  
has i.i.d. increments as well.  
However, in this case, modeling the score with \(Z_{t}\) is not so straightforward. For starters, if we multiply \(Z_{t}\) by a constant, we do not obtain another Skellam process. Addinga real-valued function of \(t\) also changes the domain of the process from \(\mathbb{Z}\) to \(\mathbb{R}\). Therefore, the only option is to assume that  
\[S_{t}\sim Z_{t}(\mu_{1}(r_{A},r_{B}),\mu_{1}(r_{A},r_{B}))\Rightarrow S_{T} \sim Sk(T\mu_{1}(r_{A},r_{B}),T\mu_{2}(r_{A},r_{B})) \tag{33}\]  
This in turn means that we cannot assume homoscedasticity of the process, because a Skellam distribution with parameters \(\mu_{1}\) and \(\mu_{2}\) has mean \(\mu_{1}-\mu_{2}\) and variance \(\mu_{1}+\mu_{2}\). Since \(\mu_{1}\) and \(\mu_{2}\) are non-negative, the mean is less or equal to the variance, and if we fix \(\mu_{1}+\mu_{2}=\sigma\), we would put a bound on the expected final score \(\mathbb{E}[S_{T}]=\mu_{1}-\mu_{2}\leq\sigma\), which is not realistic.  
However, the distribution of \(S_{T}\), which should have the same shape as \(X\), now depends on two parameters, and not just on the rating difference \(r_{A}-r_{B}\). We can remove this degree of freedom by fixing a relation between \(\mu_{1}\) and \(\mu_{2}\), and for simplicity's sake, since the probability that \(Sk(\mu_{1},\mu_{2})\) takes the value \(k\) is  
\[\mathbb{P}[Sk(\mu_{1},\mu_{2})=k]=e^{-(\mu_{1}+\mu_{2})}\left(\frac{\mu_{1}}{ \mu_{2}}\right)^{k/2}I_{k}(2\sqrt{\mu_{1}\mu_{2}}) \tag{34}\]  
we can fix \(2\sqrt{\mu_{1}\mu_{2}}=H\) to compute \(I_{k}\) only once for each \(k\in\mathbb{Z}\). Here, \(I_{k}(\cdot)\) is the modified Bessel function of the first kind [16], which does not have a closed-form expression.  
To determine how \(\mu_{1}\) and \(\mu_{2}\) depend on the ratings, we can take \(\mathbb{E}[S_{T}]=\mu_{1}-\mu_{2}\) to be linear in the rating gap \(\Delta_{r}=r_{A}-r_{B}+L\) as in Equation (26), and then, if we pick \(\sigma_{X}\) so that \(C=1\), from the product and difference of \(\mu_{1}\) and \(\mu_{2}\), we obtain a second-degree equation  
\[(x+\mu_{1})(x-\mu_{2})=x^{2}+\Delta_{r}x-\frac{H^{2}}{4} \tag{35}\]  
\[\Rightarrow\quad\mu_{1}=\frac{1}{2}\left(\Delta_{r}+\sqrt{\Delta_{r}^{2}+H^{ 2}}\right)\qquad\text{and}\qquad\mu_{2}=\frac{1}{2}\left(-\Delta_{r}+\sqrt{ \Delta_{r}^{2}+H^{2}}\right) \tag{36}\]  
from which we finally obtain not just a prediction for \(p_{A}\), but also a probability for each possible final score, and in this case, the probability that \(S_{T}=0\) is positive, so we can include draws in our model. In particular, if we assign a result of \(p_{A}=p_{B}=1/2\) for draws,  
\[E[p_{A}]=\mathbb{P}[S_{T}<0]+\frac{1}{2}\mathbb{P}[S_{T}=0]=\mathbb{P}[Sk(\mu_ {1},\mu_{2})<0]+\frac{1}{2}\mathbb{P}[Sk(\mu_{1},\mu_{2})=0] \tag{37}\]  
Similarly, if we consider that expression as a function of \(\Delta_{r}\), it can be shown that it is increasing (see Appendix B), and with limits 0 and 1 at \(-\infty\) and \(\infty\). Therefore, \(\mathbb{E}[p_{A}]=F_{X}(r_{A}-r_{B}+L)\) for some random variable \(X\), and then this model is also an extension of a static Elo model.