"The purpose of computing is insight, not numbers", R.
H. Hamming
Instructor: Alexey Onufriev
Office: 2160C
Torgersen Hall
Phone: (540)231-4237
Email:
alexey@cs.vt.edu Office
Hours: By request.
Recommended Texts:
Numerical Recipes in C (or C++), W. H. Press, et al. (The bible
of scientific computing for those who approach the subject from the application perspective. Has good intro level material on multi-dimensional optimization. )
Encyclopedia of Optimization, Editors: Floudas, Christodoulos A., Pardalos, Panos M, 2nd Edition. Spring 2009.
(As the name suggests, the tome has everything... A collection of real research papers on most aspects of advanced optimization. Some of the papers are quite accessible at the level of this class, some go well beyond. A good source to pick papers to present.
The beginner's guide to Mathematica, J. Glynn et al. (A really good, albeit somewhat dated, intro into Mathematica. Lots of cool, easy to follow and non-trivial examples ).
Introduction to UNIX, D. Schwartz . (A nice thin book with lots of detailed examples. Perfect for those not on first name basis with UNIX )
SyllabusLectures (the specific topics and order may change somewhat):
Introduction with multiple examples.
Minimiaztion in multiple dimensions: a motivational intro.
Intro Example: local vs. global minima in water models.
Intro Example: The grand challenge of computational science: protein folding.
Intro to the class project(s).
The beginning: optimization in 1D. Newton's method and its pitfalls.
Intro to ARC and Unix preliminaries.
Gradient methods I.
Gradient methods II.
On to global optimization. Random Search based on Gradient descent.
Constrained optimization
Nelder-Mead (simplex) algorithm.
Simulated Annealing
Genetic Algorithms (Differential Evolution)
Student Presentations
DIRECT (global optimization)
VTDirect (parallel implementation of DIRECT)
Linear Programming.
Sampling in multidimensional space.
Notes on Quantum Annealing (with an intro to Q. Computing).
UNIX Basics (for those who need to brush up). Due by March 1. Each student submits a separate solution for each of
the three sets of skills listed below. If you are confident in your unix ability in the specific set X below, submit a statement "I am confident in X" instead.