我们使用蒙特卡罗算法来评估一个着法有多好(差)。蒙特卡罗算法评估某一着法有多好(差)的方法是由两个随机AI(选择的着法完全随机)对一个给定的盘面下若干盘“虚拟棋”。从一个给定的盘面开始,然后对每一可行着法计算指定数量的后续着法完全随机的“虚拟棋”。之后,我们统计所有可行走法的平均值,以反映出“好”的着法。最后是选择有着最高的平均值的着法,蒙特卡罗AI在真正的棋局中应用这一着法。阅读全文>
发表于 @ 2008年05月04日 22:41:00|评论(loading...)|收藏
这篇文章主要介绍了从不同类型的HTML文件中抽取出真正有用的正文内容的一种有广泛适应性的方法。其功能类似于CSDN近期推出的“剪影”,能够去除页眉、页脚和侧边栏的无关内容,非常实用。其方法简单有效而又出乎意料,看完后难免大呼原来还可以这样!行文简明易懂,虽然应用了人工神经网络这样的算法,但因为FANN良好的封装性,并不要求读者需要懂得ANN。全文示例以Python代码写成,可读性更佳,具有科普气息,值得一读。阅读全文>
发表于 @ 2007年08月13日 19:09:00|评论(loading...)|收藏
这是一个PPT转成PDF格式的文件,是一年前我在公司跟大家介绍人机对弈编程方面的技术的时候编写的。里面介绍了人机对弈编程的几个方面。阅读全文>
发表于 @ 2007年01月20日 10:31:00|评论(loading...)|收藏
终于等够了三个月,杂志的约定已经到期,可以把这篇文章发表到网络跟大家分享。本文原发表于《游戏创造》杂志www.chinagcn.com,如蒙转载,请保留原文和本声明完整,并注明转载自恋花蝶的博客:http://blog.csdn.net/lanphaday阅读全文>
发表于 @ 2006年12月26日 09:24:00|评论(loading...)|收藏
人机博弈是一门比较专的学科,我们因为英文劣势,大部分中国高手都不能快速的在比赛中学习和实现一些复杂的算法,以致成绩不太如意;我挟之前对这方面的了解,做得还算行,所以把代码公开出来,可以多一点中文方面的资料和源码给大家参考,我也感到非常荣幸。这份代码的计算能力:以6*6的棋盘为例,这份代码在VC6的release模式下编译运行可以在1秒内搜索并评估83万个叶子节点,计算层次在8-9层;如果用MiniMax算法不进行剪枝,只能搜索到3-4层(测试机器皆为超线程P4 3.0G+1G内存)。这就是算法的力量吧。阅读全文>
发表于 @ 2006年10月19日 19:14:00|评论(loading...)|收藏
最近因为一个任务要用到A*算法,就用C++实现了一份。不过只是用A*来检测从A点到B点有无通路,不必输出路径,后来想把代码贴出来,但又觉得不如实现一个简单的寻路应用好一些,就用python写了一个版本贴上来。阅读全文>
发表于 @ 2006年10月11日 11:50:00|评论(loading...)|收藏
与《多任务下的数据结构与算法》的作者探讨栈的弹出函数的设计方案。欢迎大家说说自己的想法。阅读全文>
发表于 @ 2006年07月11日 15:20:00|评论(loading...)|收藏