7 p1 P% p! W6 |3 Z; \4 K# J
数学建模--常用算法及程序' ]3 @4 ]0 ?# Q! K1 r0 Q: q
//推荐内容:http://blog.csdn.net/yillc/article/details/6746996 //程序见http://blog.csdn.net/congduan/article/category/931154 1.蒙特卡罗方法(Monte-Carlo方法,MC): f$ f' d8 r) O
02年的B题 关于彩票第二问,要求设计一种更好的方案,首先方案的优劣取决于很多复杂的因素,同样不可能刻画出一个模型进行求解,只能靠随机仿真模拟。/ A0 i/ J( c& S
注:绝对是大牛级的算法,像几何一样可以从小学研究到大学,低级到测算圆面积,高级到马尔科夫蒙特卡洛,都应用的到。
, H" q c/ F2 c# I, h7 a) l: m6 Y9 ?9 {4 j0 m1 _
1 h2 s# e5 m! g) I
2.数据拟合、参数估计、插值等数据处理算法
+ ?! r: }2 k# @, a$ \' _此类问题在MATLAB中有很多函数可以调用,只有熟悉MATLAB,这些方法才能用好。, b% |9 K% q: r
注:这一点mathmatica比matlab好用的多,听说 `# _: n1 N. ^5 d. ?, ?
$ d6 a8 X% j+ S! z" M% ^0 C. w5 _7 A3 |* s2 K
3.规划类问题算法
- f. o5 U& z1 W- g: C3 {2 o( d0 Y* w竞赛中很多问题都和数学规划有关,可以说不少的模型都可以归结为一组不等式作为约束条件,几个函数表达式作为目标函数的问题,遇到这类问题,求解就是关键了
* Y2 w5 R! `7 X8 ]$ _注:线性容易,非线性难
/ G1 U1 Z* d4 u" M% o7 q, X: d) q
- ~9 I/ [7 O7 S" U, [" O
3 @1 e0 Q& P! M m" I/ T4.图论问题! E# Z6 ~, j( s' Y% ^8 c' C9 B
这类问题算法有很多,包括:Dijkstra、Floyd、Prim、Bellman-Ford,最大流,二分匹配等问题。
7 p2 R! R8 o: U$ a; |
+ a& T$ m d ~8 M
! H+ e+ r, B! `( |. a- Q/ s& Y5.计算机算法设计中的问题
8 `+ m2 [2 E0 m8 J$ C计算机算法设计包括很多内容:动态规划、回溯搜索、分治算法、分枝定界等计算机算法.' x1 D% V2 {0 s1 Y$ r5 L
92 年B题用分枝定界法5 G( O9 w0 d; M6 |4 }# d( U! a
97 年B题是典型的动态规划问题
7 C5 C, t( A4 r98 年B 题体现了分治算法
# f) V7 ~$ {) y4 J' ~; ?# f. E
/ n/ _6 f! _3 m+ E. l( W
; u) W) i3 w- o5 q; H6.最优化理论的三大非经典算法:
& c+ B! o2 Z5 f( T 模拟退火法(SA)、神经网络(NN)、遗传算法(GA)1 y; f# ^+ Y( E( x4 ]4 M
近几年的赛题越来越复杂,很多问题没有什么很好的模型可以借鉴,于是这三类算法很多时候可以派上用场。5 U& }4 `5 }; b# e4 r
97年A题用模拟退火算法* S. A/ R/ x; P3 F' |* c7 m
00年B题用神经网络分类算法
& H* W/ Z9 U( }6 f' u- ^01年B题这种难题也可以使用神经网络
' ]5 C$ k2 U: T- b, V+ R* \美国89年A题也和BP算法有关系
- p/ j0 e' T8 U* G" q5 P注:这个属于计算机科学人工智能领域的,good
, }( p1 ]: n- b9 W0 {# b$ k: Q/ ~/ g7 i9 m! @
* S1 H% L/ `1 K/ S/ t, d% w; q* R7.网格算法和穷举算法
9 Q# i: ?0 s( E: Z3 M! u9 E97 年A 题、99 年B 题都可以用网格法搜索* ?$ R7 o. g2 [
6 |, M& q' s+ e% b! y4 p- P7 w* `
9 E6 Y5 f9 U+ X4 o! T& M8.连续问题离散化的方法
. s# j8 h4 q! R7 |' [3 v8 m2 y$ r1 U7 i3 s" [( J
, Z8 ~. u0 ~) U4 _* g' B9. 数值分析方法
" A; F$ j3 g8 n5 n( u% I它的主要内容包括函数的数值逼近、数值微分与数值积分、非线性方程的数值解法、数值代数、常微分方程数值等。! x, A& D" e" N$ @9 a) A
数值分析是计算数学的一个重要分支,把理论与计算紧密结合,是现代科学计算的基础
, y$ H8 R1 G6 _3 i' C9 L I5 \& X+ x. j1 ]# _" K3 l( k/ [6 S
9 P* J# I4 ^ v: {" V" k10.图象处理算法
0 F7 s0 L1 ]- J: Q
! ^* H& q9 \8 W/ |& _: R6 J0 Y |