练建锋,黄 彬
(福州大学机械工程及自动化学院,福建 福州 350108)
模具行业由于资源分布不均、利用率低以及模具开发周期长、成本高等不足,导致其发展缓慢,难以适应市场快速变化的需求[1]。云制造是一种面向服务和基于知识的网络化智能制造新模式,它基于云计算思想,将各类制造资源和制造能力虚拟化、服务化,并对其进行统一、集中的智能化管理和经营[2-3]。本文将云制造模式应用于模具开发制造,构建高度共享的模具制造云平台,实现制造资源共享与协同管理,并针对其中的服务匹配技术展开研究。
服务匹配是云平台运行的关键环节,针对云制造中的服务匹配问题已有大量的研究文献。Huang等[4]提出了一种混沌控制算法求解云制造服务组合优化问题;Zhou等[5]提出了一种多种群并行自适应差分人工蜂群算法求解复杂服务组合优化问题;张严凯等[6]在服务质量(QoS)评估模型基础上提出一种动态参数蚁群算法;郑炜等[7]建立了基于双层蚁群算法的服务组合优选模型。模具云制造平台上的服务匹配问题是多任务(一个模具制造项目可划分为多个任务)组合优选问题,需要注意以下几点:1)考虑模具各制造任务之间的时序关系和物流关系;2)云平台旨在实现绿色制造,要考虑各任务的制造能耗和物流能耗;3)考虑云平台上的服务评价具有时间衰减性的特点。目前,综合考虑上述特点的研究成果还不够丰富,有必要开展进一步的研究。本文建立了以成本、能耗和整体服务评价为QoS指标、时序关系和交货期为约束的模具云平台服务匹配模型,并设计了一种改进的布谷鸟算法求解该模型,仿真结果验证了算法的有效性。
参照云制造的多层体系架构,本文提出模具制造云平台的6层体系架构,包括物理资源层、虚拟资源层、服务层、应用层、管理层和用户层,如图1所示。
图1 模具制造云平台体系架构
1)物理资源层:该层是整个云平台的物理基础,为云平台中各类服务的运行提供物理支持。
2)虚拟资源层:该层主要为分布在各地的模具制造资源提供虚拟支持和管理,包含设备虚拟资源、软件虚拟资源、知识虚拟资源等。
3)服务层:该层是云平台的核心功能层,主要为用户在模具制造过程中的需求提供各种资源服务,如模具设计服务、模具仿真服务、模具加工服务等。
4)应用层:该层为用户提供各种云服务应用,主要包括资源的注册发布、服务搜索匹配、需求信息发布等应用。
5)管理层:该层对云平台的用户、服务交易、信用等进行管理,保障用户的规范化和用户信息的安全性,为服务运行和服务调用提供良好的环境。
6)用户层:该层是用户和云平台进行交互的桥梁,用户可以通过计算机、平板电脑、手机等普适化终端进行云服务的访问和调用。
随着模具制造云平台应用的不断深入,云平台所提供的服务数量也呈爆炸式增长,如何为用户快速、准确地搜索到所需的云服务是云平台需要解决的关键问题之一。服务匹配搜索功能是云平台的核心功能,下文对云平台中的服务匹配技术展开进一步研究。
模具制造云平台具有分布异构集成、按需服务、协同制造等特点,可以将云平台上的模具制造项目T分解为不可再分、能被单一制造云服务完成并且具有时序关系的n个任务Ti,i=1,2, …,n,T={T1,T2,…,Tn}。如果存在任务j只能在任务i之后进行,那么任务i和任务j称为一组相关任务对,用(i,j)表示,(i,j)∈Q,Q为所有相关任务对的集合。针对各个任务需求,首先从云服务池中初选出满足任务Ti需求的候选服务集Si={Si1,Si2,…,Sim},m=1,2,…,ri,m为任务T具有的服务总数,由于不同的任务服务集的数量不一样,因此ri表示不同服务集的总数;然后根据一定的优化目标,从每个任务的候选服务集Si中挑选一个候选服务Sim(m=1,2,…,ri),组成一个最佳服务组合来完成整个模具制造项目。
本文建立了基于QoS的模具制造云平台服务匹配模型,QoS指标包括成本、能耗和整体服务评价。
服务评价是指一次服务结束后对其综合表现优劣的评估,本文用[1,10]区间内的自然数来表示服务的优劣,数值越大评价越优。随着云平台应用的不断深入,云平台上的每个服务都存在着大量用户在不同时间段的评价,由于同一服务在不同时期的服务评价分值差异可能较大,单次的服务评价并不能代表服务的整体水平,一般来说,距离当前服务时间越久的服务评价对当前服务选择的参考性越小,因此本文提出了一种基于时间衰减的服务评价更新机制。该机制用服务序数表示时间的远近,服务序数越大表示该评价在时间上越靠近本次服务,其衰减也就越小。云服务在该评价更新机制下所得到的综合评价分值Z即为整体服务评价,其计算模型如下:
(1)
式中:x为当前服务序数;k为总服务序数;Qx为服务序数为x时的服务评价;w(x)为第x次服务评价的衰减系数,其值越大衰减越小,若x越接近于k,其值越接近1,表明该服务评价的可参考性越大。w(x)的计算公式如下:
(2)
该模型综合考虑了云平台的历史服务评价记录以及时间衰减对整体服务评价的影响,能够给当前服务使用者展示比较客观的服务水准,为后续服务匹配提供参考。
本文以极小化总成本C、极小化总能耗E和极大化总服务评价Z(总服务评价为服务组合中各服务的整体服务评价之和)为优化目标建立如下数学模型:
(3)
(4)
(5)
(6)
Dim+timjk≤Bjk,(i,j)∈Q
(7)
Dnm≤D
(8)
其中:
式中:ρim为候选服务Sim的状态,其值取1或0,取1表示该服务被选中完成任务Ti,取0表示该服务未被选中;Bjk为候选服务Sjk的预期开工时间;Dim为候选服务Sim的预期完工时间;D为交货期;timjk为候选服务Sim到候选服务Sjk的物流时间,其中(i,j)∈Q;Cim为候选服务Sim的制造费用;Cimjk为候选服务Sim到候选服务Sjk的物流费用,其中(i,j)∈Q;Eim为候选服务Sim的制造能耗;Eimjk为候选服务Sim到候选服务Sjk的运输能耗,其中(i,j)∈Q;Zim为候选服务Sim的整体服务评价;rj为不同服务集的总数;Dnm为最终完工时间。
式(3)~(5)分别为极小化总成本、极小化总能耗和极大化总服务评价的目标函数,式(6)表示一个任务只能由一个候选服务完成,式(7)表示任务的时序关系约束,式(8)表示交货期约束。对于上述多目标优化问题,一般情况下不可能存在一种使得所有目标都同时满足的服务组合方式,为此式(3)~(5)可以用如下优化目标函数替代:
maxQoS=ω1C′+ω2E′+ω3Z′
(9)
(10)
(11)
(12)
式中:Cmax和Cmin分别为所有服务组合总成本的最大值和最小值;Emax和Emin分别为所有服务组合总能耗的最大值和最小值;Zmax和Zmin分别为所有服务组合总服务评价的最大值和最小值。
布谷鸟搜索(cuckoo search, CS)算法是受布谷鸟孵育寄生现象启发而提出的一种元启发式算法,通过Lévy飞行搜索机制产生新的鸟巢位置并采用精英保留策略更新当前鸟巢位置,按照鸟巢主人发现外来鸟蛋的概率舍弃差的鸟巢位置并随机更新,最终得到最优鸟巢位置[8]。由于布谷鸟搜索算法存在易陷入局部最优和收敛速度缓慢的问题[9],因此本文设计了一种改进布谷鸟搜索(improved cuckoo search, ICS)算法,求解以上模具云平台服务匹配模型。
1)编码方式。
应用布谷鸟算法求解服务匹配问题时,每一个鸟巢的位置对应一个服务组合方案。用一个h维向量X表示鸟巢的位置,X=(x1,x2,…,xi,…,xh),其中xi表示任务Ti由服务Sixi完成。
2)适应度函数构造。
本文构造的适应度函数F(X)的表达式为:
F(X)=f(X)-p(X)
(13)
式中:f(X)为目标函数;p(X)为惩罚函数。当鸟巢位置满足全部约束时,其解为可行解,p(X)的值为零;不满足全部约束时,其解为不可行解,p(X)的值为足够大的正值。
3)位置更新改进。
布谷鸟算法的位置更新公式为:
(14)
(15)
式中:u,v均为正态分布随机数;β=λ-1,且0<β<2。
布谷鸟能根据其可视范围调整飞行的路径,增强局部搜索能力,故式(14)可改进为:
(16)
式中:ζ为下一个鸟巢位置对当前布谷鸟的吸引程度,其值为ζ=φ×e-r2,其中φ为下一个鸟巢位置对布谷鸟的吸引属性,r为距下一个鸟巢的距离。
4)步长因子改进。
由于布谷鸟搜索算法前期大步长有利于扩大搜索范围,容易搜索到全局最优,搜索后期,小步长有利于提高搜索精度,因此针对步长因子做出如下改进:
α=α0exp(-t/Tmax)
(17)
式中:α0为初始步长因子;Tmax为最大迭代次数。
改进算法流程如下:
1)设置鸟巢种群规模M、最大迭代次数Tmax、初始步长因子α0和鸟巢主人能发现外来鸟蛋的概率Pa(Pa∈[0,1])等参数。初始化鸟巢位置,以式(13)为适应度函数,并置当前迭代次数t=1。
2)计算每个位置的适应度值和平均适应度值,找出适应度值最大的位置,为当前最优解。
3)保留当前最优解,并对其余(M-1)个位置进行更新,适应度值在平均适应度值之上的位置采用式(14)进行更新,其余位置采用式(16)进行更新(增加算法解的多样性,避免陷入局部最优,同时提高算法的收敛速度)。
4)对新产生的(M-1)个位置,分别计算它们的适应度值,并与上次迭代过程中产生的最优解进行比较,如果得到的适应度值大于当前最优解,则更新当前最优解,否则最优解保持不变。
5)用一个随机数θ∈[0,1]作为鸟巢主人发现外来鸟蛋的可能性,并将θ与Pa进行比较。若θ大于Pa就随机更新一次鸟巢位置,否则位置不变。
6)若t 7)输出最优解。 下文通过一个算例来验证本文提出的模具制造云平台服务匹配模型和算法的可行性和有效性。云平台上一模具制造项目可以分解为6个任务:T1,模架制造,需要大型铣床和磨床;T2,型腔和型芯制造,需要数控机床;T3,电极制造,需要精密数控机床;T4,镶块加工,需要电火花机床;T5,试模,需要大型注塑机;T6,修模,需要有经验的模具工人。各任务的时序关系如图2所示。经初选后得到各任务候选服务集的费用、能耗和整体服务评价以及时间数据分别见表1~3。 图2 任务之间的时序关系 表1 候选服务集的费用数据表 表2 候选服务集的能耗和整体服务评价数据表 表3 候选服务集的时间数据表 在同一台式计算机上,分别采用布谷鸟搜索算法(CS)和改进布谷鸟搜索算法(ICS)搜索最佳服务组合。成本、能耗、总服务评价的权重分别为0.5,0.3,0.2,交货期在服务开始后的第31天;初始布谷鸟的种群大小为20,最大迭代次数为200。分别运行CS和ICS算法各300次,两者的300次平均搜索进程对比如图3所示,优化结果对比见表4。 从图3可以看出,相同条件下,ICS达到最优解的迭代次数比CS少,收敛速度更快。从表4可以看出,在300次运行中CS算法有266次收敛于全局最优解,收敛率为88.7%,容易陷入局部最优解,而ICS算法则全部收敛于全局最优解,收敛率为100%,因此ICS较CS的收敛性更好,寻优稳定性更强。 图3 CS和ICS的平均搜索进程对比 表4 CS和ICS的优化结果对比 利用ICS算法求解得到的最优解为X=[3 2 3 3 2 1],即任务T1选择服务S13,任务T2选择服务S22,任务T3选择服务S33,任务T4选择服务S43,任务T5选择服务S52,任务T6选择服务S61。将模型求解得到的最优服务组合推荐给用户,该服务组合方案的总成本为48.0万元,总能耗为3.735×106kJ,总服务评价得分为52.4。 本文构建了模具制造云平台的6层体系架构,研究了云平台的服务匹配问题。综合考虑模具各制造任务间的时序关系、模具云平台的绿色制造和服务评价衰减因素,建立了基于QoS的模具制造云平台服务匹配模型。在布谷鸟搜索算法中引入吸引度概念,设计了一种改进的布谷鸟搜索算法求解该模型。算例分析表明该方法可行、有效,为模具制造云平台的服务匹配研究提供了一种方法和途径,为后续云平台的整体构建提供了理论基础。4 算例分析
5 结束语