数学建模社区-数学中国
标题:
MATLAB在数学建模中的应用 随手笔记(三)----- 数据拟合应用实例
[打印本页]
作者:
佛自业障
时间:
2018-11-1 10:58
标题:
MATLAB在数学建模中的应用 随手笔记(三)----- 数据拟合应用实例
一、人口预测模型
& e8 w; L3 W0 @" w
7 m$ [5 L7 O9 h7 _, @1 x3 b# N
表1-4所列是某地区1971-2000年的人口数据,试给出该地区人口增长的数学模型。
2 R$ ^& Q: c& P: W: [
' f M% `0 X$ l- m8 _* _7 {& M0 i
根据表中的数据,做出散点图,如图1-12所示。
1 Z' u. t7 U- J3 R/ L
. ^, Y3 t) \( L* s
由图1-12可以看出,人口随时间呈现非线性变化,而且存在一个与横坐标轴平行的渐近线,故可以用logistic曲线模型进行拟合。
$ y; D. y9 E9 E$ G
9 h5 b& B8 W, ]% X, e/ K1 ?; w( `% K
: ~) B8 P6 I3 G% D( G3 Z
1 k5 o# }+ L% N9 r+ ]! s/ C
因为Logistic曲线模型的基本形式为
3 g* {" v* {2 _- v9 F! J
8 m/ ]/ H7 \# L7 U
y=1/(a+b*e^-t)
4 p9 V* g5 A# W, l0 c7 S
* [; \+ ? q) f
所以,只要令y’=1/y,x'=e^-t,就可以将其转化为直线模型
5 [3 F' D$ G2 a; q% y/ l( C) R
* W/ H3 y4 c$ K
y'=a+b*x'
( F, y0 ^! c& K" Y I0 ]
) J- j K2 C* |
下面,用MATLAB进行回归分析拟合计算。回归拟合程序如下:
( T5 q- ~( o9 k; ]* E( s
" T S0 t1 S! N3 n
r7 p7 t! y+ g: P! m0 ]
( T& L1 g( Y' f% u- e* j
函数简要回顾:
) t3 t8 _& h8 g0 j; s) |
( l6 W4 h6 r x* i% O
① zeros
2 y3 D/ E0 i; {' o2 }; E3 t$ h3 N6 V
4 D7 l+ S) i7 Z# i! Q9 Y7 c7 N
zeros(m) 生成一个m*m的零矩阵
* r$ _8 z" u/ F n9 S9 R
( u; s/ n$ u+ W" H& p; F
zeros(m,n) 生成一个m*n的零矩阵
7 [1 x$ _: \) s% ^8 A. O
9 d4 J- [. W2 H) r( M( U
zeros(m,n,k,.....) 生成一个m*n*k..的零矩阵
9 r, S2 r4 U- U# g
! E/ m& S6 ]& Q, L2 d- |
② Sum
, w& f6 S9 ]8 ^
: Z- Z% t5 O0 {8 F' I; B+ I; m
# t( j5 [; O' s: X" s1 i) r
( {: s/ O: z! d$ q3 T7 ]) C: |
sum(m) 列求和
0 H( i l! O. d/ d
`% ` v: u3 m, x
sum(m,2) 行求和
# i/ v: r' x0 V* Q! V( N9 }$ J: N! r2 T
4 r3 d" s5 I: x
zeros(x(:1)) 矩阵求和
& M: W# B/ V9 o$ m N
s W3 l8 e# y
③ inv
4 W8 [# \* h' n; g
* U# y. y# T. X; H9 A3 \
求解AX=b时,X=A/b。也可以表示为:X=inv(A)*b
+ ]' R0 F( N6 k$ t' J- C
& p/ Z# ] }( n/ c
' W% Z2 O4 _2 z7 \/ }2 D" e T# R" L) y7 ^
! _/ S9 ]( S5 a8 M. K
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5