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: - :doc:`Multilevel Optimization `: We go through the mathematical formulation as well as several application examples of multilevel optimization. - :doc:`Software Design `: We introduce an abstraction for multilevel optimization and describe how this abstraction is implemented within Betty. - :doc:`Autodiff (Advanced) `: We discuss the mathematics of automatic differentiation for multilevel optimization. We then illustrate how automatic differentiation is implemented within Betty. - :doc:`Architecture (Advanced) `: We discuss the overall software architecture of Betty and how it executes multilevel optimization. .. toctree:: :maxdepth: 1 :hidden: Multilevel Optimization Software Design Autodiff (Advanced) Architecture (Advanced)