Chapter 5. Mathematical Programming: Overview

I will introduce several popular and often used non-stochastic mathematical programming methods for Prescriptive Analytics in this chapter. These are:

  • Classical linear programming

  • Integer programming

  • Mixed programming as a hybrid of the first two

The leading questions for this chapter are:

  • What is the essence of mathematical programming?

  • Why use mathematical programming in Prescriptive Analytics?

  • What is linear programming and what is its use in decision making?

  • What is integer programming and what is its use in decision making?

  • What is mixed programming and what is its use in decision making?

  • How is mathematical programming implemented in Python?

Background

Mathematical programming has a long practical history dating to the 1940s. This broad and powerful tool finds the combination of decision variables that optimizes an objective function. This function could be a production function, for example, based on classical economic theory. The decision variables in this case are capital and labor amounts. See Baumol (1965), Henderson and Quandt (1971), Ferguson (1972), and Gould and Lazear (1989) for economic discussions of production functions.

Optimization means either maximization or minimization, depending on the problem. For example, if the problem is to allocate manufacturing robots (the inputs) to the production of output (the objective function), then this is a maximization problem since you want the most output. ...

Get Hands-On Prescriptive Analytics now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.