pyOpt: a Python-based object-oriented framework for nonlinear constrained optimization

被引:0
作者
Ruben E. Perez
Peter W. Jansen
Joaquim R. R. A. Martins
机构
[1] Royal Military College of Canada,Department of Mechanical and Aerospace Engineering
[2] University of Michigan,Department of Aerospace Engineering
来源
Structural and Multidisciplinary Optimization | 2012年 / 45卷
关键词
Optimization algorithms; Constrained optimization; Nonlinear programming; Object-oriented programming; Python; Aerostructural optimization;
D O I
暂无
中图分类号
学科分类号
摘要
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.
引用
收藏
页码:101 / 118
页数:17
相关论文
共 53 条
  • [31] Alonso JJ(undefined)undefined undefined undefined undefined-undefined
  • [32] Meza JC(undefined)undefined undefined undefined undefined-undefined
  • [33] Oliva RA(undefined)undefined undefined undefined undefined-undefined
  • [34] Hough PD(undefined)undefined undefined undefined undefined-undefined
  • [35] Williams PJ(undefined)undefined undefined undefined undefined-undefined
  • [36] Oliphant TE(undefined)undefined undefined undefined undefined-undefined
  • [37] Peterson P(undefined)undefined undefined undefined undefined-undefined
  • [38] Poon NMK(undefined)undefined undefined undefined undefined-undefined
  • [39] Martins JRRA(undefined)undefined undefined undefined undefined-undefined
  • [40] Rosenbrock HH(undefined)undefined undefined undefined undefined-undefined