クッキークリッカーの評価関数候補と限界

クッキークリッカーの最善手を検討するための評価関数の候補は次の通り
cost(1+\frac{cps}{{\Delta}cps})

説明

(cost, Δcps) = (a, b), (x, y)の2つの手が順序を変えても同等の効果だとする
(a, b)→(x, y)にかかる総時間は
\frac{a}{cps} + \frac{x}{cps + b}
(x, y)→(a, b)にかかる総時間は
\frac{x}{cps} + \frac{a}{cps + y}
両者が同じなので
\frac{a}{cps} + \frac{x}{cps + b} = \frac{x}{cps} + \frac{a}{cps + y}

a(\frac{1}{cps} - \frac{1}{cps + y}) = x(\frac{1}{cps} + \frac{1}{cps + b})

\frac{a}{\frac{1}{cps} + \frac{1}{cps + b}} = \frac{x}{\frac{1}{cps} + \frac{1}{cps + y}}

a(1+\frac{cps}{b}) = x(1+\frac{cps}{y})

限界

ただし3つの手がある場合はいきなり使えなくなる
cps=1かつ(cost, Δcps) = (24, 1), (32, 2), (36, 3)の3つの手があるとする
評価関数の値は48で同値だが
(24, 1)→(32, 2)→(36, 3)の場合にかかる総時間は24+16+9=49
(36, 3)→(32, 2)→(24, 1)の場合にかかる総時間は36+8+4=48
1の差が出る

現実的な最善手近似探索としては、評価関数の値が良いほど計算確率が高いモンテカルロ的なものを組んで力任せ、あるいは遺伝的アルゴリズム、ということになるのではないだろうか。