- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 564663 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 174622
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
数模竞赛-人口问题3 r( T1 D( f" s
# F) X( n$ R1 B$ q2 R
学校最近的数学建模比赛,刚好组内同学也有想参加的,就一起报名了
8 O) m U3 P3 [9 H9 v4 \9 n' y9 I
# L, o- s {' E人口问题
. G( J* Y4 {) d" B( K8 `( ?: f0 P3 _ o
在全面两孩政策正式实施之前,卫计委牵头进行了全面两孩政策影响生育的预测研究。 + ?' ]3 X1 s) I9 E4 i
根据最后完成的《实施全面两孩政策人口变动测算总报告》, 1 u# P1 x4 C. `7 m/ F3 ^
2016年放开全面两孩,2017到2021年5年间增加两孩出生数将为1719.5万人,平均每年增加340万左右。
8 J1 E' L, i4 r2 B' h0 H* K其中,2017年出生人口总量将达到2109.9万人,2018年达到峰值,为2188.6万人。
) B, @- S' R4 A国家统计局2018年01月18日公布数据显示,去年全国出生人口数量和人口出生率双双下降。 1 _5 q8 `' Y" M2 \4 e
2017年全年共出生人口1723万人,比预测数据“少了387万人”,低于2016年的1786万人。 ~6 ]+ | y4 c" Q) e
人口出生率也同样出现了明显下降,去年全国人口出生率为12.43‰,2016年这一数据为12.95‰。
' z+ R; \# V/ T5 A6 R由于与之前预测相差甚远,这个数据甚至令不少人口学界人士感到意外。9 E6 |% @0 \+ r
& V+ K2 t( m/ f" Y
建立数学模型分析下列问题:) l! [4 m6 c! M
9 z7 y3 X# v" n
(1) 在现有政策下预测未来人口的变化趋势。
^! c9 w. S2 h+ ]7 C(2) 如何才可达到《实施全面两孩政策人口变动测算总报告》的预测效果。 6 _) b V6 a% G6 j1 |9 t
(3) 分析人口变化的主要因素,建立人口增长与这些因素间的关系。
9 H9 X5 d. t. _: ](4) 依据你的研究给政府相关部门写一份800字左右的报告。
7 }$ L9 _: z+ m
! L' C$ Y5 s; ]拿到手感觉还不算难吧,网上应该有很多这样的分析,但是网上大部分都是时间有点久的,这个是考虑全面开放二胎后得人口变化,主要还是用近年的数据,这样得分会高一些。
# d, P3 k* A" @$ K- b% g! J6 i. h
- X" v) k) P) X! V人口预测模型
; F/ f: t+ T$ G! y& y" l9 H( w. y* p& p& o2 @
先说我查到的几个模型吧,指数模型,灰度预测模型(这个网上被吐槽得很水),logistic模型,Leslie矩阵,大概就这几个了,然后论文里面用得是灰度预测和logistic模型,Leslie矩阵我很想加进去,因为它用当前人口年龄结构来预测未来的人口,感觉很切合题目。但是没找到合适的,就不了了之了。
# p" S1 O9 w; ?4 { Z7 n! T
2 I2 |1 `& t0 w! ]灰度预测
2 ?: S/ n, \+ {) L: M( Y
, L6 ?1 n6 B% b1 Q5 {* {先说公式推导
0 g; h3 }# ^ F) L; _mathType的公式好像无法在makedown上面显示,我就截图吧 8 }/ X5 S3 W3 m e2 j5 K& P9 d
/ m# R$ W; x) J0 a- a
1 x( K) G. @% C0 b+ P0 ^/ p" W" N6 G m! a2 K3 J. w
! W, ^ D! l4 O4 Q, d
上面就是公式的推导,下面是matlab的代码& A& z/ V( ?3 j5 X& o
: `% m" U: {& v; Lclc,clear; 0 I" k* w6 j9 w7 y
syms a b; $ o I" z+ p( W2 v1 d
c=[a b]';
D# L+ }/ a* j! {7 u3 ]+ ~%2012-2017
7 @7 D/ C+ }. \% U( EA=[ 135404 136072 136782 137462 138271 139008];
" a1 `0 Q1 s: l' {% m+ N s4 dB=cumsum(A); %原始数据累加
' q6 ~& |5 g' Mn=length(A);
8 t8 ~( i8 H2 [: j$ Z! O, Rfor i=1 n-1)
+ v4 _( O, n W, k6 b9 H( X7 `' E C(i)=(B(i)+B(i+1))/2; %生成累加矩阵 * U. @2 _& N8 J" Z+ r" L- ?/ v1 U* M
end - u4 x* n0 i! J0 d
%计算待定参数的值
* o& m7 w# W3 X7 xD=A;D(1)=[];
3 B8 L8 E# f/ K l$ ` ^; B dD=D'; + ]( r ^7 {0 P
E=[-C;ones(1,n-1)]; 9 w& M5 W& l3 S
c=inv(E*E')*E*D;
- R9 q# {' z* |, {c=c';
9 F0 o1 h4 ^) ?/ c8 N! p6 ja=c(1);b=c(2);
) Q/ Y3 w6 b$ H) j%预测后续数据
- e7 T. y* ]+ g/ T o& T% VF=[];F(1)=A(1);
# j" ^2 R' @7 Xfor i=2 n+5) %只推测后5个数据,可以从此修改
$ K/ P2 r b, U, @, u9 | F(i)=(A(1)-b/a)/exp(a*(i-1))+b/a;
/ s d, E2 w" F, W3 Send : e5 K4 N9 [$ a- F" j! I
G=[];G(1)=A(1);
5 {! {/ {- z9 E6 ^) Y4 j* |9 Q2 c% tfor i=2 n+5) %只推测后5个数据,可以从此修改
j8 Q2 ~* Y: q1 Z, r3 k0 Y& C G(i)=F(i)-F(i-1); %得到预测出来的数据 3 d4 o, H- W/ E/ ~2 E* l# Y0 q8 c
end
& u6 N1 [# F2 Q* P; s$ Pt1=2012:2017;
2 d9 }5 S j$ P L5 `t2=2012:2022; %多10组数据 7 n' M; D' u5 t6 V1 E% z
G
) H) M2 ^6 Q2 ?# r7 v7 T: v: Dh=plot(t1,A,'o',t2,G,'-'); %原始数据与预测数据的比较
! K/ v6 z+ J; f; w) V7 H* v6 F/ iset(h,'LineWidth',1.5);& i1 [3 y" D; `8 ?" U# ]3 }
5 u# w4 W/ e8 y/ e+ v/ b! c
这是Excel里面的人口数据
. Y8 a' U5 D3 c* R) a' m. i, y2 l% A
最后得出的结论,感觉还是挺靠谱的。 # X7 D; Q' k( f
) n( i% w: l- N+ F
% [9 n' ^/ h3 v1 g2 q# plogistic模型
4 \. l) O7 b2 r4 p2 [8 y0 f: \# \. ^1 _* s! m: k5 a, M
前面说了灰度预测只适合用于样本量少的短期预测,logistic更适合中长期预测。
' B$ c" o! O4 _; v: z; f" Z; |0 b. d. z
3 C# s& J+ I9 a8 [7 t7 v6 b
- X3 R; p0 S- P6 q: ~1 Pclear
; {4 G$ A) Q* @9 ~8 I) p3 Aclc ( o3 c7 _+ k# c
% 读入人口数据(1971-2000年) 1997 - 20177 F% M' w: W2 \) X3 u! _
Y=[123626 124761 125786 126743 127627 128453 129227 129988 130756 131448 132129 132802 133450 134091 134735 135404 136072 136782 137462 138271 139008];
* |, L. q& ^& }5 p% b! O7 a+ C7 A; ~% 读入时间变量数据(t=年份-1970)
3 \1 V, X8 ~3 P. c2 x% eT=1997:2017;
- p1 ?) @* p5 Z$ \8 a0 J' X: B% 线性化处理 * {' P, s! |2 \4 i# O' Y
for t = 1:21, 7 z% m' @" J1 R4 I2 P9 _* A4 w6 |
x(t)=exp(-t);
: @) d$ Q( A, r) H5 n" j# r y(t)=1/Y(t); 7 b; B0 B1 b% h7 _1 S
end 3 `( U/ [. [+ M: J, J/ m
% 计算,并输出回归系数B,即计算回归方程 y'=a+bx' 中的a和b的值 2 I$ f( W! ]% S w" q. M
c=zeros(21,1)+1;
1 f* A- w; U+ h1 H2 iX=[c,x'];%相当于30个方程组,求解a和b 的值. ; g- `6 r# s- @$ g$ g \3 l
B=inv(X'*X)*X'*y' 3 e+ R9 y4 C! c* k7 t
for i=1:21,
9 s, N/ f2 [" l% 计算回归拟合值
& @5 ^+ m3 G6 j$ t z(i)=B(1,1)+B(2,1)*x(i);
* f% O7 |2 F" @4 v- ?% 计算离差 7 L7 E* T+ V( H& a: I
s(i)=y(i)-sum(y)/21; ; Y3 x8 `& H& P9 |# d) S+ x7 b! p0 f4 e
% 计算误差 5 ^9 M: e- `( X3 O0 D# _ D# o/ }
w(i)=z(i)-y(i);
$ Z% [+ G5 N; y( I/ [end 3 n1 W* M9 y7 l( a
% 计算离差平方和S
K9 `1 h z1 H5 ]' z; j: YS=s*s'; - i6 e D, ^! f+ r) l! U
% 回归误差平方和Q
4 L Y. A4 [% N& `Q=w*w'; # X8 K, H; n1 s+ P- s; A
% 计算回归平方和U 9 _: m+ |/ O3 Y0 }6 k3 o
U=S-Q;
3 g3 t8 g$ t& z$ P% 计算,并输出F检验值 % J0 g+ Z( B$ O
F=28*U/Q + }4 \. \) _5 ~6 Z/ ]
% 计算非线性回归模型的拟合值
) r7 j5 v8 x2 P% r" L. N$ C; Afor j=1:21, ! [# `% S# F3 _& Y0 S6 Z! b! W- a
p(j)=1/(B(1,1)+B(2,1)*exp(-j));
( _0 O" |3 q- g: G8 Rend
7 T* [, q. T5 g$ @3 M% 输出非线性回归模型的拟合曲线(Logisic曲线) + y' e& v; A5 B
plot(T,Y,'r*')
/ K! G, q0 S& W" }& ~7 Whold on# }9 D/ h* X8 `
plot(T,p);
+ q) [/ J- V% B) |0 }) }+ C; d) v3 s5 p3 R
最后拟合出来的效果,无敌爆炸烂好吧,我也不知道为什么,等自己以后会了再来改吧 4 c( A# ], i& N* R) A- }: ~
. N( w2 R/ S; t, Q9 `4 f Q8 R( w% u" R7 g% Z/ c
- B) p" J( K7 ~/ B3 I( m5 K/ @5 x
' ~" Z! ?2 ~+ s. V4 C |
zan
|