Computational design synthesis

Matthew I. Campbell, Kristina Shea
2014 Artificial intelligence for engineering design, analysis and manufacturing  
Nearly every human society has been fundamentally altered by computers in the last 30 years. We rely on servers, desktops, and handheld devices to facilitate duties of both our personal and professional lives. Most of this is just managing data: input, store, transfer, output. There is also analysis: given a set of inputs, solve for x. For engineers, x is a prediction of how hot, how much stress, how much efficiency, or how much cost. However, other than the use of computers to manage data or
more » ... rform analysis, there is a third use of computation that is rarely perceived by the average computer user or engineer, and that is the use of computers in design synthesis. As our engineering artifacts grow in complexity, we need to offload some design decisions to the computer. We need the computer to help us synthesize many of the minute details in our engineering devices as well as ensure high performance by searching among a myriad of alternatives for the optimal combination of building blocks and parameter values. Computational design synthesis (CDS) is a research area focused on approaches to automating synthesis activities in design. Resulting methods may be fully automated or interactive with the goals of automatically generating a range of alternatives, sparking creativity and innovation, automating tedious or time-consuming engineering tasks, and simply exploring the creative abilities of computational systems. There is a fuzzy line between CDS and applied optimization. We have intended CDS to be more ambitious than the typical use of optimization to "solve for x." It is intended to mimic what humans consider in design, not only parameters, like in a fixed vector, x, but also material choices, discrete component choices, and the basic architecture of building blocks. Such research is typically ambitious in scope, demanding in terms of developmental and computational resources, and extensive in terms of related work. The work is based on artificial intelligence, mathematical programming, computational geometry, graph theory, engineering design theory, and cognitive science. When applied later in the design process, meaningful results are only achievable by interfacing with the computational analysis tools that govern our engineering world, such as those for solving partial-differential field equations (e.g., finite element analysis or computational fluid dynamics) or those for solving ordinary-differential equations (e.g., three-dimensional dynamics). In addition to the technical challenge, it can be difficult to interface with these tools because many are expensive, deal with proprietary file formats, and are sometimes operable only within the tool's graphical user interface. Combine this with highly iterative optimization methods (many design synthesis techniques require the use of large stochastic optimization methods), and researchers may occasionally find themselves up against practical limits in computational time and memory. Early in the design process, CDS has faced issues of how to represent and reason with nebulous notions of function and feasibility as well as methods of predicting performance when various parameters are undefined. In the first paper, "Evaluating FuncSION: A Software for Automated Synthesis of Design Solutions for Stimulating Ideation During Mechanical Conceptual Design," Ujjwal Pal, Ying Chieh Liu, and Amaresh Chakrabarti address this problem directly by synthesizing transformations (without the need for detailed part definition) to the problem of converting energy from one distinct location to another. It is a classic example of a body of work that has grown steadily over the last three decades. It is our opinion, and likely the opinion of the paper's authors, that this work must someday positively affect the design of electromechanical systems. CDS has also championed the use of generative design grammars as a means to simultaneously provide structure and design freedom during synthesis. A generative grammar is composed of rules that, unlike the traditional definition of rules, focus on defining the actions or design transformations and modifications that can be performed. Just like human languages (e.g., English, German, or Chinese), formal grammars require a vocabulary of terms that can take the form of strings, parameters, graphs, or shapes, which can also be represented by graphs. Unlike an expert system, the grammar rules are more about capturing design logic concisely than about
doi:10.1017/s0890060414000171 fatcat:wnd7254navcyvbd573mx6z7d3q