私はあなたがすでに回答をマークしたことを知っていますが、正直なところ、それは過度に単純化されており、ボットと実際のプレイヤーのどちらを扱っているかにかかわらず、ELOシステムの主要な問題には実際には対処していません。たとえば、公平で正確なELOシステムを作成する場合の中心的な考慮事項は、プレーヤーの数、試合の数、結果へのスキルの相対的な影響(つまり、チャンス)、マッチメイキングの効率、および1勝あたりのレーティングの変動です。 /損失。
理想的な世界では、同等のスキルを持つ人々と一致することができ、スキルのゲームでは50%の勝率を達成します。ただし、それはあなたが全員のスキルを知っていて、チャンスの影響が比較的小さいことを前提としています。前者がわからない(そして後者を指定しなかった)ため、効率的な方法でスキルを正確に決定するために実行する必要がある多くのことがあり、ボットをプレイするほど単純ではありません。可能な限り多くの異なるボット:
1)「新規」プレーヤーのスキルのベースラインを設定し、スケールが上下できるようにし、ベースラインが通常のベルカーブの予想平均を表すようにします。IE:1-2500のスケールで1250。
2)新規プレイヤーは、最初のレーティングを確立するために、特定の数の「プレースメント」ゲームをプレイする必要があります。これは通常、後続のゲームよりも高いレーティングの10〜20ゲームで行われます。IE:プレーヤーの迅速な分離を促進するために、プレースメント中のレーティングゲイン/ロスは後の2倍になります。
3)マッチメイキングのその他の要因(合計試合に対する勝率など)を考慮する必要があります。これにより、スキルカーブの極端な端にいるプレイヤーが、より上または下の人と向き合うことで、「真の」スキルに高速で移動します彼らの現在の評価。IE:まともなサンプルサイズを超えて勝率が80%のプレイヤーは、真のスキルに近い勝率が55%のプレイヤーよりも、レーティングを上回り、はしごを早く上る必要があります。
4)チャンスが結果にどのように影響するかを十分に理解している必要があり、スキルの差異を合理的に保つために一致する相手を決定するときは、マッチメイキングの速度(キュー時間)を考慮する必要があります。以前のスケールを使用すると、1250プレーヤーが2000プレーヤーに直面することはありません(両方がレーティングされていない場合を除く)。これは公平な対応ではなく、ELOからポイントを正確に追加/削除することはできません。
私がシステムをセットアップする方法は、ベースポイントのゲイン/ロス値に2つのモディファイアを作成することです。1つは評価の分散に基づく予想結果を使用し、もう1つは合計一致値に対する勝率に基づいています。IE:評価が1500で、勝率が70%で、評価が1600のプレイヤーを上回る人は、勝率が高く、より高いプレイヤーを倒すと、より多くのポイントを獲得できます。
次に、プレイヤーがゲームの妥当なサンプルサイズを完了することを確認するだけでよく、ELOシステムを実装する「ゲーム」に関与する可能性に基づいた「最も効率的な」システムが得られます。比較的低い可能性のあるゲームは、正確になるまでに数十のゲームを必要とする可能性があり、比較的高い可能性のあるゲームは、数百もかかる可能性があります...
PS:記録のために、それはシステムの正確さを薄めるだけなので、劇的に異なるスキルレベルの人々がプレーすることを望まない。一定の差異以上のマッチがほとんど影響を与えないようにスキューしても、プレイヤーは差異が大きいマッチに対して報酬を与えられない、または過度に罰せられるため、問題が発生します。
編集:私はあなたの質問の「すでに評価された」部分に対処するのを忘れていましたが、それはかなり簡単です。キューで利用可能な最も近いスキルレーティングに基づいて人々を照合します。これは、最も均等なマッチであり、ポイントの増減(同様の勝率を想定)が静的な値になるためです。プレイヤーが正確に評価された場合、50%の勝率を維持し、上昇も下降もしません。もし彼らがない場合は、よりスキルの高いプレーヤーが失うよりも勝ち、レーティングが更新されます。
新しいプレーヤーの導入はさらに簡単です。ベースラインから始めて、配置が完了するまで、そのスキルのプレーヤーと(ゲイン/ロスが増加した)マッチングを行います。したがって、マッチごとの通常のポイントゲイン/ロスが修飾子なしで15であると仮定します。ここでは、新しいプレーヤーの配置と評価(ダブルゲイン/ロスあり)の例を示します。
- 初期:0-0(1250)-1250対戦相手
- 負け:0-1(1220)-1220対戦相手
- 敗北:0-2(1190)-1190対戦相手
- 勝利:1-2(1220)-1220対戦相手
- 勝利:2-2(1250)-1250対戦相手
- 勝利:3-2(1280)-1280対戦相手
- 勝利:4-2(1310)-1310対戦相手
- 敗北:4-3(1280)-1280対戦相手に直面
- 勝利:5-3(1310)-1310対戦相手
- 勝利:6-3(1340)-1340対戦相手
- 勝利:7-3(1370)
- 最終評価:1370