Linear Programming Simplex Method VI

Owning Palette: Optimization VIs

Requires: Full Development System

Determines the solution of a linear programming problem.

Details  Example

 Add to the block diagram  Find on the palette
C is a vector describing the linear functional to maximize.
M is a matrix describing the different constraints.
B is a vector describing the right sides of the constraints inequalities.
maximum is the maximal value, if it exists, of X under the constraints.
X is the solution vector.
ticks is the time in milliseconds for the whole calculation.
error returns any error or warning condition from the VI. The nonexistence of a solution X leads to an error. You can wire error to the Error Cluster From Error Code VI to convert the error code or warning into an error cluster.

Linear Programming Simplex Method Details

The following equation defines the optimization problem this VI solves.

cx = max!

with the constraints x 0 and mx b.

For the optimization problem cx = max!, use the following definitions:

X = (x1, …, xn)

C = (c1, …, cn)

B = (b1, …, bk)

M is a k-by-n matrix.

To solve the optimization problem, you must decide whether an optimal vector X does exist. If the optimal vector does exist, then determine this vector X.

The solution of a linear programming problem is a two-step process. Complete the following steps to solve a linear programming problem.

  1. Transform the original problem into a problem in restricted normal form, essentially without inequalities in the formulation.
  2. Solve the restricted normal form problem.
Note  The restricted normal formulation seems to be special. But there are many ways to reformulate terms. For example, dx e is equivalent to –dx –e and, dx = e is equivalent to the combination dx e and –dx –e.

Example

Refer to the Geometrical Analysis with Linear Programming VI in the labview\examples\Mathematics\Optimization directory for an example of using the Linear Programming Simplex Method VI.

 Open example  Find related examples