预测人口数量的模型,马尔萨斯人口模型matlab程序
然后使用matlab求解和验证该线性模型的参数,代码如下:
%%人口预测模型
有不到%的地区30年的人口数据,试着给出该地区人口增长的数学模型
clear clc
y=[ 33815339813400434165342123432734344583449834488344513449734511345113452034507345073450345093452134503 4503
% T=年-起始年
T=1:30;
线性处理%数据
for i=1:30,
x(I )=exp(-I );
y(I )=1/y(i ) I;
结束
%计算回归系数b
c=zeros (30,1 ) 1;
X=[c,x'];
b=inv(x(*x ) ) x ) *y )
for i=1:30,
计算%拟合值
z(I )=b ) 1,1 ) b ) 2,1 ) *x ) I;
%计算方差
s(I )=y (I )-sum(y )/30;
%计算误差
w(I )=z ) I )-y ) I;
结束
%计算方差平方和
S=s*s ';
计算%回归误差平方和
Q=w*w ';
计算%回归平方和
U=S-Q;
%f计算并输出检查值
F=28*U/Q
计算%非线性回归模型的拟合值
for j=1:30,
p(j )=1/) b (1,1 ) b (2,1 ) *exp(-j );
结束
%输出非线性回归模型的拟合曲线
打印(t,y ) )。
霍尔德on
plot(t,p,' r-' );