What is piecewise linear programming?

Piecewise linear programs are models where some non-linearities are modeled by unary expressions that are piecewise linear functions.

A piecewise linear function is made up of multiple linear segments, each defined over a given interval.

For example, f(x) defined this way

f(x) = 4x when x < = 5

f(x) = 2x + 7 when x > 5

is a two-segment piecewise linear function.

In practice, piecewise linear expressions are transformed into mixed integer linear programs by adding variables, linear constraints, and sometimes, special ordered sets. Piecewise linear programs are useful in simplifying models for a variety of applications.