java minma_并行博弈树搜索算法-第2篇 博弈过程的抽象:MinMax方法

本文介绍了基于Java的Min-Max算法在博弈树搜索中的应用,阐述了算法原理,包括深度优先搜索、博弈值计算以及Nega-Max简化形式,旨在寻找博弈双方最优解。
摘要由CSDN通过智能技术生成

2.1Min-Max方法

假设在博弈过程中,对抗者1总是选择使得博弈值最小的移动,那么作为对手的对抗者2则总会选择是的博弈值最大的移动,对抗者1称为min,对抗者2称为max.由于博弈双方是交替移动的,所以博弈树的结点及其父结点分属于两个对抗者中的一个,他们的种类(type)分属max和min.博弈树上的每个结点对应于一个深度(depth),叶结点的深度为0.因此,在任意的结点node,对博弈双方均最优的博弈值为[3]:

0_13302219160577.gif

由此,很自然地得出Min-Max算法,用来求出满足一些条件的二人零和博弈问题的博弈值:

MiniMax(node)

1:if node.depth = 0 then

2:return Evaluate(node)

3:if node.type = max then

4:score ← -∞

5:else

6:score ← +∞

7:for i ← 1 to node.branch.length

8:new_node ← Traverse(node, node.branch[i])

9:value ← MiniMax(new_node)

10:if node.type = max then

11:if value > score then

12:score ← value

13:else

14:if value < score then

15:score ← value

16:return score 上述伪代码中,结点node各自的有种类(max或者m

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值