Shortcuts

Major Concepts

In this chapter, we introduce the major concepts of multilevel optimization (MLO) and Betty’s software design. Betty allows for an easy-to-use, modular, and maintainable programming interface for general MLO programs involving complex dependencies, without requiring expertise in programming and mathematics. This chapter is composed of 4 sub-chapters:

  • Multilevel Optimization: We go through the mathematical formulation as well as several application examples of multilevel optimization.

  • Software Design: We introduce an abstraction for multilevel optimization and describe how this abstraction is implemented within Betty.

  • Autodiff (Advanced): We discuss the mathematics of automatic differentiation for multilevel optimization. We then illustrate how automatic differentiation is implemented within Betty.

  • Architecture (Advanced): We discuss the overall software architecture of Betty and how it executes multilevel optimization.