需要反击(Othello)想法的启发式功能



我刚刚研究了启发式功能,但我找不到对Reversi(Othello)的启发式功能的想法,我只需要一个好主意来对董事会的某些状态进行分级

我想:

  1. 计算移动次数
  2. 计算光盘的数量
  3. 计算在角落的光盘数量并给它们更好的分数,

我不知道它是否很好。

不,这还不够好。磁盘的数量尤其毫无用处 - 尽管游戏的目标是收集尽可能多的磁盘,但除最后一个动作外,任何动作的距离都是毫无意义的。您应该考虑以下几件事:

  • 计算移动次数可以使您可以衡量即时移动性;其他一切都是平等的,当您采取行动打开更多其他动作的情况时,应该受到青睐。您还需要测量潜在的移动性 - 开放空间旁边的对手磁盘数量。
  • x方形-B2,B7,G2和G7。将磁盘放在那里几乎可以肯定会散发出相邻的角落,因此您的启发式应该给他们高负重,至少在前40个动作中
  • c方形-A2,A7,B1,G1,H2,H7,B8和G8。他们提供对手进入角落的机会,因此它们的价值应与其他正方形不同,至少在边缘的磁盘少于五个磁盘

您可以阅读相对较短的描述,描述用于构建相对较强的(就其击败人类新手的能力而言)的策略。

othello/reversi的良好启发式功能需要捕获位置的更多方面,包括:

  • 硬币均等
  • 移动性(可能的移动数)
  • 拐角处被囚禁(角落稳定/不能转弯并特别重要)
  • 稳定性(光盘不受转动的措施)

我已经讨论了这些方面,并在此处提供了良好的启发式功能的实现:http://kartikkukreja.wordpress.com/2013/03/03/30/heuristic-function-function-function-for-reversiothello/p./p> <>

您可以尝试。没有什么比获得答案的数据。

假设您使用合理的软件工程实践并抽象启发式方法,则可以很快检查一下。

相关内容

  • 没有找到相关文章

最新更新