5 i$ U$ o' a! J' _( X8 K ( H3 W1 ? }$ x- `, l, M在数学建模竞赛中,如:92 年 B 题用分枝定界法,97年 B 题是典型的动态规划问题,此外 98 年 B 题体现了分治算法。 $ m7 y. E3 h& r * D. d; ?% k: N' M3 P6 R4 w; s 5 w3 s* s5 X* S& G7 l+ }7 |这方面问题和 ACM 程序设计竞赛中的问题类似,推荐看一下算法导论,与《计算机算法设计与分析》(电子工业出版社)等与计算机算法有关的书。. u" C. |+ x4 }7 H7 \- c( x
5 E) W8 ?) m# S$ g
06
8 C# g4 ^& s' Z) Y! a1 W" l
! C& r, r' i% l$ x- s
最优化理论的三大经典算法:模拟退火法、神经网络、遗传算法
* s+ q) {) h \) v 1 J8 g. ~& s' Q8 @这十几年来最优化理论有了飞速发展,模拟退火法、神经网络、遗传算法这三类算法发展很快。9 j& t6 g2 E, m/ q; [; A
8 p* K$ y7 \# M1 F. t. y
在数学建模竞赛中:比如 97 年 A 题的模拟退火算法,00 年 B 题的神经网络分类算法,01 年 B 题这种难题也可以使用神经网络。 4 @0 l* z4 l0 I" t+ |0 v m. h8 `: b; }1 y2 e
还有美国竞赛 89 年 A 题也和 BP 算法有关系,当时是 86 年刚提出 BP 算法,89 年就考了,说明赛题可能是当今前沿科技的抽象体现。 ) I! \! E+ q; v $ Y! p* R; Y; v( u4 v# G03 年 B 题伽马刀问题也是目前研究的课题,目前算法最佳的是遗传算法。$ z3 T; ? O8 u* h. {
: U& y( ~* ]/ g/ f- d
 D& M( G7 N/ ]$ O4 m) C( k
) U) x* `7 u+ C3 o' S( L/ S( B) K
穷举法大家都熟悉,自不用多说了。8 S1 } O9 |8 _5 `. M
# F+ V8 w# F8 L/ e Z
08
7 U" a8 v. |# b0 h
. W! s, S! C+ z2 y6 _
一些连续离散化方法
% L5 o( M' q" ^- t. c. |* r- R1 q' a9 B9 u: m
大部分物理问题的编程解决,都和这种方法有一定的联系。物理问题是反映我们生活在一个连续的世界中,计算机只能处理离散的量,所以需要对连续量进行离散处理。 ( ]2 i3 c' a: I' ?5 ~1 L9 D 1 i: A+ d3 D9 J- l0 }3 K9 x这种方法应用很广,而且和上面的很多算法有关。事实上,网格算法、蒙特卡罗算法、模拟退火都用了这个思想。1 p2 A, A% k; Y$ [" `( U7 Z# T
: g$ H/ d6 n$ T
09
- J1 j) ]6 d1 E6 ^6 f# i" y% G/ Q) y" Q; S
数值分析算法
6 W. h" i. B* P+ h( A! X3 z B! N) ^7 h9 Z2 Z. U1 l$ }0 D
数值分析(numericalanalysis),是数学的一个分支,主要研究连续数学(区别于离散数学)问题的算法。/ r2 j: x0 I; F. k$ z7 y1 h- S
1 v3 V+ R+ I E% Y
如果在比赛中采用高级语言进行编程的话,那一些数值分析中常用的算法比如方程组求解、矩阵运算、函数积分等算法就需要额外编写库函数进行调用。/ R/ m& e0 E9 z+ c0 d