Learn R Programming

mistral (version 1.1-0)

S2MART: Subset by Support vector Margin Algorithm for Reliability esTimation

Description

S2MART lets easily combine metamodel based reliability algorithm SMART and subset simulation algorithm. Basically, it introduces a metamodeling step at each subset simulation threshold, making number of necessary samples lower and the probability estimation better according to subset simulation by itself.

Usage

S2MART(dimension,
      limit_state_function,
      Nn 			        = 100,
      alpha_quantile 	= 0.1,
      ...,
      plot			      = FALSE,
      limited_plot		= FALSE,
      output_dir	  	= NULL,
      verbose 			  = 0)

Arguments

dimension
an integer giving the dimension of the input space.
limit_state_function
the failure fonction.
Nn
the number of samples to evaluate the quantiles in the subset step.
alpha_quantile
cutoff probability for the subsets.
...
parameters of SMART algorithm.
plot
a boolean parameter specifying if function and samples should be plotted. The plot is refreshed at each iteration with the new data. Note that this option is only to be used when working on light limit state functions as it requires the c
limited_plot
only a final plot with limit_state_function, final DOE and metamodels. Should be used with plot==FALSE. As for plot it requires the calculus of the limit_state_function on a grid of size 161x161.
output_dir
optional. If plots are to be saved in .jpeg in a given directory. This variable will be pasted with "_Subset.jpeg" to get the full output directory.
verbose
Eiher 0 for an almost no output message, or 1 for medium size or 2 for full size

Value

  • An object of class list containing the failure probability and some more outputs as described below:
  • probaThe estimated failure probability.
  • covThe coefficient of variation of the Monte-Carlo probability estimate.
  • NcallThe total number of calls to the limit_state_function.
  • learn_dbThe final learning database, ie. all points where limit_state_function has been calculated.
  • lsf_valueThe value of the limit_state_function on the learning database.
  • meta_modelThe final metamodel. An S4 object from DiceKriging.

Details

S2MART algorithm is based on the idea that subset simulations conditional probabilities are estimated with a relatively poor precision as it requires calls to the expensive-to-evaluate limit state function and does not take benefit from its numerous calls to the limit state function in the Metropolis-Hastings algorithm. In this scope, the key concept is to reduce the subset simulation population to its minimum and use it only to estimate crudely the next quantile. Then the use of a metamodel-based algorithm lets refine the border and calculate an accurate estimation of the conditional probability by the mean of a crude Monte-Carlo. In this scope, a compromise has to be found between the two sources of calls to the limit state function as total number of calls = (Nn + number of calls to refine the metamodel) x (number of subsets) :
  • Nncalls to find the next threshold value : the biggerNn, the more accurate thedecreasing speedspecified by thealpha_quantilevalue and so the smaller the number of subsets
total number of calls to refine the metamodel at each threshold

References

  • J.-M. Bourinet, F. Deheeger, M. Lemaire: Assessing small failure probabilities by combined Subset Simulation and Support Vector Machines Structural Safety (2011)
  • F. Deheeger: Couplage m?cano-fiabiliste : 2SMART - m?thodologie d'apprentissage stochastique en fiabilit? PhD. Thesis, Universit? Blaise Pascal - Clermont II, 2008
  • S.-K. Au, J. L. Beck: Estimation of small failure probabilities in high dimensions by Subset Simulation Probabilistic Engineering Mechanics (2001)
  • A. Der Kiureghian, T. Dakessian: Multiple design points in first and second-order reliability Structural Safety, vol.20 (1998)
  • P.-H. Waarts: Structural reliability using finite element methods: an appraisal of DARS: Directional Adaptive Response Surface Sampling PhD. Thesis, Technical University of Delft, The Netherlands, 2000

See Also

SMART SubsetSimulation MonteCarlo km (in package DiceKriging) svm (in package e1071)

Examples

Run this code
#Limit state function defined by Kiureghian & Dakessian :
kiureghian = function(x, b=5, kappa=0.5, e=0.1) {b - x[2] - kappa*(x[1]-e)^2}

res = S2MART(dimension = 2,
            limit_state_function = kiureghian,
            N1 = 1000, N2 = 5000, N3 = 10000,
            plot = TRUE)

#Compare with crude Monte-Carlo reference value
reference = MonteCarlo(2, kiureghian, N_max = 500000)

#See impact of metamodel-based subset simulation with Waarts function :
waarts = function(u) { min(
		(3+(u[1]-u[2])^2/10 - (u[1]+u[2])/sqrt(2)),
		(3+(u[1]-u[2])^2/10 + (u[1]+u[2])/sqrt(2)),
		u[1]-u[2]+7/sqrt(2),
		u[2]-u[1]+7/sqrt(2))
	}

res = list()
res$SMART = SMART(dimension  = 2, limit_state_function = waarts, plot=TRUE)
res$S2MART = S2MART(dimension = 2,
                    limit_state_function = waarts,
                    N1 = 1000, N2 = 5000, N3 = 10000,
                    plot=TRUE)
res$SS = SubsetSimulation(dimension = 2, waarts, n_init_samples = 10000)
res$MC = MonteCarlo(2, waarts, N_max = 500000)

Run the code above in your browser using DataLab