## Appendix A  
This section gives a more detailed description of the proposed _evolving probability method_. A procedure is given that shows how the serve is updated after each point and how the Monte Carlo simulation is used to predict the total number of points that will be played in the match and the handicap. In this paper, every match was simulated \(10^{6}\) times using the proposed _evolving probability method_. Every simulation returns a match tree that represents one possible flow of the match. From the match tree, the total number of points played in such a simulated match (\(totalPts_{pred}\)) as well as the handicap (\(handicap_{pred}\)) is calculated. The median value of all the returned \(totalPts_{pred}\) values is the estimated total number of points that will be played in the match, while the median value of all the returned \(handicap_{pred}\) values is the estimated handicap of the match. ``` procedureThe evolving probability method(\(p_{hist}\), \(q_{hist}\), \(k\), \(l\), \(totalPts_{exp}\), \(m_{1}^{p}\), \(m_{1}^{q}\), \(m_{2}^{p}\), \(m_{2}^{q}\), \(m_{3}^{p}\)) \(ownWon_{p}=0\) \(ownWon_{q}=0\) \(ownServed_{p}=1\) \(ownServed_{q}=1\)\(totalPts_{current}=0\)

\(serve_{home}=1\)

\(serve_{away}=0\)

\(points_{home}=0\)

\(points_{away}=0\)

\(momentumCounter=0\)

\(totalPts_{pred}=0\)

\( handicap_{pred}=0\)

\(x=runif(400)\)

\(top\):

\(p_{current}=\frac{ownNon_{p}}{ownServed_{p}}\)

\(q_{current}=\frac{ownNon_{q}}{ownServed_{q}}\)

**if \((serve_{home}==1)\) then**

\(p_{ltm}\) = Equation (\(\mathcal{T}\))

\(p_{new}=p_{ltm}\)

\(ownServed_{p}+=1\)

**if \((momentumCounter==1)\) then**

\(p_{new}=(1+m_{1}^{p})*p_{ltm}\)

**else if \((momentumCounter==2)\) then**

\(p_{new}=(1+m_{2}^{p})*p_{ltm}\)

**else if \((momentumCounter>=3)\) then**

\(p_{new}=(1+m_{3}^{p})*p_{ltm}\)

**if \((x[i]<p_{new})\) then**

\(ownWon_{p}+=1\)

\(points_{home}+=1\)

\(momentumCounter+=1\)

**else**

\(momentumCounter=0\)

\(points_{away}+=1\)

\(serve_{home}=0\)

\(serve_{away}=1\)

\(totalPts_{current}+=1\)

**if \((serve_{away}==1)\) then**

\(q_{ltm}\) = Equation (\(8\))

\(q_{new}=q_{ltm}\)

\(ownServed_{q}+=1\)

**if \((momentumCounter==1)\) then**

\(q_{new}=(1+m_{1}^{q})*q_{ltm}\)

**else if \((momentumCounter==2)\) then**

\(q_{new}=(1+m_{2}^{q})*q_{ltm}\)

**else if \((momentumCounter>=3)\) then**

\(q_{new}=(1+m_{3}^{q})*q_{ltm}\)

**if \((x[i]<q_{new})\) then**

\(ownWon_{q}+=1\)

\(points_{away}+=1\)

\(momentumCounter+=1\)

**else**

\(momentumCounter==0\)

\(points_{home}+=1\)

\(serve_{home}=1\)

\(serve_{away}=0\)

## References

* (1) [PERSON]; [PERSON]; [PERSON] A comparative analysis of data mining methods in predicting NCAA bowl outcomes. _Int. J. Forecast._**2012**, _28_, 543-552. [CrossRef]
* (2) [PERSON]; [PERSON] Predicting the Outcome of a Football Game: A Comparative Analysis of Single and Ensemble Analytics Methods. In Proceedings of the 52 nd Hawaii International Conference on System Sciences, Grand Wailea, Maui, HI, USA, 8-11 January 2019. * (3) [PERSON]; [PERSON] Building an NCAA Men's Basketball Predictive Model and Quantifying its Success. _J. Quant. Anal. Sports_**2015**, _11_, 5-12. [CrossRef]
* (4) [PERSON]; [PERSON]; [PERSON] Modeling basketball play-by-play data. _Expert Syst. Appl._**2016**, _44_, 58-66. [CrossRef]
* (5) [PERSON]; [PERSON]; [PERSON] Expert System for Ice Hockey Game Prediction: Data Mining With Human Judgment. _Int. J. Inf. Technol. Decis. Mak._**2016**, _15_, 763-789. [CrossRef]
* (6) [PERSON]; [PERSON] In-play forecasting of win probability in One-Day International cricket: A dynamic logistic regression model. _Int. J. Forecast._**2016**, _32_, 34-43. [CrossRef]
* (7) [PERSON]; [PERSON]; [PERSON] The Rugby League Prediction Model: Using an Elo-Based Approach to Predict the Outcome of National Rugby League (NRL) Matches. _Int. Educ. Sci. Res. J._**2016**, \(2\), 26-30. * (8) [PERSON] Strategy selection and outcome prediction in sport using dynamic learning for stochastic processes. _J. Oper. Res. Soc._**2015**, _66_, 1840-1849.