利用MATLAB构建经济模型并执行数值仿真
在我所掌握的案例中,有一个相对简易的例子:
财政收入预测问题:首先需识别影响财政收入的若干关键因素,我们可以将其划分为:国民收入、工业生产总值、总人口、就业人口、固定资产投资等要素,我们仅要求列出主要的,以下为相关回归分析数据(按从左至右的顺序排列):
年份 国民收入(亿元) 工业总产值(亿元) 农业总产值(亿元)
总人口(万人) 就业人口(万人) 固定资产投资(亿元) 财政收入(亿元)
1952 598 349 461 57482 20729 44 184
1953 586 455 175 58796 21364 89 216
1954 707 520 491 60266 21832 97 248
1955 737 558 529 61465 22328 98 254
1956 825 715 556 62828 23018 150 268
837 798 575 64653 23711 139
1028 1235 598 65994 26600 256
1114 1681 509 67207 26173 338
1079 1870 444 66207 25880 380
757 1156 434 65859 25590 138
677 964 461 67295 25110 66
779 1046 514 69172 26640 85
943 1250 584 70499 27736 129
1152 1581 632 72538 28670 175
1322 1911 687 74542 29805 212
1249 1647 697 76368 30814 156
1187 1565 680 78534 31915 127
1372 2101 688 80671 33225 207
1638 1747 676 82992 34432 312
1780 3156 790 85229 35620 355
1833 3365 789 87177 35854 354
1978 3684 855 89211 36652 374
1993 3696 891 90859 37369 393
2121 4254 932 92421 38168 462
2052 4309 955 93717 38834 443
2189 4925 971 94974 39377 454
2475 5590 1058 96259 39856 550
2702 6065 1150 97542 40581 564
2791 6592 1194 98705 41896 568
2927 6862 1273 100072 43280 496
年份自行输入,朋友请记住:从1956年起我就没有输入了,你要理解数据先,1956年之后的只有七组,而之前的则有八组,在这里无法插入表格,对此表示歉意,只需将输入内容向右缩进一格即可,我已经输入了很多,眼睛都看花了……..
我们设国民收入、工业总产值、农业总产值、总人口、就业人口、固定资产投资分别为x1,x2,x3,x4,x5,x6,财政收入为y,设它们之间的关系为:
y=ax1+bx2+cx3+dx4+ex5+fx6
使用非线性回归方法求解:
(1)对回归模型建立M文件model.m如下:
Function yy=model(beta0,x)
a=beta0(1);
b=beta0(2);
c=beta0(3);
d=beta0(4);
e=beta0(5);
f=beta0(6);
x1=x(:,1);
x2=x(:,1);
x3=x(:,1);
x4=x(:,1);
x5=x(:,1);
x6=x(:,1);
yy= ax1+bx2+cx3+dx4+ex5+fx6;
主程序如下shuju.m
x=[598 349 461 57482 20729 44 586 455 175 58796 21364 89 707 520 491 60266 21832 97
737 558 529 61465 22328 98
825 715 556 62828 23018 150
837 798 575 64653 23711 139
1028 1235 598 65994 26600 256
1114 1681 509 67207 26173 338
1079 1870 444 66207 25880 380
757 1156 434 65859 25590 138
677 964 461 67295 25110 66
779 1046 514 69172 26640 85
943 1250 584 70499 27736 129
1152 1581 632 72538 28670 175
1322 1911 687 74542 29805 212
1249 1647 697 76368 30814 156
1187 1565 680 78534 31915 127
1372 2101 688 80671 33225 207
1638 1747 676 82992 34432 312
1780 3156 790 85229 35620 355
1833 3365 789 87177 35854 354
1978 3684 855 89211 36652 374
1993 3696 891 90859 37369 393
2121 4254 932 92421 38168 462
2052 4309 955 93717 38834 443
2189 4925 971 94974 39377 454
2475 5590 1058 96259 39856 550
2702 6065 1150 97542 40581 564
2791 6592 1194 98705 41896 568
2927 6862 1273 100072 43280 496];
y=[184 216 248 254 268 286 357 444 506 271 230 266 323 393 466 352 303 447 564 638 658 691 655 692 657 732 922 890 826 810]’;
beta0=[0.5-0.03-0.60 0.01-0.02 0.35];
betafit=nlinfit(x,y,’model’,beta0)
结果为:betafit=
0.5243
-0.0294
-0.6304
0.0112
-0.0230
0.3658
即:y=0.5243x1-0.0294x2-0.6304x3+0.0112x4-0.0230x5+0.3658x6
经过长时间的努力,希望能对你有所帮助,希望大家上网文明,不要随意谩骂,呵呵!
MATLAB参数化模型计算有何用途
MATLAB参数化模型计算在科学、工程和数据分析等多个领域具有广泛应用。
1.参数优化和拟合:参数化模型计算可用于优化参数,使模型与实际数据最佳匹配。通过调整模型的参数,可以找到最佳拟合曲线或函数,以更好地理解数据和预测未知值。
2.模拟和仿真:参数化模型计算可用于模拟和仿真系统的行为。通过定义模型的参数和初始条件,可以预测系统在不同条件下的响应和行为。这对于工程设计、控制系统分析和决策支持十分有用。
3.数据分析和预测:参数化模型计算可用于对数据进行分析和预测。通过拟合数据到适当的参数化模型,可以提取数据中的模式、趋势和关联性。这有助于理解数据的特征和规律,并进行预测和决策。
4.系统辨识:参数化模型计算可用于系统辨识,即从实验数据中提取系统的数学模型。通过将实验数据与参数化模型进行比较,可以估计系统的参数和结构,从而更好地理解系统的行为和性质。
系统识别:参数化模型运算适用于系统识别,即从实验数据中提炼出系统的数学模型。通过对比实验数据与参数化模型,可以推算出系统的参数和架构,进而更深入地把握系统的运作和特性。
可视化与教学:参数化模型运算可用于可视化与教学目标。通过在MATLAB中设定和运算参数化模型,可以直观且互动地呈现模型的行为与特性,助力学生及其他用户更深入地理解并学习相关理论。
总之,MATLAB参数化模型运算是一项功能强大的工具,适用于优化、适配、模拟、仿真的优化、数据分析、预测、系统识别、可视化和教学等众多应用场景。它协助用户解析和分析复杂的数据与系统,并支撑科学研究、工程设计及决策制定。