私はコードの後ろにルールを指定するボードゲームのヒューリスティックな機能を理解しようとしています。示すように、最初のボードは、緑と赤のトークンを保持しているボードゲームのヒューリスティック機能AI
def evaluate(self, board):
score = 0
for i in range(board.LENGTH):
for j in range(board.WIDTH):
if board.board[i][j].token == "G":
score += 100 * (i+1) + 50 * (j + 1)
if board.board[i][j].token == "R":
score -= 100 * (i+1) + 50 * (j + 1)
return score
:私の評価関数がこれです。 AIが最初に動いて、あなたのトークンを攻撃してあなたの反対の色をプレイします。黒のセルでは、トークンは直交(左、右、上、下)または斜めに移動できます。それが白いセル上にある場合、あなたは直角にしか移動できません。
相手のトークンの隣に自分のトークンを移動すると、その方向の相手のトークンがすべて削除されます。例:緑のトークンをC4からC5に移動すると、C-6からC-9までのすべてのRトークンを削除します。これを前方攻撃といいます。同様に、相手のトークンの隣にトークンがある場合、そのトークンから離れて、その行のすべてのトークンを取り除くことができます。明らかに、黒色セル上のトークンは、より可能性のある移動を有する。
AIのヒューリスティックな機能は何でしょうか?現在の機能で何を変更する必要がありますか?
私はそれがすべてのルールになるとは思わない:あなたは勝利の基準を与えていない。 – Prune
勝利の基準は、すべての対戦相手トークンが完了したときです。そして、それぞれの側から5回の連続した不成功の動きがあった場合、引き分けがあります。 – Bob
反対のトークンから別のトークンに行を移動する場合、移動の両端でトークンを削除しますか? – Prune