Function Minimization via Generalized Simulated Annealing

Project Background: Finding the global minimum of a system of non-linear equations is a ubiquitous problem in mathematics, the physical sciences, and engineering. Various theoretical approaches are outlined in multivariable calculus, but the difficulty of carrying out the algebraic manipulations puts minimization problems of genuine significance beyond the reach of pencil and paper calculations. The presence of numerous local minima make locating global minima with the aid of a computer tedious. Sadly, some computer codes claim to be able to find global minima but encourage the user to check the result by hand the result, just in case the code actually found a local minimum.

Project Description: The student will study the family of minimization techniques known as simulated annealing. This technique borrows its name from a metallurgical process. When a metal is annealed, it is heated to a high temperature and then slowly cooled so that the metal reaches its crystalline state in which it has minimum energy. In simulated annealing an artificial temperature function is created which helps the numerical routine avoid local minima in its search for a global minimum. The challenge in developing a practical numerical code for performing simulated annealing is deciding how quickly to lower the artificial temperature so that the user is essentially guaranteed of arriving at a global minimum. The student will implement a code for simulated annealing and explore the efficiency of different temperature distributions for finding global minima.

Desired Student Background: Ability to program in a high-level language, preferably Mathematica, C/C++, or FORTRAN, and mathematical knowledge at the level of MATH 375 Numerical Analysis.