- 在线时间
- 1630 小时
- 最后登录
- 2024-1-29
- 注册时间
- 2017-5-16
- 听众数
- 82
- 收听数
- 1
- 能力
- 120 分
- 体力
- 564664 点
- 威望
- 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年大象老师国赛优 |
数模竞赛-人口问题) _5 F6 b0 U- z+ w! q/ t& I
. ?0 u9 k9 u& M0 k2 ]
学校最近的数学建模比赛,刚好组内同学也有想参加的,就一起报名了
; R% Z( F) M |7 Y! U- L2 Q j3 k0 e; W. `1 ^) v+ {" m
人口问题
$ B. U! R- q3 m( e; j
! m* o ^& A: p& e/ }在全面两孩政策正式实施之前,卫计委牵头进行了全面两孩政策影响生育的预测研究。 7 l Y/ s4 C6 x% o# j* i
根据最后完成的《实施全面两孩政策人口变动测算总报告》, P" ?2 I% p, e- \6 @
2016年放开全面两孩,2017到2021年5年间增加两孩出生数将为1719.5万人,平均每年增加340万左右。 5 `6 r K o# n; v1 H
其中,2017年出生人口总量将达到2109.9万人,2018年达到峰值,为2188.6万人。 7 {! U B8 R' I6 s7 H
国家统计局2018年01月18日公布数据显示,去年全国出生人口数量和人口出生率双双下降。 ( M9 Q1 T/ ^8 v/ m' |$ u& B5 X' z
2017年全年共出生人口1723万人,比预测数据“少了387万人”,低于2016年的1786万人。
$ v5 F6 Z5 _5 v+ X人口出生率也同样出现了明显下降,去年全国人口出生率为12.43‰,2016年这一数据为12.95‰。 ( t2 p$ T) m) w1 h0 M0 x) T8 v
由于与之前预测相差甚远,这个数据甚至令不少人口学界人士感到意外。
: F, W% T+ [ D1 h: S3 C' f! N8 S. H. E3 _' { t' T1 p
建立数学模型分析下列问题:% m5 `: i# Y2 @# O0 b+ _1 K+ b* i
- P; B# ]/ r: c( Z; g(1) 在现有政策下预测未来人口的变化趋势。 \9 @' B6 V ^3 V
(2) 如何才可达到《实施全面两孩政策人口变动测算总报告》的预测效果。
! S+ K7 `* \2 Y* T* t/ F+ U(3) 分析人口变化的主要因素,建立人口增长与这些因素间的关系。 , H# d7 |( r: _
(4) 依据你的研究给政府相关部门写一份800字左右的报告。
4 F8 E5 E8 W" x f- `; I3 _# \
' B$ ^. R, y* p) e$ g拿到手感觉还不算难吧,网上应该有很多这样的分析,但是网上大部分都是时间有点久的,这个是考虑全面开放二胎后得人口变化,主要还是用近年的数据,这样得分会高一些。$ m1 a6 I3 E6 m7 g1 C, ~' q
/ z4 W [% _3 {# \# U
人口预测模型
% ~+ Q$ j4 C% b0 F9 j8 p2 N* B3 N/ I- q O1 G7 V1 [
先说我查到的几个模型吧,指数模型,灰度预测模型(这个网上被吐槽得很水),logistic模型,Leslie矩阵,大概就这几个了,然后论文里面用得是灰度预测和logistic模型,Leslie矩阵我很想加进去,因为它用当前人口年龄结构来预测未来的人口,感觉很切合题目。但是没找到合适的,就不了了之了。
! c" O3 i" G q" M+ n% ]7 Q! C; h' I# G3 `
灰度预测# s0 _5 W' V' B5 g$ J
* A: q5 F( ^8 a, g* X先说公式推导 " [' L2 E( z/ X2 U4 Y5 M# {
mathType的公式好像无法在makedown上面显示,我就截图吧 % P |+ u, |: |" }6 s2 b! E+ N* d. F
) R# A6 K; @. I- [: A w
. c0 q, g' A' u$ O4 W
$ O6 \3 Z( ^4 @! n. q/ j% [& h
6 h4 ]. F; A* ^/ S& [0 t, X; S
上面就是公式的推导,下面是matlab的代码
9 o6 F, x/ a' M6 S
, |2 c- W) k; @. w0 X* R8 \5 dclc,clear;
& l! R* Y7 S- |; xsyms a b;
/ u7 B8 o& l# G; U: ?c=[a b]'; - X) I) c0 c5 V: [+ Z+ R! u
%2012-2017
8 q: F7 p3 F3 H3 F# JA=[ 135404 136072 136782 137462 138271 139008];
/ Q. f) Z! Z, N; BB=cumsum(A); %原始数据累加 3 N$ U( X7 w3 @ m3 Z2 s/ L8 h
n=length(A);
/ n+ b5 V& s1 @0 B* ]for i=1 n-1)
2 ]4 a5 K$ ~6 l; a$ A8 d C(i)=(B(i)+B(i+1))/2; %生成累加矩阵
! s7 x, z, n" {/ s8 {: Eend P- x% [* h$ w4 e' m1 L
%计算待定参数的值
) K5 j: }) [6 {/ L/ T2 d% oD=A;D(1)=[];
6 C M; V, |0 V" L; b2 OD=D';
9 l4 h" h1 X! w* \' n8 y S1 L) N4 [7 \E=[-C;ones(1,n-1)];
$ j5 K* T2 ` A vc=inv(E*E')*E*D;
# Z' D5 F' _2 m$ F) bc=c'; % l3 ~1 j) N( X1 j
a=c(1);b=c(2); / n' G7 p8 n" t* b5 K% U5 X
%预测后续数据
! k: G, \ v. q1 j3 m( ~) P3 Y( iF=[];F(1)=A(1); * M& q& H; }- d o
for i=2 n+5) %只推测后5个数据,可以从此修改
1 g# Z( T$ Y! ]. E: @2 F7 G F(i)=(A(1)-b/a)/exp(a*(i-1))+b/a;
0 c* R5 T9 {' b& ^& _5 Lend
1 [4 U: T: o4 N. V0 w% M8 NG=[];G(1)=A(1);
& ] X1 g: m3 O6 {6 W2 Ofor i=2 n+5) %只推测后5个数据,可以从此修改
( w% j" d. i! v G(i)=F(i)-F(i-1); %得到预测出来的数据 - M3 B; d6 Z: w" t; e
end
: M+ c* h+ @7 f0 Z5 At1=2012:2017; ' n3 |2 {. W& U: `( `! b. w
t2=2012:2022; %多10组数据 , P7 f! c3 z7 H$ p0 v2 _
G1 }8 G4 i7 p! y2 g$ }7 I! ?' O* S
h=plot(t1,A,'o',t2,G,'-'); %原始数据与预测数据的比较 , l6 f3 _, I, a; }! h- i
set(h,'LineWidth',1.5);
4 o- M5 i! T( F3 H
$ U% O# p) {+ C, W这是Excel里面的人口数据 " y% k) u' Y, k3 Z" e
# D8 E {* y, f最后得出的结论,感觉还是挺靠谱的。
" ` p$ h9 d# `( B) L9 F
8 q) I0 K0 T* m; U6 U% r% e
! E7 p- S E4 Q$ \7 y3 n; hlogistic模型
5 H( c% ^8 n* g0 U
3 [1 o1 o" L# R3 f前面说了灰度预测只适合用于样本量少的短期预测,logistic更适合中长期预测。
' A' B# _* J8 d2 c( S1 m& m7 z5 B- X/ ^* i% g
" J5 J! D( m1 Y6 b }* Jclear ! ]( H( g) ^+ h; M1 `/ m
clc
1 d9 B& _, w1 w* i4 C% 读入人口数据(1971-2000年) 1997 - 2017% \5 S2 T; {- O) s+ Y
Y=[123626 124761 125786 126743 127627 128453 129227 129988 130756 131448 132129 132802 133450 134091 134735 135404 136072 136782 137462 138271 139008]; 1 T; I1 `; x. p9 d" r' T
% 读入时间变量数据(t=年份-1970)
/ x" a6 j# ]5 _% Y) iT=1997:2017;
4 K1 g: T. F6 W0 Y: e$ q% 线性化处理
# E, T+ V @+ O6 qfor t = 1:21, 0 L9 g" e1 }) Q# K; U
x(t)=exp(-t);
* p0 C+ @7 B0 W- A# x7 x! B0 ]$ | y(t)=1/Y(t);
6 B9 |: Z% L' i6 `end
& t2 O' m! L* c {7 _% 计算,并输出回归系数B,即计算回归方程 y'=a+bx' 中的a和b的值 2 z3 f5 A1 q2 ^5 Q6 R! k
c=zeros(21,1)+1;
% t; B! k! V) l5 pX=[c,x'];%相当于30个方程组,求解a和b 的值.
w u& B& d8 H1 i8 SB=inv(X'*X)*X'*y'
: F8 B! s" h! H& i# `0 w2 ~/ C* Pfor i=1:21, . Q/ `* j3 V* X. m, `
% 计算回归拟合值
! n K* P8 G/ } O$ p! J Y z(i)=B(1,1)+B(2,1)*x(i); & E9 T5 N' j+ B5 G; V
% 计算离差
& p" V; O; ~% c: B9 } s(i)=y(i)-sum(y)/21; 7 i9 w0 |% x; Q) k$ t5 T
% 计算误差
% Q! M3 ~0 [: Z6 \3 e* v w(i)=z(i)-y(i); B1 ?& J( n; G9 B8 ]
end * n- i0 S1 G! U7 R& R) F e
% 计算离差平方和S ) i4 ]$ h3 J+ d: _) `
S=s*s';
% u/ p, {& i! y! ?! ~% 回归误差平方和Q
, r9 g- [ p9 `8 y, C/ ?2 x- ?Q=w*w'; + d# E: E$ P( W! z7 r7 [# c& J: A
% 计算回归平方和U ' o! ^/ y, I% b3 d
U=S-Q; / `4 o) ^ T* e, ]' @4 S9 Z
% 计算,并输出F检验值
; h: N0 X [' I/ A/ F" n; EF=28*U/Q " |: ^; Q: ~; b5 @5 _
% 计算非线性回归模型的拟合值 4 b1 w, w( |& E9 V
for j=1:21,
, ~3 U' j; H5 N% M p(j)=1/(B(1,1)+B(2,1)*exp(-j));
( c0 ^9 ?# g' h# Z0 {/ Send
! Y; _, B x( X( p% 输出非线性回归模型的拟合曲线(Logisic曲线)
! ^2 X3 c( s- Y. m, A. E6 nplot(T,Y,'r*') O# w* M4 z! x" Z5 t/ u6 w
hold on* ]( c3 G# t* q
plot(T,p);
% y0 z' B, |& b1 c! P8 x2 t1 ^+ Y$ L; Z
最后拟合出来的效果,无敌爆炸烂好吧,我也不知道为什么,等自己以后会了再来改吧
; G" ~' p! D/ d( `, x
% V7 u' T: ]$ P9 {% k% t6 Z! [% s) D7 J- i& ?# _: \. a
+ d/ D, ~0 {1 H# o- u" X/ X) l) @: R: l6 X$ N* G! D
|
zan
|