首页 理论教育 基于的知识建模案例

基于的知识建模案例

时间:2022-03-04 理论教育 版权反馈
【摘要】:问题是要建立一个系统能够将这些成员分派到合适的办公室,但是有一个限制。分配的定义是,在两组对象之间创建一个关系,这些对象满足要求并遵守约束。在本案例中,就是要为研究组成员分配办公室,研究组成员即为主体,办公室就是资源。知识建模不同于数字建模,我们一般对一些对象类型的“实例”感兴趣。它关系到这样的一些特殊类型,即实例表示的静态知识被用于

7.5.3 基于CommonKADS的知识建模案例[19]

问题环境:某实验室一个研究组的成员将要搬进办公大楼新的楼层。由于资金的消减,他们得到的房间只有有限几间。问题是要建立一个系统能够将这些成员分派到合适的办公室,但是有一个限制。这个系统也提供关于专家的一个认知模型,这点是很重要的。换句话说,最终的系统必须能够复制专家的问题解决过程,并且它也能像专家解决新问题一样解决新的问题。

有用的信息:在这个组中,有许多不同类型的工作人员。Thomas是这个研究组的领导。Eva做这个组的行政管理工作。Monica和Ulrike是秘书。Hans,Katharina和Joachim是项目经理。其他的人是研究员,包括Andy,Uwe,Werner,Jurgen,Marc,Angi,Harry,Michael。Andy和Uwe是吸烟者。

这个组要搬进的楼层在图7-7中进行了描述。加底纹的房间不能用于办公空间。C2-117,C2-119~C2-123是能够容纳两个人的房间。其他的房间是单间。

此外,进行办公室分配的时候,需要遵循以下的准则:

●研究组的领导需要一个中心办公室而且是一个大的办公室,这个分配应该首先确定;

img62

图7-7 案例问题的楼层规划

●秘书的办公室应靠近领导的办公室,两个秘书应该工作在一个大的办公室中。这个分配应该尽可能快地决定;

●行政管理人员应该对研究组领导和秘书有最大的访问权,而且应该是中心位置,但一个小的办公室即可,这个决定应该最早定下来;

●大项目的负责人应靠近研究组领导和秘书;

●两个吸烟者要共享一个办公室,他们中的任何一个都没有

资格要一个办公室。吸烟者与不吸烟者不应该在一起。

1.构造最初的领域模式

当建立一个原始的领域模式,特别是当知识工程师没有一些数据模型或者他可以重复使用的领域模式时,以下的几种知识抽取技巧是很有用的:

●协议分析——一个简单的标记工具可以用来在抄本或者其他的信息源中发现相关的领域术语;

●阶梯法——阶梯法用来建立一些最初的领域层次结构;

●概念分类和仓库网格——这两个工具都用来发现领域特性,这些特性在领域材料中不是很明显,例如新的概念和属性。

在介绍性的材料中,我们可以标记术语,例如“办公室”。这些术语与工作类型是相关的:head-of-group(研究组领导)、head-of-project(项目领导)、manager(经理)、secretary(秘书)和researcher(研究员)。这些术语被标记为概念。另外,个人和办公室也被标记为概念。在这个阶段,不会区别概念和实例。“概念”这个术语在这里是一个很宽泛的用法。

其他的术语被标记为潜在的“属性”。例如,一个人正在工作的项目(project)、某人是不是吸烟者(smoker)、房子的大小(size)和位置(location)。再把这些属性与概念构成联系,得出如图7-8所示的结构。

img63

图7-8 people和offices两大类的结构图

在本案例中,我们发现两个核心的对象类型,即为people(人)和offices(办公室),这两个对象能由属性集合的概念详细说明。图7-9展示了这两个概念的图解说明。

img64

图7-9 people和offices对象类型

结合分配任务模板所提供的推理结构,构建出办公室分配的推理结构,如图7-10所示。

img65

图7-10 办公室分配的推理结构

2.选择任务模板

为进行办公室分配,我们选择CommonKADS模型套件中的分配任务模板。做出这个选择基于两个原因:

(1)分配任务模板的定义与案例配合良好。分配的定义是,在两组对象(主体、资源)之间创建一个关系,这些对象满足要求并遵守约束。在本案例中,就是要为研究组成员分配办公室,研究组成员即为主体,办公室就是资源。

(2)分配任务模板已经包含了一个领域模式,这个模式给了我们一个领域建模的开端。一般情况下,在有效的可重用组件之间仍然有很大的不同,这涉及范围、详细程度和形式。虽然为达到标准描述需要进行大量研究,但以后仍然有很多事情要做。目前,知识工程师必须处理有不同性质和意义的可重用组件。

3.完整的知识—模型规范

由于分配任务模板为分配而覆盖了必要的知识组件,构造过程可以采取第一种形式,即由推理知识开始,然后再完善任务知识和领域知识。可以假定图7-10中的推理具有正确的详细程度并且从这里开始建模。

(1)任务知识

任务知识是用来描述应用知识所要达到的目标,以及为实现目标所采取策略的知识范畴。任务知识通常以层次方式来描述:高层任务分解成小任务,这些任务还可以分解成更小的任务。在任务分解的最底层,推理和传递函数与任务相链接。

有两种知识类型在描述任务知识时起主要作用:任务和任务方法。任务以输入—输出对定义一个推理目标。任务方法描述任务是如何通过将其分解成子函数并通过子函数执行的控制体制来实现的。任务和任务方法可分别理解为关于推理任务的“需要做什么”和“怎样做”。

该案例的最高层任务无需分解,且任务和任务—方法规范几乎可以从分配任务模板的默认方法中直接拷贝。任务分解图展示在图7-11中。该图以图形的形式展示了所有任务以及将它们最终连接起来的方法和推理。

img66

图7-11 办公室任务分解图

任务命名为ASSIGN-CASE。该任务定义在以下的详细规范中,描述了该任务的I/O。它通常会给任务一个与领域无关的名字。然而,在文本规范中我们能(随意地)加一个特定领域的名字(例如,ASSIGN-OFFICES-TO-PEOPLE)。注意,输入与输出也用与领域无关的词描述。

TASK ASSIGN-CASE;

 DOMAIN-NAME:ASSIGN-OFFICES-TO-PEOPLE;

 GOAL:"Assign a proper office to the proper people according to the criteria.";

ROLES:

 INPUT:

 SUBJECTS:"The people that need to get a office";

 RESOURCES:"The offices that can be assigned";

OUTPUT:

 ALLOCATIONS:"Set of people-office assignments";

END TASK ASSIGN-CASE;

TASK-METHOD ASSIGNMENT-METHOD;

 REALIZES:ASSIGN-CASE;

 DECOMPOSITION:

  INFERENCES:select-subset,group,assign;

ROLES:

SUBJECT-SET:"Subset of people with the same assignment priority";

SUBJECT-GROUP:"Set of people that can jointly be assigned to the same office. It may consist of a single people.";

    RESOURCE:"An office that gets assigned";

CURRENT-ALLOCATIONS:"Current people-office assignments";

  CONTROL-STRUCTURE:

  WHILE NOT EMPTY SUBJECTS DO

  select-subset(SUBJECTS-->SUBJECT-SET);

  WHILE NOT EMPTY SUBJECT-SET DO

  group(SUBJECT-SET-->SUBJECT-GROUP);

assign(SUBJECT-GROUP+RESOURCES+CURRENT-

ALLOCATIONS

   -->RESOURCE);

          CURRENT-ALLOCATIONS:=<SUBJECT-GROUP,RESOURCE>ADD

   CURRENT-ALLOCATIONS;

   SUBJECT-SET:=SUBJECT-SET DELETE SUBJECT-GROUP;

   RESOURCES:=RESOURCES DELETE RESOURCE;

   END WHILE

   SUBJECTS:=SUBJECTS DELETE SUBJECT-SET;

   END WHILE

   END TASK-METHOD ASSIGNMENT-METHOD;

(2)领域知识

领域知识描述一个应用领域中主要的静态信息和知识对象。一个领域知识描述通常由两种成分组成:单(或多)领域模式、单(或多)领域知识库。

领域模式:领域模式是通过一些类型定义对特定领域知识和信息进行的纲要性描述。模式描述了应用领域的静态信息/知识结构。从软件工程的一般角度来看,领域模式类似于数据模型或对象模型。图7-12展示了办公室分配的领域模式。

知识库:知识库包含某个领域模式中详细说明类型实例。知识系统和数据库应用之间的一个主要区别是数据库应用在分析过程中,人们很少对放进数据库中的真实事实感兴趣。而在知识系统中,知识库通常包含特定的知识片段,例如规则,这些才是人们所感兴趣的。在知识建模中通常要区分包含不同知识类型的多知识库。

知识建模不同于数字建模,我们一般对一些对象类型的“实例”感兴趣。它关系到这样的一些特殊类型,即实例表示的静态知识被用于推理过程。知识库是记录知识“实例”的工具。在知识精化阶段,知识库可以不断完善。(领域知识库的文本规范省略)

img67

图7-12 办公室分配的领域模型

(3)推理知识

知识模型中的推理知识描述了功能分解的最低层次。这些基本的信息处理单元在知识建模中成为推理。一个推理执行一个基本的推理步骤。通常,推理使用知识库中包含的知识从其动态输入中衍生出新信息。

我们确定了三个推理,这对于了解办公室分配任务是十分必要的:

①选择人员的子集

这个推理基于特定领域优先准则选择将要分配的主体的子集。例如,在这里,要先确定领导的位置,然后才能给其他人员分配办公室。这里所使用的知识范围很广,从正式的规则到用于约束搜索的启发式信息都会涉及。

②人员分组。这个推理产生一组人员,他们能被联合分配一个办公室。因为除了领导可以独自占用一间办公室,其他人员均需要和别人共用办公室。

分组通常让一种特定类型的领域知识起作用,该知识与关于人员与人员之间交互作用的约束和偏好相关。例如,将一个吸烟的人同不吸烟的人放在一起现在已经被认为是不可接受的。把分组看作一个任务并且把它进一步分解以便更详细地描述内部过程也是很有用的:首先,产生所有可能的分组;然后,用连续的“选择一子集”步骤,在该步骤中以一种特定的顺序使用约束和偏好以便过滤出不需要的或者不太偏好的分组。

③分配。在分配这一步,选择一间办公室,该办公室最符合同所涉及的人员相联系的约束和偏好。当前的分配经常是一个重要的输入,因为有些分配可能确实依靠人员所处的位置,例如,秘书需要安排在领导的附近。

推理不仅提供了任务和方法之间的连接,还提供了领域模式。与任务的主要区别是,推理没有与它关联的一个“方法”。在经过了输入、输出以及静态知识(动态和静态角色定义)之后,就假定推理被指定了。但推理内在的控制没有说明。

对推理使用的每一个角色,定义了一个从角色到扮演该角色的领域对象的映射。用这种方法,函数名(即角色)提供了“函数”本身(任务和推理)与“数据”(领域模式)之间的间接链接。(推理的文本规范省略)

4.验证知识模型

对于办公室分配的案例所构建的知识模型,可以采用纸上仿真的方法进行验证。表7-2给出了办公室分配的一些场景的纸上仿真。

表7-2以知识模型的属性进行纸上模拟

img68

续表

img69

续表

img70

续表

img71

根据以上仿真过程,发现该模型所得结果基本符合案例中分配的要求和规则,每个人都被分到一个合适的办公室中,符合专家的认知模型。当然,这可能不是最优的结果,但是建模的过程本身就是一个构造型问题求解的活动,并不存在单一的“最优”解。因此,以上结果基本证明了该知识模型的可用性

参考文献

[1]吴泉源,刘江宁.人工智能与专家系统[M].长沙:国防科技大学出版社,1995.

[2][7]敖志刚.人工智能与专家系统导论[M].合肥:中国科学技术大学出版社,2002.

[3]张玉峰.决策支持系统[M].武汉:武汉大学出版社,2004.

[4][9]张仰森.人工智能原理与应用[M].北京:高等教育出版社,2004.

[5][6]陈世福,陈兆乾.人工智能与知识工程[M].南京:南京大学出版社,1997.

[8]高济,朱淼良,何钦铭.人工智能基础[M].北京:高等教育出版社,2002.

[10][11]严怡民,张玉峰.信息系统理论与实践[M].武汉:武汉大学出版社,1999.

[12]王要武.管理信息系统[M].北京:电子工业出版社,2003.

[13][14]http:∥www.edulife.com.cn/Infos/200701/2995837139.html(2007-3-3).

[15][18]程志.知识工程的KADS建模方法[J].计算机与现代化,2006(11):71-73.

[16][17]Guus Schreiber,史忠植.知识工程和知识管理[M].北京:机械工业出版社,2003.

[19]袁晓宁.基于CommonKADS的企业知识建模研究[D].大连海事大学经济与管理学院,2006.

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈