*/ --------------------------------------------------------------------------------------
*/ 出自: 编程中国 http://www.bccn.net
*/ 作者: jig
*/ 时间: 2007-7-12编程论坛首发
*/ 声明: 尊重作者劳动,转载请保留本段文字
*/ --------------------------------------------------------------------------------------
人工智能 - 五子棋人机对战
作者:孙靖(Jig) 出至:www.ds0101.com0101 部落 时间:2007 - 7 - 7
若要转贴或使用本文章介绍的技术,请在你发布的文章或作品中注明出处。
这些时间太忙了,有忙正事但也瞎忙了很多事。很久了想写点文章,感觉自己有很多要
写的东西,可实际动手写起来大多数想法又没做好充分的准备。加之记得以前论坛上有朋
友说希望看看五子棋的人机对战设计思路,所以想想就写篇五子棋人机对战算法的文章吧。
把文章名命为“人工智能”范畴似乎有点大,那我就借这个大题长长自己的脸,呵呵,怪
不好意思的。但具有攻防能力的人机对战的五子棋模型也算的上是初级的人工智能算法。
“人工智能”即指让机器具有类似人类一样的主观能动性根据当前情况做出相应的判断,
而他的核心便是具体的数学算法。然而这个算法其实就是依托在一个人造的数学模型上。
具体简单的说,就像本文介绍的五子棋,我们根据五子棋的具体规则建立适当的数学模型,
只要机器按照此模型进行逻辑判断就可以得出一定的结果,而这个结果在我们人类看来就
是机器在下棋的过程中攻守兼备,仿佛具有人类的智慧。说到这里,我们就这话题再探讨
一点。“人工智能”的终极目标就是使机器具备人类的情感,而这个目标有可能实现吗?鄙
人的看法是绝对可以的,只是时间的问题。计算机科学从来不是一门独立的学科,他是人
类文明的一个结晶。众学科的综合造就了他,而他也必将超越我们人类。从生物学角度来
看,我们人脑就是有机化合体组成的神经网络;从化学角度来看,我们人脑的化学反应产
生的神经脉冲为我们的逻辑运算提供动力;而从数学角度上看,我们人脑神经所以组成的
网络正是一个复杂包罗万像的数学模型。正是在这样一个宇宙的式的数学模型上的逻辑推
理,使人类具备了情感。然而我们人类目前对自身大脑的工作原理认识还处在超低级的阶
段,有朝一日人类能更深入的了解我们自身那根据这些知识再将其运用在计算机学科,机
器也一定能实现真正的“人工智能”。
有了上面的介绍,我想大家一定对本文所讨论的深度有了了解。没错,我们接下来讨论
的的确是最初级的智能算法。那么大家在阅读的过程中应该注意的不是这个算法的具体实
现,而是根据五子棋规则建立数学模型的这个过程。即从现实抽象到数学模型的能力,而
这个也是编程能力的本质。
规则:分黑白两方,轮流下棋。率先将 5 子连线的一方获胜。
目标:使机器在下棋的过程中攻守兼备,就像和一个真正的人类下棋一样
分析:为了方便说明我们以 5X5 这个最简单的棋盘来加以说明。
- 1
- 2
- 3
- 4
- 5
- 6
前往页