sports ranking and scheduling with kalman filters
play

Sports Ranking and Scheduling with Kalman Filters Peter Elliott, - PowerPoint PPT Presentation

Sports Ranking and Scheduling with Kalman Filters Peter Elliott, Matt Owen, Kyle Shan, Yingjie Yu Introduction Introduction Introduction Definition (Rating) A rating is a numerical evaluation of an item. In sports rating systems, higher


  1. Sports Ranking and Scheduling with Kalman Filters Peter Elliott, Matt Owen, Kyle Shan, Yingjie Yu

  2. Introduction

  3. Introduction

  4. Introduction Definition (Rating) A rating is a numerical evaluation of an item. In sports rating systems, higher rated teams perform better.

  5. Introduction Definition (Rating) A rating is a numerical evaluation of an item. In sports rating systems, higher rated teams perform better. Definition (Ranking) A ranking is an ordering of items.

  6. Introduction Definition (Rating) A rating is a numerical evaluation of an item. In sports rating systems, higher rated teams perform better. Definition (Ranking) A ranking is an ordering of items. It is easy to turn ratings into rankings

  7. Introduction Definition (Game) A game between two teams is a pairwise comparison which yields a real number outcome

  8. Introduction Definition (Game) A game between two teams is a pairwise comparison which yields a real number outcome Definition (Schedule) A schedule is a matching of teams to play against each other in each round.

  9. Introduction Definition (Game) A game between two teams is a pairwise comparison which yields a real number outcome Definition (Schedule) A schedule is a matching of teams to play against each other in each round. Goal: schedule games to find the most “informative” ranking.

  10. Extended Kalman Filter Ranking Underlying Model Assume that games follow the Bradley-Terry paired comparison model: ◮ Teams 1 , . . . , n have skill levels x 1 , . . . , x n ◮ The expected outcome in a game between teams i and j is 1 h ( x i , x j ) = 1 + 10 − ( x i − x j ) /ξ Ratings can be computed using maximum likelihood, but this is computationally difficult.

  11. Extended Kalman Filter Ranking Applying a Filter to Bradley-Terry Start with the system x k = x k − 1 = x ∗ y k = h k ( x k ) + ǫ k where { ǫ k } is an uncorrelated random process, and the predicted outcomes h k ( x k ) of the games in each round are given by the Bradley-Terry prediction.

  12. Extended Kalman Filter Ranking Applying a Filter to Bradley-Terry Start with the system x k = x k − 1 = x ∗ y k = h k ( x k ) + ǫ k where { ǫ k } is an uncorrelated random process, and the predicted outcomes h k ( x k ) of the games in each round are given by the Bradley-Terry prediction. Then, we get the simple update equations: P k = ( P † k − 1 + σ − 2 H T k H k ) † x k − 1 − σ − 2 P k H T x k = ˆ ˆ k ( h k (ˆ x k − 1 ) − y k ) where P k is the covariance of ˆ x k and H k = Dh k ( x k − 1 ).

  13. Extended Kalman Filter Ranking Similarity to Elo Elo’s method seems a lot like the EKF update: Elo: x i ← x i − K ( h ( x i , x j ) − y k ) x − σ − 2 P k H T EKF: ˆ x ← ˆ k ( h k (ˆ x k − 1 ) − y k ) where K is a constant.

  14. Extended Kalman Filter Ranking Similarity to Elo Elo’s method seems a lot like the EKF update: Elo: x i ← x i − K ( h ( x i , x j ) − y k ) x − σ − 2 P k H T EKF: ˆ x ← ˆ k ( h k (ˆ x k − 1 ) − y k ) where K is a constant. EKF ranking has several advantages over Elo.

  15. Scheduling Introduction Definition (Fisher Information) The Fisher Information matrix is the inverse of the covariance matrix of the state estimate. I = P † Schedule Design Goal: Choose matchups that maximize the Fisher Information.

  16. Scheduling Introduction Definition (Fisher Information) The Fisher Information matrix is the inverse of the covariance matrix of the state estimate. I = P † Schedule Design Goal: Choose matchups that maximize the Fisher Information. Notions of Fisher optimality: ◮ T-optimality: maximize the trace of the Fisher Information matrix ◮ Any monotone function of the eigenvalues

  17. Scheduling Introduction Complete schedules for tournaments are often created before a tournament begins. This is known as static scheduling . Dynamic scheduling refers to creating a schedule as the tournament occurs, taking into account the results as they happen. Goal: dynamically schedule one game for each team, for each round of play, in a way that maximizes information of the rating.

  18. Scheduling Using Kalman Filters The Kalman Filter update equations give a strategy for dynamic scheduling. P k = ( P † k − 1 + σ − 2 H T k H k ) † In terms of Fisher Information: I k = I k − 1 + σ − 2 H T k H k Goal: Choose games at each time step that maximize I k

  19. Scheduling Using Kalman Filters The Kalman Filter update equations give a strategy for dynamic scheduling. P k = ( P † k − 1 + σ − 2 H T k H k ) † In terms of Fisher Information: I k = I k − 1 + σ − 2 H T k H k Goal: Choose games at each time step that maximize I k Important features: ◮ Maximizing tr ( I k ) is equivalent to maximizing tr ( H T k H k ) ◮ If team i plays a single game, the i th entry on the diagonal of H T k H k is a function of the previous ratings of team i and its opponent

  20. Scheduling A New Dynamic Scheduling Method Our proposed method: ◮ For each pair of teams i and j , calculate the potential information gain

  21. Scheduling A New Dynamic Scheduling Method Our proposed method: ◮ For each pair of teams i and j , calculate the potential information gain ◮ Create a complete weighted graph G , with edge weight between i and j corresponding to the potential information gain

  22. Scheduling A New Dynamic Scheduling Method Our proposed method: ◮ For each pair of teams i and j , calculate the potential information gain ◮ Create a complete weighted graph G , with edge weight between i and j corresponding to the potential information gain ◮ Choose the maximum weighted perfect matching on G

  23. Scheduling A New Dynamic Scheduling Method Our proposed method: ◮ For each pair of teams i and j , calculate the potential information gain ◮ Create a complete weighted graph G , with edge weight between i and j corresponding to the potential information gain ◮ Choose the maximum weighted perfect matching on G ◮ The weight of the matching is exactly tr ( H T k H k )

  24. Scheduling A New Dynamic Scheduling Method Our proposed method: ◮ For each pair of teams i and j , calculate the potential information gain ◮ Create a complete weighted graph G , with edge weight between i and j corresponding to the potential information gain ◮ Choose the maximum weighted perfect matching on G ◮ The weight of the matching is exactly tr ( H T k H k ) Edmonds’ Blossom Algorithm (1965) solves the perfect matching problem in polynomial time.

  25. Scheduling A New Dynamic Scheduling Method Our proposed method: ◮ For each pair of teams i and j , calculate the potential information gain ◮ Create a complete weighted graph G , with edge weight between i and j corresponding to the potential information gain ◮ Choose the maximum weighted perfect matching on G ◮ The weight of the matching is exactly tr ( H T k H k ) Edmonds’ Blossom Algorithm (1965) solves the perfect matching problem in polynomial time. This method is trace-optimal for EKF ranking.

  26. Scheduling Trace-Optimality Graph

  27. Scheduling Effect of Optimal Scheduling

  28. Scheduling Heatmap All Games Played

  29. EKF Convergence

  30. Linear Kalman Filter Ranking Introduction Consider a system where the expected outcome in a game between teams i and j in round k is simply the difference of their skills: h k ( x k ) = x i k − x j k

  31. Linear Kalman Filter Ranking Introduction Consider a system where the expected outcome in a game between teams i and j in round k is simply the difference of their skills: h k ( x k ) = x i k − x j k One way to find ratings is using least squares to solve x � Hx − y � 2 ˆ x = arg min where y i is team i ’s cumulative point differential, and H is a matrix where each row represents a game between two teams i and j , with 1 in the winner’s slot and -1 in the loser’s slot.

  32. Linear Kalman Filter Ranking Linear System The Kalman Filter is an online algorithm solving the same problem. Assume a linear system for game results: x k = x k − 1 = x ∗ y k = Hx ∗ + ǫ k where H is defined as before, and { ǫ k } is a Gaussian white noise process with variance σ 2 .

  33. Linear Kalman Filter Ranking Update Equations Applying the Kalman Filter yields P k = ( P † k − 1 + σ − 2 H T H ) † x k − 1 − σ − 2 P k H T ( H ˆ ˆ x k = ˆ x k − 1 − y k ) . We use the initial values of P 0 = ∞ and ˆ x 0 = ¯ x where ¯ x is the average rating.

  34. Linear Kalman Filter Ranking Update Equations Applying the Kalman Filter yields P k = ( P † k − 1 + σ − 2 H T H ) † x k − 1 − σ − 2 P k H T ( H ˆ ˆ x k = ˆ x k − 1 − y k ) . We use the initial values of P 0 = ∞ and ˆ x 0 = ¯ x where ¯ x is the average rating. If every team plays every other team each round, we can simplify to P k = σ 2 n 2 k H T H x k − 1 − 1 nk H T ( H ˆ ˆ x k = ˆ x k − 1 − y k ) .

  35. Convergence of Kalman Filter Ranking Proof of Convergence Theorem: In the case that every team plays every other team each round, we prove that x k ) � = σ 2 x k ) = Hx ∗ E ( H ˆ and � Cov( H ˆ k . The mean does not deviate from its initial value, so H ˆ x k describes the entire state.

  36. Convergence of Kalman Filter Ranking Two Teams

  37. Convergence of Kalman Filter Ranking More Teams, Large Range

  38. Convergence of Kalman Filter Ranking More Teams, Large Range

Recommend


More recommend