Suvarna Garge (Editor)

German tank problem

Updated on
Edit
Like
Comment
Share on FacebookTweet on TwitterShare on LinkedInShare on Reddit
German tank problem

In the statistical theory of estimation, the German tank problem involves estimating the maximum of a discrete uniform distribution from sampling without replacement. It is named from its application in World War II to the estimation of the number of German tanks.

Contents

This analysis shows the approach that was used and illustrates the difference between frequentist inference and Bayesian inference.

Estimating the population maximum based on a single sample yields divergent results, while the estimation based on multiple samples is an instructive practical estimation question whose answer is simple but not obvious.

Example

Suppose k = 4 tanks with serial numbers 19, 40, 42 and 60 are captured. The maximal observed serial number, m = 60. The unknown total number of tanks is called N.

The formula for estimating the total number of tanks suggested by the frequentist approach outlined below is

N m + m k 1 = 74 ,

whereas the Bayesian analysis below yields (primarily) a probability mass function for the number of tanks

Pr ( N = n ) = { 0 if  n < m k 1 k ( m 1 k 1 ) ( n k ) if  n m ,

from which we can estimate the number of tanks according to

N μ ± σ = 88.5 ± 50.22 , μ = ( m 1 ) k 1 k 2 , σ = ( k 1 ) ( m 1 ) ( m k + 1 ) ( k 3 ) ( k 2 ) 2 .

This distribution has positive skewness, related to the fact that there are at least 60 tanks.

Historical problem

During the course of the war, the Western Allies made sustained efforts to determine the extent of German production and approached this in two major ways: conventional intelligence gathering and statistical estimation. In many cases, statistical analysis substantially improved on conventional intelligence. In some cases, conventional intelligence was used in conjunction with statistical methods, as was the case in estimation of Panther tank production just prior to D-Day.

The allied command structure had thought the Panzer V (Panther) tanks seen in Italy, with their high velocity, long-barreled 75 mm/L70 guns, were unusual heavy tanks and would only be seen in northern France in small numbers, much the same way as the Tiger I was seen in Tunisia. The US Army was confident that the Sherman tank would continue to perform well, as it had versus the Panzer III and Panzer IV tanks in North Africa and Sicily. Shortly before D-Day, rumors indicated that large numbers of Panzer V tanks were being used.

To determine whether this was true, the Allies attempted to estimate the number of tanks being produced. To do this, they used the serial numbers on captured or destroyed tanks. The principal numbers used were gearbox numbers, as these fell in two unbroken sequences. Chassis and engine numbers were also used, though their use was more complicated. Various other components were used to cross-check the analysis. Similar analyses were done on tires, which were observed to be sequentially numbered (i.e., 1, 2, 3, ..., N).

The analysis of tank wheels yielded an estimate for the number of wheel molds that were in use. A discussion with British road wheel makers then estimated the number of wheels that could be produced from this many molds, which yielded the number of tanks that were being produced each month. Analysis of wheels from two tanks (32 road wheels each, 64 road wheels total) yielded an estimate of 270 tanks produced in February 1944, substantially more than had previously been suspected.

German records after the war showed production for the month of February 1944 was 276. The statistical approach proved to be far more accurate than conventional intelligence methods, and the phrase "German tank problem" became accepted as a descriptor for this type of statistical analysis.

Estimating production was not the only use of this serial-number analysis. It was also used to understand German production more generally, including number of factories, relative importance of factories, length of supply chain (based on lag between production and use), changes in production, and use of resources such as rubber.

Specific data

According to conventional Allied intelligence estimates, the Germans were producing around 1,400 tanks a month between June 1940 and September 1942. Applying the formula below to the serial numbers of captured tanks, the number was calculated to be 256 a month. After the war, captured German production figures from the ministry of Albert Speer showed the actual number to be 255.

Estimates for some specific months are given as:

Similar analyses

Similar serial-number analysis was used for other military equipment during World War II, most successfully for the V-2 rocket.

Factory markings on Soviet military equipment were analyzed during the Korean War, and by German intelligence during World War II.

In the 1980s, some Americans were given access to the production line of Israel's Merkava tanks. The production numbers were classified, but the tanks had serial numbers, allowing estimation of production.

The formula has been used in non-military contexts, for example to estimate the number of Commodore 64 computers built, where the result (12.5 million) matches the low-end estimates.

Countermeasures

To prevent serial-number analysis, serial numbers can be excluded, or usable auxiliary information reduced. Alternatively, serial numbers that resist cryptanalysis can be used, most effectively by randomly choosing numbers without replacement from a list that is much larger than the number of objects produced (compare the one-time pad), or produce random numbers and check them against the list of already assigned numbers; collisions are likely to occur unless the number of digits possible is more than twice the number of digits in the number of objects produced (where the serial number can be in any base); see birthday problem. For this, a cryptographically secure pseudorandom number generator may be used. All these methods require a lookup table (or breaking the cypher) to back out from serial number to production order, which complicates use of serial numbers: a range of serial numbers cannot be recalled, for instance, but each must be looked up individually, or a list generated.

Alternatively, sequential serial numbers can be encrypted with a simple substitution cipher, which allows easy decoding, but is also easily broken by a known-plaintext attack: even if starting from an arbitrary point, the plaintext has a pattern (namely, numbers are in sequence). One example is given in Ken Follett's novel "Code to Zero", where the encryption of the Jupiter-C rocket serial numbers is described as:

The code word here is Huntsville (with repeated letters omitted) to get a 10-letter key. The rocket number 13 was therefore "HN", or the rocket number 24 was "UT".

Strong encryption of serial numbers without expanding them can be achieved with format-preserving encryption. Instead of storing a truly random permutation on the set of all possible serial numbers in a large table, such algorithms will derive a pseudo-random permutation from a secret key. Security can then be defined as the pseudo-random permutation being indistinguishable from a truly random permutation to an attacker who doesn't know the key.

Minimum-variance unbiased estimator

For point estimation (estimating a single value for the total, N ^ ), the minimum-variance unbiased estimator (MVUE, or UMVU estimator) is given by:

N ^ = m ( 1 + k 1 ) 1 ,

where m is the largest serial number observed (sample maximum) and k is the number of tanks observed (sample size). Note that once a serial number has been observed, it is no longer in the pool and will not be observed again.

This has a variance

Var ( N ^ ) = 1 k ( N k ) ( N + 1 ) ( k + 2 ) N 2 k 2  for small samples  k N ,

so the standard deviation is approximately N/k, the average size of the gap between samples; compare m/k above.

Intuition

The formula may be understood intuitively as the sample maximum plus the average gap between observations in the sample, the sample maximum being chosen as the initial estimator, due to being the maximum likelihood estimator, with the gap being added to compensate for the negative bias of the sample maximum as an estimator for the population maximum, and written as

N ^ = m + m k k = m + m k 1 1 = m ( 1 + k 1 ) 1.

This can be visualized by imagining that the samples are evenly spaced throughout the range, with additional samples just outside the range at 0 and N + 1. If starting with an initial gap between 0 and the lowest sample (sample minimum), the average gap between samples is ( m k ) / k ; the k being because the samples themselves are not counted in computing the gap between samples.

This philosophy is formalized and generalized in the method of maximum spacing estimation; a similar heuristic is used for plotting position in a Q–Q plot, plotting sample points at k / (n + 1), which is evenly on the uniform distribution, with a gap at the end.

Derivation

For any integer m such that k ≤ m ≤ N, the probability that the sample maximum will be equal to m is given by ( ( m k ) ( m 1 k ) ) / ( N k ) = ( m 1 k 1 ) / ( N k ) , where ( ) is the binomial coefficient.

Given the total number N and the sample size k, the expected value of the sample maximum is

μ = E ( m ) = m = k N m ( m 1 k 1 ) ( N k ) = k ( N + 1 ) k + 1 .

From this, the unknown quantity N can be expressed in terms of expectation and sample size as

N = μ ( 1 + k 1 ) 1.

By linearity of the expectation, it is obtained that

μ ( 1 + k 1 ) 1 = E [ m ( 1 + k 1 ) 1 ] ,

and so an unbiased estimator of N is obtained by replacing the expectation with the observation, so that

N ^ = m ( 1 + k 1 ) 1.

To show that this is the UMVU estimator:

  • First, show that the sample maximum is a sufficient statistic for the population maximum, using a method similar to that detailed at sufficiency: uniform distribution (but for the German tank problem we must exclude the outcomes in which a serial number occurs twice in the sample).
  • Next, show that it is a complete statistic.
  • Then the Lehmann–Scheffé theorem states that the sample maximum, corrected for bias as above to be unbiased, is the UMVU estimator.
  • Confidence intervals

    Instead of, or in addition to, point estimation, interval estimation can be carried out, such as confidence intervals. These are easily computed, based on the observation that the probability that k samples will fall in an interval covering p of the range (0 ≤ p ≤ 1) is pk (assuming in this section that draws are with replacement, to simplify computations; if draws are without replacement, this overstates the likelihood, and intervals will be overly conservative).

    Thus the sampling distribution of the quantile of the sample maximum is the graph x1/k from 0 to 1: the p-th to q-th quantile of the sample maximum m are the interval [p1/kNq1/kN]. Inverting this yields the corresponding confidence interval for the population maximum of [m/q1/km/p1/k].

    For example, taking the symmetric 95% interval p = 2.5% and q = 97.5% for k = 5 yields 0.0251/5 ≈ 0.48, 0.9751/5 ≈ 0.995, so the confidence interval is approximately [1.005m, 2.08m]. The lower bound is very close to m, thus more informative is the asymmetric confidence interval from p = 5% to 100%; for k = 5 this yields 0.051/5 ≈ 0.55 and the interval [m, 1.82m].

    More generally, the (downward biased) 95% confidence interval is [m, m/0.051/k] = [m, m·201/k]. For a range of k values, with the UMVU point estimator (plus 1 for legibility) for reference, this yields:

    Immediate observations are:

  • For small sample sizes, the confidence interval is very wide, reflecting great uncertainty in the estimate.
  • The range shrinks rapidly, reflecting the exponentially decaying likelihood that all samples will be significantly below the maximum.
  • The confidence interval exhibits positive skew, as N can never be below the sample maximum, but can potentially be arbitrarily high above it.
  • Note that m/k cannot be used naively (or rather (m + m/k − 1)/k) as an estimate of the standard error SE, as the standard error of an estimator is based on the population maximum (a parameter), and using an estimate to estimate the error in that very estimate is circular reasoning.

    In some fields, notably futurology, estimation of confidence intervals in this way, based on a single sample – considering it as a randomly sampled quantile (by mediocrity principle) – is known as the Copernican principle. This is particularly applied to estimate lifetimes based on current age, notably in the doomsday argument, which applies it to estimate the expected survival time of the human race.

    Bayesian analysis

    The Bayesian approach to the German tank problem is to consider the credibility ( N = n M = m , K = k ) that the number of enemy tanks N is equal to the number n , when the number of observed tanks, K is equal to the number k , and the maximum serial number M is equal to the number m . The answer to this problem depends on the choice of prior for N . One can proceed using a proper prior, e.g., the Poisson or Negative Binomial distribution, where closed formula for the posterior mean and posterior variance can be obtained. An alternative is to proceed using direct calculations as shown below.

    For brevity, in what follows, ( N = n M = m , K = k ) is written ( n m , k )

    Conditional probability

    The rule for conditional probability gives

    ( n m , k ) ( m k ) = ( m n , k ) ( n k ) = ( m , n k )

    Probability of M knowing N and K

    The expression

    ( m n , k ) = ( M = m N = n , K = k )

    is the conditional probability that the maximum serial number observed, M, is equal to m, when the number of enemy tanks, N, is known to be equal to n, and the number of enemy tanks observed, K, is known to be equal to k.

    It is

    ( m n , k ) = ( m 1 k 1 ) ( n k ) 1 [ k m ] [ m n ]

    where ( n k ) is a binomial coefficient and [ k n ] is an Iverson bracket.

    Probability of M knowing only K

    The expression ( m k ) = ( M = m K = k ) is the probability that the maximum serial number is equal to m once k tanks have been observed but before the serial numbers have actually been observed.

    The expression ( m k ) can be re-written in terms of the other quantities by marginalizing over all possible n .

    ( m k ) = ( m k ) 1 = ( m k ) n = 0 ( n m , k ) = ( m k ) n = 0 ( m n , k ) ( n k ) ( m k ) = n = 0 ( m n , k ) ( n k )

    Credibility of N knowing only K

    The expression

    ( n k ) = ( N = n K = k )

    is the credibility that the total number of tanks, N, is equal to n when the number K tanks observed is known to be k, but before the serial numbers have been observed. Assume that it is some discrete uniform distribution

    ( n k ) = ( Ω k ) 1 [ k n ] [ n < Ω ]

    The upper limit Ω must be finite, because the function

    f ( n ) = lim Ω ( Ω k ) 1 [ k n ] [ n < Ω ] = 0

    is not a mass distribution function.

    Credibility of N knowing M and K

    ( n m , k ) = ( m n , k ) ( n = m Ω 1 ( m n , k ) ) 1 [ m n ] [ n < Ω ]

    If k ≥ 2, then n = m ( m n , k ) < , and the unwelcome variable Ω disappears from the expression.

    ( n m , k ) = ( m n , k ) ( n = m ( m n , k ) ) 1 [ m n ]

    For k ≥ 1 the mode of the distribution of the number of enemy tanks is m.

    For k ≥ 2, the credibility that the number of enemy tanks is equal to n , is

    ( N = n m , k ) = ( k 1 ) ( m 1 k 1 ) k 1 ( n k ) 1 [ m n ]

    The credibility that the number of enemy tanks, N, is greater than n, is

    ( N > n m , k ) = { 1 if  n < m ( m 1 k 1 ) ( n k 1 ) if  n m

    Mean value and standard deviation

    For k ≥ 3, N has the finite mean value:

    ( m 1 ) ( k 1 ) ( k 2 ) 1

    For k ≥ 4, N has the finite standard deviation:

    ( k 1 ) 1 / 2 ( k 2 ) 1 ( k 3 ) 1 / 2 ( m 1 ) 1 / 2 ( m + 1 k ) 1 / 2

    These formulas are derived below.

    Summation formula

    The following binomial coefficient identity is used below for simplifying series relating to the German Tank Problem.

    n = m 1 ( n k ) = k k 1 1 ( m 1 k 1 )

    This sum formula is somewhat analogous to the integral formula

    n = m d n n k = 1 k 1 1 m k 1

    These formulas apply for k > 1.

    One tank

    Observing one tank randomly out of a population of n tanks gives the serial number m with probability 1/n for m ≤ n, and zero probability for m > n. Using Iverson bracket notation this is written

    ( M = m N = n , K = 1 ) = ( m n ) = [ m n ] n

    This is the conditional probability mass distribution function of m .

    When considered a function of n for fixed m this is a likelihood function.

    L ( n ) = [ n m ] n

    The maximum likelihood estimate for the total number of tanks is N0 = m.

    The total likelihood is infinite, being a tail of the harmonic series.

    n L ( n ) = n = m 1 n =

    but

    n L ( n ) [ n < Ω ] = n = m Ω 1 1 n = H Ω 1 H m 1

    where H n is the harmonic number.

    The credibility mass distribution function depends on the prior limit Ω :

    ( N = n M = m , K = 1 ) = ( n m ) = [ m n ] n [ n < Ω ] H Ω 1 H m 1

    The mean value of N is

    n n ( n m ) = n = m Ω 1 1 H Ω 1 H m 1 = Ω m H Ω 1 H m 1 Ω m log ( Ω 1 m 1 )

    Two tanks

    If two tanks rather than one are observed, then the probability that the larger of the observed two serial numbers is equal to m, is

    ( M = m N = n , K = 2 ) = ( m n ) = [ m n ] m 1 ( n 2 )

    When considered a function of n for fixed m this is a likelihood function

    L ( n ) = [ n m ] m 1 ( n 2 )

    The total likelihood is

    n L ( n ) = m 1 1 n = m 1 ( n 2 ) = m 1 1 2 2 1 1 ( m 1 2 1 ) = 2

    and the credibility mass distribution function is

    ( N = n M = m , K = 2 ) = ( n m ) = L ( n ) n L ( n ) = [ n m ] m 1 n ( n 1 )

    The median N ~ satisfies

    n [ n N ~ ] ( n m ) = 1 2

    so

    m 1 N ~ 1 = 1 2

    and so the median is

    N ~ = 2 m 1

    but the mean value of N is infinite

    μ = n n ( n m ) = m 1 1 n = m 1 n 1 =

    Credibility mass distribution function

    The conditional probability that the largest of k observations taken from the serial numbers {1,...,n}, is equal to m, is

    ( M = m N = n , K = k 2 ) = ( m n , k ) = [ m n ] ( m 1 k 1 ) ( n k )

    The likelihood function of n is the same expression

    L ( n ) = [ n m ] ( m 1 k 1 ) ( n k )

    The total likelihood is finite for k ≥ 2:

    n L ( n ) = ( m 1 k 1 ) 1 n = m 1 ( n k ) = ( m 1 k 1 ) 1 k k 1 1 ( m 1 k 1 ) = k k 1

    The credibility mass distribution function is

    ( N = n M = m , K = k 2 ) = ( n m , k ) = L ( n ) n L ( n ) = [ n m ] k 1 k ( m 1 k 1 ) ( n k ) = [ n m ] m 1 n ( m 2 k 2 ) ( n 1 k 1 ) = [ n m ] m 1 n m 2 n 1 k 1 k 2 ( m 3 k 3 ) ( n 2 k 2 )

    The complementary cumulative distribution function is the credibility that N > x

    ( N > x M = m , K = k ) = { 1 if  x < m n = x + 1 ( n m , k ) if  x m = [ x < m ] + [ x m ] n = x + 1 k 1 k ( m 1 k 1 ) ( N k ) = [ x < m ] + [ x m ] k 1 k ( m 1 k 1 ) 1 n = x + 1 1 ( n k ) = [ x < m ] + [ x m ] k 1 k ( m 1 k 1 ) 1 k k 1 1 ( x k 1 ) = [ x < m ] + [ x m ] ( m 1 k 1 ) ( x k 1 )

    The cumulative distribution function is the credibility that Nx

    ( N x M = m , K = k ) = 1 ( N > x M = m , K = k ) = [ x m ] ( 1 ( m 1 k 1 ) ( x k 1 ) )

    Order of magnitude

    The order of magnitude of the number of enemy tanks is

    μ = n n ( N = n M = m , K = k ) = n n [ n m ] m 1 n ( m 2 k 2 ) ( n 1 k 1 ) = m 1 1 ( m 2 k 2 ) 1 n = m 1 ( n 1 k 1 ) = m 1 1 ( m 2 k 2 ) 1 k 1 k 2 1 ( m 2 k 2 ) = m 1 1 k 1 k 2

    Statistical uncertainty

    The statistical uncertainty is the standard deviation σ, satisfying the equation

    σ 2 + μ 2 = n n 2 ( N = n M = m , K = k )

    So

    σ 2 + μ 2 μ = n n ( n 1 ) ( N = n M = m , K = k ) = n = m n ( n 1 ) m 1 n m 2 n 1 k 1 k 2 ( m 3 k 3 ) ( n 2 k 2 ) = m 1 1 m 2 1 k 1 k 2 ( m 3 k 3 ) 1 n = m 1 ( n 2 k 2 ) = m 1 1 m 2 1 k 1 k 2 ( m 3 k 3 ) 1 k 2 k 3 1 ( m 3 k 3 ) = m 1 1 m 2 1 k 1 k 3

    and

    σ = m 1 1 m 2 1 k 1 k 3 + μ μ 2 = ( k 1 ) ( m 1 ) ( m k + 1 ) ( k 3 ) ( k 2 ) 2

    The variance-to-mean ratio is simply

    σ 2 μ = m k + 1 ( k 3 ) ( k 2 )

    References

    German tank problem Wikipedia