By Bruce Jenkins, President, Ora Research
Last month’s Release 2016a of MathWorks’ Simulink Design Optimization software includes a new sensitivity analysis tool to support design space exploration. The tool lets design engineers interactively conduct design of experiments (DOE) and Monte Carlo simulations of Simulink models.
What is design space exploration?
The most successful engineering projects begin with discovery—conceiving a rich array of ideas to solve a problem or address a need—then move on to methodically explore which design candidates are most promising for development and refinement. But the power of such discovery and exploration is too often sacrificed to schedule pressures and resource constraints, compounded by digital toolset gaps and limitations. The result is familiar: engineers conceive two or three design alternatives, then rely on intuition, best guesses and handbook formulas to choose one that looks reasonably promising and not too risky to implement—without really knowing whether it’s the best, most cost-effective or most robust solution attainable.
An emerging answer to this quandary is design space exploration—both a family of methods and a rapidly evolving category of software tools that are beginning to radically advance the capabilities of engineers and multidisciplinary engineering teams to discover an array of feasible design concepts early; quickly and fluently evaluate sensitivities, variants and tradeoffs; then select the best design concept and optimize it.
Design space exploration lets engineers systematically and automatically investigate very large numbers of design alternatives in order to identify those with the most optimal performance parameters. Many of the quantitative and algorithmic methods that underpin design space exploration have been long known—and sometimes applied, in cases where the attendant costs in expertise, time and labor could be justified. What’s changing now is the way fresh software technologies, such as the new sensitivity analysis tool in Simulink Design Optimization, are transforming those powerful but formerly difficult-to-apply methods into practical everyday engineering aids.
Design exploration vs. design optimization
Dr. Chris Mattson, director of Brigham Young University’s Design Exploration Research Lab, explains how design exploration and design optimization relate to each other, and how they differ:
“Design exploration is a particular way of arriving at an optimal design solution. To be formal, design exploration is the human-driven, often computer-assisted, divergent/convergent process used to evolve and investigate multidisciplinary design space with the intent of design discovery and to inform decision making throughout the design process.
“The essential difference between design optimization and design exploration is the method for characterizing the outcome. Design optimization strategies have two distinct parts; formulate and converge. Here it is assumed that the problem can be formulated before the search and convergence begins. Design exploration strategies, on the other hand, are based on the belief that the problem formulation evolves during the process of searching and converging, thus ultimately leading to a more informed optimal solution. In this way, design exploration is both divergent and convergent.”
What does this mean for how the problem is formulated and solved? Mattson continues:
“Design optimization depends on a well-posed optimization problem formulation, which generally includes (i) a well-defined objective function, (ii) inequality and equality constraints, and (iii) the expression of stakeholder preference, all of which are likely to be multidisciplinary in nature. In an arguably real way, such a problem formulation predefines the optimum solution, thereby allowing the mathematical rigor of the optimization to lead to the optimum design by an iterative, computational search.
“Design exploration, on the other hand, assumes that the optimal design is initially unknown and initially uncharacterizable. The process of design exploration discovers design conditions and little by little (often through some form of experimentation) characterizes what an optimal design looks like. Once this is known, the final solution can then be found through a convergent design optimization algorithm.”
Simulink Design Optimization
Simulink is a block diagram environment for multidomain simulation and model-based design that supports simulation, automatic code generation, and continuous test and verification of embedded systems. Within that environment, Simulink Design Optimization provides functions, interactive tools, and blocks for analyzing and tuning model parameters. Users can determine the model’s sensitivity, fit the model to test data, and tune it to meet requirements. Through the new Monte Carlo simulation and DOE capabilities, users can explore their design space and calculate parameter influence on model behavior.
Simulink Design Optimization also helps users increase model accuracy. It lets them preprocess test data, automatically estimate model parameters such as friction and aerodynamic coefficients, and validate the estimation results.
To improve system performance characteristics such as response time, bandwidth and energy consumption, users can jointly optimize physical plant parameters and algorithmic or controller gains. These parameters can be tuned to meet time-domain and frequency-domain requirements, such as overshoot and phase margin, and custom requirements.
New sensitivity analysis tool
Design engineers frequently need to determine how changes to the parameters in their model will impact the product’s behavior, MathWorks explains. By identifying which parameters have the greatest influence on product performance attributes such as fuel efficiency, engineers can gain confidence that their design meets the specified requirements. The new sensitivity analysis tool performs Monte Carlo simulations, which enable the exploration of a large design space. The tool lets users interactively specify multiple parameter variations, incorporate multiple standard and custom design requirements, and analyze the results of these simulations both graphically and quantitatively.
The results of sensitivity analysis can be used to directly influence the design, as well as improve the performance of numerical optimization tasks such as fitting models to test data and tuning models to meet design requirements. Two other Simulink toolsets, called Fast Restart and Parallel Computing Toolbox, can help speed up the sensitivity analysis tool’s performance.
“Growing design complexity is creating increasingly large models,” said MathWorks design automation director Paul Barnard. “To maintain model accuracy, engineers are challenged with identifying which model parameters impact behavior the most. Now, engineers can use Simulink Design Optimization to determine model sensitivity, fit the model to test data, and tune it to meet requirements.”