网站大量收购闲置独家精品文档,联系QQ:2885784924

第9章 分支限界法(last).ppt

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第9章 分支限界法(last)

9.3 组合问题中的分支限界法 9.3.1 任务分配问题 9.3.2 批处理作业调度问题 9.3.1 任务分配问题 任务分配问题要求把n项任务分配给n个人,每个人完成每项任务的成本不同,要求分配总成本最小的最优分配方案。如图9.10所示是一个任务分配的成本矩阵。 C= 9 2 7 8 6 4 3 7 5 8 1 8 7 6 9 4 任务1 任务2 任务3 任务4 人员a 人员b 人员c 人员d 图9.10 任务分配问题的成本矩阵 求最优分配成本的上界和下界 考虑任意一个可行解,例如矩阵中的对角线是一个合法的选择,表示将任务1分配给人员a、任务2分配给人员b、任务3分配给人员c、任务4分配给人员d,其成本是9+4+1+4=18;或者应用贪心法求得一个近似解:将任务2分配给人员a、任务3分配给人员b、任务1分配给人员c、任务4分配给人员d,其成本是2+3+5+4=14。显然,14是一个更好的上界。为了获得下界,考虑人员a执行所有任务的最小代价是2,人员b执行所有任务的最小代价是3,人员c执行所有任务的最小代价是1,人员d执行所有任务的最小代价是4。因此,将每一行的最小元素加起来就得到解的下界,其成本是2+3+1+4=10。需要强调的是,这个解并不是一个合法的选择(3和1来自于矩阵的同一列),它仅仅给出了一个参考下界,这样,最优值一定是[10, 14]之间的某个值。 设当前已对人员1~i分配了任务,并且获得了成本v,则限界函数可以定义为: (式9.4) (2)在结点2,将任务1分配给人员a,获得的成本为9,目标函数值为9 + (3+1+4)=17,超出目标函数的界[10, 14],将结点2丢弃;在结点3,将任务2分配给人员a,获得的成本为2,目标函数值为2 + (3+1+4)=10,将结点3加入待处理结点表PT中;在结点4,将任务3分配给人员a,获得的成本为7,目标函数值为7 + (3+1+4)=15,超出目标函数的界[10, 14],将结点4丢弃;在结点5,将任务4分配给人员a,获得的成本为8,目标函数值为8 + (3+1+4)=16,超出目标函数的界[10, 14],将结点5丢弃; 应用分支限界法求解图9.10所示任务分配问题,对解空间树的搜索如图9.11所示,具体的搜索过程如下: (1)在根结点1,没有分配任务,根据限界函数估算目标函数值为2+3+1+4=10; (3)在表PT中选取目标函数值极小的结点3优先进行搜索; (4)在结点6,将任务1分配给人员b,获得的成本为2+6=8,目标函数值为8+(1+4)=13,将结点6加入表PT中;在结点7,将任务3分配给人员b,获得的成本为2+3=5,目标函数值为5+(1+4)=10,将结点7加入表PT中;在结点8。将任务4分配给人员b,获得的成本为2+7=9,目标函数值为9+(1+4)=14,将结点8加入表PT中; (5)在表PT中选取目标函数值极小的结点7优先进行搜索; (6)在结点9,将任务1分配给人员c,获得的成本为5+5=10,目标函数值为10+4=14,将结点9加入表PT中;在结点10,将任务4分配给人员c,获得的成本为5+8=13,目标函数值为13+4=17,超出目标函数的界[10, 14],将结点10丢弃; (7)在表PT中选取目标函数值极小的结点6优先进行搜索; (8)在结点11,将任务3分配给人员c,获得的成本为8+1=9,目标函数值为9+4=13,将结点11加入表PT中;在结点12,将任务4分配给人员c,获得的成本为8+8=16,目标函数值为16+4=20,超出目标函数的界[10, 14],将结点12丢弃; (9)在表PT中选取目标函数值极小的结点11优先进行搜索; (10)在结点13,将任务4分配给人员d,获得的成本为9+4=13,目标函数值为13,由于结点13是叶子结点,同时结点13的目标函数值是表PT中的极小值,所以,结点13对应的解即是问题的最优解,搜索结束。 图9.11 分支限界法求解任务分配问题示例 (×表示该结点被丢弃,结点上方的数组表示搜索顺序) 4→a lb=16 10 4 × start lb=10 1→a lb=17 2→a lb=10 3→a lb=15 1→b lb=13 3→b lb=10 4→b lb=14 1→c lb=14 4→c lb=17 4→c l

文档评论(0)

wyjy + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档