# Overview of Algorithms for Using Particle Morphology in Pre-Detonation Nuclear Forensics
## 5 ABC  
Because ABC is a versatile and robust option for many inverse problems [18; 19; 20; 21; 22; 23], ABC is described in detail here. ABC can be used to evaluate candidate experimental designs, accommodate model uncertainty such as how many clusters could be present in each precipitation condition (ADU, AUC, SDU, MDU), and to provide a model-based summary of the data. In any Bayesian approach [24], prior information regarding the magnitudes and/or relative magnitudes of any model parameter(s) can be provided. If the prior is \"conjugate\" for the likelihood, then the posterior is in the same likelihood family as the prior, in which case analytical methods are available to compute posterior prediction intervals for quantities of interest. So that a wide variety of priors and likelihoods can be accommodated, modern Bayesian methods do not rely on conjugate priors, but use numerical methods to obtain samples from approximate posterior distributions [24]. For numerical methods, such as Markov chain Monte Carlo [24], the user specifies a prior distribution (which need not be normal), for the parameters to be inferred, such as processing and aging conditions. The user must also specify a likelihood for the data given the model parameters. In contrast, ABC does not require a likelihood for the data; and, as in any Bayesian approach, ABC accommodates constraints on variances through prior distributions [18; 19; 20; 21; 22; 23; 24]. No matter what type of Bayesian approach is used, a well-calibrated Bayesian approach is defined here as an approach that satisfies several requirements. One calibration requirement is that in repeated applications of ABC for classification the actual correct classification probability should be closely approximated by the predicted correct classification probability. For example, if the average probability of the selected model is 0.90, then the actual CCR should be approximately 0.90. In applications of ABC for estimating a continuous-valued parameter (\"regression\"), one requirement is that in repeated applications of ABC, approximately 95% of the middle 95% of the posterior distribution for the parameter should contain the true value. That is, the actual coverage should be closely approximated by the nominal coverage. The nominal coverage is obtained by using the quantiles of the estimated posterior. For example, the 0.005 and 0.995 quantiles define the lower and upper limits of a 99% probability interval. A second requirement is that the true mean squared error (MSE) of the ABC-based estimate of the parameter should be closely approximated by the variance of the ABC-based posterior distribution of that parameter [22]. Denote the real data as y. Inference using ABC can be summarized as follows:  
1. Sample \(\theta\) from the prior \(\theta\sim f_{\text{prior}}(\theta)\)
2. Simulate data \(y^{\prime}\) from the model \(y^{\prime}\sim P(y|\theta)\)
3. If the distance \(d(S(y^{\prime}),S(y))\leq\epsilon\), then accept \(\theta\) as an observation from \(f_{posterior}(\theta|y)\)  
Repeat steps 1-3 many times, usually 105 or more times. In step (2), the model can be analytical or, for example, a computer model. In ABC, the model has input parameters \(\theta\), has output data \(y^{\prime}\sim P(y|\theta)\), and there is corresponding real data yobs. For the example below, the forward model has 1 parameter (the group membership, 1, 2, 3, or 4 for ADU, AUC, SDU, and MDU, respectively). Synthetic data are generated from the model for many trial values of \(\theta\), and trial \(\theta\) values are accepted as contributing to the estimated posterior distribution for \(\theta\mid Y_{\text{obs}}\) if the distance \(d(y_{\text{obs}},y(\theta))\) between \(y_{\text{obs}}\) and \(y(\theta)\) is reasonably small. Alternatively, for most applications, it is necessary to reduce the dimension of \(y_{\text{obs}}\) to a small set of summary statistics \(\theta\) and accept trial values of \(\theta\) if \(d(S(y_{\text{obs}}),S(y(\theta))<\epsilon\), where \(\epsilon\) is a user-chosen threshold.