Source: https://publications.polymtl.ca/1648/1/2014_JocelynBellemare.pdf