武浩远,黎 荣,王 建,钱一山
(西南交通大学机械工程学院,四川 成都 610031)
近年来,越来越丰富的商品供应使市场竞争越来越激烈,同时客户需求也越来越多样化和个性化,大规模定制的生产方式已经成为企业为赢得市场竞争所竞相采取的一种生产方式。产品配置技术因其能有效地组合企业已有可配置组件的研发技术、快速形成符合定制要求的新产品,因而成为大规模定制的关键支撑技术之一[1]。
目前学界对产品配置研究较多的是单一阶段配置,即从客户需求直接映射得到满足约束的实例。文献[2]通过构建模块实例与客户需求的相关性矩阵,依据客户需求直接求解模块实例,得到最终配置方案。文献[3]根据客户需求进行实例的匹配,依据相似度进行最佳实例的选择。复杂产品的某一具体功能可由不同的功能原理或结构实现,采用不同的功能原理或结构,产品的性能会存在差异,并且客户对产品的性能需求有不同的偏好,因此在复杂产品配置设计中需要先进行功能原理或结构配置,再进行实例配置的两阶段配置。目前也有学者开始研究两阶段配置设计方法,文献[4]提出适应性产品平台,在适应性产品平台的基础上先进行结构类型的配置,以确定产品结构,再进行下一阶段模块的参数设计,以确定最终实例。文献[5]通过基于约束满足问题的方法进行系统类型以及实例的两阶段配置。由于目前学界对两阶段配置的研究较少,第一阶段的配置还未形成统一的术语,将结构类型配置、系统类型配置等统称为类模块配置。
上述两阶段配置研究中类模块配置只考虑客户对类模块性能的要求,而未考虑客户对成本的要求。然而,成本是客户是否会选择一个产品的重要因素,在类模块配置中考虑成本,可较早地与客户进行成本上的沟通,使最终配置方案在成本约束下尽可能地满足客户的性能需求。为此,提出一种考虑成本的客户需求驱动的两阶段配置设计方法,包括类模块配置及模块实例配置。在类模块配置中,以类模块配置方案所能提供的性能与客户需求相关度最大为目标,以模糊成本为约束,建立数学优化模型,采用遗传算法进行类模块的配置求解,得到最优的类模块配置方案;在模块实例的配置中,以约束满足问题(Constraint Satisfaction Problem,简称CSP)对模块实例进行配置,采用粒子群算法进行配置求解,得到最终的配置方案。
产品族主结构描述了可配置模块化产品的组成情况[6],可以支持系列产品变体的衍生。目前的产品族主结构只包括功能模块和模块实例,无法支持客户需求驱动的两阶段配置设计。因此,基于CBOM 以及“与/或”图的方法,构建了适合两阶段配置的产品族主结构,如图1 所示。拓展后的产品族主结构由功能模块、类模块以及模块实例组成。功能模块是产品组成的基本单元。类模块是依据结构类型的不同对功能模块的分类。结构类型的不同由功能原理、材料、结构设计的不同引起的,如由于功能原理的不同,将牵引电机模块分为三相异步电机和永磁电机;由材料的不同,将车体模块分为铝合金车体和不锈钢车体;由结构设计的不同,将车轴分为实心车轴和空心车轴等等。模块实例是类模块的实例化对象,具有具体参数值。其中,功能模块与产品族之间为“与”关系,功能模块与类模块之间为“或”关系,类模块与实例之间也为“或”关系。此外,实例层之间的配置约束描述了不同类模块中实例之间的约束规则。
图1 产品族主结构模型Fig.1 The Model of Product Family Main Structure
图2 两阶段配置设计框架图Fig.2 The Frame Diagram of Two Stage Configuration Design
提出的客户需求驱动的两阶段配置设计方法,包括类模块配置和模块实例配置,配置过程,如图2 所示。第一阶段类模块配置可以描述为:以客户需求为驱动因素,在成本约束下,从各个功能模块中各选取一个类模块,以使类模块配置方案在成本约束下满足客户需求。具体方法是:以类模块配置方案的性能与客户需求之间相关度最大为目标,以基于区间数表示的模糊成本为约束,构造数学优化模型,然后基于遗传算法求解得到最优的类模块配置方案。在类模块的配置基础上,第二阶段模块实例的配置可以描述为:基于类模块配置结果,从各个类模块中选取一个实例,得到最终的模块实例配置方案。具体方法是:采用基于约束满足问题的方法进行模块实例配置的建模,然后基于粒子群算法求解得到最终的模块实例配置方案。
3.1.1 类模块配置优化模型
将类模块配置当做是一个组合优化问题,即在成本约束下,得到产品性能与客户需求最相关的类模块配置方案。类模块的配置优化模型:
式中:S—类模块配置方案的产品性能与客户需求相关度,其值越高,代表产品性能与客户需求越切合;N—功能模块的数量;Ni—第i 个功能模块中类模块数量;sik—客户需求与类模块Mik的相关度;σik—类模块在配置时是否存在的二元决策变量(1 为存在,0 为不存在);Cz—类模块的配置成本;Cp—客户能承担的成本。
(1)目标函数的构建
类模块配置的目标是使产品性能与客户需求相关度最大,目标函数构建的关键是确定需求与类模块之间的相关度,通过客户需求与产品性能相关度矩阵MPC、产品性能与类模块相关度矩阵MSP确定。
式中:hij—第i 个性能与第j 个需求之间的相关度;ri,k,l—第i 个功能模块的第k 种类模块与第l 个性能的相关度。
设客户需求由CR=(CR1,CR2,…,CRz)表示,其中CRi为客户的第i 项需求,z 为需求项的总数。需求权重Wc=(wc1,wc2,…,wcz)表示客户对需求的偏好,采用层次分析法确定。产品的性能由P=(P1,P2,P3,…,Pn)表示,其中Pi为第i 项性能,n 为性能的总数,其权重由Wp=(wp1,wp2,wp3,…,wpn)表示,采用层次分析法确定。构建两个相关度矩阵分别为式(3)、式(4),均采用9、3、1、0 表示强、中、弱、无的相对关系。
综合权重以及两个相关度矩阵,得到客户需求与类模块Mik的相关度sik表示为:
(2)模糊成本约束构建
不同类模块有不同的功能原理、结构,响应的性能有差异,成本范围不同。在此考虑的成本为外购件的采购成本或自制件的制造成本。
通过统计类模块中实例的成本,以区间数a=(aL,aU)表示类模块的模糊成本,其中aL,aU分别表示区间的下界与上界。所选类模块的总成本采用区间数A=(AL,AU)表示,其中AL为总成本区间数的下界之和,AU为上界之和。
客户所能承受的成本Cp与配置总成本A 的关系分为三种情况,如图3 所示。如果客户所能承受的成本Cp大于AU,则成本约束一定满足;如果Cp在AL与AU之间,有可能满足成本约束;如果Cp小于AL,则成本约束一定不满足。
图3 模糊成本约束的分类Fig.3 The Classification of Fuzzy Cost Constraint
针对Cp大于等于AU以及Cp在AL与AU之间两个成本约束,分别进行类模块的配置优化,得到两个类模块配置方案,与客户进行沟通,对两个配置方案进行选择。模糊成本约束式(2)可分为如下两个成本约束。
式中:mik—配置产品所需要Mik的数量—类模块Mik成本区间的上界;—类模块Mik成本区间的下界。
3.1.2 类模块配置方案求解
遗传算法具有运算速度快、稳健性强的特点,对优化问题可以有效求解[7],因此采用遗传算法对类模块配置优化问题进行求解,对算法的设定如下:(1)编码,类模块的变化为离散变化,因此采用十进制编码进行个体编码,每个个体代表一个配置方案;(2)适应度函数设计,将目标函数S 作为种群个体的适应度,对约束采取丢弃策略,即如果约束不能满足则令目标函数S 足够小;(3)选择,依据每个个体的适应度,采用轮盘赌的方式进行个体的选择;(4)交叉,依据pc=(fmax-fbigger)/(fmax-fave)判断两个个体是否进行交叉操作,其中fmax为种群中最大适应度,fbigger为选择的个体的中较大的适应度,fave为种群评价适应度,如果pc大于交叉率则进行交叉操作,否则不进行交叉操作;(5)变异,依据p=(fmax-f)/(fmax-fave)判断个体是否进行变异操作,其中f 表示选择个体的适应度,如果p 大于变异率则进行变异操作,否则不进行变异操作。
3.2.1 模块实例配置模型
将模块实例配置当做是一个求解可行解的问题,即从已有的模块实例中求解出满足约束的可行实例组合。模块实例配置过程中涉及大量的知识,采用CSP 的配置方法易于知识的表示、推理以及维护[8]。
约束满足问题可以被定义为三元组CSP=(V,D,C),其中V为有限个变量的变量集合,用V={v1,v2,…,vn}表示;D 为变量值域,变量vi的有限值域由为变量vi的第j 个值;C 为变量之间的约束集合。
在模块实例的配置中,产品配置与约束满足问题的对映关系,如表1 所示。在模块实例求解中,建立变量之间的约束,用以选配模块实例。检验模块实例的组合中的变量值组合是否满足建立的变量约束,如果满足则输出模块实例组合,如果不满足则需要设计新实例。
表1 产品配置与约束满足问题的对映Tab.1 Mapping between Product Configuration and Constraint Satisfaction Problems
3.2.2 模块实例配置方案求解
粒子群算法搜索速度快、效率高,适合于约束满足问题,采用粒子群算法进行约束满足问题的求解[5]。算法设定如下:(1)粒子群初始化,采用十进制编码随机初始化设定各粒子的位置和初始速度,粒子的位置为模块实例之间的组合,初始速度为更新时采用的速度;(2)适应度,将粒子不满足约束规则的数量作为目标函数,即如果适应度为0,则粒子满足所有约束;(3)粒子速度及位置的更新,速度更新公式采用其中w 为惯性权重,c1为认知系数,c2为社会系数,r1、r2为随机系数,pibest为粒子的自身最优解,pgbest为种群最优解。位置更新公式采用:
选取某主机厂生产的地铁转向架为实例来探讨上述设计方法的可行性。目前该主机厂在地铁转向架的产品族结构中的功能模块及类模块相关信息,如表2 所示。
通过梳理地铁产品的招标技术条件,与车轮、车轴、电机、一系悬挂类模块相关的产品性能进行归纳为:P1噪声小、P2平稳性指标好、P3牵引电能消耗少、P4轻量、P5舒适度指标好、P6修复时间短,采用层次分析法确定性能的权重:(0.113,0.205,0.173,0.14,0.215,0.154)。为了便于评价,列出性能的具体评价值,如表3 所示。
表2 地铁转向架模块信息Tab.2 Information of Metro Bogie Module
表3 性能评价标准Tab.3 Performance Evaluation Criterion
客户的需求信息为:C1节能环保、C2易维修、C3舒适性好,采用层次分析法确定相应权重为(0.45,0.36,0.19),并且经过对成本要求的分解,在车轮、车轴、电机、一系悬挂上的成本不超过130 万元。分别建立客户需求与产品性能以及类模块与产品性能的相关度矩阵,如表4、表5 所示。
表4 客户需求与产品性能的相关度矩阵Tab.4 Correlation Matrix between Customer Demands and Product Performances
表5 类模块与产品性能的相关度矩阵Tab.5 Correlation Matrix between Generic Modules and Product Performances
根据式(1)建立适应度函数,采用轮盘赌的方式进行个体的选择,将交叉概率设置为0.3,变异概率设为0.2。以式(5)为约束时,设置随机产生100 个体,并且循环100 次,得到仿真结果,如图4(a)所示。在迭代次数超过23 次时种群的评价适应度趋于稳定,目标函数为36.8,得到的最后配置方案为:(空心车轴、弹性车轮、三相异步电机、转臂式一系悬挂)。以式(6)为约束时,设置随机产生100 个体,并且循环100 次,得到仿真结果,如图4(b)所示。在迭代次数超过25 次时种群的评价适应度趋于稳定,目标函数为50.2,得到的最后配置方案为:(空心车轴、整体车轮、永磁同步电机、转臂式一系悬挂)。
图4 遗传算法迭代曲线Fig.4 The Iterative Curve of Genetic Algorithm
表6 地铁转向架部分约束规则Tab.6 Partial Constraints of Metro Bogies
表7 模块实例信息Tab.7 Information of Module Instances
选择以(空心车轴、弹性车轮、三相异步电机、转臂式一系悬挂)为类模块配置方案,在此基础上进行模块实例的配置。为简化计算,选择对三相异步电机以及弹性车轮进行模块实例配置,齿轮箱与二者联系紧密,增加齿轮箱的模块实例配置,建立相关约束模型,如表6 所示。模块实例以及实例的参数信息,如表7 所示。对客户需求进行分解映射,得到技术指标为:总功率3500kW,运行速度100km/h,最高试验速度120km/h,所需牵引力120kN。在粒子群算法中,取认知系数c1为2,社会系数c2为2,进行粒子位置的更新。由于实际组合并不多,在此设置随机产生20 个个体,进行100 次循环迭代,得到仿真结果,如图5 所示。在迭代次数超过5次时种群的评价适应度趋于稳定,满足约束组合的数量为2,得到的最后配置方案为:(三相异步电机实例3、齿轮箱实例1、弹性车轮实例1)与(三相异步电机实例3、齿轮箱实例1、弹性车轮实例2)。可通过产品的全生命周期或者客户需求对配置方案进行评价,选择合适的配置方案。如果没有满足全部约束的配置方案,可根据不满足约束的信息进行模块实例的修改。
图5 粒子群算法迭代曲线Fig.5 The Iterative Curve of Particle Swarm Optimization Algorithm
提出了包含类模块配置和模块实例配置的客户需求驱动的两阶段配置设计方法,以类模块配置方案的性能与客户需求的相关度最大为目标,以模糊成本为约束,建立类模块配置的数学优化模型,基于CSP 构建模块实例配置的模型。成功应用遗传算法对类模块配置模型求解以及粒子群算法对模块实例配置模型求解。得到了响应客户需求偏好以及成本的最优类模块配置方案,以及满足约束的模块实例配置方案。