Source: https://infoscience.epfl.ch/record/116261/files/Rapport%20FP3,%20partie%202_VERSION%20FINALE_07.05.pdf