# Category:Metamodeling

(→Radial Basis Function (RBF)) |
|||

(5 intermediate revisions by 2 users not shown) | |||

Line 1: | Line 1: | ||

==Overview== | ==Overview== | ||

− | Metamodels are approximate mathematical models, also called surrogate models, used to | + | Metamodels are approximate mathematical models, also called surrogate models, used to emulate the response of complex modelling frameworks when given sample model responses. They are typically used when an analytical function is not available or when obtaining a function value is computationally expensive, such as in large scale finite element simulations. Metamodels mimic the behavior of the more complex analytical function while significantly reducing computational time. Metamodeling methods are often used in design optimization to provide function evaluations of the objective function(s) and response(s). Because of the robust nature of metamodels, they can be applied to problems at any length scale. They are essentially multidimensional interpolation methods. |

==Metamodel Terminology== | ==Metamodel Terminology== | ||

− | '''''Design of Experiments (DOE)''''' – selected points and their function evaluations within the design space used to build the metamodel. DOEs are typically constructed using methods such as | + | '''''Design of Experiments (DOE)''''' – selected points and their function evaluations within the design space used to build the metamodel. DOEs are typically constructed using methods such as [[Latin Hypercube Sampling (LHS)]] to provide design points which are spread throughout the design space. The sample points provide a way to "train" the metamodel to capture simulation model behavior throughout the design space. |

'''''Design Point or Training Point''''' – design variable and response from the design of experiments used to construct or train the metamodel. | '''''Design Point or Training Point''''' – design variable and response from the design of experiments used to construct or train the metamodel. | ||

Line 18: | Line 18: | ||

'''3)''' Build the metamodel using one of numerous techniques and check the error using an error metric. | '''3)''' Build the metamodel using one of numerous techniques and check the error using an error metric. | ||

+ | |||

+ | Generally, metamodels are only capable of interpolating within the provided parameter design space, so care must be taken to avoid inputting parameters less than or greater than the parameter's minimum or maximum, respectively. | ||

+ | |||

+ | ==Normalizing Model Inputs== | ||

+ | When using metamodels, it is important for inputs to be normalized in order to mitigate potential problems with high order of magnitude parameters. For non-normalized inputs, generally the highest order of magnitude parameter will control the surrogate output. This is most noticeable when using a Radial Basis Function Network (RBFN). Since RBFNs map the input parameters to a radius (or vector magnitude), parameters that can be negative or positive (such as compressive/tensile stresses) will not be mapped monotonically. That is, compressive stresses will be mapped the same as tensile ones. To avoid this problem, the N-dimensional model space can be mapped to a unit hypercube. This forces all parameters to be mapped monotonically (one-to-one) between a minimum of 0 and a maximum of 1. Effectively, this is mapping each input to a standard uniform distribution, U(0,1). This can be represented by the equation: | ||

+ | |||

+ | |||

+ | {| class="wikitable" style="margin-left: auto; margin-right: auto; border: 1px solid white;" | ||

+ | ! style="background: white; color: white; border: 1px solid white;" | ______________________________ | ||

+ | ! style="background: white; color: black; border: 1px solid white;" |<math> X_{norm} = \frac{x-x_{min}}{x_{max}-x_{min}} </math> | ||

+ | ! style="background: white; color: white; border: 1px solid white;" | ______________________________ | ||

+ | ! style="background: white; color: black; border: 1px solid white;" | (1) | ||

+ | |} | ||

+ | |||

+ | Using this normalization method, negative values can be properly monotonically mapped for RBFNs. | ||

==Metamodel Techniques== | ==Metamodel Techniques== | ||

Line 25: | Line 40: | ||

This file contains a MATLAB function script for building a GP metamodel. This function requires an outside toolbox and a link for this toolbox can be found in the comments section of the file. [[Media:get_ypred_gp.m|MATLAB GP function]] | This file contains a MATLAB function script for building a GP metamodel. This function requires an outside toolbox and a link for this toolbox can be found in the comments section of the file. [[Media:get_ypred_gp.m|MATLAB GP function]] | ||

===Radial Basis Function (RBF)=== | ===Radial Basis Function (RBF)=== | ||

− | Radial basis functions are real-valued functions whose value depends only on the distance from the origin or center. A typical metamodel will use a sum of weighted radial basis functions, each with a different center and weight to approximate the analytical model. This is a MATLAB function script file for building an RBF metamodel.[[Media:get_ypred_rbf.m|MATLAB RBF function]] | + | Radial basis functions are real-valued functions whose value depends only on the distance from the origin or center. A typical metamodel will use a sum of weighted radial basis functions, each with a different center and weight to approximate the analytical model. This is a MATLAB function script file for building an RBF metamodel.[[Media:get_ypred_rbf.m|MATLAB RBF function]] An implementation of the RBF surrogate is also available in [[Python RBFN |python]]. |

This file contains a MATLAB script to create a text file containing an analytic RBF equation based on a previously built RBF metamodel.[[Media:write_rbf.m| Write RBF equation]] | This file contains a MATLAB script to create a text file containing an analytic RBF equation based on a previously built RBF metamodel.[[Media:write_rbf.m| Write RBF equation]] | ||

+ | |||

===Kriging (KR)=== | ===Kriging (KR)=== | ||

This file contains a MATLAB function script for building a KR metamodel. This function requires an outside toolbox and a link for this toolbox can be found in the comments section of the file. [[Media:get_ypred_krig.m|MATLAB KR function]] | This file contains a MATLAB function script for building a KR metamodel. This function requires an outside toolbox and a link for this toolbox can be found in the comments section of the file. [[Media:get_ypred_krig.m|MATLAB KR function]] |

## Latest revision as of 00:53, 15 February 2018

## Contents |

## [edit] Overview

Metamodels are approximate mathematical models, also called surrogate models, used to emulate the response of complex modelling frameworks when given sample model responses. They are typically used when an analytical function is not available or when obtaining a function value is computationally expensive, such as in large scale finite element simulations. Metamodels mimic the behavior of the more complex analytical function while significantly reducing computational time. Metamodeling methods are often used in design optimization to provide function evaluations of the objective function(s) and response(s). Because of the robust nature of metamodels, they can be applied to problems at any length scale. They are essentially multidimensional interpolation methods.

## [edit] Metamodel Terminology

* Design of Experiments (DOE)* – selected points and their function evaluations within the design space used to build the metamodel. DOEs are typically constructed using methods such as Latin Hypercube Sampling (LHS) to provide design points which are spread throughout the design space. The sample points provide a way to "train" the metamodel to capture simulation model behavior throughout the design space.

* Design Point or Training Point* – design variable and response from the design of experiments used to construct or train the metamodel.

* Validation Point, Test Point, or Sampling Point* – points within the design space where a prediction is desired, also used to check the accuracy of the metamodel.

## [edit] Building a Metamodel

**1)** Create Design of Experiment points to use as Design points with upper and lower bounds on the variables (see links: 1, 2, 3, and 4). The number of points depends on the problem but generally should be at least *3xN* where *N* is the number of variables. More points can produce a more accurate model but this is not always true. More points can also increase computational time, as the response from the analytical function needs to be calculated for each point.

**2)** Obtain responses of interest at each design point and test point. This is typically done by running simulations, performing experiments, or using an analytical function.

**3)** Build the metamodel using one of numerous techniques and check the error using an error metric.

Generally, metamodels are only capable of interpolating within the provided parameter design space, so care must be taken to avoid inputting parameters less than or greater than the parameter's minimum or maximum, respectively.

## [edit] Normalizing Model Inputs

When using metamodels, it is important for inputs to be normalized in order to mitigate potential problems with high order of magnitude parameters. For non-normalized inputs, generally the highest order of magnitude parameter will control the surrogate output. This is most noticeable when using a Radial Basis Function Network (RBFN). Since RBFNs map the input parameters to a radius (or vector magnitude), parameters that can be negative or positive (such as compressive/tensile stresses) will not be mapped monotonically. That is, compressive stresses will be mapped the same as tensile ones. To avoid this problem, the N-dimensional model space can be mapped to a unit hypercube. This forces all parameters to be mapped monotonically (one-to-one) between a minimum of 0 and a maximum of 1. Effectively, this is mapping each input to a standard uniform distribution, U(0,1). This can be represented by the equation:

______________________________ | ______________________________ | (1) |
---|

Using this normalization method, negative values can be properly monotonically mapped for RBFNs.

## [edit] Metamodel Techniques

### [edit] Polynomial Response Surface (PRS)

As the name implies, the PRS method uses a polynomial function of the design variables to approximate the response of the analytical model. This is a MATLAB function script file for building an PRS metamodel.MATLAB PRS function

### [edit] Gaussian Process (GP)

This file contains a MATLAB function script for building a GP metamodel. This function requires an outside toolbox and a link for this toolbox can be found in the comments section of the file. MATLAB GP function

### [edit] Radial Basis Function (RBF)

Radial basis functions are real-valued functions whose value depends only on the distance from the origin or center. A typical metamodel will use a sum of weighted radial basis functions, each with a different center and weight to approximate the analytical model. This is a MATLAB function script file for building an RBF metamodel.MATLAB RBF function An implementation of the RBF surrogate is also available in python.

This file contains a MATLAB script to create a text file containing an analytic RBF equation based on a previously built RBF metamodel. Write RBF equation

### [edit] Kriging (KR)

This file contains a MATLAB function script for building a KR metamodel. This function requires an outside toolbox and a link for this toolbox can be found in the comments section of the file. MATLAB KR function

### [edit] Support Vector Regression (SVR)

This file contains a MATLAB function script for building a SVR metamodel. This function requires an outside toolbox and a link for this toolbox can be found in the comments section of the file. MATLAB SVR function

This file contains a MATLAB script to create a text file containing an analytic SVR equation based on a previously built SVR metamodel. Write SVR equation

### [edit] Optimized Ensemble (EN)

An Ensemble of metamodels using optimized weight factors. See the link below for a description of the method. The following file contains a MATLAB function file implementing this method. MATLAB EN function http://www.springerlink.com/content/u406m252480277x0/

# [edit] Structural Scale

**A comparative study of metamodeling methods for multi objective crashworthiness optimization**

Authors: Howie Fang, Masoud Rais-Rohani (masoud@ae.msstate.edu), Z. Liu, and Mark Horstemeyer

http://www.sciencedirect.com/science/article/pii/S0045794905001355

**Numerical simulations of multiple vehicle crashes and multidisciplinary crashworthiness optimization**

Authors: Howie Fang, K.N. Solanki, and Mark Horstemeyer

http://www.tandfonline.com/doi/abs/10.1533/ijcr.2005.0335

**Product Design Optimization with Microstructure-property Modeling and Associated Uncertainties**

Authors: K.N. Solanki, E. Acar, Masoud Rais-Rohani (masoud@ae.msstate.edu), Mark Horstemeyer, and G. Steele

# [edit] Macroscale

# [edit] Mesoscale

# [edit] Microscale

# [edit] Nanoscale

# [edit] Electronic Scale

## Pages in category "Metamodeling"

The following 6 pages are in this category, out of 6 total.