## 2 Methodology
### Particle Filter  
The particle filter is a Monte Carlo approach that can be used to estimate the state of a system by combining both the state evolution of the system and the observation/measurement parameters obtained from the state.  
In discrete time, a system can be described by the following state space model:  
\[\mathbf{x}_{t}=f(\mathbf{x}_{t-1},\mathbf{\omega}_{t-1}) \tag{10}\]  
\[\mathbf{z}_{t}=h(\mathbf{x}_{t},\mathbf{v}_{t}) \tag{11}\]  
From the above equations, \(\mathbf{x}_{t}\) represents the state of the system (such as the crack depth) at time \(t\), \(\mathbf{\omega}_{t-1}\) which is independently and contains identically distributed (_iid_) noise/variance at time \(t-1\), \(f(\ )\) is a function that maps the transitions between states, \(\mathbf{z}_{t}\) represents the measurement/observation (can be thought of as a feature, typically derived from a vibration signal) at time \(t\), \(\mathbf{v}_{t}\) is the _iid_ noise/variance associated with each measurement, and \(h(\ )\) is a function that maps the state with the measurement.  
The goal of the particle filter is then to be able to estimate the probability density function (pdf) of \(\ p(\mathbf{x}_{t}|\mathbf{z}_{1:t})\), that is, to estimate the state at time \(t\), given the measurements up to time \(t\). It is also assumed that the prior probability of the state \(P(\mathbf{x}_{0})\) is unkown.  
Figure 3: A feedforward neural network with \(d=3\) and a single hidden layer.  
In the Bayesian setting, the state estimation is usually computed recursively in two stages; the prediction and the update. For the prediction step, the \(P(\mathbf{x}_{t}|\mathbf{z}_{1:t-1})\) is given as:  
\[\begin{array}{l}\int P(\mathbf{x}_{t}|\mathbf{x}_{t-1},\mathbf{z}_{1:t-1})P(\mathbf{x}_{t-1}| \mathbf{z}_{1:t-1})d\mathbf{x}_{t-1}\\ =\int P(\mathbf{x}_{t}|\mathbf{x}_{t-1})P(\mathbf{x}_{t-1}|\mathbf{z}_{1:t-1})d\mathbf{x}_{t-1}\end{array} \tag{12}\]  
For the update step, new measurements are collected, which are then used to update the prior distribution. The posterior distribution can then be written as:  
\[P(\mathbf{x}_{t}|\mathbf{z}_{1:t})=\frac{P(\mathbf{x}_{t}|\mathbf{z}_{1:t-1})P(\mathbf{z}_{t}|\mathbf{x }_{t})}{\int P(\mathbf{x}_{t}|\mathbf{z}_{1:t-1})P(\mathbf{z}_{t}|\mathbf{x}_{t})d\mathbf{x}_{t-1}} \tag{13}\]  
Typically, the calculations for Equations (12) and (13) are intractable and the particle filter sampling approach is used to approximate them. This can be accomplished by using a set of samples/particles \(\{\mathbf{x}_{t}^{i},\,w_{t}^{i}\}_{i=1}^{N}\), where \(w_{t}^{i}\) is the \(i\)th weight at time \(t\) and \(N\) is the user-specified number of particles generated. The weights can be updated by using the sequential importance resampling (SIR) algorithm [33], and samples are drawn from the state transition distribution:  
\[\mathbf{x}_{t}^{i}\sim p(\mathbf{x}_{t}\Big{|}\mathbf{x}_{t-1}^{i}) \tag{14}\]  
\[w_{t}^{i}=\frac{p(z_{t}\big{|}\mathbf{x}_{t}^{i})}{\sum_{i=1}^{N}p(\mathbf{z}_{t} \Big{|}\mathbf{x}_{t}^{i})} \tag{15}\]  
Finally, the posterior distribution \(P(\mathbf{x}_{t}|\mathbf{z}_{1:t-1})\) is obtained by resampling from \(\left\{\mathbf{x}_{t}^{1},\mathbf{x}_{t}^{2},\ldots\mathbf{x}_{t}^{N}\right\}\) where \(\hat{\mathbf{x}}_{t}^{i}\) (predicted estimate) is drawn with probability \(w_{t}^{i}\).