SMART {mistral} | R Documentation |
Calculate a failure probability with SMART method. This should not be used by itself but only through S2MART.
SMART(dimension, lsf, N1 = 10000, N2 = 50000, N3 = 200000, Nu = 50, lambda1 = 7, lambda2 = 3.5, lambda3 = 1, tune_cost = c(1,10,100,1000), tune_gamma = c(0.5,0.2,0.1,0.05,0.02,0.01), clusterInMargin = TRUE, alpha_margin = 1, k1 = round(6*(dimension/2)^(0.2)), k2 = round(12*(dimension/2)^(0.2)), k3 = k2 + 16, learn_db = NULL, lsf_value = NULL, failure = 0, limit_fun_MH = NULL, sampling_strategy = "MH", seeds = NULL, seeds_eval = NULL, burnin = 30, thinning = 4, plot = FALSE, limited_plot = FALSE, add = FALSE, output_dir = NULL, z_MH = NULL, z_lsf = NULL, verbose = 0)
dimension |
an integer giving the dimension of the input space. |
lsf |
the failure fonction. |
N1 |
an integer defining the number of uniform samples for (L)ocalisation stage. |
N2 |
an integer defining the number of uniform samples for (S)tabilisation stage. |
N3 |
an integer defining the number of gaussian standard samples for (C)onvergence stage, and so Monte-Carlo population size. |
Nu |
an integer defining the size of the first Design Of Experiment got by uniforme sampling in a sphere of radius the maximum norm of |
lambda1 |
a real defining the relaxing paramater in the Metropolis-Hastings algorithm for stage L. |
lambda2 |
a real defining the relaxing paramater in the Metropolis-Hastings algorithm for stage S. |
lambda3 |
a real defining the relaxing paramater in the Metropolis-Hastings algorithm for stage C. This shouldn't be modified as Convergence stage population is used to estimate failure probability. |
tune_cost |
a vector containing proposed values for the cost parameter of the SVM. |
tune_gamma |
a vector containing proposed values for the gamma parameter of the SVM. |
clusterInMargin |
margin points to be evaluated during refinements steps are got by mean of clustering of the |
alpha_margin |
a real value defining the margin. While 1 is the ‘real’ margin for a SVM, one can decide here to stretch it a bit. |
k1 |
Rank of the first iteration of step S (ie stage L from 1 to |
k2 |
Rank of the first iteration of step C (ie stage S from |
k3 |
Rank of the last iteration of step C (ie stage C from |
learn_db |
optional. A matrix of already known points, with dim : |
lsf_value |
values of the limit state function on the vectors given in |
failure |
the value defining the failure domain F = { x | |
limit_fun_MH |
optional. If the working space is to be reduced to some subset defining by a function, eg. in case of use in a Subset Simulation algorithm. As for the |
sampling_strategy |
either "AR" or "MH", to specify which sampling strategy is to be used when generating Monte-Carlo population in a case of subset simulation : "AR" stands for ‘accept-reject’ while "MH" stands for Metropolis-Hastings. |
seeds |
optional. If |
seeds_eval |
optional. The value of the |
burnin |
a burnin parameter for Metropolis-Hastings algorithm. This is used only for the last C step population while it is set to 0 elsewhere. |
thinning |
a thinning parameter for Metropolis-Hastings algorithm. This is used only for the last C step population while it is set to 0 elsewhere. |
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 calculus of this function on a grid of size 161x161 (plot is done a -8:8 x -8:8 grid with 161 meshes. |
limited_plot |
only a final plot with |
add |
optional. "TRUE" if plots are to be added to the current active device. |
output_dir |
optional. If plots are to be saved in .jpeg in a given directory. This variable will be pasted with "_SMART.jpeg" to get the full output directory. |
z_MH |
optional. For plots, if metamodel has already been evaluated on the grid then |
z_lsf |
optional. For plots, if LSF has already been evaluated on the grid then |
verbose |
Eiher 0 for an almost no output message, or 1 for medium size or 2 for full size |
SMART
is a reliability method proposed by J.-M. Bourinet et al. It makes uses of a SVM-based metamodel to approximate the limit state function and calculate the failure probability with a crude Monte-Carlo method using the metamodel-based limit state function. As SVM is a classification method, it makes use of limit state function values to create two classes : greater and lower than the failure threshold. Then the border is taken as a surogate of the limit state function.
Concerning the refinement strategy, it distinguishes 3 stages, known as Localisation, Stalibilsation and Convergence stages. The first one is proposed to reduce the margin as much as possible, the second one focuses on switching points while the last one works on the final Monte-Carlo population and is designed to insure a strong margin ; see F. Deheeger PhD thesis for more information.
An object of class list
containing the failure probability and some more outputs as described below:
proba |
The estimated failure probability. |
cov |
The coefficient of variation of the Monte-Carlo probability estimate. |
gamma |
The gamma value corresponding to the correlation between Monte-Carlo samples got from Metropolis-Hastings algorithm. |
Ncall |
The total number of calls to the |
learn_db |
The final learning database, ie. all points where |
lsf_value |
The value of the |
meta_fun |
The metamodel approximation of the |
meta_model |
The final metamodel. |
points |
Points in the failure domain according to the metamodel. |
meta_eval |
Evaluation of the metamodel on these points. |
z_meta |
If |
Problem is supposed to be defined in the standard space. If not, use UtoX
to do so.
Furthermore, each time a set of vector is defined as a matrix, ‘nrow’ = dimension
and ‘ncol’ = number of vector.
Clement Walter
clement.walter@cea.fr
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 mecano-fiabiliste : 2SMART - methodologie d'apprentissage stochastique en fiabilite
PhD. Thesis, Universite Blaise Pascal - Clermont II, 2008
SubsetSimulation
MonteCarlo
svm
(in package e1071)
S2MART