回溯搜索的浅析.docVIP

  • 3
  • 0
  • 约2.17千字
  • 约 4页
  • 2021-03-13 发布于广东
  • 举报
冋溯搜索的浅析 东莞市石龙第三屮学吴燕锋 搜索算法经常被初学者认为是万能算法,半对某些题在缺乏解决问题的有效 模型时,用搜索去解,确实可以得到一些分。搜索算法是人工智能屮的-?种基本 方法,利用计算机的高性能来有H的、有方法地穷举一?个问题的部分或所有的可 能情况,从血求出问题的解的一?种方法。但是搜索非常耗资源,这时可以考虑对 搜索算法进行一些优化。这里我就简单介绍由搜索引伸出来的回溯搜索。回溯是 搜索算法屮的一种控制策略。它的方法是,假设问题解的其屮--种可能情况向前 搜索,在搜索过程屮,一旦发现原來的选择是错误的,就退回一步重新选择,然 后继续向前搜索,如此反复进行,直到得到解或证明无解为止。 一、 递归冋溯算法框架 Procedure search(K:integer); Begin If到H的地then输出解 else for i:=l to算法种数do 讦满足条件then begin 保存结果 Search(k+1); 〃这里还有另外一种方法,search(k+1,参数表),信息 的更改通过相关参数进行传递,不需要保存与恢复。 恢复到保存结果之前的状态〃向前回溯一步 end; end; 回溯搜索过程中要注意的几个问题:1?用栈保存好前进屮的某些状态。2.制定 好约束条件 二、 应用实例 这里我们引用经典的n皇后问题来说明,问题描述如下: 在nXn的国际象棋棋盘上,放置n

文档评论(0)

1亿VIP精品文档

相关文档