Current location - Training Enrollment Network - Mathematics courses - What do mathematical modelers need to learn?
What do mathematical modelers need to learn?
Mathematical modelers need to learn the following:

1, Monte Carlo algorithm (this algorithm is also called stochastic simulation algorithm, which is an algorithm to solve problems through computer simulation, and at the same time, it can test the correctness of its model through simulation, which is an essential method in the competition).

2. Data processing algorithms such as data fitting, parameter estimation and interpolation (there are usually a lot of data to be processed in the competition, and the key to processing data lies in these algorithms, usually using Matlab as a tool).

3. Linear programming, integer programming, multivariate programming, quadratic programming and other planning problems (most of the problems in modeling competitions belong to optimization problems, and in many cases these problems can be described by mathematical programming algorithms, usually realized by Lindo and Lingo software).

4. Graph theory algorithm (this kind of algorithm can be divided into many kinds, including shortest path algorithm, network flow algorithm, bipartite graph algorithm, etc. , and problems related to graph theory can be solved by these methods, which need careful preparation).

5. Computer algorithms such as dynamic programming, backtracking search, divide and conquer algorithm, branch and bound (these algorithms are commonly used in algorithm design and can also be used in competitions on many occasions).

6. Three non-classical algorithms of optimization theory: simulated annealing method, neural network and genetic algorithm (these problems are used to solve some difficult optimization problems and are very helpful to some problems, but the algorithms are difficult to realize and need to be used carefully).

7. Grid algorithm and exhaustive method (both grid algorithm and exhaustive method are the best algorithms for violent search, and they are applied in many competition questions. When you focus on the model itself and ignore the algorithm, you can use this violent scheme, and it is best to use some high-level languages as programming tools.

8. Some continuous discretization methods (many problems are practical, data can be continuous, and computers only recognize discrete data, so it is very important to discretize and replace summation with differentiation with integration).

9. Numerical analysis algorithm (if high-level language programming is used in the competition, some commonly used algorithms in numerical analysis, such as solving equations, matrix operation, function integration, etc., need to write additional library functions to call).

10, image processing algorithm (there is a kind of problem related to graphics in the competition, even if it has nothing to do with graphics, but there should be many pictures in the paper. How to show these graphics and how to deal with them is a problem to be solved, which is generally handled by Matlab).