最大团问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

小结

• 最大团问题的定义
与点独立集的关系
• 分支限界算法的设计
树的结构:子集树
分支约束条件
代价函数与界的设定
• 最坏情况的时间复杂度:O(n2nn2^n)

货郎问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题
【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

实例运行

深度优先遍历搜索树
• 第一个界: <1,2,3,4>,长度为 29
• 第二个界: <1,2,4,3>,长度为 23
• 结点 <1,3,2>: 代价函数值 26>23,
不再搜索, 返回<1,3>,右子树向下
• 结点<1,3,4>,代价函数值
9+7+2+2=20, 继续,得到可行解
<1,3,4,2>,长度 23.
• 回溯到结点<1>,沿<1,4>向下…
最优解<1,2,4,3>或<1,3,4,2>,长度23

算法分析

• 搜索树的树叶个数:O((n−1)!),
每片树叶对应 1 条路径,每条路
径有 n 个结点.
• 每个结点代价函数计算时间O(1),
每条路径的计算时间为 O(n)
• 最坏情况下算法的时间 O(n!)

小结

• 货郎问题的分支限界算法:
约束条件:只能选没有走过的结点
代价函数:走过长度+后续长度的下界
• 时间复杂度: O(n!)

园排列问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

时间复杂度

• 搜索树树叶数为 O(n!)
• 每条路径代价函数的计算为 O(n)
• 最坏情况下算法时间复杂度为
O(n n!) = O((n+1)!)

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

小结

• 园排列问题的定义
• 如何设计代价函数?
已有的排列长度+后续的圆排列长度的下界
• 时间复杂度估计:O((n+1)!)

连续邮资问题

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题
【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题
【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题
【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

回溯算法小结

(1) 适于求解组合搜索问题及优化问题
(2) 求解条件:满足多米诺性质
(3) 解的表示:解向量,求解是不断扩
充解向量的过程
(4) 回溯条件:
搜索问题——约束条件
优化问题——约束条件 + 代价函数
(5) 分支策略:深度优先、宽度优先、
宽深结合、函数优先
(6) 结点状态:白结点,黑结点,灰结点
(7) 算法时间复杂度:
W(n) = ( p(n) f(n) )
其中 p(n) 为每个结点的工作量
f(n)为结点个数
最坏情况下时间通常为指数级
平均情况下比蛮力算法好
空间代价小

【人工智能学习笔记】 2.4算法设计与分析 -19.回溯算法的应用及小结:最大团问题,货郎问题,园排列问题,连续邮资问题

相关文章:

  • 2022-01-08
  • 2021-08-06
  • 2021-08-08
  • 2021-05-11
  • 2022-12-23
  • 2021-05-16
  • 2022-12-23
  • 2021-11-01
猜你喜欢
  • 2022-02-10
  • 2022-02-16
  • 2022-12-23
  • 2021-12-23
  • 2021-05-05
  • 2022-12-23
  • 2021-12-21
相关资源
相似解决方案