\documentstyle[12pt]{article}
\begin{document}
\begin{tabbing}
Subject: \= \kill
MEMO \\
To: \> Dave Green \\
From: \> Steve Verrill \\
Date: \> September 10, 2000 \\
Subject: \> Explanation of the Simulation of the Proposed \\
\> ASTM DOL Acceptance Sampling Protocol \\
\end{tabbing}
I assume that there are $n_1$ observations in the unaged sample, that
there are $n_1$ observations in the second sample, and that the second
sample observations are matched (and thus correlated)
with the first sample observations. I assume that
the failure criterion is based on the $i_1$th order statistic from the
first sample, and
that the specimens in the second sample are subjected to a load of $f
\times s$ for 90 days where $f$ is a fraction specified by the program
user and $s$ is the strength of the $i_1$th order
statistic in the first sample. The second sample fails if more
than $i_2$ of the specimens in the second sample break under load
during the course of the test. If there are more than $i_2 + 1$ failures
then the material fails. If there are exactly $i_2 + 1$ failures, then a
third sample of size $n_3$ may be drawn. These specimens are subjected to a new
90 day test at the same load to which the second sample specimens were
subjected. The material then fails the
test if there are more than $i_3$ failures.
The proposed standard is unclear
on how the third sample is to be drawn. Please see the memo titled
``The Proposed ASTM DOL Standard'' for details.
For the purposes of the simulation
program, I chose to assume that the intent was as follows: 28
matched pairs are sampled. The load is determined based on the first
order statistic among the unaged 28. The 28 matched with the 28 that
were broken are now subjected to a 90 day test. If exactly 1 of them
fails then 25 (not matched to anything) additional specimens from the
original population are drawn. These are subject to the same constant
load as those in the first 90 day test. If none of them fail then the
the material passes. Otherwise it fails. (If we first obtained 53
matched pairs, then the load would be based on the 2nd order statistic
of those broken. If exactly 2 specimens failed during the 90 day
trial we would sample an additional 25 [to get up to a
total of 78] unmatched specimens from the original population, and if
none of these failed during a second trial, then the material would
pass. And so on.)
Prior to performing any simulation trials the program calculates a
vector, av, of intercepts, and a corresponding vector, bv, of slopes.
These are calculated as follows:
For a user-specified 90 day
reduction, $r$, between 0 and 1, I assume that the stress ratio
versus ln(median time to failure in hours) curve goes through the points
(ln(.05833),1.0) and (ln(2160),1 - $r$). (.05833 corresponds to a
failure at three and one-half minutes. 2160 corresponds to a failure
at 90 days.) This yields
\begin{equation}
b = -r/(\ln(2160) - \ln(.1))
\end{equation}
and
\begin{equation}
a = 1.0 - b \times \ln(.1) .
\end{equation}
For a material that is on the edge of what the standards drafters
believe is acceptable performance, $r$ would equal 0.45.
\section*{Normal assumption}
For each trial in the simulation the program does the following:
\begin{enumerate}
\item The program generates
a random sample of $n_1$ values from a N(0,1) distribution
and a matched sample of another $n_1$ values. The correlation between
the two groups (a measure of the success of the matching) is user-specified.
\item The program sorts the first $n_1$ values from smallest to largest
and puts them in a vector called sort1.
\item The program sorts the second $n_1$ values from smallest to largest
and puts them in a vector called sort2.
\item If the coefficient of variation under consideration is cv
(expressed as a fraction rather than as a percent), the program
calculates the load (divided by the mean of the strength distribution)
that is applied to the specimens in the second
sample:
\[
\mbox{xload} = f \times (1.0 + \mbox{cv} \times \mbox{sort1}(i_1)) .
\]
where $f$ is a user specified fraction (e.g., .55).
\item For each of the specimens in the second sample it calculates a
stress ratio:
\[
\mbox{strrat}(j) = \mbox{xload}/(1.0 + \mbox{cv} \times \mbox{sort2}(j)) .
\]
Note that the mean of the normal distribution has been divided out in
both the numerator and the denominator of the stress ratio so we don't
have to worry about its value.
\item Given a stress ratio, $sr$, the program calculates the
corresponding value in ln(median time to failure) space by solving
$sr = a + b \times x$ for $x$. Here $a$ and $b$ are the appropriate
values for the user-specified reduction value, $r$ (e.g., 0.45), under
consideration.
(See equations 1 and 2 above.)
\item Next a random value is added to $x$ to simulate the distribution
of ln(time to failure) for a fixed stress ratio. The value added to
$x$ is $1.57 \times \mbox{rnor}$ where rnor is generated from a
N(0,1) distribution and is different for every specimen in the second
sample. The 1.57 value needs to be explained. From a plot
of Wood's 1947 data in Chuck Gerhards' ``Effect of Duration and Rate of Loading
on Strength of Wood and Wood-based Materials'' one can determine that
the standard deviation of time to failure in ln(hours to failure)
units is approximately 1.57. (I assumed that the times to failure
were lognormally distributed. This implies that ln(time to failure)
is normally distributed.
I then used data in the plot [for fixed
stress ratios] and the known relationship between
range and standard deviation [see, for example, Table 3.8 of Ostle and
Mensing's ``Statistics in Research, Third Edition'']
to obtain estimates of the standard deviation. This led to the 1.57
figure.) If $x + 1.57 \times \mbox{rnor}$ is less than ln(length of
the test in hours) = ln(2160), then the specimen is taken to have
failed under load.
\item If the number of failed specimens is
greater than $i_2 + 1$ then the material is taken to have failed in that
trial.
\item If the number of failed specimens is exactly equal to $i_2 + 1$ and
the user has specified an $n_3$ greater than 0, then an additional
$n_3$ specimens are drawn from a N(0,1) distribution. (If
the number of failed specimens is exactly equal to $i_2 + 1$ and
$n_3$ is
equal to 0, then a third sample is not taken and the material has
failed the trial.) They are then
treated as in steps 5 -- 7 above. If there are more than $i_3$
failed specimens among the $n_3$, then the material is taken to have
failed in the trial.
\end{enumerate}
The probability of failure of the material for the cv and $r$
under consideration is calculated as
\[
\mbox{(number of failed trials)/(total number of trials).}
\]
\section*{Lognormal assumption}
For each trial in the simulation the program does the following:
\begin{enumerate}
\item The program generates
a random sample of $n_1$ values from a N(0,1) distribution
and a matched sample of another $n_1$ values. The correlation between
the two groups (a measure of the success of the matching) is user-specified.
\item The program sorts the first $n_1$ values from smallest to largest
and puts them in a vector called sort1.
\item The program sorts the second $n_1$ values from smallest to largest
and puts them in a vector called sort2.
\item If the coefficient of variation under consideration is cv, the program
calculates the load (divided by $\exp(\mu)$ --- see below)
that is applied to the specimens in the second
sample:
\[
\mbox{xload} = \exp(\ln(f) + \sigma \times \mbox{sort1}(i_1))
\]
where $f$ is a user-specified fraction (e.g., .55) and $\sigma$ is given by
\[
\sigma = \sqrt{\ln(\mbox{cv}^2 + 1)} .
\]
(It is known that if X is distributed lognormally with coefficient of
variation cv, then the variance of ln(X) is $\ln(\mbox{cv}^2 + 1)$.)
\item For each of the specimens in the second sample it calculates a
stress ratio:
\[
\mbox{strrat}(j) = \mbox{xload}/\exp(\sigma \times \mbox{sort2}(j)).
\]
Note that $\exp(\mu)$ (where $\mu$ is the mean of the natural log of
the strength values) has been divided out in both the
the numerator and the denominator of the stress ratio so we don't
have to worry about its value.
\item Given a stress ratio, $sr$, the program calculates the
corresponding value in ln(median time to failure) space by solving
$sr = a + b \times x$ for $x$. Here $a$ and $b$ are the appropriate
values for the reduction value, $r$ (e.g., 0.45), under consideration. (See
equations 1 and 2 above.)
\item Next a random value is added to $x$ to simulate the distribution
of ln(time to failure) for a fixed stress ratio. The value added to
$x$ is $1.57 \times \mbox{rnor}$ where rnor is generated from a
N(0,1) distribution and is different for every specimen in the second
sample. (The 1.57 value is explained in the normal theory section above.)
If $x + 1.57 \times \mbox{rnor}$ is less than ln(length of
the test in hours) = ln(2160), then the specimen is taken to have
failed under load.
\item If the number of failed specimens is
greater than $i_2 + 1$ then the material is taken to have failed in that
trial.
\item If the number of failed specimens is exactly equal to $i_2 + 1$ and
the user has specified an $n_3$ greater than 0, then an additional
$n_3$ specimens are drawn from a N(0,1) distribution. (If
the number of failed specimens is exactly equal to $i_2 + 1$ and
$n_3$ is
equal to 0, then a third sample is not taken and the material has
failed the trial.) They are then
treated as in steps 5 -- 7 above. If there are more than $i_3$
failed specimens among the $n_3$, then the material is taken to have
failed in the trial.
\end{enumerate}
The probability of failure of the material for the cv and $r$
under consideration is calculated as
\[
\mbox{(number of failed trials)/(total number of trials).}
\]
\section*{Program listing}
A listing of the FORTRAN program that performs the simulation can be
viewed via a link at the top of the
http://www1.fpl.fs.fed.us/astm900.html page.
\end{document}