# Introduction

The MotionSolve Optimization Guide explains the design sensitivity and optimization capabilities in MotionSolve.

## Motivation for Performing Optimization with MotionSolve

MotionSolve is commonly used for performing system level simulation. Simulations are commonly performed to understand how well a specific design performs. Often a goal for such simulations is to find the right set of design parameters that permit the system to perform its intended functions in some optimal way.

Commonly used design variables are the location and orientation of various connectors
and their force characteristics. Occasionally the mass and material properties of
some bodies are also included as design variables. The system behavior is normally
characterized with a set of *response variables.* So, the goal of simulations
often is to find the values of these design variables such that the response
variables attain a desired set of values.

In the past such analysis has been done using techniques such as Monte Carlo simulations and design of experiments. These methods work quite well, but they are computationally intensive and require large sets of simulations.

MotionSolve now supports a capability for analytically computing design sensitivities. Design sensitivity is the matrix of partial derivatives of the response variables with respect to the design variables. A gradient-based optimizer can use these sensitivities to minimize a cost function. This process is known as design optimization. A new optimization toolkit that permits optimization of some design problems is also now available in MotionSolve.

Though not as general as the statistical methods, optimization with design sensitivity is significantly faster and is the preferred solution in many instances.