# Non-linear mixed-effects modeling software

Nonlinear mixed-effects models are a special case of regression analysis for which a range of different software solutions are available. The statistical properties of nonlinear mixed-effects models make direct estimation by a BLUE estimator impossible. Nonlinear mixed effects models are therefore estimated according to Maximum Likelihood principles. Specific estimation methods are applied, such as linearization methods as first-order (FO), first-order conditional (FOCE) or the laplacian (LAPL), approximation methods such as iterative-two stage (ITS), importance sampling (IMP), stochastic approximation estimation (SAEM) or direct sampling. A special case is use of non-parametric approaches. Furthermore, estimation in limited or full Bayesian frameworks is performed using the Metropolis-Hastings or the NUTS algorithms. Some software solutions focus on a single estimation method, others cover a range of estimation methods and/or with interfaces for specific use cases.

## General-purpose software

General (use case agnostic) nonlinear mixed effects estimation software can be covering multiple estimation methods or focus on a single.

### Software with multiple estimation methods

* SAS is a package that is used in the wide statistical community and supports multiple estimation methods from PROC NLMIX.
* Multiple estimation methods are available in the R open source software system, such as nlme.
* MATLAB provides multiple estimation methods in their nlmefit system.
SPSS at the moment does not support non-linear mixed effects methods.

### Software dedicated to a single estimation method

* WinBUGS is an implementation of the Metropolis-Hastings method for Bayesian analysis.
* Stan is open source software that implements the NUTS algorithm.

## Software dedicated to pharmacometrics

The field of pharmacometrics relies heavily on nonlinear mixed effects approaches and therefore uses specialized software approaches. As with general-purpose software, implementations of both single or multiple estimation methods are available. This type of software relies heavily on ODE solvers.

### Software with multiple estimation methods

* NONMEM is the most widely used software in the field of pharmacometics.
* Phoenix implements multiple estimation methods in a graphical user interface.
* Pumas implements multiple estimation methods in the julia language.
* nlmixr/nlmixr2 is a suite interfaced in R that implements FOCE and SAEM.
* ADAPT and S-ADAPT implement multiple estimation methods in a graphical or scripting interface, respectively.

### Software dedicated to a single estimation method

* Monolix is a powerful implementation of SAEM which also can parse NMTRAN.
* NPEM implements non-parametric mixed effects.

### Related software

* Efficiency of ODE solvers impacts quality of estimation. Popular solvers are Runge-Kutta based methods, various stiff solvers and switching solvers such as LSODA of the LAPACK suite.
* A specialized form of pharmacokinetics modeling, physiology-based pharmacokinetic (PBPK) modeling can in some cases also be seen as a nonlinear mixed-effects implementation, see also the software section of that lemma.
* Optimal design software such as PopED can be used in conjunction with estimation.