Response Surface Methodology using Moving Least Squares Method

863 Views Asked by At

I would like to obtain the response surface of a mathematical function for reliability-based design optimization (RBDO). To obtain a reliably response surface, I learned that moving least squares method (MLSM) is the better option than the conventional least squares method. Therefore, I am strictly following this article to implement MLSM on Matlab for RBDO.

Say I use the Rosenbrock function:$$f\left ( x_{1}, x_{2} \right ) = 100 \left ( x_{1}^{2}- x_{2} \right)^{2}+\left ( 1- x_{1} \right)^{2}$$ as my test function to obtain the response surface using MLSM before I implement into the RBDO framework. The range of both variables are $-2\leq x_{1}\leq2$ and $-2\leq x_{2}\leq2$ respectively.

A conventional least squares method follows: $$b\left (x \right )=\left [X ^{T}X\right ]^{-1}X^{T}Y$$

This is what I obtained after implementing RSM using least squares method and sampled using central composite design (CCD): enter image description here

In MLSM however, a weighing matrix $W(x)$ is introduced, which gives: $$b\left (x \right )=\left [X ^{T}W\left (x \right )X\right ]^{-1}X^{T}W\left (x \right )Y$$

I would like to use 4-th order polynomial $w(\frac{x-x_{n}}{R})=1-6(\frac{x-x_{n}}{R})^{2}+8(\frac{x-x_{n}}{R})^{3}-3(\frac{x-x_{n}}{R})^{4}$ as the weighing function, where:

$$W\left (x \right )=\begin{bmatrix} w\left (\frac{x-x_{1}}{R} \right ) & 0 & ... & 0\\ 0 & w\left (\frac{x-x_{2}}{R} \right ) & ... & 0\\ : & : & ... & :\\ 0 & 0 & ... & w\left (\frac{x-x_{n}}{R} \right ) \end{bmatrix}$$

I know that MLSM is a local approximation and not global. Now, I am confused with 2 things here:

  1. How many design samples do I take?
  2. If I follow the CCD and apply the weight function, don't the sample points on the edge and outside CCD have $0$ weightage?
  3. Or shall i just use Latin hypercube sampling (LHS) instead of CCD?

I'd be very thankful if someone could help with a simple example to implement MLSM to obtain response surface. You may use Rosenbrock function as a test function and all the other information above above for the example.