pyMDO: An Object-Oriented Framework for Multidisciplinary Design Optimization

被引:17
作者
Martins, Joaquim R. R. A. [1 ]
Marriage, Christopher [1 ]
Tedford, Nathan [1 ]
机构
[1] Univ Toronto, Inst Aerosp Studies, Toronto, ON M3H 5T6, Canada
来源
ACM TRANSACTIONS ON MATHEMATICAL SOFTWARE | 2009年 / 36卷 / 04期
基金
加拿大自然科学与工程研究理事会;
关键词
Algorithms; Experimentation; Multidisciplinary design optimization; object-oriented programming; COLLABORATIVE OPTIMIZATION;
D O I
10.1145/1555386.1555389
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
We present pyMDO, an object-oriented framework that facilitates the usage and development of algorithms for multidisciplinary optimization (MDO). The resulting implementation of the MDO methods is efficient and portable. The main advantage of the proposed framework is that it is flexible, with a strong emphasis on object-oriented classes and operator overloading, and it is therefore useful for the rapid development and evaluation of new MDO methods. The top layer interface is programmed in Python and it allows for the layers below the interface to be programmed in C, C++, Fortran, and other languages. We describe an implementation of pyMDO and demonstrate that we can take advantage of object-oriented programming to obtain intuitive, easy-to-read, and easy-to-develop codes that are at the same time efficient. This allows developers to focus on the new algorithms they are developing and testing, rather than on implementation details. Examples demonstrate the user interface and the corresponding results show that the various MDO methods yield the correct solutions.
引用
收藏
页数:25
相关论文
共 50 条
[31]   An object-oriented framework for the implementation of adjoint techniques in the design and control of complex continuum systems [J].
Sampath, R ;
Zabaras, N .
INTERNATIONAL JOURNAL FOR NUMERICAL METHODS IN ENGINEERING, 2000, 48 (02) :239-266
[32]   VIS-A-VIS - AN OBJECT-ORIENTED APPLICATION FRAMEWORK FOR GRAPHICAL DESIGN-TOOLS [J].
LICHTER, H ;
SCHNEIDER, K .
INTERFACES IN INDUSTRIAL SYSTEMS FOR PRODUCTION AND ENGINEERING, 1993, 10 :43-57
[33]   OBJECT-ORIENTED PARADIGM FOR NURBS CURVE AND SURFACE DESIGN [J].
FUHR, RD ;
HSIEH, L ;
KALLAY, M .
COMPUTER-AIDED DESIGN, 1995, 27 (02) :95-100
[34]   Analysis and Design of Object-oriented Program Understanding System [J].
Sani, Nor Fazlida Mohd ;
Zin, Abdullah Mohd ;
Idris, Sufian .
INTERNATIONAL JOURNAL OF COMPUTER SCIENCE AND NETWORK SECURITY, 2009, 9 (01) :125-134
[35]   Considering an object-oriented approach to design process planning [J].
Pavkovic, N ;
Marjanovic, D .
INTERNATIONAL JOURNAL OF TECHNOLOGY MANAGEMENT, 2001, 21 (3-4) :373-392
[36]   OBJECT-ORIENTED BACKPROPAGATION AND ITS APPLICATION TO STRUCTURAL DESIGN [J].
HUNG, SL ;
ADELI, H .
NEUROCOMPUTING, 1994, 6 (01) :45-55
[37]   Current Challenges in Practical Object-Oriented Software Design [J].
Aniche, Mauricio ;
Yoder, Joseph ;
Kon, Fabio .
2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: NEW IDEAS AND EMERGING RESULTS (ICSE-NIER 2019), 2019, :113-116
[38]   An object-oriented architecture for extensible structural design software [J].
Clune, Rory ;
Connor, Jerome J. ;
Ochsendorf, John A. ;
Kelliher, Denis .
COMPUTERS & STRUCTURES, 2012, 100 :1-17
[39]   Object-oriented flexible design and flexible control theory [J].
Wang, PJ .
PROCEEDINGS OF THE 2004 INTERNATIONAL CONFERENCE ON MACHINE LEARNING AND CYBERNETICS, VOLS 1-7, 2004, :706-710
[40]   Implementation of sub-structuring within an object-oriented framework [J].
Mackie, RI .
ADVANCES IN ENGINEERING SOFTWARE, 2001, 32 (10-11) :749-758