首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Reversi(Othello)思想需要启发式函数

Reversi(Othello)思想需要启发式函数
EN

Stack Overflow用户
提问于 2012-11-09 19:02:36
回答 3查看 15.8K关注 0票数 9

我刚刚研究了启发式函数,但是我找不到关于reversi(奥赛罗)的启发式函数的想法,我只是需要一个好主意来分级董事会的某些状态。

我想:

  1. 数一数移动次数
  2. 数一数盘数
  3. 数一数角落里的唱片数量,给他们更好的分数,

我不知道它是否好。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-11-10 13:20:05

不,还不够好。磁盘的数量是特别无用的--尽管收集尽可能多的磁盘是游戏的目标,但是除了最后一个移动之外,任何移动的计数都是毫无意义的。这里还有一些你应该考虑的事情:

  • 计算移动的次数可以给出即时移动的度量;在其他条件相同的情况下,当您能够移动更多其他移动时,应该会受到青睐。你需要测量潜在的移动性,以及在一个开放空间旁边的对手磁盘的数量。
  • X平方- B2,B7,G2和G7。把你的磁盘放在较早的位置,几乎可以肯定的是,你的启发法应该给它们很大的负重,至少在前40步中是这样。
  • C正方形- A2,A7,B1,G1,H2,H7,B8和G8.它们允许对手进入角点,因此它们的值应该与其他方块的值不同,至少当边有不到五个圆时是这样。

您可以阅读关于构建一个相对强大的(从其击败人类新手的能力而言)的策略的相对简短的描述,reversi 这里

票数 11
EN

Stack Overflow用户

发布于 2013-11-10 12:12:04

对于othello/reversi来说,一个很好的启发函数需要捕捉更多的职位,包括:

  • 硬币平价
  • 流动(编号:可能采取的行动)
  • 角圈闭(角是稳定的/不能转弯,并且具有特殊的重要性)
  • 稳定性(衡量光盘不受转动的影响)

我在这里讨论了这些方面,并提供了一个很好的启发式函数的实现:http://kartikkukreja.wordpress.com/2013/03/30/heuristic-function-for-reversiothello/

票数 7
EN

Stack Overflow用户

发布于 2012-11-09 20:50:54

你可以试试。没有比数据更能得到答案的了。

假设您使用了合理的软件工程实践并抽象了启发式,您可以很快地检查它。

票数 -7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13314288

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档