Minimax算法

极小化极大算法

维基百科,自由的百科全书
 
 

Minimax算法又名极小化极大算法,是一种找出失败的最大可能性中的最小值的算法。

概述

Minimax算法常用于棋类等由两方较量的游戏和程序。该算法是一个零总和算法,即一方要在可选的选项中选择将其优势最大化的选择,另一方则选择令对手优势最小化的方法。而开始的时候总和为0。很多棋类游戏可以采取此算法,例如井字棋(tic-tac-toe)。

伪代码

function minimax(node, depth)
    if node is a terminal node or depth = 0
        return the heuristic value of node
    if the adversary is to play at node
        let α := +∞
        foreach child of node
            α := min, minimax(child, depth-1))
    else {we are to play at node}
        let α := -∞
        foreach child of node
            α := max, minimax(child, depth-1))
    return α


马尔可夫决策过程(Markov Decision Process, MDP)也具有马尔可夫性 MDP


Actor Critic的命名我们也可以更好的理解Policy Gradient。Actor就是policy network,用来输出动作,而Critic对应value network,就是评价动作用的,通过Critic来引导Actor的更新。

posted on 2017-09-18 15:15  WegZumHimmel  阅读(737)  评论(0编辑  收藏  举报

导航