成方敏,余隋怀,初建杰,樊佳爽,陈 健
(西北工业大学 陕西省工业设计工程实验室,陕西 西安 710072)
近年来,3D打印制造技术迅速发展,成为了具有巨大应用潜力的制造技术。由于3D打印具有制造周期短、适合单件个性化需求等优势,在航空航天、医疗等高精尖领域具有广阔的应用空间[1]。同时,3D打印技术降低了制造工艺难度,在分散的设备上可以独立制造任意形状复杂的零件[2],这一特性正好于满足云制造多主体协同工作和资源快速组织的要求。在此背景下,国内外出现了越来越多的3D打印云服务平台。
3D打印云服务平台是一种以3D打印技术为核心,以互联网、物联网为支撑,以众创众包为组织模式的设计制造服务模式[3]。在该平台上,用户可注册成为设计师,参与客户通过平台发布的产品开发任务。围绕3D打印的产品开发过程是一个知识密集的过程,用户需利用大量知识完成创新任务。随着3D打印技术与互联网的快速发展,相关知识资源不断更新,迅速增长。在海量的知识信息中,依据用户个性化需求,为用户提供快速有效的知识服务,是提高用户工作效率、提升平台粘度的关键。
目前,国内外学者针对云制造平台知识服务模式和方法进行了卓有成效的研究。阴艳超等[4]针对云制造环境知识服务的模糊性和随机性,提出了基于不确定规则推理的云制造知识服务方法;王亚辉等[5]提出一种面向产品协同设计平台的案例驱动协同设计知识管理模型;李向前等[6]针对集团企业云制造系统,提出了静态与动态两种知识服务模式;徐荣振等[7]针对产品变型设计,提出一种基于序列模式挖掘的知识服务方法,提高了知识推送的自动化程度。国外学者Monticolo等针对工业设计协同过程提出一种与专家模型同步配置的知识管理方法[8];Sultan探讨了云计算和Web 2.0背景下的创新现象,并特别考察了它们对组织知识的影响[9];Chen[10]等提出一种基于模糊公理设计的知识服务匹配优化方法。个性化的知识服务是大数据环境下的发展趋势,相关研究也有了一定进展。那惠珍等[11]提出一种基于用户模型的产品创新设计个性化知识推送模型;李颖新等[12]提出一种云环境下基于用户行为感知的个性化服务方法;谢振平等[13]提出一种基于建构主义学习理论的个性化知识推送模型。
3D打印云服务平台具有自身的特点,现有的知识服务方法难以适用。首先,3D打印云服务平台是云制造的一种模式,具有高度的开放性,其用户种类较多、需求各异[14]。同时,由于3D打印制造工艺难度较小且适宜单件制造,吸引了大量的非专业人员。权威3D打印云平台3D Hubs[15]在2015年7月发布的报告显示,爱好者、新进者(新接触3D打印的人士)、学生等非专业从业人员占3D打印使用者的64.8%。与专业从业人员相比,非专业用户在3D打印领域的知识构成、知识水平与知识需求差异巨大。现有云制造环境知识服务大多是面向全体用户的统一化知识服务[6,16],这种知识服务难以满足3D打印云平台用户差异化的知识需求。其次,现有云环境下个性化知识服务方法大多面向某一组织内部用户[4,12],用户模型依赖用户的知识评价、评论、知识上传等用户主动行为数据。3D打印云平台的用户群组织松散,难以有效地激励用户的主动行为,进而难以构建有效的用户知识模型。
为了向3D打印云平台用户快速提供个性化知识服务,需根据用户对于知识领域的需求程度推送针对性的知识资源。用户的知识需求度可以通过用户的知识存量来反映,用户在某一领域的知识存量越大,对该领域知识的需求度越小。所谓知识存量,是指在某一刻个人或组织所掌握的知识总和[17-18]。用户知识存量可根据用户在云平台任务中的表现进行测度,不需要用户提供主动的知识行为。这种测度方法充分利用了云平台大数据的优势,同时解决了基于用户主动行为的用户知识模型难以构建的问题。因此,本文提出基于用户知识存量的3D打印云平台知识服务方法,通过用户知识存量测度获取用户知识需求度,综合考虑用户知识需求与任务知识需求并计算知识推荐系数,通过知识过滤实现了面向用户个性需求的个性化知识服务。
3D打印云平台将广大分散的3D打印市场需求和设计制造等资源集成在同一平台,为客户提供随时获取、按需使用的3D打印设计制造服务。其任务完成的一般流程包括任务分解与发布、团队构建与任务分配、虚拟团队协同设计、产品打印制造与交付等,如图1所示。客户在平台上发布需求后,平台对需求进行分析处理后形成模块化任务,并在平台上发布。任何平台注册用户均可根据自身情况申请任务,云平台决策者根据优选算法选择成员组成产品开发团队,并向用户分配任务。团队成员协同工作完成方案设计。方案经客户认可后,选择平台上的制造资源进行打印制造,完成后将产品交付客户。
产品开发过程是开发者的知识分析、综合、创造表达的过程[19]。在团队成员协作完成产品开发的过程中,参与任务的用户需要在相关知识资源的支持下完成各自工作。能否为用户提供符合当前任务需求和自身知识需求的知识资源,是云平台知识服务质量的关键。
根据对3D打印云服务平台的任务完成模式和相关文献的分析,可总结出3D打印云平台产品开发任务具有用户多样性、任务专业性、动态性和交互性等特点[20]。针对用户多样性和任务专业性特点,以及现有研究的不足,本文提出了面向3D打印云服务平台的用户个性化知识服务模型,如图2所示。
模型包括3部分:①通过用户知识体系构建和用户知识存量测度,获取用户各知识领域的知识需求度;②构建面向3D打印产品开发的本体模型,并基于本体对知识资源与任务进行表达;③利用用户的知识需求度和任务与知识资源的语义相似度,计算知识推荐系数,过滤知识资源,完成个性化的知识服务。
为了向用户提供符合用户需求的知识服务,需要明确用户对某类知识的需求度。本文通过测度用户知识存量来获得用户对某一类知识的需求度。
知识存量测度是知识管理的基本问题[21],许多学者提出了测度方法:基于知识结构的问卷调查量表法[22]、基于复合学习时间的知识量度量[23]、灰关联度法测量[18]、基于贝叶斯网络的测度[24]等。但由于知识的模糊性和知识存量的动态性,还没有一种得到广泛认同的测度方法。本文综合以上研究成果,构建了用户知识结构,结合云平台的大数据特点,提出基于用户任务表现的知识存量测度方法。本方法可以对每一个知识领域的知识存量进行量化测度,从而获得每一个知识领域的需求度,为知识资源与用户需求匹配提供基础。测度方法可分为如下3个步骤:
(1)用户知识结构构建
用户依靠3D打印产品开发知识来完成平台任务,用户的个人知识结构即3D打印产品开发的知识结构。个人知识结构可划分为多个知识领域,知识领域不断细化分解,直到不可再分或不必再分时为止。最小的知识领域可称为知识单元。本文以设计知识、设计对象、打印制造、开发过程作为4个知识维度构建3D打印产品开发知识结构,如图3所示为知识结构局部框架图。在实际应用中,应根据平台特点对知识结构进行适当扩充与更改。
(2)知识领域权重确定
在知识结构中,下级知识领域对于上级知识领域的相对重要度不同,为保证对用户知识存量测度的客观性,需给各知识领域赋权。为得到较为客观合理的权重值,本文采用综合主观赋权法和客观赋权法的层次分析法(Analytic Hierarchy Process, AHP)—熵值法来计算知识领域权重。由于AHP法和熵值法均是成熟的赋权方法,不再赘述方法步骤。对于第j个知识领域,AHP法求得其权重值为Fj,熵值法求得其权重为Vj,则这个知识领域的综合权重
(1)
(3)用户知识存量测度与知识需求度计算
用户的知识存量难以直接测试,只能通过间接的方法来测度。用户在云平台产品开发任务中的表现是其知识存量的外在反映,因此根据任务表现来评估用户的知识存量。用户在任务中的表现好,即代表用户在相关知识领域的知识存量高。
在平台上完成一次产品开发任务后,由专家根据用户任务完成情况评估用户知识存量。为了方便专家评分,评价等级划分为“很好”、“好”、“一般”、“差”、“很差”5个等级,对应分值为1,2,3,4,5,指标等级介于两相邻等级之间时,相应评分值取两相邻分值之间的某个值。为了减少专家工作量,只对知识体系最底层知识单元的用户知识存量进行评分,上层知识领域的得分依据其下层知识领域的得分及其权重计算求得。在一次产品开发任务中,用户的表现只能反映一部分知识单元的知识存量,专家只针对这些知识单元的知识存量评分,其他知识单元不予评分。
假设在一次任务完成后,n位专家根据用户Uk的表现对其知识存量进行评估,第j个专家的相对重要性为wj。知识单元ki是本次任务中得到体现的知识单元之一。专家对用户在知识单元ki的知识存量评分集合为S={s1,s2,…,sj,…,sn},其中sj代表第j个专家的评分值。则本次任务中专家对用户Uk在知识单元ki的知识存量评分为
(2)
用户完成任务所利用的知识,一部分来自用户自身的知识存量,另一部分则来自平台提供的知识服务。为了客观评估用户自身的知识存量,应排除平台知识服务对于用户任务表现的提升作用。用户利用知识服务的程度可用平台记录的用户知识浏览行为来表征。若某个知识资源与知识单元ki的语义相似度大于设定阈值,且用户在任务中对其浏览的时间大于有效浏览时间阈值,则记为一次对知识单元ki的有效浏览。假设用户Uk在任务中对知识单元ki领域的有效知识浏览次数为Tki。
综合专家评分与知识浏览次数,在本次任务中用户Uk在知识单元ki的知识存量最终得分为:
(3)
其中ws、wt分别为专家评分和浏览次数对用户知识存量测度的影响权重。当Cki=0时,表示用户在任务中参考了大量平台提供的本领域知识资源,用户自身并未拥有这一领域的知识。
(4)
在用户所有已完成任务中从未涉及的知识单元,其评分取为该用户其余知识单元的平均得分。上级知识领域的得分由下级知识领域的得分和权重计算而得,这样就得到了用户的知识存量模型。在每一次任务后,对用户的当次表现进行知识存量评估,并更新用户知识存量模型。
用户对知识的需求度可利用其知识存量得分表示:
(5)
式中:Yf为用户对于第f个知识领域的知识需求度,C(Kf)为用户在知识领域Kf的知识存量分值。
用户的知识存量模型,不仅是个性化知识服务的基础,还可以当作云平台用户选择和用户评级等的标准。
本体是对某个领域内概念及其关系的规范化、形式化描述。为了实现知识与任务的统一语义表示,实现用户需求与知识的匹配,采用基于本体的方法对知识与任务进行建模。
国内外学者提出了众多本体构建方法,比较常见的有骨架法、IDEF法、七步法、TOVE企业建模法等[25]。但由于各知识领域特点不同,并没有普适的本体构建方法。结合上述方法,本文在第2章(1)中提出的3D打印产品开发知识体系的基础上,进行自顶向下的本体构建。
(1)领域概念列举与层次定义
本文以3D打印产品开发作为构建领域本体的对象。以第2章(1)中提出的3D打印产品开发知识结构为本体建模基础与边界,确定概念的范围。在知识体系领域范围内进行概念列举,概念的列举应遵循一致性与准确性的原则。然后,按照分类学的基本原则,定义概念的层次。最终形成本领域知识的概念本体树模型。
(2)定义概念属性与属性关系
本体中的概念均有各自的属性,主要有数据属性和对象属性。对象属性指本体中概念与数据类型之间的关系,对象属性指本体中概念之间的关系。属性定义后,还需定义属性间的关系从而建立概念间的关联。定义关系时,需确定定义域和值域,将两个概念联系起来。概念间常见的关系类型有组成关系(part-of)、继承关系(kind-of)、同类关系(same-as)、属性关系(attribute-of)和实例关系(instance-of)等。属性可以包含层次,因此需要定义传递性、互逆性等关系特性。
(3)定义属性约束
在属性关系的基础上,进一步约束概念的定义域和值域。例如,“汽车零部件”与“汽车”的关系为:“汽车零部件”is-part-of“汽车”,而“汽车零部件”只可能是“汽车”的一个部分,因此,“汽车零部件”的实例在定义part-of这个关系时,其值域只能从“汽车”的实例中进行选择。关系约束定义完成后,对本体概念的关系进行全面的一致性校验。
本体构建完成后,需根据后续的使用情况不断扩展进化。本体局部模型如图4所示。
基于本体对3D打印产品开发知识与3D打印云平台任务进行表示。
3D打印产品开发知识可以形式化描述为一个四元组:PDK=(KI,KS,KD,KB)。其中:PDK表示3D打印产品开发知识;KI表示知识ID,是知识的唯一标识;KC表示知识的概念集合,概念提取自本体概念集;KD表示知识内容的描述;KB表示知识的基本信息描述,如知识来源、存储时间等。
3D打印云平台产品开发任务可以形式化描述为一个五元组:PDT=(TI,TC,TD,TS,TB)。其中:PDT表示3D打印云平台产品开发任务;TI表示任务ID,是任务的唯一标识;TC表示此任务所需的知识领域集合,代表完成此项任务时用户需要利用这些领域的知识。知识领域提取自第2章(1)中的知识结构,其选取工作在任务发布时由专家根据任务特点分析完成,领域选取的原则是:当任务的完成需要某一知识领域下级的全部知识领域时,则只选取这一知识领域而不再选取其下级知识领域。例如,任务的知识需求包含“外观设计”下级的“形态”、“色彩”、“设计符号”等全部知识领域,则TC中只选取“外观设计”这一知识领域,不再选择其下级知识领域;TD表示任务内容的描述,包括任务输入、任务输出、任务目标等;TS表示任务主体的信息,即参与任务的用户信息;TB表示任务基本信息,包括任务发起者、任务费用等。
对知识和任务统一进行基于本体的建模,可实现两者之间关系的量化计算,同时也与用户知识存量模型相关联,为面向用户的个性化知识服务奠定基础。
个性化知识服务应综合考虑用户的知识需求和任务的知识需求。为了向客户提供符合任务知识需求的知识资源,采用基于本体的语义相似度算法分析任务需求与知识资源之间的相关程度。假设用户UK承担了平台某个产品开发任务中的一个子任务T。任务所需知识领域为:TC={tc1,tc2,…,tcp,…,tcm},tcp表示任务所需知识领域集合中第p个知识领域,m表示本任务所需知识领域数量。知识资源K的概念集合为:KC={kc1,kc2,…,kcq,…,kcn},其中:kcq表示知识概念集合中的第q个本体概念,n为知识资源中本体概念数量。计算任务所需知识领域与知识概念的语义相似度。语义相似度可由本体中概念间的语义距离来反映,语义距离越小,相似度越大[26]。由于较为细分的概念会有较大的相似度,本体概念的语义距离不仅要考虑概念间的最小路径距离,还应考虑概念在相应的本体类中的相对深度。参考文献[27],将语义距离计算公式表示为:
dis(tcp,kcq)=[l(tcp,kcq)-1]×
[Dc-depth(LCS(tcp,kcq))]。
(6)
式中:dis(tcp,kcq)为概念tcp与kcq的语义距离,l(tcp,kcq)为概念tcp与kcq的最短路径距离,Dc为本体树模型的最大深度,LCS(tcp,kcq)为概念tcp与kcq的最近公共父概念节点,depth(LCS(tcp,kcq))为LCS(tcp,kcq)到本体根节点的最短路径距离。
为了使相似度值域在[0,1]之间,tcp与kcq两概念的语义相似度sim(tcp,kcq)计算公式如下:
(7)
逐一计算TC与KC中概念的语义相似度,形成相似度矩阵O:
O=
(8)
KC与TC中的知识领域tcp的相似度取为矩阵中第p行的最大值,即
(9)
KC与TC的总相似度取为KC中各知识领域相似度的平均值
(10)
根据知识资源与任务的语义相似度和用户的知识需求计算知识推荐系数。知识资源K概念集与任务T所需知识领域的语义相似度可表示为一个一维向量:SIM(TC,KC)={sim(tc1,KC),sim(tc2,KC),…,sim(tcm,KC)}。YU表示用户对于TC中知识领域的知识需求度,YU={Ytc1,Ytc2,…,Ytcm}。该知识资源在此次任务中对于用户的推荐系数可表示为:
(11)
式中:RK表示知识资源的推荐系数;wu和wsim分别表示用户知识相对需求度和语义相似度对于知识推荐系数的相对重要性。
在用户完成任务过程中,平台或以任务知识需求为查询条件提供主动的知识服务,或以用户输入为查询条件提供用户检索知识服务。平台知识服务系统需对用户输入信息进行基于本体的分词、扩展等处理来获取关键词,在知识库中依据关键词进行语义检索获得候选知识资源集。计算每个知识资源与任务各领域知识需求的语义相似度与总相似度,筛选出高于总相似度阈值的知识资源作为候选知识资源集。计算每个候选知识资源的推荐系数,根据结果对其进行排序,并输出前N个知识资源。这样,就完成了基于用户知识存量和任务要求的个性化知识服务,其步骤如图5所示。
以3D打印云平台上的一款玩具汽车产品开发任务中的外观设计子任务为例,验证本文提出方法的可行性与有效性。经专家分析,本次任务所需的知识领域为外观设计、建模软件、整车车身与工程塑料。
为更好地验证本文所提方法的效果,选取两名具有相关产品开发经验的职业设计师作为知识服务对象。收集设计师近5次相关任务的表现数据。限于设计师行为的数据量,为了保证实验效果,针对此次任务构建局部的用户知识体系。该知识体系中只包括两名设计师在近5次相似任务中得以体现知识存量的知识单元及其上级知识领域。由5名专家观察分析设计师5次任务的完成情况与知识浏览行为,对其知识存量进行测度,专家评分与浏览次数的权重分别为:ws=0.95,wt=0.05,依据式(2)~式(4)计算设计师的知识存量。两名设计师的知识存量模型如图6所示,方框内的数值为对应知识单元的知识存量评估值,括号内为权重值。根据式(5)计算任务所需的4个知识领域的用户知识需求度,得YA={0.216 0,0.039 7,0.350 3,0.383 4},YB={0.220 9,0.328 8,0.150 2,0.146 2}。在实际的平台应用中,应根据完整的用户知识存量模型来计算特定知识单元的需求度。
收集4款交通玩具(汽车、火车、飞机、汽车发动机)产品开发案例中的20项知识资源,作为知识资源库,采用本体对任务与知识进行描述,任务知识需求由专家确定。知识资源的概念选取采用文献[28]提出的知识表示方法,通过知识文档关键词与本体概念的综合加权语义相似度计算完成概念筛选。
获取任务所需知识领域和知识资源概念后,根据式(6)~式(10)计算各知识资源的概念与任务所需知识领域的语义相似度,形成语义相似度矩阵,如表1所示。设总相似度阈值为0.400 0,则有17项知识资源大于阈值,K1、K10与K19被排除。令wu=wsim=1,根据式(10)计算知识资源推荐系数并排序,排序结果如表2所示。可以看出,面向两名用户的知识排序结果不同,这证明了本文所提方法可实现向不同用户提供差异化的知识服务。
表1 任务与知识资源语义相似度矩阵
续表1
表2 基于知识推荐系数的知识资源排序
为验证本方法的有效性,令两名设计师参考大于相似度阈值的17项知识资源完成设计任务。任务完成后,根据知识资源对于自身工作的参考价值大小对其排序。同时,采用文献[29]等采用的传统语义相似度方法对知识资源排序,3种排序结果如表3所示。
表3 用户自主排序与语义相似度方法排序
以用户自主排序为标准排序,对于用户A与用户B,采用本文方法得到的知识资源排序逆序数分别为11与8,采用传统相似度法得到的排序逆序数分别为34与22。显然,本文得到的知识资源推荐顺序更符合用户的知识需求。
与传统的为用户提供统一知识服务的方法相比,本文提出的知识服务方法为用户提供了更符合其需求的知识资源,可提高用户工作效率,提升平台任务完成质量。本文方法利用了3D打印云平台记录用户行为数据的便利性,根据用户历史任务的完成情况和知识浏览行为构建了知识存量模型,无需用户付出额外的工作。用户参与的任务越多、任务的知识覆盖面越广,用户模型就越成熟准确。在实际应用中,应注重用户对知识服务质量的评价,对相关权重进行调整,为用户提供更精准的知识服务。
3D打印云服务平台用户构成复杂,在知识构成、知识水平等方面差异巨大,统一的知识服务效果不佳。向每个用户提供符合其需求的个性化知识服务,对提高用户工作效率、增强平台粘度意义重大。因此,本文提出一种基于用户知识存量模型的用户个性化知识服务方法。借助云服务平台大数据的优势,通过用户任务表现数据测度用户的知识存量,并基于本体描述知识资源与任务,综合考虑了用户知识需求和任务知识需求,建立了个性化的知识服务流程。通过应用案例验证了方法的可行性与有效性。未来将在用户知识存量测度技术优化、新用户知识服务方法等方面作进一步研究。