基于知识的柔性综合集成系统既可实现测试集成和控件集成,同时又可对两种集成通过功能“赋予”再实现融合,为形成可复用控件提出软性操作平台,即软设计、软调试、软组合等。柔性综合集成系统相当于虚拟仪器的设计室、工艺室和制造车间的总体。实现柔性综合集成并解决语义失配问题,关键在于通过协调管理来建立控件间的柔性连接。这本身是一个知识密集型任务,只有形式化地抽取和表示关于开发系统软件体系结构、控件的配置以及控件间相互作用和配合协调的知识,才能以知识建模的方式快速建立控件组装模式和协调管理的行为模型。这些知识具有以下特点:
1)知识的具体内容只起辅助作用,并不直接提供信息处理和问题求解功能,目的仅在于促进异质控件间的协调合作。
2)知识散布于控件的拼搭之中,为柔性连接这些控件提供粘合剂。
3)知识作为整体起到不可忽视的关键作用——使异质控件协调一致地实现综合集成能力。
基于知识的柔性综合集成系统(Flexible Integrated System,FIS)可定义为一个五元组:
FIS=<CC,MP,KB,AE,CI>
其中,CC为控件的集合(Control Collection);MP为中介处理器的集合(Medium Pro-cessor);KB为知识库(Knowledge Base);AE为诱导推理机(Abduction Evolve);CI为通信接口(Communication Interface)。
柔性综合集成系统(FIS)采用集中控制的方式协调管理其下层控件提供的服务,FIS的工作示意图如图10-9所示。
图10-9 FIS的工作示意图
1.基于知识的建模分析
基于知识的问题求解建模,是通过建模获取关于协调管理的知识,来实现控件拼搭的问题求解,因此,基于知识的建模与FIS体系结构的设计不可分离,体系结构成为描述协调管理行为和组织综合集成上下文的约束框架。将FIS体系结构分三个层次——任务归约、子任务联想和连接处理,描述如下:
FIS=TR+SA+CP
其中,TR为任务归约(Task Reduction),通过由任务的层次归约(分解)产生的任务结构来刻画FIS的体系结构,并以其作为控件的配置框架;SA为子任务联想(Subtask Asso-ciation),通过示例(剪裁)联想模式来控制拼搭中每个控件的信息处理,并由此形成协调管理的控制策略;CP为连接处理(Connect Process),通过设置符号推理和多种形式的中介处理来表示控件拼搭的柔性连接。
任务可以有多个归约方案,这个归约方案集[Reduction Scheme Set(RSS)]以BNF范式表示为:
每个方案表示不同的后继信息处理策略,包含一至多个需顺序完成的子任务,并以cf指示优先级。任务的层次归约形成AND/OR有向图形式的任务结构,反映了人在充分认识复杂事物时使用的强有力思维方法——层次分明抽象。归约方案则是指导层次抽象的有效手段。
子任务联想定义控件的控制要求、调度方式和处理环境,其BNF范式定义如下:
其中,最重要的联想条款是一组可选的控制要求。通过选择和组合控制要求,可以为协调管理定义丰富和灵活的控制策略。例如,确定控件是否需要以必要条件和充分条件来激活;是否需作局部处理和提出(归约出)后继信息处理,以推进协调管理;当充分条件不满足时是否回溯、悬挂该控件、作局部处理和提出后继控件,以修正协调管理行为。
任务归约(TR)和子任务联想(SA)联合起来形成FIS问题求解结构和系统行为的概念模型,并去指导协调管理知识的获取和控制这些知识的使用。鉴于FIS以控件组装的方式生成,所以适宜于建立这样的概念模型。
连接处理附属子任务联想模式中的控制要求,用于描述协调管理活动的细节,以BNF范式定义如下:
<CP>:=<Macro-Adjust>|<Micro-Processing>
<Macro-Adjust>:=<Logic-Sentence>|
<Reduction-Planning>
<Backtracking-Command>|
<Suspending-Command>
<Micro-Processing>:={<operation>|<rule>|<rule-group>}
宏观调控用于实现子任务协调管理的控制策略,包括由逻辑语句表示的子任务激活的必要条件和充分条件、归约规划活动(直接指定归约方案或经由归约规则组推理),以及指示回溯和悬挂的命令,构成对控件拼搭柔性连接的策略性控制。微观处理通过操作、操作规则(有条件操作)和操作规则组(操作的选择和组合)的序列表示控件拼搭的柔性连接,从可复用资源索引库查询到的控件,则成为设计微观处理的依据。操作分为两大类:控件拼搭和中介连接。中介连接为控件拼搭作预处理和后处理,由中介子程序来实现。中介子程序作为程序性知识和连接处理的描述一起构成知识库。
知识库描述的协调管理行为构成动态组织综合集成上下文和实施控件间柔性配合的依据,综合集成上下文(Integration Context,ICT)定义为如下二元组:
ICT=<(CCI,≤),(CE,≤)>
其中,CCI和CE分别为控件拼搭和连接事件的半序集。
连接事件作用于控件拼搭之间,为控件作预处理和后处理,解决语义失配问题并在必要时作解答综合。这两个半序集可视为基于知识的诱导推理的结果。
诱导推理的机制就是从可拼搭的语义不一致的控件集中,诱导出与仪器系统当前运行环境相容的控件,并配置适当的中介处理去消除语义失配问题,以实现柔性集成。
2.柔性综合集成的实现
柔性综合集成可定义为三元组:
FI=<M,R,I>
其中,M为控件模型;R为资源复用;I为综合集成。
柔性综合集成的实现是一个自顶向下和自底向上相结合的软件工程,主干流程如下。
1)在需求分析的基础上作FIS的概念设计:配置控件和规划综合集成上下文的组织,综合集成层提供的主要控件配置界面和基于知识的建模工具,用于帮助完成概念设计。
2)查询要配置的控件是否为可复用控件。资源复用层帮助设计者快速查询,可共享或经修改后可复用的控件。
3)通过获取知识来实现控件间的柔韧性连接,并设计中介处理器,完成FIS的设计。
(1)控件模型 控件模型的标准结构如图10-10所示,这种结构把功能的实现细节封装于模型内部,外部程序可通过入口来访问模型的功能。为了更好地完成自己的功能,模型应具备调用其他控件的能力,这通常涉及三个方面的接口。(www.xing528.com)
图10-10 控件模型的标准结构
1)控件调用接口:提供调用其他控件入口的能力。这里涉及中介处理器的连接作用,中介处理器用来处理控件间的语义失配问题,对请求、结果的语法和语义作转换和附加处理。
2)功能程序的接口:为了对控件进行功能“赋予”和测试融合,因此需要该接口。
3)数据库的接口:提供与数据库管理系统交互的能力,用于格式化数据的存取和处理。
(2)资源复用 资源复用可以在以下三个层次上进行:
1)复用建模工具:以建立所需的控件模型。
2)复用控件模型:基于相应的建模工具对拟复用模型作修改;
3)共享信息源:这些信息源可以是数据库和信息文件。
前两个层次属静态复用,发生在FIS的开发时,第三个层次则属于动态共享,发生在FIS的运行过程中。为支持资源的复用,必须提供资源的索引机制,以便浏览和快速查询适合使用的资源。资源复用(Reusable Resource,RR)定义为二元组:
RR=<RIL,RO>
其中,RIL为资源索引库(Resource Index Library),包含可复用资源的信息。RO为资源操作(Resource Operation)。RO={Abstraction,Selection,Reuse,Integration}。其中,Abstraction为抽象操作,提供资源的应用入口和开发工具的信息;Selection为选择操作,帮助设计者快速查询和选择所需的资源;Reuse为复用操作,以不同的方式复用控件模型、建模工具和信息源;Integration为可复用控件集成操作。
RIL将可复用资源的索引信息分类存放,组织成分类体系,如图10-11所示。
图10-11 可复用资源的索引信息分类存放
(3)柔性综合集成 实现柔性综合集成,包含了如下两个方面的措施:
1)使能技术。使能技术提供以下两种调用接口:
①模型调用接口callModel。性质如下:
功能:调用其他模型的入口。
参数:模型名,入口名,参数1,参数2,……
返回:链表(其元素是称为element的结构)。
②用户函数调用接口。除了提供一系列的系统函数之外,还能调用用户函数。因此,能集成常规的例程;另一方面,可以把用于协调模型交互的中介处理器作为用户函数集成到知识模型中去,为柔性综合集成提供重要的手段。
2)协调管理。如前所述,它是实现柔性综合集成的关键。知识模型可作为开发系统的主部件,由它管理和协调其他控件的调用,它有两种工作模式:服务和客户方式。服务方式对外界提供知识服务,涉及两个接口:
①获取服务请求接口GetRequest。性质如下:
功能:等待并获取到达的服务请求。
参数:无。
返回:服务请求(链表)。
②服务结果发送接口SendResult。性质如下:
功能:发送服务结果。
参数:结果1,结果2,……
返回:TRUE/FALSE。
建模工具提供相应的模型模块生成程序,用于把与模型相关的文件编译成模型模块(程序库);基于知识的柔性综合集成模型不仅提供了模型模块的生成功能,还提供了系统自动装配工具,如图10-12所示,工具可以把模型、模型解释器、用户函数等装配成可执行的系统。
图10-12 系统自动装配工具
3)部件装配生成 可执行系统由界面、模型模块、模型解释和模型定义文件等部件装配生成。
①界面部分 提供了默认的顶层界面,用户可以不用该界面而定制自己的界面。
②模型模块 指所建立的模型及其相关的文件,具体的文件视建模工具而定。模块可分为三部分:模型定义(包括概念模型)、模型内容和用户函数定义文件(这些文件的后缀分别为.sap、.s和.ufd)等。知识库由编码器编译模型定义生成,供推理机高效执行和解释机构使用,.KB是知识库;.FKB为用户函数信息库;.IKB为用于解释的知识库。用户函数文件是实现用户函数功能的源文件。
③模型解释器。每个建模工具均带有用于解释性执行知识库的程序模块,应联编到可执行系统中。
④模型定义文件。定义组成开发系统的模型的信息,包括两个方面的内容,由具有柔性综合集成功能的建模工具生成:
a.模型信息表,包括模型名、用户函数表、运行过程中生成的模型指针。
b.模型的入口表,定义供外界调用的模型入口。
综上所述,从基于层次消息总线的软件体系结构的角度,知识的概念模型以逐步精化的方式将FIS的体系结构描述为任务的层次分解,作为控件的装配框架,并通过设置关于中介处理的操作来实现控件间的柔性拼搭。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。