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.[1] 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.[2] 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
[edit | edit source]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
[edit | edit source]- 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.[3]
- MATLAB provides multiple estimation methods in their nlmefit system.[4]
SPSS at the moment does not support non-linear mixed effects methods.[5]
Software dedicated to a single estimation method
[edit | edit source]- 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
[edit | edit source]The field of pharmacometrics relies heavily on nonlinear mixed effects approaches and therefore uses specialized software approaches.[6] 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
[edit | edit source]- NONMEM is the most widely used software in the field of pharmacometics.[6]
- Phoenix implements multiple estimation methods in a graphical user interface.[7]
- Pumas implements multiple estimation methods in the julia language.[7]
- nlmixr/nlmixr2 is a suite interfaced in R that implements FOCE and SAEM.[8]
- ADAPT and S-ADAPT implement multiple estimation methods in a graphical or scripting interface, respectively.[7]
Software dedicated to a single estimation method
[edit | edit source]- Monolix is a powerful implementation of SAEM which also can parse NMTRAN.[7]
- NPEM implements non-parametric mixed effects.[7]
Related software
[edit | edit source]- 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.[7]
References
[edit | edit source]- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ a b c d e f Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
- ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).