![見出し画像](https://assets.st-note.com/production/uploads/images/83879602/rectangle_large_type_2_3a042cb337aa744f98e73b6b9eba12a6.jpeg?width=1200)
【高校野球千葉大会の優勝校予想#2】予想の手順とレーティング
こんにちは。いちかわきです。
前回の続きという事で、テーマである高校野球千葉大会の優勝校予想について、手順をご紹介します。
論文ではないので、くだけた口調かつ大まかな説明になりますがご容赦ください。
方針はざっくり次のようなものです。
過去の試合結果を入力して各チームのレーティングを計算する
トーナメント表の通りにプログラム上で対戦カードを組み、大会を$${n}$$回繰り返す(今回は試行回数を$${n=1000}$$としました)
プログラム上での優勝回数が最も多かったチームを優勝予想の本命とする
私は高校野球の現場にいる人間ではないので、選手一人一人の能力をチェックした上での詳細な戦力分析などは出来ません。専門家の方にお任せします。
一方シミュレーションなどの数理的な手法については、やり方が分かりさえすれば誰でも扱う事ができます。
過去の試合結果のみを勝率計算の根拠としているので、精密性についてはいずれ限界にぶち当たるでしょう。
それでも予想としてある程度の形には出来るよ、という所をこれからお見せしていければと思います。
レーティングとは
レーティングは対戦型の競技において相対評価で実力を表すために使われる指標で、イロ・レーティングは Arpad Elo によって提唱された一種のレーティングです。
対戦相手の強さを考慮して勝利確率を計算するという点がポイントになります。
対戦型の競技で成績を評価する指標のうち、メジャーなものといえば勝率です。プロ野球の順位も勝率の序列で決まりますよね。しかし勝率には「対戦相手の強さを考慮していない」という欠点があります。
例として勝率がともに5割であるチームAとチームBを考えます。仮にチームAは成績上位の相手と多く対戦し、チームBは成績下位の相手と多く対戦していたものとしましょう。
このとき、同じ勝率5割であっても実力はチームAの方が優れていると考えられます。しかしこの実力差は勝率には反映されません。
そこで、イロ・レーティングを使用します。イロ・レーティングでは対戦前の互いのレーティングから勝利確率を計算し、これと実際の対戦結果を踏まえてレーティングを更新します。
これを試合のたびに繰り返すことで、いずれレーティングが各プレイヤーの真の勝利確率(=強さを表す適正な値)に収束するという考えに基づいてレーティングの計算式が決定されています。
レーティングの計算式
以下、試合後のレーティングを更新する式と試合ごとの勝利確率を求める式をご紹介します。それほど難しくはないですが、この先の数式を読むのが面倒な方は次の特徴を把握していただければ問題ないかと思います。
~~~~~~~~~
【高レートのチームが低レートのチームに勝利】
勝利チームのレートは少しだけ増える
敗戦チームのレートは少しだけ減る
【低レートのチームが高レートのチームに勝利】
勝利チームのレートは大きく増える
敗戦チームのレートは大きく減る
~~~~~~~~~
チーム$${i}$$とチーム$${j}$$が対戦したときに期待されるチーム$${i}$$の勝率を$${\mu_{ij}}$$とし、対戦前のチーム$${i}$$のレーティングを$${r_{i}({\rm old})}$$、対戦後のチーム$${i}$$のレーティングを$${r_{i}({\rm new})}$$とします。このとき, $${r_{i}({\rm new})}$$は
$$
r_{i}({\rm new})=r_{i}({\rm old})+K(S_{ij}-\mu_{ij})
$$
となります。ただし、$${K}$$は定数(後述)、$${S_{ij}}$$は
$$
S_{ij}=
\begin{cases}
1\quad (i\text{が}j\text{に勝った場合})\\
0\quad (i\text{が}j\text{に負けた場合})
\end{cases}
$$
です。(試合後のレーティングを更新する式)
また, $${\mu_{ij}}$$が対戦前の両チームのレート差
$$
d_{ij}=r_{i}({\rm old})-r_{j}({\rm old})
$$
による底10のロジスティック関数
$$
L(x)=\frac{1}{1+10^{-x}}
$$
で表されることを仮定すると、
$$
\mu_{ij}=L(d_{ij}/\xi)=\frac{1}{1+10^{-d_{ij}/\xi}}
$$
となります。(勝利確率を求める式)
参考:
$${K}$$は競技ごとに自由に設定できる定数です。$${K}$$の値を増やすと1試合で上下するレートの量も増えます。質の良い予想をするためには$${K}$$の値をいかに上手く調節するかが重要ではありますが、まあこれは後々研究を進めながら考えていくとして、ひとまず$${K=80}$$とおいてみます。
対象データ
各チームのレーティングを計算するために、過去の試合の勝敗をデータとして集めました。範囲は次の通りです。
'15 春・夏・秋
'16 春・夏・秋
'17 春・夏・秋
'18 春・夏・秋
'19 春・夏・秋
'20 夏・秋
'21 春・夏・秋
'22 春
注)
春と秋の大会については予選、敗者復活戦、3位決定戦なども含みます。
甲子園や関東大会の試合は含みません。
'18夏は東千葉大会、西千葉大会ともに対象です。
'20春は中止でした。夏の独自大会は地区トーナメント、決勝トーナメントともに対象です。
今回の行程で最も大変だった作業が、このデータ集めでした。(プログラムを組むよりも圧倒的に)
古い年度まで遡れば遡るほどデータを増やせますが、私のモチベーション的に2015年までが限界でした…
2015年~2022年で集計した試合は合計約4000試合となりました。
レート計算
過去の試合結果、勝率計算の式、レーティングを更新する式を利用して各チームのレートを計算したものが以下になります。(上位のみ抜粋、(A)(B)(C)はシード)
$${\begin{array}{c|l|c}順位&チーム&レート\\ \hline1&(A)木更津総合& 2441 \\2&(A)市立船橋&2306\\ 3&(C)専修大松戸&2304\\ 4&(B)習志野&2269\\ 5&八千代松陰&2226\\ 6&(B)中央学院&2176\\ 7&(A)銚子商業&2173\\ 8&(A)拓殖大紅陵&2151\\ 9&東海大市原望洋&2092\\ 10&成田&2084\\ 11&(B)東京学館&2042\\ 12&(C)千葉黎明&2015\\ 13&千葉明徳&1993\\ 14&(C)東海大浦安&1987\\ 15&千葉学芸&1980\end{array}}$$
あくまで試合での勝率は対戦相手とのレート差という相対的な値によって決まります。
優勝確率は自身のレートだけでなくクジ運の影響も受けるのです。
これらを踏まえて'22夏大の結果を予想するとどうなるのか、次の記事でご紹介します。
ここまでお読みいただきありがとうございました!
補足:千葉大会のシードについて
夏の千葉大会では、春の県大会の成績上位校にシード権が与えられます。シードには
Aシード(春ベスト4)
Bシード(春ベスト8の4チーム)
Cシード(春ベスト16の8チーム)
の3種類があり、シードの特権は次のようになっています。
A・B・C 共通
・1回戦が確定で免除される
・4回戦までは他のシード校と当たらないBシード以上
・5回戦は他のBシード以上に当たらない
(シード校に当たったとしてもCシード)Aシード
・準々決勝は他のAシードに当たらない
(シード校に当たったとしてもBシード以下)
つまりシード校の16チームが仮に全てベスト16に残ったとすると、5回戦以降の組み合わせは次のようになります。
![](https://assets.st-note.com/img/1662859303160-LJ6Rk0LEbE.jpg?width=1200)
あとがき
2010年台以降、木更津総合の実績は圧倒的で「木更津総合を倒さない限り千葉県勢に甲子園は無い」と言えるレベルです。
更新履歴
2022.09.11 初回投稿
2022.09.13 文章表現の軽微な修正