#はじめに
Twitterのフォロワーにオセロ競技者が多いのでオセクエ 1 廃人のツイートをよく見かけます🕊
上下するレーティングに一喜一憂したり、連敗でレートが溶けることにストレスを感じている方が多いように感じます🥺🐘
『気にしなくていいんですよ。意外と知られていない。』
とか言っても信じてもらえないので検証してみましょう❗️😸
#さっそく本題
###シミュレーション内容
前提
- 適正レートは1700とする
- 週に300回対局するオセクエ廃人
ケース①
- 予期せぬ連敗でレートが1600まで落ちる😿
- その後レート1700の相手と300連戦(勝ち負けを交互に繰り返す)2
ケース②
- 連敗しなかった世界線😸
- レート1700の相手と300連戦(勝ち負けを交互に繰り返す)2
→ 300連戦後のレートを比べてみる❗️✊😸
###レーティング計算ロジック
レーティングの計算はイロレーティングでやります🧮✨
[ご参考]
※多くの対戦ゲームやオセロ連盟レーティングはイロレーティングをベースに色々手が加えられているので完全に同じ結果にはならないと思います😿
###プログラム
PHPで実装しました👨💻
<?php
// 想定勝率
function winRate($myRating, $opponentRating)
{
return 1 / (10 ** (($opponentRating - $myRating) / 400) + 1);
}
// レーティング計算
function rating($myRating, $opponentRating, $isWinning)
{
$winRate = winRate($myRating, $opponentRating);
return $isWinning
? $myRating + (1 - $winRate) * 16
: $myRating - $winRate * 16;
}
// 検証開始時のレーティング
$myRating = 1600;
// レーティング1700の相手と300回対戦する(交互に勝ち負けを繰り返すだけ)
for ($i = 0; $i < 300; $i++) {
$isWinning = $i % 2;
$myRating = rating($myRating, 1700, $isWinning);
}
echo $myRating; // 1703.9490319962
#結果
ケース①(連敗したあとに300戦)
→ 1703.9490319962
ケース②(連敗しないで300戦)
→ 1704.0428496813
なんと0.1しか変わりませんでした🙀💦
1週間対局すれば連敗は実質無かったことになります😽💞
これで心置きなく連敗できますね❗️😸…❓😿