stk

The STK is a (not so) Small Toolbox for Kriging. Its primary focus is on the interpolation/regression technique known as kriging, which is very closely related to Splines and Radial Basis Functions, and can be interpreted as a non-parametric Bayesian method using a Gaussian Process (GP) prior. The STK also provides tools for the sequential and non-sequential design of experiments. Even though it is, currently, mostly geared towards the Design and Analysis of Computer Experiments (DACE), the STK can be useful for other applications areas (such as Geostatistics, Machine Learning, Non-parametric Regression, etc.).

Select category:

Core STK functions

stk_model
STK_MODEL generates a model with default covariance parameters
stk_model_update
STK_MODEL_UPDATE updates a model with new data
stk_make_matcov
STK_MAKE_MATCOV computes a covariance matrix (and a design matrix)
stk_predict
STK_PREDICT performs a kriging prediction
stk_predict_leaveoneout
STK_PREDICT_LEAVEONEOUT computes LOO predictions and residuals
stk_pmisclass
STK_PMISCLASS computes the (expected) probability of misclassification

Parameter estimation

stk_param_estim
STK_PARAM_ESTIM estimates the parameters of a covariance function
stk_param_gls
STK_PARAM_GLS computes a generalised least squares estimate
stk_param_init
STK_PARAM_INIT provides a starting point for stk_param_estim
stk_param_init_lnv
STK_PARAM_INIT_LNV provides a rough estimate of the variance of the noise
stk_param_relik
STK_PARAM_RELIK computes the restricted likelihood of a model given data

Simulations

stk_conditioning
STK_CONDITIONING produces conditioned sample paths
stk_generate_samplepaths
STK_GENERATE_SAMPLEPATHS generates sample paths of a Gaussian process
stk_simulate_noise
STK_SIMULATE_NOISE simulates random draws of the observation noise

Get/set model properties

stk_get_input_data
STK_GET_INTPUT_DATA returns the input data of a model
stk_get_output_data
STK_GET_OUTPUT_DATA returns the output data of a model
stk_get_prior_model
STK_GET_PRIOR_MODEL returns the underlying prior model of a model
stk_get_observation_variances
STK_GET_OBSERVATION_VARIANCES returns the variance of the observations
stk_isnoisy
STK_ISNOISY returns false for noiseless models, true otherwise

Posterior model objects

@stk_model_gpposterior/stk_model_gpposterior
STK_MODEL_GPPOSTERIOR constructs a posterior model
@stk_model_gpposterior/stk_predict_leaveoneout
STK_PREDICT_LEAVEONEOUT [overload STK function]
@stk_model_gpposterior/stk_model_update
STK_MODEL_UPDATE [overload STK function]

Model components: covariance functions

stk_expcov_aniso
STK_EXPCOV_ANISO computes the anisotropic exponential covariance function
stk_expcov_iso
STK_EXPCOV_ISO computes the isotropic exponential covariance function
stk_gausscov_aniso
STK_GAUSSCOV_ANISO computes the anisotropic Gaussian covariance function
stk_gausscov_iso
STK_GAUSSCOV_ISO computes the isotropic Gaussian covariance function
stk_materncov32_aniso
STK_MATERNCOV32_ANISO computes the anisotropic Matern covariance with nu=3/2
stk_materncov32_iso
STK_MATERNCOV32_ISO computes the isotropic Matern covariance with nu=3/2
stk_materncov52_aniso
STK_MATERNCOV52_ANISO computes the anisotropic Matern covariance with nu=5/2
stk_materncov52_iso
STK_MATERNCOV52_ISO computes the isotropic Matern covariance
stk_materncov_aniso
STK_MATERNCOV_ANISO computes the anisotropic Matern covariance
stk_materncov_iso
STK_MATERNCOV_ISO computes the isotropic Matern covariance
stk_sphcov_aniso
STK_SPHCOV_ANISO computes the anisotropic spherical covariance function
stk_sphcov_iso
STK_SPHCOV_ISO computes the isotropic spherical covariance function
stk_discretecov
STK_DISCRETECOV computes a covariance matrix for a discrete model

Model components: radial basis functions

stk_rbf_exponential
STK_RBF_EXPONENTIAL computes the exponential correlation function
stk_rbf_gauss
STK_RBF_GAUSS computes the Gaussian correlation function
stk_rbf_matern
STK_RBF_MATERN computes the Matern correlation function.
stk_rbf_matern32
STK_RBF_MATERN32 computes the Matern correlation function of order 3/2.
stk_rbf_matern52
STK_RBF_MATERN52 computes the Matern correlation function of order 5/2.
stk_rbf_spherical
STK_RBF_SPHERICAL computes the spherical correlation function

Model components: linear model objects

@stk_lm_affine/stk_lm_affine
STK_LM_AFFINE creates an affine linear model object
@stk_lm_constant/stk_lm_constant
STK_LM_CONSTANT creates a constant linear model object
@stk_lm_cubic/stk_lm_cubic
STK_LM_CUBIC creates a cubic linear model object
@stk_lm_matrix/stk_lm_matrix
STK_LM_MATRIX creates a linear model object defined on a finite space
@stk_lm_null/stk_lm_null
STK_LM_NULL creates a null linear model object
@stk_lm_quadratic/stk_lm_quadratic
STK_LM_QUADRATIC creates a quadratic linear model object
stk_lm_polynomial
STK_LM_POLYNOMIAL creates a polynomial linear model object

Design of experiments (non-sequential): sampling

stk_sampling_halton_rr2
STK_SAMPLING_HALTON_RR2 generates points from the Halton/RR2 sequence
stk_sampling_sobol
STK_SAMPLING_SOBOL generates points from a Sobol sequence
stk_sampling_maximinlhs
STK_SAMPLING_MAXIMINLHS generates a "maximin" LHS design
stk_sampling_nesteddesign
STK_SAMPLING_NESTEDDESIGN generates a nested design
stk_sampling_nestedlhs
STK_SAMPLING_NESTEDLHS builds a Nested Latin Hypercube Sampling (NLHS)
stk_sampling_olhs
STK_SAMPLING_OLHS generates a random Orthogonal Latin Hypercube (OLH) sample
stk_sampling_randomlhs
STK_SAMPLING_RANDOMLHS generates a random LHS design
stk_sampling_randunif
STK_SAMPLING_RANDUNIF generates uniformly distributed points
stk_sampling_regulargrid
STK_SAMPLING_REGULARGRID builds a regular grid
stk_sampling_vdc_rr2
STK_SAMPLING_VDC_RR2 generates points from the "RR2" van der Corput sequence

Design of experiments (non-sequential): criteria

stk_filldist
STK_FILLDIST computes the fill distance of a set of points
stk_maxabscorr
STK_MAXABSCORR computes the maximal absolute correlation for a set of points
stk_mindist
STK_MINDIST computes the separation distance of a set of points
stk_phipcrit
STK_PHIPCRIT computes the "phi_p" criterion of Morris & Mitchell

Design of experiments (sequential): criteria

stk_sampcrit_ei_eval
STK_SAMPCRIT_EI_EVAL computes the EI criterion
stk_sampcrit_ehvi_eval
STK_SAMPCRIT_EHVI_EVAL computes the EHVI criterion
stk_sampcrit_emmi_eval
STK_SAMPCRIT_EMMI_EVAL computes the EMMI criterion
stk_sampcrit_akg_eval
STK_SAMPCRIT_AKG_EVAL computes the Approximate KG criterion
stk_distrib_normal_ei
STK_DISTRIB_NORMAL_EI computes the normal (Gaussian) expected improvement
stk_distrib_student_ei
STK_DISTRIB_STUDENT_EI computes the Student expected improvement

Examples: kriging basics

stk_example_kb01
STK_EXAMPLE_KB01 Ordinary kriging in 1D, with noiseless data
stk_example_kb01n
STK_EXAMPLE_KB01N Ordinary kriging in 1D, with noisy data
stk_example_kb02
STK_EXAMPLE_KB02 Ordinary kriging in 1D with parameter estimation
stk_example_kb02n
STK_EXAMPLE_KB02N Noisy ordinary kriging in 1D with parameter estimation
stk_example_kb03
STK_EXAMPLE_KB03 Ordinary kriging in 2D
stk_example_kb05
STK_EXAMPLE_KB05 Generation of conditioned sample paths
stk_example_kb06
STK_EXAMPLE_KB06 Ordinary kriging VS kriging with a linear trend
stk_example_kb07
STK_EXAMPLE_KB07 Simulation of sample paths from a Matern process
stk_example_kb08
STK_EXAMPLE_KB08 Generation of conditioned sample paths made easy
stk_example_kb09
STK_EXAMPLE_KB09 Generation of sample paths conditioned on noisy observations
stk_example_kb10
STK_EXAMPLE_KB10 Leave-one-out (LOO) cross validation

Examples: design of experiments

stk_example_doe01
STK_EXAMPLE_DOE01 Examples of two-dimensional designs
stk_example_doe02
STK_EXAMPLE_DOE02 "Sequential Maximin" design
stk_example_doe03
STK_EXAMPLE_DOE03 A simple illustration of 1D Bayesian optimization
stk_example_doe04
STK_EXAMPLE_DOE04 Probability of misclassification
stk_example_doe05
STK_EXAMPLE_DOE05 A simple illustration of 1D Bayesian optimization
stk_example_doe06
STK_EXAMPLE_DOE06 Sequential design for the estimation of an excursion set

Examples: miscellaneous

stk_example_misc01
STK_EXAMPLE_MISC01 Several correlation functions from the Matern family
stk_example_misc02
STK_EXAMPLE_MISC02 How to use priors on the covariance parameters
stk_example_misc03
STK_EXAMPLE_MISC03 How to deal with (known) seasonality
stk_example_misc04
STK_EXAMPLE_MISC04 Pareto front simulation
stk_example_misc05
STK_EXAMPLE_MISC05 Parameter estimation for heteroscedastic noise variance

Examples: test functions, datasets, etc.

stk_dataset_twobumps
STK_DATASET_TWOBUMPS defines datasets based on the TwoBumps response function
stk_testfun_borehole
STK_TESTFUN_BOREHOLE computes the "borehole model" response function
stk_testfun_braninhoo
STK_TESTFUN_BRANINHOO computes the Branin-Hoo function.
stk_testfun_goldsteinprice
STK_TESTFUN_GOLDSTEINPRICE computes the Goldstein-Price function
stk_testfun_twobumps
STK_TESTFUN_TWOBUMPS computes the TwoBumps response function
stk_testcase_truss3
STK_TESTCASE_TRUSS3 provides information about the 'truss3' test case
stk_testfun_truss3_bb
STK_TESTFUN_TRUSS3_BB computes displacements and stresses for 'truss3'
stk_testfun_truss3_vol
STK_TESTFUN_TRUSS3_VOL computes the volume of the 'truss3' structure

Miscellaneous: arrays

stk_boundingbox
STK_BOUNDINGBOX constructs the bounding box for a set of points
stk_feval
STK_FEVAL evaluates a function at given evaluation points
stk_get_sample_size
STK_GET_SAMPLE_SIZE returns the size of a sample
stk_normalize
STK_NORMALIZE normalizes a dataset to [0; 1] ^ DIM
stk_rescale
STK_RESCALE rescales a dataset from one box to another
@stk_dataframe/stk_dataframe
STK_DATAFRAME constructs a dataframe object
@stk_factorialdesign/stk_factorialdesign
STK_FACTORIALDESIGN constructs a "full factorial design" array
@stk_factorialdesign/ndgrid
NDGRID produces ndgrid-style coordinate arrays
@stk_hrect/stk_hrect
STK_HRECT creates an hyper-rectangle object

Miscellaneous: Pareto optimality

stk_dominatedhv
STK_DOMINATEHV computes the hypervolume dominated by a set of points
stk_isdominated
STK_ISDOMINATED returns true for dominated rows
stk_paretofind
STK_PARETOFIND finds non-dominated rows in an array

Miscellaneous: validation of models

stk_distrib_normal_crps
STK_DISTRIB_NORMAL_CRPS computes the CRPS for Gaussian predictive distributions
stk_plot_histnormres
STK_PLOT_HISTNORMRES plots an histogram for normalized residuals
stk_plot_predvsobs
STK_PLOT_PREDVSOBS plots predictions against observations

Miscellaneous: optimizers for parameter estimation

stk_minimize_boxconstrained
STK_MINIMIZE_BOXCONSTRAINED performs box-constrained minimization
stk_minimize_unconstrained
STK_MINIMIZE_UNCONSTRAINED performs unconstrained minimization
stk_optim_isavailable
STK_OPTIM_ISAVAILABLE checks if a given optimizer is available
@stk_optim_fmincon/stk_optim_fmincon
STK_OPTIM_FMINCON constructs an object of class 'stk_optim_fmincon'.
@stk_optim_fminsearch/stk_optim_fminsearch
STK_OPTIM_FMINSEARCH constructs an object of class 'stk_optim_fminsearch'.
@stk_optim_octavesqp/stk_optim_octavesqp
STK_OPTIM_OCTAVESQP constructs an object of class 'stk_optim_octavesqp'.

Miscellaneous: options, plots...

stk_dist
STK_DIST computes a matrix of (Euclidean) distances
stk_halfpintl
STK_HALFPINTL computes an intersection of lower half-planes
stk_init
STK_INIT initializes the STK
stk_legend
STK_LEGEND create a legend automatically
stk_options_get
STK_OPTIONS_GET returns the value of one or all STK options
stk_options_set
STK_OPTIONS_SET sets the value of one or all STK options
stk_plot1d
STK_PLOT1D is a convenient plot function for 1D kriging predictions
stk_plot_probdom2d
STK_PLOT_PROBDOM2D represents the uncertainty about a 2D Pareto
stk_version
STK_VERSION returns STK's version number

Miscellaneous: unit tests

stk_test
STK_TEST performs tests for a given M-file.
stk_runtests
STK_RUNTESTS runs all tests in a given directory (or in STK's searchpath).

Package: stk