本文介绍: 1.针对所给问题定义问题的状态空间图2.广度优先搜索,并用剪枝策略避免无效搜索 ——扩展结点一次生成她的所有孩子结点。——需要判断孩子结点是舍弃还是保留,舍弃不可行、不能能最优孩子 结点,其余的结点进入队列中。这样可以避免不必要的搜索。——剪枝策略包括约束函数和限界函数

状态空间

“图”——状态空间

用向量表示解,“图”由解向量扩张得到的解空间树。 ——三种图:n叉树、子集树、排序

photo
剪枝 不满住条件的进行裁剪

优化 剪枝回溯:DFS+剪枝分支限界:BFS+剪枝

实例

photo
一层代表第几件物品装不装,来进行剪纸

photo

​ ——剪枝策略包括约束函数和限界函数

​ ——对背包问题,左孩子结点扩张需要检查约束函数,右孩子扩张需要检 查限界函数

分支限界

步骤总结

——需要判断孩子结点是舍弃还是保留,舍弃不可行、不能能最优的孩子 结点,其余的结点进入队列中。这样可以避免不必要的搜索。 ——剪枝策略包括约束函数和限界函数

photo

回溯分支限界

主要步骤递归迭代实现

photo
photo

➢ 界函数

➢ 代价函数

  • 数值以该结点为根的搜索树中的所有可行解的目标数值的上界
  • 父结点的代价不小于子结点的代价

➢ 搜索中停止分支的依据

  • 不满足约束条件或者其代价函数小于当时的界

photo
photo

  • 已有价值==已有界
  • 代价函数 === 可能的最大的已有价值 代价函数 得变

典型例子

photo

  • 装载问题
    photophotophoto * 实例
    photo在这里插入图片描述
  • 图的m着色问题
  • 背包问题
  • 最大团问题
  • 货郎问题(TSP)
  • 排列问题
  • 连续邮资问题

明天更新这些问题的解法思路

photo

原文地址:https://blog.csdn.net/qq_60815011/article/details/134795994

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_42298.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注