资源预览内容
第1页 / 共31页
第2页 / 共31页
第3页 / 共31页
第4页 / 共31页
第5页 / 共31页
第6页 / 共31页
第7页 / 共31页
第8页 / 共31页
第9页 / 共31页
第10页 / 共31页
亲,该文档总共31页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第第7 7章章 决策支持系统的开发与实例决策支持系统的开发与实例(1 1)第第7章章 决策支持系统的开发与实例决策支持系统的开发与实例7.1传统决策支持系统的设计与开发传统决策支持系统的设计与开发7.2传统决策支持系统开发工具传统决策支持系统开发工具7.3 新决策支持系统的开发新决策支持系统的开发7.4基于客户基于客户/服务器的决策支持系统快速开发平台服务器的决策支持系统快速开发平台 CS-DSSP75 基于客户基于客户/服务器的决策支持系统实例服务器的决策支持系统实例76 网络环境的决策支持系统的对比分析网络环境的决策支持系统的对比分析7.1 7.1 决策支持系统的设计与开发决策支持系统的设计与开发 7.1.1 7.1.1决策支持系统开发过程决策支持系统开发过程7.1.27.1.2决策支持系统设计决策支持系统设计 7.1.3 7.1.3决策支持系统关键技术决策支持系统关键技术 第(第(1 1)部分)部分7.1.1决策支持系统开发过程决策支持系统开发过程DSSDSS系统开发的主要步骤为:系统开发的主要步骤为:(1 1)DSSDSS系统分析系统分析,包括确定实际决策问题目标,对,包括确定实际决策问题目标,对系统分析论证。系统分析论证。(2 2)DSSDSS系统初步设计系统初步设计,包括对决策问题进行分解成,包括对决策问题进行分解成多个子问题以及它们的综合。多个子问题以及它们的综合。(3 3)DSSDSS系统详细设计系统详细设计,包括各个子问题的详细设计,包括各个子问题的详细设计(数据设计和模型设计)和综合设计。(数据设计和模型设计)和综合设计。数据设计数据设计包包括数据文件设计和数据库设计。括数据文件设计和数据库设计。模型设计模型设计包括模型包括模型算法设计和模型库设计。算法设计和模型库设计。知识设计知识设计包括知识表示设包括知识表示设计、推理机设计和知识库管理系统的设计。计、推理机设计和知识库管理系统的设计。综合设综合设计计包括对各个子问题的综合控制设计。包括对各个子问题的综合控制设计。(4 4)各部件编制程序)各部件编制程序,包括,包括建立数据库和数建立数据库和数据库管理系统;据库管理系统;编制模型程序,建立模型库、编制模型程序,建立模型库、模型库管理系统;模型库管理系统;建立知识库、编制推理机建立知识库、编制推理机程序以及完成知识库管理系统。程序以及完成知识库管理系统。 编制综合控编制综合控制程序(总控程序),由总控程序控制模型的制程序(总控程序),由总控程序控制模型的运行和组合,对数据库数据的存取、计算等处运行和组合,对数据库数据的存取、计算等处理,设置人机交互等。理,设置人机交互等。(5 5)四部件集成为)四部件集成为DSSDSS系统系统,包括解决部件接口,包括解决部件接口问题,由总控程序的运行实现对模型部件和数问题,由总控程序的运行实现对模型部件和数据部件的集成,形成据部件的集成,形成DSSDSS系统。系统。 决策支持系统(决策支持系统(DSSDSS)的开发流程图)的开发流程图 1. DSS 1. DSS系统分析系统分析 确定决策目标,目标代表了方向和确定决策目标,目标代表了方向和预期的结果。预期的结果。 对于建立新系统,提出总的设想、对于建立新系统,提出总的设想、途径和措施。在系统分析的基础上提出途径和措施。在系统分析的基础上提出系统分析报告。系统分析报告。 2 DSS2 DSS的初步设计的初步设计 DSSDSS系统初步设计完成系统总体设计,进行问题分解和问题系统初步设计完成系统总体设计,进行问题分解和问题综合。综合。对问题进行分解,分解成多个子问题并进行功能分析。对问题进行分解,分解成多个子问题并进行功能分析。在系统分解的同时,对各子问题之间的关系以及它们之间的处在系统分解的同时,对各子问题之间的关系以及它们之间的处理顺序进行问题综合设计。理顺序进行问题综合设计。 对于数量化比较明确的决策问题,可以采用定量的数学模对于数量化比较明确的决策问题,可以采用定量的数学模型。对于数量化不明确的决策问题,可以采用知识推理的定性型。对于数量化不明确的决策问题,可以采用知识推理的定性模型。对于比较简单的决策问题可以采用定量模型或定性模型模型。对于比较简单的决策问题可以采用定量模型或定性模型来加以解决。对于复杂的决策问题需要把多个定量模型和定性来加以解决。对于复杂的决策问题需要把多个定量模型和定性模型结合起来。模型结合起来。 对各子问题还要进行数据设计,对各子问题还要进行数据设计,主要考虑到两方面:主要考虑到两方面: (1 1)数据提供辅助决策的要求。)数据提供辅助决策的要求。 (2 2)为模型计算提供所需要的数据。)为模型计算提供所需要的数据。 3 DSS3 DSS详细设计详细设计 对数据的设计,包括数据文件设计和数据库的设计。对数据的设计,包括数据文件设计和数据库的设计。 对模型的详细设计包括模型算法设计和模型库的设计对模型的详细设计包括模型算法设计和模型库的设计 对于模型的多个文件如何组织和存贮是模型库设对于模型的多个文件如何组织和存贮是模型库设计的主要任务。计的主要任务。 对于数学模型一般是以数学方程的形式表示。如对于数学模型一般是以数学方程的形式表示。如何在计算机上实现,需要对模型方程提出算法设计,何在计算机上实现,需要对模型方程提出算法设计,当模型在设计了有效的算法后,才能利用计算机语当模型在设计了有效的算法后,才能利用计算机语言编制计算机程序,在计算机上实现。言编制计算机程序,在计算机上实现。 对知识的详细设计包括确定知识表示形式,知识获取一般由知对知识的详细设计包括确定知识表示形式,知识获取一般由知识工程师从领域专家那里获取。识工程师从领域专家那里获取。 对知识的推理机实际上是对推理树的深度优先搜索。对知识的推理机实际上是对推理树的深度优先搜索。4 各部件编制程序各部件编制程序(1) 数据部件的处理数据部件的处理 针对具体的实际问题,需要建立数据库。建立数据库一般包针对具体的实际问题,需要建立数据库。建立数据库一般包括括建数据库结构和输入实际数据建数据库结构和输入实际数据。利用数据库管理系统提供的。利用数据库管理系统提供的语言,建立有关数据库查询、修改的数据处理程序。语言,建立有关数据库查询、修改的数据处理程序。(2)模型部件的处理)模型部件的处理 模型库管理系统现在没有成熟的软件,需要模型库管理系统现在没有成熟的软件,需要自行设自行设计并进行程序开发计并进行程序开发。 模型库的组织和存贮,一般由模型字典和模型文件模型库的组织和存贮,一般由模型字典和模型文件组成。组成。 模型库管理系统就是对模型字典和模型文件的有效模型库管理系统就是对模型字典和模型文件的有效管理。管理。 模型部件的集成,主要体现在模型库和模型库管理模型部件的集成,主要体现在模型库和模型库管理系统的统一。系统的统一。(3)知识部件的处理)知识部件的处理知识部件需要建立知识库、编制推理机程序和开知识部件需要建立知识库、编制推理机程序和开发知识库管理系统。发知识库管理系统。知识库中除领域知识以外还需要增加元知识,帮知识库中除领域知识以外还需要增加元知识,帮助推理机从目标开始搜索到叶节点,向用户提助推理机从目标开始搜索到叶节点,向用户提问。对多知识树还需进行元知识的推理。问。对多知识树还需进行元知识的推理。推理机的原理是在知识树中进行深度优先搜索。推理机的原理是在知识树中进行深度优先搜索。知识库管理系统类似于数据库管理系统,可以自知识库管理系统类似于数据库管理系统,可以自行设计和完成。行设计和完成。 (4 4) 综合部件处理综合部件处理 编制编制DSSDSS总控程序是按总控详细流程图,总控程序是按总控详细流程图, DSS DSS系统总控的计算机语言,需要有系统总控的计算机语言,需要有数值计算能数值计算能 力、数据处理能力、模型调用能力力、数据处理能力、模型调用能力等多种能力。等多种能力。 利用象利用象PASCALPASCAL、C C这样的语言作为宿主语言增这样的语言作为宿主语言增加在加在DSSDSS中不足的功能(如数据处理以及模型调用中不足的功能(如数据处理以及模型调用和知识推理调用和知识推理调用等)。等)。 5.DSS 5.DSS集成集成 DSS DSS的四部件集成,首先要解决四部件之间的接口问题,的四部件集成,首先要解决四部件之间的接口问题,然后对四部件进行集成,最后形成然后对四部件进行集成,最后形成DSSDSS系统。系统。(1 1) 接口问题接口问题 最基本的接口问题最基本的接口问题是模型对数据库中数据的存取接口。是模型对数据库中数据的存取接口。 第二个接口问题第二个接口问题是总控程序对数据库的接口问题是总控程序对数据库的接口问题 第三个接口问题第三个接口问题是总控程序对模型的调用是总控程序对模型的调用 实际上总控对模型程序的调用需通过模型字典作桥梁,再实际上总控对模型程序的调用需通过模型字典作桥梁,再调用模型执行程序文件。调用模型执行程序文件。 第四个接口问题第四个接口问题是总控程序对知识推理的接口,当知识推理是总控程序对知识推理的接口,当知识推理部件采用的语言和总控程序采用的语言是一致时,就可以直部件采用的语言和总控程序采用的语言是一致时,就可以直接调用。若采用是不一样的语言时,就存在两种语言的接口接调用。若采用是不一样的语言时,就存在两种语言的接口问题。问题。 DSSDSS总控程序调用模型程序的运行过程图总控程序调用模型程序的运行过程图DSS总控程序总控程序模型字典模型字典模型执行程序模型执行程序(2 2) 集成问题集成问题 DSS DSS总控程序是由总控程序是由DSSDSS语言来完成的,也即语言来完成的,也即DSSDSS语言是一语言是一种集成语言,目前各类计算机中还未配备这种多功能的种集成语言,目前各类计算机中还未配备这种多功能的DSSDSS语言,自行设计语言,自行设计DSSDSS语言,将针对这几种能力集成为一体,语言,将针对这几种能力集成为一体,将能有效地完成将能有效地完成DSSDSS系统的集成。系统的集成。 以以C C 和和PASCALPASCAL语言为宿主语言的基础上,增加对数据库语言为宿主语言的基础上,增加对数据库操作的能力,设置接口程序。使它们提高到操作的能力,设置接口程序。使它们提高到DSSDSS集成语言的集成语言的水平上,才能完成水平上,才能完成DSSDSS总控程序的需要。总控程序的需要。(3 3)形成)形成DSSDSS系统系统 利用利用DSSDSS集成语言编制集成语言编制DSSDSS总控程序,形成有机整体的总控程序,形成有机整体的DSSDSS系统。系统。7.1.2 7.1.2 决策支持系统设计决策支持系统设计1.1.设计思想设计思想 决策支持系统的系统结构是由决策支持系统的系统结构是由综合部件、模型部件、知综合部件、模型部件、知识部件、数据部件识部件、数据部件四大部件组成。四大部件组成。 决策支持系统设计决策支持系统设计主要是决策支持系统总体结构设计,主要是决策支持系统总体结构设计,它包括运行结构设计和管理结构设计。它包括运行结构设计和管理结构设计。 运行结构运行结构是对实际决策问题用决策支持系统原理设计的是对实际决策问题用决策支持系统原理设计的程序结构。程序结构。 管理结构管理结构是完成模型库管理和数据库的管理,达到多模是完成模型库管理和数据库的管理,达到多模型的共享和大量数据的共享。型的共享和大量数据的共享。 运行结构的运行结构的关键是综合部件。关键是综合部件。决策支持系统总体结构图决策支持系统总体结构图数数据据部部件件模模型型部部件件问题综合与问题综合与人机交互人机交互总控程序总控程序(综合部件)(综合部件)多模型程序多模型程序多数据库多数据库其它模型程序其它模型程序其它数据库其它数据库模型库模型库管理系统管理系统MBMS数据库管数据库管理系统理系统DBMSDSS运行结构运行结构其它知识库其它知识库知识库知识库推理机推理机知知识识库库管管理理系系统统知识部件知识部件2 2 设计内容设计内容 在在DSSDSS运行结构中,最关键的是总控程序的设计,运行结构中,最关键的是总控程序的设计,其次是模型程序的设计其次是模型程序的设计和推理机的设计和推理机的设计 。在在DSS管管理结构中最困难的是模型库管理系统和知识库管理理结构中最困难的是模型库管理系统和知识库管理系统的设计。系统的设计。 1. 1. 总控程序的设计总控程序的设计(1 1)对每个模型的控制运行。)对每个模型的控制运行。(2 2)模型间数据的加工。)模型间数据的加工。(3 3)对知识推理的控制。对知识推理的控制。 (4 4)人机交互设计。)人机交互设计。 2. 2. 模型程序的设计模型程序的设计 由于模型包括的种类较多,各模型所采用的计算由于模型包括的种类较多,各模型所采用的计算机语言可以不同。数学模型用数值计算语言,数据机语言可以不同。数学模型用数值计算语言,数据处理模型、报表模型用数据库语言。处理模型、报表模型用数据库语言。3 3推理机程序的设计推理机程序的设计推理机一般采用逆向推理,这样推理目标明确,为完推理机一般采用逆向推理,这样推理目标明确,为完成知识树的逆向推理,由于知识树并不存在计算机成知识树的逆向推理,由于知识树并不存在计算机中,需要建立一个规则栈,通过进栈和出栈来完成中,需要建立一个规则栈,通过进栈和出栈来完成虚拟知识树的虚拟知识树的深度优先搜索深度优先搜索,最后得出目标的取值。,最后得出目标的取值。 7.1.3决策支持系统的关键技术决策支持系统的关键技术7.1.3.1 建方案技术建方案技术DSS建方案的主要问题是如何选择多个模型组合形成建方案的主要问题是如何选择多个模型组合形成解决实际问题的方案。也可以认为该方案是解决实际解决实际问题的方案。也可以认为该方案是解决实际问题的大模型。每个具体的小模型又涉及所需要的数问题的大模型。每个具体的小模型又涉及所需要的数据。多模型的组合表现为用模型资源和数据资源来组据。多模型的组合表现为用模型资源和数据资源来组合成实际问题方案。合成实际问题方案。模型资源和数据资源是共享决策资源,用模型资源和模型资源和数据资源是共享决策资源,用模型资源和数据资源可以构建不同的方案,用来解决同一实际问数据资源可以构建不同的方案,用来解决同一实际问题。题。 7.1.3.2 7.1.3.2 模型库系统模型库系统 如何表示模型?如何组织模型库?模型库管理系统的功能如何表示模型?如何组织模型库?模型库管理系统的功能要求有哪些?这些问题就成为决策支持系统开发的关键。要求有哪些?这些问题就成为决策支持系统开发的关键。 模型库系统的开发就由研制者自行完成。模型库系统的开发就由研制者自行完成。 由于模型比数据复杂,模型库就要比数据库复杂得多,模由于模型比数据复杂,模型库就要比数据库复杂得多,模型库管理系统功能随之复杂。型库管理系统功能随之复杂。 模型库管理系统同样需要设计一套语言来完成模型库的各模型库管理系统同样需要设计一套语言来完成模型库的各项管理功能,项管理功能,7.1.3.3 7.1.3.3 接口技术接口技术1. 1. 模型部件和综合部件存取数据库的接口模型部件和综合部件存取数据库的接口 模型程序一般采用数值计算语言编制。不具有数据库操作功模型程序一般采用数值计算语言编制。不具有数据库操作功能。而数据库语言对数组运算等数值计算功能很弱,能。而数据库语言对数组运算等数值计算功能很弱,故数据库故数据库语言不适合于编制数值计算类型的模型程序。语言不适合于编制数值计算类型的模型程序。决策支持系统又决策支持系统又需要把数值计算和数据处理二者结合起来。有效的途径是解决需要把数值计算和数据处理二者结合起来。有效的途径是解决好模型存取数据库的接口。好模型存取数据库的接口。 决策支持系统中,把所有公用的数据都放入数据库中,这便于决策支持系统中,把所有公用的数据都放入数据库中,这便于数据库共亨,又便于数据的统一管理。模型程序用到数据时,数据库共亨,又便于数据的统一管理。模型程序用到数据时,需要通过这个接口去存取所需数据。需要通过这个接口去存取所需数据。 综合部件存取数据库接口类似于模型对数据库的接口。综合部件存取数据库接口类似于模型对数据库的接口。2. 2. 综合部件对模型的接口综合部件对模型的接口 综合部件对模型的控制运行以及多模型的组合。综合部件对模型的控制运行以及多模型的组合。一般采用一般采用“顺序、选择、循环顺序、选择、循环”结构以及嵌套结构以及嵌套组合结构形式来组合模型。组合结构形式来组合模型。3 3综合部件对知识推理的接口综合部件对知识推理的接口知识部件是推理机对知识库中知识的推理。推理知识部件是推理机对知识库中知识的推理。推理机程序采用的语言如果和综合部件采用的语言机程序采用的语言如果和综合部件采用的语言不一致时,需要解决好这个接口,综合部件才不一致时,需要解决好这个接口,综合部件才能调用知识部件。能调用知识部件。7.1.3.4 7.1.3.4 综合部件的集成技术综合部件的集成技术 决策支持系统由决策支持系统由“综合、模型、知识、数综合、模型、知识、数据据”四部件组成。综合部件如何使其它三部件四部件组成。综合部件如何使其它三部件有机集成为系统又是一个关键技术。它要真正有机集成为系统又是一个关键技术。它要真正达到控制单模型运行以及多模型的组合运行,达到控制单模型运行以及多模型的组合运行,控制大量的数据库的存取,控制知识推理,实控制大量的数据库的存取,控制知识推理,实现现DSS的系统集成。的系统集成。 综合部件需要利用一种计算机语言,针对综合部件需要利用一种计算机语言,针对具体的决策问题,编制或者自动生成决策问题具体的决策问题,编制或者自动生成决策问题的总控程序,将所需要的模型库、的总控程序,将所需要的模型库、知识库、知识库、数据库进行集成,形成一个实际的决策支持系数据库进行集成,形成一个实际的决策支持系统。统。 可以采取两种途径来进行:可以采取两种途径来进行: (1 1)自行设计这种多功能的集成语言来完成决)自行设计这种多功能的集成语言来完成决策支持系统的需要。策支持系统的需要。 (2 2)选用功能较强的计算机语言,如)选用功能较强的计算机语言,如C C、PASCALPASCAL等作为宿主语言,增加一些它不足的功能等作为宿主语言,增加一些它不足的功能语句,如数据处理功能语句等,嵌入到宿主语言语句,如数据处理功能语句等,嵌入到宿主语言中形成一种集成语言。中形成一种集成语言。7.1.4 7.1.4 决策支持系统的开发决策支持系统的开发1.1. 综合部件的总控程序开发综合部件的总控程序开发 从从DSSDSS总控程序的设计中可知它要完成的工作为:总控程序的设计中可知它要完成的工作为: (1 1)控制模型程序的运行;)控制模型程序的运行; (2 2)存取数据库的数据;)存取数据库的数据; (3 3)进行数据处理;)进行数据处理; (4 4)进行数值计算;)进行数值计算; (5 5)完成人机交互。)完成人机交互。 总控程序既要有数值计算能力又要有数据处理能力,还需总控程序既要有数值计算能力又要有数据处理能力,还需要有很强的人机交互能力。要有很强的人机交互能力。可见它是一个集成语言。可见它是一个集成语言。 为解决决策支持系统的开发,可以采用以下两种途径:为解决决策支持系统的开发,可以采用以下两种途径: 1. 研制适合于决策支持系统开发的集成语言研制适合于决策支持系统开发的集成语言 我们为开发决策支持系统,研制了我们为开发决策支持系统,研制了GFKD-DSS决策支持决策支持系统工具,其中重要组成部分是自行设计了系统工具,其中重要组成部分是自行设计了DSS集成语言集成语言(在工具中称核心语言)。该语言是将(在工具中称核心语言)。该语言是将PASCAL语言的核语言的核心功能(数值计算)与数据库语言的核心功能(数据处理)心功能(数值计算)与数据库语言的核心功能(数据处理)结合起来而设计的,它为决策支持系统综合部件总控程序结合起来而设计的,它为决策支持系统综合部件总控程序的编制服务。的编制服务。 研制新语言实质上是要研制新语言的编译系统。研制决研制新语言实质上是要研制新语言的编译系统。研制决策支持系统集成语言是解决决策支持系统开发的根本途径。策支持系统集成语言是解决决策支持系统开发的根本途径。 2. 2. 以某功能较强的计算机语言为主语言,嵌入以某功能较强的计算机语言为主语言,嵌入开发决策支持系统尚不足的其它语言形成宿主语开发决策支持系统尚不足的其它语言形成宿主语言。言。 我们在研制的我们在研制的“分布式多媒体智能决策支持分布式多媒体智能决策支持系统平台系统平台DM-IDSSPDM-IDSSP”是采用此途径。用功能很强是采用此途径。用功能很强的的C+C+语言为主语言,嵌入语言为主语言,嵌入CODEBASECODEBASE数据库操作语数据库操作语言,再嵌入多媒体表现语言(自行研制的)和知言,再嵌入多媒体表现语言(自行研制的)和知识推理语言(自行研制的),形成了多功能的宿识推理语言(自行研制的),形成了多功能的宿主语言。主语言。2 2 数据库接口数据库接口 目前,已经有为开发数据库的商品软件,如目前,已经有为开发数据库的商品软件,如ODBCODBC、ADOADO等,它们嵌入到等,它们嵌入到C C语言中实现对数据库的语言中实现对数据库的操作。操作。 利用这些接口软件,嵌入到主语言(如利用这些接口软件,嵌入到主语言(如C C)中,)中,就达到了扩充主语言对数据库操作的能力。就达到了扩充主语言对数据库操作的能力。3 3 模型库系统模型库系统 开发者可以根据实际决策问题的需要自行研制。开发者可以根据实际决策问题的需要自行研制。习习 题题 1 1,2 2,5 5,7 7,1010
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号