APP下载

面向产品设计的BOM配置研究

2010-06-04曾富洪

中国机械工程 2010年20期
关键词:齿轮泵实例约束

曾富洪 周 丹 郭 刚

1.攀枝花学院,攀枝花,617000 2.重庆大学,重庆,400044

0 引言

BOM(bill of material)是表征产品结构的物料清单,BOM配置是根据预定义的部件集以及部件之间的约束关系,遵循一系列的规则,使产品技术属性与客户需求逐级匹配,通过零部件之间的合理组织,得到满足设计要求的工程BOM(engineering BOM,EBOM)的产品设计过程[1]。BOM的快速配置设计是实现大规模产品定制开发的一项关键技术。目前,国内外学者对此进行了大量的研究,相应的实现策略大致可以分为如下几类:①基于实例的BOM配置方法[2];②基于约束的BOM 配置方法[3-4];③基于规则的 BOM 配置方法[5];④基于遗传算法的 BOM 配置方法[6];⑤面向对象 的 BOM 配 置 方 法[7-8];⑥ 基 于 资 源 的BOM配置方法[9];⑦基于结构的BOM 配置方法[10]。

上述BOM配置设计技术为BOM配置知识描述与配置求解提供了参考,但这些方法主要针对能直接从配置模型中求取出顾客需求满意解(EBOM)的情形。而实际中顾客需求和企业设计制造水平在不断地升级演进,使得很多情况下不能直接从配置模型中求取满意解,只能产生一个BOM配置中间态(变量BOM)。建立具有自适应演进功能的BOM配置模型,并由此得到尽可能满足顾客需求的优化变量BOM,使之快速实例化为EBOM,是面向产品设计的BOM配置中需要解决的瓶颈问题。为此,本文将参数化设计和BOM配置技术相结合,建立了基于参数化设计的BOM配置模型,结合约束满足理论给出了求解算法,并通过实例证明了该模型和算法的有效性。

1 面向参数化设计的BOM配置模型

面向产品设计的BOM配置任务可用三元组T=(D,N,R)描述,其中,D 为可配置资源的集合;N为配置要求,如设计要求;R为配置结果,如EBOM、工程图等。BOM配置过程是以可配置资源为基础,以顾客需求为输入,在一定的约束条件下求解BOM结构上节点的变量,最后输出满足顾客需求的BOM配置结果的活动。这里把BOM配置分成了两个阶段完成:第一阶段是变量BOM的获取,变量BOM指的是存在部分未完全实例化节点(变量节点)的BOM;第二阶段是变量BOM实例化为EBOM。变量BOM的获取是依据BOM知识体(knowledgebody based on BOM,KBOM),按一定的算法由计算机自动完成的;变量BOM实例化为EBOM主要借助参数化设计工具按人机交互的方式将变量节点完全实例化。基于此,结合制造企业BOM管理的实际给出BOM配置的工作模型,如图1所示,其中BOM配置器有三个区域:参考区、配置工作区和资源区。

图1 BOM配置的工作模型

参考区中的数据主要来源于KBOM、归档BOM或临时BOM,以便于设计人员参考和借用。配置区主要完成从KBOM生成变量BOM以及变量BOM的实例化工作。变量BOM实例化时可以从参考数据区中参考借用自己需要的数据,也可以根据需要录入新的数据。当BOM实例化周期长时,可以将其保存到临时BOM库进行协调;当BOM的成熟度达到100%时,通过审核将其冻结为EBOM供后续的生产制造使用,同时和KBOM关联供BOM配置使用。BOM实例化离不开开发工具支持,常用的开发工具有编码工具、CAX工具、系统工具等。其中,编码工具负责零部件编码,CAX工具负责产品的建模和分析,系统工具提供权限管理服务和邮件服务。资源区主要完成和BOM相关的CAX模型、技术文档、质量文档和工艺文档等资源的关联操作,这些资源存放于模型文档资源库中,模型文档资源库的物理位置在FTP服务器上。上述所有操作都可以置于流程的监控下完成,并且受到决策库的支持,决策库由决策表组成,决策表记录了决策条件到决策结果之间的映射。

在面向产品设计的BOM配置活动中,变量BOM的获取是瓶颈问题,变量BOM的质量直接关系到BOM的配置效率和最后生成的EBOM的质量,变量BOM的质量取决于KBOM的模型质量及其相应的配置算法。下面就KBOM的模型结构进行研究。

1.1 KBOM模型结构

KBOM是以产品族的方式对各种知识进行有效集成的,为了使BOM能有效地作为知识集成的纽带,这里采用BOM的拓展概念[11],其定义如下。

定义1 BOM是由许多与产品结构相关的配置单元有机构成在一起的复合对象,配置单元包含本体和从体两个基本部分:本体是指配置单元明确的、形式化的规范描述;从体是本体的关联对象构成的集合。

KBOM为树型结构(图2),可视为二元组KBOM =(GU,GR),其中GU、GR分别为类配置单元集合、类配置单元关系。

图2 KBOM结构

类配置单元集合GU中,类配置单元是对相似可选配置单元组成集合的抽象,第i个类配置单元可表示为GUi= (GID,GA,GC,GUi(CU),GT,GUS,GP),其中各元素的含义如下:

(1)GID 为类配置单元的标识。

(2)GA为类配置单元的属性集合。

(3)GC为类配置单元的技术规则(包括公理和技术计算)约束,表示为GC= (GCP,GCM,GCR,GCRT),这里,GCP 为技术性能参数;GCM为技术规则的数学模型;GCR为技术规则的计算结论;GCRT为计算结论的使用类型,分为直接使用和评判使用两种,其中评判使用的类型可分为越大越好型、越小越好型和阈值控制型。

(4)GUi(CU)为第i个类配置单元可选配置单 元 组 成 集 合,GUi(CU)= {CUi1,CUi2,…,CUin},其中CUij为可选配置单元。

(5)GT为类配置单元的类型,类配置单元的类型分为虚拟类配置单元和实例类配置单元。虚拟类配置单元(令GT=1)指类配置单元中无配置 单 元 实 例, 即 GUi(CU) = {CU:┐∃instance(CU)},其工程意义是该节点对应的部件由其子零部件装配而成,如图2中有阴影背景的单元。实例类配置单元(令GT=2)指类配置单元中有配置单元实例,即 GUi(CU)= {CU:∃instance(CU)},如图2中无阴影背景的单元。KBOM构建时其叶节点必须为实例类配置单元。

(6)GUS为类配置单元的配置单元形式,可分为三种:① 基本类配置单元(令GUS=1),其对应的零部件为完成产品核心功能所必需的零部件,相应的属性值是固定的,配置求解时直接选取;②可变类配置单元(令GUS=2),其对应的零部件在部件的组成结构发生变化时,可根据可变属性的取值不同来完成变形设计;③参数驱动类配置单元(令GUS=3),其对应的零部件CAD模型为参数化设计模型,其实例的生成是通过输入参数驱动生成的。如参数化设计的齿轮模型,通过输入模数、齿数、螺旋角这三个参数,便能自动生成齿轮的精确三维模型。

(7)GP为类配置单元的优先级,它针对的是可变类配置单元,按类配置单元中的配置对于产品的重要度进行划分,这里将其划分为三级:① 重 要(令GP=1);②一般(令GP=2);③不重要(令GP=3);另外当类配置单元为需要优先理的参数化类配置单元时令GP=0。

二元组KBOM中,类配置单元的关系GR包括不同层次间的父子关系和同一层次间的兄弟关系。

KBOM构成的基础是配置单元,配置单元是配置活动的主体,配置单元的知识表达设计直接关系到BOM配置的质量和效率。

1.2 配置单元的知识表达

配置单元用二元组可表示为CU =(CUO,CUS),其中CUO为配置单元本体、CUS为配置单元从体。

定义2 配置单元本体是对配置对象的明确的形式化的规范表示,可将其视为一个四元组CUO = (CID,CA,CC,CP)。

CID为配置单元的唯一标识,由其对应的零部件的编码和版本组成。

CA为配置单元的属性集合,集合中的元素CAi可表示为CAi= (AID,AName,AType,DType,AValue),其中AID 为属性标识,AName为属性名称,AType为属性类型(分为固定属性0和变量属性1),DType为属性的数据类型,AValue为属性值。属性可以是单值也可以是多值。

CC为配置单元的约束规则集合,是个二元组,表示为CC=(CD,RS),CD为约束条件集合,RS为配置结果。设CD的非空子集为cd,则cd⊆CD,cd≠Ø,Ø∉cd,把约束规则分为7类,定义如下:

(1)可选约束cd →cu ⊆ {CUi,CUj,CUk,…},表示在cd 条件下选取集合{CUi,CUj,CUk,…}的子集cu,其中cu可以为空集;其工程意义是选与不选配置单元集合{CUi,CUj,CUk,…}中的元素对配置结果没有影响。

(2)选择约束cd→cu⊆{CUi,CUj,CUk,…},表示在cd 条件下选取集合{CUi,CUj,CUk,…}的子集cu,cu≠ Ø,Ø∉cu。

(3)排斥约束cd→CUi∨CUj∨CUk∨…,表示在cd 条件下,在配置单元CUi,CUj,CUk,…中选取且只能选取一个。

(4)矛 盾 约 束cd → (CUi∧ ┐CUj)∨(CUj∧ ┐CUi),表示在cd 条件下,若配置单元CUi被选中,则CUj必不可选,反之亦然。

(5)依 赖 约 束 cd → (CUi∧ CUj)∨(┐CUi∧┐CUj),表示在cd条件下,若配置单元CUi被选中,则CUj必选中;反之若配置单元CUi没被选中,则CUj也必不在配置结果中。

(6)优先级约束cd→CU*iCU*jCU*k…,表示在cd条件下,配置单元的选择按CUi,CUj,CUk,…的顺序进行。

(7)势约束cd→LB ≤{CUi,CUj,CUk,…}≤UB,表示在cd条件下,配置结果在集合{CUi,CUj,CUk…}的元素个数至少有LB个,至多不超过UB个。

(8)权约束cd→LB ≤{CUi=vi,CUj=vj,CUk=vk,…}≤UB,其中vi,vj,vk,…为权赋值,表示在cd 条件下,集合{CUi,CUj,CUk,…}的配置结果子集的权赋值之和必需在区间[LB,UB]上。

(9)端口约束cd → Port(GUi∧CUj)=CNum,表示在cd条件下,GUj对CUi的配置数为CNum。

四元组CUO中,CP为配置单元参数化模型的驱动参数集合,集合中的元素CPi可表示为CPi=(PID,PName,PValue,PWeight,PType)。 其 中,PID为参数标识,PName为参数名称,PValue为参数值,PWeight为参数权重,PType为参数类型。参数类型PType可分为:①尺寸约束参数(令PType=1);②性能参数(令PType=2);③参数化建模尺寸驱动参数(令PType=3)。

定义3 配置单元从体是本体的关联对象构成的集合,可将其视为一个二元组CUS=(CID,RO),其中,CID为配置单元的唯一标识,RO关联对象的集合。集合RO 中的元素ROi= (OID,OA,OAD),其中,OID为关联对象的标识,OA为关联对象属性集,OAD为关联对象的物理存放位置(这里对应存储的FTP位置)。OA 中的元素OAi= (AID,AName,DType,AValue),其中,AID为属性标识,AName为属性名称,DType为属性的数据类型,AValue为属性值。

2 配置模型向动态约束满足问题的转化

定义4 动态约束满足问题(dynamic constraints satisfaction problem,DCSP)是三元组P=(X,D,C),其中,X 是具有有限个变量的集合X ={x1,x2,…,xn},D是变量X 中每个变量xi对应的值域集合D = {Dx1,Dx2,…,Dxn},C 是作用在变量X 域值上的约束集合C = {c1,c2,…,cm}。

配置问题转化DCSP包含三个方面内容:变量确定、值域确定、约束集合确定。

(1)变量确定。变量由配置模型中的对象映射而来,具体情况如下:①基于顾客需求的配置参数映射为变量;②类配置单元的技术参数GCP映射为DSCP中的变量;③可选配置单元CUij映射为DSCP中的变量;④ 配置单元的变量属性CAi(AType=1)映射为DSCP中的变量;⑤约束所涉及的参数(如优先级、势、权、端口等)映射为DSCP中的变量;⑥配置单元参数化模型的驱动参数映射为DSCP中的变量。

(2)值域确定。值域是DSCP中变量取值的集合,包括类配置单元的技术参数取值域、配置单元的选择域、配置单元的变量属性取值域、约束所涉及参数的取值域,以及配置单元参数化模型的驱动参数的取值域。

(3)约束集合确定。DSCP中的约束集合由两个部分映射得来,一部分来源于类配置单元技术规则的映射;另一部分来源于配置单元约束规则的映射。

3 BOM配置的求解

BOM配置求解在这里包含两个方面的内容:变量BOM的获取和变量BOM向EBOM的转化。

3.1 变量BOM的获取

变量BOM的获取是以DCSP模型为基础进行求解的,DCSP的主要求解方法有搜索算法和一致性算法,鉴于参数化设计BOM配置的复杂性,这里以KBOM为基础,遵从深度优先的启发式搜索策略,根据KBOM中的类配置单元的优先级顺序分级求解,其算法流程如图3所示。

图3 BOM配置算法

首先通过市场分析,结合企业的发展战略,对产品进行市场定位和顾客定位,进而获取顾客的需求(voice of customer,VOC),利用质量功能配置(quality function deployment,QFD)工具将其转化为产品的技术要求,再将技术要求细化,确定出产品设计要求,并将其映射为变量和约束放入变量集合X和约束集合C中。

(1)第1次遍历针对的是基本类配置单元,取出对应的配置单元CUi并将变量基本类配置单元GUX实例化处理,从而完成产品核心功能所必需的零部件的选配,同时将选配零部件产生的新约束放到约束集合C中。

(2)第2、3、4次遍历针对的是可变类配置单元,每次遍历完成一个优先级中各类配置单元的DSCP求解,通过对类配置单元的技术规则和集合C的联合处理得到约束集CC,进而求出DSCP的解集。DSCP采用改进的BT(back tracking)算法(即改进回溯法)求解,程序框架如下:

BT(I,XX,D,CC)

if XX=Ø//XX为KBOM中一个可变类配置单元

对应的变量集合

return I//I为XX中以赋值变量的赋值组合

else

取x∈XX

Dx=x的域

do

d=Dx的一个值

Dx←Dx-{d}

I←I∪{d}

if I满足DSCP中已赋值变量在集合C中对应约束

T =BT(I∪ {d},XX -x,D,CC)

if T≠null

return T

while Dx≠Ø

return null

若程序返回null,则表示该可变类配置单元不能选配出完全符合要求的配置单元;返回T,则得到DCSP的一个解。当DCSP有多个解时,对应可变类配置单元有多个完全符合要求的配置单元,此时以选定配置单元的零部件成本最低和交货期最短为目标,按下式进行计算:

式中,w1、w2分别为成本花费和交货期对应的权重;f1i为第i个满足要求配置单元对应的成本花费;f2i为第i个满足要求配置单元对应的交货期。并选取综合评价(γi)值最大对应的配置单元进行实例化。然后将产生的新约束添加到集合C中,并对变量集合X进行处理。遍历时按优先级的高低从大到小依次完成。另外在进行第两次遍历时,当遇到参数驱动类配置单元如果需要优先处理,则转入参数驱动类配置单元的处理模块处理。

(3)第5次遍历针对的是参数驱动类配置单元,这种类单元对应配置单元的3D数字模型是由参数化驱动生成的,处理时,首先构建配置单元CUi,并根据对类配置单元的技术规则和集合C的联合处理,得到参数驱动类配置单元的驱动参数,为建模驱动参数赋值。由参数驱动CUi对应的基本模型生成三维数字化CAD模型,用CAD模型将类配置单元实例化,并将CAD模型存放到FTP服务器相应的位置,同时将产生的新约束添加到集合C中。

(4)第6次遍历针对的是剩下的未实例化的实例类配置单元,通过对类配置单元的技术规则和集合C的联合处理得到该类配置单元需求特征参数,并与该类配置单元中的配置单元特征参数进行相似匹配,相似度采用最近邻法进行计算,具体计算公式为[2]

式中,Wj为第j个特征的权重;fI、 fR分别代表两个比较对象;Sim(fjI,fjR)为两个比较对象第j个特征相似度计算函数。

为了简化问题,在计算特征相似度时,如果参数值相同,则特征的相似度为1,否则为0。例如,对象A(A1,A2,A3,A4,A5,A6)和对象B(B1,B2,B3,B4,B5,B6)的特征相比较的情况为:A1=B1,A2≠B2,A3=B3,A4=B4,A5≠B5,A6=B6,且 权 重 为 W(0.9,0.8,0.5,0.6,1,0.7), 则Similary(A,B)= (0.9+0.5+0.6+0.7)/(0.9+0.8+0.5+0.6+1+0.7)=0.6。

将相似度最大的配置单元所对应的资源与一个新建的变量配置单元关联,然后用变量配置单元对该类配置单元实例化。

在上述步骤完成后,便完成了变量BOM的构建,这些步骤由计算机自动完成,另外可以通过改变可变类配置单元的优先级得到不同的变量BOM。

3.2 变量BOM转化为EBOM

变量BOM转化为EBOM需要完成三个方面的内容:一是对变量配置单元的处理,它是在人机交互方式下利用开发工具对关联的资源进行处理使之完全满足相应的设计要求;二是对虚拟类配置单元的处理,它是在人机交互的方式下,利用CAD工具对其子配置单元的模型进行装配得到装配CAD模型,并用它对虚拟类配置单元实例化,同时关联上其他设计资源;三是根据设计要求对需要新增或者删除的配置单元进行处理,它也是在人机交互的方式下由设计人员完成,人机交互的工作模型如图1所示。设计完成后,知识工程师可以根据设计结果对KBOM树进行增、删、改操作,完成相应的知识管理。

4 应用实例

经简化后的某企业生产的齿轮泵产品模型包括泵体、电机、齿轮、连接体等构件,齿轮泵的KBOM如图4所示。

图4 齿轮泵的KBOM

设齿轮泵的客户需求为:齿轮泵的流量2.0m3/h,最大工作压力17MPa,并且要求耐酸耐锈蚀等。根据上文所说的配置求解算法配置齿轮泵的过程如下:

首先由计算机为齿轮编码(CL0101),并按图4中的优化模型确定出齿轮的基本参数m、z、da等,优化模型中第一分目标函数f1(x)为流量脉动率最小,第二分目标函数f2(x)为单位排量体积最小,第三分目标函数f3(x)为径向压力最小,详情见文献[12]。计算结果为:m=2.5mm;z=27;da=67.5mm。然后依次确定出:定子为DZ0203,转子为ZZ0304,电机筒为DTJ101,连接体为LJT303,泵体为BT031。

在人机交互模式下根据齿轮的参数(m=2.5mm;z=27;dn=12mm)在 CAD中驱动齿轮的参数模型生成齿轮的实例化数字模型。将齿轮的模型和相应文档存放于FTP中并与齿轮关联,从而完成齿轮的实例化设计。

在人机交互模式下在CAD环境中将电机筒、定子、转子进行装配得到电机的数字化模型。对电机进行编码(DJ01)并与相应资源关联,从而完成电机的实例化设计。

在人机交互模式下在CAD环境中将电机、泵体、连接体、齿轮进行装配得到齿轮泵的数字化模型。对齿轮泵进行编码(CB01)并与相应资源关联,至此完成齿轮泵的实例化设计。

5 结束语

将产品的设计、自动配置有效集成可以大大提高产品的开发效率,为此本文给出了BOM的知识表达模型和基于产品设计的配置求解模型,进而利用J2EE技术开发了BOM配置模块,该模块具有如下特点:①将产品的计算机自动配置和人机交互设计相结合,实现了产品人机交互设计,产品参数化设计和产品自动配置一体化;②以分级遍历为基础,将回溯法、优选法和最邻近相似匹配法融入其中,使得BOM的配置求解算法很有实用性;③以KBOM的形式对产品设计知识进行集成,能够对产品实现有效的知识管理。将开发的模块嵌入到PDM系统中,通过实例证明了它的正确性和实用性。

[1] Brown D C.Defining Configuration[J].Artificial Intelligent for Engineering Design,Analysis and Manufacturing,1998,12(4):301-306.

[2] Tsenga Hwaien,Chang Chien-chen.Applying Case-based Reasoning for Product Configuration in Mass Customization Environments[J].Expert Systems with Applications,2009,29:913-925.

[3] Xie H,Henderson P,Kernahan M.Modeling and Solving Engineering Product Configuration Problems by Constraint Satisfaction[J].International Journal of Production Research,2005,43(20):4455-4469.

[4] 邵伟平.基于分布式约束满足的产品配置研究[J].东北大学学报(自然科学版),2007,28(1):103-106.

[5] Bru Gnach M.Determining the Significance of Threshold Values Uncertainty in Rule-based Classification Models[J].Ecological Modelling,2003,160(1):63-76.

[6] Yeh J Y,Wu T H,Chang J M.Parallel Genetic Algorithms for Product Configuration Management on PC Cluster Systems[J].The International Journal of Advanced Manufacturing Technology, 2007,31(11/12):1233-1242.

[7] 但斌,姚玲,经有国,等.基于产品族实例本体模型的产品配置方法研究[J].计算机集成制造系统,2009,15(4):645-651.

[8] Yang Dong,Miao Rui,Wu Hongwei,et al.Product Configuration Knowledge Modeling Using Ontology Web Language[J].Expert Systems with Applications,2009,26(3):4399-4411.

[9] Heinrich M.A Resource-based Paradigm for the Configuring of Technical Systems from Modular Components[C]//Proceedings of the 7th IEEE Conference on Artificial Intelligence Applications.Washington D C:IEEE Computer Society,1991:257-264.

[10] Hotz L.Using a Structure-based Configuration Tool for Product Derivation[C]//Proceedings of the 19th International Conference on Automated Software Engineering.Washington D C:IEEE Computer Society,2004:388-391.

[11] 曾富洪.产品数据管理中的BOM管理研究与实践[D].重庆:重庆大学,2003.

[12] 李志华,刘小思,顾广华.齿轮泵齿轮基本参数的优化设计[J].江西农业大学学报,1997,19(3):133-136.

猜你喜欢

齿轮泵实例约束
基于AK-IS法的航空齿轮泵滑动轴承可靠性分析
复合内齿轮泵参数优化设计及其性能分析
马和骑师
齿轮泵与重型自卸车的取力器直连型式浅析
适当放手能让孩子更好地自我约束
高黏度齿轮泵径向力的消除
完形填空Ⅱ
完形填空Ⅰ
CAE软件操作小百科(11)