From:"Ludden, Thomas" 
Subject:[NMusers] NONMEM Wish List
Date:Fri, 24 May 2002 09:07:32 -0400

To the NONMEM Users Network:

The GloboMax NONMEM Project Team and the UCSF NONMEM Project Group are
soliciting your thoughts and ideas regarding future enhancements to the
NONMEM software program and to related software and associated support
services.   To stimulate your input, a list of possible enhancements has
been compiled.  Please send us an indication of the 3 or 4 items from this
list to which you would have us give highest priority.  We also ask you to
provide additional items which you would have us consider for inclusion in a
future version of NONMEM or GloboMax's interface PDx-POP, and most
importantly, with all items you describe or prioritize, would you please
provide a brief rationale and/or brief description of a situation that
exemplifies the desirability for the item.  It would also be helpful if you
would indicate the operating system and Fortran compiler that you currently
use with NONMEM.

Certain items may be addressed by enhancements in NONMEM version VI,
currently under development at UCSF.  Other may be accomplished through the
development of the PDx-POP interface or later versions of NONMEM beyond VI.

This is an opportunity for you to help guide this future development.
Please take a few minutes to respond to the above request.  Responses can be
sent directly to us ( or  We
will organize the responses and provide feedback to the network.  This
feedback will include the identity of the responder unless there is a
request for anonymity.

Many users have contributed to this list by volunteering their requests to
the GloboMax NONMEM Project Team.  We wish to sincerely thank these
individuals for their interest.

We also thank you in advance for taking time to review this list and to
provide your own requests and priorities.


Tom Ludden and Bill Bachman
GloboMax NONMEM Project Team

I.  Software enhancements.
        A.  Input
                1. Libraries of control files that can serve as templates
for further customization by the user.  These might be made available via
menus.  Eventual interface features might include a menu-based or graphical
model development environment.
                2. Facilitate the analysis of log-transformed data.
                3. Allow the ID item to be alphanumeric with expanded number
of characters.
                4. Remove case-sensitivity for NM-TRAN control streams.
                5. Make tabs acceptable in control streams and data files.
                6. Allow specification of a symbol/value for missing data.
Help the user to recognize that missing data must be handled in the NM-TRAN
control stream.  Missing data in output tables would be identified by a
user-selectable symbol.
                7. Provide a way to use meaningful, user-specified variable
names instead of THETA's, ETA's/OMEGA's, ERR and EPS/SIGMA to specify a
model and the initial parameter estimates.  The relationship between
user-specified variable names and NONMEM variable names would be part of the
summary output from the interface.  This would allow the interpretation of
any error messages generated by NMTRAN, NONMEM, and PREDPP.
                8. Provide a mechanism by which the data files submitted to
the PDx-POP interface do not need to be modified for modeling purposes.  The
interface would use separate files containing 1) dosing information, 2)
covariate information and 3) dependent variables, each indexed by ID, DATE,
TIME and appropriate indicator variables to distinguish different dosing
routes, PK vs PD observations, etc.
                9. Develop a separate utility that would facilitate the
assembly of NMTRAN data sets (This would not necessarily address the issue
described in item 8).
                10.  Provide a utility feature that facilitates changes to
NSIZES, PSIZES, etc.  These files specify various constants used to control
the size of arrays in NONMEM, PREDPP and NMTRAN
                11.  Using the PDx-POP interface, facilitate the
implementation of interoccasion variability.
                12.  Provide a way to define initial conditions for
compartments within the NM-TRAN control stream.
                13.  Provide better documentation for the use of the CONT
data item to allow more than 20 data items/event record.
                14.  Users frequently have the intermediate NONMEM output,
which contains scaled, transformed parameter, printed to the screen in order
to track program execution. It would be possible to have the PDx-POP
interface automatically display the INTER file, in addition to the
intermediate output, to track program execution.
                15.  Provide interpretation of gradients.  Alert the user to
potential problems both at the beginning and end of a problem.   For
example, a zero gradient for a parameter at the 0'th iteration would
generate an error message; large gradients at the end of a "Successful"
termination would yield a warning message. 
                16.  Provide more help in NMTRAN for defining recursive
models using $PRED.  For a recursive model, the predictions and derivatives
at a specific event record depend upon the predictions and derivatives from
the previous event record.
                17.  Provide a root finder that can be called by
user-specified NM-TRAN code.
                18.  Provide user-friendly interfaces for new, special
features that may become available in the future.
19.     Automatically compute certain items such as IPRED,IRES, IWRES, etc
if they are tabled or plotted. 

        B.  Output
                1. Use flexible, user-selectable, formatting that gives the
user control of the number of digits reported and provides output formatted
for reports and tables. 
                2. Provide more extensive and helpful discussion of error
                3. If OMEGA or SIGMA are not diagonal matrices, provide
correlations in the summary.
                4. Provide easy access to post-run processing software such
as EXCEL, SPLUS, Xpose and SAS.  (Access to EXCEL, SPLUS and Xpose is
currently available through PDx-POP for Windows).
                5. Provide an intermediate output file with more information
than is currently available in the INTER file.
                6.  The meaning of the reserved label PRED, appearing in
NONMEM tables and scatterplots, would be used only when the LIKELIHOOD or
-2LL options are not used.  When these options are used, another label would

        C  Functionality and Control
                1.  Improve processes for performing iterative calls to
NONMEM and for summarizing the desired output.  Iterative calls can
currently be implemented through the use of superproblems and subproblems.
Ways to facilitate the iterative calls needed for procedures such as
likelihood profiling and the bootstrap are being considered.    

                2.  Improve guidance for selection of estimation method.  
                3.  Provide a broader choice of distributions for
                4.  Prevent premature termination during superproblem or
subproblem iterations.
                5.  Expand the PREDPP library to include PD models. 
II.  Enhancements only achievable through major changes to NONMEM code and
outside the scope of current development plans.
                1. Obviate need for prespecifying size of arrays.  NONMEM is
written in Fortran 77 and Fortran 77 does not allow dynamic allocation of
memory for arrays.
                2.  Provide a measure of precision for the parameter
estimates for individual subjects.  With a population data set, NONMEM
focuses on the estimation of population parameters, and only from a
frequentist point of view.  NONMEM generates parameter estimates for
individual subjects using an Empirical Bayes approach, but only as means to
approximate the frequentist likelihood of the population parameters, and to
aid in simple model building strategies.  Although, the posterior variance
of an individual's parameter vector can be computed, such a Bayesian
computation is not natural within NONMEM.  Indeed, even the posterior mean
is not computed (it is the posterior mode that is used as the estimate for
the individual's parameter vector).  Has anyone an example of how this
posterior variance can really be useful for the analysis of population data?
                3. Provide for mixture models at the observation level.
(NONMEM currently allows mixture models at the parameter level but not the
observation level.)

III.  Improved User Training and Support
                1. Web-based process for user input regarding NONMEM
                2. Web-based access to Frequently Asked Questions.
                3. Web-based NONMEM Users Guide including example control
streams and data sets created by user input.
                4. Web-based access to patches/bug-fixes.
                5. Web-based access to exemplary data analyses perhaps
through a revitalized repository or electronic journal.
                6. Web-based access to step-by-step instructions for
compiling NONMEM on several common platforms/operating systems.
                7. Web-based access to information regarding choice of
compiler options for various compilers.
                8. Instruction on the use of an appropriate debugger.
                9. Provide a set of interactive tutorials that would be
useful for beginning and intermediate users.

IV. Improved Installation and Testing
                1. Provide for installation of NONMEM source code and
associated files from a CD.
                2. Provide benchmarks and qualification kit.