Parallel Reverse Engineering with Mutual information & Entropy Reduction


PREMER (Parallel Reverse Engineering with Mutual information & Entropy Reduction) is an open-source, multi-platform software tool for inferring network structures from data, using information-theoretic measures. It is a general purpose tool that has been developed with biological networks in mind, but can be applied in other areas.

PREMER predicts the existence of network links, estimates their relative strength and direction, and provides a visual representation of the inferred system. It can use datasets with missing values and/or outliers. It also allows including previous knowledge: the user can specify if certain reactions are known to be nonexistent.

Implementation and Requirements

PREMER is available in two implementations: for MATLAB/Octave, and for Python.

PREMER runs on Windows, Linux and OSX. It only requires a MATLAB, Octave, or Python environment to run in each of these operating systems.

PREMER's core computations are performed in compiled code written in FORTRAN F90, which allows for more efficient computations than Matlab, Octave, or Python. OpenMP directives enable it to run seamlessly in parallel environments, reducing computation time.

To download PREMER go to DOWNLOADS.


A manual is available here.

License and versions

PREMER is released under the free and open source GNU GPLv3.

  • The first publicly available version of PREMER (v1.0) was released in March 2015.
    • PREMER v1.1 was released in November 2015.
  • PREMER v2.0 was released in March 2017.
    • PREMER v2.1 was released in October 2017.


PREMER is maintained by Alejandro F. Villaverde (BioProcess Engineering Group, IIM-CSIC). Email: afvillaverde [at] Web:


Please cite this paper if you use PREMER in a publication:

[1] Villaverde, A.F.*, Becker, K.*, and Banga, J.R. (2017) "PREMER: a Tool to Infer Biological Networks". IEEE/ACM Transactions on Computational Biology and Bioinformatics [doi:10.1109/TCBB.2017.2758786] (* Equal contributors)

A preliminary version was presented in:

[2] Villaverde, A.F., Becker, K., and Banga, J.R. (2016) "PREMER: parallel reverse engineering of biological networks with information theory". Computational Methods in Systems Biology: 14th International Conference, CMSB 2016, Cambridge, UK, September 21-23, 2016. Lecture Notes in Computer Science (LNCS), 9859:323-329 [doi:10.1007/978-3-319-45177-0_21]

PREMER's data preprocessing capabilities are described in:

[3] Folch-Fortuny, A., Villaverde, A.F., Ferrer, A., and Banga, J.R. (2015) "Enabling network inference methods to handle missing data and outliers". BMC Bioinformatics 16(1), 283 [doi:10.1186/s12859-015-0717-7]

PREMER is an evolution of MIDER, which was presented in:

[4] Villaverde, A.F., Ross, J., MorĂ¡n, F., and Banga, J.R. (2014). "MIDER: network inference with mutual information distance and entropy reduction". PLOS ONE 9(5):e96732 [doi:10.1371/journal.pone.0096732]