Towards a time-lapse prediction system for cricketmatchesbyVignesh Veppur SankaranarayananB. E., Anna University, 2011A THESIS SUBMITTED IN PARTIAL FULFILLMENTOF THE REQUIREMENTS FOR THE DEGREE OFMaster of ScienceinTHE FACULTY OF GRADUATE STUDIES(Computer Science)The University Of British Columbia(Vancouver)May 2014c© Vignesh Veppur Sankaranarayanan, 2014AbstractCricket is a popular sport played in over a hundred countries, is the second mostwatched sport in the world after soccer, and enjoys a multi-million dollar industry.There is tremendous interest in simulating cricket and more importantly in predict-ing the outcome of games, particularly in their one-day international format. Thecomplex rules governing the game, along with the numerous natural phenomenaaffecting the outcome of a cricket match present significant challenges for accurateprediction. Multiple diverse parameters, including but not limited to cricketingskills and performances, match venues and even weather conditions can signifi-cantly affect the outcome of a game. The sheer number of parameters, along withtheir interdependence and variance create a non-trivial challenge to create an ac-curate quantitative model of a game. Unlike other sports such as basketball andbaseball which are well researched from a sports analytics perspective, for cricket,these tasks have yet to be investigated in depth. The goal of this work is to pre-dict the game progression and winner of a yet-to-begin or an ongoing game. Thegame is modeled using a subset of match parameters, using a combination of linearregression and nearest-neighbor classification-aided attribute bagging algorithm.The prediction system takes in historical match data as well as the instantaneousstate of a match, and predicts the score at key points in the future, culminatingin a prediction of victory or loss. Runs scored at the end of an innings, the keyfactor in determining the winner, are predicted at various points in the game. Ourexperiments based on actual cricket game data, shows that our method predicts thewinner with an accuracy of approximately 70%.iiPrefaceThe work presented in this dissertation was conducted in the Data Management andMining lab under the supervision of Prof. Laks V.S.Lakshmanan and in collabora-tion with Dr.Junaed Sattar. I was the lead investigator in this work responsible forhigh level problem identification, data collection, methodology, analysis of resultsand manuscript composition. Dr. Junaed Sattar and Prof. Laks V.S.Lakshmananwere closely involved throughout and provided advice on all of the core aspectslike formalization of the problem, methodology, and analysis and interpretation ofresults and also helped in manuscript composition and editing. Prof. Jim Littleacted as a second reader and provided constructive feedback on the manuscript.A jointly authored paper based on this work has been published in the confer-ence proceedings of 2014 SIAM Conference on Data Mining [28]iiiTable of ContentsAbstract . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iiPreface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iiiTable of Contents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ivList of Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viiList of Figures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . viiiAcknowledgments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xDedication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xi1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1 Importance of Sports Analytics . . . . . . . . . . . . . . . . . . . 11.2 Cricket – Popularity & Formats . . . . . . . . . . . . . . . . . . . 21.3 Machine Learning Models . . . . . . . . . . . . . . . . . . . . . 51.4 Contributions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.5 Outline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 Related Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1 Sports Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1.1 Basketball . . . . . . . . . . . . . . . . . . . . . . . . . . 82.1.2 Baseball . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.1.3 Soccer . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9iv2.2 Research in Cricket . . . . . . . . . . . . . . . . . . . . . . . . . 103 Rules of the sport . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123.1 Rules and Objective . . . . . . . . . . . . . . . . . . . . . . . . . 123.1.1 Toss . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133.1.2 Over . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.1.3 Objective . . . . . . . . . . . . . . . . . . . . . . . . . . 143.1.4 Scoring . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.1.5 Dismissal . . . . . . . . . . . . . . . . . . . . . . . . . . 163.1.6 Target score . . . . . . . . . . . . . . . . . . . . . . . . . 173.1.7 Resources . . . . . . . . . . . . . . . . . . . . . . . . . . 174 Game Modeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.1 Terms & Notations . . . . . . . . . . . . . . . . . . . . . . . . . 184.1.1 Segment . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.1.2 Runs in a segment . . . . . . . . . . . . . . . . . . . . . 184.1.3 Match state . . . . . . . . . . . . . . . . . . . . . . . . . 194.1.4 End-of-innings score . . . . . . . . . . . . . . . . . . . . 194.2 Problem Formulation . . . . . . . . . . . . . . . . . . . . . . . . 194.3 Historical Features . . . . . . . . . . . . . . . . . . . . . . . . . 214.4 Instantaneous Features . . . . . . . . . . . . . . . . . . . . . . . 224.4.1 Home or away . . . . . . . . . . . . . . . . . . . . . . . 224.4.2 Venue class . . . . . . . . . . . . . . . . . . . . . . . . . 224.4.3 Powerplay . . . . . . . . . . . . . . . . . . . . . . . . . 234.4.4 Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.4.5 Batsmen performance features . . . . . . . . . . . . . . . 234.4.6 Bowler quality features . . . . . . . . . . . . . . . . . . . 244.4.7 Game snapshot . . . . . . . . . . . . . . . . . . . . . . . 244.5 Batsmen Clustering . . . . . . . . . . . . . . . . . . . . . . . . . 244.5.1 Home-run hitting ability . . . . . . . . . . . . . . . . . . 254.5.2 Milestone reaching ability . . . . . . . . . . . . . . . . . 254.6 Bowler Classification . . . . . . . . . . . . . . . . . . . . . . . . 264.7 Game Snapshot . . . . . . . . . . . . . . . . . . . . . . . . . . . 27v4.8 Home-Run Prediction Model . . . . . . . . . . . . . . . . . . . . 284.9 Non-Home-Run Prediction . . . . . . . . . . . . . . . . . . . . . 294.10 Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 294.11 Cold-Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 315 Experiments & Results . . . . . . . . . . . . . . . . . . . . . . . . . 325.1 Non-Home Run Prediction Performance . . . . . . . . . . . . . . 335.1.1 Segmentwise non-home run prediction performance . . . 355.2 Home Run Prediction Performance . . . . . . . . . . . . . . . . . 385.2.1 Segmentwise home run prediction performance . . . . . . 405.3 End-of-Innings Run Prediction Performance . . . . . . . . . . . . 405.3.1 Segmentwise run prediction performance . . . . . . . . . 405.4 Runs in a Segment, Rˆi . . . . . . . . . . . . . . . . . . . . . . . . 405.5 Performance Comparison with Baseline Model . . . . . . . . . . 435.5.1 Run prediction by Bailey et al. . . . . . . . . . . . . . . . 485.5.2 ICC projected score prediction model . . . . . . . . . . . 485.6 Winner Prediction . . . . . . . . . . . . . . . . . . . . . . . . . . 506 Conclusion & Future Work . . . . . . . . . . . . . . . . . . . . . . . 516.1 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 516.1.1 Other formats of the game . . . . . . . . . . . . . . . . . 516.1.2 Strategy recommendation . . . . . . . . . . . . . . . . . 516.1.3 Wickets prediction . . . . . . . . . . . . . . . . . . . . . 526.2 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52viList of TablesTable 4.1 Historical feature values for teams in the dataset . . . . . . . . 22Table 4.2 Batsmen clustered according their ability . . . . . . . . . . . . 26viiList of FiguresFigure 1.1 A test format cricket match between India and Australia . . . 4Figure 1.2 A ODI cricket match between India and Australia . . . . . . 5Figure 3.1 A depiction of a typical cricket field. It is not mandatory forthe field to be oval in shape. . . . . . . . . . . . . . . . . . . 13Figure 4.1 Histogram of bowlers’ economy rate (average runs concededper over) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27Figure 5.1 Total non-home runs scatter plot for innings1 (left) & innings2(right) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33Figure 5.2 PDF and CDF of total non-home run prediction error for innings1(top) & innings2 (bottom) . . . . . . . . . . . . . . . . . . . 34Figure 5.3 Non-home runs prediction scatter plot for every segment ininnings1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36Figure 5.4 Non-home runs prediction scatter plot for every segment ininnings2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37Figure 5.5 Total home runs scatter plot for innings1 (left) & innings2 (right) 38Figure 5.6 PDF and CDF of total home run prediction error for innings1(top) & innings2(bottom) . . . . . . . . . . . . . . . . . . . . 39Figure 5.7 Home runs prediction scatter plot for every segment in innings1 41Figure 5.8 Home runs prediction scatter plot for every segment in innings2 42Figure 5.9 Rˆeoi scatter plot for innings1 (left) & innings2 (right) . . . . . 43Figure 5.10 PDF and CDF of Reoi prediction error for innings1 (top) &innings2 (bottom) . . . . . . . . . . . . . . . . . . . . . . . . 44viiiFigure 5.11 Runs in a segment prediction scatter plot for every segment ininnings1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45Figure 5.12 Runs in a segment prediction scatter plot for every segment ininnings2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46Figure 5.13 Mean absolute error and standard deviation for Runs Ri acrosseach segments Si, or, 5-over intervals for innings 1 (above) andinnings 2 (below). Since the first and fore-most prediction R1for i = 1 gives the runs scored at the end of over number 5, theplots start from over 5. . . . . . . . . . . . . . . . . . . . . . 47Figure 5.14 Mean absolute error in Rˆeoi prediction for innings 1 (top) andinnings 2 (bottom) for Bailey et al. [2], ICC Projeted Scoreprediction and our model. . . . . . . . . . . . . . . . . . . . 49ixAcknowledgmentsI would like to thank my supervisor Prof.Laks V.S.Lakshmanan and co-supervisorDr.Junaed Sattar for their support, valuable guidance and encouragement. I wouldlike to acknowledge NSERC for funding this research.I want to thank my parents for their sincere love and support through this jour-ney. Words cannot do justice to their contribution. I would like to thank the stim-ulating environment of UBC Computer Science, Waran Research Foundation –specifically Prof.Venkateswaran, my friends, the special one and all others whohave been part of this journey.Last but not the least, I thank the almighty for providing me with the above!xDedication..to my over curious and naughty brother Prasanna..xiChapter 1IntroductionPredicting game progression and its outcome has direct applications in devisingstrategies aimed at winning a game. It is also used to set odds in the betting in-dustry. Despite the popularity of the sport, prediction in cricket has not been ad-dressed in great detail as in other sports like baseball, basketball, soccer etc. Thiswork addresses the problem of predicting game progression and outcome of One-Day-International cricket matches. This chapter provides the motivation for thiswork.1.1 Importance of Sports AnalyticsIn today’s world, professional sports are intensely competitive propositions. Mo-tivated by prestige and huge financial rewards, sports professionals are engaged infierce competition not only on the sporting turf, but also off it, pursuing perfectionand the slightest of advantages over their opponents. Today’s sports professionalsinclude not only the sportsmen actively participating in the game, but also theircoaches, trainers, physiotherapists, and in many cases, strategists. Coaches, cap-tains and team managers leverage their expertise and make decision using theirintuition. Such decisions can be biased by the human impressions and judgmentsof players and hence might overlook players’ weakness. Moreover, interesting pat-terns in the game may elude the eye of the best tactician.With massive advances in cheaper and reliable storage technologies, data about1every match is being stored in such a way that the entire chain of events could bereplayed. With such advancements in technology and huge stake involved in sport-ing events, the in-game data recorded is analyzed and converted into actionableknowledge by teams to gain advantage over their competitors. The trend notice-able both in individual sports such as tennis and in team sports such as baseball andbasketball is that this knowledge is used to determine pre-game strategy. Success-ful application of this pre-determined strategy often becomes the decisive factortowards victory. The difference between a win and a loss hinges on formulation ofsuch strategies and extensive planning.Effective formulation of strategies requires carrying out extensive analysis ofpast games, current performance in the game in progress, and numerous other fac-tors affecting a game. Players and team management (collectively often referredto as the team think-tank in sports) perform as a “human expert system”, relyingon experiences, expertise and analytic ability to arrive at the best-possible courseof action before as well as during a game. Vast amount of raw data and statisticsare available to aid in the decision-making process, but determining what it takesto win a game is extremely challenging.These amounts of raw data are also leveraged by broadcasters and game ex-perts to analyze performances of individual players, their strengths, weaknessesand teams’ performance. These facts and figures are presented to the viewers toadd richness to the viewer experience.Betting adds an extra dimension for the sport industry. Billions of dollars arebeing wagered on sporting events [21]. Gambling houses rely on statistical modelsthat predict outcomes of various level of sporting events.1.2 Cricket – Popularity & FormatsCricket is played in more than 100 countries across the world1. However, focusareas, namely the Indian subcontinent, United Kingdom, Australia, South Africaand the Caribbean drive the revenues and commercial interest in the sport. Thisis attributed to the fact that these are the top performing teams and form the coremembers of International Cricket Council, the cricket governing body. It has the1http://www.espncricinfo.com/ci-icc/content/story/209608.html2second largest viewership by population for any sport, next only to soccer, andgenerates an extremely passionate following among the supporters. It is also thefourth highest sport to be bet on, after Soccer, Tennis and snooker[21].Cricket is a team sport played between bat and ball, and governed by an ex-tensive and complex set of rules. The eventual goal of the game is for one team toscore more runs than their opponents to be declared the winner. A pair of batsmenfrom a team are in the field at any given time, trying to score runs off the ballsor deliveries thrown at them by the bowlers of the opposing team. The goal ofthe bowlers is to get all the batsmen out before they can accumulate a large score.The fielders (from the bowling team) assist the bowlers by stopping or catching theballs after they are hit by the batsmen, to stop them from scoring runs and gettingthem out, respectively. Once all the batsmen are out, it is the turn of the previousbowling team to bat, who must score more runs than their opponents to win. Eachteam gets a minimum of one turn, or innings in cricket parlance, depending onthe format of the match. In a Test match scenario, the game is limited to at-mosttwo innings each, held over a maximum of five days, whichever finishes first. Fig-ure 1.1 shows an Indian batsman Sachin Tendulkar batting in a test match betweenIndia and Australia. The other two formats of cricket and arguably more popularones are One-Day International (abbreviated as ODI) and Twenty20 formats. InOne-Day International matches (object of analysis in this work), each team gets tobat once, with an innings consisting of 50 overs, with each over being a collectionof six legal balls bowled by a bowler. A ball is considered to be illegal if the bowlercrosses the crease while delivering the ball. It is also illegal if the balls lands andbounces more than once on the pitch before reaching the batsman. In these andfew more circumstances, the ball is not counted and a penalty run is awarded tothe batting team. Twenty20 matches limits the game to 20 overs per side, short-ening the duration to approximately three hours a game. The Test match settingis unique in the sense that it allows for a game to be drawn, whereas the conceptof a draw does not exist in the other two formats. If the two teams score the samenumber of runs using the resources allocated, then the match is said to be tied. onlyTwenty20 format has a tie-breaker to determine the winner after a tie. Among thesethree formats, the one-day format is the most popular. Motivated by this, we focusour analysis in this paper on one-day cricket. In figure 1.2, India and Australia3play an ODI match on 9th January 2004 at the MCG cricket ground in Melbourne,Australia.Figure 1.1: A test format cricket match between India and Australia. SachinTendulkar plays the ball. (Image by Pulkit Sinha, released under theCreative Commons Attribution-ShareAlike 2.0 Generic License (CCBY-SA 2.0).The team strategists often are faced with making decisions when the predeter-mined strategy fails or the game unravels in an unexpected manner. Currently, acombination of personal experience, team constitution and seat of the pants “crick-eting sense” is relied upon for making instantaneous strategic decisions. Inherently,the methodology employed by human experts is to extract and leverage importantinformation from both past and current game statistics. However, to our knowl-edge, the underlying science behind this has not been clearly articulated. One ofthe key problems that needs to be solved in formulating strategies is predicting theoutcome of a game. The focus of this work is to address the problem of accu-rately modeling game progression towards match outcome prediction. Predictinggame progression and outcome involve leveraging data mining and machine learn-ing techniques to learn the patterns from historical play data. Various techniqueslike regression, nearest neighbors, clustering, attribute bagging etc. are customizedand used in this work.4Figure 1.2: A ODI cricket match between India and Australia (Imageby Ricky212, released under the Creative Commons Attribution-ShareAlike 2.0 Generic License (CC BY-SA 2.0).1.3 Machine Learning ModelsThis section serves as an introduction to the machine learning models used in thiswork. K-nearest neighbor is a non-parametric method that is used for regressionand classification [11]. A test sample along with a set of training samples are givenas input to the model. The model identifies the test sample’s k closest point(s) inthe training sample and assigns class membership to the test sample. The intuitionbehind this model is that, given a test sample, information can be borrowed fromtraining data by finding the closest k points. Spearman [29], Jaccard [15], Manhat-tan (L1 norm), Cosine [13], Euclidean (L2 norm) are some of the distance metricsused to calculate distance between two samples.Attribute bagging [7] is an ensemble learning method that has l individual clas-sifiers operating on n features chosen at random. Majority voting is performed5among the l classifiers to pick the output class. This ensemble method can useany classification learning model. The number of classifiers and the size of eachbag (n) is experimentally determined. By definition, random forests [20] (whichemploys decision trees as classifier model) is considered to be a special case of at-tribute bagging method. As explained in section 4.8, attribute bagging along withnearest neighbor classification method is used to predict home runs - one of the twoprediction components in this work.K-means algorithm [5] is a clustering technique that partitions n samples intok clusters based on the distance of samples from the cluster centres. In this work,k-means algorithm is used to cluster batsmen into five groups based on their abilityas inferred by their performance statistics (elaborated in section 4.5).1.4 ContributionsIn this work, a model for one-day format games is learnt by mining existing gamedata. In principle, our approach is applicable towards modeling any format of thegame; however, we choose to focus our testing and evaluation on the most popularand arguably the most important format, namely one-day international (ODI), forthe reasons mentioned above. By using a combination of supervised and unsuper-vised learning algorithms, our approach learns a number of features like home/-away, team performance in the past, batsmen, bowlers etc. from a one-day cricketdataset which consists of complete records of all games played in a 19-month pe-riod between January 2011 and July 2012. Along with these learned historical fea-tures of the game, our model also incorporates instantaneous match state data, suchas runs scored, wickets lost etc., as game progresses, to predict future states of anon-going match. By using a weighted combination of both historical and instanta-neous features, our approach is thus able to simulate and predict game progressionbefore and during a match. A paper based on this work has been presented andpublished [28] at the SIAM 2014 International Conference on Data Mining heldbetween April 24 - 26 in Philadelphia, USA.1.5 OutlineThe organization of rest of the thesis is as follows.6• An overview of existing literature in sports prediction and also specificallyfor cricket is provided in Chapter 2.• Chapter 3 provides an overview of the one-day format and its basic rules.• In Chapter 4, we introduce the problem of modeling cricket to the data min-ing community. A key part of this modeling is the identification of the mostimportant features of the game (Section 4.3 and 4.4). Furthermore, it ex-plains our algorithm in detail.• In Chapter 5 we describe the challenges in extracting and cleaning historicalmatch data so it can be used for model learning. We discuss the results of theextensive experimentation we conducted on a historical dataset we crawledand cleaned. Not only do our results validate our approach, but they alsoshow it significantly outperforms the state of the art in one-day cricket gamescore and outcome prediction.• Conclusion and directions of future work are presented in chapter 6.7Chapter 2Related WorkAs mentioned in Section 1.1 sports analytics has direct applications in under-standing and improving team performance, betting industry and match analysisby broadcasters. The complete set of data recorded for every game is proprietaryto the broadcaster. But a handful of high level play-by-play data is accessible tothe public through websites like www.espncricinfo.com (cricket), www.mlb.com(baseball), www.nba.com (basketball) etc. In Section 2.1 below, we discuss somerelevant work in the direction of modeling, simulation and prediction of sports.2.1 Sports PredictionThe problem of outcome prediction has been investigated in the context of basket-ball, baseball and soccer.2.1.1 BasketballVaz de Melo et al. [32] model the league championship as a network of playersbased on their work relationships over the years and predict the league standingat the end of a season. Fewell et al. [10] define players as nodes and ball passesas links and examine different network properties such as degree centrality, clus-tering, and entropy to analyze and quantify a teams’ strategy. Bhandari et al. [4]developed the Advanced Scout system for discovering interesting patterns frombasketball games, which has is now used by the NBA teams. The key idea is that8by using a technique called Attribute Focusing, an overall distribution of an at-tribute is compared with the distribution of this attribute for a subset of data (e.g.,a single game, all away matches1, entire season, etc.). If it has a characteristicallydifferent distribution for the focus attribute, it is marked as interesting. Such in-teresting patterns are discovered and provided to the domain expert to investigatefurther and gain insights. More recently, Schultz [23] studies how to determinetypes and combination of players most relevant to winning matches.2.1.2 BaseballIn baseball, Gartheepan et al. [14] built a data driven model that helps in decidingwhen to ‘pull a starting pitcher’. Pulling a starting pitcher is the act of replacingthe pitcher who started the inning with another pitcher. This is considered to be animportant decision in the context of baseball. In their subsequent work [12], theauthors propose a model that could lead to better on-field decisions for the nextinning. Bukiet et al. [8] use Markov chain method for evaluating the performanceof teams and influence of a particular player on the team performance.2.1.3 SoccerLuckner et al. [22] have predicted the outcome of FIFA World Cup 2006 matchesusing live Prediction Markets. Palomino et al. [26] study soccer matches witha game-theoretic model and determine that teams’ skill level, current score andhome field advantage are significant explanatory variables of the probability ofscoring goals. Kang et al. [17] build a mathematical model to quantitatively expressperformance of soccer players based on the trajectory of the ball passes among the22 on-field players.The work discussed above is developed with sport-specific intuitions. Bothsoccer and basketball are fundamentally very different from cricket which wouldrender the work inapplicable to the sport of cricket. Baseball is probably the closestto cricket in terms of playing dynamics since both are bat and ball games withbatters and bowlers and the objective is to score the maximum number of runs. Butgiven the facts that it has very different rules, ground shape and dimension, play1Matches played away from home.9structure, in-game economy etc., it would not be appropriate to apply the baseball-specific models to cricket. Moreover, none of the existing work models the sportto predict future match states of an on-going game. They are either used as a pre-match prediction tool or as a post-match analysis framework.2.2 Research in CricketOne of the earliest and pioneering work in cricket was by Duckworth and Lewis[9] where they introduce the Duckworth-Lewis or D-L method, which allows forfair adjustment of scores in proportion to the time lost due to match interruptions(often due to adverse weather conditions such as rain, poor visibility etc.). If theinterruptions occur during the second innings, the team batting second will haveless batting time and will face fewer balls. This affects the equilibrium and putsthe second team at a disadvantage. To mitigate this, the target for victory hasto be adjusted in proportion to the time lost. The D-L method is based upon amathematical formulation that abstracts every ball and wicket of an ODI match intoa single scalar called resource. Using this formulation, the number of overs lost isevaluated as runs and used to reset targets for the second team. This proposal hasbeen adopted by the International Cricket Council (ICC) as a means to reset targetsin matches where time is lost due to match interruptions. The method proposedin [9], and subsequently adapted by [25], for capturing the resources of a teamduring the progression of a match has found independent use in subsequent workin cricket modeling and mining [25][2].One of the objectives in sports analytics is to rate and rank players. In cricket,some possible ranking criteria are statistics such as batting average and strike ratefor batsmen (defined formally in Section 4.5) in determining most valued players.Lewis [19], Lemmer [18], Alsopp and Clarke [1], and Beaudoin [3] develop newperformance measures to rate teams and to find the most valuable players.Raj and Padma [27] analyze the Indian cricket team’s One-Day International(ODI) match data and mine association rules from a set of features, namely toss,home or away game, batting first or second and game outcome. Kaluarachchi andVarde [16] employ both association rules and naive Bayes classifier and analyzethe factors contributing to a win, also taking day/day-night game into account.10Both approaches use the same subset of high-level features to analyze the factorscontributing to victory. Furthermore, they do not address score prediction, nor theprogression of the game.Brooker et al. [6] take into account the number of runs scored, wickets lost,balls remaining at any point in the game along with the ground conditions and es-timate the end-of-innings score. This work fails to take the batsmen and bowlerfeatures into account. The authors note that it is not practical to learn a modelfor every single bowler and batsman that has played the game so far. Bailey andClarke [2] use historical match data and predict the total score of an innings usinglinear regression. As data of a match in progress streams in, the prediction modelis updated. Using this, they analyze the betting2 market’s sensitivity to the upsand downs of the game. Their model predicts total score as instantaneous matchdata is streamed in. This enables us to use their model as a baseline for this work.Swartz et al. [31] use Markov Chain Monte Carlo methods to simulate ball by balloutcome of a match using a Bayesian Latent Variable model. Based on the fea-tures of current batsman, bowler, and game situation (number of wickets lost andnumber of balls bowled), they estimate the outcome of the next ball. This modelsuffers from severe sparsity as noted by the authors themselves: the likelihood ofa given batsman having previously faced a given bowler in previous games in thedataset is low. Simulating a match, based on team compositions and making use ofa model built from historical match data and taking in the current match situation,is a key step in predicting the outcome of a match. While both [31] and [2] havebuilt match simulators for ODI cricket, their models rely on games played over 10years ago. ODI cricket has since undergone a number of major rule modifications.Important examples include powerplays, free hit after an illegal ball delivery, andthe use of two new balls (as opposed to just one) in an innings. These changessignificantly affect the team strategies, and essentially render old models a poorfit. This work focuses on the modern and current form of ODI cricket, incorpo-rating all recent changes to the game with support for accommodating future rulemodifications.2There is a vibrant betting market associated with cricket. See, e.g.,http://www.betfair.com/exchange/en-gb/cricket-4/sp/.11Chapter 3Rules of the sportThis chapter provides an overview of the ODI format of the game and review itsbasic rules as they pertain to the problem of modeling the game progression andscore prediction. It serves as foundation to the contributions in this thesis.3.1 Rules and ObjectiveThe objective of the teams is to score as many runs as possible while batting andlimiting the opponents from scoring while bowling. The team that has the highestnumber of runs at the end of the game is determined to be the winner. Figure 3.1is a depiction of a cricket field and is used for representational purposes. A teamconsists of 11 players. Based on the team’s strategy it can contain any number ofbatsmen and bowlers (typically 6 batsmen and 5 bowlers). Batsmen and bowlerscan be left-handed or right-handed. Different batsmen have specific roles like open-ing the innings, consolidation (during overs 15 to 40), power-hitting (during overs41 to 50). Bowlers can be specialist in pace bowling (bowling fast and enabling theball to swing) or spin bowling ( rotation of the ball while releasing that aids turningin direction after landing on the pitch)Theoretically, all 11 players can bat or bowl in a match if needed. At any time,two players of the batting team (in blue) and eleven players of the bowling team arepresent on the field. The pitch is the pale yellow rectangular shape in the middle ofthe field. It is 22 yards (20.11 meters) in length. The playing area is enclosed by12Striking Batsmen Bowler Non-Striking Batsmen Boundary Pitch Figure 3.1: A depiction of a typical cricket field. It is not mandatory for thefield to be oval in shape.the boundary. 4 or 6 (home) runs are awarded based on whether the ball lands inthe playing area and rolls over the boundary or flies past the boundary. After hittingthe ball, the two batsmen exchange their position as many times as they can. Theseare called non-home runs. Players of the bowling team field the ball to minimizethe number of exchanges the batsmen attain. At any time in the game, there aretwo umpires present on the field to officiate the match.The most important components and terminologies in the game of cricket aredescribed below.3.1.1 TossSimilar to a number of other sports, an ODI cricket match starts with a toss. Theteam that wins the toss can choose to bat first or can ask the opponents to batfirst. This is an important decision in the context of the game. The teams take intoaccount the nature of the pitch (Pitch is the 22 yard central strip of the cricket field13where bowlers bowl the ball for the batsmen to hit.), weather conditions and thestrengths and weaknesses of their own and that of the opponents to arrive at thedecision.3.1.2 OverSix consecutive legal delivery of balls by a bowler to the batsmen is called an over.An ODI game consists of two innings and each have 50 overs (300 legal deliveries).3.1.3 ObjectiveIn a game between TeamA and TeamB, suppose TeamA wins the toss and chooses tobat first. The period during which TeamA bats is called innings1, in which bowlersfrom TeamB will have to bowl the ball to the batsmen of TeamA. TeamA has 50overs to score as many runs as possible, while TeamB tries to minimize the scoringby getting TeamA’s batsmen out (more commonly referred to as taking wickets).Scoring can also be restricted by TeamB, by bowling balls that are difficult to playand by flawless fielding, where fielders stop hits by batsmen of TeamA to denythem opportunities to score runs. Innings1 comes to an end when TeamA loses allits wickets or finishes its quota of 50 overs, whichever happens first. When a teamloses all its wickets, it is termed as being all-out. Let ScoreA denote the number ofruns accumulated by TeamA at this point. When TeamB comes in to bat in innings2,it has the exact same number of 50 overs to play (not considering rain intervention),with the goal of scoring at least ScoreA+1 runs; innings2 ends when ScoreB, thenumber of runs scored by TeamB, exceeds ScoreA, or when TeamB finishes its quotaof 50 overs or loses all its wickets, whichever happens first. TeamB is deemed thewinner in the first case, and TeamA wins otherwise. A third possibility is a tie whenScoreA and ScoreB are equal at the end of the game.13.1.4 ScoringTeams can accumulate runs in two ways - home runs and non-home runs as de-scribed below. When a bowler commits a foul while delivering the ball, the bowl-ing team is penalized by awarding run(s) to the batting team. The ball delivered by1Currently, there are no tie-breakers in ODI the format.14the bowler is deemed illegal by the on-field umpires. Some of the main reasons fora delivery to be illegal are as follows:• The bowler crosses the crease while releasing the ball• The ball lands and bounces on the pitch more than once• The ball does not land on the pitch and reaches the batsman directly abovehis hip.• The ball falls very wide of the batsman making it unplayable.These penalty runs are termed as extras and contribute a small fraction of the totalruns. In our model, the non-home run category accounts for extras.Home RunsOne way of scoring is to power-hit the ball outside the playing area. Based onwhere the ball lands while traveling past the boundary, four or six runs are awarded.Four runs are awarded if the ball touches the ground before rolling past the bound-ary of the playing area. If the ball lands directly outside the playing area (therebynot touching the ground within the playing area), six runs are awarded. Borrowinga term from baseball, for convenience, we collectively term runs scored this wayas home runs. Home runs yield greater reward in terms of runs scored, but thebatsmen have to take risks to hit them, which increases their chance of getting out.Non-Home RunsThe other way of scoring is to hit the ball within the playing area and for thetwo batsmen to run and exchange their positions. In the mean time, the opponentplayers try to collect the ball to minimize the number of exchanges. Runs areawarded based on the number of times the batsmen exchange their positions beforethe ball is returned to one of the positions. There is theoretically no bound on thenumber of exchanges possible in a given ball but this value typically lies in therange 0–3 runs. This way of scoring has a lower risk of the batsman getting out butyields a lower number of runs. We term these non-home runs.15It is to be understood that batsmen have different intentions and mind-set whenthey try to score home runs and non-home runs. Hence their approach to scoringeach of the two are also different. Since home runs involve high risks than scoringnon-home runs, the number of non-home run scoring balls greatly outnumber thenumber of home run scoring balls as substantiated by our data. The decision to hita particular ball to the boundary (home run hit) is taken by the striking batsmanbased on a combination of factors like team’s score, his strengths, merit of theball, merit of the bowler, fielders’ placement in the ground etc. Understanding thisminute yet significant dynamic of the game has helped to come up with separatemodels for predicting home runs and non-home runs (More on this in section 4.2)3.1.5 DismissalThere are eleven ways for a batsman to lose his wicket, commonly referred toas getting out or being dismissed. The common ways to get dismissed are thefollowing• Bowled: when the ball delivered hits the stumps2• Caught by opponent fielders: When the ball hit by the batsmen is caught bythe fielders before it touches the ground.• Run-out: This happens when the batsmen try to score runs by exchangingtheir positions. A batsmen loses his wicket if he is found short of his positionwhen the ball (fielded and thrown back by opponent fielders) hits the stumps.• Leg Before Wicket (LBW): When the ball delivered hits the batsman’s bodyparts and the umpire determines that the it would have traveled to knock thestumps had it not hit his body, he is deemed out.There are a few other modes of dismissal which are uncommon. In our model, wedo not distinguish between the different forms of dismissal.2Stumps are the three vertical posts with two support bails that are placed in the pitch. A batsmanguards them so that the ball delivered by the bowler does not knock them.163.1.6 Target scoreThe number of runs accumulated by TeamA at the end of innings1 is ScoreA.ScoreA+1 run is set as the Target. This is the score that the team batting secondtries to achieve or exceed in innings2.3.1.7 ResourcesOvers and Wickets are collectively termed as resource. The batting team consumesthe overs to accumulate runs and loses wickets in the process. A batting team has50 overs and 10 wickets at their disposal at the start of an innings. This resourcecontinually decreases as the game progresses.The rules, terminologies and objective of a cricket game was explained in thischapter. Next chapter explains about the game modeling using relevant historicaland instantaneous features and our algorithm in detail.17Chapter 4Game ModelingThis chapter describes the problem formulation with relevant features in detail.Furthermore, it proceeds to explain our algorithm that predicts game progressionand the winner.4.1 Terms & NotationsA few very important terms and notation that will be used in our model are de-scribed below.4.1.1 SegmentTo predict the end-of-innings score of a team, a segmented prediction approach istaken. The batting period of a team is called an innings and it lasts till they run outof one of the resources. The 50 over innings is segmented into 10 intervals of 5overs each, where each interval is referred to as Si, 1≤ i≤ 10.4.1.2 Runs in a segmentFor a team T , RTi and WTi denote the the number of runs scored and the number ofwickets lost in segment Si, respectively. For a segment Si, NHRi and HRi denotethe non-home runs and home runs scored in that segment respectively. Together,they form the runs scored in that segment i.e., Ri = NHRi +HRi184.1.3 Match stateThe Match state at segment n, 0 ≤ n < 10 is defined as the pair of numbers con-sisting of the number of runs scored and the number of wickets lost so far, bythe batting team. Notice that given a match state, the resources remaining at thebatting team’s disposal can be easily calculated: the number of balls remaining is(10−n)×5×6 and the number of wickets remaining is 10−(#wickets lost so far).4.1.4 End-of-innings scoreThe total number of runs scored by team T at the end of their innings is given byRTeoi = ∑10i=1 RTi . The superscript T is dropped when the team is obvious from thecontext.4.2 Problem FormulationThe main problem tackled in this work is, given the instantaneous match data up toa certain point in the game, predict the progression of the remainder of the game,and in particular, predict the winner. If the no instantaneous data is available sincethe match is yet to begin, predict the progression and outcome using availablematch information. This is a special case with n = 0 and dealt with by supplyingRknown = 0 and Wknown = 0. More precisely, given a match state associated withsegment n, namely (Rknown = ∑ni=1 Ri,Wknown = ∑ni=1Wi), predict the number ofruns Rˆi for the remaining segments i, n+1 ≤ i ≤ 10. Using these predictions, thetotal predicted score at the end of the innings, Rˆeoi can be obtained asRˆeoi = Rknown +n∑i=n+1Rˆi (4.1)To predict the number of runs scored in a segment Si, both historical data aswell as instantaneous match data available till segment Si−1 are used. The cur-rent state of the match are the instantaneous features that is used for game stateprediction. Both sets of features are explained in further detail in the followingsections.If an innings has not commenced, as a special case, n = 0, Rknown = 0 andWknown = 0. In this case, the task becomes to predict number of runs Rˆi, for all19i = 1, ...,10. The total predicted score is thenRˆeoi =10∑i=1Rˆi (4.2)This segmented prediction approach is followed to predict Rˆeoi for both innings1and innings2. TeamA is predicted to be the winner if RˆAeoi >RˆBeoi. TeamB is predictedto be the winner if RˆAeoi <RˆBeoi. If both RˆAeoi == RˆBeoi, it predicted to be a tie.The task of predicting the number of runs in the next segment Sn+1, given thematch state up to segment Sn is broken down into two subproblems:• (i) predicting non-home runs in Sn+1 - ˆNHRn+1• (ii) predicting home runs in Sn+1 - HˆRn+1Hence, Rˆn+1 = ˆNHRn+1 + HˆRn+1While it may seem counter-intuitive to use two different classes of techniquesto predict the overall total score, this decision was driven by observing the inher-ent nature of the game itself, and has eventually been justified by our experimentalresults. As explained in section 3.1.4, scoring home and non-home runs take dif-ferent intentions, approach, skill, risk level and consequently different outcomes(in terms of runs). Moreover, the number of non-home run scoring balls greatlyoutnumbers the number of home run scoring balls in a typical game. A linear-regression based approach to predict home runs thus runs into the problem of datasparsity. Attribute bagging, on the other hand, enables our system to find matchesthat have similar home-run scoring patterns, given the set of match features, andthus avoids the sparsity issue altogether. Our experiments have shown much de-graded performance when using ridge regression for home run prediction.Prediction of HˆRi and ˆNHRi for a segment Si is accomplished using two setsof features – historical features and the instantaneous features, described next. Ofthese, historical features are critical for predicting runs for the first segment, sinceby definition, no instantaneous match data is available before the first segment.204.3 Historical FeaturesOur model consists of 6 historical features for each team in the dataset. They aremined from data across all matches played by a given team. The historical featuresof a team are as follows:1. Average runs scored (by the team) in an innings2. Average number of wickets lost in an innings3. Frequency of being all-out14. Average runs conceded in an innings5. Average number of opponent wickets taken in an innings6. Frequency of getting opposition all-outIn what follows, N denotes the total number of matches in the training dataset.Recall, n denotes the segment up to which match state is known. The first featureis calculated by dividing the total runs scored by the given team across the numberof matches it played.AverageScore =∑Ni=1(Runs scored in matchi)N(4.3)The subsequent five features are self-explanatory and are calculated similarlyto (4.3). Out of the 6 features, the first three represent the team’s batting ability,while the last three represent the team’s bowling ability.Table 4.1 presents the historical batting and bowling features for the teamsconsidered in our dataset. Team India, the winner of World Cup 2011, is consideredto have a stronger batting ability compared to other teams. Team South Africa rankssecond and is known to possess one of the best bowling attacks. The batting andbowling features indicated in the table for these teams agree with these facts: e.g.,India’s average score is the highest and South Africa’s runs conceded and averagenumber of wickets taken are both the lowest and frequency of getting oppositionall-out is the highest.1That is, losing all 10 wickets in an innings within 50 overs.21Batting Strength Bowling StrengthTeam AverageScoreWicketslostalloutRunsConcededWicketstakenalloutAustralia 238 7.3 0.27 227 7.7 0.49Bangladesh 199 7.5 0.32 224 7.0 0.27England 233 6.9 0.37 237 7.4 0.35India 247 7.0 0.32 248 7.6 0.28New Zealand 223 8.3 0.43 218 7.1 0.33Pakistan 212 7.5 0.41 212 7.5 0.34South Africa 237 6.9 0.24 210 8.4 0.52Sri Lanka 227 7.3 0.35 231 6.9 0.31West Indies 208 7.8 0.48 220 7.2 0.35Table 4.1: Historical feature values for teams in the dataset4.4 Instantaneous FeaturesIn addition to the features mined from past game data, i.e., the historical features,several instantaneous match features incorporated in our prediction model.4.4.1 Home or awayThis is a binary feature describing if the batting team is playing in its home ground.If the match is played in a neutral venue, this feature carries no weight for bothteams.4.4.2 Venue classThe match venue is incorporated as a multinomial feature called “Venue Class”,which classifies the location of the venue into one of the following four conti-nent clusters: (i) Australia/New Zealand; (ii) Indian Subcontinent; (iii) The BritishIsles; and (iv) The Caribbean/South Africa. This classification is significant sincethe pitch (i.e., the area where the ball is bowled and pitched) and weather conditionsacross these region clusters are known to be substantially different. Pitches across22different continental plates are known to behave differently and offer different as-sistance to bowlers and batsmen. For example, it is well known that pitches inthe Indian subcontinent are batsmen friendly and offer assistance to spin bowlers.Hence teams accumulate high scores when they play on the Indian subcontinent.Pitches in Australia are known to be bouncy and offer great assistance to pacebowlers. To capture this phenomenon, we group the venue based on continents.4.4.3 PowerplayPowerplay is a restriction on the number of fielders that could be placed by thebowling team outside a certain range from the batsmen (usually 30 yards, approx.27.432 meters). This restriction enables the batsmen to hit the balls aggressivelyand try and score home runs, with a relatively reduced risk of getting out. Thefirst 10 overs of the game are mandatory powerplays, with two more instancesof powerplay periods arbitrarily chosen by the batting and bowling team each, tooccur at any point in the game up to the 45th over. For any segment, the powerplaycan occupy between 0 and 5 overs of the segment. Consequently, the value of thisfeature ranges from 0 to 1 in increments of 0.2.4.4.4 TargetThe goal of the team batting second is to achieve the Target Score, (ScoreA +1runs). This is used as a feature for innings2 prediction.4.4.5 Batsmen performance featuresFor any given segment Sn, we identify four performance indicators for each of thetwo currently playing batsmen. They are• batsman-cluster (to be described in section 4.5)• Number of runs scored till segment Sn−1.• Number of balls faced till segment Sn−1.• Number of home runs hit till segment Sn−1.234.4.6 Bowler quality featuresUsing a few performance indicators from history, bowlers are categorized into threeclasses (explained in detail in section 4.6). The value of a feature indicate the num-ber of overs bowled by a bowlers of that class in a particular segment. The threebowler-features always sum upto 5, which is the number of overs in a segment.4.4.7 Game snapshotThis feature is a pair of game state variables, namely the current score and thenumber of wickets (i.e., number of batsmen) left.Batsmen performance features, bowler quality features and game snapshot fea-tures are are explained in detail in Sections 4.5, 4.6 and 4.7.4.5 Batsmen ClusteringIn our dataset, there are more than 200 players who have batted at least one ball.Given data corresponding to 125 matches, learning the features for each of the 200individual players is fraught with complexity and extreme sparsity. To give an ex-ample, given a currently playing batsman b and a current bowler `, the probabilitythat b has faced ` in earlier matches can be quite low. Even when b has faced `before, the number of such matches can be too small to learn any useful signalsfrom, for purposes of prediction. To quantify, if in a dataset of M matches, theaverage number of matches played by player b is mb, and by player l is ml (whereM mb and M ml), even assuming independence, the probability that b and lplayed together is mbM ×mlM .To overcome this sparsity, clustering using k-means algorithm, (un-supervisedlearning technique) is used to group batsmen with similar batting skills. The fol-lowing four important features were considered.1. Batting Average2. Strike Rate3. Home-run hitting ability4. Milestone reaching ability.24Batting Average for a batsman is the ratio of the total number of runs he has scoredacross all matches, over the number of times he has gotten out. Strike Rate is theaverage number of runs scored per 100 balls, again calculated across all matchesplayed. These two features are standard metrics used to report batsmen stats incricket. Although they are used to express a batsman’s quality, they do not quitecapture his skill as observed by cricket experts and proved by [30] and [1]. HenceFeatures 3 and 4 are used to help capture the quality of batsmen more accurately.4.5.1 Home-run hitting abilitySince a home run hit results in higher number of runs being scored, batsmen whocan hit home runs frequently are considered to be skilled and strong. This parame-ter helps capture better batsmen and is measured asHR-hittingAbility =∑Ni=1 #home runs hit in matchi∑Ni=1 balls faced in matchi(4.4)4.5.2 Milestone reaching abilityScoring fifty runs or a hundred runs (commonly referred to as half-century andcentury) are considered batting milestones in cricket. Players who consistently andfrequently reach these milestones are considered to be of very high caliber andbring value to the team. Milestone reaching ability (MRA) captures this qualityand is measured asMRA =# of 50 & 100 run scores in N matches playedN(4.5)Combining the Batsman Average and Strike Rate with Home-run hitting abilityand Milestone reaching ability, batsmen are clustered into five clusters using the k-means clustering. The number of clusters (five) was chosen based on intuition andexploration. Generally, a team consists of opening batsmen, middle-order batsmen,all-rounders, wicket-keeper, and tail-enders (bowlers). Each have different rolesand batting capabilities. A healthy combination of the five types add up to form theplaying eleven members of the team.Table 4.2 presents clusters of a few current players. Clusters 4 and 5 seem to25capture the players who are primarily bowlers and as a result do not have goodbatting credentials. The first 3 clusters capture the batsmen who, according to therather vague informal terminology used in popular cricket press, are labeled as‘Great Solid Batsmen’, ‘Pinch Hitters’ and ‘Reliable Batsmen’.Cluster 1 Cluster 2 Cluster 3 Cluster 4 Cluster 5SachinTendulkarVirenderSehwagMohammedHafeezNuwanKulasekaraAndy MckayRickyPontingKieronPollardMatt Prior JamesPattinsonStuartMeakerJacquesKallisShahidAfridiTim Paine VinayKumarJunaid KhanHashimAmlaYusufPathanAjinkyaRahaneJamesAndersonSurangaLakmalTable 4.2: Batsmen clustered according their ability4.6 Bowler ClassificationMore than 180 bowlers have bowled at least 1 full over (collection of 6 continuouslegal delivery of balls) in our dataset. As observed with batsmen (in section 4.5),constructing individual models for every bowler is also fraught with complexityand extreme data sparsity. Hence the bowlers were classified (supervised learningtechnique) into three classes based on their historical economy rate. Economy rateof a bowler is defined as the average number of runs conceded per over. Moreformally, assuming N to be total number matches played by a bowler, hiseconomy rate =∑Ni=1 runs conceded in matchi∑Ni=1 overs bowled inmatchi(4.6)Since the goal is to predict the number of runs conceded by bowlers in 5 overintervals, classifying the bowlers based on their economy rate proved to be usefulindicator of their quality. Figure 4.1 shows the histogram spread of bowlers basedon their historical economy rate. It could be observed that the mass lie between4 to 6 runs. Bowlers with lesser economy rate are thrifty and considered to be ofvery good quality. Such bowlers, with economyrate ≤ 4.5 runs were classified as263 4 5 6 7 8 9020406080Economy rate (runs per over)Number of bowlersFigure 4.1: Histogram of bowlers’ economy rate (average runs conceded perover)class 1. 24 bowlers had economy rate less than 4.5 runs. Bowlers whose economyrate lay between 4.5 and 5.5 are of average quality and were classified as class 2.112 bowlers were classified into the average class. Bowlers with economyrate ≥5.5 are considered expensive were classified as class 3 with 45 bowlers fallinginto this category. This group primarily had part-time bowlers (bowlers who arenot specialists). The number of classes and class boundaries were arrived using acombination of cricket knowledge and exploratory analysis.4.7 Game SnapshotRecall that the problem is, given the match state data up to segment n < 10, i.e.,runs scored Ri and wickets lost Wi in segment i, 1 ≤ i ≤ n, number of runs forsegment n + 1 is to be predicted. To facilitate this, information in segments S1 toSn−1 are aggregated and the information in segment Sn is retained separately. Moreprecisely,1. Features from aggregated instantaneous information in segment S1 to Sn−1(a) R1:n−1 = ∑n−1i=1 Ri(b) W1:n−1 = ∑n−1i=1 Wi2. Features from instantaneous information in segment Sn27(a) Rn(b) WnFor example, let us take the task of predicting the runs in segment S6 (overs 26to 30). runs scored and wickets lost in segments S1 to S4 are aggregated and givenby R1:4 and W1:4. Runs and wickets in segment S5 are retained as such and givenby R5 and W5. This quasi markovian approach provides the game information tillsegment Sn−1 and the game information in segment Sn separately to the model.This provides a broader snapshot of match state and also gives more importance tothe immediately preceding segment.The learning algorithm, described in section 4.10, makes use of the aforemen-tioned historical and instantaneous features up to a given segment to predict scoresfor subsequent segments and uses that to predict the overall score Rˆeoi. When n = 0(when game is yet to begin), game snapshot features don’t exist. So, in additionto the historical features, available instantaneous features like home/away, VenueClass, Target, etc. are fed to the algorithm to make its predictions.4.8 Home-Run Prediction ModelUsing the historical and non-historical features discussed in chapter 4, the numberof home runs HˆRi for a segment Si are predicted using attribute bagging ensemblemethod [7] with nearest-neighbor classification. Random subsets of features forn classifiers with l features each are chosen and the results are aggregated over-all. Different sets of features corresponding to the previous states are chosen ran-domly and their nearest neighbors are identified from history, thereby leveragingthe Markovian nature of segments. Number of features for every classifier is set tobe the square root value of the total number of features [7]. The number of clas-sifiers is experimentally determined. The intuition behind using nearest-neighboralgorithm is that information from similar match situations can be “borrowed” fromthe training dataset. Standardized euclidean distance metric is used as the distancemetric. Standardizing attribute values involve subtracting the original value fromits mean and dividing the difference by the standard deviation. Euclidean distance,also called the L1 norm between two points P1(x1,y1) and P2(x2,y2) in a two di-28mensional systems is given bydist(P1,P2) =√(x1− x2)2 +(y1− y2)2 (4.7)A number of alternate distance metrics like Spearman, Jaccard, Cosine, Man-hattan, Euclidean etc. were explored. But Nearest Neighbor algorithm with Stan-dard Euclidean distance metric performs the best in terms of mean absolute error.After running n number of classifiers with l features each, the top 5 neigh-bors based on frequency counts are picked and the number of home run hits is themean of these neighbors’ home run hits. This number of neighbors, 5, has beendetermined experimentally.4.9 Non-Home-Run PredictionUsing the same historical and instantaneous features, non-home runs of segmentSi, ˆNHRi is predicted by means of Ridge Regression [24]. Linear model was foundto work best for predicting non-home runs.Using the home run and non-home run prediction models, the iterative algo-rithm to predict the runs Ri of future segments and consequently, Reoi of the wholeinnings is described in the next section 4.10,4.10 AlgorithmThe following describe the notation used in the algorithm.• n← segment number till which match information is available• Ri, Runs scored in segment Si where 1≤ i≤ n• ˆNHRi, predicted non-home runs in segment Si• HˆRi, predicted home runs in segment Si• Rˆi, predicted total runs in segment Si• Rˆeoi, predicted end of innings score29• Θ← historical features• ∆n← instantaneous features till segment SiΘ is the set of historical features given in Section 4.3, which remain constantthrough the iterations since they are learned just once from the historical matchdata; n is the segment number till which, match state data, also called instanta-neous features, ∆n are available. At the start of the algorithm, features Θ and ∆nare fed as input to the algorithm which proceeds iteratively to predict Rˆi, for everysegment i, n+1≤ i≤ 10.Algorithm 1: Prediction of Future Segments runs Rˆi & End of Innings ScoreRˆeoiInput : Θ,∆n,nOutput: Ri for every n+1≤ i≤ 10, Rˆeoi1 for i ∈ n+1≤ i≤ 10 do2 for j ∈ 1≤ j ≤ L do3 Γ j← RandomSubspace(Θ,∆i−1)4 Φ j← NearestNeighbor(Γ j)5 end6 HRi←Ma jorityVoting(Φ1:L)7 NHRi← RidgeRegression(Θ,∆i−1)8 Rˆi← HRi + ˆNHRi9 ∆i←U pdate(∆i−1, Rˆi)10 end11 Rˆeoi← ∑ni=1 Ri +∑10i=n+1 RˆiUsing Θ and ∆i−1 (instantaneous features of previous segment), home runsHˆRi of segment i is predicted using attribute bagging algorithm as explained insection 4.8. This is explained in lines 2 to 6 of algorithm 1.For every classifier j in L (Number of classifiers), a random subspace of fea-tures (Γ j) is chosen from the overall feature space (Line 3). The nearest neighborbased on this subspace of features (Γ j) is found out to be Φ j (Line 4). Based onmajority voting among the chosen neighbors (Φ1:L), the closest neighbor from thetraining set is found and home-run information is borrowed. (Line 6) Using thesame features Θ and ∆i−1, non-home runs ˆNHRi are predicted using Ridge Regres-30sion as mentioned earlier in this section (line 7). HˆRi and ˆNHRi are added togetherto give Rˆi, the predicted number of runs scored in segment Si (Line 8).It is to be noted that two of the instantaneous features (Section 4.4) namelyHome/Away and Venue Class do not change through the course of prediction whileGame Snapshot features are constantly updated based on predictions of the previ-ous iteration as explained in Section 4.7. Number of runs for segment i, Rˆi, pre-dicted in this iteration, is added to the Game Snapshot features of ∆i−1, therebymodifying it to ∆i (Line 9). This ∆i is used to predict the HˆRi+1 and ˆNHRi+1 in thenext iteration.The cumulative sum of all known runs Ri, 1 ≤ i ≤ n and all predicted runs Rˆi,n < i≤ 10, is the predicted End-of-Innings Score, Rˆeoi (Line 11).4.11 Cold-StartIf prediction is initiated without any match information, i.e., before the start of theactual innings, then n = 0, and the algorithm starts prediction from S1 through S10.In the first iteration when i = 1, no game snapshot features are available. Asthe opening pair of batsmen are known before the start of a game, their clusterID numbers (from the feature Batsmen cluster) are used. In order predict Rˆ1 ac-curately, we leverage the Home/away and Venue class information along with theother historical features Θ.31Chapter 5Experiments & ResultsThe dataset consists of 125 complete matches played between January 2011 andJuly 2012 among the 9 full-time ICC teams of Australia, Bangladesh, England,India, Sri Lanka, Pakistan, South Africa, New Zealand and the West Indies whohave played more than 20 matches each excluding all rain-interrupted and rain-abandoned games. We split the dataset into training and test set with 100 and 25matches respectively. Ten-fold cross validation was performed on the 100 trainingmatches to learn the regression parameters to predict non-home runs and the modelwas tested on the remaining 25 matches. The mean of the cross-validation trialsare reported for Non-home run prediction. The data was crawled from http://www.espncricinfo.com, where ball-by-ball data on all the matches are availablepublicly. Team, batsmen and bowler statistics for mining historical features andbatsmen clusters, bowler classes are also queried from their publicly-accessiblestatistics databases. Since ball-by-ball commentary data consists of transcription ofthe human interpretation of actual events, there are occasional missing values anderrors. They were fixed either manually or by automated consistency checks withthe end-of-over summary, scorecards, partnership information and other relevantgame data. After the required data is gathered, they were aggregated and rolled-up to 5-over levels (since a segment is a collection of 5 overs) without loss ofnecessary information. Once the data is available in the processed form, runningtime for the model to learn the parameters across all the segments and testing by10-fold cross-validation takes less than 5 seconds on MATLAB in a 4-core, 2.6632GHz machine with 8 GB RAM, running OpenSuse 12.3.5.1 Non-Home Run Prediction Performance0 50 100 150 200050100150200Predicted non−home runsActual non−home runs0 50 100 150 200050100150200Predicted non−home runsActual non−home runsFigure 5.1: Total non-home runs scatter plot for innings1 (left) & innings2(right)Prediction of ˆNHReoi, which is the sum of individual ˆNHRi is shown in Fig-ures 5.1 and 5.2. Figure 5.1 shows scatter plot runs for both innings1 and innings2and demonstrates good agreement between the predicted and actual non-homeruns.Figure 5.2 shows the total non-home run prediction error distribution across allthe matches. The plot on the left gives the Probability Density Function (PDF)and the one on the right gives the Cumulative Distribution Function (CDF). Themedian number of non-home runs in an innings in our dataset is 125. It can beseen that for innings1, for 80% of the matches, the error margin is less than orequal to 10 runs. For innings2 for more than 80% of the matches, the error marginis less than 20 runs. There is a fundamental difference in the economics of the firstand second innings because of the availability of a “target” score in the latter. Itis counter-intuitive that the availability of a target score makes the second inningsmore unpredictable.33−60 −40 −20 0 20 40 60012345678910PDFError in predicted non−home runsNumber of matches0 10 20 30 40 50 60 70 8000.10.20.30.40.50.60.70.80.91CDFAbsolute error in predicted non−home runs% of Matches−60 −40 −20 0 20 40 60012345678910PDFError in predicted non−home runsNumber of matches0 10 20 30 40 50 60 70 8000.10.20.30.40.50.60.70.80.91CDFAbsolute error in predicted non−home runs% of MatchesFigure 5.2: PDF and CDF of total non-home run prediction error for innings1(top) & innings2 (bottom)34In innings1, the batting team tries to accumulate as many runs as they can,regardless of their current score. They do not settle for lesser number of runs aslong as there is an opportunity to score. Similarly, the team bowling in innings1tries to minimize the runs scored by the opponents. Even if history, team strategyor game intuition suggests that 300 is a winning total, they would continue scoringruns at the same rate till they run out of resources. The bowling team would wantto give away as few runs as possible (by taking wickets or bowling dot 1 balls) andcontain the score from growing, regardless of the current score.But in the second innings, target is the ceiling and the game ends when thescore reaches the target (batting team wins) or when one of the resources for thebatting team is depleted (bowling team wins). There is no incentive to the battingteam for using minimum amount of resources as opposed to consuming entire re-sources (scoring off the last ball or using the last wicket). Similarly, for the bowlingteam, the only requirement is to prevent the score from crossing the target score.There is no incentive to reduce the runs scored as long as it is practically impossiblefor the batting team to attain the target with the remaining resources. Therefore,availability of target directly influences the game plan and makes it slightly unpre-dictable. This explains the difference in prediction accuracy between innings1 andinnings2 of home, non-home and total runs (observed in figures 5.2,5.6 and 5.10)5.1.1 Segmentwise non-home run prediction performanceFigures 5.3 and 5.4 show the scatterplots for non-home runs prediction for everysegment across innings1 and innings2 respectively. It can be observed that the firsttwo and the last two segments have worse correlation compared to the rest of thesegments. This is attributed to the unpredictable nature of these periods of thegame. Unless the teams come out and play, their strategy, the behavior of the pitch,influence of weather conditions remain unknown. This property of unpredictablestarts is observed in many other sports as well. In cricket, teams try to shift theirscoring pattern and accelerate the scoring towards the end of their innings. Thismight lead to fall of many wickets in a short span of time or a steep increase in thescoring rate. Hence the final segments of an innings are also unpredictable.1Balls in which no runs are conceded. The batsmen play the ball but do not score a run. Thesekind of balls are good for the bowling team350 10 20 30 40 5001020304050 1st segmentˆNHR1NHR10 10 20 30 40 5001020304050 2nd segmentˆNHR2NHR20 10 20 30 40 5001020304050 3rd segmentˆNHR3NHR30 10 20 30 40 5001020304050 4th segmentˆNHR4NHR40 10 20 30 40 5001020304050 5th segmentˆNHR5NHR50 10 20 30 40 5001020304050 6th segmentˆNHR6NHR60 10 20 30 40 5001020304050 7th segmentˆNHR7NHR70 10 20 30 40 5001020304050 8th segmentˆNHR8NHR80 10 20 30 40 5001020304050 9th segmentˆNHR9NHR90 10 20 30 40 5001020304050 10th segmentˆNHR10NHR10Figure 5.3: Non-home runs prediction scatter plot for every segment ininnings1360 10 20 30 40 5001020304050 1st segmentˆNHR1NHR10 10 20 30 40 5001020304050 2nd segmentˆNHR2NHR20 10 20 30 40 5001020304050 3rd segmentˆNHR3NHR30 10 20 30 40 5001020304050 4th segmentˆNHR4NHR40 10 20 30 40 5001020304050 5th segmentˆNHR5NHR50 10 20 30 40 5001020304050 6th segmentˆNHR6NHR60 10 20 30 40 5001020304050 7th segmentˆNHR7NHR70 10 20 30 40 5001020304050 8th segmentˆNHR8NHR80 10 20 30 40 5001020304050 9th segmentˆNHR9NHR90 10 20 30 40 5001020304050 10th segmentˆNHR10NHR10Figure 5.4: Non-home runs prediction scatter plot for every segment ininnings2375.2 Home Run Prediction PerformanceTo predict home runs, nearest neighbor aided attribute bagging framework wasused as described in section 4.8. Every classifier in this framework choses a subsetof l features from the available feature space. This introduces a stochastic com-ponent in our algorithm and gives rise to high variance during prediction for thesame sample across multiple trials. To mitigate this, we combine predictions madeby multiple invocations of the attribute bagging framework. We invoke 200 itera-tions of the attribute bagging and take the mean of predictions from the iterationsas our final predictionThis way the variance is averaged out and there is good de-gree of consistency across predictions for the same sample. The number 200 wasdetermined to be a good number in terms of running time vs accuracy trade-off.A number of distance metrics (namely, Jaccard, Hamming, Spearman and Cosinemeasures) were tried and compared with the performance of Standard Euclideandistance metric, and the Standard Euclidean metric was observed to perform best(i.e., have the lowest minimum average error).0 50 100 150 200050100150200Predicted home runsActual home runs0 50 100 150 200050100150200Predicted home runsActual home runsFigure 5.5: Total home runs scatter plot for innings1 (left) & innings2 (right)Figure 5.5 shows a scatter plot between predicted and actual total home runs.Figure 5.6 shows that 80% and 70% of the matches are predicted with an errormargin of less or equal to 20 runs in innings1 and innings2 respectively. As men-38−60 −40 −20 0 20 40 60012345678910PDFError in predicted home runsNumber of matches0 10 20 30 40 50 60 70 8000.10.20.30.40.50.60.70.80.91CDFAbsolute error in predicted home runs% of Matches−60 −40 −20 0 20 40 60012345678910PDFError in predicted home runsNumber of matches0 10 20 30 40 50 60 70 8000.10.20.30.40.50.60.70.80.91CDFAbsolute error in predicted home runs% of MatchesFigure 5.6: PDF and CDF of total home run prediction error for innings1(top) & innings2(bottom)tioned in Chapter 3, home runs are awarded either 4 or 6 runs based on where theball lands. Hence, a single mis-prediction can induce a maximum error of 6 runs. Itis also a more difficult problem to predict the number of runs scored through home39runs, with the uncertainty arising from the very nature of the game as described insection 3.1.4. This is reflected in Figure 5.5 and 5.6.5.2.1 Segmentwise home run prediction performanceFigures 5.7 and 5.8 show the scatterplot for home runs prediction for every segmentacross innings1 and innings2 respectively. It can be observed that in comparisonwith segmentwise non-home runs prediction, segmentwise home run predictionhas poor correlation. This is because of the fact that we predict number of homerun hits in a segment as opposed to number of home runs itself. Then the hits arescaled by 4 units to predict number of runs (Majority of home run hits result in 4runs). Hence a single mis-prediction results in an error of 4 runs minimum.5.3 End-of-Innings Run Prediction PerformanceFigure 5.9 shows the scatter plot for Rˆeoi for every match in the dataset. Figure 5.10shows the total score error distribution across the all the matches in the dataset. Itcan be observed that, for 80% of matches, prediction error has a maximum of20 runs in innings1 and more than 55% for the same prediction error ceiling ininnings2. Again, the slightly poor prediction performance in innings2 is attributedto unpredictability of runs in innings2 (as elaborated in section 5.1)5.3.1 Segmentwise run prediction performanceFigures 5.11 and 5.12 show the scatterplot for total runs predicted for every seg-ment across innings1 and innings2 respectively. As mentioned in section 5.1.1,unpredictable nature of initial and final segments result in the mediocre runs pre-diction performance in these segments.5.4 Runs in a Segment, RˆiGiven match data till segment Si−1, prediction of runs scored in the next 5 overs,or the immediate next segment Si alone is an interesting and important problem.As match data streams in, the model is updated (in five-over intervals) with groundtruth and Rˆi is predicted for the next segment. Figure 5.13 shows the mean absolute400 10 20 30 40 5001020304050 1st segmentHˆR1HR 10 10 20 30 40 5001020304050 2nd segmentHˆR2HR 20 10 20 30 40 5001020304050 3rd segmentHˆR3HR 30 10 20 30 40 5001020304050 4th segmentHˆR4HR 40 10 20 30 40 5001020304050 5th segmentHˆR5HR 50 10 20 30 40 5001020304050 6th segmentHˆR6HR 60 10 20 30 40 5001020304050 7th segmentHˆR7HR 70 10 20 30 40 5001020304050 8th segmentHˆR8HR 80 10 20 30 40 5001020304050 9th segmentHˆR9HR 90 10 20 30 40 5001020304050 10th segmentHˆR10HR 10Figure 5.7: Home runs prediction scatter plot for every segment in innings1410 10 20 30 40 5001020304050 1st segmentHˆR1HR 10 10 20 30 40 5001020304050 2nd segmentHˆR2HR 20 10 20 30 40 5001020304050 3rd segmentHˆR3HR 30 10 20 30 40 5001020304050 4th segmentHˆR4HR 40 10 20 30 40 5001020304050 5th segmentHˆR5HR 50 10 20 30 40 5001020304050 6th segmentHˆR6HR 60 10 20 30 40 5001020304050 7th segmentHˆR7HR 70 10 20 30 40 5001020304050 8th segmentHˆR8HR 80 10 20 30 40 5001020304050 9th segmentHˆR9HR 90 10 20 30 40 5001020304050 10th segmentHˆR10HR 10Figure 5.8: Home runs prediction scatter plot for every segment in innings2420 50 100 150 200 250 300050100150200250300Predicted end−of−innings scoreActual end−of−innings score0 50 100 150 200 250 300050100150200250300Predicted end−of−innings scoreActual end−of−innings scoreFigure 5.9: Rˆeoi scatter plot for innings1 (left) & innings2 (right)error values and standard deviation for Rˆi scores across segments Si, given matchstate data till segment Si−1. MAEi for both innings1 and innings2 lies within therange of 4 and 12 runs for all the segments, with errors increasing towards thelater segments during the innings. Generally, until the middle overs (i.e., up toover 35), teams are focusing on building a good foundation and consolidating theirrun scoring efforts. On the other hand, in the last 2 or 3 segments (from overs35 to 50), it is common for the batsmen to try to hit most of the deliveries forhome runs to maximize total runs; subsequently, a large chunk of the total score isaccumulated in these last three segments. In doing so, batsmen take high risks andsubsequently may get dismissed. Hence the match could turn in favor of any ofthe two teams with more or less equal probability. Because of such unpredictablenature of the game during these segments, it is difficult to estimate Rˆi with highaccuracy. Accordingly, the performance of our algorithm suffers somewhat in thesesegments, as demonstrated by the plots.5.5 Performance Comparison with Baseline ModelOur model is compared with two other baseline models.43−60 −40 −20 0 20 40 60012345678910PDFError in predicted end−of−innings scoreNumber of matches0 10 20 30 40 50 60 70 8000.10.20.30.40.50.60.70.80.91CDFAbsolute error in predicted end−of−innings score% of Matches−60 −40 −20 0 20 40 60012345678910PDFError in predicted end−of−innings scoreNumber of matches0 10 20 30 40 50 60 70 8000.10.20.30.40.50.60.70.80.91CDFAbsolute error in predicted end−of−innings score% of MatchesFigure 5.10: PDF and CDF of Reoi prediction error for innings1 (top) &innings2 (bottom)440 10 20 30 40 5001020304050 1st segmentRˆ1R 10 10 20 30 40 5001020304050 2nd segmentRˆ2R 20 10 20 30 40 5001020304050 3rd segmentRˆ3R 30 10 20 30 40 5001020304050 4th segmentRˆ4R 40 10 20 30 40 5001020304050 5th segmentRˆ5R 50 10 20 30 40 5001020304050 6th segmentRˆ6R 60 10 20 30 40 5001020304050 7th segmentRˆ7R 70 10 20 30 40 5001020304050 8th segmentRˆ8R 80 10 20 30 40 5001020304050 9th segmentRˆ9R 90 10 20 30 40 5001020304050 10th segmentRˆ10R 10Figure 5.11: Runs in a segment prediction scatter plot for every segment ininnings1450 10 20 30 40 5001020304050 1st segmentRˆ1R 10 10 20 30 40 5001020304050 2nd segmentRˆ2R 20 10 20 30 40 5001020304050 3rd segmentRˆ3R 30 10 20 30 40 5001020304050 4th segmentRˆ4R 40 10 20 30 40 5001020304050 5th segmentRˆ5R 50 10 20 30 40 5001020304050 6th segmentRˆ6R 60 10 20 30 40 5001020304050 7th segmentRˆ7R 70 10 20 30 40 5001020304050 8th segmentRˆ8R 80 10 20 30 40 5001020304050 9th segmentRˆ9R 90 10 20 30 40 5001020304050 10th segmentRˆ10R 10Figure 5.12: Runs in a segment prediction scatter plot for every segment ininnings2460 5 10 15 20 25 30 35 40 45 5005101520OversMean Absolute Error (MAE) Innings 10 5 10 15 20 25 30 35 40 45 5005101520OversMean Absolute Error (MAE) Innings 2Figure 5.13: Mean absolute error and standard deviation for Runs Ri acrosseach segments Si, or, 5-over intervals for innings 1 (above) and innings2 (below). Since the first and fore-most prediction R1 for i = 1 givesthe runs scored at the end of over number 5, the plots start from over5.475.5.1 Run prediction by Bailey et al.Bailey et al. [2] propose a model that predicts the Rˆeoi of a game in progress whichis used to analyze the sensitivity of betting markets. Although addressing a differ-ent requirement, their framework allows making Rˆeoi predictions at the end of eachinnings.5.5.2 ICC projected score prediction modelThe first is a proprietary model used by the broadcasters of cricket matches and istelecast to the viewers when the game is in progress. This simple model predictsthe end of the innings score (Rˆeoi) based on the run rate. Run rate of a team is theaverage number of runs scored per over and is formally defined as, given by,Run rate =runs scored till overnn(5.1)This run rate is used to extrapolate the score at the end of the innings. The projectedscore for the innings (consisting of 50 overs) is given as,Projected Score = run rate∗50 (5.2)This model implicitly makes the assumption that the teams continue to score at thesame rate regardless of their score and the amount of resources left.In Figure 5.14, we demonstrate the accuracy of our model considering theabove two models as a baseline. At the end of each segment, Rˆeoi is calculatedand compared with the actual Reoi obtained at the end of innings from match data.As shown in the plot, all three models (Bailey et al., ICC Projected Score and ours)make better predictions as more data from the match in progress are input to themodels. However, MAE for our model is significantly better for all the segmentscompared to Bailey et al. and ICC Projected Score. It can be observed that ourmodel significantly outperforms the baselines for both the innings.480 10 20 30 40 5001020304050607080OversMAE Bailey at al. modelICC Projected Scoreour model0 10 20 30 40 5001020304050607080OversMAE Bailey at al. modelICC Projected Scoreour modelFigure 5.14: Mean absolute error in Rˆeoi prediction for innings 1 (top) andinnings 2 (bottom) for Bailey et al. [2], ICC Projeted Score predictionand our model.495.6 Winner PredictionOur framework was used for predicting Rˆeoi for both innings, to predict the gamewinner. We found that the accuracy of this prediction is just above 70%, which isrobust regardless of the number of known segments. To the best of our knowledge,this is the highest winner prediction accuracy reported for ODI cricket.50Chapter 6Conclusion & Future Work6.1 Future WorkA model to predict game progression and outcome using historical and instanta-neous features was developed in this work. Needless to say, there are many futuredirections for this work.6.1.1 Other formats of the gameOur model is tested on the One-Day International format of the sport. T-20 andTests are the other two formats in cricket where we can extend our model. Theseformats have slightly different rules (like powerplay, number of overs in an innings,number of innings in a game etc.). Hence teams devise different strategies and packtheir team with different kinds of players for each format. Hence it would present,within itself, a challenge to model the format in our algorithm.6.1.2 Strategy recommendationGiven the historical and the instantaneous match features, our model predicts theprogression of remainder of the game. This provides us with a framework for asearch space where key decision-making variables like runs to-be-scored, when totake the powerplay, which bowlers to bowl, which batsmen to play etc. of a teampredicted to lose the game, could be tweaked continuously till we predict them51to win. This way, our algorithm could recommend strategies automatically andthroughout the game as it unfolds.6.1.3 Wickets predictionOur model currently predicts the number of runs scored in the innings. A naturaldirection, though quite challenging one, would be to extend the model to predictthe number of wickets lost in the process. However, the sparsity of wicket data on aper-segment basis presently poses a significant challenge. A team has ten wicketsat its disposal in an innings. When compared with the number of home runs in aninnings (which is already difficult to predict due to sparsity), this number is veryless. Furthermore, teams rarely lose all their wickets in an innings. Typical valuestend to lie between five to eight. Hence extensive investigation is required in orderto create a robust and accurate approach to predict wicket falls.6.2 ConclusionThe main goal of this work is to learn a model for predicting game progression andoutcome in one-day cricket. Separate models were developed for home runs andnon-home runs using historical features as well as instantaneous match featuresfrom past games. Ridge Regression and attribute bagging algorithms are used onthe features to incrementally predict the runs scored in the innings. ODI cricketdata was collected and the quality and accuracy of our predictions was comparedwith an extensive set of experiments. In addition to predicting runs for futuresegments, our winner prediction accuracy is by far the highest reported in ODIcricket mining literature.52Bibliography[1] P. E. Allsopp and S. R. Clarke. Rating teams and analysing outcomes inone-day and test cricket. Journal of the Royal Statistical Society. Series A(Statistics in Society), 167(4):pp. 657–667, 2004. ISSN 09641998. URLhttp://www.jstor.org/stable/3559882. → pages 10, 25[2] M. Bailey and S. R. Clarke. Predicting the match outcome in one-dayinternational cricket matches while the game is in progress. Journal of sportsScience and Medicine, 5(4):480–487, 2006. → pages ix, 10, 11, 48, 49[3] D. Beaudoin. The best batsmen and bowlers in one-day cricket. PhD thesis,Simon Fraser University, 2003. → pages 10[4] I. Bhandari, E. Colet, and J. Parker. Advanced Scout: Data mining andknowledge discovery in NBA data. Data Mining and Knowledge Discovery,1(1):121–125, 1997. → pages 8[5] H.-H. Bock. Origins and extensions of the -means algorithm in clusteranalysis. Journal lectronique d’Histoire des Probabilits et de la Statistique[electronic only], 4(2):Article 14, 18 p., electronic only–Article 14, 18 p.,electronic only, 2008. URL http://eudml.org/doc/130880. → pages 6[6] S. R. Brooker. An economic analysis of ability, strategy and fairness in odicricket. Theses and Dissertations, 2011. URLhttp://hdl.handle.net/10092/5886. → pages 11[7] R. Bryll, R. Gutierrez-Osuna, and F. Quek. Attribute bagging: improvingaccuracy of classifier ensembles by using random feature subsets. PatternRecognition, 36(6):1291–1302, June 2003. doi:10.1.1.83.9733. → pages 5,28[8] B. Bukiet, E. R. Harold, and J. L. Palacios. A markov chain approach tobaseball. Operations Research, 45(1):pp. 14–23, 1997. ISSN 0030364X.URL http://www.jstor.org/stable/171922. → pages 953[9] F. C. Duckworth and A. J. Lewis. A fair method for resetting the target ininterrupted one-day cricket matches. The Journal of the OperationalResearch Society, 49(3):pp. 220–227, 1998. ISSN 01605682. URLhttp://www.jstor.org/stable/3010471. → pages 10[10] J. Fewell, D. Armbruster, J. Ingraham, A. Petersen, and J. Waters.Basketball teams as strategic networks. PLoS ONE 7(11): e47445., 2012.doi:doi:10.1371/journal.pone.0047445. → pages 8[11] K. Fukunaga and P. M. Narendra. A branch and bound algorithm forcomputing k-nearest neighbors. Computers, IEEE Transactions on, 100(7):750–753, 1975. → pages 5[12] G. Ganeshapillai and J. Gettag. A data-driven method for in-game decisionmaking in mlb. In MIT Sloan Sports Analytics Conference, 2014. → pages 9[13] E. Garcia. Cosine similarity and term weight tutorial. Information retrievalintelligence, 2006. → pages 5[14] G. Gartheeban and J. Guttag. A data-driven method for in-game decisionmaking in mlb: when to pull a starting pitcher. In Proceedings of the 19thACM SIGKDD international conference on Knowledge discovery and datamining, KDD ’13, pages 973–979, New York, NY, USA, 2013. ACM. ISBN978-1-4503-2174-7. doi:10.1145/2487575.2487660. URLhttp://doi.acm.org/10.1145/2487575.2487660. → pages 9[15] P. Jaccard. E´tude comparative de la distribution florale dans une portion desalpes et des jura. Bulletin del la Socie´te´ Vaudoise des Sciences Naturelles,37:547–579, 1901. → pages 5[16] A. Kaluarachchi and A. Varde. CricAI: A classification based tool to predictthe outcome in ODI cricket. In Information and Automation forSustainability (ICIAFs), 2010 5th International Conference on, pages250–255, 2010. doi:10.1109/ICIAFS.2010.5715668. → pages 10[17] C.-H. Kang, J.-R. Hwang, and K.-J. Li. Trajectory analysis for soccerplayers. In Proceedings of the Sixth IEEE International Conference on DataMining - Workshops, ICDMW ’06, pages 377–381, Washington, DC, USA,2006. IEEE Computer Society. ISBN 0-7695-2702-7.doi:10.1109/ICDMW.2006.160. URLhttp://dx.doi.org/10.1109/ICDMW.2006.160. → pages 954[18] H. H. Lemmer. An analysis of players’ performances in the first cricketTwenty20 World Cup series. South African Journal for Research in Sport,Physical Education and Recreation, 30:71–77, 2008. → pages 10[19] A. J. Lewis. Towards fairer measures of player performance in one-daycricket. The Journal of the Operational Research Society, 56(7):pp.804–815, 2005. ISSN 01605682. URL http://www.jstor.org/stable/4102181.→ pages 10[20] A. Liaw and M. Wiener. Classification and regression by randomforest. RNews, 2(3):18–22, 2002. URL http://CRAN.R-project.org/doc/Rnews/. →pages 6[21] S. Longley and M. Gipon. In-play betting report. analysis of sports bettingsnewest battleground by gamblingdata. Technical report, GamblingData, 91Waterloo Road,London, SE1 8RT, September 2011. URLhttp://www.gamblingdata.com/files/Final%20In-play%20report 0.pdf. →pages 2, 3[22] S. Luckner, J. Schro¨der, and C. Slamka. On the forecast accuracy of sportsprediction markets. In Negotiation, Auctions, and Market Engineering,International Seminar, Dagstuhl Castle, volume 2, pages 227–234, 2008.ISBN 978-3-540-77553-9. doi:10.1007/978-3-540-77554-6\ 17. URLhttp://www.springerlink.com/content/t0156067312n5116/.http://www.odysci.com/article/1010112984064393. → pages 9[23] D. Lutz. A cluster analysis of NBA players. In MIT Sloan Sports AnalyticsConference, 2012. → pages 9[24] D. W. Marquardt. Ridge regression in practice. The American Statistician,29(1):3–20, February 1975. ISSN 0003-1305.doi:10.1080/00031305.1975.10479105. → pages 29[25] I. G. McHale and M. Asif. A modified Duckworth-Lewis method foradjusting targets in interrupted limited overs cricket. European Journal ofOperational Research, 225(2):353–362, March 2013. ISSN 03772217.doi:10.1016/j.ejor.2012.09.036. → pages 10[26] F. Palomino, L. Rigotti, and A. Rustichini. Skill, strategy, and passion: anempirical analysis of soccer. Econometric Society World Congress 2000Contributed Papers 1822, Econometric Society, Aug. 2000. URLhttp://ideas.repec.org/p/ecm/wc2000/1822.html. → pages 955[27] K. Raj and P. Padma. Application of association rule mining: A case studyon team India. In International Conference on Computer Communicationand Informatics (ICCCI), pages 1–6, 2013.doi:10.1109/ICCCI.2013.6466294. → pages 10[28] V. Sankaranarayanan, J. Sattar, and L. Lakshmanan. Auto-play: A datamining approach to odi cricket simulation and prediction. In Proceedings ofthe SIAM International Conference on Data Mining, pages 1064–1072,2014. doi:10.1137/1.9781611973440.121. → pages iii, 6[29] C. Spearman. The proof and measurement of association between twothings. By C. Spearman, 1904. The American journal of psychology, 100(3-4):441–471, 1987. ISSN 0002-9556. URLhttp://view.ncbi.nlm.nih.gov/pubmed/3322052. → pages 5[30] T. B. Swartz, P. S. Gill, D. Beaudoin, and B. M. deSilva. Optimal battingorders in one-day cricket. Comput. Oper. Res., 33(7):1939–1950, July 2006.ISSN 0305-0548. doi:10.1016/j.cor.2004.09.031. URLhttp://dx.doi.org/10.1016/j.cor.2004.09.031. → pages 25[31] T. B. Swartz, P. S. Gill, and S. Muthukumarana. Modelling and simulationfor one-day cricket. Canadian Journal of Statistics, 37(2):143–160, 2009.ISSN 1708-945X. doi:10.1002/cjs.10017. URLhttp://dx.doi.org/10.1002/cjs.10017. → pages 11[32] P. O. S. Vaz de Melo, V. A. F. Almeida, A. A. F. Loureiro, and C. Faloutsos.Forecasting in the NBA and other team sports: Network effects in action.ACM Trans. Knowl. Discov. Data, 6(3):13:1–13:27, Oct. 2012. ISSN1556-4681. doi:10.1145/2362383.2362387. URLhttp://doi.acm.org/10.1145/2362383.2362387. → pages 856
You may notice some images loading slow across the Open Collections website. Thank you for your patience as we rebuild the cache to make images load faster.
- Library Home /
- Search Collections /
- Open Collections /
- Browse Collections /
- UBC Theses and Dissertations /
- Towards a time-lapse prediction system for cricket...
Open Collections
UBC Theses and Dissertations
Featured Collection
UBC Theses and Dissertations
Towards a time-lapse prediction system for cricket matches Veppur Sankaranarayanan, Vignesh 2014
pdf
Notice for Google Chrome users:
If you are having trouble viewing or searching the PDF with Google Chrome, please download it here instead.
If you are having trouble viewing or searching the PDF with Google Chrome, please download it here instead.
Page Metadata
Item Metadata
Title | Towards a time-lapse prediction system for cricket matches |
Creator |
Veppur Sankaranarayanan, Vignesh |
Publisher | University of British Columbia |
Date Issued | 2014 |
Description | Cricket is a popular sport played in over a hundred countries, is the second most watched sport in the world after soccer, and enjoys a multi-million dollar industry. There is tremendous interest in simulating cricket and more importantly in predicting the outcome of games, particularly in their one-day international format. The complex rules governing the game, along with the numerous natural phenomena affecting the outcome of a cricket match present significant challenges for accurate prediction. Multiple diverse parameters, including but not limited to cricketing skills and performances, match venues and even weather conditions can significantly affect the outcome of a game. The sheer number of parameters, along with their interdependence and variance create a non-trivial challenge to create an accurate quantitative model of a game. Unlike other sports such as basketball and baseball which are well researched from a sports analytics perspective, for cricket, these tasks have yet to be investigated in depth. The goal of this work is to predict the game progression and winner of a yet-to-begin or an ongoing game. The game is modeled using a subset of match parameters, using a combination of linear regression and nearest-neighbor classification-aided attribute bagging algorithm. The prediction system takes in historical match data as well as the instantaneous state of a match, and predicts the score at key points in the future, culminating in a prediction of victory or loss. Runs scored at the end of an innings, the key factor in determining the winner, are predicted at various points in the game. Our experiments based on actual cricket game data, shows that our method predicts the winner with an accuracy of approximately 70%. |
Genre |
Thesis/Dissertation |
Type |
Text |
Language | eng |
Date Available | 2015-05-31 |
Provider | Vancouver : University of British Columbia Library |
Rights | Attribution-NonCommercial-NoDerivs 2.5 Canada |
DOI | 10.14288/1.0167478 |
URI | http://hdl.handle.net/2429/46870 |
Degree |
Master of Science - MSc |
Program |
Computer Science |
Affiliation |
Science, Faculty of Computer Science, Department of |
Degree Grantor | University of British Columbia |
GraduationDate | 2014-09 |
Campus |
UBCV |
Scholarly Level | Graduate |
Rights URI | http://creativecommons.org/licenses/by-nc-nd/2.5/ca/ |
AggregatedSourceRepository | DSpace |
Download
- Media
- 24-ubc_2014_veppursankaranarayanan_vignesh.pdf [ 1018.28kB ]
- Metadata
- JSON: 24-1.0167478.json
- JSON-LD: 24-1.0167478-ld.json
- RDF/XML (Pretty): 24-1.0167478-rdf.xml
- RDF/JSON: 24-1.0167478-rdf.json
- Turtle: 24-1.0167478-turtle.txt
- N-Triples: 24-1.0167478-rdf-ntriples.txt
- Original Record: 24-1.0167478-source.json
- Full Text
- 24-1.0167478-fulltext.txt
- Citation
- 24-1.0167478.ris
Full Text
Cite
Citation Scheme:
Usage Statistics
Share
Embed
Customize your widget with the following options, then copy and paste the code below into the HTML
of your page to embed this item in your website.
<div id="ubcOpenCollectionsWidgetDisplay">
<script id="ubcOpenCollectionsWidget"
src="{[{embed.src}]}"
data-item="{[{embed.item}]}"
data-collection="{[{embed.collection}]}"
data-metadata="{[{embed.showMetadata}]}"
data-width="{[{embed.width}]}"
data-media="{[{embed.selectedMedia}]}"
async >
</script>
</div>
Our image viewer uses the IIIF 2.0 standard.
To load this item in other compatible viewers, use this url:
https://iiif.library.ubc.ca/presentation/dsp.24.1-0167478/manifest