A specification language for problem partitioning in decomposition-based design optimization
Decomposition-based design optimization consists of two steps: partitioning of a system design problem into a number of subproblems, and coordination of the design of the decomposed system. Although several generic frameworks for coordination method implementation are available (the second step), generic approaches for specification of the partitioned problem (the first step) are rare. Available specification methods are often based on matrix or graph representations of the entire system. For larger systems these representations become intractable due to the large number of design variables and functions. This article presents a new linguistic approach for specification of partitioned problems in decomposition-based design optimization. With the elements of the proposed specification language, called I (the Greek letter "Psi"), a designer can define subproblems, and assemble these into larger systems in a bottom-up fashion. The assembly process allows the system designer to control the complexity and tractability of the problem partitioning task. To facilitate coupling to generic coordination frameworks, a compiler has been developed for I that generates an interchange file in the INI format. This INI-definition of the partitioned problem can easily be interpreted by programs written in other languages. The flexibility provided by the I language and the automated generation of input files for computational frameworks is demonstrated on a vehicle chassis design problem. The developed tools, including user manuals and examples, are made publicly available.
specification language problem partitioning implementation decomposition distributed analysis distributed optimization multidisciplinary design optimization psi language