チェスのパフォーマンスレーティング(略称Rp)とは、トーナメントや試合におけるプレイヤーのパフォーマンスレベルを、プレイしたゲーム数、それらのゲームでの合計スコア、および対戦相手のEloレーティングに基づいて評価したものです。これは、パフォーマンスによってレーティングに変化がなかった場合のプレイヤーのEloレーティングを表します。
しかしながら、このような方法でパフォーマンスレーティングを算出するのは困難であるため、線形法やFIDE方式といった、より簡便なパフォーマンスレーティング算出方法が広く用いられています。これらの簡便な方法では、個々の対戦相手のレーティングではなく、平均レーティング(Raと略記)のみが計算に用いられます。いずれの方法においても、パフォーマンスレーティングの決定には個々の試合結果ではなく、合計スコアのみが使用されます。FIDEパフォーマンスレーティングは、グランドマスター(GM)などのFIDEタイトルの基準をプレイヤーが達成したかどうかを判断するためにも使用されます。
一連のゲームにおけるプレイヤーのパフォーマンスレーティングは、そのゲームで対戦した相手に対して、実際の合計スコアを獲得するためにプレイヤーが必要とするEloレーティングです。パフォーマンスレーティングを理解する実用的な方法は、プレイヤーの実際のレーティングが各ゲーム後に変化するという事実を中心に考えることです。定義によれば、この一連のゲームの後、プレイヤーの実際のレーティングが変わらない唯一の方法は、これらのゲームの開始時のレーティングがすでにシリーズ全体のパフォーマンスレーティングである場合です。この定義では、個々のゲームの結果は計算に直接影響しません。ただし、線形およびFIDE方式とは異なり、個々の対戦相手のレーティングは計算に影響します。[ 1 ] [ 2 ]
合計点数が与えられます一連のゲームと対戦相手の評価完璧なパフォーマンス評価は、予想スコア(対戦相手の評価から算出)が実際のスコアと一致する場合:
以下の2つの極限ケースに注意してください。
以来は単調増加関数なので、ドメインに対して二分探索を実行することによって。まず、評価の妥当な下限と上限(ここでは0から4000)を設定し、中間点(2000)での期待スコアを確認します。実際のスコアがこの期待値よりも高い場合、プレイヤーのパフォーマンスが2000より優れていたことを示しているため、上半分(2000から4000、中間点は3000)で探索を繰り返します。このプロセスは、正確な値が見つかるまで繰り返されます。見つかりました。
Pythonによる実装例を以下に示します。
def expected_score ( opposite_ratings : list [ float ], own_rating : float ) -> float :「これらの対戦相手とのトーナメントで、我々は何点獲得できると予想しているのか」合計を返す(1 / ( 1 + 10 ** ((対戦相手のレーティング-自分のレーティング) / 400 ))対戦相手の評価を、対戦相手の評価の中から選択する。)def performance_rating ( opposite_ratings : list [ float ], score : float ) -> int :"""バイナリサーチを使用して数学的に完璧なパフォーマンス評価を計算する"lo , hi = 0 , 4000hi - lo > 0.001の間:中間値= ( lo + hi ) / 2expected_score ( opposite_ratings , mid ) < score の場合:lo =中間それ以外:hi =中ラウンドを返す(中間)print ( performance_rating ([ 1851 , 2457 , 1989 , 2379 , 2407 ], 4 )) # 2551になるはずFIDEは選手のパフォーマンスレーティングを算出する。として、 どこは対戦相手の平均評価であり、これは、プレイヤーの合計スコアをプレイしたラウンド数で割った値に基づく追加の評価差です。この小数点のスコアは、正規分布の累積分布関数によって与えられる、 どこプレイヤーと対戦相手のレーティングの差を表します(対戦相手のレーティングが高い場合は負の値になります)。[ 3 ]
FIDE は、以下の値のルックアップ テーブルを提供します。値に基づいて小数点以下第2位に四捨五入した値。一般的なトーナメントの長さ(8~11ラウンド)については、レーティング差の例として以下に示します。[ 4 ] [ 5 ]
真の定義と同様に、FIDE方式も個々のゲームの結果には依存しない。真の定義とは異なり、FIDE方式は個々の対戦相手のレーティングには依存しない。[ 4 ]
注:ゼロ点には偶数スコアは、満点には。
標準的な方法で FIDE タイトルを獲得するための要件の 1 つは、一定数のノルムを達成することです。チェスのノルムは、トーナメントでプレイヤーのパフォーマンス レーティングが閾値以上の場合に授与されます。たとえば、グランドマスター(GM) タイトルの場合、プレイヤーは平均レーティング 2380 の対戦相手に対して少なくとも 2600 のパフォーマンス レーティングに対応する 3 つの GM ノルムを達成し、さらに必要なピーク ライブ レーティング 2500 に到達する必要があります。これらのノルムは、FIDE パフォーマンス レーティング方式で計算されます。[ 5 ]
評価差を計算するためのルックアップテーブルが必要なためFIDEパフォーマンスレーティングでは、別のより単純な方法でレーティングの差を計算します。、 どここの場合はパーセンテージスコアです。総合的なパフォーマンス評価は次のように計算されます。FIDE方式と同じです。
このパフォーマンス評価を計算する同等の方法は、平均を取ることです。
この方法の大きな欠点は、格下のプレイヤーに勝つと、実際には自分のパフォーマンス評価が下がってしまう可能性があることだ。
この方法は、パーセンテージスコアとの線形関係から、線形法と呼ばれることもある。真の定義と同様に、線形法も個々の試合結果に依存しない。真の定義とは異なり、線形法は個々の対戦相手の評価に依存しない。[ 6 ]
パフォーマンス評価を計算するさまざまな方法は、一般的に同様の結果をもたらします。すべての方法がまったく同じ結果をもたらす唯一のスコアは、平均評価から偏りのない対戦相手との同点スコアであり、この場合、パフォーマンス評価は対戦相手の評価の平均になります。スコアがゼロまたは満点に近い場合、または個々の評価の分散が大きい場合(この場合、個々の評価の影響が大きくなります)には、より大きな差異が生じます。パフォーマンス評価の真の定義では、スコアがゼロの場合は-∞ 、満点の場合は∞となりますが、他の方法では有限の値が得られます。 [ 1 ]
具体的な例として、あるプレイヤーがレーティング2400、2500、2600の3人の対戦相手に対して2勝半/3の成績を収めた場合、異なる方法によるパフォーマンスレーティングは、2785(真の定義)、2773(FIDE)、2767(線形)となります。[ 1 ]
FIDEハンドブック:レーティングシステム