$extrastylesheet
Dakota  Version 6.2
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Private Attributes | Static Private Attributes
NonDQUESOBayesCalibration Class Reference

Bayesian inference using the QUESO library from UT Austin. More...

Inheritance diagram for NonDQUESOBayesCalibration:
NonDBayesCalibration NonDCalibration NonD Analyzer Iterator

List of all members.

Public Member Functions

 NonDQUESOBayesCalibration (ProblemDescDB &problem_db, Model &model)
 standard constructor
 ~NonDQUESOBayesCalibration ()
 destructor
Real prior_density (const QUESO::GslVector &qv)
 compute the prior PDF for a particular MCMC sample

Protected Member Functions

void quantify_uncertainty ()
 redefined from DakotaNonD
void print_results (std::ostream &s)
 redefined from DakotaAnalyzer
void init_queso_environment ()
 initialize the QUESO FullEnvironment on the Dakota MPIComm
void init_precond_request_value ()
 initialize the ASV value for preconditioned cases
void init_residual_response ()
 initialize a residual response for use in data transformations
void init_queso_solver ()
 define variables, options, likelihood callback, and inverse problem
void precondition_proposal ()
 use derivative information from the emulator to define the proposal covariance (inverse of misfit Hessian)
void run_queso_solver ()
 perform the MCMC process
void run_chain_with_restarting ()
 short term option to restart the MCMC chain with updated proposal density computed from the emulator at a new starting point
void filter_chain (size_t update_cntr, unsigned short batch_size)
 extract batch_size points from the MCMC chain and store final aggregated set within allSamples
void chain_to_local (unsigned short batch_size, std::map< Real, size_t > &local_best)
 store indices of best batch_size samples from the current MCMC chain within the local_best array
void local_to_aggregated (unsigned short batch_size, const std::map< Real, size_t > &local_best)
 update bestSamples aggregation using new contributions from the current MCMC chain
void aggregated_to_all ()
 following aggregation cycles, copy bestSamples to allSamples
void local_to_all (const std::map< Real, size_t > &local_best)
 in the absence of aggregation cycles, copy local_best to allSamples
void update_center ()
 update the starting point for a restarted MCMC chain using last point from previous chain
void update_model ()
 evaluates allSamples on iteratedModel and update the mcmcModel emulator with all{Samples,Responses}
Real assess_emulator_convergence ()
 compute the L2 norm of the change in emulator coefficients
void init_parameter_domain ()
 intialize the QUESO parameter space, min, max, initial, and domain
void prior_proposal_covariance ()
 use covariance of prior distribution for setting proposal covariance
void user_proposal_covariance (const String &input_fmt, const RealVector &cov_data, const String &cov_filename)
 set proposal covariance from user-provided diagonal or matrix
void set_ip_options ()
 set inverse problem options calIpOptionsValues common to all solvers
void set_mh_options ()
 set MH-specific inverse problem options calIpMhOptionsValues
void update_chain_size (unsigned int size)
 update MH-specific inverse problem options calIpMhOptionsValues
void copy_gsl (const QUESO::GslVector &qv, RealVector &rv)
 local copy_data utility
void copy_gsl (const QUESO::GslVector &qv, RealMatrix &rm, int i)
 local copy_data utility

Static Protected Member Functions

static double dakotaLikelihoodRoutine (const QUESO::GslVector &paramValues, const QUESO::GslVector *paramDirection, const void *functionDataPtr, QUESO::GslVector *gradVector, QUESO::GslMatrix *hessianMatrix, QUESO::GslVector *hessianEffect)
 Likelihood function for call-back from QUESO to DAKOTA for evaluation.

Protected Attributes

String mcmcType
 MCMC type ("dram" or "delayed_rejection" or "adaptive_metropolis" or "metropolis_hastings" or "multilevel", within QUESO)
Real likelihoodScale
 scale factor for likelihood; deprecated
bool calibrateSigma
 flag to indicated if the sigma terms should be calibrated (default true)
short precondRequestValue
 the active set request value to use in proposal preconditioning
Response residualResponse
 local Response in which to store computed residuals
bool logitTransform
 flag indicating user activation of logit transform option

Private Attributes

boost::shared_ptr
< QUESO::EnvOptionsValues > 
envOptionsValues
 options for setting up the QUESO Environment
boost::shared_ptr
< QUESO::FullEnvironment > 
quesoEnv
 top-level QUESO Environment
boost::shared_ptr
< QUESO::VectorSpace
< QUESO::GslVector,
QUESO::GslMatrix > > 
paramSpace
 QUESO parameter space based on number of calibrated parameters.
boost::shared_ptr
< QUESO::BoxSubset
< QUESO::GslVector,
QUESO::GslMatrix > > 
paramDomain
 QUESO parameter domain: hypercube based on min/max values.
boost::shared_ptr
< QUESO::GslVector > 
paramInitials
 initial parameter values at which to start chain
boost::shared_ptr
< QUESO::GslMatrix > 
proposalCovMatrix
 proposal covariance for DRAM
boost::shared_ptr
< QUESO::SipOptionsValues > 
calIpOptionsValues
 general inverse problem options
boost::shared_ptr
< QUESO::MhOptionsValues > 
calIpMhOptionsValues
 MH-specific inverse problem options.
boost::shared_ptr
< QUESO::GenericScalarFunction
< QUESO::GslVector,
QUESO::GslMatrix > > 
likelihoodFunctionObj
boost::shared_ptr
< QUESO::BaseVectorRV
< QUESO::GslVector,
QUESO::GslMatrix > > 
priorRv
boost::shared_ptr
< QUESO::GenericVectorRV
< QUESO::GslVector,
QUESO::GslMatrix > > 
postRv
boost::shared_ptr
< QUESO::StatisticalInverseProblem
< QUESO::GslVector,
QUESO::GslMatrix > > 
inverseProb
std::map< Real, QUESO::GslVector > bestSamples
 array for managing aggregation of best MCMC samples across multiple (restarted) chains
RealVectorArray prevCoeffs
 cache previous expansion coefficients for assessing convergence of emulator refinement process

Static Private Attributes

static NonDQUESOBayesCalibrationNonDQUESOInstance
 Pointer to current class instance for use in static callback functions.

Detailed Description

Bayesian inference using the QUESO library from UT Austin.

This class provides a wrapper to the QUESO library developed as part of the Predictive Science Academic Alliance Program (PSAAP), specifically the PECOS (Predictive Engineering and Computational Sciences) Center at UT Austin. The name QUESO stands for Quantification of Uncertainty for Estimation, Simulation, and Optimization.


Constructor & Destructor Documentation

NonDQUESOBayesCalibration ( ProblemDescDB problem_db,
Model model 
)

standard constructor

This constructor is called for a standard letter-envelope iterator instantiation. In this case, set_db_list_nodes has been called and probDescDB can be queried for settings from the method specification.

References Dakota::abort_handler(), NonDQUESOBayesCalibration::calibrateSigma, NonDCalibration::calibrationData, NonDCalibration::expData, NonDQUESOBayesCalibration::init_queso_environment(), and ExperimentData::load_data().


Member Function Documentation

void quantify_uncertainty ( ) [protected, virtual]
void prior_proposal_covariance ( ) [protected]
void user_proposal_covariance ( const String &  input_fmt,
const RealVector &  cov_data,
const String &  cov_filename 
) [protected]

set proposal covariance from user-provided diagonal or matrix

This function will convert user-specified cov_type = "diagonal" | "matrix" data from either cov_data or cov_filename and populate a full QUESO::GslMatrix* in proposalCovMatrix with the covariance.

References Analyzer::numContinuousVars, NonDQUESOBayesCalibration::proposalCovMatrix, and NonDBayesCalibration::standardizedSpace.

Referenced by NonDQUESOBayesCalibration::quantify_uncertainty().

void set_ip_options ( ) [protected]

set inverse problem options calIpOptionsValues common to all solvers

set inverse problem options common to all solvers

References NonDQUESOBayesCalibration::calIpOptionsValues.

Referenced by NonDQUESOBayesCalibration::init_queso_solver().


Member Data Documentation

bool logitTransform [protected]

flag indicating user activation of logit transform option

this option is useful for preventing rejection or resampling for out-of-bounds samples by transforming bounded domains to [-inf,inf].

Referenced by NonDQUESOBayesCalibration::set_mh_options().


The documentation for this class was generated from the following files: