极大极小博弈树的简洁(附Tic-Tac-Toe源码)
摘要: 简介极大极小博弈树(Minimax Game Tree)用于编写电脑之间的游戏程序,这类程序由两个游戏者轮流,每次执行一个步骤。当然,所有可能的步骤构成了一个树的结构。例如下面的图就是一个MGT,它表示了Tic-Tac-Toe游戏的前两步所有可能的步骤。在每一层中的节点通常代表不同游戏者的选择,这两个游戏者通常被称作马克思(MAX)和米恩(Min)。例如如果第二层是Max turn,则第三层就是Min turn,第二层的每个节点就是Max的choice,它们之间是或的关系,第三层的每个节点就是Min的choice,它们之间是与的关系。根据这个树,Max要做出的选择就让下次Min做出的任意选择都
阅读全文
posted @
2011-01-26 21:46 chinese_submarine 阅读(527) |
评论 (2) 编辑
程序优化小记
摘要: 最近做给一块蓝牙芯片做了一个decode的功能,数据是用RLE(http://en.wikipedia.org/wiki/Run-length_encoding)流程算法压缩的。为什么选用RLE算法,因为蓝牙芯片自身memory的局限性,最大只能获得不到2K的内存,还是不连续,而解压出的数据有2K多,所以需要一种能够边解压边发送的算法,查看现在流行的几种算法:霍夫曼算法,RLE算法,查表算法。压缩率实现复杂度内存占用量霍夫曼算法小中中RLE算法中小小查表算法大大大(一般几十K)由于查表算法的内存占用量一般需要几十K,所以所以首先排除,而且比较霍夫曼算法和RLE算法,RLE算法在压缩率,实现复杂
阅读全文
posted @
2011-01-19 20:40 chinese_submarine 阅读(214) |
评论 (0) 编辑