CUA OpenMP Nonlinear Optimization Tool

Status: Completed

Start Date: 2018-05-18

End Date: 2021-02-17

Description: Nonlinear programming (NLP) allows for the solution of complex engineering problems, however, none of the currently available solvers fully capitalize on parallel computing. Many NASA trajectory design packages (OTIS, EMTG, MALTO) have already had their own code streamlined, and it is now the serial execution of existing NLP solvers that represents the largest bottleneck. It is the goal of this Phase II effort to further develop the CUA OpenMP Nonlinear Optimization Tool (COMPNOT), which will utilize shared memory systems to significantly improve the time-to-solution of NLP problems. As large-scale shared memory parallel systems, such as Intel’s Xeon Phi family, become more commercially available, COMPNOT will greatly expand the market for a parallel NLP solver, even enabling most modern desktop computers to effectively run it. Phase II will focus largely on creating a distributed/shared memory hybrid mode, enabling COMPNOT to take advantage of the shared memory nodes that comprise large distributed memory systems. Additionally the development of hardware-specific optimization, focusing on the Intel Math Kernel Library (MKL), will be a priority. At the end of Phase II, COMPNOT can begin integration into NASA trajectory design packages, significantly reducing the time-to-solution.
Benefits: NASA currently utilizes SNOPT, IPOPT, and WORHP software packages for astrodynamics applications such as the design of complex spacecraft trajectories and other optimal control problems, but could greatly benefit from the introduction of a parallel large-scale, nonlinear, sparse optimization solution one which does not have its speed bottlenecked by a single processor. The core NLP algorithm proposed to be used in COMPNOT has already been shown to result in a reduction in execution time, thereby reducing the optimization's turn-around time and improve communications between both designers and scientists. COMPNOT would take this effort, and refocus it to multi-core machines so that individual NASA scientists could perform advanced optimizations on a desktop. Our solver would act as a significant force multiplier for existing NASA tools such as GMAT's collocation-based low-thrust transcription and EMTG"s inner loop solver. Additionally, COMPNOT could improve run-times across all forms of problem optimizations, including trajectory design, resource management, attitude determination and control, and vehicle design.

Government agencies other than NASA, as well as commercial markets, would benefit from the improvements inherent in COMPNOT, especially given the widespread use of nonlinear programming techniques as a primary method for solving some of the most difficult technical computing problems. For example, in economics the product-mix with price elasticity problem can be formulated as a nonlinear program and solved with a tool like COMPNOT. Another field that depends heavily on efficient and robust NLP solvers is operations research, with the facility location problem and network optimization problems being archetypal examples of operation research challenges that may be cast as nonlinear programs. Furthermore, industries dealing with problems such as power grid design, weather prediction, and crop planting optimization could benefit from COMPNOT's speed enhancements.

Lead Organization: CU Aerospace, LLC