$ M) ]6 n% k; Z( }2 d5 e
数学建模--常用算法及程序
4 K+ U7 K. A! H0 ^! |. d//推荐内容:http://blog.csdn.net/yillc/article/details/6746996 //程序见http://blog.csdn.net/congduan/article/category/931154 1.蒙特卡罗方法(Monte-Carlo方法,MC)
9 ~6 k4 u* v& O02年的B题 关于彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。3 V* S: j1 Y% [( Q1 W! i
注:绝对是大牛级的算法,像几何一样可以从小学研究到大学,低级到测算圆面积,高级到马尔科夫蒙特卡洛,都应用的到。( ~% s+ s e2 g9 N5 P$ F: s
3 N- w$ F" S0 ?4 A1 c M3 A: C* @, ^: ?
2.数据拟合、参数估计、插值等数据处理算法, g ~3 l; C- J/ M) ~$ f2 P
此类问题在MATLAB中有很多函数可以调用,只有熟悉MATLAB,这些方法才能用好。
+ ]: J5 n3 v t% _, _注:这一点mathmatica比matlab好用的多,听说
: s8 q9 d% i- u5 c& P4 H
4 q" `9 w& \/ E+ S, r* f: @ s1 v' J0 |5 t3 I% A/ S y
3.规划类问题算法6 r7 f' W: c8 D8 ^2 R
竞赛中很多问题都和数学规划有关,可以说不少的模型都可以归结为一组不等式作为约束条件,几个函数表达式作为目标函数的问题,遇到这类问题,求解就是关键了2 Y+ {0 R5 C, b$ j. g$ L- A
注:线性容易,非线性难
: v$ l7 t" F v) v
! z- F. M. H0 x" \
( u+ Q8 _ U" [+ i4.图论问题
: p3 v& M: z0 K% O: ]- y$ ^$ t; B" L; |这类问题算法有很多,包括:Dijkstra、Floyd、Prim、Bellman-Ford,最大流,二分匹配等问题。
7 `3 y9 ^/ N( d7 i# d# L" w% s: {$ j' F# f
# D) S( J+ `- W5 g' F) O4 c5.计算机算法设计中的问题
* `5 @' Y" l& }5 y5 i计算机算法设计包括很多内容:动态规划、回溯搜索、分治算法、分枝定界等计算机算法.6 x$ l2 P B5 Q, [. \. e3 p
92 年B题用分枝定界法
1 j& D8 n( c3 n9 X97 年B题是典型的动态规划问题% M8 {& [8 l; v6 p8 ~
98 年B 题体现了分治算法
( w% \9 g( F% z$ M" q* D7 a6 J' H8 L7 Q, Q; J* @1 s* K
e2 q2 {: I$ [ E F7 b- V3 {; Q; n6.最优化理论的三大非经典算法:
- K4 b% \1 A# o1 y. @; t 模拟退火法(SA)、神经网络(NN)、遗传算法(GA) y$ R6 e% \3 B U$ A% M. q
近几年的赛题越来越复杂,很多问题没有什么很好的模型可以借鉴,于是这三类算法很多时候可以派上用场。0 h3 K) A/ s" j- k: r2 W; _
97年A题用模拟退火算法
/ F$ u* V5 C, o7 f0 \$ r4 a. h. A00年B题用神经网络分类算法, O" a( A$ _0 o
01年B题这种难题也可以使用神经网络, R P7 Y0 y* Q0 a- G" |
美国89年A题也和BP算法有关系
5 \" T; }' ~% H7 Q6 X1 A9 }! ?5 ?注:这个属于计算机科学人工智能领域的,good0 U1 ]3 }4 b2 Q# @! J5 J. n. x
; G* N: [8 D5 E( O8 G& g
! N) M7 c* H( @6 Y( W: _7.网格算法和穷举算法
6 q8 J2 Q# o# G e/ }97 年A 题、99 年B 题都可以用网格法搜索0 u# S5 M1 | V. X: q" H
! g+ z# X3 _0 j& a! c4 S; d
; c. g" N7 f$ X6 `, J
8.连续问题离散化的方法5 x3 N( p: }3 |# {) \
+ C7 s2 \2 J7 h2 E1 J! ?# b- e) ?1 S- K
9 }* q$ K9 P9 x+ c7 M9. 数值分析方法
! _8 A. u7 S8 n( J1 d r! A* g它的主要内容包括函数的数值逼近、数值微分与数值积分、非线性方程的数值解法、数值代数、常微分方程数值等。# ?. y" U+ H& \' l) D$ {% c
数值分析是计算数学的一个重要分支,把理论与计算紧密结合,是现代科学计算的基础 * H* y4 b- ?* o
g) l& A$ c( I4 X
4 N3 R6 A" F+ q3 e4 R6 A: p10.图象处理算法
0 M3 S$ h' i8 V6 B4 L$ ?/ D& l2 O7 ~) o- u1 e
|