博弈策略
在环境中有一个反对者,博弈和搜索问题,(例如夏其中)
例如:对手做了A我们做B,等等。(确定)在基于加入对方走了啥,的搜索问题。
博弈是人工智能一个大的对象,例如国际象棋(35步,每个棋手100个位置)35的100此方=10的154此房的节点。实际中考虑后续三步
实例:1.西洋跳棋(1994),建立大的数据库(定义了所有的完美的走法。)
2.1949(香农)编写一个下国际象棋的程序,设想利用AI国际象棋,1997年实现“深 蓝(IBM)”主要利强大的搜索技术。2006年新一代人工智能打败深蓝。
3.2016年AlphaGo实现中国围棋利用深度决策树等人工智能。
4.黑白棋:老子独孤求败。
主要分类
概率:之前确定,之前不确定
环境可观察:环境完全可观察,环境不可可观察,(象棋,扑克)
嵌套思考:主要对于对手走了啥,你会走啥。
定义开始的时候,定义每一个玩家的步骤,在S状态下,各种可能的状态的转移,各种走子的结合。转移模型,在当前S集合以及动作状态下的新的状态,终止测试:在游戏是不是游效用函数:在终止的状态,玩家的状态,玩家的特点,观察是否为终止的状态。观察时候是否为终止。对于井字棋,定义胜利状态。
井字棋的搜索:
此次出的情况为只有一个玩家的情况下的情况。
极小,极大搜索策略:
此处假设自己赢了,以及对方赢了的情况下,取值为正负无穷大。
主要考虑对方考虑为高手的情况下找出对自己最有利的方法。
s为当前我的走法,那么对方高手对方对我产生的分别为-6,-3,-4
在博弈树中寻找相关的算法。
首先计算状态的效用值,计算两个玩家的最优的状态。效用值。
在max的节点选择最大的节点。然后 分别向上传播。
计相关的函数结果:
算法为深度优先算法,在深度优先的算法中的情况。上面为算法伪代码。
对于井字棋,主要走九次,大约走五步。
产生的节点数目为: