SL2D: Squared L_{2} Discrepancy Approach for Estimating the...

View source: R/esl2d.r

SL2DR Documentation

Squared L_{2} Discrepancy Approach for Estimating the Solution to the Inverse Problem

Description

This function fits an SVD-based GP model on the training dataset design and response matrix resp, and minimizes the squared L_{2} discrepancy between the target response and the predicted mean of the SVD-based GP model on the test set candidate to estimate the solution to the inverse problem. It is a naive approach for estimating the solution provided in Chapter 4 of Zhang (2018).

Usage

SL2D(design,resp,yobs,candidate,frac=.95,nstarts=5,
     mtype=c("zmean","cmean","lmean"),
     gstart=0.0001)

Arguments

design

An N by d matrix of N training/design inputs.

resp

An L by N response matrix of design, where L is the length of the time series outputs, N is the number of design points.

yobs

A vector of length L of the time-series valued field observations or the target response.

candidate

An M by d matrix of M candidate points on which the estimated solution to the inverse problem is extracted.

frac

The threshold in the cumulative percentage criterion to select the number of SVD bases. The default value is 0.95.

nstarts

The number of starting points used in the numerical maximization of the posterior density function. The larger nstarts will typically lead to more accurate prediction but longer computational time. The default value is 5.

mtype

The type of mean functions for the GP models. The choice "zmean" denotes zero-mean, "cmean" indicates constant-mean, "lmean" indicates linear-mean. The default choice is "zmean".

gstart

The starting number and upper bound for estimating the nugget parameter. If gstart = sqrt(.Machine$double.eps), the nugget parameter will be fixed at sqrt(.Machine$double.eps), since sqrt(.Machine$double.eps) is the lower bound of the nugget term. The default value is 0.0001.

Value

xhat

The estimated solution to the inverse problem obtained from the candidate set candidate.

Author(s)

Ru Zhang heavenmarshal@gmail.com,

C. Devon Lin devon.lin@queensu.ca,

Pritam Ranjan pritamr@iimidr.ac.in

References

Zhang, R. (2018) Modeling and Analysis of Dynamic Computer Experiments, PhD thesis, Queen's University, ON, Canada.

See Also

ESL2D, saEI, svdGP.

Examples

  library("lhs")
  forretal <- function(x,t,shift=1)
  {
    par1 <- x[1]*6+4
    par2 <- x[2]*16+4
    par3 <- x[3]*6+1
    t <- t+shift
    y <- (par1*t-2)^2*sin(par2*t-par3)
  }
  timepoints <- seq(0,1,len=200)
  design <- lhs::randomLHS(30,3)
  candidate <- lhs::randomLHS(500,3)
  candidate <- rbind(candidate,design)

  ## evaluate the response matrix on the design matrix
  resp <- apply(design,1,forretal,timepoints)
  x0 <- runif(3)
  y0 <- forretal(x0,timepoints)
  yobs <- y0+rnorm(200,0,sd(y0)/sqrt(50))
  xhat <- SL2D(design,resp,yobs,candidate,nstarts=1)
  yhat <- forretal(xhat,timepoints)

  ## draw a figure to illustrate
  plot(y0,ylim=c(min(y0,yhat),max(y0,yhat)))
  lines(yhat,col="red")

DynamicGP documentation built on Nov. 10, 2022, 5:15 p.m.