求教Alpha-Beta搜索
  • 板块学术版
  • 楼主xkcdjerry
  • 当前回复0
  • 已保存回复0
  • 发布时间2021/3/13 18:42
  • 上次更新2023/11/5 02:06:55
查看原帖
求教Alpha-Beta搜索
298051
xkcdjerry楼主2021/3/13 18:42

我在学Alpha-Beta的搜索的时候,网上给出的示例代码是这样的:

int AlphaBeta(int depth, int alpha, int beta) {
 if (depth == 0) {
  return Evaluate();
 }
 GenerateLegalMoves();
 while (MovesLeft()) {
  MakeNextMove();
  val = -AlphaBeta(depth - 1, -beta, -alpha);
  UnmakeMove();
  if (val >= beta) {
   return beta;
  }
  if (val > alpha) {
   alpha = val;
  }
 }
 return alpha;
}

这里不太清楚为什么

if (val >= beta) {
   return beta;
  }

这里可以有效而且不遗漏的剪枝,Bfs之后越看越懵逼,请问有没有dalao能简单说一下QAQ
(验证码:fw35

2021/3/13 18:42
加载中...