这本书就一破书,看了一半看不下去了,还好刚开始从后面神经网络开始看起,写的代码不严谨不说,书的排版还有一些问题,这个不知道是不是翻译版搞的问题.
整个书本来也就是为初学者大概了解一下游戏编程中的AI有哪些,感觉还不如看一个综述类型的博客来得实用,还罗列好几百页的一本书,有点言过其实了.
里面很多内容虽然从图片整理上看是有条理的,但内容真心看不下去,现在没有去看英文原版,但中文版本确实让人无法直视了,简单的东西拿大堆拐来拐去的大段文字来说,而且估计翻译的原故认真去看犹如嚼蜡,真心不建议看.该本书的优点呢是有的,引出了几个游戏编程中的AI业内站点,以及像<Practial Neural Network Reciples in C++>这些书倒是值得看的.只是不知道为什么有人要翻译这本书呢?业内角度看是一烂书,业外角度感觉不讲太多了吧.
里面有一个说法是,AI开发人员本质上就是在解决路径寻找问题.
另外,这里还有一些算法描述上面的错误,比如翻译版本的P129页讲A*伪代码的描述上,对于节点不在open list中就直接排除掉的描述是不对的.我特意找来英文原版以及翻译版本,懂A*算法可以评评理.
Example 7-1. Example 7-1. A* pseudo code
add the starting node to the open list
while the open list is not empty
{
current node=node from open list with the lowest cost
if current node = goal node then
path complete
else
move current node to the closed list
examine each node adjacent to the current node
for each adjacent node
if it isn't on the open list
and isn't on the closed list
and it isn't an obstacle then
move it to open list and calculate cost
}
例7-1: A*伪代码
把起始节点加进open list
while open list不为空
{
当前节点= open list中成本最低的节点
if当前节点 = 目标节点then
路径完成
else
把当前节点移入closed list
检视当前节点的每个相邻节点
for每个相邻节点
if该节点不在open list中
and该节点不在closed list中
and该节点不是障碍物then
将该节点移进open list并计算其成本
}