- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 567276 点
- 威望
- 12 点
- 阅读权限
- 255
- 积分
- 175406
- 相册
- 1
- 日志
- 0
- 记录
- 0
- 帖子
- 5313
- 主题
- 5273
- 精华
- 3
- 分享
- 0
- 好友
- 163
TA的每日心情 | 开心 2021-8-11 17:59 |
|---|
签到天数: 17 天 [LV.4]偶尔看看III 网络挑战赛参赛者 网络挑战赛参赛者 - 自我介绍
- 本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。
 群组: 2018美赛大象算法课程 群组: 2018美赛护航培训课程 群组: 2019年 数学中国站长建 群组: 2019年数据分析师课程 群组: 2018年大象老师国赛优 |
数模竞赛-人口问题5 @! w! v& Y# K7 a) E' y
5 t/ E8 l5 g7 D; i
学校最近的数学建模比赛,刚好组内同学也有想参加的,就一起报名了+ G( I- w. K& Z) x3 v
! D/ {; Q7 l) Z* [8 O# S% R人口问题
; X% X9 Q1 S' F1 b5 J! z: P" `3 _; {
在全面两孩政策正式实施之前,卫计委牵头进行了全面两孩政策影响生育的预测研究。 3 U" D2 g2 u3 c2 D2 ~. ^0 a, a0 ?
根据最后完成的《实施全面两孩政策人口变动测算总报告》, . H3 U# g( b) }! ]+ K
2016年放开全面两孩,2017到2021年5年间增加两孩出生数将为1719.5万人,平均每年增加340万左右。 6 D1 ]( m: g1 ]# A( I1 I( X
其中,2017年出生人口总量将达到2109.9万人,2018年达到峰值,为2188.6万人。 7 P4 f* A' E. d7 U% w
国家统计局2018年01月18日公布数据显示,去年全国出生人口数量和人口出生率双双下降。
5 \) j+ H. z' F5 L2 Z2017年全年共出生人口1723万人,比预测数据“少了387万人”,低于2016年的1786万人。 ^4 Y5 k' t, D3 _% A/ E' n
人口出生率也同样出现了明显下降,去年全国人口出生率为12.43‰,2016年这一数据为12.95‰。
( N: v7 l# Q$ J1 e由于与之前预测相差甚远,这个数据甚至令不少人口学界人士感到意外。, P) [4 A+ L8 f3 j
& z, i' g! ~ t% t
建立数学模型分析下列问题:
" V& P' p8 V1 v! K
# p6 y7 K6 ^) _- q- d+ ]0 \; J(1) 在现有政策下预测未来人口的变化趋势。 1 {+ \* A o' }/ Q2 j+ L$ ^
(2) 如何才可达到《实施全面两孩政策人口变动测算总报告》的预测效果。 8 d* f, u( c6 {* s% ?
(3) 分析人口变化的主要因素,建立人口增长与这些因素间的关系。
! z$ S" `* a- q- @9 J+ r: V! _, y(4) 依据你的研究给政府相关部门写一份800字左右的报告。
K2 z: ^4 R$ K% S5 {. P7 y
}1 d$ q; G& \$ p2 U3 W+ Q. _拿到手感觉还不算难吧,网上应该有很多这样的分析,但是网上大部分都是时间有点久的,这个是考虑全面开放二胎后得人口变化,主要还是用近年的数据,这样得分会高一些。
* q, k+ T: W/ M4 }+ Z4 B' x& p8 W+ l* f3 m2 n) @1 x
人口预测模型! ^& L+ ^$ z1 u0 `* v- g1 J
- d5 H4 y9 a! u, ?& B
先说我查到的几个模型吧,指数模型,灰度预测模型(这个网上被吐槽得很水),logistic模型,Leslie矩阵,大概就这几个了,然后论文里面用得是灰度预测和logistic模型,Leslie矩阵我很想加进去,因为它用当前人口年龄结构来预测未来的人口,感觉很切合题目。但是没找到合适的,就不了了之了。, s) w# e" p' [4 j5 i: v
% n( b% S+ j! [# {* d* ^0 n; h4 c灰度预测. I% ]2 I3 T+ W
% ` K I+ v9 B5 Z$ b8 }
先说公式推导 " t9 A6 k2 u- }1 ?) X
mathType的公式好像无法在makedown上面显示,我就截图吧 ! Z- G# @2 v7 z6 |7 I0 n$ l$ c8 J1 J u
2 \' o6 C7 O& y
3 D0 Z2 l4 z! [8 r$ I- p' @) A: v* Q) Y7 M7 Z! V% |
- a! R$ |( ~7 V! K- q
上面就是公式的推导,下面是matlab的代码7 r2 i+ B% e( h6 j
1 {7 j4 @) V1 p j, [6 Tclc,clear;
7 p8 D, e$ c7 [syms a b; $ I, |7 p2 B1 z/ q' c
c=[a b]'; 4 A7 o1 w( o9 S; \1 a) C6 C
%2012-2017
' h% K! @' |; g( dA=[ 135404 136072 136782 137462 138271 139008];
' u5 E; o" Z8 _1 Z) C# b; |B=cumsum(A); %原始数据累加 ( _/ q0 n) y0 b1 }, G5 _
n=length(A); : M+ B0 u- d- q, c" z& _! w3 g) O \
for i=1 n-1)
2 w. \" T. N& B- }: Y; f8 \7 a C(i)=(B(i)+B(i+1))/2; %生成累加矩阵 3 O/ U& q; k9 P" L
end
: h2 Q' N* A" E7 d p; i%计算待定参数的值
9 x) g8 X: p* F' h2 N5 ~0 cD=A;D(1)=[]; # `" p ~9 ?8 J5 [
D=D';
1 y4 t4 v) [8 _0 A. e/ FE=[-C;ones(1,n-1)];
+ C( D6 a( b7 q; z" U! i- b L( gc=inv(E*E')*E*D; # Z/ u- y. T: C- p5 ~; W0 n* {* o
c=c';
3 _/ H q! t' I! aa=c(1);b=c(2);
E" F4 A7 y% @! P3 o%预测后续数据
+ i( H9 }7 c; L! ^F=[];F(1)=A(1);
" r i7 h; _8 {! mfor i=2 n+5) %只推测后5个数据,可以从此修改 / Y% w/ `8 D* ^. k% n
F(i)=(A(1)-b/a)/exp(a*(i-1))+b/a; 7 c4 }( D! j2 b3 ]+ n
end
$ F$ b% F' q* e0 j7 e( @G=[];G(1)=A(1);
- t/ n& X+ N. L& c( Qfor i=2 n+5) %只推测后5个数据,可以从此修改 ; _ D4 U, x5 q6 `7 K
G(i)=F(i)-F(i-1); %得到预测出来的数据
$ `3 K6 O" G7 a6 P- |4 J- f1 V( z/ wend ' N7 |+ J( L2 X. O0 @- E
t1=2012:2017;
* L+ H5 K1 k7 x5 h. Ut2=2012:2022; %多10组数据
! f4 V! [ _7 g' ?# ]7 \& WG1 h/ H, w5 g. o' v( h! |
h=plot(t1,A,'o',t2,G,'-'); %原始数据与预测数据的比较
6 g; |2 H3 ~$ O/ xset(h,'LineWidth',1.5);0 r) t. \3 q+ N$ {+ b0 {2 ]
$ G7 D( }( n& y/ l' ~0 m. H
这是Excel里面的人口数据
' h9 c% P+ n" C& P# h. b2 Y6 e' A" [+ V" B4 s+ M9 \% |- w( l- o" G
最后得出的结论,感觉还是挺靠谱的。
7 a% a/ R) @- D" x; H1 v9 {
9 r! x. S! B6 [8 p E. K( D1 w3 `5 H/ W3 x
logistic模型' I l# n4 z" _3 ~/ Y: T) S8 M( p
# h( ~ x, a: _ @8 |8 I
前面说了灰度预测只适合用于样本量少的短期预测,logistic更适合中长期预测。
( H) W5 l3 K" X( B" H0 }
* Q) o5 p: e, ~* w# ]( p5 D J' [) N& V# b3 I6 V
clear T- H2 g3 w( v9 c& X* {+ z. ]
clc ~& I# w! U. q8 c( m/ C# c
% 读入人口数据(1971-2000年) 1997 - 2017
# }: ]# X9 G; L' fY=[123626 124761 125786 126743 127627 128453 129227 129988 130756 131448 132129 132802 133450 134091 134735 135404 136072 136782 137462 138271 139008]; ) e+ Y! `2 G9 Y% J
% 读入时间变量数据(t=年份-1970) + i2 D- F6 d- H5 f3 J
T=1997:2017;
2 o# }) E4 P+ B# L! t, Q; ~, v% 线性化处理
$ `! K4 K$ q5 w2 w U# a* h( Qfor t = 1:21,
) o9 u8 I7 G: {( B x(t)=exp(-t);
0 M- ~( _/ A$ R5 \ b" F/ q0 t( X y(t)=1/Y(t);
2 P8 Z; [9 L7 x+ K3 k ?end
( C+ W/ F$ d8 \5 c% 计算,并输出回归系数B,即计算回归方程 y'=a+bx' 中的a和b的值
% k' {* F& B* t0 k- f" {# [c=zeros(21,1)+1; ' d6 Z7 G# V9 R. [; v
X=[c,x'];%相当于30个方程组,求解a和b 的值. ) J$ F; r: o( w. s/ A
B=inv(X'*X)*X'*y' ( N0 V# V+ I, z6 ?% l
for i=1:21,
7 A! W& Z% N1 O& {; C5 E1 O% 计算回归拟合值 5 x& K4 u g @3 O" R$ z C8 L
z(i)=B(1,1)+B(2,1)*x(i);
2 ?# }6 T2 Z. n& P; t9 J! s" T/ Z% 计算离差
/ _$ C% \0 P$ F" `( h2 d, n! y! K s(i)=y(i)-sum(y)/21; . n" g( k5 H7 r. y( Q) [3 O
% 计算误差 5 [* s- K+ p! V8 T4 O* X/ H4 F
w(i)=z(i)-y(i);
3 [4 K4 u3 c: F# ]. V- Kend $ G; X6 Z$ s) {
% 计算离差平方和S
6 L j% X# a& u& c! rS=s*s'; 7 b# w: N* R/ h9 ^; y
% 回归误差平方和Q 1 \9 u3 r% y9 k
Q=w*w'; ) }9 @$ j7 g, V1 ~4 F( D' a
% 计算回归平方和U
# U* c5 V0 \" z f! g+ ZU=S-Q; 0 C+ p/ q4 }1 Z( z+ K1 B g
% 计算,并输出F检验值
! P0 T; f. Q; Q5 tF=28*U/Q
5 m2 U6 o z$ A/ z) k8 T% 计算非线性回归模型的拟合值 " F7 [$ A7 j) h4 C
for j=1:21,
( T+ @7 P" l. M) R% E p(j)=1/(B(1,1)+B(2,1)*exp(-j)); # G5 c% a) P5 C9 r9 y3 ^; b
end
9 v7 G& @# U' K3 c( Z6 X& y% 输出非线性回归模型的拟合曲线(Logisic曲线)
* R# R) X3 d$ ~/ Q/ d+ Tplot(T,Y,'r*')
: j$ I3 R/ o0 L1 g8 d ]" a/ C. K$ }hold on
+ P; ?8 T+ B& Lplot(T,p);
- b0 M- i0 Z; ?4 H- l/ T( t) n, j7 t" w
最后拟合出来的效果,无敌爆炸烂好吧,我也不知道为什么,等自己以后会了再来改吧
6 `$ v# y. q8 d
9 `; h2 p9 I& p+ q% F k( T, k- G& A- A! [/ @
5 S; U. E* L& d; X5 h
2 F' L* G% y1 P6 C1 n; Z* ` |
zan
|