收藏 分享(赏)

分支限界算法报告.doc

上传人:精品资料 文档编号:10661712 上传时间:2019-12-16 格式:DOC 页数:5 大小:171.75KB
下载 相关 举报
分支限界算法报告.doc_第1页
第1页 / 共5页
分支限界算法报告.doc_第2页
第2页 / 共5页
分支限界算法报告.doc_第3页
第3页 / 共5页
分支限界算法报告.doc_第4页
第4页 / 共5页
分支限界算法报告.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、实验五 分支限界算法的应用一、实验目的1掌握分支限界算法的基本思想、技巧和效率分析方法。2熟练掌握用分支限界算法的基本步骤和算法框架,FIFO 搜索,LIFO 搜索,优先队列式搜索的思想。3学会利用分支限界算法解决实际问题。二、算法问题描述批处理作业调度问题:n 个作业1, 2, , n要在两台机器上处理,每个作业必须先由机器 1 处理,然后再由机器 2 处理,机器 1 处理作业 i 所需时间为ai,机器 2 处理作业 i 所需时间为 bi(1in),批处理作业调度问题( batch-job scheduling problem)要求确定这 n 个作业的最优处理顺序,使得从第 1 个作业在机器

2、 1 上处理开始,到最后一个作业在机器 2 上处理结束所需时间最少。注意:由于要从 n 个作业的所有排列中找出具有最早完成时间的作业调度,所以,批处理作业调度问题的解空间是一棵排列树,并且要搜索整个解空间树才能确定最优解,因此,其时间性能是 O(n!)。在搜索过程中利用已得到的最短完成时间进行剪枝,才能够提高搜索速度。三、算法设计批处理作业调度问题要从 n 个作业的所有排列中找出具有最小完成时间和的作业调度,所以如图,批处理作业调度问题的解空间是一颗排列树。 在作业调度问相应的排列空间树中,每一个节点 E 都对应于一个已安排的作业集 。以该节点为根的子树中所含叶节点的完成时间和可表示为:设|M

3、|=r,且 L 是以节点 E 为根的子树中的叶节点,相应的作业调度为pk,k=1,2,n,其中 pk 是第 k 个安排的作业。如果从节点 E 到叶节点 L 的路上,每一个作业 pk 在机器 1 上完成处理后都能立即在机器 2 上开始处理,即从 pr+1 开始,机器 1 没有空闲时间,则对于该叶节点 L 有:注:(n-k+1)t1pk,因为是完成时间和,所以,后续的(n-k+1)个作业完成时间和都得算上 t1pk。如果不能做到上面这一点,则 s1 只会增加,从而有: 。类似地,如果从节点 E 开始到节点 L 的路上,从作业 pr+1 开始,机器 2 没有空闲时间,则:同理可知,s2 是 的下界。

4、由此得到在节点 E 处相应子树中叶节点完成时间和的下界是:注意到如果选择 Pk,使 t1pk 在 k=r+1 时依非减序排列,S1 则取得极小值。同理如果选择 Pk 使 t2pk 依非减序排列,则 S2 取得极小值。 这可以作为优先队列式分支限界法中的限界函数。 四、运行结果五、程序#include#include#define N 4/作业数目设定为 4 机器 2 个#define MAX 1000int xN+1=0,1,2,3;int m4N+1=0,0,0,0,0,2,3,2,0,1,1,3,0,2,2,1;int bestxN+1;/用于保存结果调度顺序int f2N+1;/第 i

5、阶段机器 2 完成处理的时间int f1=0;/机器 1 完成处理时间int f=0;/当前完成时间和int bestf=MAX;void swap(int a=b;b=temp;void Backtrace(int t)if(tN)bestf=f;for(int i=1;if1?f2t-1:f1)+m2xi;f+=f2t;swap(xt,xi);if(fbestf)Backtrace(t+1);swap(xt,xi);f1-=m1xi;f-=f2t;int main()memset(bestx,0,(N+1)*sizeof(int);memset(f2,0,(N+1)*sizeof(int);Backtrace(1);printf(“该作业调度的最优完成时间和为:%dn 调度顺序为: nn“,bestf);for(int i=1;i=N;i+)printf(“%dn“,bestxi);return 0;六、总结每个人对分支限定法的算法都存在着一定的理解,这也就是很多同学的算法实现不同的原因.可能是自己理解的不够透彻,我总觉得自己的实验做的非常的不完善。发现自己还存在着很大差距.希望通过更多的实验,让自己有更大的提高.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报