Developing, analyzing, and implementing algorithms in software
This project entails development of new algorithms, analysis of convergence properties, implementation of algorithms in software, and benchmarking of codes on important applications.
Complex optimization problems where derivatives are unavailable arise in all important scientific application areas. The computational expense of the underlying simulations can be significant, requiring hours on the largest architectures. Thus, there is a need for optimization algorithms that obtain a satisfactory level of accuracy while minimizing the number of evaluations of the simulation.