The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

An Efficient eM-Algorithm for One-Shot Device Data Analysis

Shikhar Tyagi, Arvind Pandey, Bhupendra Singh, Vrijesh Tripathi

2026-08-08

1. Introduction

One-shot devices (e.g., electro-explosive devices, automotive airbags, fire extinguishers, and missiles) can be tested only once. Upon testing, the device is either destroyed or rendered unusable, yielding binary status data: whether the device was functional or failed at the inspection time.

To evaluate device reliability under operating conditions in a reasonable timeframe, Accelerated Life Testing (ALT) is commonly used. The OneShotEM package implements the simple and efficient Expectation-Maximization (eM) algorithm proposed by Zhu, Li, Li, and Balakrishnan (2026) (Communications in Statistics - Simulation and Computation, doi:10.1080/03610918.2025.2515193).

Key Innovation of the New eM-Algorithm

Traditional EM algorithms for one-shot device data treat exact failure times as missing data. In contrast, the new eM-algorithm proposed by Zhu et al. (2026) treats the counts of failures occurring between successive inspection intervals as missing data. This structural shift provides: - Faster Convergence: Reduces iteration counts by 30% to 70%. - Guaranteed Convergence: Avoids numerical divergence because all interval probabilities remain bounded between 0 and 1. - Robust Estimation: Provides lower standard errors and consistent maximum likelihood estimation.


2. Example: Electro-Explosive Device Analysis

We illustrate the package using the electro-explosive device ALT dataset reported by Fan et al. (2009) and analyzed in Zhu et al. (2026).

data(electro_explosive)
print(electro_explosive)
#>   temp it  n r
#> 1   35 10 10 3
#> 2   35 20 10 3
#> 3   35 30 10 7
#> 4   45 10 10 1
#> 5   45 20 10 5
#> 6   45 30 10 7
#> 7   55 10 10 6
#> 8   55 20 10 7
#> 9   55 30 10 9

The dataset contains testing results across 3 temperature levels (35°C, 45°C, 55°C) and 3 inspection times (10, 20, 30 hours), with 10 devices tested per condition (total \(N = 90\)).


3. Exponential Lifetime Model

We fit an exponential lifetime distribution where the scale parameter follows a log-linear model: \(\log(\beta_j) = \theta_0 + \theta_1 \cdot \text{temp}_j\).

fit_exp <- oneshot_em(
  formula = cbind(r, n) ~ temp,
  data = electro_explosive,
  it = "it",
  dist = "exponential"
)

summary(fit_exp)
#> 
#> =================================================================
#>  Summary of One-Shot Device EM Fit (NPM Algorithm)
#> =================================================================
#> Distribution: exponential
#> Convergence:   Successful  (12 iterations)
#> Observations: 90 tested devices
#> 
#> Coefficients:
#>             Estimate Std. Error z value Pr(>|z|)    
#> (Intercept)  5.32030    0.91570   5.810 6.24e-09 ***
#> temp        -0.04723    0.01948  -2.425   0.0153 *  
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#> 95% Confidence Intervals:
#>             CI Lower CI Upper
#> (Intercept)  3.52556  7.11504
#> temp        -0.08541 -0.00906
#> 
#> Model Selection Criteria:
#>   Log-likelihood: -53.61
#>   AIC:            111.2
#>   BIC:            116.2
#>   AICc:           111.4
#>   HQIC:           113.2
#> 
#> =================================================================

4. Weibull Lifetime Model

We fit a Weibull model with shape parameter \(a\) and scale parameter \(\beta_j = \exp(\theta_0 + \theta_1 \cdot \text{temp}_j)\).

fit_weibull <- oneshot_em(
  formula = cbind(r, n) ~ temp,
  data = electro_explosive,
  it = "it",
  dist = "weibull"
)

summary(fit_weibull)
#> 
#> =================================================================
#>  Summary of One-Shot Device EM Fit (NPM Algorithm)
#> =================================================================
#> Distribution: weibull
#> Convergence:   Successful  (55 iterations)
#> Observations: 90 tested devices
#> 
#> Coefficients:
#>             Estimate Std. Error z value Pr(>|z|)    
#> log(shape)   0.19135    0.31223   0.613   0.5400    
#> (Intercept)  4.94768    0.94109   5.257 1.46e-07 ***
#> temp        -0.03968    0.01976  -2.008   0.0446 *  
#> ---
#> Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#> 
#> 95% Confidence Intervals:
#>             CI Lower   CI Upper  
#> log(shape)  -0.4206131  0.8033041
#> (Intercept)  3.1031859  6.7921823
#> temp        -0.0784150 -0.0009519
#> 
#> Model Selection Criteria:
#>   Log-likelihood: -53.45
#>   AIC:            112.9
#>   BIC:            120.4
#>   AICc:           113.2
#>   HQIC:           115.9
#> 
#> =================================================================

5. Comparison: New eM-Algorithm vs Traditional EM

We compare the convergence speed of the new eM-algorithm (npm) against the traditional EM approach (tm).

fit_npm <- oneshot_fit(cbind(r, n) ~ temp, data = electro_explosive, it = "it", dist = "weibull", method = "npm")
fit_tm  <- oneshot_fit(cbind(r, n) ~ temp, data = electro_explosive, it = "it", dist = "weibull", method = "tm")

cat("New eM-Algorithm Iterations: ", fit_npm$iterations, "\n")
#> New eM-Algorithm Iterations:  55
cat("Traditional EM Iterations:   ", fit_tm$iterations, "\n")
#> Traditional EM Iterations:    2

As demonstrated in Zhu et al. (2026), the new eM-algorithm converges in significantly fewer iterations.


6. Visualization and Residual Diagnostics

Fitted survival probabilities and model diagnostics can be visualized easily:

plot(fit_weibull, type = "fitted")

plot(fit_weibull, type = "survival")


7. References

  1. Zhu, X., Li, Y., Li, T., & Balakrishnan, N. (2026). A simple and efficient eM-algorithm for one-shot device data analysis. Communications in Statistics - Simulation and Computation, 55(3), 959–970. doi:10.1080/03610918.2025.2515193
  2. Balakrishnan, N., & Ling, M. (2012). EM algorithm for one-shot device testing under the exponential distribution. Computational Statistics & Data Analysis, 56(3), 502–509.
  3. Fan, T., Balakrishnan, N., & Chang, C. (2009). The Bayesian approach for highly reliable electro-explosive devices using one-shot device testing. Journal of Statistical Computation and Simulation, 79(9), 1143–1154.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.