人机博弈之(五)---估值基础

原创 2007年09月29日 21:10:00

估值是一个通过既有的棋类知识来评估一个局面的优劣的过程。这一过程对具体的棋类知识的
依赖程度很深,但是仍有一般性的规律可循。


1. 棋子的价值评估,简单的说就是评估双方都有哪些棋子在棋盘上。根据我们的经验,可以让
一个车的价值为500,一个马的价值为300,一个兵的价值为100等等。将的价值为无限大。一方
的棋子总值就是棋盘上存活的该方棋子乘以棋子的价值的和。用一个式子表示:
 
 sideValue = sum(Number*pValude)
其中Number是某种棋子的数量,pValue是该中棋子的价值,sum是对各种棋子的总价值求和。
如果红色棋子的价值总和大于黑色的棋子价值总和,通常意味着红方的局势优于黑方。而红黑
双方的sideValue之差越大,红方的优势就越大。


2 棋子的灵活性与棋盘控制
棋子的灵活性是指棋子的活动范围,通常越大越好。一匹不能动的马很难在棋局中发挥重要的
作用;同样,一个蹲在角落里的车也是价值不高。
评估棋子的灵活性较为简单,将一个棋子的所有合法的走法罗列出来,称上该种棋子每一可移
动的价值就行了。可用下面的公式:
  mobility = sum(moveNumber * moveValue)
其中,moveNumber是某种棋子的合法走法数量,moveValue是该种棋子每一走法的价值,sum是对
所有棋子灵活性价值求和。mobility就是所有棋子的灵活性分数。
    与灵活性评估类似,还可以评估博弈双方对棋盘上位置的控制能力。在象棋中,如果一位
置落在某方棋子的合法走不上,就可以认为被该方控制。如果某一位置同时落在双方的合法的
步上,我们可以根据双方控制该位置的棋子数量及棋子价值来决定孰优孰劣。能控制更多位置
的一方应该在这项得分上更多。


3. 棋子之间的关系也是估值重要的内容之一,我们可以将某个棋子被对方棋子威胁看成是一个
步利因素。类如红车的位置在黑马的合法走法当中,此时我们可以把红车的价值减去一个值如
200来刻画这种情形。而如果红马在黑车的合法走步之中,而红马同时也在红卒的合法走步之中,
我们可以认为红马置于红卒的保护之下,没有受到威胁,价值不变。
 棋子关系的评估应考虑到该谁走棋的问题。如果某个红马落在黑炮的合法走步之内,但
此时轮到红方走棋,应该认为红马受到的威胁较轻。而如果此时轮到黑方走棋,就应该认为受到
的危险很大,应减去一个相对较大的值了。如果将被威胁,且轮到对方走棋,那么无论有何种可
以走到将位都没有意义,将等于失去了。此时应该结束估值返回失败的估值。棋子间关系的评估
可以在很大程度上提高估值的精度,通常是博弈估值的必备内容。 

UCT(信心上限树算法)解四子棋问题——蒙特卡罗法模拟人机博弈

虽说UC

基于visual Studio2013解决C语言竞赛题之1083人机博弈

题目解决代码及点评/************************************************************************/ /* 83. 人机搏弈。 有1...

人机博弈-吃子棋游戏(二)算气

介绍人机博弈-吃子棋游戏,算气算法,此算法也可应用到围棋中。

javascript黑白棋人机博弈

  • 2015年08月07日 17:24
  • 8KB
  • 下载

PC游戏编程--人机博弈

  • 2008年04月02日 19:45
  • 3MB
  • 下载

人机博弈-吃子棋游戏(四)搜索算法

人机博弈,吃子棋搜索算法简介

PCgame人机博弈学习资料pdf格式

  • 2011年12月24日 12:00
  • 3.72MB
  • 下载

人机博弈 象棋与五子棋

  • 2016年11月09日 13:11
  • 10.66MB
  • 下载

人机博弈-吃子棋游戏(三)走法生成

人机博弈-吃子棋游戏(三)走法生成,介绍吃子棋的走法生成算法

PC游戏编程.人机博弈(王小春著)

  • 2012年12月10日 00:00
  • 8.44MB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:人机博弈之(五)---估值基础
举报原因:
原因补充:

(最多只允许输入30个字)