- 1、本文档共25页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第八章 分支与限界
8.1 分支与限界法的基本思想
一、基本思想:
1、在结点估算沿着它的各儿子结点搜索时,目标函数可能取得的“界”,
2、把儿子结点和目标函数可能取得的“界”,保存在优先队列或堆中,
3、从队列或堆中选取“界”最大或最小的结点向下搜索,直到叶子结点,
4、若叶子结点的目标函数的值,是结点表中的最大值或最小值,则沿叶子结点到根结点的路径所确定的解,就是问题的最优解,由该叶子结点所确定的目标函数的值,就是解这个问题所得到的最大值或最小值
二、目标函数“界”的特性:
是部分解,是相应的界
1、对最小值问题,称为下界,意思是向下搜索所可能取得的值最小不会小于这些下界。
若是所得到的部分解,满足:
(8.1.1)
2、对最大值问题,称为上界,意思是向下搜索所可能取得的值最大不会大于这些上界。
若是所得到的部分解,满足:
三、两种分支方法:
设解向量, 的取值范围为有穷集,,。
1、每棵子树都有个分支:
最坏情况下,结点表的空间为,
若状态空间树是完全叉树, ,结点表的空间为。
2、每棵子树只有两个分支,取特定值的分支、及不取特定值的分支:
状态空间树是完全二叉树,最坏情况下结点表的空间为
8.2 货郎担问题
有向赋权图,顶点集。
为图的邻接矩阵,表示顶点到顶点的关联边的长度,又把称为费用矩阵。
8.2.1 费用矩阵的特性及归约
:图的最短哈密尔顿回路,
:回路的费用。因为中的元素表示顶点到顶点的关联边的费用,
一、哈密尔顿回路与费用矩阵的关系:
引理8.1 令是一个有向赋权图,是图的一条哈密尔顿回路,是图的费用矩阵,则回路上的边对应于费用矩阵中每行每列各一个元素。
证明 图有个顶点,
费用矩阵第行元素:顶点到其它顶点的出边费用;
费用矩阵第列元素:其它顶点到顶点的入边费用。
是图的一条哈密尔顿回路,
是回路中的任意一个顶点,,
在回路中只有一条出边,对应于费用矩阵中第行的一个元素;
在回路中只出现一次,费用矩阵的第行有且只有一个元素与其对应。
在回路中只有一条入边,费用矩阵中第列也有且只有一个元素与其对应。
回路中有个不同顶点,费用矩阵的每行每列都有且只有一个元素与回路中的顶点的出边与入边一一对应。
例:,图8.1(a)中5城市的货郎担问题的费用矩阵,
令是哈密尔顿回路,回路上的边对应于费用矩阵中的元素。
图8.1 5城市货郎担问题的费用矩阵及其归约
二、费用矩阵的归约
1、行归约和列归约
定义8.1 费用矩阵的第行(或第列)中的每个元素减去一个正常数(或),得到一个新的费用矩阵,使得中第行(或第列)中的最小元素为0,称为费用矩阵的行归约(或列归约)。称为行归约常数,称为列归约常数。
例:把图8.1(a)中归约常数,,,,。
列归约常数,所得结果如图8.1(c)所示。
2、归约矩阵
定义8.2 对费用矩阵的每一行和每一列都进行行归约和列归约,得到一个新的费用矩阵,使得中每一行和每一列至少都有一个元素为0,称为费用矩阵的归约。矩阵称为费用矩阵的归约矩阵。称常数
(8.2.1)
为矩阵的归约常数。
例:对图8.1(a)中的费用矩阵进行归约,得到图8.1(c)所示归约矩阵。
归约常数为
3、归约矩阵与哈密尔顿回路的关系
定理8.1 有向赋权图,的哈密尔顿回路,的费用矩阵,是以计算的回路费用。是的归约矩阵,归约常数为,是以计算的回路费用,有:
(8.2.2)
证明 和分别是和的第行第列元素,
,
是以计算的哈密尔顿回路的费用,令
是计算的同一条哈密尔顿回路的费用,令
由引理8.1,回路上的边对应于中每行每列各一个元素。有
定理证毕。
定理8.2 有向赋权图,是的最短哈密尔顿回路,是的费用矩阵,是的归约矩阵,令是图的邻接矩阵,则也是的最短的哈密尔顿回路。
证明 用反证法证明。
若不是图的最短的哈密尔顿回路,
则中必存在另一条回路,是中最短的哈密尔顿回路,
同时,它也是中的一条回路。
和分别是以计算的和的费用,有:
其中,是正整数。
是的一条回路,令和是分别以计算的回路和的费用。
由定理8.1,有
其中,是费用矩阵的归约常数。因此
是中比更短的哈密尔顿回路,与定理的前提相矛盾。
所以,也是的最短的哈密尔顿回路。
8.2.2 界限的确定和分支的选择
先求图费用矩阵的归约矩阵,得到归约常数
再转换为求取与相对应的图的最短哈密尔顿回路问题。
和分别是和的最短哈密尔顿回路的费用,
有。
的最短哈密尔顿回路的费用,最少不会少于。
是货郎担问题状态空间树中根结点的下界。
例:图8.1(a)中归约常数48便是该问题的下界。该问题的最小费用不会少于48。
8.2.2.1 界限的确定
1、搜索策略
选取沿某一边出发的路径,作为分支结点;
不沿该边出发的其它所有路径集合,
文档评论(0)