QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2691|回复: 0
打印 上一主题 下一主题

[建模教程] 数模竞赛-人口问题

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2019-4-12 16:29 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    数模竞赛-人口问题# V1 i5 L5 Q$ e, n( T/ c+ {
    6 u4 w* U7 G. \( v! N, T( ^2 B
    学校最近的数学建模比赛,刚好组内同学也有想参加的,就一起报名了
    ! Y5 A; G- N, [$ d- r5 y* c: ?
    9 U% J# D4 ?: _- ~  G人口问题( P8 D  X* w4 _7 `( t
    * k: O6 ], Y  O: R% j
    在全面两孩政策正式实施之前,卫计委牵头进行了全面两孩政策影响生育的预测研究。 ( `$ o, K# B2 z. p
    根据最后完成的《实施全面两孩政策人口变动测算总报告》, ; U) @9 d9 m! A3 c& w# z$ C
    2016年放开全面两孩,2017到2021年5年间增加两孩出生数将为1719.5万人,平均每年增加340万左右。 # I% L. W( ?* f1 D9 \5 n" ]
    其中,2017年出生人口总量将达到2109.9万人,2018年达到峰值,为2188.6万人。
    ' j6 B+ S6 D' S6 P- S; q, `2 S国家统计局2018年01月18日公布数据显示,去年全国出生人口数量和人口出生率双双下降。 ! ]5 g# l& T% F" r) O6 Q
    2017年全年共出生人口1723万人,比预测数据“少了387万人”,低于2016年的1786万人。
    . ~% j* h% ]$ A5 d人口出生率也同样出现了明显下降,去年全国人口出生率为12.43‰,2016年这一数据为12.95‰。 * ^& v$ v4 i: N. y9 f
    由于与之前预测相差甚远,这个数据甚至令不少人口学界人士感到意外。
    ' y/ ^* a" A  P& Z& @1 Z" W+ w5 G2 Z# m! x& f- v" {) Q0 g
    建立数学模型分析下列问题:
    ! V' ^. h: i, K2 C, x% R6 D
    8 L5 i0 D2 j/ M" j. x. ^(1) 在现有政策下预测未来人口的变化趋势。 : P7 }2 K4 x  s6 O
    (2) 如何才可达到《实施全面两孩政策人口变动测算总报告》的预测效果。
    , g. K2 v% P/ p6 d  [(3) 分析人口变化的主要因素,建立人口增长与这些因素间的关系。 8 y! E2 o0 ]2 y' w  s) K8 y
    (4) 依据你的研究给政府相关部门写一份800字左右的报告。
    0 k9 v: _& K9 o" o! V* t# _& }6 C' d, i7 g3 W
    拿到手感觉还不算难吧,网上应该有很多这样的分析,但是网上大部分都是时间有点久的,这个是考虑全面开放二胎后得人口变化,主要还是用近年的数据,这样得分会高一些。9 X# I6 `( q) N; R+ X

    2 _+ ?7 m' G* L人口预测模型* s9 D6 n" i3 P1 o
    $ f6 ?9 Q9 J. c3 R# i" Y4 U
    先说我查到的几个模型吧,指数模型,灰度预测模型(这个网上被吐槽得很水),logistic模型,Leslie矩阵,大概就这几个了,然后论文里面用得是灰度预测和logistic模型,Leslie矩阵我很想加进去,因为它用当前人口年龄结构来预测未来的人口,感觉很切合题目。但是没找到合适的,就不了了之了。6 ?% e) O1 q! |" \- C

    * ^7 h  l9 b$ D% p& ^& c# w灰度预测
      {9 Q' [( G+ ]# L# q
    7 S) _2 k7 [- c0 N1 ?+ [: z. ?8 g先说公式推导 ! r( k' m! i" j8 Q6 z5 p* B
    mathType的公式好像无法在makedown上面显示,我就截图吧
    ; o; w3 H' |) _7 w6 z) n4 _9 m# M7 Z" n6 F+ U% q" i, A5 |. D

    9 [' X; O0 Z% {* L6 x- ?
    7 V# ?9 Y+ E1 w. M- g  h
    # t: ^$ p+ ^) |$ f& I5 i上面就是公式的推导,下面是matlab的代码
    ! i% P/ S. s3 [3 F7 V$ L- n: P( v- N" y* z" K
    clc,clear;  * S8 n, p. C/ M1 _4 f
    syms a b;  
    ! q0 b6 r) V" {( v% [( t0 `c=[a b]';  & k' t& t( n" ]4 H+ _! N
    %2012-20175 `) n/ `! I& B4 k2 c
    A=[ 135404   136072   136782   137462   138271   139008];
    . U, x( G( i4 V8 o! aB=cumsum(A);  %原始数据累加  ) n# \8 q4 b  Z% I. Q' h
    n=length(A);  
    : l$ S+ e' Z- a2 N6 rfor i=1n-1)  * I3 k  a; W* H8 L- A
        C(i)=(B(i)+B(i+1))/2; %生成累加矩阵  + R1 W, i4 N8 ?: O. f5 c
    end  $ l$ f' O7 q8 G
    %计算待定参数的值  
    & ?, S# |2 U! K- n4 F4 Z3 _2 SD=A;D(1)=[];  
    - y. t2 x' Z& I$ [4 K9 lD=D';  , U8 T+ C6 Y; e% E/ Y2 k
    E=[-C;ones(1,n-1)];  - p3 }: R, d8 s+ {
    c=inv(E*E')*E*D;  ) M- m4 |- `$ q  g3 E4 X" t) ?. T
    c=c';  
    9 k- b/ f7 h& z. z2 A" Ba=c(1);b=c(2);  ; }- s" H8 c% z3 E: c# b7 ~
    %预测后续数据  1 c" J5 \2 K6 v0 G% Q9 c# [
    F=[];F(1)=A(1);  7 ~. i/ {! P# `+ ?/ G5 m
    for i=2n+5)  %只推测后5个数据,可以从此修改  , F8 A' j% x* T$ r$ l
        F(i)=(A(1)-b/a)/exp(a*(i-1))+b/a;  / e+ x  i4 _4 H$ z, T
    end  
    8 E' h" [3 x8 Z' J. _0 @) sG=[];G(1)=A(1);  + W* Z1 F/ O  n6 ]/ x
    for i=2n+5)  %只推测后5个数据,可以从此修改  
    $ n3 p/ J! n' V    G(i)=F(i)-F(i-1);  %得到预测出来的数据  1 P0 {8 B8 F0 B/ C, i7 r2 J1 W
    end  2 F/ x1 c0 I; a. j( k: \
    t1=2012:2017;  
    + Z$ I" U$ {0 c* _) N: At2=2012:2022;  %多10组数据  ) M; N/ H9 J" g' ^/ x6 R
    G
    5 \* V0 M# Y- y" }h=plot(t1,A,'o',t2,G,'-'); %原始数据与预测数据的比较  
    * }, |1 a. h* ~* ~6 f2 o( W9 Iset(h,'LineWidth',1.5);
    + @+ w( a  l6 |/ ]
    - b8 F  |# ?4 w4 U; G这是Excel里面的人口数据 , q: @- \, x% G; V+ C2 M7 P
    ! I3 {2 k0 i: ~: C+ N6 {$ G9 L8 }% k
    最后得出的结论,感觉还是挺靠谱的。 3 \9 p% @9 }  `2 ]5 t
    ( w3 c' n; p9 L! n1 b- L* b

    - B) b9 ^9 m3 tlogistic模型3 G6 ?" M2 F& J# h! g4 [5 a. a
    7 G5 }  k1 h$ u: c1 m
    前面说了灰度预测只适合用于样本量少的短期预测,logistic更适合中长期预测。 ( l8 h( [# K, l7 v
    , H% C; D: k; C6 A
    1 }( p2 M# s* l2 r# a4 e' h
    clear  7 }  v4 [: u2 ]; r: [% s
    clc  / _3 U% D% q0 D
    % 读入人口数据(1971-2000年)  1997 - 2017% {& B. v9 T2 r! h
    Y=[123626 124761 125786 126743 127627 128453 129227 129988 130756 131448 132129 132802 133450 134091 134735 135404 136072 136782 137462 138271 139008];
    ! a) G- B- y2 X' E' x: ?% 读入时间变量数据(t=年份-1970)  8 U& I8 t; n) L2 X
    T=1997:2017;/ q9 p6 X7 G/ L& M" h$ l
    % 线性化处理  
    - {6 A( u2 I, v( xfor t = 1:21,   ! b( g: I4 `  o+ l4 k5 J; p
       x(t)=exp(-t);  
    : x5 i( ]) r* k  n   y(t)=1/Y(t);  ! y* ^% g- B2 M. n, |
    end  ) i2 ], D$ x! K, `
    % 计算,并输出回归系数B,即计算回归方程 y'=a+bx' 中的a和b的值  9 P  ^9 r2 I- j( x
    c=zeros(21,1)+1;  
    ' F  _3 S6 o6 KX=[c,x'];%相当于30个方程组,求解a和b 的值.  5 R# t( r9 E' [8 g$ E- }( g# Q
    B=inv(X'*X)*X'*y'  . Z. H- v3 Z; c! q# b  I% y
    for i=1:21,  
    & K3 g  X$ o1 L5 g! x% 计算回归拟合值      ; @; O: ~; ~8 P% ?
        z(i)=B(1,1)+B(2,1)*x(i);  
    ( C; ]5 M3 s. \, T. c- _  k8 j% 计算离差  - \0 c) U; n: k, }' O
        s(i)=y(i)-sum(y)/21;  
    - O9 Z' L4 D  l% 计算误差      
    ' l: O5 |2 t; C- }* B    w(i)=z(i)-y(i);  
    ! c/ h0 b' z1 z9 P8 R6 e+ {end  $ l  ~0 E7 l& J* x/ C5 O
    % 计算离差平方和S  ' T9 a; ]2 ~% g
    S=s*s';  + B  p/ l2 t% {/ B! r
    % 回归误差平方和Q  
    / @! c# F, c9 D, u4 W/ l" _5 H% EQ=w*w';  & N/ T( T! Z" Z  Y* y5 a5 T
    % 计算回归平方和U  
    ; b. F+ g7 g( M, ZU=S-Q;  7 T+ `9 P( B7 I$ X
    % 计算,并输出F检验值  + E3 ^0 L* W# r: J! n' G8 F( g
    F=28*U/Q  + K2 T) u; k4 Z. [/ V
    % 计算非线性回归模型的拟合值
    9 Y* f+ Q4 p/ U& ]# ?for j=1:21,  ) z% h! o+ ]1 a9 d
        p(j)=1/(B(1,1)+B(2,1)*exp(-j));  
    * y, W) N( s7 i( Y$ W. Iend  # u7 A2 L$ {- \$ X4 e& m3 y
    % 输出非线性回归模型的拟合曲线(Logisic曲线)  ( l* Q9 f! B- m' ~
    plot(T,Y,'r*')9 I7 P9 Y4 i  |# a5 W* U. c; i
    hold on: }8 k# b5 L: o+ v* ~% ?/ [* C
    plot(T,p);
    . b9 E- r! M3 V1 j! s1 Z5 f2 {' [2 G& o- k5 M0 V
    最后拟合出来的效果,无敌爆炸烂好吧,我也不知道为什么,等自己以后会了再来改吧 , U5 m& q; {0 S: f

    / y$ ~; k( R5 `9 M1 {& F) i( u* f, @* U+ d- o5 X) X5 t

      i" l, v8 o; u8 Z% z1 v6 c% Q0 L
    ) a# d1 |( v2 e: T$ Y$ g2 |2 O

    数学建模解题思路与方法.pptx

    117.69 KB, 下载次数: 2, 下载积分: 体力 -2 点

    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-9-13 19:12 , Processed in 0.546816 second(s), 54 queries .

    回顶部