Fourier-Motzkin Elimination

from Wikipedia, the free encyclopedia

The Fourier-Motzkin elimination is a method by a given by a linear inequality convex polyhedron to a hyperplane of the mold to project . There is a matrix and a matching right side.

The process was first described by Joseph Fourier in 1827, but was forgotten and was finally rediscovered in 1936 in Theodore Motzkin's doctoral thesis .

Description of the procedure

The algorithm conically combines the rows of the matrix and the entries on the right-hand side to form new inequalities. This is done in a way that ensures that the resulting new inequalities no longer include the variable .

The algorithm is described by the following pseudocode :

 function FourierMotzkin(A, b, j) is
     Eingabe: eine Matrix  der Dimension , ein Vektor  der Dimension 
              und ein Index j 
     Ausgabe: eine Matrix  der Dimension , sodass  für alle 
              und ein Vektor  mit  Einträgen
     
     
     
     
     
      eine Indizierung der Elemente in , also eine Bijektion 
     for  to  do
         if  then
             
             
         else if  then
             
             
         endif
     endfor
     return 

The resulting polyhedron then describes the desired projection.

Example for the Fourier-Motzkin elimination

The projection of a polyhedron onto different (linear) hyperplanes

As an example we choose the polyhedron given by the following system of inequalities:

The corresponding matrix and right side are therefore

For the projection onto the hyperplane , i.e. for , we get the following quantities:

, and .

So is and . We set .

For we combine the first and second inequality:

For , combining the first and third inequality, we get the following new inequality:

The image of the projection is thus given by , while the resulting matrix or the right side have the following shape:

The Fourier-Motzkin Elimination from the point of view of linear algebra

The row operations used in the algorithm can be represented by multiplying the matrix or the right-hand side with a matrix whose -th row is given by

Since the matrix describes a conical combination of the rows of , all entries of are not negative. In the example above,

Applications

Admissibility Issues

As a projection method, the Fourier-Motzkin elimination has the property that the system has a solution precisely when this also applies to the system .

While it is generally difficult to decide whether a convex polyhedron has a feasible solution, in some special cases it is quite easy to do:

  • Remains not a variable in the resulting system , so it is the zero matrix , the system is then and only then solved if the right side is not negative
  • If only a single column of the matrix belonging to a variable contains entries other than zero, the projection corresponds to an interval . If this is not empty, the system can also be solved. Furthermore, the possible values of the variables in the polyhedron just by the interval where

This knowledge can be used to check whether any polyhedron has a feasible solution or not: First, all variables are projected out one after the other:

The resulting matrix is then the zero matrix and you can decide whether , because iff. .

In particular, iff .

Since the -th projection step can be carried out by a multiplication with a non-negative matrix , the following also applies:

.

If the -th entry of is negative, then is and , where . This statement corresponds to Farkas' lemma . Since the matrices can be set up during the execution of the algorithm, the Fourier-Motzkin elimination offers the possibility to calculate the certificate for explicitly.

In addition, the Fourier-Motzkin elimination implies that the projection of a polyhedron is a polyhedron again. This result can be used to show the equivalence of the and representations of polyhedra.

Example of the decision on admissibility

We want to decide whether the following convex polyhedron has a feasible solution:

This corresponds in form to the system

After the individual projection steps, the following systems result:

A contradiction is revealed, the polyhedron corresponds to the empty set. The resulting matrices are given by

A certificate for the inadmissibility is the vector .

Solution of linear programs

By taking advantage of the duality of the linear optimization , each linear program can be reduced to an admissibility problem , which can then be solved by applying Fourier-Motzkin elimination. In this case, however, a large number of new variables and inequalities are required, which slows down the application of the method. Alternatively, one can take the following approach: To solve the problem , one introduces an additional variable and additionally requires that . The value of the variable is therefore limited by the optimal solution to the problem. This gives a polyhedron with

You then project the first entries out, so that you finally have a system of form

receives. The resulting interval describes the set of possible values ​​for the variable . The following cases occur:

  1. The interval is empty. In this case the optimization problem has no feasible solution.
  2. There is no upper limit to the interval. The optimization problem is therefore also unlimited.
  3. The interval is not empty and has a maximum element . Thus the objective function value of the optimal solution of the problem is exact .

In order to obtain a solution with a given objective function value , proceed as follows: First, consider the system after the -th iteration: Only the variables and appear, with the value already set to:

One thus obtains a (not empty) interval of possible solutions for , from which one can choose any one. One iterates this process for .

Example for solving a linear program

To illustrate the process, we choose the program

To solve the problem, let's add the variable along with the inequality to the problem. The following systems show the polyhedron , as well as the changed systems after the projection on and :

It is thus certain that the optimal solution to the problem has the objective function value 4. To get an appropriate solution, we bet and return to the penultimate step. The system arises

So there is nothing left but to bet. The value of ultimately results from the system

This is the optimal solution . Of course, this also has the expected objective function value of .

running time

Although Fourier-Motzkin elimination can be used to solve linear programs, in practice other algorithms are preferred. The problem of the Fourier-Motzkin elimination, that the number of inequalities and the size of the matrices in the worst case in every projection step of previously on increases. In this case the running time of the algorithm is no longer polynomial . In general, most of the inequalities generated are also redundant. Since this can usually not be recognized efficiently, however, the Fourier-Motzkin elimination requires far more memory than would be necessary to describe the polyhedra .

Remarks

  1. Since the amount can generally become very large, it is advisable to first scale the inequalities so that for all . To determine and the columns then only have to be subtracted from one another.
  2. The method of backward substitution presented here can always be used to obtain a feasible solution of the polyhedron.

Individual evidence

  1. ^ JBJ Fourier from the journal: Analysis des travaux de l'Académie Royale des Sciences pendant l'année 1824, Partie mathématique, 1827.
  2. ^ TS Motzkin: Contributions to the theory of linear inequalities.

literature

  • Alexander Schrijver : Theory of Linear and Integer Programming . John Wiley & sons, 1998, ISBN 0-471-98232-6 , pp. 155-156.
  • HP Williams: Fourier's Method of Linear Programming and its Dual . In: American Mathematical Monthly . 93, 1986, pp. 681-695.
  • Unger, Thomas; Dempe, Stefan: Lineare Optimization , pp. 19-23, Vieweg + Teubner 2010, ISBN 978-3-8351-0139-5

Web links