Source: http://www-lmpa.univ-littoral.fr/~smoch/documents/L3-Pro/optimisation1-chap8.pdf