# LinearProgram

Top | recent changes | Preferences

### What is a linear program?

I assume you are already familiar with linear algebra (systems of linear equations). If that's not the case, come talk to me.

A linear program is a system of linear inequalities, together with a linear objective function to be maximized or minimized. A simple example is:

maximize x1+x2 subject to x1 ≥ 0, x2 ≥ 0, x1+2x2 ≤ 1, 3x1+x2 ≤ 1.

This linear program may also be written using matrices and vectors as follows:

Let c=(1,1). Let b=(1,1). Let A be the matrix ((1,2),(3,1)).

maximize c.x subject to x ≥ 0, Ax ≤ b.

Above, x=(x1,x2) is the vector of variables.

A feasible solution is an assignment to x that satisfies the given linear constraints. For example, x=(1/4,1/4) is feasible.

An optimal solution is a feasible solution of maximum cost. An optimal solution to any linear program can be found in polynomial time.

Linear programs of the form "maximize c.x subject to x ≥ 0, Ax ≤ b", where all coefficients are non-negative, are called "packing" problems. Linear programs of the form "minimize c.x subject to x ≥ 0, Ax ≥ b", where all coefficients are non-negative, are called "covering" problems.

Examples:
References:

Top | recent changes | Preferences