NONMEM's SIGDIG Convergence Criterion
See this page for some discussion of what convergence means.
Stuart Beal decided to use a criterion that all parameters should have >= SIGDIG significant digits. Another criterion could have been an OBJ value that changed by less than FOBJ where FOBJ might be 0.001. I would have preferred the latter criterion because it seems like NONMEM wastes a lot of time crunching through iterations with no reported change in OBJ. I dont believe the parameter estimates are really any better after this activity.
Other similar programs (e.g. WinBugs, Monolix) don't have a convergence criterion but ask the user to decide by looking to see if they have found a fuzzy caterpillar rather then a wiggly worm (strange but true!).
Picking a SIGDIG of 3 is just traditional - like using a Type 1 (alpha) error of 0.05 for hypothesis testing. For convenience, most people use SIGDIG of 3 so they don't have to spend time explaining why they might prefer 2 or 4.
My own preference is 6 because I happened to come across a simple 2 cpt PK problem with NONMEM V that got the right answer (which was known a priori) with SIGDIG=6 but converged prematurely with SIGDIG=3. A SIGDIG of 5 was almost as good as 6 but 4 was wrong but not as bad as 3. NONMEM VI does better than NONMEM V but still terminates prematurely with SIGDIG=3. My conclusion from this one example is that SIGDIG=3 is not a reliable convergence criterion even with NONMEM VI.
The problem used data simulated with a mammillary model but estimation was done with either a mammillary model (mam) or a model which assumed elimination from the peripheral compartment (rec). These models are known to be exactly equivalent but with SIGDIG=3 the OBJ values were clearly different. With SIGDIG=6 the OBJ values were identical.
Intel 9.1 F77 Intel Pentium
METHOD=COND, additive residual error
+ means $COV ran
successfully
ADVAN9 TOL=5
NONMEM V | |||
Run | Obj | Eval | Sig |
mam_mam_6 | -1519.243 | 85 | +6.5 |
mam_rec_6 | -1519.243 | 78 | +6.3 |
mam_mam_5 | -1519.229 | 106 | +5.3 |
mam_rec_5 | -1519.228 | 78 | +5.3 |
mam_mam_4 | -1517.777 | 33 | 3.9 |
mam_rec_4 | -1519.105 | 70 | +4.7 |
mam_mam_3 | -1517.777 | 30 | +4.2 |
mam_rec_3 | -1406.731 | 32 | 2.9 |
NONMEM VI | |||
Run | Obj | Eval | Sig |
mam_rec_6 | -1519.243 | 104 | +8.7 |
mam_mam_6 | -1519.243 | 101 | +6.5 |
mam_rec_5 | -1519.243 | 93 | +5.2 |
mam_mam_5 | -1519.243 | 101 | +5.5 |
mam_rec_4 | -1519.240 | 93 | +4.3 |
mam_mam_4 | -1519.241 | 92 | +4.5 |
mam_rec_3 | -1519.021 | 115 | +3.1 |
mam_mam_3 | -1518.920 | 49 | +3.2 |