Why does xtgee sometimes report that convergence was not achieved?

Title

xtgee reports convergence not achieved

Authors

William Gould, Brian Poi, and Vince Wiggins, StataCorp

Question:

I attempted to fit a model using
xtgee with an
exchangeable correlation matrix but received the message
“exchangeable correlation matrix not positive definite. Convergence
not achieved.” If I used other correlation matrix structures, I
sometimes received a similar error message.

In this FAQ, we assume that you are not getting the
“convergence not achieved” error message because xtgee
has performed the maximum number of iterations. If that limit is being
reached, you should try specifying a higher number in the iterate()
option of xtgee or increase the maximum number of iterations by using
set maxiter.

Background: Exchangeable correlation

Suppose that we want to fit a Gaussian-family, identity link xtgee
model with exchangeable correlation; i.e.,

Negative-correlation matrices

Correlation matrices must be positive definite or at least positive
semidefinite. That sounds arcane, but it has important implications.
Consider the matrix

+- -+
| 1 -.8 -.8 |
| -.8 1 -.8 |
| -.8 -.8 1 |
+- -+

The above matrix is not positive definite; its determinant is -1.944.

Therefore, it cannot be a correlation matrix. Try all you want, but
you cannot generate data for three variables with the above correlations.

This outcome should not surprise you. Rather than -.8, let’s use -1:

+- -+
| 1 -1 -1 |
| -1 1 -1 |
| -1 -1 1 |
+- -+

You cannot create three variables correlated like this. If x1
and x2 are correlated -1, and x2 and x3 are correlated -1, x1 and x3 have to
be correlated +1. Said mathematically: the above matrix is not positive
definite.

So p = -1 does not work and p = -.8 does not
work. Do any negative numbers work? Yes. For a 3 x 3 matrix,
p > -.5 produces a positive-definite matrix, i.e., a valid
correlation matrix.

For 4 x 4 matrices, the cutoff is -.333.... If p > -.333..., it is a
valid correlation matrix, and if p ≤ -.3333..., it is not.

Application to GEE model

that is, what GEE modelers call an exchangeable correlation matrix with
p < 0, there is a limit as to how negative p can be. That
limit is a function of n, the number of observations within panels
(which is equal to the number of rows and columns of the correlation
matrix).

If you have data generated by an exchangeable correlation process with
p < 0, there are limits on p. If the maximum panel size in
your data is 11, then p must be greater than -.1. If the
maximum panel is 11 but you know that larger panels exist in the population,
and that maximum theoretical size is 101, then p must be
greater than -.01. If you think that the panel size is unlimited, then p
must be greater than (or equal to) 0. Moreover, the exchangeable model
makes little sense when p < 0 unless maximum possible panel sizes
are fixed, say, at 2, 3, or 10.

With some datasets, xtgee wants to converge to a p that is too
negative, rendering the exchangeable correlation matrix to be non–positive
definite and hence invalid. The ado-file update issued in October 2006
modified xtgee to warn the user in such cases. If p is too
negative, you will see

In that ado-file update, we also modified xtgee to reset p
during iterations to be just inside the minimum boundary implied by the
observed maximum panel size, which should help models that can converge to
do so. However, for some datasets, xtgee wants to converge to an
invalid set of parameters, and the exchangeable assumption is simply
untenable.

The problem of non–positive-definite correlation matrices can arise
with some other correlation structures as well. They can arise in the
unstructured, stationary, and nonstationary cases, although they cannot
arise for autoregressive and independent correlation matrices. The changes
we have made apply in those cases, too.