文摘
摘要Nondominated排序遗传算法2的修改模型(NSGA-II),这是一个多目标进化算法,提出了。该算法是一种新的模式,旨在最小化的成本之间做出权衡预防性维修(PM)和减少花费的时间来执行该串并联系统的维护。在这个模型中,劳动力和设备的局限性的维护团队和维护问题对生产问题的影响也考虑。在数学模型中,为维护调度问题找到合适的目标函数需要整合所有的维护成本和失败率。此外,预防性维修期间生产中断的影响被添加到目标函数。此外,做一个更好的性能与普通NSGA-II算法相比,我们提出了一个改进算法与存储库保持更不可接受的解决方案。这些解决方案可以修改和变化提出变异算法可接受的解决方案。在该算法中,修改运营商,如模拟二进制交叉和多项式变异,将改进算法来生成收敛和均匀分布解决方案提供更加多样化的解决方案。最后,通过比较两个强度的实验方案与方案2帕累托进化算法(SPEA2)和常规NSGA-II, MNSGA-II生成更有效的和统一的解决方案比其他两个算法。
1。介绍
在今天的工业世界,对制造企业来说是至关重要的维持机器的生产速度常数。因为降低成本和利润增长的主要目标是所有制造企业,生产机器的故障会导致产量减少或停止生产在某些情况下,最终会减少企业的利润。在这种情况下,需要一个预防性维修(PM)系统保持机器运行是至关重要的(1,2]。
计算最优时间点行动将防止不仅意外故障的机器,而且节省成本太多的维护操作可能会增加生产成本(3]。这是两个预防性维护程序一致时更复杂。例如,劳动力短缺或缺乏点维护设备很难同时执行点过程在不同的机器上(4]。自维护团队无法一次执行一个以上的维护,维修计划应该改变不超过一次一个维护计划(5]。
因此,在这种情况下,机器的维修时间表重叠,我们需要改变的最优时间部分替代通过修改时间表。因此,我们的目标是创建一个之间的权衡最佳预防性维修的时间和劳动力和设备的局限性,以创建一个可执行的进度以最低的成本。
预防性维修(PM)是一个古老的著名的制造业世界证明问题影响生产调度和输出(6,7]。从上个世纪已经被研究过,从替代的政策发展是基于维修成本的限制更复杂的方法,比如预见性维护计划的联合优化和生产调度8]。
有一些方法如何解决点问题。第一个是创建政策/ PM计划,最大限度地提高系统可用性。它已经通过使用不同的方法(9- - - - - -13]。大多数现有的研究点俯瞰维修计划和设备工作时间之间的相互关系。因此,维护计划往往没有考虑到这两个活动之间的相互作用(14,15]。最近的研究侧重于下午结合生产调度和调度。因此,解决点问题的第二种方法是创建一个点调度模型,该模型考虑了机器的生产计划的约束(16,17]。另一种方法是建立生产调度模型与点约束,如在18]。此外,预防性维修的联合优化和生产调度计划获得了很多利益。目标是最小化所有成本(维修和生产相关)和满足需求而创建最优生产和预防性维修计划(19- - - - - -21]。迟到也会影响生产成本和PM计划和被添加到目标函数(22,23]。另外,这个问题可以通过考虑扩展的影响同时维护产品的质量或质量决定一起生产和维护。
任何调度问题是一个复杂的问题,包括多个目标同时要最小化或最大化。然而,文献中同时考虑多个调度标准很少(24),但近年来,它已经获得了更多的利益通过在[等相互矛盾的目标之间的权衡25,26]。多个目标通常被用于assignment-allocation问题等问题27)或供应链网络设计问题(28]。在生产调度模型中,是非常重要的发现之间的平衡时间和总生产成本(29日,80年]。为了支持这一点,(81年)使用多目标进化算法的总流程时间降到最低工作和迟到的岗位数量。下午安排和重新安排也由运营总成本最小化(工作总完成时间、维护成本和压缩成本)和总完工时间偏差同时[30.]。
点问题是任何调度模型归类为一个的np困难问题的约束和大型数据集。Metaheuristic外带方法对于许多调度/分配问题提供很好的结果在很短的时间内,是一个至关重要的问题。Metaheuristic方法是一类广泛的算法,可以根据他们的随机核进行搜索阶段31日- - - - - -41]。他们发现他们的地方在病毒的方法用于智能系统(42- - - - - -46和混合模式识别工作47- - - - - -55]。这些方法可以基本与其他进化基地或增强的方法,和一些例子包括进化算法、蚁群优化(ACO) [36,47],媒母和混合算法[56- - - - - -60)、禁忌搜索、模拟退火等。47,61年]。进化算法已被发现是非常成功的在解决多目标优化问题。他们也有可能是结合未来混合动力和新的机器学习模型(62年- - - - - -67年]。在过去的十年里,nondominated排序遗传算法(NSGA-II)一直是最受欢迎的和实用的进化多目标优化算法(情绪)(32,68年- - - - - -70年]。
有很多修改版本的启发式算法解决调度和分配的问题,如(35,52,55]。例如,在很多研究中,修改版本的NSGA-II利用为了创建算法来找到更准确的解决方案,因为常规NSGA-II算法无法找到它(71年- - - - - -74年]。其他修改算法,如SPEA-II MOPSO,为了找到解决方案生成特定正则算法不能解决的问题(36,39,75年,76年]。
在这项研究中,我们首先回顾调度维护和成本优化问题和集成这两个问题和其他相关问题在串并联系统中。我们把这些问题转换成一个数学模型,提出一种modified-NSGA-II算法得到最优解。因为许多生成的解决方案不接受由于有重叠与其他解决方案,该算法有一个存储库保持这些不可接受的解决方案,从接受到可以接受的解决方案的一个变异算子。因此,解决方案生成的算法的性能增加。这个变异算子包括一个复杂的过程来改变预防性维护的开始时间在解决方案不可接受的解决方案转换为可接受的解决方案在存储库中。
在这个修改NSGA-II算法,我们建议增加一个存储库和一个新的变异算子的算法。然后我们分析获得的结果的比较与两个正则算法。这个算法
2。问题
2.1。维修调度问题
让我们考虑一个工厂几个机器的工作。每个设备都有部分磨损(贬值)随着时间的推移,需要维修或更换。显然,这些部件的更换时间是不同的。此外,维护团队的时间花来代替这些不同部分。因此,考虑在操作和机器的数量必须维修或更换的几个部分,调度两种不同的可能性,同时维护是非常高的。由于有限的劳动力和设备维护团队,有必要改变预防性更换的时间表当两个或更多的维护彼此一致。潜在的,它可以帮助防止预防性维修经过一段时间的积累。
如果我们假设的总数在一段时间点操作米以便安排维修的开始时间从1米,然后假设n是一个数字0到吗米,连接结束时间的维护n开始时间的维护n+ 1可以有3个模式。
在第一种情况下,一旦维护n完成后,维修吗n+ 1开始。因为没有时间浪费两国维护维修团队,这是一个理想的情况。
第二种情况是当点之间的一段时间的行动n和n+ 1重叠。事实上,维护,n+ 1,开始前完成维护,n。由于点项目的积累和维护团队的能力有限,如果维修工作在一段时间内的体积比维护团队的能力,就无法执行和安排必须修改。为了解决这个问题,我们需要维修的转变n略向后或维护n+ 1略前倾,这样重叠是消除和维护计划变得可行。
在最后一种情况下,我们有一个缺口或结束时间之间的时间间隔的维护n的开始时间和维护n+ 1,这意味着维护团队已经在这段时间内都处于空闲状态。维护团队的这种情况下是可以接受的,但它不是理想的差距。因为我们的目标是执行所有周期性维护定义的时间范围内,存在不同的差距可以浪费时间和成本。因此,创建最优时间表,我们可以消除或减少两者之间的差距或时间间隔点行动接近理想状态。
2.2。成本优化和故障率
一台机器在一个工厂工作已经部分磨损。这些部件需要定期更换。以来的大部分零件,失败的可能性增加随着时间老化,更换后期每个部分的升级失败的可能性。失败可能会导致机器的损坏其他部件和组件,导致额外的成本和不活动的机器一段时间。另一方面,早期的更换有缺陷的零件可以征收额外费用,如增加备件的使用,维护团队的工资,不活动的机器在更换期间工厂。因此,找到确切的时间更换有缺陷的零件在降低成本是非常重要的。
2.3。串并联系统的生产问题
如前所述,保持机器的生产速度恒定的主要目标是维护团队。串并联系统图所示1,停止机器因故障或停止由于PM活动将减少生产制造过程。这个还原速度或R年代决定如下: 在哪里R我生产和减少的数量RT机器的总生产率是一个子系统1N虽然所有子系统的机器工作和它可以制定如下:
因此,R年代是一个数字在0和1之间。
2.4。之间的权衡问题
作为讨论的部分2。2,早期和晚期更换零件可以增加成本。确切的时间可以计算每个部分的替换。这个问题发生在维护团队工作时间有限。因此,很难准确地执行计划。另一方面,部分中提到2。3,保持产量不变也是维护单位的目标之一。
因此,生产速度与点之间的权衡成本需要考虑到劳动力和设备维护团队的局限性。为了获得这种权衡,数学模型是必需的。
3所示。数学模型
在本文中,建立一个数学模型,我们首先确定问题假设和声明的约束。然后在机器部件的失效概率计算,通过指定决策变量和目标函数定义的参数。
问题的假设是基于以下几点:(我)维护团队不能执行一个下午两台机器同时行动(2)维护团队的每天和每小时效率是恒定的(3)维护团队可以执行点操作期间所有公司的工作时间(iv)备件是可用的,并且没有任何限制访问所需的备件(v)所有必需的操作是在指定的时间执行在哪里Ti, j, k时间分配给点行动吗kth修复部分jth机器的我th。
3.1。识别的失败率
我们需要一个指数函数来计算零件在机器的故障时间。威布尔函数(77年)是用来检查失败时间处于贬值状态。威布尔函数与连续函数值。这个函数的值非负实数,这可以使用分布随机变量的情况下与长寿有关。因此,找到失败的概率密度函数,累积分布函数(CDF)将是一个不错的选择,可以计算如下:
部分的年龄在计算中起着决定性的作用部分失败的概率。如果r(y)是一个函数的失败率,又一次失败的概率l得到以下方程: 在哪里l在时间的年龄是t,一部分的年龄时期的开始等于0点行动。
3.2。决策变量和目标函数的识别
这个问题的决策变量li, j, k,这是一个矩阵我行,j列和k维度。在这个矩阵,我在操作机器的数量,j是部分的数量需要预防性维修的机器,然后呢k部分的次数,需要修理。这个矩阵中的每一个单元所示数量分配给点行动的开始时间。
点过程的持续时间机器的每一部分是固定数量表示T我,我。维修团队的成本为每小时的工作我th机和jth部分被指定为P我,我,点的成本的一部分jth机器的我th得到以下方程: 在哪里年代我,我备件的价格吗jth机器的我th和米我,我的成本是一个小时不活动的机器吗我th。
然后制定成本目标函数如下: 在哪里C我,我部分的费用吗j机器的故障我th。
因为缺乏运动生产线由于故障或点生产过程导致的体积减少,时间可以制定目标函数如下: 在哪里这台机器是不活动的成本,有吗小时不活动的机器我和部分j和问我,我是维护操作的机器上执行的数量吗我和部分j。
酸处理
小时维护团队的总数可以执行一个在公司里被定义为点行动T总。然后我们确定有多少预防性维护活动应该每年为每个单个机器的一部分。应该注意的是,每个维护团队有一定的劳动力和设备的能力。因此,在一定时期内所花费的总时间不应超过维护团队的能力。这一时期通常被认为是annual-this约束模型方程(8)。
建模的约束方程(9)分配的静止时间机器我在时间间隔0不能超过指定的价值 。最后约束指定作业的数量分配到维护团队在时间t,用 。
4所示。方法
在生产线上,我们经常使用大量的机器在这个过程中,影响的时间和成本决策点行动。为了缓解解决由此产生的大规模的计算困难的问题,因为非线性目标函数,我们应用一个修改NSGA-II启发式算法。修改应用变异和交叉操作,产生收敛性和均匀分布的解决方案。
4.1。初始化
在创建交叉和变异运算符之前,保持不同人口的候选解决方案是必需的。这可能随后被纳入一个染色体矩阵。解决目标函数,该算法的解决方案创建一个三维矩阵的形式。我们指定一个行对应于每台机器我在操作中,列代表每个部分j一台机器需要点行动,代表时间的维度k部分需要修理。每个元素所示数显示开始时间点操作的机器我,部分j的时间k。
4.2。模拟二进制交叉(墨)
模拟二进制交叉算子产生孩子附近的父母(78年]。在这个操作符,父母是使用轮盘赌选择生成。此外,矩阵都是随机选择的两个对应的元素,然后u,会生成一个随机值在0和1之间。的价值β计算如下: 在哪里ƞ指数分布,这是一个实数。
产生两个新的儿童使用以下公式。我们使用以下方程来创建新的解决方案的候选人: 在哪里x1和x2孩子们正在生产和吗x我和xj是父母2决策变量矩阵的元素。
4.3。多项式变异
在多项式变异,可以发现在任何距离父一个新的解决方案,但它更可能比其他地方被发现在父(79年]。找到解决方案,第一,参数δ计算如下: 在哪里r是一个0到1之间的随机数,ƞ是一个正实数,可以直接控制作为一个外部参数的概率分布。
变异的孩子得到方程(14),xU和xl上下键,从变异算子来提取一个新的解决方案。
4.4。开发突变算法(突变2型)
这种变异算子的设计将不可接受的可接受的解决方案。不可接受的解决方案的解决方案,至少一次重叠与其他解决方案。为了解决这个问题,我们定义了一个变异算子(图2)。变异算子2型设计挑选第一个单元格的第一行第一列的矩阵的第一通道解决方案。如果有一个重叠的时间间隔点作用的细胞增加或减少与其他细胞避免重叠。同样,所有的细胞都在一行进行了综述,以防止细胞之间的重叠。回顾一行后,我们将回顾下一行,并在回顾所有的行一个过道,我们将审查其他通道到最后细胞矩阵的研究进展。回顾过去的细胞后,解决方案的变化从一个不可接受的解决方案到一个可接受的解决方案。
4.5。Nondominated排序
对解决方案进行排序,我们使用凸性拥挤距离的方法。对于每一个染色体,我们有以下: 在哪里是我th目标函数和和最高的和最低的值吗我th目标函数值,分别。F最近的价值生成被认为是客观的价值。解决方案具有较高的距离拥挤是更好的解决方案。
4.6。存储库
由于可接受的解决方案生成的每个迭代的数量非常小,如果我们使用标准的算法来解决这个问题,由于重叠的许多解决方案将是不可接受的。如果消除了这些解决方案,算法的速度大大降低,需要很长时间的算法来找到问题的最优解。因此,为了解决这个问题,我们正在寻找一种新的方法将不可接受的可接受的解决方案。
该方法是使用一个存储库存储不可接受的解决方案产生的突变1型和交叉算子。因为有一个高概率的一些解决方案所产生的变异和交叉操作符是不可接受的解决方案,因为溶液基质细胞间的重叠时,这些不可接受的解决方案生成存储在存储库执行变异算子2型以后,他们转换为可接受的解决方案。因为变异算子的时间消耗2型是重要的,并不是所有的解决方案都是送到这个操作符。因此,居库解决方案之后,一定数量的最好的解决方案被发送到变异算子2型,然后转化为可接受的解决方案。
的循环进入解决方案库和离开从存储库解决方案如图3。唯一的存储库的输入是不可接受的解决方案由交叉和变异类型1运营商。因为仓库的容量是有限的,不可能存储所有不可接受的解决方案生成的存储库中,在每个迭代中,一些低层次的解决方案在存储库中存储库中移除,这样有足够的空间来存储在下一次迭代生成的解决方案。删除解决方案的数量在每一次迭代的数量取决于解决方案进入存储库和解决方案的数量从存储库中删除,这样的解决方案存储在存储库中不超过容量的存储库。
使用的存储库NSGA2算法也有不利的一面。第一个缺点是增加了为每个迭代算法的计算时间。虽然算法的存储库的存在会促使更多的最优解产生的算法在每次迭代中,更重要的时间每个迭代MNSGA2算法花费比普通NSGA2算法。这是因为执行操作所需的时间的2型变异算子。比较时间之间的每个迭代算法在数值例子和结果部分执行。使用这种方法的另一个缺点是,许多2型变异算子生成的解决方案可能不再是最优的解决方案。2型变异算子将不可接受的解决方案转换成可接受的通过改变每个解决方案的值矩阵细胞与其他细胞矩阵相同的解决方案,但是这些改变可能会导致改变解决方案的排名。
4.7。修改NSGA-II算法
该算法背后的想法是增加产生最优解的速度。通过添加一个存储库和一个发达突变算法(突变类型2)常规NSGA-II算法,修改NSGA-II算法创建,一个额外的循环比常规NSGA-II算法。在新算法中,不可接受的最佳解决方案,被删除的危险,因为有重叠在矩阵解决方案和另一个细胞一个细胞相同的矩阵解存储在存储库中。这些解决方案转换为可接受的解决方案的帮助下突变2型算子,然后添加到候选解决方案。我们NSGA-II算法进行修改,如图4。
5。数值例子和结果
我们使用了真实的数据收集从一个公司,生产汽车零部件的计算实验。在这个公司里,有40个机器生产金属零件在生产线。该生产线有10站在每个车站那里有4台机器。所有机器车削或铣削机床在预防性维修调度。
这些机器有一些移动部件,如主轴工具改变,炮塔,托盘改变,和移动表,由于他们的机动性都是贬值的。除了这些部分的流动,加工振动、腐蚀的零件由于使用冷却液,和损坏的机器零件,因为金属芯片增加机器的折旧部分。通常,滚珠轴承,轴,不同部位的冷却系统,工具改变,托盘改变预防性维护。
5.1。结果Modified-NSGA-II、NSGA-II SPEA-II
我们通过随机初始化算法生成一个100人口的解决方案。初始种群的数量和提供的解决方案变异和交叉操作,仓库容量,和不可接受的解决方案的最大数量从仓库送到运营商突变2型是不同的根据他们的重要性问题。对于这个问题,值的算法和存储库中演示了规格表1。
Modified-NSGA-II算法的性能评估和比较的两个算法NSGA-II SPEA-II,我们定义一组参考基于100年最佳候选解决方案通过Modified-NSGA-II, NSGA-II, SPEA-II。后复制1000次每100次迭代。表2说明了许多nondominated的解决方案(NNS)在所有三个算法,通过引用和如表所示2,Modified-NSGA-II算法有更多nondominated方案比其他两种算法。我们进行了实验用MATLAB平台基于windows的服务器上的16 GB的RAM, gh i7处理器,和1.8。
进行进一步的评估,我们比较一般的NSGA-II Modified-NSGA-II算法的性能和SPEA-II算法使用三种方法:倒产生距离,分布度量、距离度量。MNSGA-II之间的比较的结果,NSGA-II, SPEA-II表中可以看到3。
5.2。倒产生距离
这种方法是用来评估多样性和收敛,可以计算如下: 在哪里等于均匀分布在一个真正的帕累托前沿,是一个nondominated解决方案获得的选择算法,是一个解决方案,属于 ,和ⅆ(ν, )等于最小欧氏距离和点 。结果见表3说明,一般来说,modified-NSGA-II算法IGD值低于其他两种算法。
5.3。三角洲指数
在三角洲地区的方法,在帕累托分布的解决方案前检查考虑以下方程: 在哪里d我连续两个解决方案之间的欧几里得距离的帕累托面前年代最优解决方案和是平均d我。三角洲的价值越低,越均匀帕累托分布。根据表中指定的值3SPEA-II算法后,用微小的区别,modified-NSGA-II算法有最小值。
5.4。距离度量
帕累托前面之间的距离的一致性,分析了参考集间隔度量方法。较低的空间参数(SP)值表示一个更统一的帕累托前和参考之间的距离。SP值计算如下:
在这种情况下,d我解的最小距离吗我从参考点。是平均的d我为年代最优解集,根据表中指定的值3显著差异,与其他两种算法相比,SPEA2算法有一个统一的参考和帕累托之间的距离。
5.5。操作时间
就像前面提到的4.6,虽然MNSGA2每个迭代算法生成更好的解决方案相比SPEA2和NSGA2算法由于存在存储库,它需要更多的时间来执行计算。2型变异算子越复杂,需要更多的时间来执行计算。此外,更多的机器和零件需要预防性维护,更多的细胞解矩阵。在这种情况下,重叠的存在的概率较高,和不可接受的解决方案的存在的概率增加。同时,更多的2型变异算子的计算应解决矩阵的变化并产生一个可接受的解决方案。增加2型变异算子的计算量增加的整个操作时间为每个迭代算法。图5代表MNSGA2之间的计算时间这个问题,NSGA2, SPEA2算法。在图5,MNSGA2 NSGA2的平均手术时间和SPEA2算法显示10操作,每一个都有1000次迭代。
5.6。健身生成的解决方案
另一个问题,MNSGA2算法相比,这两个NSGA2和SPEA2算法适应性的变化或排名后的解决方案将不可接受的解决方案转化为可接受的2型变异算子。如前所述,2型变异算子将不可接受的解决方案转换成可接受的解决方案的通过改变值矩阵的细胞与其他细胞重叠,但检查的健康解决方案后,它变得明显,获得的值可能不再是最优解,可能是由其他解决方案中获得帕累托。这些解决方案中排名后,不帮助加快算法找到最优解。在这种情况下,占总数的73.6%解决方案产生的突变1型和交叉操作符是不可接受的,和68.7%的2型变异算子生成的解决方案是由其他帕累托前面的解决方案。这些结果得到的平均10倍手术MNSGA2算法,每个操作1000次迭代。
6。结论
在这项研究中,我们开发了一个模型来解决调度问题在串并联系统的预防性维护。在这个模型中,我们解决的问题点在串并联系统进程调度,然后把这个集成模型变成了一个数学模型。在这个数学模型中,我们考虑一个矩阵作为决策变量,每个单元格代表点的时间调度过程为一个特定的单个机器的一部分。在未来,数学模型的规模可以改变通过添加更多的决策变量来获取更多的结果。然后,我们定义的目标函数,以找到最优的解决方案。此外,我们提出了一种改进遗传算法与定制的变异和交叉操作,让我们找到一个更好的解决方案相比,现有的算法。我们实现了我们的实验案例研究来自真实的数据分析和比较了解决方案。
我们的结果证实MNSGA-II算法更好的性能,提出进化算法本身不一定提供更可行的最优解决方案,需要定制运营商更好的计算效率。在未来的工作中,我们将考虑更多的目标函数的调度专用设备的使用点过程中,备件供应,受过专门训练的人员的就业利用修改后的NSGA-II,提出了研究。分析点的调度时间行动为制造企业提供有价值的信息来确定精心调度决策和规划,防止生产中断和增加生产。
缩写
参数的数学模型| R我: | 生产数量的减少 |
| RT: | 总生产的机器 |
| R年代: | 还原速度 |
| T总: | 维护团队工作时间总数 |
| Ti, j, k: | 时间分配采取点行动kth修复部分jth机器的我th |
| 年代我,我: | 备件的价格jth机器的我th |
| CPM我,我: | 点的成本部分jth机器的我th |
| P我,我: | 小时的工作我th机和jth部分 |
| C我,我: | 成本的一部分j机器的故障我th |
| : | 小时不活动的机器我和部分j |
| 问我,我: | 维护操作的机器上执行我和部分j |
| : | 机器的活动成本我。 |
数据可用性
没有数据被用来支持本研究。
的利益冲突
作者宣称没有利益冲突。
确认
这部分工作是由中国国家自然科学基金支持下合同号71761030和内蒙古自然科学基金2019 lh07003合同号。