当前位置:首页 » 编程博文
开发技术指南» 文章正文
    引言: 摘要:本文简单的介绍了计算机博弈算法。
 

 

 ·继承学习    »显示摘要«
    摘要:what 什么是继承?why 为什么要用继承?(继承有什么用?继承有什么优点?)how 怎么使用继承?when,where 什么时候,什么地方使用继承?if not 如果不使用继承,能否实现同样的设计,如果可以两个方案的区别又在什么地方what?继承是一个动词,相对与接口这一名词,理解上应该有所区别继承一种定义作为派生类基础的类的能力。派生类继承并可扩展基类的属性、方法和事件。派生类还可以用新的实......
    摘要:转:[ 分享] 我收集的ebook。自己肯定是看不完的,收集是为了给用的到的朋友。 http://www.itpub.net/259894.html ......


棋类游戏的智能模块设计――浅谈人工智能
上一页   ... 如果我们将这棵树不停的扩展下去,直到棋局分出输赢,那么我们就建立了一棵完整的博弈树,称为最大最小树,树中包含了下棋过程中所有可能出现的棋局,而且树的叶子节点都是可以分胜负的棋局.这真是一个好办法,只要建立这棵完整的博弈树就可以找到一条通往胜利的路,真是太好了.但是稍加分析就知道,这棵树根本建立不起来.比如象棋,可以把一个棋子来回的移动,这棵树就没有了尽头;对于黑白棋来说,虽然棋局结束是肯定的,但是这棵树上的节点也是天文数字,即使1秒钟能生成10^10个节点,这棵树的生成时间也是天文数字.因此建立完整博弈树是完全不实用的.

局面估值 【程序编程相关:FedoraCore2正式版使用问题解决

  【推荐阅读:[原创]用脚本控制Select的展开与折

在博弈程序中,我们也要把这个方法教给计算机.计算机只进行有限深度的搜索,到达某一深度时,将停止搜索,而改用对局面的静态估值,将这个估值作为节点的值.这样,计算机就可以考察若干步之后的局面,从而找到一个最佳的走法.当然,这个“最佳”是在对手与计算机同等聪明的情况下得出的. 【扩展信息:VC数字图像处理编程讲座之四

但是我们仍然会下棋,而且水平还不错,这是为什么呢?因为我们会估计,即对棋局进行评估.比如象棋的某个局面,我车马炮齐全,而你已经没有车了,那么这个局面显然对我有利.在黑白棋里,我的棋子比你多,那么就对我有利.(注:这个评估方法实际上很差,因为黑白棋存在吃子的问题,而且一步吃子可达到10个以上,所以当前局面对我有利,但下一个局面就不一定了,所以比较棋子个数的评估方法一般都是在最后一步使用,即所谓的终局)

很显然,对局面的估值无论怎样都不可能精确,否则就没有搜索的必要了.但估值必须要有大致精确的方向,只有这样才能让搜索引擎向着正确的方向搜索.不同程序的棋力差别也源自估值函数,在相同搜索深度的情况下,不同的搜索引擎决定了效率,而估值函数决定了棋力.

估值这部分与程序编写者自身的知识有很大的关系,很难想象一个对黑白棋不精通的人能写出棋力很强的程序.

 

综合应用

将搜索算法.走法生成与局面估值结合在一起就可以得到一个最简单的.可以实用的程序了.在这里用伪码的形式作个实例.

int minmax(局面 p, int depth)//depth是搜索深度

{

  int bestvalue, value;

  //一般来说,这里有一个判断棋局是否结束的函数,一旦棋局结束就不必继续搜索了,直接返回极值.但由于黑白棋不存在中途结束的情况,故省略.

  if(depth<=0)//叶子节点

  {

返回估值(p);//直接返回对局面的估值

}

  if(当前是计算机走棋)

  {

    bestvalue=-inf;//初始最佳值设为负无穷

  }

  else

  {

bestvalue=inf;// 初始最佳值设为正无穷

}

for(每一个合法的走法)//走法的生成与具体问题紧密相关,具体方法省略

{

  走一步棋;//局面p随之改变

  value=minmax(p, depth-1);//搜索子节点

  撤销刚才的一步;//恢复局面p

  if(当前是计算机走棋)

  {

    if(value>bestvalue)//取最大值

    {


...   下一页
 ·java中容易搞错的一些东东    »显示摘要«
    摘要:1)instanceof:实现了某接口的类的对象也是该接口的实例;某类的对象也是该类超类的实例。 2)native()修饰的方法没有方法体,用一个分号";"代替大括号。 3)main不是关键字。 4)system.exit(int value),也就是说,只要是int的,就能够使jvm退出system.exit(´a´);同样的是合法的。 5)&......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE