Select Page


This page summarizes the frequent questions about Monolix.

Monolox2016R1: Evolutions form Monolix433 and known bug list


  • What is needed for a regulatory submission using Monolix? Monolix is used for regulatory submissions (including the FDA and the EMA) of population PK and PK/PD analyses. The summary of elements needed for submission can be found here.
  • How to cite Monolix2016R1? To cite Monolix, please reference it as here
    Monolix version 2016R1. Antony, France: Lixoft SAS, 2016.

Running Monolix

  • Do I need Matlab to run Monolix? No, there is a stand alone version.
  • On what operating system Monolix run? MonolixSuite runs on Windows, Linux and MacOS platform.
  • Is it possible to run Monolix using a simple command line? Yes, see here.
  • Can I run a batch function to run a list of projects and/or all the projects in a directory? Yes, please see here R and Matlab functions to do that.


  • How to initialize my parameters? There are several ways to initialize your parameters and visualize the impact. See here the different possibilities.


  • Can I define my self the result folder? By default, the result folder corresponds to the project name. However, you can define it by yourself. See here to see how to define it on the user interface.
  • Can I define the output to save (graphics, tables, …)? Yes, see here.
  • What result files are generated by Monolix? Monolix proposes a lot of different output files depending on the tasks done by the user. here is a complete listing of the files along with the condition for creation. See here for more information.
  • Can I replot the graphics using another plotting software? Yes, if you go to the menu Graphics and click on “Export graphics data”, all the data needed to reproduce the graphics are stored in text files.


  • How are the censored data handled? The handling of censored data is described here.
  • How are the parameters without variability handled? The different methods for parameters without variability are explained here.
  • What is the difference between the complete log-likelihood computed and displayed during SAEM and the log-likelihood computed as separate task (by linearization and/or importance sampling)? The log-likelihood is defined as \sum_{i=1}^{N_{\text{ind}}}\log\left(p(y_i;\theta)\right). It is the relevant quantity to compare model, but unfortunately it cannot be computed in closed form because the individual parameters \phi_i are unobserved. Thus, to estimate the log-likelihood an importance sampling Monte Carlo method is used in a separate task (or an approximation is calculated via linearization). To know more on the log-likelihood calculation using linearization or importance sampling, see here. On the contrary, the complete likelihood refers to the joint distribution \sum_{i=1}^{N_{\text{ind}}}\log\left(p(y_i,\phi_i;\theta)\right). By decomposing the terms as p(y_i,\psi_i;\theta)=p(y_i|\psi_i;\theta)p(\psi_i;\theta), we see that this quantity can easily be computed using as \phi_i the individual parameters drawn by MCMC for the current iteration of SAEM. This quantity is calculated at each SAEM step and is useful to assess the convergence of the SAEM algorithm.
  • When estimating the log-likelihood via importance sampling, the estimates does not seem to stabilize. What can I do? The log-likelihood estimator obtained by importance sampling is biased by construction (see here for details). To reduce the bias, the conditional distribution p_{\phi_i|y_i} should be known as well as possible. For this, estimate the individual parameters with the “Cond. means and s.d” option before estimating the log-likelihood.

Model definition

  • Is it possible to use time-varying covariates? Yes, however the covariates relationship must be defined in the model instead of the GUI. See here how to do that.
  • Is it possible to define complex covariate-parameter relationships such as Michaelis-Menten for instance? Yes, this can be done directly in the modle file. See here how to do it.
  • Is it possible to define mixture of structural models? Yes, it may be necessary in some situations to introduce diversity into the structural models themselves using between-subject model mixtures (BSMM) or within-subject model mixtures (WSMM). The handling of mixture of structural models is defined here. Notice that in the case of a BSMM, the proportionbetween groups is a population parameter of the model to estimate. There is no inter-patient variability on p: all the subjects have the same probability and a logit-normal distribution for p  must be used to constrain it to be between 0 and 1 without any variability.
  • Is it possible to define mixture of distributions? Mixture models usually refer to models for which the categorical covariate is unknown, but whichever the case, the structural model is the same. The handling of mixture of structural models is defined here.
  • Can I set bounds on the population parameters for example between a and b? Not directly through the interface. However, you can manage it with the distribution choice and some calculation in the Mlxtran. Indeed, a lognormal distribution will imply a strictly positive parameter, while a logit distribution will imply a parameter in ]0, 1[.
    • Thus, to have a parameter p between two bounds a and b you have to
      • define a p_logit as an input for your structural model
      • set p = a+p_logit*(b-a) in EQUATION: in your structural model
      • define logit as the distribution for p_logit
    • To have a parameter p higher than a, you have to 1) define a p_log as an input for your structural model, 2) set p = a+p_log in EQUATION: in your structural model, and 3) define log as the distribution for p_log
    • To have a parameter p lower than b, you have to 1) define a p_log as an input for your structural model, 2) set p = b-p_log in EQUATION: in your structural model, and 3) define log as the distribution for p_log

    Notice that, using that transformation, you have to multiply the standard error of p_logit by (b-a) in the first case to have the standard error of the initial p parameter. It is not necessary for the two other cases as it is an offset.

  • Can I put any distribution on the population parameters? Not directly through the interface. Using the interface, you can only put normal, lognormal and logitnormal. However, you can set any transformation of your parameter in the EQUATION: part of the structural model and apply any transformation on it.


  • How to compute AUC, time interval AUC, … using Mlxtran in a Monolix project?  See here.


modal close image