La programmation mathématique est un domaine moderne des mathématiques appliquées qui s'intéresse à la conception et à la méthodologie de résolution des problèmes d'optimisation avec des ressources limitées, dans une perspective pratique et à l'aide d'un ordinateur. Ces problèmes se posent dans les processus de décision, notamment en économie, en ingénierie, en chimie, en biologie, etc.
Ce texte contient des leçons sur la complexité algorithmique, la programmation linéaire, la programmation en nombres entiers, la programmation dynamique, la théorie des graphes et l'optimisation combinatoire. Il est divisé en trois parties, traitant respectivement des principes de base, de l'optimisation linéaire continue et de l'optimisation en nombres entiers.