1.确定修改参数集合
由于设计需求与设计参数之间存在关联关系,设计需求的改变会引起设计参数的变化。通过上一节的相似匹配得到了相似案例集合Csim,以其中的相似案例ck作为初始案例,进行适应性修改。
如图5.2所示,需求指标d与设计参数v之间通过规则集合R进行映射,表5.1所示为图5.2中需求指标与设计参数之间的映射关系。其中,Rij表示第i个需求指标di与第j个设计参数vj之间的关联规则集,“—”表示对应行的需求指标与对应列的设计参数之间不存在关联关系。逐项对比相似案例ck与当前设计问题cc的需求指标di(i=1,2,3,4),若指标存在差异,则由表5.1将与该需求指标关联的设计参数归入待修改设计参数集合Vadjust。以图5.2为例,若ck和cc的需求指标d2和d3不一致,则可得到Vadjust={v1,v2,v5,v6}。
表5.1 需求指标与设计参数的映射关系
除了设计需求与设计参数之间的关联关系,设计参数之间的关联关系也会影响参数的变化。表5.2所示为图5.2所示设计参数之间的关联关系,其中R′ij表示第i个设计参数vi与第j个设计参数vj之间的关联规则集,“—”表示对应行的设计参数与对应列的设计参数之间不存在关联关系。遍历已有的待修改参数集合Vadjust,通过表5.2判断设计参数与其他设计参数之间是否存在关联关系,若某一设计参数与其他设计参数间存在关联关系且该设计参数不属于集合Vadjust,则将其补充进Vadjust,形成待修改参数集合V′adjust。以图5.2为例,可得V′adjust={v1,v2,v3,v4,v5,v6}。
表5.2 设计参数关联关系
2.确定参数修改优先级(www.xing528.com)
设计参数的修改存在优先级顺序,优先级较高的参数决定优先级较低的参数。表5.2中R′ij不为空表明第i个设计参数的优先级较第j个设计参数高,如R′46表示设计参数v4较设计参数v6有较高的优先级。因此,通过对表5.2中的优先级关系进行整理,可得待修改参数集合之间的优先级顺序。上文所得待修改参数集合V′adjust={v1,v2,v3,v4,v5,v6},由表5.2可知设计参数v1的优先级高于设计参数数v2、v3和v4,设计参数v3的优先级要高于设计参数v5和v6,此外,设计参数v4的优先级高于设计参数v6。综上,可确定V′adjust中设计参数的优先级顺序为:{v1}→{v2,v3,v4}→{v5,v6}。
设计过程中,一个设计单元往往涉及多个设计参数。因此,需要将待修改设计参数转化为待修改的设计单元,并确定设计单元之间的修改优先级序列。修改序列AS表示待修改设计单元及其优先级顺序,AS={Ni|Ni=〈BUi,EU,RSi〉,i=1,2,…},其中N=〈BU,EU,RS〉,表示修改单元。修改序列AS是修改单元N的集合,它描述了需要进行案例修改的设计单元集合以及修改的优先级顺序。修改单元N包含三个属性,其中属性BU表示修改单元N的前节点单元;EU是修改单元N的作用单元,每个修改单元对应一个设计单元;修改规则集RS={Ri|i=1,2,…}是修改单元的修改规则集。一个修改单元表示在前节点单元BU基础上,依据修改规则集RS对作用节点设计单元EU进行修改。
图5.4所示为设计单元与设计参数之间的对应关系。图中某一产品设计单元的实现能够确定多个设计参数,例如,通过设计单元u3可以确定设计参数v2、v7和v8。
图5.4 设计单元与设计参数之间的对应关系
由第4章设计单元的表达模板可知,设计单元对设计环节的输出参数进行了详细的定义。基于此,由待修改参数列表V′adjust可得待修改的设计单元集合Uadjust={u1,u2,u3,u4,u5},由修改序列可得与待修改设计单元集合Uadjust对应的修改序列ASk={N1,N2,N3,N4,N5}。其中,设计单元u1对应的修改单元为N1=〈NULL,{u1},R21〉,设计单元u2对应的修改单元为N2=〈{u1},{u2},R′13∪R′14〉,设计单元u3对应的修改单元为N3=〈{u1},{u3},R12∪R22∪R32∪R′12〉,设计单元u4对应的修改单元为N4=〈{u2},{u4},R35∪R′35∪R36∪R46∪R′36∪R′46〉,设计单元u5对应的修改单元为N5=〈{u3},{u5},NULL〉。
3.设计案例适配
在获得案例的修改序列的基础上,对案例进行适应性修改。判断并选取修改序列AS中BU=Ø的修改单元作为案例修改的起始节点。对于修改单元Ni,其作用单元EUi给出了该修改单元所对应的设计单元。修改规则集合RSi则给定了与该设计单元关联的设计规则集合。首先,依据原理性设计规则对设计单元相关参数进行修改,接着依据推荐型设计规则对设计单元进行修改。此时,将修改结果代入原理型设计规则进行校验,若符合规则约束则继续进行修改,若存在冲突则撤回所做更改。某一设计单元的修改完成后,遍历修改序列AS中剩余修改单元,判断其前节点单元是否已完成修改,若完成修改则将其作为下一个待修改单元进行修改,修改过程同上。图5.3对以上流程进行了详细描述。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。