一种决策支持系统模型动态生成策略研究.doc
《一种决策支持系统模型动态生成策略研究.doc》由会员分享,可在线阅读,更多相关《一种决策支持系统模型动态生成策略研究.doc(12页珍藏版)》请在三一文库上搜索。
1、一种决策支持系统模型动态生成策略研究收稿日期:2015-10-16 基金项目:国家自然科学基金(编号:61363007)。 通信作者:刘世洪,研究员,主要从事农业信息化研究。E-mail:。 决策支持系统(Decision Support System,DSS)是以计算机技术为基础的对决策支持的知识信息系统,用于处理决策过程中的半结构化和非结构化问题1。一般而言,决策者使用DSS不是直接依靠数据进行决策,而是依靠模型库中的模型进行决策,所以DSS是由“模型驱动”的2。因此有关模型的表达、存储及执行等模型生成方面的研究显得尤为重要。良好的模型生成环境有助于高质量DSS模型的构建及运行,如通过配置
2、Hadoop云环境,可实现模型的并行计算3;或以面向服务为架构,设计作物模型区域应用Web服务组合框架等来解决作物模型与GIS集成环境问题4。 近年来,将模型驱动工程等新兴开发方法应用于DSS模型综合生成环境的研究成为新热点。如有学者提出基于问题求解的模型表示方法5、定性定量相结合的综合集成模型构造方法6、基于模型驱动开发理论的设计流程建模工具7或作物生长模型可视化设计工具8,以及综合作物系统模拟技术、知识工程及自适应软件开发方法,运用系统分析和知识建模手段,采用模型描述脚本功能构建作物生长模型来设计智能化作物集成建模辅助系统9。 模型驱动工程的优点是采用相关领域的建模语言,构建可视化模型,使
3、领域专家和设计人员专注于业务逻辑而无需过早考虑平台相关的实现细节。然而领域模型构建后,最终还需要通过自动(半自动)的层层转换完成从设计到实现的过渡。虽然采用模型驱动工程开发方法将有助于构建领域模型PIM(平台无关模型),但目前针对将PIM转化为PSM(平台相关模型)的代码框架构建以及模型的复合和运行方面的研究仍显不足。从系统的计算机实现角度看,仍存在模型转换过程中过度依赖于程序代码等现象,缺乏自动化和智能化、面向建模人员的模型构建、复合及运行的系统环境。 由于微软的WF提供了良好的工作流建模环境,可以在此平台上进行二次开发,内嵌的WF工作流引擎可完成工作流的解析,因此设想DSS子模型的复合和求
4、解过程即为一个工作流模型构建及运行的过程:(1)DSS子模型可视为一个包含求解算法的活动;(2)子模型的复合即为在工作流平台下将多个活动按照规则构建工作流模型的过程;(3)复合模型的运行则是这些活动在工作流引擎的调度下完成的运算。 为此,本研究在已知模型表达形式的基础上,提出一个面向建模人员、无需编程即可覆盖模型从构建到复合运行过程的模型自动生成策略,并采用WF工作流及动态编译等技术实现相应的原型框架。最后以作物生长模型为例,对模型的生成过程进行了验证。 1系统总体设计 1.1系统设计策略及流程 模型自动生成策略的基本思想是首先提供一个模型构建环境,支持多种算术表达式符号的创建;其次完成模型运
5、算的自动解析及存储表达;最后创建WF自定义工作流设计器,实现模型程序集的构建、导入、复合和运行。综合以上思路,得到如下设计流程图(图1)。 TPTCS1.tif 1.2系统架构 本框架设计主要包括系统架构设计以及模块设计两大部分。架构设计是基础,模块设计是核心。体系架构设计的目的是根据设计目标,确定总体结构中各模块的分工、任务边界以及协作机制。根据设计流程,确定整体架构3个层次:(1)独立开放的模型创建环境;(2)自动快捷的模型文件转换环境;(3)操作简便的模型复合及运行环境。 1.3模块设计 模块是从用户需求角度,对体系结构功能和任务有机地划分。模块设计时,需根据各模块任务、边界和工作流程,
6、构建清晰的数据结构,完成模块菜单以及人机交互界面设计,同时完成模块的输入输出等功能10。结合框架的核心功能,设计了模型创建模块、模型解析模块、模型转换模块、模型复合及运行模块等4个模块。模块之间可独立运行,但又相互协作,无缝衔接,贯穿整个生成周期。 1.3.1模型创建模块 微软的VS2010开发环境下,结合第三方控件MathMLControl实现模型创建模块。建模用户可借助其数学公式编辑功能以及可视化工具箱,有效地完成较复杂的数学表达形式。保存后自动将模型表达转换为符合MathML语法格式的XML类型文件。 1.3.2模型解析模块 针对文档数学公式中所涉及的MathML各种符号表达,如标志符、
7、操作符、数字、文本等,模块将依据后述的文法规则,采用递归下降语法和语义分析方法,结合标准的C#函数将其解析成C#中间代码。解析程序使用的核心类(图2)对应算术和代数运算符、分式和根式运算符、上下标等符号的表示以及相应的语义解析。 1.3.3模型转换模块 该模块提供将C#中间代码转化为标准XAML工作流文件的转换环境。为实现转换过程的通用化,采用了VS2010中的T4文本模板。所设计的模板可以根据模型公式左右两边的变量自动生成输入及输出参数。最后采用动态编译执行技术将包含模型参数及运算流程的中间代码序列化为XAML文件。 1.3.4模型复合及运行模块 此模块提供工作流文档复合和运行的环境,其核心
8、就是一个内嵌WF工作流引擎11、能独立运行、界面友好的可承载自定义流程设计器。包括如下功能: (1)模型导入。模型导入的过程即为动态加载工作流文件的过程,其实质是将带自定义输入参数的XAML文档进行反序列化,并将文件中的对象转换为工作流活动实例,最后以图形方式呈现在设计器画布中。 (2)模型保存。模型保存过程是将设计器中的工作流定义序列化为XAML文件。这些已序列化的定义内容可以重新加载以便编辑或检测,也可以传递给生成系统以供编译,加载并调用。 (3)模型动态编译和复合设计。模块具备动态编译当前已加载的工作流模型并保存为程序集的功能。进行模型复合设计时,设计者可以将多个模型程序集加载至活动工具
9、箱,并结合WWF内置的Flowchart、Sequence、Parallel等活动一起完成工作流程的设计。 (4)模型运行。一旦模型复合设计完毕,内置的WF工作流引擎将根据设计的流程运行。 2系统关键问题及实现 2.1模型表达及转换 生成过程的不同阶段,模型的表达形式有所不同。因此,如何将不同阶段模型的表达形式进行转换是系统框架设计中优先考虑的问题。 2.1.1模型符号表达及存储 在模型构建环境中,引入了第三方控件MathMLControl。它是一个数学公式可视化控件,不仅包含了大量的数学相关符号,如算术运算符号、导数符号、积分符号等,还提供了强大的数学公式编辑功能,可有效进行诸如上标、下标等
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 一种 决策 支持系统 模型 动态 生成 策略 研究
链接地址:https://www.31doc.com/p-1591961.html