Class for the Adaptive Importance Sampling methods within DAKOTA. More...
Public Member Functions | |
NonDAdaptImpSampling (Model &model) | |
constructors | |
NonDAdaptImpSampling (Model &model, const String &sample_type, int samples, int seed, const String &rng, short is_type, bool cdf_flag, bool x_space_data, bool x_space_model, bool bounded_model) | |
~NonDAdaptImpSampling () | |
destructor | |
void | quantify_uncertainty () |
performs an adaptive importance sampling and returns probability of failure. | |
void | initialize (const RealVectorArray &initial_points, int resp_fn, const Real &initial_prob, const Real &failure_threshold) |
initializes data needed for importance sampling: an initial set of points around which to sample, a failure threshold, an initial probability to refine, and flags to control transformations | |
void | initialize (const RealVector &initial_point, int resp_fn, const Real &initial_prob, const Real &failure_threshold) |
initializes data needed for importance sampling: an initial point around which to sample, a failure threshold, an initial probability to refine, and flags to control transformations | |
const Real & | get_probability () |
returns the probability calculated by the importance sampling | |
Private Member Functions | |
void | converge_cov () |
iteratively generate samples and select representative points until coefficient of variation converges | |
void | converge_probability () |
iteratively generate samples from final set of representative points until probability converges | |
void | select_init_rep_points (const RealVectorArray &samples) |
select representative points from initial set of samples | |
void | select_rep_points (const RealVectorArray &samples) |
select representative points from a set of samples | |
void | calculate_rep_weights () |
calculate relative weights of representative points | |
void | generate_samples (RealVectorArray &samples) |
generate a set of samples based on multimodal sampling density | |
void | calculate_statistics (const RealVectorArray &samples, const size_t &total_sample_number, Real &probability_sum, Real &probability, bool cov_flag, Real &variance_sum, Real &coeff_of_variation) |
calculate the probability of exceeding the failure threshold and the coefficent of variation (if requested) | |
Private Attributes | |
short | importanceSamplingType |
integration type (is, ais, mmais) provided by input specification | |
bool | invertProb |
flag for inversion of probability values using 1.-p | |
size_t | numRepPoints |
the number of representative points around which to sample | |
size_t | respFn |
the response function in the model to be sampled | |
RealVectorArray | initPoints |
the original set of samples passed into the MMAIS routine | |
RealVectorArray | repPoints |
the set of representative points around which to sample | |
RealVector | repWeights |
the weight associated with each representative point | |
RealVector | designPoint |
design point at which uncertain space is being sampled | |
bool | transInitPoints |
flag to control if x->u transformation should be performed for initial points | |
bool | transPoints |
flag to control if u->x transformation should be performed before evaluation | |
bool | useModelBounds |
flag to control if the sampler should respect the model bounds | |
bool | initLHS |
flag to identify if initial points are generated from an LHS sample | |
Real | initProb |
the initial probability (from FORM or SORM) | |
Real | finalProb |
the final calculated probability (p) | |
Real | failThresh |
the failure threshold (z-bar) for the problem. |
Class for the Adaptive Importance Sampling methods within DAKOTA.
The NonDAdaptImpSampling implements the multi-modal adaptive importance sampling used for reliability calculations. (eventually we will want to broaden this). Need to add more detail to this description.
NonDAdaptImpSampling | ( | Model & | model | ) |
constructors
standard constructor
This is the primary constructor. It accepts a Model reference.
References NonD::initialize_random_variables(), and NonDSampling::samplingVarsMode.
NonDAdaptImpSampling | ( | Model & | model, |
const String & | sample_type, | ||
int | samples, | ||
int | seed, | ||
const String & | rng, | ||
short | is_type, | ||
bool | cdf_flag, | ||
bool | x_space_data, | ||
bool | x_space_model, | ||
bool | bounded_model | ||
) |
This is an alternate constructor for instantiations on the fly using a Model but no ProblemDescDB.
References NonD::cdfFlag, and NonDSampling::samplingVarsMode.
void initialize | ( | const RealVectorArray & | initial_points, |
int | resp_fn, | ||
const Real & | initial_prob, | ||
const Real & | failure_threshold | ||
) |
initializes data needed for importance sampling: an initial set of points around which to sample, a failure threshold, an initial probability to refine, and flags to control transformations
Initializes data using a set of starting points.
References NonDAdaptImpSampling::designPoint, NonDAdaptImpSampling::failThresh, NonDAdaptImpSampling::initPoints, NonDAdaptImpSampling::initProb, NonD::natafTransform, NonD::numContDesVars, Iterator::numContinuousVars, NonD::numUncertainVars, NonDAdaptImpSampling::respFn, and NonDAdaptImpSampling::transInitPoints.
Referenced by NonDExpansion::compute_statistics(), NonDGlobalReliability::importance_sampling(), NonDLocalReliability::probability(), and NonDAdaptImpSampling::quantify_uncertainty().
void initialize | ( | const RealVector & | initial_point, |
int | resp_fn, | ||
const Real & | initial_prob, | ||
const Real & | failure_threshold | ||
) |
initializes data needed for importance sampling: an initial point around which to sample, a failure threshold, an initial probability to refine, and flags to control transformations
Initializes data using only one starting point.
References NonDAdaptImpSampling::designPoint, NonDAdaptImpSampling::failThresh, NonDAdaptImpSampling::initPoints, NonDAdaptImpSampling::initProb, NonD::natafTransform, NonD::numContDesVars, Iterator::numContinuousVars, NonD::numUncertainVars, NonDAdaptImpSampling::respFn, and NonDAdaptImpSampling::transInitPoints.