HANNA is a machine learning model for predicting the excess Gibbs energy of the liquid phase in mixtures with an arbitrary number of components. Through automatic differentiation, HANNA derives thermodynamically consistent activity coefficients from the excess Gibbs energy. HANNA is trained to more than 300,000 binary experimental data points of vapor-liquid equilibria, infinite dilution activity coefficients and liquid-liquid equilibria. As input, only the SMILES notation and the considered state point (composition and temperature) is required. In comprehensive benchmarks, HANNA was found to yield better results than the state-of-the-art models of the UNIFAC family.
Note: This repository is based on the HANNA prototype implementation by tspecht93, which was restricted to binary mixtures and not trained on liquid-liquid equilibrium data; the corresponding original paper is available here.
You can explore HANNA and other models from our working group on our interactive web interface, MLPROP, without any installation.
To set up the project, follow these steps:
-
Clone the repository:
git clone https://github.com/marco-hoffmann/HANNA.git cd HANNA -
Create the conda environment:
Use the provided
.ymlfile to create the conda environment.conda env create -f environment.yml
-
Test the installation:
Open the
demo.ipynbnotebook and run the cells using the HANNA environment to test the installation.
This project is licensed under the MIT License. See the LICENSE file for details.

