需要帮助调试alpha-beta修剪以连接四个minimax代码

时间:2015-12-22 16:46:01

标签: debugging artificial-intelligence minimax alpha-beta-pruning

我正在使用minimax算法为连接四编写AI。为了增加深度,我正在使用alpha-beta修剪。但是,我的代码得到的结果不正确。我无法找到我出错的地方。

{{1}}

1 个答案:

答案 0 :(得分:0)

我对alpha-beta的理解是,需要检查两个玩家的alpha和beta,并且返回值需要受到alpha和beta的限制。即:

if (this.myId == id && myscore >= beta){
  alpha = beta;
  break;
}
else if (myScore > alpha && this.myId == id){
  alpha = myScore;
  maxCol = i;
}
else ...

...

if(this.opponentId == id && myScore <= alpha){
  beta = alpha;
  break;
}
else if(this.opponentId == id && myScore < beta){
  beta = myScore;
  minCol = i;
}
else ...