$extrastylesheet
Dakota
Version 6.2
|
Class for the Adaptive Importance Sampling methods within DAKOTA. More...
Public Member Functions | |
NonDAdaptImpSampling (ProblemDescDB &problem_db, Model &model) | |
standard constructor | |
NonDAdaptImpSampling (Model &model, unsigned short sample_type, int samples, int seed, const String &rng, bool vary_pattern, unsigned short is_type, bool cdf_flag, bool x_space_model, bool use_model_bounds) | |
alternate constructor for on-the-fly instantiations | |
~NonDAdaptImpSampling () | |
destructor | |
void | derived_init_communicators (ParLevLIter pl_iter) |
derived class contributions to initializing the communicators associated with this Iterator instance | |
void | derived_set_communicators (ParLevLIter pl_iter) |
derived class contributions to setting the communicators associated with this Iterator instance | |
void | derived_free_communicators (ParLevLIter pl_iter) |
derived class contributions to freeing the communicators associated with this Iterator instance | |
void | quantify_uncertainty () |
performs adaptive importance sampling and computes probability of failure | |
void | print_results (std::ostream &s) |
print the final statistics | |
void | initialize (const RealVectorArray &full_points, bool x_space_data, size_t resp_index, Real initial_prob, 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 RealMatrix &full_points, bool x_space_data, size_t resp_index, Real initial_prob, 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 &full_point, bool x_space_data, size_t resp_index, Real initial_prob, 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 | |
Real | final_probability () |
returns the final probability calculated by the importance sampling | |
Private Member Functions | |
void | select_rep_points (const RealVectorArray &var_samples_u, const RealVector &fn_samples) |
select representative points from a set of samples | |
void | converge_statistics (bool cov_flag) |
iteratively generate samples and select representative points until probability and (optionally) coefficient of variation converge | |
void | generate_samples (RealVectorArray &var_samples_u) |
generate a set of samples based on multimodal sampling density | |
void | evaluate_samples (const RealVectorArray &var_samples_u, RealVector &fn_samples) |
evaluate the model at the sample points and store the responses | |
void | calculate_statistics (const RealVectorArray &var_samples_u, const RealVector &fn_samples, size_t total_samples, Real &sum_prob, Real &prob, bool compute_cov, Real &sum_var, Real &cov) |
calculate the probability of exceeding the failure threshold and the coefficent of variation (if requested) | |
Real | distance (const RealVector &a, const RealVector &b) |
compute Euclidean distance between points a and b | |
Real | recentered_density (const RealVector &sample_point) |
compute density between a representative point and a sample point, assuming standard normal | |
Private Attributes | |
Model | uSpaceModel |
importance sampling is performed in standardized probability space. This u-space model is either passed in (alternate constructor for helper AIS) or constructed using transform_model() (standard constructor for stand-alone AIS) | |
unsigned short | importanceSamplingType |
integration type (is, ais, mmais) provided by input specification | |
bool | initLHS |
flag to identify if initial points are generated from an LHS sample | |
bool | useModelBounds |
flag to control if the sampler should respect the model bounds | |
bool | invertProb |
flag for inversion of probability values using 1.-p | |
int | refineSamples |
size of sample batch within each refinement iteration | |
size_t | respFnIndex |
the active response function index in the model to be sampled | |
RealVector | designPoint |
design subset for which uncertain subset is being sampled | |
RealVectorArray | initPointsU |
the original set of u-space samples passed in initialize() | |
RealVectorArray | repPointsU |
the set of representative points in u-space around which to sample | |
RealVector | repWeights |
the weight associated with each representative point | |
Real | probEstimate |
the probability estimate that is iteratively refined by importance sampling | |
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 | ( | ProblemDescDB & | problem_db, |
Model & | model | ||
) |
standard constructor
This is the primary constructor. It accepts a Model reference. It will perform refinement for all response QOI and all probability levels.
References NonD::initialize_random_variables(), Iterator::iteratedModel, NonDSampling::numSamples, NonDAdaptImpSampling::refineSamples, NonDSampling::statsFlag, NonD::transform_model(), NonDAdaptImpSampling::useModelBounds, and NonDAdaptImpSampling::uSpaceModel.
NonDAdaptImpSampling | ( | Model & | model, |
unsigned short | sample_type, | ||
int | refine_samples, | ||
int | refine_seed, | ||
const String & | rng, | ||
bool | vary_pattern, | ||
unsigned short | is_type, | ||
bool | cdf_flag, | ||
bool | x_space_model, | ||
bool | use_model_bounds | ||
) |
alternate constructor for on-the-fly instantiations
This is an alternate constructor for instantiations on the fly using a Model but no ProblemDescDB. It will perform refinement for one response QOI and one probability level (passed in initialize()).
References NonD::cdfFlag, Iterator::maxEvalConcurrency, NonDAdaptImpSampling::refineSamples, NonD::transform_model(), NonDAdaptImpSampling::useModelBounds, and NonDAdaptImpSampling::uSpaceModel.
void initialize | ( | const RealVectorArray & | acv_points, |
bool | x_space_data, | ||
size_t | resp_index, | ||
Real | initial_prob, | ||
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 vector array of starting points.
References NonDAdaptImpSampling::designPoint, NonDAdaptImpSampling::failThresh, NonDAdaptImpSampling::initPointsU, NonDAdaptImpSampling::invertProb, NonD::natafTransform, NonD::numContDesVars, NonD::numUncertainVars, NonDAdaptImpSampling::probEstimate, and NonDAdaptImpSampling::respFnIndex.
Referenced by NonDExpansion::compute_statistics(), NonDGlobalReliability::importance_sampling(), and NonDAdaptImpSampling::quantify_uncertainty().
void initialize | ( | const RealMatrix & | acv_points, |
bool | x_space_data, | ||
size_t | resp_index, | ||
Real | initial_prob, | ||
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 matrix of starting points.
References NonDAdaptImpSampling::designPoint, NonDAdaptImpSampling::failThresh, NonDAdaptImpSampling::initPointsU, NonDAdaptImpSampling::invertProb, NonD::natafTransform, NonD::numContDesVars, Analyzer::numContinuousVars, NonD::numUncertainVars, NonDAdaptImpSampling::probEstimate, and NonDAdaptImpSampling::respFnIndex.
void initialize | ( | const RealVector & | acv_point, |
bool | x_space_data, | ||
size_t | resp_index, | ||
Real | initial_prob, | ||
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::initPointsU, NonDAdaptImpSampling::invertProb, NonD::natafTransform, NonD::numContDesVars, NonD::numUncertainVars, NonDAdaptImpSampling::probEstimate, and NonDAdaptImpSampling::respFnIndex.