Laplace
lapla****@csc*****
2003年 12月 21日 (日) 17:16:45 JST
laplaceです。 > > 対戦したロボット群のスコアの平均を計算し、 > > 獲得スコア = ((自分のスコア - スコア平均値)/ラウンド数 + ハンデキャップ) > > *|ハンデキャップ|*比率B(0.01〜1) > > 「*|ハンデキャップ|」がつく理由が良く分かりません。 > > 平均より強いロボットを仮定すると、 > ハンディキャップは負の値になりますね? そうです。 > で、対戦の結果、きちんと他のロボットのスコア平均を上回り、 > そこからさらにハンディキャップを引いても正の値になったとき、 > つまり、((自分のスコア - スコア平均値)/ラウンド数 + ハンデキャップ)が > 正の値になっているのに、 > そこにさらにハンディキャップを掛けると獲得スコアが負の値に > なっちゃいませんか? ||は絶対値の記号ですよ。 |ハンデキャップ|=ハンデキャップの絶対値です。 ということで、正と負の計算は正しくできていると思います。 しかし、ハンデキャップの値を掛けるのはいまいちですね。 この式では、自分でも意味がよく分かりません。 Melee用に最も大きなハンデキャップのロボットとの差をつけようと あれやこれや試していた時のまま残ってしまったようです(^_^;; > あと、獲得スコア、というのは、 > 自分も相手も強さにまったく変化がなかった場合に、 > 獲得スコアがゼロになるのがGoodである、という解釈でいいですか? リーグが進んでいったり、全ロボットが初期状態だと ぜんぜんレーティングが上がらないので このあたりは、もうちょっと考えないとだめです。 例えば1バトルで10点を取り合うという形にすると 同じレーティングで引き分けたら双方に5点が入り、 ハンデキャップとスコア差からあれこれ計算すると -20〜+20点の獲得スコアになるようなればいいかなと思っています。 それが 獲得スコア = 上限*function(自分のスコア,スコア平均値,ハンデキャップ,ラウンド数) でウマく計算できないかと考え中です。