trainMQRBF: Fit multiquadric RBF model to training data for d>1.

Description Usage Arguments Details Value Author(s) See Also

View source: R/RbfInter.R

Description

The model for a point z=(z_1,...,z_d) is fitted using n sample points x_1, ..., x_n

s(z) = λ_1*Φ(||z-x_1||)+... +λ_n*Φ(||z-x_n||) + c_0 + c_1*z_1 + ... + c_d*z_d


where Φ(r)=√{(1+(r/σ)^2)} denotes the multiquadrics radial basis function with width σ. The coefficients λ_1, ..., λ_n, c_0, c_1, ..., c_d are determined by this training procedure.
This is for the default case squares==FALSE. In case squares==TRUE there are d additional pure square terms and the model is

s_{sq}(z) = s(z) + c_{d+1}*z_1^2 + ... + c_{d+d}*z_d^2

In case ptail==FALSE the polynomial tail (all coefficients c_i) is omitted completely.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
trainMQRBF(
  xp,
  U,
  ptail = TRUE,
  squares = FALSE,
  width,
  RULE = "One",
  widthFactor = 1,
  rho = 0,
  DEBUG2 = F
)

Arguments

xp

n points x_i of dimension d are arranged in (n x d) matrix xp

U

vector of length n, containing samples u(x_i) of the scalar function u to be fitted
- or -
(n x m) matrix, where each column 1,...,m contains one vector of samples u_j(x_i) for the m'th model, j=1,...,m

ptail

[TRUE] flag, see description

squares

[FALSE] flag, see 'Description'

width

[-1] either a positive real value which is the constant width σ for all Gaussians in all iterations, or -1. If -1, the appropriate width σ is calculated anew in each iteration with one of the rules RULE, based on the distribution of data points xp.

RULE

["One"] one out of ["One" | "Two" | "Three"], different rules for automatic estimation of width σ. Only relevant if width = -1,

widthFactor

[1.0] additional constant factor applied to each width σ

rho

[0.0] experimental: 0.0: interpolating, >0.0, approximating (spline-like) Gaussian RBFs

DEBUG2

[FALSE] if TRUE, save M and rhs on return value

Details

The linear equation system is solved via SVD inversion. Near-zero elements in the diagonal matrix D are set to zero in D^{-1}. This makes rank-deficient systems numerically stable.

Value

rbf.model, an object of class RBFinter, which is basically a list with elements:

coef

(n+d+1 x m) matrix holding in column m the coefficients for the m'th model: λ_1, ..., λ_n, c_0, c_1, ..., c_d. In case squares==TRUE it is an (n+2d+1 x m) matrix holding additionally the coefficients c_{d+1}, ..., c_{d+d}.

xp

matrix xp

d

size of the polynomial tail. If length(d)==0 it means no polynomial tail will be used for the model. In case of ptail==T && squares==F d will be dimension+1 and in case of ptail==T && squares==T d will be 2*dimension+1

npts

number n of points x_i

ptail

TRUE or FALSE (see description)

squares

TRUE or FALSE (see description)

width

the calculated width σ

type

"MQ"

Author(s)

Wolfgang Konen, Samineh Bagheri

See Also

trainCubicRBF, predict.RBFinter, interpRBF


SACOBRA documentation built on March 26, 2020, 7:15 p.m.