Whether you are building the next great bicycle, engine, or airplane, after you have applied your domain expertise into developing a simulation you are left with a daunting task. You must still find the inputs that make the simulation as accurate as possible or that maximize some business goal. Finding the best variation of these input parameters may be a non-intuitive process that is often performed via trial and error.
Rescale offers a software platform and hardware infrastructure for companies to perform scientific and engineering simulation. Often these simulations have tunable parameters that affect the quality of the simulation. The search for optimal parameters is usually tackled with an inefficient brute force approach like grid search in practice.
SigOpt guides this parameter search by leveraging techniques from Bayesian Optimization and Design of Experiments to cut down the number of trials required to identify the best variation of a product.
SigOpt was used to optimize an Aerodynamics simulation on Rescale. The simulation calculates the best lift ratio for an airfoil across a range of airspeeds and angles of attack. There are two independent variables (x_velocity and y_velocity) that have an effect on the resulting lift. The brute force approach to finding the best set of parameters requires cutting up space and running a simulation for all possible combinations of the parameters1. The goal is to find the parameters that result in the largest lift.
There are several problems with the brute force approach to parameter optimization:
It can miss the best values. The granularity of the step sizes can step over the best possible parameters. It is very expensive. The number of simulations required grows exponentially with the number of parameters. It ignores valuable information. Instead of learning from the results of each simulation, all the possibilities are chosen at the beginning.
You can use SigOpt to cut down on the number of simulations by using the information from previous simulations to decide the best parameters (or sets of parameters) to sample next.
SigOpt can find better results in less time to these parameter search problems. In the Rescale example, SigOpt was able to find an optimal value 450% faster than the exhaustive brute force approach. Not only did SigOpt require fewer simulations, but it also found a variation that resulted in a 1.2% improvement in performance. SigOpt does this by constantly making the tradeoff between exploration (learning more about how the parameters interact, over what scales, and how they affect the underlying goal) and exploitation (using the information already gathered to find the set of parameters that is expected to beat the best set of parameters seen so far by the most). Example code can be found here.
SigOpt is able to find better results in fewer runs. Note: to decrease the influence of point ordering in the Cartesian Product (brute force) approach the points were randomly ordered many times and the median output value was taken over these orderings.
Rescale gives users the dynamic computational resources to run their simulations and SigOpt provides tools to optimize them. By using Rescale’s platform and SigOpt’s tuning, efficient cloud simulation is easier than ever.