机械调度求解。一下贪心算法任务调度问题,那里有问题,有...

var searchResultHtml=$("#tabSearchResult").html();
var titleThis="";
$.get("converge-by-key",
{"item_id":$(this).attr("id"), "rnd":new Date().getTime()},
function(data){
$("#convergeResult").html(titleThis+data);},
$(".converge").removeClass("selected");
$(this).addClass("selected");
$("#navigation").treeview({
persist: "location",
collapsed: true,
unique: false
$(".navBg").click(function()
var arrow = $(this).find("span.arrow");
if(arrow.hasClass("up"))
arrow.removeClass("up");
arrow.addClass("down");
else if(arrow.hasClass("down"))
arrow.removeClass("down");
arrow.addClass("up");
$(this).parent().find(".menus").toggle();
var convergedHTML="none";
var url="'"+document.location+"'";
var isKOS="false";
var isConvergeFieldStr="false";
var index=url.indexOf("simple-search");
var filed=$("#tfield1").attr("value");
if(isKOS=="true" && isConvergeFieldStr=="true" && (index!=-1) && (convergedHTML=="" || convergedHTML.indexOf("无")!=-1))
var kosAreaHTML="";
$("#list_2").html("DDC Clustering"+kosAreaHTML);
var covergeURL=document.location+"&converge=true"+"&rnd="+new Date().getTime();
var divConvergeHeightOld=$("#list_2").height();
$.get(covergeURL,
function(data){
if(data.substring(0,2)=="ok")
data=data.substring(3);
$("#list_2").html(data+kosAreaHTML);
$("#list_2").html("无"+kosAreaHTML);
/*if(data.indexOf("无")!=-1)
$("#list_2").height(20);
$("#list_2").width("auto");
var divConvergeHeightNew=$("#list_2").height();
var heightDiff=200-divConvergeHeightO
if(divConvergeHeightNew>=200)
$("#tdConverge").height(200);
$("#LeftPane").height($("#LeftPane").height()+heightDiff);
$("#RightPane").height($("#LeftPane").height());
$("#MySplitter").height($("#LeftPane").height());
$(".vsplitbar").height($("#LeftPane").height());
document.getElementById("LeftPane").style.height=$("#LeftPane").height();
document.getElementById("RightPane").style.height=$("#LeftPane").height();
document.getElementById("MySplitter").style.height=$("#LeftPane").height();
alert(document.getElementById("MySplitter").style.height);
$(".converge").css("cursor","pointer");
$(".converge").css("color","#1F5B97");
$(".converge").mouseover(function(){
$(this).addClass("over");
}).mouseout(function(){
$(this).removeClass("over");})
$(".converge").click(function(){
//$("#tabNav").css("display","none");
$("#tabSearchResult").css("display","none");
$("#convergeResult").html("");
var searchResultHtml=$("#tabSearchResult").html();
var titleThis="";
$.get("converge-by-key",
{"item_id":$(this).attr("id"), "rnd":new Date().getTime()},
function(data){
$("#convergeResult").html(titleThis+data);},
$(".converge").removeClass("selected");
$(this).addClass("selected");
$("#navigation").treeview({
persist: "location",
collapsed: true,
unique: false
题名: 一种求解车间调度的混合算法
作者: 杨轻云
刊名: 自动化学报
卷号: 3, 期号:35, 页码:332中文摘要: 针对流水车间作业调度问题,提出了一种基于"alldiffer-ent"约束的混合进化算法(Hybridparticleandgeneticalgorithm,HPGA),将粒子群算法、遗传操作及模拟退火策略有效地结合在一起.为了提高算法的求解质量,引入了一种随机邻域搜索策略.最后将此算法在不同规模的实例上进行了测试,并与其他几种最近提出的具有代表性的算法进行了比较.结果表明,无论是在求解质量还是收敛速度方面都优于其他几种算法.
收录类别: EI
内容类型: 期刊论文
URI标识: []&&
Appears in Collections:
Recommended Citation:
杨轻云.一种求解车间调度的混合算法,自动化学报,):332
Google Scholar
CSDL cross search
Related Copyright Policies
Social Bookmarking
Items in IR are protected by copyright, with all rights reserved, unless otherwise indicated.&下载费用:9 元(CNY) &
&&&&&&&&&&&&改进遗传算法求解柔性作业车间调度问题_张国辉
其他文档热点推荐
改进遗传算法求解柔性作业车间调度问题_张国辉
还剩页未读,继续阅读
下载文档到电脑,查找使用更方便
9 元(CNY)
资源描述: 第 45 卷第 7 期 2009 年 7 月 机 械 工 程 学 报 JOURNAL OF MECHANICAL ENGINEERING Vo l . 4 5 N o .7 Jul. 2009 DOI: 10.3901/JME. ??L.?Ep? 1/4 ?T<?W??5* 张国辉 高 亮 李培根 张超勇 (华中科技大学数字制造装备与技术国家重点实验室 武汉 430074 ) K1 分析柔性作业车间调度问题的特点,提出一种求解该问题的改进遗传算法。在考虑各个机器负荷平衡,所有机器上的总负荷和最大完工时间等性能指标更加合理情况下,设计一种全局搜索、局部搜索和随机产生相结合的初始化方法,提高种群初始解的质量,加快遗传算法的收敛速度。结合问题特点设计合理的染色体编码方式、交叉算子和变异算子,防止遗传操作过程中非法解的产生,避免 染色体的修复,提高求解效率。 使用文献中相同的实例测试利用初始 化方法的改进遗传算法,并将计算结果与文献中其他遗传算法的测试结果进行比较,验证所提出的初始化方法的可行性和有效性。 1oM 遗传算法 柔性作业车间调度 初始化 ?ms?| TP301 Improved Genetic Algorithm for the Flexible Job-shop Scheduling Problem ZHANG Guohui GAO Liang LI Peigen ZHANG Chaoyong (State Key Lab of Digital Manufacturing Equipment and Technology, Huazhong University of Science & Technology, Wuhan 430074) Abstract The characteristic of the flexible job shop scheduling problem (FJSP) is analyzed, an improved genetic algorithm is proposed to solve the FJSP. To keep workload balance among the machines, improve the quality of the initial population and accelerate the speed of the algorithm’s convergence, a new initialization method is proposed, which combines with global search, local search and random generation. Considering the characteristic of the problem, rational chromosome encoding, crossover operator and mutation operator are designed to prevent the generation of illegal solutions, avoid chromosome repair and improve efficiency of the algorithm. The improved genetic algorithm is tested on instances taken from the literature and compared with their results. The computation results show that the improved genetic algorithm is feasible and effective. Key words Genetic algorithm Flexible job shop scheduling Initialization 0 前言*柔性作业车间调度问题 (Flexible job-shop scheduling problem, FJSP)是传统作业车间调度问题(Job-shop scheduling problem, JSP)的扩展。 在传统的作业车间调度问题中,每个工件的加工工序是预先确定的,并且每一道工序的加工机器和加工时间也是预先确定的。而在柔性作业车间调度问题中,每道工序的加工机器是不确定的。每个工件的每一道工序可以在多个可选择的加工机器上进行加工,并且选择不同的加工机器所需要的加工时间是不同* 国家高技术研究发展计划 (863 计划, , )和国家自然科学基金 ()资助项目。
收到初稿, 收到修改稿 的。这增加了调度的灵活性,比较符合生产的实际情况,是迫切需要解决的一类调度问题。 与传统的作业车间调度问题相比,柔性作业车间调度问题减少了机器约束,加大了机器的不确定性,扩大了可行解的搜索范围,是更加复杂的NP-Hard 问题。目前,求解 FJSP 的常用方法有模拟退火 (SA)、禁忌搜索 (TS)、粒子群算法 (PSO)和遗传算法 (GA)等[1-4]。其中遗传算法以其鲁棒性好、通用性强、计算性能优良,且具有隐含并行性和全局搜索能力等特点,用其求解 FJSP 的文献相对较多。杨晓梅等[5]和席卫东等[6]在遗传算法的染色体编码上进行了改进,张超勇等[3]在遗传算法的流程逻辑上进行了改进,以提高求解效率。柔性作业车间调度问题不仅要对工序进行排序,而且还面临对可选机器选择的问题,考虑因素较多,使调度问题更加 机 械 工 程 学 报 第 45 卷第 7 期 期 146复杂。本文针对 FJSP 特点,提出一种新的初始化方法,得到较好的初始解,使得利用遗传算法求解FJSP 时在求解速度和求解质量上都有明显提高。 1 柔性作业车间调度问题描述 柔性作业车间调度问题的描述如下: n 个工件1{, , }nJJ" 要在 m 台机器1{,, }mMM" 上加工。 每个工件包含一道或多道工序,工序顺序是预先已确定的, 每道工序可以在多台不同加工机器上进行加工,工序的加工时间随加工机器的不同而不同。调度目标是为每道工序选择最合适的机器、确定每台机器上各个工件工序的最佳加工顺序以及开工时间,使整个系统的某些性能指标达到最优。因此,柔性作业车间调度问题包含两个子问题:确定各工件的加工机器和确定各个机器上的加工先后顺序。 每道工序可以在任意一个可选择的加工机器上进行加工的调度称为完全柔性作业车间调度; 反之,每道工序只能在部分可选的加工机器上进行加工的调度称为部分柔性作业车间调度,如表 1 所示。 V 1 B??s 1/4 ?T<?W??5Lè 可选择的加工机器 工件 工序 M1M2M3M4M5O112 6 5 3 4 O12-- 8 -- 4 -- J1 O134 -- 3 6 2 O213 -- 6 -- 5 O224 6 5 -- -- J2 O23-- 7 11 5 8 注: J1表示工件 1, O12表示第 1 个工件的第 2 道工序,其余类似。 此外,在加工过程中还需要满足下面的约束 条件。 (1) 同一台机器上在同一时刻只能加工一个 工件。 (2) 同一工件的同一道工序在同一时刻只能 被一台机器加工。 (3) 每个工件的每道工序一旦开始加工不能 中断。 (4) 不同工件之间具有相同的优先级。 (5) 不同工件的工序之间没有先后约束,同一工件的工序之间有先后约束。 (6) 所有工件在零时刻都可以被加工。 本文中同时考虑三种性能指标:最大完工时间最小、最大负荷机器负荷最小和所有机器上的总负荷最小,这三种性能指标的目标函数分别如下。 (1) 最大完工时间 CMminCM=min(max(Ck)) 1≤ k≤ m (1) 式中,kC 是机器kM 的完工时间。 (2) 最大负荷机器负荷 WMminWM=min(max(Wk)) 1≤ k≤ m (2) 式中,kW 是机器kM 的工作负荷。 (3) 所有机器的总负荷TW T1min minmkkWW==∑(3) 表 1 是一个包括 2 个工件、 5 台机器的柔性作业车间调度问题的加工机器和加工时间表。其中,“--”表示此工序不能选择对应的机器进行加工。表1 所列问题是一个部分柔性作业车间调度问题,如果表 1 中所有的“--”都对应加工时间,表明每个工件的每道工序对所有的机器都可以进行选择加工,就是完全柔性作业车间调度问题。 2 改进遗传算法求解柔性作业车间调度问题 2.1 ??8I???? 编码和解码是指解和染色体之间的相互转换,是应用遗传算法的首要和关键问题。柔性作业车间调度问题需要为每道工序在可加工机器集中选择一台加工机器并对所有的工序进行排序。为此,柔性作业车间调度编码由两部分组成:一部分是机器染色体,基于机器分配的编码,确定所选择的加工机器,对应机器选择子问题;另一部分是工序染色体,基于工序的编码,确定工序间的先后加工顺序,对应工序先后加工的排序子问题。融合这两种编码方法,形成一条染色体,也就是柔性作业车间调度的一个可 相关资源
= 最新搜索
暂无评论,赶快抢占沙发吧。

参考资料

 

随机推荐