知识库系统与外部数据源接口的研究47344.docx
《知识库系统与外部数据源接口的研究47344.docx》由会员分享,可在线阅读,更多相关《知识库系统与外部数据源接口的研究47344.docx(16页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、一个知识库系统与外部数据源接口的研究 马金平 邢筠(青岛大学学商学院院管理系系, 26660771)摘要 本文文论述了了一个知知识库系系统与外外部数据据源接口口的描述述定义和和程序实实现方法法。关键词 知知识库系系统 数据库库 数据据源1 引言随着智能决决策支持持系统应应用领域域的不断断扩大,原原来由模模型库系系统完成成的部分分定量分分析任务务,将归归并到知知识库系系统中。即即要求知知识库中中,不仅仅有专家家的定性性知识,而而且也应应该具有有计算知知识,形形成一个个广义的的知识库库系统。在在广义知知识库系系统中,要要求推理理机不仅仅要具有有一般的的推理功功能,而而且能够够从外部部数据源源获取数
2、数据,对对数学模模型进行行求解的的功能。如如何从外外部数据据源获取取数据,是是使推理理机具有有模型求求解功能能的关键键技术之之一。笔笔者在生生产成本本管理知知识库系系统的开开发过程程中,使使用Viisuaal cc+66.0 成功地地研究开开发了该该知识库库系统与与外部数数据源的的接口,拓拓宽了推推理机的的功能,收收到了比比较好的的效果。外外部数据据源主要要是指文文本数据据文件、数数据库和和Exccel电电子表。由由于受篇篇幅限制制,本文文主要针针对知识识库系统统与文本本数据文文件、数数据库接接口的设设计实现现问题进进行讨论论。知识识库系统统与Exxcell电子表表的接口口问题,笔笔者将另另撰
3、文介介绍。2 接口口的描述述定义在生产成本本管理知知识库中中,以知知识数据据块的形形式对外外部数据据源进行行如下描描述定义义。2.1 文文本数据据文件接接口的定定义格式式 DAATAFFILEE /可以以定义多多个文件件的接口口。 =OOPENN()/在一一个接口口中,可可以定义义任意个个输入数数据文件件。 =RREADD(,行行号,列列号)/可以以有多行行。 | /或 WWITHH =RREADD(行号号,列号号) /可以以有多行行。 EEND WITTH ENND DDATAAFILLE 2.2数据据库接口口的定义义格式 DATTABAASE /在一个个知识库库中可以以定义多多个这样样的接
4、口口 CONNNECCTIOON = /可以同同时定义义多个连连接对象象 INPPUTTTABLLE /每个个接口只只能定义义一个输输入块。 RECCORDDSETT =,CCONNNECTTIONN /可以定定义多个个记录集集对象名名。 变变量=.FIEELDSS(字段段序号)/可可以有多多行 | /或 WITHH AADO记记录集对对象名 =.FIIELDDS(字字段序号号) /可以以有多行行 END WITTH ENDD INNPUTTTABBLE OUTPPUTTTABLLE /定义义与存储储结果数数据表的的接口,每每个接口口最多可可以定义义一个输输出块。 RRECOORDSSET =
5、,; .FIEELDSS(字段段序号)=变变量; | /或 WITHH FFIELLDS(变变量序号号)=; END WITTH ENDD OUUTPUUTTAABLEE EEND DATTABAASE在上述格式式中,变量是指计计算表达达式及模模型中需需要用户户提供值值的参数数,或存存储表达达式及模模型的求求解结果果。“/”表示注注释。此此外,笔笔者在生生产成本本管理知知识库系系统开发发工具中中,开发发了知识识库与外外部数据据源接口口定义的的辅助工工具,用用户利用用这些工工具可以以十分方方便地完完成接口口的描述述定义工工作。3 接口程程序的实实现在推理机运运行之前前,首先先将知识识库读入入内存
6、,并并且转换换成计算算机的内内部表现现形式。接接口程序序再根据据知识库库与外部部数据源源接口的的定义,将将外部数数据源的的数据读读入内存存缓冲区区后,最最后在进进行推理理。为了便于查查找知识识库与外外部数据据源接口口的定义义语句,首首先定义义如下数数据结构构:strucct LLineeTexxt /存储储知识库库语句行行文本。 CCStrringg Teext;/存存储知识识库语句句行文本本strucct llineetexxt *pNeextLLinee;/下一行行指针 *ppLinneTeextHHeadd; /知知识库语语句首行行指针。strucct DDataaObjjectt /知
7、识数数据块对对象索引引表 CSStriing ObjeecTypee;/对象类类型strucct LinneTextt *ppTexxtLiine;/对对象首行行在LiineTTextt中的指指针strucct DDataaObjjectt *ppNexxtObjeect;/指向向下一个个知识数数据块对对象。strucct KKnowwClssNamme /存储储知识类类名称定定义语句句文本 CSStriing ClssNamme;/知识识类名称称strucct KKnowwClssNamme *pNeextCCls;/下下知识类类名称的的指针strucct LLlinneTeext *pTT
8、exttLinne;/知识识类名称称在LiineTTextt中的指指针strucct DDataaObjjectt *ppFirrstOObjeect;/指指向知识识类中第第一个知知识数据据块对象象的指针针strucct MMethhod *pFFirsstMethhod;/指指向知识识类中第第一个知知识方法法的指针针*pCllsHeead;/指指向知识识类的头头指针。根据上述数数据结构构的定义义,接口口程序总总体实现现的程序序流程如如图1所所示。在在图1中中,当ppDo-ObbjecctTyype等等于“DATTAFIILE“或“DATTABAASE”或“EXCCEL”时,系系统分别别调用从
9、从文本数数据文件件、数据据库和EEXCEEL电子子表获取取数据的的接口函函数。其其中:文文本数据据文件接接口函数数的程序序流程如如图2所所示,数数据库接接口函数数的程序序流程如如图3所所示。“OTHHER”表示知知识库中中的其它它知识数数据块对对象。开始pClspClsHead终止pDo=pClspFirstObjectpCls=NULL?? No Yess pDoObjectType=?pDo=NULL? YYes NNo pCls=pClspNextCls AB C DAATABBASEE EXCCEL OTHHER DAATAFFILEEpDo=pDopNextObject 图1 接口口
10、程序总总体实现现的程序序流程 3.1 数数据文件件接口函函数程序序的实现现为了存储从从外部数数据文件件获取的的数据,定定义如下下数据结结构:strucct DDataaFilleBuuffeer /数数据文件件缓冲区区 CSStriing VarriabbleNNamee;/变变量名称称 doubble DaataVValuue;/从文文本文件件获取的的变量值值 struuct DaataBBufffer *pNexxtPaata;/指指向下一一个变量量的指针针*pDaataBBuffferHHeadd,*ppDattaBuuffeerTaail;/缓缓冲区的的头指针针和尾指指针。据此,绘出出
11、从外部部数据文文件获取取数据的的接口函函数的程程序流程程如图22。由于于受篇幅幅限制,图图2仅给给出了程程序的主主要算法法流程。在在编程时时,还必必须考虑虑具体实实现的细细节,例例如:如如何从一一个数据据行中,确确定数据据项数量量,找到到Coll列;如如何创建建DattaFiileBBufffer的的链表结结构等。3.2 数数据库接接口函数数程序的的实现 根据上述知知识库与与数据库库接口的的定义格格式以及及知识库库内部存存储结构构,可以以绘制出出数据库库接口函函数程序序总体流流程如图图3所示示。其中中:D表表示输入入数据表表接口程程序流程程,如图图4所示示;E表表示输出出数据表表接口程程序流程
12、程。3.2.11 输入入数据表表接口程程序的实实现为了存储从从输入数数据表获获取的数数据,定定义数据据结构如如下: strucct IInpuutDaataBBufffer /存存储从数数据库获获得的数数据,每每一个变变量建立立一个数数据区 _vaariaant_t DDataaVallue;/可可以存储储不同类类型的数数据;strucct IInpuutDaataBBufffer *pNNexttDattaVaaluee;;strucct PPremmiseeVarriabbleBBufffer /前前提变量量(自变变量)集集区,接接受来自自数据库库的数据据 CSttrinng VVarii
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 知识库 系统 外部 数据源 接口 研究 47344
限制150内