一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法制造技术

技术编号:15284036 阅读:101 留言:0更新日期:2017-05-06 12:22
本发明专利技术公开了一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法,该算法将两种邻域结构、精英池策略引进,并对迭代局部搜索的扰动方式进行改进,从而提高算法的局部搜索性能,避免搜索时陷入局部最优以及搜索时仅对当前最优解进行扰动造成搜索范围缩小的问题。该算法的实现过程包括产生初始解,设置精英池容量,执行邻域搜索随机产生两种邻域结构,执行精英池策略的扰动等步骤。本发明专利技术与现有技术相比能更好的解决实际的作业车间调度问题,具有实用性高,可执行能力强等特点。

An improved iterative local search algorithm for solving job shop scheduling problem

The invention discloses an improved iteration for solving job shop scheduling problem disturbing form of local search algorithm, the algorithm of two kinds of neighborhood structure, elite pool strategy introduction, and the disturbance of iterated local search is improved, so as to improve the local search performance of the algorithm, to avoid the search into local optimum and the search for the current optimal solution of disturbance caused by a reduced search range problem. The implementation of the algorithm includes the following steps: generating the initial solution, setting up the capacity of the elite pool, executing the neighborhood search randomly generating two neighborhood structures, and executing the disturbance of the elite pool strategy. Compared with the prior art, the invention can solve the actual job shop scheduling problem, and has the advantages of high practicability and strong execution ability.

【技术实现步骤摘要】
所属
本专利技术涉及计算机执行制造系统领域,具体来说就是通过算法解决作业车间调度的组合优化问题。
技术介绍
作业车间调度问题(Job-ShopSchedulingProblem)是制造执行系统研究的核心和重点之一,它的研究不仅具有重大的现实意义,而且具有深远的理论意义。作业车间调度问题,(简称JSP),就是根据产品制造需求合理分配产品制造资源,进而达到合理利用产品制造资源、提高企业经济效益的目的。JSP是产品制造行业中共存的问题,它与计算机集成制造系统(ComputerIntegratedManufacturingSystems,简称CIMS)的工厂管理、产品制造层次紧密相关,是CIMS领域中研究的重要课题。JSP是一个典型的NP-hard问题,它的研究必然会对NP问题的研究起到有意义的影响。在过去的几十年,各种算法被应用来解决作业车间调度问题。传统的,一般都采用最优化方法和近似方法来解决作业车间调度方案的自动生成问题。最优化方法包括枚举法和数学规划技术。近似法通常使用分支定界法、优先规则、启发式方法、迭代局部搜索算法和进化算法。迭代局部搜索算法是一种单点出发的元启发式算法,它包括构造初始解、局部搜索、接受条件和扰动方法4个组成部分,它能在较短的计算时间内获得不错的解,近年来的研究表明该算法对许多NP难题的求解具有良好的效果。因此,各种版本的迭代局部搜索被专门设计来解决作业车间调度问题。但是他们易受陷入局部最优的影响,由此很多改进的迭代局部搜索算法相继提出来,比如:进化算法与局部搜索结合,多邻域结构的局部搜索,模拟退火算法等。但是依然存在计算复杂,有时不能逃离局部最优等问题。
技术实现思路
针对现有技术中存在的上述不足之处,本专利技术要解决的技术问题是提供一种新的扰动方式来提高迭代局部搜索求解性能。本专利技术的目的则是克服现有技术中存在的:迭代局部搜索容易陷入局部最优;一些已有的扰动方式不能帮助解逃离局部最优;迭代局部搜索仅对当前最优解进行扰动,缩小了搜索范围的问题。本专利技术为实现上述目的所采用的技术方案是:一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法,该算法包括以下步骤:步骤1:产生初始解,令当前最优解Δbest=Δ,计算该解所产生的总完工时间。步骤2:设置精英池容量。步骤3:判断是否到达停止条件,是则返回最优解,否则执行下一步。步骤4:对Δ执行邻域搜索,随机选择两种邻域结构,产生邻域解Δ′。步骤5:如果Δ′优于Δ,即该解下的调度方案使得总完工时间更小,则令Δ=Δ′;否则返回步骤4。步骤6:如果Δ优于Δbest,即该解下的调度方案使得总完工时间更小,则令Δbest=Δ,flag=true;否则令flag=false。步骤7:执行精英池策略的扰动方法。步骤8:返回执行步骤3,重复以上步骤。所述的产生初始解的方式是:采用优先调度规则安排每一台设备上的加工工序,以得到一个初始解。步骤如下:步骤1.1:按照每个工序的工艺顺序由小到大排序。步骤1.2:如果加工工艺顺序相同,按照加工时间由小到大排序。步骤1.3:如果加工时间依然相同,按照工件编号由小到大排序。所述的精英池相当于一个存储空间,将上一步骤产生的最优解存储,能够避免迭代局部搜索仅对当前最优解进行扰动从而缩小搜索范围的问题。本算法中我们设置精英池容量poolsize,令其中pool用来存放精英解;poolsize表示其容量大小,本算法设定容量大小为5。所述的领域结构,目前有三种:插入型邻域结构,交换型邻域结构,破坏-构造型邻域结构,本算法我们采用插入型和交换型两种邻域结构对初始解进行迭代邻域搜索。插入型邻域结构是根据已知调度方案的有向图,随机选择一道工序,并随机插入到同一设备加工序列中的任意位置;交换型邻域结构是根据已知调度方案的有向图,任意选择相同设备中的两道工序,进行互换。所述的执行精英池策略的扰动方法,有以下几个步骤:步骤7.1:如果flag为true,则清空pool。步骤7.2:如果Δ在pool中不存在,则将Δ插入到pool中。步骤7.3:如果pool中的解多于poolsize,则删除pool中最差的解。步骤7.4:如果pool中的解少于poolsize,则令Δ*=Δbest;反之,从pool中随机选择一个解记作Δ*。步骤7.5:对Δ*执行扰动,得到Δ,返回步骤3。其中,对Δ*执行扰动的步骤如下:步骤7.5.1:是Δ*相关的有向图。步骤7.5.2:中最长路径中选择一个随机连接弧(Oik,Ojk)。步骤7.5.3:交换Oik和Ojk。步骤7.5.4:令Ou=Oik。步骤7.5.5:当Ou不是工件Ji的第一道工序:获得工件Ji的工序Ou的前一道工序,记作:Ofu;如果Ofu不是设备Mu上第一个加工的工序,获得设备Mu上在Ofu前面紧邻加工的工序,如果不会创造一个环,则交换这两道工序。步骤7.5.6:令Ov=Ojk。步骤7.5.7:当Ov不是工件Jv的第一道工序:获得工件Jv的工序Ov前一道工序,记作:Ofv;如果Ofv不是设备Mv上第一个加工的工序,获得设备Mv上在Ofv前面紧邻加工的工序,如果不会创造一个环则交换这两道工序,让Ov=Ofv。步骤7.5.8:返回Δ。本专利技术的有益效果是:1.两种邻域结构拓宽了邻域搜索方向和范围,限制了搜索时陷入局部最优的情况;2.增强的扰动方式使搜索避免局部最优;3.精英池策略保留了之前几代搜索得到的好的结果,提高了搜索的开发性和稳定性。附图说明图1为本专利技术的算法流程图。图2为精英池策略的扰动流程图。图3为改进的扰动方式流程图图4为4个工件3个设备的作业车间调度问题实例。图5为图4所示问题的析取图。图6为图4所示问题的一个可行解甘特图。图7为图6所示可行解的有向析取图。图8为图4所示问题初始解生成方式说明。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图和实施例对本专利技术进一步详细说明。应当理解此处所描述的具体实施例仅仅用于解释本专利技术并不用于限定本专利技术。为了克服传统迭代局部搜索在求解作业车间调度问题的不足之处,本专利技术设计了一种新的扰动方式与精英池策略,提出了一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法。传统的迭代局部搜索虽能在较短的计算时间内获得不错的解,但是容易陷入局部最优的问题。所以本算法将两种邻域结构、精英池策略引进,并对传统迭代局部搜索的扰动方式进行改进,从而拓宽了邻域搜索方向和范围,限制了搜索时陷入局部最优的问题,提高了搜索的开发性和稳定性。结合图4一个4*3的JSP实例,作业车间问题(JSP)可以描述为n个工件{Ji|(i=1,2,…,n)本文档来自技高网
...
一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法

【技术保护点】
一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法,该算法适用于计算机集成制造系统领域,其特征是,包括以下步骤:步骤1:产生初始解,令当前最优解,计算该解所产生的总完工时间;步骤2:设置精英池容量;步骤3:判断是否到达停止条件,是则返回最优解,否则执行下一步;步骤4:对执行邻域搜索,随机选择两种邻域结构,产生邻域解;步骤5:如果Δ′优于Δ,即该解下的调度方案使得总完工时间更小,则令;否则返回步骤4;步骤6:如果优于,即该解下的调度方案使得总完工时间更小,则令,flag=true;否则令flag=false;步骤7:执行精英池策略的扰动方法;步骤8:返回执行步骤3,重复以上步骤。

【技术特征摘要】
1.一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法,该算法适用于计算机集成制造系统领域,其特征是,包括以下步骤:步骤1:产生初始解,令当前最优解,计算该解所产生的总完工时间;步骤2:设置精英池容量;步骤3:判断是否到达停止条件,是则返回最优解,否则执行下一步;步骤4:对执行邻域搜索,随机选择两种邻域结构,产生邻域解;步骤5:如果Δ′优于Δ,即该解下的调度方案使得总完工时间更小,则令;否则返回步骤4;步骤6:如果优于,即该解下的调度方案使得总完工时间更小,则令,flag=true;否则令flag=false;步骤7:执行精英池策略的扰动方法;步骤8:返回执行步骤3,重复以上步骤。2.根据权利要求1所述的一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法,其特征是:产生初始解的方式是采用优先调度规则安排每一台设备上的加工工序,以得到一个初始解,步骤如下:步骤1.1:按照每个工序的工艺顺序由小到大排序;步骤1.2:如果加工工艺顺序相同,按照加工时间由小到大排序;步骤1.3:如果加工时间依然相同,按照工件编号由小到大排序。3.根据权利要求1所述的一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法,其特征是:设置精英池容量poolsize,令pool=;其中pool用来存放精英解;poolsize表示其容量大小,本算法设定容量大小为5,采用精英池能够避免迭代局部搜索仅对当前最优解进行扰动从而缩小搜索范围的问题。4.根据权利要求1所述的一种求解作业车间调度问题的改进扰动方式的迭代局部搜索算法,其特征是:执行邻域搜索时,随机产生两种邻...

【专利技术属性】
技术研发人员:龚晓慧胡成华
申请(专利权)人:四川用联信息技术有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1