Knowledge-based re-engineering of legacy programs for robustness in automated design
- 24 December 2002
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 104-113
- https://doi.org/10.1109/kbse.1996.552828
Abstract
Systems for automated design optimization of complex real-world objects can, in principle, be constructed by combining domain-independent numerical routines with existing domain-specific analysis and simulation programs. Unfortunately, such "legacy" analysis codes are frequently unsuitable for use in automated design. They may crash for large classes of input, be numerically unstable or locally non-smooth, or be highly sensitive to control parameters. To be useful, analysis programs must be modified to reduce or eliminate only the undesired behaviors, without altering the desired computation. To do this by direct modification of the programs is labor-intensive, and necessitates costly revalidation. We have implemented a high-level language and runtime environment that allow failure-handling strategies to be incorporated into existing Fortran and C analysis programs while preserving their computational integrity. Our approach relies on globally managing the execution of these programs at the level of discretely callable functions so that the computation is only affected when problems are detected. Problem handling procedures are constructed from a knowledge base of generic problem management strategies. We show that our approach is effective in improving analysis program robustness and design optimization performance in the domain of conceptual design of jet engine nozzles.Keywords
This publication has 7 references indexed in Scilit:
- A knowledge-based approach to encouraging reuse of simulation and modeling programsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Computational environment for exhaust nozzle designJournal of Aircraft, 1996
- ODEXPERT: an expert system to select numerical solvers for initial value ODE systemsACM Transactions on Mathematical Software, 1993
- Automated selection of mathematical softwareACM Transactions on Mathematical Software, 1992
- Law-governed systemsSoftware Engineering Journal, 1991
- Coupling symbolic manipulation and numerical simulation for complex engineering designsMathematics and Computers in Simulation, 1989
- Exception handling in scientific computingACM Transactions on Mathematical Software, 1988