Title: | Analysis of Accelerated Destructive Degradation Test Data |
---|---|
Description: | Accelerated destructive degradation tests (ADDT) are often used to collect necessary data for assessing the long-term properties of polymeric materials. Based on the collected data, a thermal index (TI) is estimated. The TI can be useful for material rating and comparison. This package implements the traditional method based on the least-squares method, the parametric method based on maximum likelihood estimation, and the semiparametric method based on spline methods, and the corresponding methods for estimating TI for polymeric materials. The traditional approach is a two-step approach that is currently used in industrial standards, while the parametric method is widely used in the statistical literature. The semiparametric method is newly developed. Both the parametric and semiparametric approaches allow one to do statistical inference such as quantifying uncertainties in estimation, hypothesis testing, and predictions. Publicly available datasets are provided illustrations. More details can be found in Jin et al. (2017). |
Authors: | Yili Hong, Yimeng Xie, Zhongnan Jin, and Caleb King |
Maintainer: | Yili Hong <[email protected]> |
License: | GPL-2 |
Version: | 2.0 |
Built: | 2025-01-27 04:55:13 UTC |
Source: | https://github.com/cran/ADDT |
Accelerated destructive degradation tests (ADDT) are often used to collect necessary data for assessing the long-term properties of polymeric materials. Based on the collected data, a thermal index (TI) is estimated. The TI can be useful for material rating and comparisons. This package implements the traditional method based on the least-squares method, the parametric method based on maximum likelihood estimation, and the semiparametric method based on spline methods, and their corresponding methods for estimating TI for polymeric materials. The traditional approach is a two-step approach that is currently used in industrial standards, while the parametric method is widely used in the statistical literature. The semiparametric method is newly developed. The parametric and semiparametric approaches allow one to do statistical inference such as quantifying uncertainties in estimation, hypothesis testing, and predictions. Publicly available datasets are provided for illustrations. More details can be found in Jin et al. (2017).
Package: | ADDT |
Type: | Package |
Version: | 2.0 |
Date: | 2016-10-08 |
License: | GPL-2 |
Yili Hong, Yimeng Xie, Zhongnan Jin, and Caleb King
Maintainer: Yili Hong <[email protected]>
C. B. King, Y. Xie, Y. Hong, J. H. Van Mullekom, S. P. DeHart, and P. A. DeFeo, “A comparison of traditional and maximum likelihood approaches to estimating thermal indices for polymeric materials,” Journal of Quality Technology, in press, 2016.
L. A. Escobar, W. Q. Meeker, D. L. Kugler, and L. L. Kramer, “Accelerated destructive degradation tests: Data, models, and analysis,” in Mathematical and Statistical Methods in Reliability, B. H. Lindqvist and K. A. Doksum, Eds. River Edge, NJ: World Scientific Publishing Company, 2003, ch. 21.
M. Li and N. Doganaksoy, “Batch variability in accelerated-degradation testing,” Journal of Quality Technology, vol. 46, pp. 171-180, 2014.
Y. Xie, C. B. King, Y. Hong, and Q. Yang, “Semi-parametric models for accelerated destructive degradation test data analysis,” Preprint: arXiv:1512.03036, 2015.
Y. Xie, Z. Jin, Y. Hong, and J. H. Van Mullekom, “Statistical methods for thermal index estimation based on accelerated destructive degradation test data,” in Statistical Modeling for Degradation Data, D. G. Chen, Y. L. Lio, H. K. T. Ng, and T. R. Tsai, Eds. NY: New York: Springer, 2017, ch. 12.
Z. Jin, Y. Xie, Y. Hong, and J. H. Van Mullekom, “ADDT: An R package for analysis of accelerated destructive degradation test data,” in Statistical Modeling for Degradation Data, D. G. Chen, Y. L. Lio, H. K. T. Ng, and T. R. Tsai, Eds. NY: New York: Springer, 2017, ch. 14.
Computes a confidence interval for the TI.
addt.confint.ti.mle(obj, conflevel)
addt.confint.ti.mle(obj, conflevel)
obj |
An |
conflevel |
Confidence level in decimal form (i.e., 95% is 0.95) |
Returns a vector containing the estimated TI, standard error, and lower and upper confidence limits.
This currently only implements the CI procedure for ML approach.
Fits degradation data using the least-squares, maximum likelihood, and semiparametric methods and estimates the thermal indices (TI).
addt.fit(formula, data, initial.val = 100, proc = "All", failure.threshold, time.rti = 1e+05, method = "Nelder-Mead", subset, na.action, starts = NULL, fail.thres.vec = c(70, 80), semi.control = list(cor = F,...),...)
addt.fit(formula, data, initial.val = 100, proc = "All", failure.threshold, time.rti = 1e+05, method = "Nelder-Mead", subset, na.action, starts = NULL, fail.thres.vec = c(70, 80), semi.control = list(cor = F,...),...)
formula |
A formula of type Response~Time+Temperature. The order of Time and Temperature cannot be changed. |
data |
A data frame contains the ADDT data to be analyzed. |
initial.val |
We need response measurements at time point 0 to compute the initial degradation level in the model. If the data does not contain that information, user must supply the initial.value. Otherwise, the function will give an error message. |
proc |
The type of analysis to be performed which can be "LS" (least squares), "ML" (maximum likelihood), "SemiPara" (semiparametric), or "All" (the least-squares, maximum likelihood and semiparametric methods). |
failure.threshold |
The value below which a soft failure occurs. Must be in the form of a percent of the initial value. |
time.rti |
The time associated with the thermal index (TI) or relative thermal index (RTI). Typically 100,000 hours. |
method |
An argument passed to optim specifying the optimization procedure. Default is |
subset |
An optional statement that allows the use of only part of the dataset. |
na.action |
Indicates the action required when data contain missing values. |
starts |
A vector of starting values for the maximum likelihood procedure.
See |
fail.thres.vec |
If the user does not specify “starts” argument, the user may specify a vector of two different failure.thresholds. The least-squares procedure is then used for the two different failure.thresholds to produce starting values for the maximum likelihood procedure. |
semi.control |
list=(cor=F,...), control parameters related to the semiparametric method. If not specified, default is no correlation. When cor = T in the list is specified, model assumes a correlation term. |
... |
Optional arguments. |
A thermal index (TI) or relative thermal index (RTI) is often used to evaluate long-term performance of polymeric materials. Accelerated destructive degradation testing (ADDT) is widely used to calculate the TI of certain polymeric materials.
The dataset considered in addt.fit function contain repeated measurements of a response, say tensile strength, at some combinations of time and temperature.
The least squares procedure aggregates data into the average of measurements at each combination of time and temperature. Then, polynominal regression is used to interpolate the failure time for each combination. A least squares line is fitted to the failure time data and the TI is then obtained by
It is important to note that observations are required after failure in order for this procedure to be successful.
The maximum likelihood procedure assumes a degradation path dependent on time and temperature. An example of a parametric form for this path can be found in Vaca-Trigo and Meeker (2009) and is the form currently used here. The error term is assumed to follow a multivariate normal distribution. A TI can be directly estimated from the parameter estimates for the degradation path. The addt.fit
function will be generalized to allow other parametric forms of the mean function, and/or other non-Guassian distribution in later versions.
The semiparametric model assembles both parametric model like Arrhenius model for degradation variable extrapolation as well as non-parametric model in order to be more compatible for various materials.
An object of class "addt.fit", which is a list containing:
LS.obj |
If least-squares approach is used, a LS.obj will returned. It contains estimates of coefficients in the TI formula, estimated TI, a matrix contains the failure time by polynomial interpolation. |
ML.obj |
A ML.obj object is returned if maximum likelihood approach is specified. |
SemiPara.obj |
A SemiPara.obj is returned if SemiPara approach is specified. |
dat |
The data set used in least square/maximum likelihood approaches. |
time.rti |
An argument stored to be used for functions related to "addt.fit" object. |
initial.val |
An argument stored to be used for functions related to "addt.fit" object. |
failure.threshold |
An argument stored to be used for functions related to "addt.fit" object. |
Y. Hong, C. B. King, Y. Xie, J. H. Van Mullekom, S. P. Dehart, and P. A. DeFeo (2014). “A Comparison of Least Squares and Maximum Likelihood Approaches to Estimating Thermal Indices for Polymeric Materials,” Journal of Quality Technology, in press, 2016.
I. Vaca-Trigoand, W. Q. Meeker, “A statistical model for linking field and laboratory exposure results for a model coating,” in Service Life Prediction of Polymeric Materials, J. Martin, R. A. Ryntz, J. Chin, and R. A. Dickie, Eds. NY: New York: Springer, 2009, ch. 2.
Y. Xie, C. B. King, Y. Hong, and Q. Yang, “Semi-parametric models for accelerated destructive degradation test data analysis,” Preprint: arXiv:1512.03036, 2015.
plot.addt.fit, summary.addt.fit
data(AdhesiveBondB) ## Least Squares addt.fit.lsa<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="LS", failure.threshold=70) ## Maximum Likelihood addt.fit.mla<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="ML", failure.threshold=70) ## Semiparametric ## Not run: addt.fit.semi<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="SemiPara", failure.threshold=70) ## End(Not run) ## All LS, ML and Semi-Parametric procedures ## Not run: addt.fit.all<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="All", failure.threshold=70) ## End(Not run) summary(addt.fit.lsa) summary(addt.fit.mla) ## Not run: summary(addt.fit.semi) ## Not run: summary(addt.fit.all) ## Not run: plot(addt.fit.all, type="data") ## Not run: plot(addt.fit.all, type="LS") ## Not run: plot(addt.fit.all, type="ML") ## Not run: plot(addt.fit.semi, type="SEMI") ## Not run: addt.confint.ti.mle(addt.fit.mla,conflevel=0.95)
data(AdhesiveBondB) ## Least Squares addt.fit.lsa<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="LS", failure.threshold=70) ## Maximum Likelihood addt.fit.mla<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="ML", failure.threshold=70) ## Semiparametric ## Not run: addt.fit.semi<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="SemiPara", failure.threshold=70) ## End(Not run) ## All LS, ML and Semi-Parametric procedures ## Not run: addt.fit.all<-addt.fit(Response~TimeH+TempC,data=AdhesiveBondB,proc="All", failure.threshold=70) ## End(Not run) summary(addt.fit.lsa) summary(addt.fit.mla) ## Not run: summary(addt.fit.semi) ## Not run: summary(addt.fit.all) ## Not run: plot(addt.fit.all, type="data") ## Not run: plot(addt.fit.all, type="LS") ## Not run: plot(addt.fit.all, type="ML") ## Not run: plot(addt.fit.semi, type="SEMI") ## Not run: addt.confint.ti.mle(addt.fit.mla,conflevel=0.95)
Function that returns the averaged responses for each time-temperature batch.
addt.mean.summary(dat)
addt.mean.summary(dat)
dat |
A dataframe contains the measurements from the ADDT. The dataframe contains temperature, time, and response from left to right. |
Returns a dataframe giving the mean response for each time-temperature batch.
Y. Hong, C. B. King, Y. Xie, J. H. Van Mullekom, S. P. Dehart, and P. A. DeFeo (2014). “A Comparison of Least Squares and Maximum Likelihood Approaches to Estimating Thermal Indices for Polymeric Materials,” Journal of Quality Technology, in press, 2016.
data(AdhesiveBondB) addt.mean.summary(AdhesiveBondB)
data(AdhesiveBondB) addt.mean.summary(AdhesiveBondB)
Given observations for one temperature level up to some time point, computes a prediction interval for the mean degradation level at some future time point.
addt.predint.ybar.mle(obj, conflevel, num.fut.obs = 5, temp, tt)
addt.predint.ybar.mle(obj, conflevel, num.fut.obs = 5, temp, tt)
obj |
An |
conflevel |
The confidence level of the prediction interval. This argument is in decimal form (i.e., 95% is 0.95). |
num.fut.obs |
The number of future observations within a batch at the future time point. |
temp |
The temperature level at which predictions are to be made. |
tt |
The future time point where prediction is desired. |
Returns a vector containing the lower and upper bounds of the prediction interval.
This function only works with an object resulted from ML approach.
Y. Hong, C. B. King, Y. Xie, J. H. Van Mullekom, S. P. Dehart, and P. A. DeFeo (2014). “A Comparison of Least Squares and Maximum Likelihood Approaches to Estimating Thermal Indices for Polymeric Materials,” Journal of Quality Technology, in press, 2016.
A dataset from Escobar et al. (2003) containing the results of an accelerated destructive degradation testing on the strength of an adhesive bond.
data(AdhesiveBondB)
data(AdhesiveBondB)
A data frame with 82 observations on the following 3 variables.
TempC
Temperature.
TimeH
Time in hours.
Response
Strength (Newtons).
L. A. Escobar, W. Q. Meeker, D. L. Kugler, and L. L. Kramer, “Accelerated destructive degradation tests: Data, models, and analysis,” in Mathematical and Statistical Methods in Reliability, B. H. Lindqvist and K. A. Doksum, Eds. River Edge, NJ: World Scientific Publishing Company, 2003, ch. 21.
A dataset from Xie al. (2015) Strength was tested at 40, 50, and 60 degree C.
data(AdhesiveFormulationK)
data(AdhesiveFormulationK)
A data frame with 101 observations on the following 3 variables.
TempC
Temperature.
TimeH
Time in hours.
Response
Strength (Newtons).
Y. Xie, C. B. King, Y. Hong, and Q. Yang (2015). Semiparametric Models for Accelerated Destructive Degradation Test Data Analysis. Preprint: arXiv:1512.03036.
Provides graphical tools for ADDT analysis.
## S3 method for class 'addt.fit' plot(x, type, ...)
## S3 method for class 'addt.fit' plot(x, type, ...)
x |
An addt.fit object. |
type |
Type of plot ("data", "ML", "LS", "SEMI") to be generated. If type="data", a scatter plot of the dataset in addt.fit object is generated. If type="ML", a plot of data along with the results of ML approach is produced. If type="LS", the polynominal fit to the data is plotted. If type="SEMI", the semi-parametric fit to the data is plotted. |
... |
Optional arguments. |
A dataset from Tsai et al. (2013) conducting a study on the tensile strength of a new type of polymer material.
data(PolymerY)
data(PolymerY)
A data frame with 76 observations on the following 3 variables.
TempC
Temperature.
TimeH
Time in hours.
Response
Strength (Newtons).
Tsai, C.-C., S.-T. Tseng, N. Balakrishnan, and C.-T. Lin (2013). Optimal design for accelerated destructive degradation tests. Quality Technology and Quantitative Management 10, 263-276.
Seal Strength dataset presented in Li and Doganaksoy (2014).
In the R package ADDT, Seal Strength dataset has minor modifications where the temperature at time point 0 is changed to 200 degree where in the original dataset, it is 100 degree. This is a computing trick that will not affect the model results.
data(SealStrength)
data(SealStrength)
A data frame with 210 observations on the following 3 variables.
TempC
Temperature.
TimeH
Time in hours.
Response
Strength (Newtons)
Seal strength dataset is collected under an experiment of testing the strength of a new seal.
M. Li, and N. Doganaksoy (2014). Batch variability in accelerated-degradation testing. Journal of Quality Technology 46, 171-180.
Provides a brief summary of an addt.fit object.
## S3 method for class 'addt.fit' summary(object, ...)
## S3 method for class 'addt.fit' summary(object, ...)
object |
An |
... |
Optional arguments. |
Returns a list whose items vary depending on which procedure was used in addt.fit. If proc="ML", then the output has the following items:
coef.mle.mat |
A matrix giving the estimated coefficients, their standard errors, and the lower and upper bounds of a 95% confidence interval. |
ti.CI |
The estimated thermal index of the material, its standard error, and 95% confidence interval. |
logLik |
The maximum log-likelihood value achieved. |
If proc="LS", the output has the following items:
coefs |
A vector giving the estimated coefficients for the time-temperature line. |
TI |
The estimated thermal index of the material. |
interp.time |
A matrix contains the interpolated time at the failure.threshold specified for each temperature level. |
If proc="SemiPara", the output has the following items:
betahat |
An estimate of our model coefficient under the users chosen setups. |
knots |
Knots used in the B-spline, these are the optimal knots if best.knots=TRUE. |
Loglik |
The maximum log-likelihood value achieved. |
aic |
aic value for the final model. |
aicc |
aicc value for the final model. |
If proc="All", the output will give the preceeding values for all the LS.obj, ML.obj and SemiPara.obj.