基于改进鲸群算法的置换流水车间调度问题的应用研究

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

中文摘要
置换流水车间调度问题通过合理的安排工件在机器上的加工顺序实现最大完工时间的最小化,从而达到提高生产效率和机器利用率的目的。

然而,置换流水车间调度问题从本质上讲属于整数规划问题,是一类NP-Hard问题,它的求解方法一直受到研究者的关注。

为此,本文以置换流水车间调度问题为研究对象,并采用鲸群算法来求解置换流水车间调度问题。

本文的主要工作包括:首先,传统的鲸群算法中搜索猎物行为是通过在解空间中随机选取一个点作为猎物位置,然后执行包围猎物操作。

既然猎物位置是随机选择的,则通过包围行为产生的鲸鱼位置也是随机的,因此新产生的鲸鱼就有可能落在鱼群密度较大的区域,而不利于提高算法的全局搜索能力。

为了克服上述的问题,本文提出基于拥挤度检测结果来调整鲸鱼位置,从而提高鲸鱼落在鱼群稀疏区域的概率,在一定程度上,平衡鲸群算法的全局开发性和局部勘探性。

其次,由于鲸群算法是针对求解连续问题提出的,但实际流水车间调度问题属于整数规划问题。

为此,本文采用按鲸鱼位置大小进行排序的整数编码,建立鲸鱼位置与调度可行解之间的一一对应关系,将改进鲸鱼算法应用到求解置换流水车间调度问题。

再次,为了进一步提高鲸群算法解决整数规划问题的能力,本文改进鲸群算法中搜索猎物的策略,提出采用适应于整数规划的局部搜索策略(互换法、插入法和逆序法)生成鲸鱼位置,并采用基于拥挤度的选择策略选择鲸鱼,在一定程度上提高鲸群的多样性,改善鲸群算法的全局搜索能力。

最后,为了验证本文所提出算法的有效性,将算法应用到求解不同规模的Taillard类和car类标准调度问题中,仿真结果证明了本文算法的有效性。

关键词:置换流水车间调度;鲸群算法;局部搜索策略;智能计算
ii
ABSTRACT
Permutation flow-shop scheduling realizes the minimization of the maximum completion time by reasonably arranging the processing sequence of workpieces on the machine, so as to improve production efficiency and machine utilization. However, permutation flow shop scheduling problem is essentially an integer programming problem, and it is a NP-Hard problem. Its solution method has been concerned by researchers. Therefore, this paper takes the permutation flow shop scheduling problem as the research object, and uses the whales swarm algorithm to solve the permutation shop scheduling problem. The main work of this paper includes:
Firstly, the traditional whales swarm algorithm realizes searches for prey by randomly selecting a point in the solution space as the prey position, and then performing the surround operation. Since the location of prey is chosen randomly, the location of whale generated by enclosure behavior is also random, so the newly generated whale may fall in the area where the density of the whales is high, which is not conducive to improving the global search ability of the algorithm. In order to overcome the above problems, this paper proposes to adjust the location of whale based on crowding detection results, so as to improve the probability of whale landing in sparse areas, and to some extent, balance the global exploration and local exploration of whale swarm algorithm.
Secondly, the whale swarm algorithm is proposed to solve the continuous problem, but the actual permutation flow shop scheduling problem belongs to the integer programming problem. For this reason, this paper uses integer coding sorted by whale location size to establish the one-to-one correspondence between whale location and scheduling feasible solution, and applies the improved whale algorithm to solve the permutation flow shop scheduling problem.
Thirdly, in order to further improve the ability of whale swarm algorithm to solve integer programming problems, this paper improves the strategy of searching for prey in whale swarm algorithm, proposes a local search strategy (swap method, insertion method and reverse sequence method) adapting to integer programming to generate whale locations, and adopts a selection strategy based on crowding degree to select whales, which improves the diversity and global search capability of whale swarm algorithm to a certain extent.
Finally, in order to verify the effectiveness of the proposed algorithm, the algorithm is applied to solve the standard scheduling problems of Taillard class and car class in different scales. The simulation results show the effectiveness of the
iii
proposed algorithm.
Key Words: Permutation Flow Shop Scheduling,Whale Swarm Algorithms,Local Search Strategy,Intelligent Computing
iv
目录
独创性声明 (i)
关于论文使用授权的说明 (i)
中 文 摘 要 (ii)
ABSTRACT (iii)
1.绪论 (1)
1.1 课题研究背景及意义 (1)
1.2 置换流水车间调度问题的国内外研究现状 (2)
1.2.1 置换流水车间调度问题 (2)
1.2.2 流水车间调度问题的特点 (4)
1.2.3置换流水车间调度问题描述 (5)
1.2.4置换流水车间调度问题的发展 (5)
1.2.5求解置换流水车间调度问题方法 (6)
1.3 鲸群算法研究现状 (7)
1.4 本文的主要内容及结构安排 (8)
1.5本章小结 (8)
2.鲸群算法基本原理 (9)
2.1 启发式算法 (9)
2.2 鲸群算法 (10)
2.2.1 鲸群算法基本原理 (10)
2.2.2 鲸群算法与典型智能群体优化算法的对比 (12)
2.2.3 鲸群算法特征 (12)
2.2.4 鲸群算法与其他算法的结合方式 (13)
2.3 鲸群算法在置换流水车间调度问题中的应用 (13)
2.4 本章小结 (16)
3.基于拥挤度的改进鲸群算法 (17)
3.1 引言 (17)
3.2 基于拥挤度的改进鲸群算法 (17)
3.2.1 传统鲸鱼算法 (17)
3.2.2 基于拥挤度的改进鲸群算法(AWSA)原理 (19)
3.2.3 基于拥挤度的改进鲸群算法(AWSA) (21)
3.3 AWSA与WSA在标准及偏移函数上的对比 (20)
3.3.1 实验环境 (21)
3.3.2 实验参数 (21)
3.3.3 仿真结果分析 (22)
3.4 本章小结 (33)
4.改进鲸群算法在置换流水车间调度问题中的应用 (34)
4.1 置换流水车间调度问题的描述 (34)
4.2 改进鲸群算法在车间调度问题中应用 (36)
4.2.1 整数编码方式 (36)
4.4.2 带整数编码的改进鲸群算法 (37)
4.3 基于局部搜索策略的改进鲸群算法 (39)
v
4.3.1 局部搜索策略 (39)
4.3.2 基于局部搜索策略的改进鲸群算法 (41)
4.4 仿真实验 (42)
4.5 本章小结 (47)
5.总结与展望 (48)
5.1 总结 (48)
5.2 展望 (48)
参考文献 (50)
致 谢 (52)
作者简介 (53)
vi
1.绪论
1.1 课题研究背景及意义
近年来以互联网、人工智能和大数据引领全球制造业的大背景下,生产制造企业是我国国民经济发展的基石,国家对现在我国的生产企业也是投入很多的人力和财力。

现在随着人们生活质量的提高,人们对于产品的需求越来越大,在选择产品时不仅对产品的质量有要求而且对于产品的外观也越来越有所追求。

所以就要求现在的企业不仅在生产量上提高,也要在质量和外观等其他方面也要有很大的提高[1]。

虽然现在企业的规模是越来越大,但是越来越不能满足人们的需求。

企业生产现在虽然越来越智能化,车间生产也在不时的做出一些相应的改变,在这些改变以后生产效率得到了极大地提高。

面对现在市场的巨大压力,企业如果想得到进一步的发展壮大,就必须在内部做出相应的调整,管理者也要加大生产管理对生产效率也必须重视起来,对生产计划做出一定的调整来提高生产效率。

我国生产型企业生产的东西就是要充分利用资源以及达到消费者的需求,车间调度问题不仅是企业生产制造的核心,也是现阶段很多企业生产必须要解决的问题。

因此,很多学者都在对车间调度问题做很多的研究,这就意味着车间生产车间调度问题的开始。

然而,最初的车间调度问题的研究方法包括动态规划法,拉格朗日松弛法等,用这些方法对那些复杂的解和很难求出的解进行大量的计算和搜索来求出对调度问题的最优解[2]。

这些方法的缺点是只能求解那些简单的调度问题,对于复杂的问题就很难被找到最优解,这就需要我们继续寻找求解调度问题的其他方法。

车间调度问题属于组合优化问题,对于组合优化问题可以通过用数学上的很多方法来求最优解,像线性规划和动态规划等方法。

构造性方法是一种基于空间和时间的基础上来求解最优解,其中,最常见的一种构造性的方法是启发式的,这对于求解调度问题不是很容易,大多都是和一些其他的算法结合起来求解最优解。

组合最优化问题涉及生产制造、交通、通信、医疗等各大行业。

所以当前对于流水车间调度问题的应用与研究具有很大的理论意义和实际意义[3]。

现在企业生产工件大多是以流水车间生产的方式,企业大多都是生产规模很大,为了提高企业的生产效率,企业都想尽各种各样的方法。

在生产过程中改变生产中的一个生产目标就可以在一定程度上提高生产效率。

因此,很多的企业都在寻找一些方法来改变和提升自己的生产水平。

能够理解生产中的一些生产目标,在一定的基础上做出调整和改变就会能在一定程度上有所提高。

其实车间调度问题就是对在一定的约束条加下和一定数量的生产工件将这些东西合理安排
1
生产达到自己期望的生产目标。

所以寻求企业车间生产中的一个或者多个目标才是我们研究的重点内容[4]。

在改变和优化了生产目标以后,使得企业生产大规模地提升,为了满足人们的实际的生活需要,学者们需要尽可能的研究车间调度问题的那些需要优化的目标。

置换流水车间调度问题(Permutation Flow-shop Scheduling Problem,PFSP)是车间调度中一种常见复杂的调度问题,因为车间调度中有不同的规模以及调度也涉及了很多不同的调度目标,这些目标之间相互制约,很难使他们同时达到最优化[5]。

置换流水车间调度问题中由工件数量和机器设备组成是一个离散的组合优化问题,对于置换流水车间调度问题研究者一直在寻找一些合适的求解方法,原来是使用数学上的线性分析、动态规划的方法来对其进行求解。

这些原先的算法对于一些简单的调度问题可以求出其最优解,但是对于那些计算量大和特别复杂的问题就不能很好地求出其最优解。

因此研究者提出了一种新的启发式算法,虽然启发式算法能够快速地求出最优解,但随着工件的数量的增加或者机器设备的增加,最优解越来越不能令人满意。

研究者就希望开始能够找出一种快速求得复杂问题的最优解[6]。

目前随着研究者更深一步的研究,提出了很多的智能优化算法,来对车间调度问题求最优解,得到一种新的研究思路和方法来求解流水车间调度问题。

目前智能优化算法对于求解大规模的、复杂的车间调度问题最有效的方法之一,下一步研究的重点也都将集中于对现有的智能优化算法加以改进和对一些新的群体算法进行开发和研究。

自从关于鲸群算法的论文发表以后,被很多的研究者深入研究和改进。

关于其论文也被很多数据库收录且被应用于智能优化、神经网络、信号处理、控制工程、生物制药、数据挖掘以及车间调度等很多需要优化的领域中去,使得鲸群算法已成为应用研究最多的一种基于群体的智能算法之一。

置换流水车间调度问题是一种车间调度问题中最典型的,开发和研究一些群体智能算法来对这类问题进行求解,找出需要优化的那些车间目标进行优化改进来提高企业生产水平和质量。

置换流水车间调度问题目标就是要使最大完工时间越小越好以及总流程时间降到最低,车间调度问题实际上是在一定的约束条件下对工件进行加工生产一直到完成中间存在的很多问题,包括有工件的数量、机器设备的好坏、最大完工时间等。

优化好这些问题能够提高企业的生产效率对于解决好车间调度才有着重大的意义[7]。

1.2 置换流水车间调度问题的国内外研究现状
1.2.1 置换流水车间调度问题
置换流水车间调度问题(Permutation Flow-shop scheduling Problem,PFSP)是车间调度中加工工件和机器设备中优化一些车间目标的组合优化问题,它不仅在
2
理论上具有研究研究意义,还对实际生产应用中有很高的实际意义。

在置换流水车间调度问题被Johnson提出以后,不久以后很多学者在他的基础之上开始对其进行大量的研究和应用,通过不断地努力学者们不断发表出很多种算法来求解车间调度问题,并在流程工业和离散制造工业等方面的应用十分广泛。

就现阶段而来,求解PFSP问题的方法可以归纳为精确求解法和近似求解法两种求解的方法。

由于精确求解的方法只能在多项式以外来求解用了数学中的分析法以及分支定界法,它对于求解简单的低维度的问题很容易求出,然而对于那些复杂的、规模比较大的问题,由于计算量复杂以及数量很大就显得对于求解得到的最优解很难与实际最优解相近。

因此学者把求解最优解的目标方向就放在了用近似求解的方法来进行求解。

近似求解法主要包括启发式算法和元启发式算法两种,启发式算法结构简单并且计算复杂程度低,求解最优解的速度非常快,深受学者和人们的接受[8]。

上世纪七十年代,Campbel等人提出了启发式算法来对置换流水车间调度问题应用研究,随后,Dannenbring提出了一种进化的启发式算法来解决PFSP问题,在它的基础上Nawaz等人提出一种简单的NEH算法来对调度问题求最优解,得到的最优解效果非常好。

学者们研究启发式算法能够快速得到最优解,但是得到的最优解与实际最优解之间存在着很大的差别,显然不能满足现实企业加工生产的需求,为了能达到企业上产的需求,研究者就又提出了一种元启发式算法[9]。

PFSP 问题是很多工件在机器上进行加工生产的过程,每个工件在机器上加工的顺序一致不能改变,所有工件在开始时的任何时刻都能进行加工生产并且加工开始后工件不能暂停,另外要求在同一时间的一台机器上只允许加工一个工件,工件在各个机器上的加工时间是给定的,我们要把这个时间最小化从而我们需要找到最优的一个调度方案或相对最优的一个调度方案[10]。

置换流水车间调度问题一直是国内外热点研究问题,二十世纪五十年代,Conway、Johnson等人开始对置换流水车间调度问题进行分析研究,随之国内外学者开始对其进行大量的关注和研究,并且在此基础上又提出了各种各样的算法来解决PFSP问题。

对于FPSP问题,2010年V Allada又通过在原有的GA算法[11]基础上,通过局部搜索和路径技术将改进后的GA算法[12]运用在PFSP问题上求解最大完工时间的目标,并将改进后的GA算法与其它的智能算法进行比较,依次来得出改进后的GA算法比其他算法更有效。

2012年M.K[13]在布谷鸟搜索的基础上对其进行改进,使这个算法能够高效求解离散型问题来提高求解车间调度问题,并提出了IHCS算法;Liao等人则运用粒子群的算法来求解最大完工时间的PFSP问题;2014年,Simon等[14]受FA算法是受置换流水车间调度问题的启发,根据萤火虫进行觅食行为的算法来求解PFSP;除了上述介绍到的元启法式算法,还有很多元启发式算法我们就不在多做介绍。

随着社会的不断进步和人们生活的不断提高,面对这些单一的元启发式算法
3
越来越达不到人们的需求,学者开始提出一些新型的算法以及用几种算法混合起来把各个算法的优点集中起来摒弃那些缺陷来提高算法快速寻优。

Ruiz将局部搜索算法加入到GA算法中,从而在一定程度上提高GA算法的局部搜索能力,来达到快速寻优的目的;Liao等人[15]为了增强粒子群算法的求解,定义了粒子个体、粒子移动得速度以及粒子间的移动规律;Pan等人提出了参考局部搜索能力并将通过一些实例证明了这两种混合算法是在DE和IG算法的基础上,最终证明求解PFSP问题的快速寻优。

Amin Ziaeifa等人[16]针对流水车间调度问题建立一种数学模型,对最大完工时间提出了一种启发式算法,将改进的遗传算法与启发式算法有机地结合起来,很大程度的减少处理器数量分配的时间和成本。

1.2.2 流水车间调度问题的特点
实际的调度问题有以下特点:
(1)复杂性:
一是企业生产因素的多样与复杂。

二是车间调度问题在很多等式或着是一些不等式制约下这一情况来求解调度性能的最优问题,这在PFSP中往往是NP-Hard问题,即现在随着很多调度问题中的规模在不断的扩大,计算量大多都是呈指数函数增长,这就让一些简单的算法面对最优解而起不到一点点的帮助。

(2)离散型:
离散型这一特点最有效的例子就是在车间进行工件的生产系统,工件在生产过程中包括很多因素,比如机器设备的减少和维修、客户计划的订单临时调整等等,这些因素都可以称为离散的事件。

因此目前要解决这类调度的问题,需要选择的方法应该是数学分析和数学建模法,特别数学建模是最有效的方法[17]。

(3)多目标性:
在实际的车间生产调度问题中往往以多目标的方式来存在的,另一方面这些目标之间一般都能产生冲突。

在企业车间加工生产工件的所有的过程中,很多加工环节的时候大多都需要进行调度,并且在这些调度环节中也有可能发生冲突的情况。

车间生产的目标大致可以分为基于作业交货期、基于作业的最大完工时间、基于工件的生产成本,基于关键性的机器设备的利用效率等目标,由于车间存在这么多的目标性这就导致了在车间调度问题中的复杂性和计算量都在不断地增加[18]。

(4)动态随机性:
PFSP问题也有很多的可能性随机发生,也存在着不少的随机和不确定的一些因素,比如紧急插单、人员请假、设备故障、人员误操作、机器老化等不可预知的因素,生产调度时就需要根据当时的一些实际生产情况及时的做出一些动态性调整来缓解调度问题。

4
1.2.3 置换流水车间调度问题描述
PFSP问题是现在研究最多的一种车间调度问题,置换流水车间调度问题是基于企业在实际的生产过程中出现的问题,在一定的条件下建立一些模型,拥有很好的实际生产价值。

PFSP问题存在以下特点:
复杂性:车间加工工件、库存、机器消耗、运输系统之间的相互影响这都是实际上产中出现的问题,每一个加工的工件也都是需要考虑在机器设备上进行加工的时间、工件在加工过程中的顺序以及最大完工时间等诸多因素,问题是非常的复杂[19]。

多约束性:在进行生产过程中,工件的种类、机器的数量、工件进行加工的时间、仓库的存储量、客户要求对产品生产的质量以及一些人为的因素等都在一定程度上对企业生产产生很大的影响。

动态不确定性:在进行生产加工工件时还有很多不确定的一些因素,会导致生产不稳定导致跟预期的目标有很大的波动。

例如:机器出现故障、客户要求更改订单、最大完工时间增加、客户突然之间催
×,N为工单等。

置换流水车间调度问题可以被描述为:假设问题的规模是N M
件个数,M为器上的台数,所有工件生产的流程是一致的,工件加工的时间在每台机器上是已知的,通过在机器设备上加工的顺序也保持一致,调度问题是需要找到一个适合的加工工件的顺序来进行生产作业。

另外,还存在两个限定条件:(1)每台机器加工的工件顺序一定。

(2)每台机器设备不论在什么时刻加工都只能加工一个工件,每个工件在同一时刻也只允许在一台机器设备上进行加工,加工时长是固定的并且一旦开始不能中断,目的是找到加工完时间最短的调度方法[20]。

1.2.4 置换流水车间调度问题的发展
Johnson发表了关于第一篇的PFSP问题的文章以后,车间调度问题不断地吸引了很多的学者的研究与分析,经过学者们不断地努力研究,得到了很多有用的成果[21]。

因为在当时计算机技术和编程还不够成熟,当时的重点研究主要是集中在理论分析和探讨,分析出来的成果大多都是对Johnson的论文结果进一步的分析和研究。

在另一个方面,求最优解的方法主要都是数学分析规划法,比如整数之间规划、动态随机性规划、定界法等等。

在这一时间段应用开发数学分析规划算法中不断地遇到了一些复杂的困难,为了使启发式算法得到进一步发展且能够快速有效地得到近似最优解或相似最优解,运用CDS法和Palmer法[22]。

随着计算的复杂性理论的出现,尤其是在Garey等人证明了3台机器设备以上的PFSP问题出现以来,人们逐渐的认识到数学分析中的一些方法只是适合解决那些简单的小规模的问题,然而对于那些大中型企业里面复杂的计算量大的调
5
度问题,数学分析中的一些方法很明显的就暴露了自己的一些问题。

因此,研究者们就把启发式算法作为研究方向的重点,在这一段时间内被研究者开发和研究出来很多的启发式算法,对于启发式算法研究出现以来,Framinan和Ruiz等都在论文和文献中做出了大量地总结和论述。

其中一些有代表性的启发式算法,RA算法、NEH算法、和Gupta算法等。

随着人工智能、大数据和计算机技术时代的到来,在对待企业车间生产中的很多问题,基于群体的智能优化算法也逐渐开始快速地发展起来,用这些方法来解决调度车间中的问题。

由于新的群体智能的算法正在不断地被研究出来,智能优化算法已经进入到了一个高速发展的过程。

比如蚁群算法,蛙跳算法,PSO算法等等。

随着群体智能优化算法的开发在很大程度上提高了对于置换流水车间调度问题的应用研究,对于解决车间调度问题起到了不可估量的作用。

群体智能算法被研究出来以后,学者又在此基础上寻找出了大量地智能求解方法。

在蚁群优化算法这一方向,由Rajendran等人最早的提出蚁群算法,Ying等从蚂蚁进行觅食的行为中提出了蚁群算法。

Yagmahan等人在此基础上提出了一种多方向的蚁群优化算法。

对于求出置换流水车间调度问题中的最优解在用群体智能算法有很多,应用研究也是有很多的方向,然而智能优化算法也有自己的不足就是不能保证得到的最优解就是实际需要的最优解可能在一定程度上与实际最优解有很大的差别,因此求出的最优解与实际最优解的分析判断也是显得格外重要。

对于这些算法求出的最优解用以下三种情况来判断[23]:第一种是在求解出的最优解在最坏的情况下来判断,通过举出一个最坏的例子来对算法求出的最优解评价解的好坏程度和算法的复杂程度。

第二种是用概率的方法来进行分析判断,即举出一个例子通过概率分布的形式,通过不同概率的大小来分析算法的结果优劣程度。

最后一种情况是用模拟分析的方法,即通过采集大量的数据进行对比、用模拟的情况来进行测试和分析,通过算法结果分析判断解的偏离程度和解的复杂程度。

第一种和第二种是在理论上进行分析的情况,可靠性、精确性,但是如果没有较强的数学功底很难得到准确地分析,调度问题中还有着一些比较复杂的东西不能仅靠理论分析。

通过对比得出,计算模拟的优点就显而易见了,并且这种方法也有着很强的实际应用型,因此通常采用模拟分析的方法来评价智能优化算法。

1.2.5 求解置换流水车间调度问题方法
PFSP的开创性来源于Johnson发表的一篇文章,通过学者们不懈的努力和研究,对求最优解取得了很大的研究成果,研究出来的算法大致可以分为群体智能优化算法和传统上的数学优化算法。

传统算法主要包括元启发式算法和精准算
6。

相关文档
最新文档