Abstract

An object-oriented framework for sequential approximate optimization (SAO) is proposed. The framework aims to provide an open environment for the specification and implementation of SAO strategies. The framework is based on the Python programming language and contains a toolbox of Python classes, methods, and interfaces to external software. The framework distinguishes modules related to the optimization problem, the SAO sequence, and the numerical routines used in the SAO approach. The problem-related modules specify the optimization problem, including the simulation model for the evaluation of the objective function and constraints. The sequence-related modules specify the sequence of SAO steps. The routine-related modules represent numerical routines used in the SAO steps as “black-box” functions with predefined input and output, e.g., from external software libraries. The framework enables the user to (re-) specify or extend the SAO dependent modules, which is generally impossible in most available SAO implementations. This is highly advantageous since many SAO approaches are application-domain specific due to the type of approximation functions used. A ten-bar truss design problem with fixed loads as well as uncertain loads is used as an illustration and demonstrates the flexibility of the framework.

Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call