PyOpt: a python-based object-oriented framework for nonlinear constrained optimization We present pyOpt, an object-oriented framework for formulating and solving nonlinear constrained optimization problems in an efficient, reusable and portable manner. The framework uses object-oriented concepts, such as class inheritance and operator overloading, to maintain a distinct separation between the problem formulation and the optimization approach used to solve the problem. This creates a common interface in a flexible environment where both practitioners and developers alike can solve their optimization problems or develop and benchmark their own optimization algorithms. The framework is developed in the Python programming language, which allows for easy integration of optimization software programmed in Fortran, C, C++, and other languages. A variety of optimization algorithms are integrated in pyOpt and are accessible through the common interface. We solve a number of problems of increasing complexity to demonstrate how a given problem is formulated using this framework, and how the framework can be used to benchmark the various optimization algorithms.
Keywords for this software
References in zbMATH (referenced in 5 articles , 1 standard article )
Showing results 1 to 5 of 5.
- Arreckx, Sylvain; Lambe, Andrew; Martins, Joaquim R.R.A.; Orban, Dominique: A matrix-free augmented Lagrangian algorithm with application to large-scale structural design optimization (2016)
- Tröltzsch, Anke: A sequential quadratic programming algorithm for equality-constrained optimization without derivatives (2016)
- Lee, Edmund; James, Kai A.; Martins, Joaquim R.R.A.: Stress-constrained topology optimization with design-dependent loading (2012)
- Lee, Edmund; Martins, Joaquim R.R.A.: Structural topology optimization with design-dependent pressure loads (2012)
- Perez, Ruben E.; Jansen, Peter W.; Martins, Joaquim R.R.A.: PyOpt: a python-based object-oriented framework for nonlinear constrained optimization (2012)