张所炜毕业论文初稿-批阅-二稿_第1页
张所炜毕业论文初稿-批阅-二稿_第2页
张所炜毕业论文初稿-批阅-二稿_第3页
张所炜毕业论文初稿-批阅-二稿_第4页
张所炜毕业论文初稿-批阅-二稿_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、南 京 工 程 学 院毕 业 论 文作 者: 张所炜 学 号: 209100738 系 部: 经济与管理学院 专 业: 信息管理与信息系统 题 目: “投入产出分析系统”的设计与实现 指导者: 黄传峰 副教授 评阅者: 南京工程学院毕业论文1 2014 年 5 月 南 京南京工程学院毕业论文目目 录录毕毕 业业 论论 文文 中中 文文 摘摘 要要 .1 1毕毕 业业 论论 文文 外外 文文 摘摘 要要 .2 2一、投入产出分析系统的概述一、投入产出分析系统的概述 .3 3(一)投入产出分析的作用和意义.3(二)投入产出分析系统设计的背景及发展现状.3二、投入产出分析系统设计二、投入产出分析系统

2、设计 .3 3(一)可行性分析.3(二)系统目标分析.4(三)结构功能分析.4三投入产出分析系统具体设计三投入产出分析系统具体设计 .5 5(一)基于 MATLAB的高效数据处理.6(二)投入产出模型优化.10(三)MATLAB与 SQL SERVER混合开发.14四四. . 投入产出分析系统实施投入产出分析系统实施 .1616(一)程序设计说明.16(二)系统测试说明.17(三)维护管理说明.17五结语五结语 .1717南京工程学院毕业论文1毕毕 业业 论论 文文 中中 文文 摘摘 要要投入产出表,反映国民经济各产业部门的投入和产出、投入的来源和产出的去向,以及部门与部门之间相互提供、相互消

3、耗产品的错综复杂的技术经济关系;同时,它可以揭示出各部门之间间接的、较为隐蔽的、甚至被人忽视的经济技术联系。投入产出表为研究区域产业结构优化、制定和检查国民经济计划、评估经济政策效果、环保低碳经济分析等问题提供了定量分析的依据和方法。近年来,这一分析技术也开始向微观层面(企业)的应用扩展,主要向关键部门分析(向前,向后联系)、生产率研究、税率变动对价格的影响、降低关税对国际贸易的影响、研究多种混合经济成分之间的联系、收入分配、能源平衡问题等应用方向。投入产出分析作为一种研究这种部门间普遍联系的方法,无论对实际经济生活中的经济结构比较、经济预测与制定发展规划,还是对于经济理论本身的发展,意义都是

4、十分重大的。投入产出分析具有广泛的理论和社会应用价值,然而,国内目前尚没有成熟的处理平台。鉴于此,我们做的就是充分学习和研究投入产出表,进行投入产出研究和分析系统的设计和开发,这个系统利用 Matlab 的强大的数据处理能力,结合 MSSQL Server 数据库的存储优势,针对投入产出表进行数据分析、统计处理、关联挖掘和二维、三维展示的软件平台;同时,该平台可以为未来升级为区域经济的产业结构布局与优化、产业竞争分析、经济发展预测、政策效果模拟等方面的综合性分析平台奠定良好的基础。关键词:关键词:投入产出分析、 Matlab、MS SQL Server 数据库、投入产出表 南京工程学院毕业论文

5、2毕毕 业业 论论 文文 外外 文文 摘摘 要要Title: The design and implementation of input-output analysis system Abstract:Input-output analysis has extensive social theory and application value, however, there are no mature processing platform at home. In view of this, this system using Matlab powerful data processing

6、capabilities, combined with the MS SQL Server database storage advantage, established the input-output tables for data analysis, statistical processing, association mining and two-dimensional display software platform ;At the same time, the platform can for future upgrades for the layout of industri

7、al structure and optimization of the regional economy, industry competitive analysis, the forecast of economic development, the policy effect simulation etc comprehensive analysis platform to lay a good foundation.Keywords: Input-output analysis 、Matlab、MS SQL Server Database、Input-Output table 南京工程

8、学院毕业论文3一、投入产出分析系统的概述(一)投入产出分析的作用和意义投入产出分析是研究国民经济各部门、再生产各环节间数量依存关系的一种分析方法。主要是对国民经济各部门活动水平及其变动情况的进行量化分析体系。该方法是定量分析研究产业结构的主要方法之一,由美国经济学家立昂惕夫(W.Leontief)于 1936 年提出,多年来许多国家的经济学家的研究和应用己日趋成熟,发展出了动态投入产出模型,变系数动态投入产出模型,投入产出最优规划模型等新的分析方法。产业关联研究是投入产出理论中的一项重要内容,对于区域主导产业选择以及产业结构优化调整具有重要意义。(二)投入产出分析系统设计的背景及发展现状在我国

9、,从上个世纪五六十年代由经济学家孙冶方和科学家钱学森倡导,开始研究和宣传包括投入产出在内的现代数量经济分析方法,目前投入产出分析理论和应用取得很大的进展1,但是,相对于发达国家对投入产出分析高效地开发应用,我国的投入产出分析实践仍面临着较大的挑战和发展空间2。鉴于投入产出分析主要面临的问题就是大量的较大规模数学运算,当前人工介入过多、自动化程度过低的情况,导致了分析过程冗长且繁琐,这使得经济学家经历分散在过多的高等代数的求解上,使得效率和研究质量降低;另外,目前投入产出分析的结果一般难以直观、形象,无法处理大规模数据图形。因此,尝试设计与开发投入产出分析系统。二、投入产出分析系统设计(一)可行

10、性分析投入产出表又称部门联系平衡表,是反应一定时期各部门间相互联系和平衡比例关系的一种平衡表,它可全面系统地反映国民经济各部门之间的投入产出关系,揭示生产过程中各部门之间相互依存和相互制约的经济技术联系。因此,一张完整的投入产出表,本身就是表现各种经济变量相互依存关系的“数据库” ;根据表中有关数据,南京工程学院毕业论文4可以得到用于反映直接经济依存关系的经济参数。同时投入产出分析是将经济理论与数学方法结合得最为紧密的分析方法3,是在投入产出表的数据上建立投入产出模型并进行分析,模型中每一个字母都代表着特指的一项指标,每一个数学方程均表现一种经济数量关系,每一项数学推导都反应了经济关系的变换。

11、投入产出分析技术不仅仅能够反映现各个部门在生产过程中直接的、较为明显的经济技术联系,而且更重要的是,它还能够揭示出各部门之间间接的、较为隐蔽的、甚至被人忽视的经济技术联系。因此,投入产出分析技术为研究产业结构,尤其为制定和检查国民经济计划,研究价格决策,进行各种定量分析提供依据。在投入产出技术中,从不同角度、不同层次都可以对投入产出表进行检验和分析,因此,产业部门间投入产出指标众多,例如直接消耗系数、完全消耗系数、影响力系数、产业感应度系数、Leontief 逆矩阵、Goshian 逆矩阵、向后/正向关联矩阵、固定资产折旧系数、劳动者报酬系数、生产税净额系数、劳动乘数等等。由于相关指标之间的计

12、算都存在着关联,故这些指标的计算大多数据规模巨大、步骤繁杂、中间变量丰富。所以,在应用 Execl、SPSS、SAS 等计算或统计软件来处理这些指标时,工作量巨大,需要人工时时干预,难以提高数据处理的自动化水平4。(二)系统目标分析根据投入产出分析的具体需求,软件主要集中在对投入产出表数据的集中处理,更为高效和方便地获取相应的经济参数系数并进行可视化分析;能够提供从微观、中观、宏观等不同尺度的投入产出分析平台,为政府部门或行业组织决策提供技术与分析支持;软件能够为科研人员分析产业结构、经济增长、产业关联、区域联动、技术创新等诸多研究领域提供分析平台、案例与数据支持。 在这个目标分析中,难度层次

13、逐层递增,每一个目标的实现都需要更多的知识储备,这也是这个系统特色,最有挑战性的地方。(三)结构功能分析 根据软件系统的目标,软件系统的结构功能分析主要分为五个环节:首先最关键南京工程学院毕业论文5的就是数据的预处理,主要是保证系统对数据正确的处理和加工;其次就是系统加载数据,进入相关系数求解过程,这里包含有两大部分,一部分核心的基本系数求解,另一部分就是相关系数求解。这一部分主要是从加载的投入产出数据矩阵获取重要的系数,方便进行经济结构分析;然后是借助于 Matlab 和 MS Server 对投入产出表进行直观的分析展示,更高效分析投入产出表中所包含的信息,这也是这个系统功能的特色;接下来

14、的结构功能考虑到系统功能的完整性和扩展性,涉及到产业关联、模型的优化、和政策模拟,由于这部分的对于理论知识和技术实现要求比较高,只能部分实现,主要是实现线性模型的优化;最后就是对系统的相关数据进行存储,便于存档利用在分析。三投入产出分析系统具体设计针对当前投入产出自动化分析系统的缺失,本系统研发主要设计目标:一是“化繁为简” ,模型中庞大的数字矩阵,借助 Matlab 简化高等代数的运算,更为高效地得出相关系数量化指标;二是“直观展示” ,信息量很大的量化指标,进行更为直观的显示;三是价值应用,主要是能够进行产业部门间的投入产出分析、产业结构优化分析、政策效果模拟等综合性处理。由于投入产出分析

15、具有分析部门产业结构、预测经济发展、模拟政策效应、优化产业结构等实用价值,因此,本系统功能主要体现在:高效得出相关的系数指标,辅助进行经济结构的分析,和可视化的直观展示、模拟规划产业结构,优化产业结构、模拟政策效应,提升产业效益。这些主要功能的实现基于完整的投入产出表所建立的投入产出模型,在此基础上,借助于计算机的软件和计算机编程将投入产出分析这个经济理论和数学方法结合的最为紧密的分析方法标准化,人性化。同时投入产出表模型缺少直观的效果,加之相关定性系数求解过程复杂,政策模拟和产业规划模型多样,为提高投入产出模型的利用质量和效率,我们借助于 Matlab 卓越的数据处理能力,简化相关系数的求解

16、复杂度,南京工程学院毕业论文6同时和 SQL Server 数据库的数据存储的高效简便的优势,进行直观展示,为产业决策者提供更为便利的软件支持。(一)基于 Matlab 的高效数据处理相比较在 Matlab 对于数值计算这块的优势很明显,处理一个相关矩阵运算的效率高,然而在这个投入产出软件的开发过程中,需要有 GUI 设计,并不能直接获得一个理想的矩阵,这需要对所拿到的数据进行处理,也就是从 Execl 表中读入 Matlab 中Uitable 控件中,之后编写相关的函数进行运算,最终可以很快的获得相关系数。对于具体的编程处理过程,可以参考下面的核心代码片段,根据软件设计方法,需要规范Exec

17、l 表格,然后 Matlab 读取 Execl 中的数据,并将获取的数据展示在 Uitable 中,同时有些计算结果还要进行存储。核心代码片段 1:加载 Execl 数据选择相关数据文件:Filename Pathname=uigetfile(*.xls,选择数据文件); 1定义文件地址和路径:str=Pathname Filename; 2Matlab 读取所选文件中行列以及值:, , raw = xlsread(str); 3对于 Execl 表中空值的处理: 4for i = 1 : numel(raw) if isnan(rawi) rawi = ;end;end设置行列属性,将所获得

18、的数据保存在 Uitable 中:set( handles.uitable1, 5ColumnName, raw(1,2:end),RowName, raw(2:end,1), data, raw(2:end, 2:end),. ColumnEditable, true); 南京工程学院毕业论文7图一在这个软件开发设计过程中,数据处理是核心过程,关系到后面所有系数的函数的编写,借助于系数模型:直接消耗系数模型。直接消耗系数的计算方法为:用第 j 产品(或产业)部门的 1总投入 Xj 去除该产品部门(或产业)生产经营中所直接消耗的第 i 产品部门的货物或服务的价值量 Xij,用公式表示为: (i

19、,j=1,2,n)。/ijijjaXX完全消耗系数模型。第 j 产品部门每提供一个单位最终使用时,对第 i 产品部 2门货物或服务的直接消耗和间接消耗之和。将各产品部门的完全消耗系数用表的形式表现出来,就是完全消耗系数表或完全消耗系数矩阵,通常用字母 B 表示。用公式表示为:B = (I A) 1 I 式中的 A 为直接消耗系数矩阵,I 为单位矩阵。感应度系数及影响力系数模型。结合里昂剔夫逆矩阵,感应度系数用公式表示 3为: (i=1,2,n),影响力系数用公式表示为: 111()/)nnniijijjijnqq1()njijinq(i=1,2,n),其中公式中是列昂剔夫逆矩阵(I A) 1

20、中的第 i 行第 j 列的元ijq素。核心代码片段 2:直接消耗系数函数table1_data = get(handles.uitable1,data); %获取 uitable 中数据值a=table1_data(1:42,1:42); %产业部门中间使用部分数据b=table1_data(49,1:42); %产品部门的总投入数据for i=1:42 %循环求职过程南京工程学院毕业论文8for j=1:42ci,j=ai,j/b1,j;endendg=c; %定义的全局变量,主要是为其他系数求解过程中调用核心代码片段 3:完全消耗系数函数global g; %调用直接消耗系数全局变量tak

21、emessage(hObject, eventdata, handles);I=eye(size(g); %矩阵处理函数w=cell2mat(g);b1=inv(I-w);I=eye(size(b1);z2=b1-I;核心代码片段 4:感应度系数函数I=eye(size(g);w=cell2mat(g);b1=inv(I-w);for i=1:42 S(i)=sum(b1(i,:);end南京工程学院毕业论文9z11=S;for i=1:42 s(i)=3*z11(i)/sum(z11);end核心代码片段 5:影响力系数函数I=eye(size(g);w=cell2mat(g);b1=inv

22、(I-w);z9=sum(b1);for i=1:42 r(i)=3*z9(i)/sum(z9);end在完成软件核心的 10 大系数进行运算和相对应的验证之后,下面所需要做的就是对数据进行存储,将所得出的结果存储在系统之外的硬件介质之上,主要是方便以后再对系数在进行分析时起到有效的帮助。下面的核心代码就是在软件系统实现将Uitable 中的数据结果转储到 Execl 中。核心代码片段 6:数据存储fName, pName, index = uiputfile(*.xls, 另存为, data_1.xls);if index & strcmp(fName(end-3 : end), .

23、xls)str = pName fName;cloumnName1 = get(handles.uitable1, ColumnName); rowname1=系数 ;rowName = get(handles.uitable1, RowName);南京工程学院毕业论文10data1 = get(handles.uitable2, data);dataExcel = cell(size(data1, 1)+8, size(data1, 2)+11); if size(data1, 1)1 dataExcel(2:end, 1) = rowName; dataExcel(1,2:end) = c

24、loumnName1; dataExcel(2:43,2:43) = num2cell(data1); xlswrite(str, dataExcel);else dataExcel(2, 1) =cellstr(rowname1); dataExcel(1,2:end) = cloumnName1; dataExcel(2,2:43) = num2cell(data1); xlswrite(str, dataExcel);end (二)投入产出模型优化由于投入产出是线性模型,因此与线性规划集合起来建立优化模型比较普遍。对于投入产出模型优化的作用:首先是在确定目标的前提之下选择最优方案,模型具

25、有抉择功能。其次就是,在给定的经济条件下反应最佳的运行过程,具有仿真模拟作用。然而需要说明的是虽然这样可以预测,但是不是真正意义上的预测,而是一种附加了人们主观目标的预测,是对未来展望意义上的预测。对于优化模型的主要意义:因为最优计划和规划按要求的比例的原则。国民经济按比例发展集中反映在生产部门之间的比例关系上,这些关系可以通过其中的投入产出模型部分加以表现,除此之外的其他基本比例关系则可以由专设的约束条件加以反映,并且所有的比例关系与目标函数有着内在的数量关系,由此保证比例的最优性。其次就是计划和规划安排从实际出发的原则。再次就是计划和规划中的经济效益的原则。最后就是该模型能最好地反映规划目

26、标和生产。投入产出优化模型中的目标函数集中体现了这一点,目标函数是评估方案优劣的唯一尺度和标准,直接反应了计划规划活动的总目标和终极目标。南京工程学院毕业论文11投入产出优化模型的是与规划模型结合。结合数学形式是,是将投入产出模型经过处理后置入线性规划模型的约束条件中,形成大规模的规划模型。两个模型用友共同的基础:1,均是线性;2 基础变量均有非负性;3.均为矩阵运算为基础方法;4.投入产出模型可视为线性规划模型的一个特例。最后说道的是:1.建立模型的方法和步骤。2.建立投入产出的数学模型。3.增加投入产出模型的变量个数。4.将投入产出的严格关系改为不等式。5.再投入产出模型意外增加不等式方程

27、建立目标函数。最终借助线性规划的数学处理方法进而求出最优的规划和产出结果。核心代码片段 7:线性规划算法函数delete(findobj(handles.axes3, Type, text);strF = get(handles.editf, String);matF = str2num(strF);(省略类似功能代码)strceq = get(handles.edit9, String);matceq = str2num(strceq);l = size(matA,2);x,S = linprog(matF,matA,matb,matAeq,matbeq,matc,matceq);%核心算法

28、方程x=x;strCell1=cell(l,1);for i=1:l str1=; str1=str1 x_ num2str(i) = num2str(x(i) ; strCell1i,1=str1;endtext(0.1, 0.9, strCell1, Parent, handles.axes3);set(handles.jieguoS, String, sprintf(%0.4f, S);核心代码片段 8:线性规划数组处理南京工程学院毕业论文12delete(findobj(handles.axes1, Type, text);strF = get(handles.editf, Strin

29、g);matF = str2num(strF);kLine n= size(matF);if kLine = 1 k = find(matF = 0); k0 = k(1); str = S = ; for i = 1 :n if matF(1, i) if i k0 if matF(1, i) 0 if matF(1, i) = 1 str = str + num2str(matF(1, i) x_ num2str(i); else str = str + x_ num2str(i); end else if matF(1, i) = -1 str = str num2str(matF(1,

30、 i) x_ num2str(i); else str = str -x_ num2str(i); end end elseif i = k0南京工程学院毕业论文13 if matF(1, i) = 1 str = str x_ num2str(i); elseif matF(1, i) = -1 str = str -x_ num2str(i); else str = str num2str(matF(1, i) x_ num2str(i); end end end end str = str ;endtext(0.1, 0.1, str, Parent, handles.axes1);此处

31、还省略了部分类似功能的代码。界面图南京工程学院毕业论文14案例图(三)Matlab 与 SQL Server 混合开发Matlab 具有高效的数据分析能力,但是在数据存储和数据灵活选择、处理这方面没有数据库高效。因此借助数据库,通过 SQL 语句灵活取出数据,之后进行图形化展示,和数据分析。Matlab 和数据库之间有相应的接口5,处理起来不是很复杂;但是,在混合开发过程之间需要做的事情还有很多,最主要的是数据已怎么样的形式组织到数据库中,同时不能影响数据的应用。由于关乎到后面数据的表现形式,因此下面详细描述这个过程。一般投入产出表分为三大象限,故在进行数据组织时,也将这张表分成三大部分:、中

32、间产品,、最终产品,、增加值,然后按部门(主键)存储在数据库中,有必要时还需要建立相关视图,方便查询。下面就是将 Matlab 与 SQL Server 建立连接。之前所要做的工作就是在系统中配置数据库驱动,需要依赖数据源链桥(ODBCJDBC)来完成。这个过程不是很复杂,就不加赘述。主要的核心过程还是建立数据库的连接,主要方法语法如下:定义数据库连接:conn=database(database_name,user_name,password);测试连接:P = ping (conn);关闭数据库连接:close(conn);南京工程学院毕业论文15这一步完成之后,下面的工作就变得相对容易一

33、些,接下来就是编写合适的 SQL语句,从数据库中提取相关的数据,结合 Matlab 的绘图函数,建立直观的效果图,这也是这个系统中最有特点的地方。在应用编程中,比如产业部门提供给各部门的消耗量,在二维坐标中以直方图的直观形式展示:一般投入产表格式如下(如下图二)图二编写合适的 SQL:strSQL= select value from country_IO_中间使用 _2007定义游标:curs=exec(conn,strSQL);遍历游标:curs=fetch(curs); 获取游标中的数据:data=curs.data;关闭游标:close(curs);下面就是调用 Matlab 中的直方

34、图函数,进行二维直观展示:直方图函数:bar(data:);设置 X 坐标属性:xlabel(产业部门);设置 Y 坐标属性:ylabel(中间投入值);显示直方图:set(gca,XTickLabel,data1);南京工程学院毕业论文16 此外,这个系统的直观化显示,还可以有一些其他的图形展示,在 Matlab 平台上图形化处理也相对容易些,关键是绑定数据,利用 bar3 函数(3-D),Pie 函数(饼状图)展示更为直观的效果,这里不再一一列举。对于这个系统的使用和其特点,人性 GUI 的界面设计,可能不算美观,但讲究实用,简化高等线代的计算,直观化显示数据特征。这个系统对高校投入产出经

35、济学的研究大有裨益,也适用于相关经济投入产出分析的相关部门。四. 投入产出分析系统实施(一)程序设计说明这个软件系统的设计和开发南京工程学院毕业论文17(二)系统测试说明(三)维护管理说明对于五结语本文结合投入产出相关经济学理论和高等代数相关知识,从投入产出分析应用需求出发,进行投入产出系统的设计和开发。介绍了如何高效实现投入产出相关经济系数的求解,同时结合 SQL Server 数据库进行混合编程,对数据结果进行直观化展示,对研究人员和决策部门提供辅助工具,进一步提升投入产出的应用水平。我们也会进一步完善应用和相关功能,同时借助于数据库和数据挖掘相关知识和工具,进一步提升系统应用水平。软件的

36、设计和开发花了较多的时间,主要是理论知识的准备和相关软件设计开发知识的准备。这个软件设计开发项目源于我负责的省级课题的项目,在这个基础上结合我专业特点进行扩展和研究分析。成功完成项目目标功能,便于相关部门更加高效的处理投入产出表,分析产业部门的经济特征,提高效率。然而,随着社会分工越来越细致,部分划分越来越多,分析越来越多,对于目前系统的部分划分是远远不能满足需求,这需要对源码进行改进,进行扩展。还有就是需求越来越多样,这也对系统功能有了更高的要求。这个投入产出分析系统还有很多扩展的地方和提高的地方,也需要继续学习和研究。 南京工程学院毕业论文18参考文献参考文献1.董琨.中国产业结构的投入产出关联分析D. 大连:大连理工大学,2004.2.王勇.投入产出核算:回顾与展望J.统计研究,2012(08):829.3.廖明球.投入产出及其扩展分析M.北京:首都经济贸易大学出版社,2009 年 8 月4.袁建文.投入产出分析实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论