数学建模-人口模型Logistic模型与 Malthus模型

这篇具有很好参考价值的文章主要介绍了数学建模-人口模型Logistic模型与 Malthus模型。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.问题重述:下表是中国人口数据,请根据这些数据建立适当的数学模型对其进行描述,并预测2002、2003、2004年的中国人口数。

数学建模-人口模型Logistic模型与 Malthus模型
给出模型,求解代码及必要的图形,误差分析结果。

重述:

  1. 选取合适的模型预测2002,2003、2004年的中国人口数;

建立数学模型、给出求解代码及必要的图形,误差分析结果


二.问题的分析和假设:

2-1对于问题一的分析

根据题目中的数据只是一个粗略预报人口总数的模型,没有对人口的年龄、性别、地域结构进行预报,故采用Malthus模型或Logistic模型

2-2对问题二的分析

我们通过使用数学知识和matlab对以上数据进行计算,进而求解,从而得到模型以及图像。

2-3对Logistic模型的假设

(1)设r(x)为x(t)的线性单调减函数,即r(x)=r-sx(s>0);

(2)自然资源与环境条件所能容纳的最大人口数为Xm,即当x=时,增长率r()=0。

由(1)、(2)可得:

数学建模-人口模型Logistic模型与 Malthus模型

建模: 使用Logistic模型 

数学建模-人口模型Logistic模型与 Malthus模型

上式是一个可分离变量性的微分方程,其解为:

数学建模-人口模型Logistic模型与 Malthus模型

以下对其进行拟合、求解以及绘图

求解的Matlab程序代码:  

编写M文件如下:

Malthus模型: 

首先对数据进行拟合:

>> year=1988:1:2001;

>>population=[11.1026,11.2074,11.4333,11.5823,11.7171,11.8517,11.9850 12.1121,12.2389,12.3626,12.4761,12.5786,12.6743,12.7627];

>> cftool

数学建模-人口模型Logistic模型与 Malthus模型

                              图一  拟合数据图

Matlab自动生成的拟合代码:

function [fitresult, gof] = createFit2(year, population)

%CREATEFIT2(YEAR,POPULATION)

%  Create a fit.

%

%  Data for 'untitled fit 1' fit:

%      X Input : year

%      Y Output: population

%  Output:

%      fitresult : a fit object representing the fit.

%      gof : structure with goodness-of fit info.

%

%  另请参阅 FIT, CFIT, SFIT.

%  由 MATLAB 于 06-Apr-2022 01:20:13 自动生成

%% Fit: 'untitled fit 1'.

[xData, yData] = prepareCurveData( year, population );

% Set up fittype and options.

ft = fittype( 'xm/(1+(xm/11.1026-1)*exp(-r*(t-1988)))', 'independent', 't', 'dependent', 'y' );

opts = fitoptions( 'Method', 'NonlinearLeastSquares' );

opts.Display = 'Off';

opts.StartPoint = [0.2 500];

% Fit model to data.

[fitresult, gof] = fit( xData, yData, ft, opts );

% Plot fit with data.

figure( 'Name', 'untitled fit 1' );

h = plot( fitresult, xData, yData );

legend( h, 'population vs. year', 'untitled fit 1', 'Location', 'NorthEast' );

% Label axes

xlabel year

ylabel population

grid on

将以上代码保存当前文件夹,并在新的文件夹中调用这个函数得到参数的拟合值和预测的效果。

计算结与结论:  

通过Matlab进行计算,得到如下答案:

>> year=1988:1:2001;

>>population=[11.1026,11.2074,11.4333,11.5823,11.7171,11.8517,11.9850 12.1121,12.2389,12.3626,12.4761,12.5786,12.6743,12.7627];

cftool

>>[fitresult, gof] = createFit1(year, population)

>>t = 2002:2004;

>>xm = 14.42;   

>>r =  0.06451;

>>predictions = xm./(1+(xm./11.1026-1).*exp(-r.*(t-1988)));

>>figure(2)

>>plot(year,population,'o',t,predictions,'.')  

>>disp(predictions)  

fitresult =

     General model:

     fitresult(t) = xm/(1+(xm/11.1026-1)*exp(-r*(t-1988)))

     Coefficients (with 95% confidence bounds):

       r =     0.06451  (0.05625, 0.07277)

       xm =       14.42  (14.03, 14.82)

gof =

           sse: 0.0038

       rsquare: 0.9990

           dfe: 12

    adjrsquare: 0.9989

          rmse: 0.0179

   12.8624   12.9498   13.0328

数学建模-人口模型Logistic模型与 Malthus模型

图二  人口模型预测图

结论:当t=2002 时人口为12.8624亿、t=2003时人口为12.9498亿、t=2004时人口为13.0328亿。

误差分析:查询中国人口统计图表得出2002年为12.8亿 、2003年为12.88亿、2004年为12.96亿,发现两者几乎完全一致,Logistic模型的缺点是模型中的参数r和人口总数上限xm很难准确得到,尤其是xm的值还会随着人口发展变化的情况而改变。

建模: Malthus模型: 根据假设人口的净增长率是一个常数,也就是单位时间内人口增长量与当时人口数成正比,建立Malthus模型。

t时刻人口数为x(t) ,t=t0时, x(t0) =x0,则:

x(t + Dt) - x(t) = x(t) ×r × Dt

数学建模-人口模型Logistic模型与 Malthus模型

求解的Matlab程序代码:  

Malthus模型: 

首先对数据进行拟合:

>> year=1988:1:2001;

>>population=[11.1026,11.2074,11.4333,11.5823,11.7171,11.8517,11.9850 12.1121,12.2389,12.3626,12.4761,12.5786,12.6743,12.7627];

>> cftool

数学建模-人口模型Logistic模型与 Malthus模型

                              图一  拟合数据图

Matlab自动生成的拟合代码:

function [fitresult, gof] = createFit(year, population)

%CREATEFIT(YEAR,POPULATION)

%  Create a fit.

%

%  Data for 'untitled fit 1' fit:

%      X Input : year

%      Y Output: population

%  Output:

%      fitresult : a fit object representing the fit.

%      gof : structure with goodness-of fit info.

%

%  另请参阅 FIT, CFIT, SFIT.

%  由 MATLAB 于 05-Apr-2022 23:30:31 自动生成

%% Fit: 'untitled fit 1'.

[xData, yData] = prepareCurveData( year, population );

% Set up fittype and options.

ft = fittype( 'exp1' );

opts = fitoptions( 'Method', 'NonlinearLeastSquares' );

opts.Display = 'Off';

opts.StartPoint = [11.1026 0.0108];

% Fit model to data.

[fitresult, gof] = fit( xData, yData, ft, opts );

% Plot fit with data.

figure( 'Name', 'untitled fit 1' );

h = plot( fitresult, xData, yData );

legend( h, 'population vs. year', 'untitled fit 1', 'Location', 'NorthEast' );

% Label axes

xlabel year

ylabel population

grid on

将以上代码保存当前文件夹,并在新的文件夹中调用这个函数得到参数的拟合值和预测的效果。

计算结果与结论:  

通过Matlab进行计算,得到如下答案:

 t=2002:2004;

>> a = 6.16e-09 ;

>>  b = 0.01072 ;

>> predictions=a*exp(b*t);

>> figure(2)

>> plot(year,population,'o',t, predictions,'.')

数学建模-人口模型Logistic模型与 Malthus模型

图二  人口模型预测图

结论:当t=2002 时人口为12.89亿、t=2003时口为13.03亿、t=2004时人口为13.17亿。

误差分析:查询中国人口统计图表得出2002年为12.8亿 、2003年为12.88亿、2004年为12.96亿,发现两者几乎完全一致,但是当t=2060年时用这一模型进行预测的结果远高于实际人口的 增长,误差的原因时对增长率r的估计过高。由此,可以对r是常数的假设提出疑问。实际上随着人口数量的增加,自然资源、环境因素, 人口政策,年龄和性别结构、地域特征等因素对人口 数量的阻滞作用越来越明显,增长率不应取为常数。文章来源地址https://www.toymoban.com/news/detail-455731.html

到了这里,关于数学建模-人口模型Logistic模型与 Malthus模型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数学建模】逻辑回归算法(Logistic Resgression)

    逻辑回归算法是一种简单但功能强大的 二元线性 分类算法。需要注意的是,尽管\\\"逻辑回归\\\"名字带有“回归”二字,但逻辑回归是一个 分类算法 ,而不是回归算法。 我认为,逻辑回归算法功能强大的原因,更在于,它不仅仅可以预测类别标签,而且还可以预测类别的概率。

    2024年02月12日
    浏览(49)
  • matlab-基于Malthus人口预测模型(笔记)

    P - 人口数量 t - 时间 r - 人口增长率 这个方程的假设体现在: 采用指数增长方程形式,呈指数增长趋势。 增长率r为正常数,不随时间变化。 未考虑人口增长的饱和状态。 未考虑出生率、死亡率等人口学参数。 未考虑人口增长对资源环境的反馈作用。 未考虑经济、政策等外生变

    2024年02月04日
    浏览(36)
  • 数学建模软件及算法模型典型问题汇总

    一、 软件篇 编程 、MATLAB(物理建模)、python(数据分析)、R、其他(SPSS、Stata、Origin) 这里其实还有一个 Lingo 软件,不过我不推荐,有更好的替代方案,就是 Yalmip 工具箱+OPTI 工具箱+gurobi 求解器,Yalmip 是基于 matlab 的求解规划问题的高级建模语言,OPTI 提供众多 开源的规

    2024年04月17日
    浏览(54)
  • 数学建模--无人机定点投放问题(五一杯A题)问题重述、问题分析+模型假设

    目录 问题再现 问题重述 问题分析 问题一的分析 问题二的分析 问题三的分析 模型假设 无人机定点投放问题         随着科学技术的不断发展,无人机在许多领域都有着广泛的应用。对于空中执行定点投放任务的无人机,其投放精度不仅依赖于无人机的操作技术,而且还与

    2024年03月17日
    浏览(51)
  • 【2023高教社杯数学建模国赛】ABCD题 问题分析、模型建立、参考文献及实现代码

    北京时间:2023年9月7日 18:00-2023年9月10日20:00 可以参考我提供的历史竞赛信息内容,最新更新我会发布在博客和知乎上, 请关注我 获得最新更新通知 http://t.csdn.cn/UX52d 2023高教社杯9月7号18点开赛,本团队会出全部题的资料,开赛赛预售最低价,下单后进群,不确定选哪个题的

    2024年02月09日
    浏览(51)
  • 【数学建模】-- 数学规划模型

    概述: 什么是数学规划? 数学建模中的数学规划是指利用数学方法和技巧对问题进行数学建模,并通过数学规划模型求解最优解的过程。数学规划是一种数学优化方法,旨在找到使目标函数达到最大值或最小值的变量取值,同时满足一系列约束条件。 数学规划包括多种不同

    2024年02月12日
    浏览(43)
  • 【数学建模】优化模型——规划模型

    在数学建模中,优化类问题是很常见的一种问题。这种问题里面通常涉及多个 变量 和 约束条件 ,并需要在这些变量和条件之下 优化某个函数 。最常见的例子就是,“达到最好效果”、“取得最大利润”、“极大降低风险”等等。遇到这类字眼,应首先考虑优化模型求解。

    2024年01月25日
    浏览(40)
  • 2022 数学建模B题成品论文 参考文章 含全部建模 步骤 数学模型 图像

    完整见https://mianbaoduo.com/o/bread/mbd-Y5eVm5xw 无人机遂行编队飞行中的纯方位无源定位 摘要 一、问题重述 1.1 问题背景 由于无人机集群在遂行编队飞行时, 应尽可能的避免外界干扰, 因此需要尽可能的保持电磁静默减少电磁波信号的发射.为保持编队队形, 拟采用纯方位无源

    2024年02月08日
    浏览(58)
  • 【数学建模】--因子分析模型

    因子分析有斯皮尔曼在1904年首次提出,其在某种程度上可以被看成时主成分分析的推广和扩展。 因子分析法通过研究变量间的相关稀疏矩阵,把这些变量间错综复杂的关系归结成少数几个综合因子,由于归结出的因子个数少于原始变量的个数,但是它们又包含原始变量的信

    2024年02月13日
    浏览(75)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包