标题: 【转贴】围棋与计算机
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


应该还是有可能搞定的,这要从围棋本身规则入手:抢地,这非常像文明等游戏里面的开荒。
一开始棋盘是空荡荡的,当第一子下去的时候,此时整个棋盘的主人是该子,下一个子就会把这个子的地盘分区1/2,接下来以此类推,假设每一步都不是相互争斗的话,那么就是无限的1/2分下去,这样围棋的基本套路就可以表现出来了。
接下来就要处理争斗问题了:子的生存需要有“气”,那么可以从其四周判断,如果四周都是同类,那么需要再把同类的四周进行穷举,看看同类四周是不是也有气或者同类,以此类推,如果最终找不到足够的两气,那么判定这片子处于死亡边缘。
既然能够判定何为不利状态了,那么就可以根据这个来设定规则了:凡是有可能让该子陷入孤立无援状态的下法,都会被判定为较差下法,反之,则为较好下法,在穷举了众多较好下法然后排除掉众多较差下法之后,基本就可以让电脑自动计算出怎么去下子了。


顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #8 dimeterio 的帖子

没错,以穷举的方式来对应变化,会和现在的杀软一样,需要不断更新,但如果以特定简化通用规则呢?如我楼上所说的“找气”,或许会是个好的解决方法。

我有空的时候会再研究一下的。


顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #11 颖颖 的帖子

哈哈,开句玩笑,你砸钱我来搞如何?不用多,几千万应该就能砸了李世石——硬件方面的要求应该没必要像深蓝那么大的投资,主要是智力方面的。即使是设计得再烂的围棋ia,用全球所有计算机的计算能力来和李pk,赢面还是比较大的。

靠钱就能搞定的问题,就不是什么难题了。
现在是连最起码的模拟围棋都没找到好方法呢。

[ 本帖最后由 黑传说 于 2010-6-2 14:16 编辑 ]
顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #13 dimeterio 的帖子

围棋ai不是根据对方的走法来下的,而是根据自己的设定来下,也就是;你下你的,我下我的,除非碰撞到了,否则不会对你的乱下有任何反应。

to 颖颖:
对不起,我极端化了你的观点。
顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #16 muzhi 的帖子

所以说不能沿用现在的思路继续搞下去啊。
也是我上面说可以根据围棋特定特点来搞这个的原因,有需要重新根据其特点来破解原来非常容易出现的指数级增长复杂度问题。
顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #20 颖颖 的帖子

gnu go,但棋力实在太臭,呵呵。

围棋和象棋AI方式应该不是一种类型的,当然,也可以是同样一种,但这样可能吃力不讨好而已,类似fantasydog所说的骑马车跑去月球一样。
围棋可能可以更低层实现(当然,需要硬件的配合),比如黑白空分别用1 -1 0来替代,棋盘就是19个19位数(把零的进阶算上,应该是18进制,恰好可以兼容2进制),那么只要知道最终的绝对值最大,该方就是取胜的一方。同时,可以利用目前比较成熟的CPU分布式计算底层控制模式来近乎模拟其所谓的AI。

[ 本帖最后由 黑传说 于 2010-6-2 23:11 编辑 ]
顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #24 muzhi 的帖子

9个二进制可以转化为18进制啊,不是兼容了么?这样可以利用三进制的优势,同时也可以不用担心和现在计算机的兼容问题。
以我楼上所说的占地,围棋最终结果是计算双方所占点的多少,而如果表现在我所说的这里,就是1和-1数量对比,而我这里恰好把其转为为18进制,那么就类似于对比两个数的绝对值大小了,而且这样每个数都还可以直接还原为棋盘上的棋局。
分布式计算/底层控制模式没接触过么?主要表现为对多核cpu的管理模式,原来只用于服务器的,现在普通pc也开始使用了啊。

你说的gametree效果楼上已经有些简单分析了。

[ 本帖最后由 黑传说 于 2010-6-2 23:13 编辑 ]
顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #28 muzhi 的帖子

在我所说的分布/并行,目的并非是为了增加计算资源,而是模拟围棋下子。
至于降低复杂度和下一步怎么走,你再看看7楼的描述,是不是还是和gametree一样?
顶部
性别:男-离线 黑传说
(黑传说——静而后能观)

Rank: 13Rank: 13Rank: 13Rank: 13
组别 羽林都尉
级别 卫将军
好贴 1
功绩 70
帖子 6482
编号 1394
注册 2003-10-12
家族 轩辕丐帮


回复 #30 muzhi 的帖子

呵呵,我也仅仅是根据我在其他领域的经验提的思路设想,并没有开始进入研究,现在仅仅是猜测。

还要再过一阵子吧,或许我能腾出大片空闲时间来的时候,会根据这个思路去折腾折腾看的。
顶部

正在浏览此帖的会员 - 共 1 人在线




当前时区 GMT+8, 现在时间是 2025-7-22 02:54
京ICP备2023018092号 轩辕春秋 2003-2023 www.xycq.org.cn

Powered by Discuz! 5.0.0 2001-2006 Comsenz Inc.
Processed in 0.011535 second(s), 9 queries , Gzip enabled

清除 Cookies - 联系我们 - 轩辕春秋 - Archiver - WAP