基于研发流程的知识支持系统的实现途径研究,本文主要内容关键词为:支持系统论文,途径论文,流程论文,知识论文,此文献不代表本站观点,内容供学术参考,文章仅供参考阅读下载。
企业产品研发是一个复杂的创新过程,复杂性不仅体现在它涉及众多的学科门类和多种类型知识的综合运用,还在于产品开发过程呈现出的复杂的脉络性和连续性[1,2]。因此如何有效地在产品开发项目间进行知识的跨时空共享并把该知识灵活地运用起来,对企业竞争优势的提高和企业长期产品开发能力的发展有着重要的意义。
一般来说,建立知识库与知识共享系统是提高企业知识共享能力及研发创新效率最直接的途径。目前有许多专门的工具系统和管理方法[2,4],如计算机辅助设计(CAD)系统、专家系统(ES)、知识流程管理系统(KFMS)①、工作流管理系统(WfMS)②等来帮助研发人员,使部分环节的产品开发知识和数据得到重用。Abecker(2001)通过工作流引擎与信息智能助手的集成,实现根据用户的过程情境向用户推送(Push)相关知识,以减少人员在搜索方面的投入[5]。Zhuge H(2002)提出知识流的概念,通过一个规则层建立工作流与知识流的映射,从而实现二者的集成[6]。Dou WC(2003)将知识应用与交互业务看成一种复杂的协作式工作流,研究了对应于知识聚合与再生的过程单元,并在此基础上讨论了该类工作流系统的建模与控制[4]。Matias(2004)等根据每个岗位对应的任务及过程信息,重用组织记忆系统中的相关知识[7]。Kwna(2003)等提出了一种称为Knowledge Scope的知识管理系统的设计。该系统支持在过程执行中实现知识重用的同时,也重用过程元模型知识,即情境知识,支持业务的规划、执行和评估[8]。
但是,直至目前为止,这一领域的研究尚处于起步阶段,用上述方法建立的集成工作流知识管理系统所面临的一个共同问题是因其过程模型过于“僵硬”——预定义的过程模型不能很好地反映实际的业务流程——而导致系统缺乏足够的灵活性。在具体研发过程中,知识管理系统的实施也存在诸多问题[9-10],如产品研发的项目导向易于形成知识孤岛;缺乏测度研发人员知识贡献的有效方式;缺乏实现知识推送的有效组织模式;对过程进行“黑箱”处理,知识管理与研发流程处于分离状态;难以保证研发过程知识协调的实时性;知识的组织形式缺乏规范等。
本文认为,造成知识管理系统实施困难的原因,一方面在于知识管理系统没有与研发流程实现深度整合。研发流程不仅是按照一定逻辑顺序连接起来的开发活动链,而且还是利用知识和创造知识的场所。知识是用来完成流程中某项任务的资源,同时也是该任务或流程的产品。因此流程可以被看做是知识管理活动的载体,这个载体赋予知识管理活动一系列情境,使产生的知识成果便于理解、交流和度量,知识的重用和共享也只有在流程载体上才能实现。因此,当前研发知识支持的关键问题是如何在知识管理系统中方便、敏捷地集成流程。
另一方面在于知识管理系统缺乏足够的智能性。产品研发管理对象依附于作为知识应用主体的人,在内容上具有高度抽象性和形式上的不可预知性。创新产品在构思时结构是不明确的,产品信息是模糊的;新方案的产生无法预测,并可能在任意层次上。因此,研发流程模型应能支持创新设计的多样性和敏捷的知识重用。这就要求知识管理系统能够根据知识需求变化,智能化地动态形成和解体,并进行快速地重构和调整,系统具有可重用性和重构性。
知识工作流系统模型
基于以上分析,为了区别于单纯的工作流系统和对知识建模的知识流管理,本文提出了模块化的知识工作流系统(Knowledge Workflow Management System,KWMS)模型,将知识管理活动与研发流程深入整合,并通过模块化实现对流程的柔性管理。“知识工作流”(Knowledge Workflow)的概念,是用以阐述知识资源经过加工而产生出知识产品的全过程,即知识如何工作的流程。知识工作流是把知识作为研发资源加载到流程各个步骤上,在每一步骤中作为资源的知识和新产生的知识成果都被赋予了流程情境,有利于系统协调知识创新的不同需求,同时新知识的产生过程也方便地记录在流程上。换句话说,也就是知识的工作过程改变了流程,使流程产生了历史记忆,从而方便相关流程对知识的重用以及反馈。
与知识流和工作流系统相比,本文构建的知识工作流系统主要有以下几点特征:
(1)知识推动性。传统的工作流系统是一类能够完全或者部分自动执行的经营过程。它根据一系列过程规则、文件、信息或任务能够在不同的执行者之间进行传递与执行。这其中知识只是以信息的形态出现,其运行方式是以流程的进行来推动信息和物质的交换。而知识工作流则是以知识为主导,通过知识相互作用的结果来引导流程的运行。当然这也不同于知识流以知识为对象的被动的管理方式,知识流关注知识获取、转移、共享和储存等知识流动渠道和方式的规范化管理。知识工作流则同时关注知识和知识活动,关注如何对知识的相互作用过程和阶段性成果进行有效管理,从而更有利于下一阶段的知识创新。
(2)流程基础性。知识可以存在于多种不同载体中,如人员、影像、语音、文本等,知识流管理在这些载体间建立联系,为知识流动提供便利。但是由于这一体系与流程是分离的,在实际项目运用中就容易出现衔接困难。知识工作流系统则是以流程为基本载体。业务流程是知识活动或知识工作的载体。对高技术研发来说,知识创新必须依托于研发流程这个载体。
(3)模块化策略。所谓模块化,青木昌彦在《哈佛商业评论》上发表的《模块时代的管理》[13]一文中是指一种通过每个可以独立设计的,并且能够发挥整体作用的更小的子系统来构筑复杂产品或业务的过程。研发作业流程的工作项目比较难以标准化,标准工时的建立也很困难,导致流程的复杂及作业的混乱而增加了管理上的难度。知识工作流系统将知识库中知识的存储形式和研发流程中不同的开发步骤都进行模块化设计,一方面可以降低知识间的依赖性,从而将复杂的知识系统分解为独立的知识部分,更重要的作用在于通过模块间多样化的组合,能灵活适应互动模式复杂而频繁的研发流程。
知识工作流系统的设计理念有以下几个要点:
(1)以研发流程为导向,与人员、作业相结合。
(2)以对象方式将项目作业流程独立出来。
(3)配合项目管理建立机制,约束人员在完成关键作业时,留下知识与经验。
(4)人员可依具体的流程创新链,以每一项作业为基础获得相关知识经验,而非瞎子摸象。
知识工作流系统中知识是主体,知识活动的结果使流程更有效率,而流程是知识工作的平台,为一系列知识活动提供情境。该系统模型为产品研发的知识创新和知识重用提供支持,其主体结构为“两库一链”,“两库”是指两个资源库,除了传统知识管理系统所必须具备的知识库外,本文还针对研发流程特有的不确定性设计了半模块化的步骤模板库;“一链”是指具体研发项目的知识创新链。
1、知识库
知识库是对组织知识进行管理的工具,是知识管理的基础。知识库的管理包括知识项的存储、添加、删除、修改和检索等功能。实施知识库的方法简单地说有两种:一种是直接用关键词在全文本的数据中进行寻找。这种方式检索方便、速度快,但受关键词限制,不能很好地构建知识资源之间的关系。二是通过知识库里关于流程的维度结构,进行网状地搜索,也即建立知识地图。这种方式对知识资源进行形象化描述,揭示了各知识间的关联,但检索、修改起来相对复杂。因此,以上两种方法都不能很好的满足研发过程的需要。
研发流程是个很复杂的综合体,牵涉到许多的活动、人员、管理、工作方式及各种不同的专业与知识,知识密集度高且变动快,因此对知识支持的要求也比流程相对固定的生产管理和财务管理等要高很多。为了支持敏捷研发和柔性设计,知识库中的知识必须能被方便地提取和修改,知识存储方式要便于研发人员对相关知识结构的理解和重用。
模块化原理能够很好地支持重用,并能为系统维护提供很大的方便,因此在产品的模块化设计与生产领域已经得到广泛应用并取得了成功[13-15]。受此启发,本文尝试将模块化方法引入知识库设计。
(1)研发所需知识与经验的类型
在不同项目、不同研发人员、不同时间之间,有多种宝贵的知识与经验可以传递,尽管这些类型在不同企业间差别很大,但还是有一个通常的分类可用于描述知识与经验的一些不同特征。
A.专家知识。专家知识的作用主要有:①为项目选定研发人员作参考;②便于研发人员间的相互交流与密切协作;③用于研发人员知识贡献的绩效评价。因此,该模块构建需要包括以下几方面内容:①专家的知识领域、专业技能及精通程度;②专家所在部门、联系方式等基本职能信息;③专家参与过的项目、工作职责及历史经验链接。
B.经验知识。经验知识多以故事的方式说明项目执行中的经验、教训及学习体会,而不以结构化的资料库或表单作存储。为了便于知识重用和对知识贡献的评价,经验知识模块必须包括相关项目、流程、人员等信息,并与相应知识项建立链接关系。
C.规则知识。包括标准、准则和政策等结构化的知识。这些规则知识针对特定的产品、技术或流程,比如新产品测试标准、软件编码标准、电子设计标准等,帮助实现研发过程的标准化。
D.控制知识。控制知识是有关问题的求解步骤、技巧性知识。
E.外部信息。包括指向特定产品或技术的研究论文、技术说明书和一些最新技术发现的技术网站,以及指向特定人员的有用书籍及培训材料的链接。
F.项目知识。包括不同类别项目的实施、完成情况,项目的阶段性成果等信息。
(2)知识的模块化
受面向对象方法学的启发,采用“面向模块”的知识库组织策略来组织知识库的结构,主要包括以下几个方面:
A.面向对象的知识表达。用面向对象的技术实现知识的表达,即将多种单一的知识表达方法(规则、框架和过程)按照面向对象的程序设计原则组成一种混合知识表达形式。它以“对象”为中心,将对象的属性、动态行为特征和设计处理知识等有关知识“封装”在表达对象结构中,对象内的过程只能对本对象的属性进行处理。
B.模块间的相关性。相关知识模块通过属性关系或关键词实现超文本链接,知识库通过自身的分类体系将其组织起来。随着这种关联的不断增多和不断被修改,知识库内的知识会形成一个有机智能的知识网络。
C.知识库结构的扩充和修改。知识模块相互独立地存在,通过超文本链接有机地联系在一起。因此,增添和删除某些模块不会改变知识库的组织结构;对某一模块知识的修改被封装在该知识单元的内部,同样不会影响知识库的组织结构。
2、步骤模板库
产品研发虽然不像财务、生产等其他业务有固定的作业流程,但同类产品的开发程序大体还是相同的。因此可根据细分的项目类别,为每一类别的研发项目设计常用的步骤模板库。步骤模板是由若干个顺序相连的步骤模块连接起来的相对固定的流程链。模板可以为研发人员提供一个起点。这样,他们可以从一个大纲起步,而不是从一张“白纸”开始,不仅节省了研发时间,还加强了相关项目间的统一性,避免发生项目小组遗漏一些事情的情况。同时,步骤模板还为知识与流程的集成提供了一个更有效的平台。项目实施时,知识模块可加载于与其相关的特定步骤上,产生的知识成果也可与对应的步骤实现链接,以这种方式实现知识生产流程与研发流程的相互对接。
(1)步骤模块
步骤模块是步骤模板的基本组成部分,也是发生于该步骤上知识活动的载体。步骤模块的结构如图1所示,模块纵向有即时项目和历史记忆两个维度,横向分为知识资源和知识产出两个维度。
图1 步骤模块示意图
知识资源包括完成该步骤所需的专家知识、规则知识、控制知识、外部信息等知识。其中专家知识以人员结构的方式表达,即参与该步骤的人员与对应的专家模块实现链接,并规定每个人员的具体职责。即时项目部分的知识资源只给出了需要添加的知识的种类,而具体的内容是空白,需要研发人员把现时项目所具体使用的知识模块加载到模板上,比如参与该步骤的专家、所使用仪器的相关规则知识、技术方法的控制知识等。步骤模块的历史记忆部分记录了以往项目对这些知识的选择情况,这些记录分别附于需要加载在相应知识的空白模板处,方便研发人员随时参考。
知识产出包括该步骤的阶段性成果产出和经验产出。历史记忆部分记录了以往项目所遇到的问题、解决经验及成果,为研发人员提供相关性极高的启发性知识。而研发人员也将知识生产过程,即产生的经验和研究成果,及时记录并生成知识模块反映在该步骤上,成为该步骤的历史记忆。知识产出同时与相关的人员建立链接,以便项目完成后评价研发人员的知识贡献。
需要说明的是,步骤模块并不是知识的储存场所,知识储存在知识库中,步骤模块上只是知识的链接,而不是实际的知识模块。这样,同一个知识模块可以链接至许多项目。如果对该知识作了修改,那么,所有访问该知识模块的项目都能确保他们得到的是最新版本。
(2)步骤模板
步骤模板由步骤模块按一定的顺序组成,不论是顺序研发还是并行研发,每完成一个步骤,都要经过一个审核程序才能进入下一阶段。其结构如图2所示。
图2 步骤模板运行示意图
同类项目可以设计多个常用的步骤模板,每个步骤模板相对固定,这是为了便于历史记忆存储的连续性。但过于严格地遵循模板会不利于研发流程的柔性管理,因此,模板的使用程度应以实用为准。研发人员可以根据自己的判断来添加或删除模板的特定部分,步骤的模块化设计也是为了方便这一操作。形成的新模板可以作为原模板的衍生模板保存在模板库中。随着有用项目经验与知识的积累,会不断增加库中的模板储备以及知识与经验的储备,这也进一步完善了知识与项目流程的集成。
步骤模板为研发项目提供了流程框架,同时还提供了许多其他的额外信息,包括每一步骤的“历史记忆”、完成步骤的资源需要估计和周期时间估计等。
一个步骤模板应当存在着两个以上的步骤模块,模块活动之间必然存在着某种关系。构成流程中不同步骤的数量、各模块的转换能力、相互之间关系不同,则研发流程的性质也不一样。简单分析研发流程,可以得出这种关系有如下几种类型:
A.串行关系。两研发步骤先后发生,前一活动的输出是后一活动的输入,如图3所示。这是研发流程中大多数知识活动之间的关系。
图3 研发步骤间的串行关系
B.并行关系。两研发步骤同时进行,彼此独立,两者同时对知识输出产生影响,如图4所示。比如在产品设计同时就进行工艺过程设计,并对工艺设计的结果进行计算机仿真,直至用快速原型法生产出产品的样件。
图4 研发步骤间的并行关系
C.分叉关系。某一研发步骤视其输出结果的不同而有选择的和后边多个研发步骤中的一个发生联系,反映了知识活动的主动选择性,如图5所示。又可分为任意选一关系、条件选一关系。比如根据公司前期技术调研及用户需求,采取多个研究团队(或外部企业)基于不同的未来假设,同时展开独立的竞争性研究。
图5 研发步骤间的分叉关系
D.反馈关系。在一连串研发步骤中,某一后边的研发活动的输出返回作为前面某一活动的输入,亦即是按后面的结果确定前面知识活动的下一步动作,如图6所示。比如应用软件开发过程中,需求分析报告需要由用户确认,用户不满意,则返回修改。
图6 研发步骤间的反馈关系
3、研发项目知识创新链的构建过程
知识创新链的构建过程也就是以步骤模板提供的步骤链为平台和辅助,进行知识创新活动的过程。知识的提取、共享、存储等活动都发生在步骤链上,全过程包括以下几个阶段:
(1)立项阶段
研发人员进入一个研发项目后,根据项目研发需求在步骤模板库的相应归类内选择合适的步骤模板。由此触发一个新的步骤模板实例,以明确大致的开发步骤和方案,并将该实例保存在步骤模板库中。
(2)实例化阶段
不论是采用顺序研发还是并行研发,进行每一步骤都是从加载相应知识模块开始。即在流程执行过程中,研发人员参考步骤模块上携带的历史记忆并根据自己的专业判断,从知识库中提取步骤执行所需的知识资源,并把其加载到该步骤上,从而明确该步骤由谁完成、需要哪些资源、活动间的条件规则及交换的信息、完成任务所需的技术、工具等。
(3)运行阶段
研发人员根据选定的知识资源,并参考“历史记忆”提供的知识和经验完成该步骤的研发任务。流程中产生的新知识包括遇到的问题、解决的经验等,编辑成知识模块存放到知识库中,流程执行的具体背景如目标、执行者、所使用的知识资源、任务的起止时间、产生了哪些新知识等相关信息存放到该步骤模板中,并与相应的历史部分形成链接。
(4)评审阶段
各个步骤都含有评审和批准的过程,如果出现异常,则用户能够查询相关研发流程以及历史信息,对流程步骤实例进行调整。评审以及对异常处理的知识也被记录到步骤模板中。
4、知识工作流系统的功能
以上的“两库一链”构成了知识工作流系统(KWMS)的主体框架,为研发活动提供知识支持,其知识支持功能主要表现在以下三方面:
(1)知识提供支持
知识提供功能的最大困难在于使系统“知道”哪个开发人员会受益于哪个存在的知识,并能在恰当的时候将恰当的知识指向开发人员。换言之,系统要明确所需要知识的情境。知识情境指知识创造、获取、应用、共享、传递等知识过程发生的背景、环境和场景等,是对知识(过程)情境因素的描述,刻画了知识过程发生时的复杂状况,也是知识得以共享和重用的重要基础[9,10]。由于知识产生的情境每次都不相同,一般来讲只能根据情境的相似程度来判断所提供的知识是否恰当。有研究人员利用文本相似度的计算来衡量知识情境的相似程度。但使用这种方法却给知识的保存带来了繁琐的工作负担,因为知识的产生不仅有每一阶段的小情境,还有基于项目的大情境,用文字表述很难做到全面完整。
KWMS通过与研发步骤结合的“历史记忆”实现了知识与情境的自动集成。步骤模板提供相对稳定的知识情境,而对步骤模块的划分则进一步保证了知识情境的相似度并使知识能出现在恰当的时间。
(2)知识存储支持
知识及其产生情境的存储是知识能被准确提供的前提条件。在KWMS中,步骤模板界定的流程链信息描述了大的项目情境,加载到步骤模块上的知识资源进一步界定了微观情境。这些情境信息自动生成,附着与新产生的知识上,通过步骤模块存储与知识库中,并在步骤模块中保留相应的链接。
另一方面,KWMS还能方便研发人员及时记录整理产品开发经验。因为所有的知识与所有的工作都已附在特定步骤上,也就有了一个即时保存项目经验的简单方法。研发人员可以随时记录开发经验,并直接与本人的专家模块链接。项目结束时,只需调出参与该项目的专家模块,就能根据知识产出的链接,方便地统计出每个人的知识贡献。
从执行力的角度来看,通过KWMS得以使产品开发流程的建立过程标准化,并在项目流程中的每一个关键作业上设置控制点,形成一个严密的控制网络。使得管理层可以掌握每一个细节执行的状况,再以职责划分的方式将项目管理的工作转换成每个人员的责任。如此只要每个人发挥少许的执行力,就能达到推动项目工作的效果,并解决了研发流程难以设立控制点及绩效标准的问题。
(3)知识协调支持
高技术研发属知识密集、程序复杂,再加上并行化、集成化的产品研发趋势,都要求研发人员间密切的团队协作才能保证研发的高效率。KWMS不仅能为项目内的频繁协作提供支持,还为项目间的知识共享与交流提供支持。模块化的知识可以同时被多个项目和步骤调用,对知识模块的修改通过知识库的链接及时反映在其他项目步骤上。通过这种方式,系统可以轻易追踪人员、文件、信息及任务的执行现况,便于统计分析出流程的瓶颈,可以作为流程改善或其他相关决策之用。
例如,同一个研发人员可能参与多个项目,凭借KWMS可以了解该人员的即时工作状态,利于更有效率地安排工作、协调团队;还可以了解文件的执行情况,谁最后签署这个文件?谁授权这个公文?这个公文目前传送到哪个单位等。KWMS还支持研发人员点击任意感兴趣的“历史记忆”,如果要进一步进行相关知识的处理和调用,可以点击系统提供的链接,调用具体的数据、启动相关的程序、或根据其提供的专家情况与掌握该知识的专家进行交流。
Multi—Agent技术在知识工作流系统中的应用
Agent是一种处于动态环境中的计算机系统,能够在环境中自主灵活运行,具有较高的自治能力和智能性,它可以感知、作用于环境,并且希望通过执行动作实现一定的目标和任务[18-20]。
基于多Agent技术的系统是指多个Agent相互通讯、彼此协调,共同完成作业任务的系统,它不仅具备一般分布式系统所具有的资源共享、易于扩张、可靠性强、灵活性强、实时性好的特点,而且各Agent通过相互协调解决大规模的复杂问题,使系统具有很强的健壮性、可靠性和自组织能力。
企业研发的知识工作流系统可以看作是一个分布式的系统,其中的每个功能模块都具有各自不同的目标,通过协作来完成他们的目标及实现组织的整体目标。在这种环境中,通信和协调的作用是至关重要的。另外,还要求系统对共享知识数量的增加具有可扩展性。多Agent系统能比较好地满足研发知识工作流的特殊需求:研发领域具有天然的资源、问题解决能力和职责的分布性(对应于Agent的自治性和社会性);现存组织结构的完整性和成员的自治性需要得以维持(利用Agent的自治特性);KWMS环境中的交互关系十分复杂,涉及到协商、信息共享和协调等(需要Agent的复杂社会技能);为使系统设计具有动态性,KWMS要求知识利用和知识源的功能分离(Agent可以作为知识源与知识利用的中介);研发的需求是不断变化的,因此要求系统具有足够的灵活性,能够及时响应外部环境的变化,能够及时主动地把握机会(利用Agent的反应性和主动性)。
1、系统框架
本文在知识工作流系统的基本框架下,结合多Agent技术构建企业R&D知识支持系统。
在该结构中,用Agent代表企业的研发、营销部门和客户,多Agent系统代表研发人员与知识工作流系统组成的大系统。为了使知识工作流各子系统在保持自治性的同时能够协同进行研发,各部分之间必须能够互操作并实时交换信息。一般Agent通用结构包括核心层、任务层、接口、通讯层四个组成部分,如图7所示。核心层由对象的原有系统构成,以保证对象的自治性。Agent任务层执行研发的具体任务,具有支持研发人员与系统之间交互的功能,它起到协商与协调的作用,协同研发的任务。接口为Agent任务层与Agent通讯层之间的通讯提供内部通讯协议,实现了Agent任务层与通讯层之间的信息交换。接口的使用保证了企业与用户共享信息的安全性,同时也使相互之间的通讯不被外界侵犯和干扰。接口的使用有效地保证了信息的集成和各研发项目的自治性。Agent通讯层处理各个Agent之间的信息交互。其功能包括:通讯协议的选择、基本的通讯管理和Agent之间的通讯安全。
图7 Agent通用结构
多Agent系统,将多个Agent集中或分布式组合在一起,它们之间相互协作、相互通信,在研发人员的引导下,按照系统的规划进行并行的或顺序的研发。在研发过程中,多Agent系统不是全自动运行的,研发人员是系统中的决定性部分。研发Agent是研发人员参与研发的助手,在研发过程中帮助参与者工作。如图8所示。
图8 多Agent研发知识支持系统的总体结构
该多Agent系统中主要有两类Agent:服务Agent和个人助理Agent。
服务Agent用来实现特定的功能,包括知识库/模板库维护Agent、项目Agent、实时监控Agent、通信Agent、装配Agent、开发工具Agent和协调Agent。知识库/模板库维护Agent对知识库和模板库进行一体化维护。负责两库中知识模块及步骤模板的规范化构建,使其中的知识能有效地被实时监控Agent搜索,能方便地被项目Agent存取、修改和编辑,同时能对知识模块与步骤模块之间多向链接的一致性和完备性进行检验。项目Agent负责各服务Agent在具体研发项目上的集成和动态调整,并对本项目与其他项目知识交流的安全权限进行设定和维护。实时监控Agent对同时进行的所有研发项目的人员变动和知识更新进行实时控制,保证通过知识库和通信Agent所获得的信息是最新的。通信Agent是参与者和Agent以及Agent之间传递消息的通道,通过通信Agent进行交互协商,从而完成单独无法完成的功能目标。装配Agent支持并行开发,对每个步骤形成的产品原型进行记录和审定,检查装配的限制条件,并与研发人员交互,产生符合要求的研发成果。开发工具Agent为每个步骤形成的产品概念实时协同开发提供支持。协调Agent起着协调各Agent的活动以及管理和分配任务及权限的作用。它管理着其他Agent在运行过程中所需资源的调度,其他Agent在使用资源时要向协调Agent进行注册,然后由它根据启发式规则来进行资源的分配和回收。
个人助理Agent为研发人员提供与系统交互的接口。它不仅是被动地完成用户交给它的任务,还能够自动跟踪用户的偏好及需求,适时向用户主动推荐合适的知识源。另外,当用户在进行知识生产时还能自动进行一些文档保存及整理工作,从而减轻了用户的负担。这类Agent的结构具有服务Agent的所有特性,同时还具备用户界面和用户模型。用户模型要能够根据用户的情况和经验动态建立和更新。
图9 多Agent协作工作流程
2、Multi-Agent的协作
多Agent协作如图9所示。
Agent之间的协作是以完成一定的任务为目标的。研发人员通过其个人助理Agent向项目Agent提交一个项目开发任务,并将所需知识资源与步骤模块进行匹配。项目Agent对匹配后的任务进行分析,集成各Agent根据自己的任务协助系统用户进行相应的工作。每一步骤形成的产品概念都经过开发工具Agent和装配Agent的检验,进行可行性检查,对不符合要求的产品原型,通过协调Agent向有关Agent发送要求修改的信息。研发人员对所需知识的查询可由相应Agent通过交互来完成。若在现有步骤附带历史记忆中无法查找到用户所需的知识,则系统可以根据知识库的链接定位到具有该方面知识的专家,并通过实时监控Agent将该专家的位置、实时状态等信息传递给用户的个人助理Agent,以便建立用户与专家之间的连接。用户通过通信Agent能够与专家直接进行交流,从而实现隐性知识的共享。项目结束后,研发人员的知识贡献由个人助理Agent通过与相应Agent的交互来进行收集整理。
将知识支持系统融入灵活多变的研发流程,能够有效地解决高技术R&D过程中大量知识交流和知识重用难以实施的瓶颈,提高R&D效率。本文引入模块化原理构建知识工作流系统(KWMS)模型,该模型顾名思义,旨在整合流程与知识技术系统。模块化能够很好地支持重用,并能为系统维护提供很大的方便。通过知识及研发流程的模块化构建,不仅可以降低知识间的依赖性,还能灵活适应互动模式复杂而频繁的研发流程,并大幅提高知识的重用效率。但本文提出的知识流程建模方法,注重如何提出一套具有内在逻辑一致性的知识流程框架,而缺乏对知识流程的深入的形式化描述,而形式化描述是有效的知识流程自动化的基础。因此,其具体设计有待进一步的研究。此外,本文还探讨了多Agent技术在知识工作流系统中的应用。多Agent技术目前比较广泛地应用在分布式系统的研究中,但大多数的研究只是逻辑层面的探讨,本文亦是如此,而技术层面的系统实现还有赖于多Agent技术的成熟和更深入的研究。
注释:
①通常,把知识在多个参与者(组织内或组织间)之间按照一定的规则或流程的产生、传播、共享、应用与存储的过程称为知识流(Knowledge Flow)。对知识流的管理是一种积极的知识管理,能够促使组织经验和能力跨越时间、空间和组织机构进行传递,从而有效地改善其业务活动的功效和性能。
②根据工作流管理联盟(Workflow Management Coalition)的定义,工作流系统是指提供企业流程自动化的应用系统,是一种管理工作顺序、人力资源及每一个活动步骤的信息技术,也是主动式的管理软件。它能按照每一作业所设定的程序引导参与者执行工作流,提升整体流程的协调性.并确保正确的信息,即在适当的时间,利用适当的工具转移到正确的人员。
标签:工作流论文; 企业流程管理论文; 知识库管理系统论文; 设计流程论文; 信息集成论文; 活动执行论文; 工作管理论文;