HOME

TheInfoList



OR:

The Klee–Minty cube or Klee–Minty polytope (named after
Victor Klee Victor LaRue Klee, Jr. (September 18, 1925 – August 17, 2007) was a mathematician specialising in convex sets, functional analysis, analysis of algorithms, optimization, and combinatorics. He spent almost his entire career at the University of ...
and George J. Minty) is a
unit Unit may refer to: General measurement * Unit of measurement, a definite magnitude of a physical quantity, defined and adopted by convention or by law **International System of Units (SI), modern form of the metric system **English units, histo ...
hypercube In geometry, a hypercube is an ''n''-dimensional analogue of a square ( ) and a cube ( ); the special case for is known as a ''tesseract''. It is a closed, compact, convex figure whose 1- skeleton consists of groups of opposite parallel l ...
of variable
dimension In physics and mathematics, the dimension of a mathematical space (or object) is informally defined as the minimum number of coordinates needed to specify any point within it. Thus, a line has a dimension of one (1D) because only one coo ...
whose corners have been perturbed. Klee and Minty demonstrated that George Dantzig's
simplex algorithm In mathematical optimization, Dantzig's simplex algorithm (or simplex method) is a popular algorithm for linear programming. The name of the algorithm is derived from the concept of a simplex and was suggested by T. S. Motzkin. Simplices are ...
has poor worst-case performance when initialized at one corner of their "squashed cube". On the three-dimensional version, the
simplex algorithm In mathematical optimization, Dantzig's simplex algorithm (or simplex method) is a popular algorithm for linear programming. The name of the algorithm is derived from the concept of a simplex and was suggested by T. S. Motzkin. Simplices are ...
and the
criss-cross algorithm In optimization (mathematics), mathematical optimization, the criss-cross algorithm is any of a family of algorithms for linear programming. Variants of the criss-cross algorithm also solve more general problems with linear programming, linear ...
visit all 8 corners in the worst case. In particular, many optimization
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
s for linear optimization exhibit poor performance when applied to the Klee–Minty cube. In 1973 Klee and Minty showed that Dantzig's
simplex algorithm In mathematical optimization, Dantzig's simplex algorithm (or simplex method) is a popular algorithm for linear programming. The name of the algorithm is derived from the concept of a simplex and was suggested by T. S. Motzkin. Simplices are ...
was not a
polynomial-time algorithm In theoretical computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations p ...
when applied to their cube. Later, modifications of the Klee–Minty cube have shown poor behavior both for other basis-
exchange Exchange or exchanged may refer to: Arts, entertainment and media Film and television * Exchange (film), or ''Deep Trap'', 2015 South Korean psychological thriller * Exchanged (film), 2019 Peruvian fantasy comedy * Exchange (TV program), 2021 Sou ...
pivoting algorithms and also for interior-point algorithms.


Description

The Klee–Minty cube was originally specified with a parameterized system of linear inequalities, with the dimension as the parameter. The cube in two-dimensional space is a ''squashed square'', and the "cube" in three-dimensional space is a ''squashed cube''. Illustrations of the "cube" have appeared besides algebraic descriptions. The Klee–Minty polytope is given by: \begin x_1 &\le 5 \\ 4x_1 + x_2 &\le 25 \\ 8x_1 + 4x_2 + x_3 &\le 125 \\ &\vdots \\ 2^Dx_1 + 2^x_2 + \dots + 4x_ + x_D &\le 5^D \\ x_1 \ge 0, \, \, \dots , \, \, x_D &\ge 0. \end This has D variables, D constraints other than the D non-negativity constraints, and 2^D vertices, just as a dimensional
hypercube In geometry, a hypercube is an ''n''-dimensional analogue of a square ( ) and a cube ( ); the special case for is known as a ''tesseract''. It is a closed, compact, convex figure whose 1- skeleton consists of groups of opposite parallel l ...
does. If the objective function to be maximized is 2^x_1+2^x_2+ \dots + 2x_+x_D, and if the initial vertex for the simplex algorithm is the origin, then the algorithm as formulated by Dantzig visits all 2^D vertices, finally reaching the optimal vertex (0, 0, \dots, 5^D).


Computational complexity

The Klee–Minty cube has been used to analyze the performance of many algorithms, both in the worst case and on average. The
time complexity In theoretical computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations ...
of an
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
counts the number of
arithmetic operation Arithmetic is an elementary branch of mathematics that deals with numerical operations like addition, subtraction, multiplication, and division. In a wider sense, it also includes exponentiation, extraction of roots, and taking logarithms. Ar ...
s sufficient for the algorithm to solve the problem. For example,
Gaussian elimination In mathematics, Gaussian elimination, also known as row reduction, is an algorithm for solving systems of linear equations. It consists of a sequence of row-wise operations performed on the corresponding matrix of coefficients. This method can a ...
requires the order of D^3 operations, and so it is said to have polynomial time-complexity because its complexity is bounded by a
cubic polynomial In mathematics, a cubic function is a function (mathematics), function of the form f(x)=ax^3+bx^2+cx+d, that is, a polynomial function of degree three. In many texts, the ''coefficients'' , , , and are supposed to be real numbers, and the func ...
. There are examples of algorithms that do not have polynomial-time complexity. For example, a generalization of Gaussian elimination called Buchberger's algorithm has for its complexity an exponential function of the problem data (the degree of the polynomials and the number of variables of the
multivariate polynomial In mathematics, a polynomial is a mathematical expression consisting of indeterminates (also called variables) and coefficients, that involves only the operations of addition, subtraction, multiplication and exponentiation to nonnegative intege ...
s). Because exponential functions eventually grow much faster than polynomial functions, an exponential complexity implies that an algorithm has slow performance on large problems.


Worst case

In mathematical optimization, the Klee–Minty cube is an example that shows the worst-case
computational A computation is any type of arithmetic or non-arithmetic calculation that is well-defined. Common examples of computation are mathematical equation solving and the execution of computer algorithms. Mechanical or electronic devices (or, historic ...
complexity Complexity characterizes the behavior of a system or model whose components interact in multiple ways and follow local rules, leading to non-linearity, randomness, collective dynamics, hierarchy, and emergence. The term is generally used to c ...
of many
algorithm In mathematics and computer science, an algorithm () is a finite sequence of Rigour#Mathematics, mathematically rigorous instructions, typically used to solve a class of specific Computational problem, problems or to perform a computation. Algo ...
s of linear optimization. It is a deformed
cube A cube or regular hexahedron is a three-dimensional space, three-dimensional solid object in geometry, which is bounded by six congruent square (geometry), square faces, a type of polyhedron. It has twelve congruent edges and eight vertices. It i ...
with exactly  2''D'' corners in
dimension In physics and mathematics, the dimension of a mathematical space (or object) is informally defined as the minimum number of coordinates needed to specify any point within it. Thus, a line has a dimension of one (1D) because only one coo ...
D . Klee and Minty showed that Dantzig's
simplex algorithm In mathematical optimization, Dantzig's simplex algorithm (or simplex method) is a popular algorithm for linear programming. The name of the algorithm is derived from the concept of a simplex and was suggested by T. S. Motzkin. Simplices are ...
visits all corners of a (perturbed)
cube A cube or regular hexahedron is a three-dimensional space, three-dimensional solid object in geometry, which is bounded by six congruent square (geometry), square faces, a type of polyhedron. It has twelve congruent edges and eight vertices. It i ...
in dimension D in the
worst case In computer science, best, worst, and average cases of a given algorithm express what the resource usage is ''at least'', ''at most'' and ''on average'', respectively. Usually the resource being considered is running time, i.e. time complexity, b ...
. Modifications of the Klee–Minty construction showed similar exponential
time complexity In theoretical computer science, the time complexity is the computational complexity that describes the amount of computer time it takes to run an algorithm. Time complexity is commonly estimated by counting the number of elementary operations ...
for other pivoting rules of simplex type, which maintain primal feasibility, such as Bland's rule. Another modification showed that the
criss-cross algorithm In optimization (mathematics), mathematical optimization, the criss-cross algorithm is any of a family of algorithms for linear programming. Variants of the criss-cross algorithm also solve more general problems with linear programming, linear ...
, which does not maintain primal feasibility, also visits all the corners of a modified Klee–Minty cube. Like the simplex algorithm, the criss-cross algorithm visits all 8 corners of the three-dimensional cube in the worst case.


Path-following algorithms

Further modifications of the Klee–Minty cube have shown the poor performance of central-path –following algorithms for linear optimization, in that the central path comes arbitrarily close to each of the corners of a cube. This "vertex-stalking" performance is surprising because such path-following algorithms have polynomial-time complexity for linear optimization.


Average case

The Klee–Minty cube has also inspired research on
average-case complexity In computational complexity theory, the average-case complexity of an algorithm is the amount of some computational resource (typically time) used by the algorithm, averaged over all possible inputs. It is frequently contrasted with worst-case comp ...
. When eligible pivots are made randomly (and not by the rule of steepest descent), Dantzig's simplex algorithm needs on average quadratically many steps ( on the order of O(D^2) . Standard variants of the simplex algorithm take on average D steps for a cube. However according to , when it is initialized at a random corner of the cube, the criss-cross algorithm visits only D additional corners. Both the simplex algorithm and the criss-cross algorithm visit exactly 3 additional corners of the three-dimensional cube on average.


See also

* Projective algorithm of Karmarkar * Ellipsoidal algorithm of Khachiyan


References


Notes


Citations


Bibliography

* * * * * * * * * * * *


External links


Algebraic description with illustration

The first two links have both an algebraic construction and a picture of a three-dimensional Klee–Minty cube: * *


Pictures with no linear system


Articles of E. Nematollahi, which discuss the Klee-Minty cube with illustrations.


(automatic translation o

by Günter Ziegler. The picture in the second half of the page. {{DEFAULTSORT:Klee-Minty cube Linear programming Analysis of algorithms Computational complexity theory Convex geometry Cubes