Algorithmic Problems On Convex Sets
   HOME

TheInfoList



OR:

Many problems in
mathematical programming Mathematical optimization (alternatively spelled ''optimisation'') or mathematical programming is the selection of a best element, with regard to some criteria, from some set of available alternatives. It is generally divided into two subfiel ...
can be formulated as problems on
convex set In geometry, a set of points is convex if it contains every line segment between two points in the set. For example, a solid cube (geometry), cube is a convex set, but anything that is hollow or has an indent, for example, a crescent shape, is n ...
s or convex bodies. Six kinds of problems are particularly important: optimization, violation, validity, separation, membership and emptiness. Each of these problems has a strong (exact) variant, and a weak (approximate) variant. In all problem descriptions, ''K'' denotes a
compact Compact as used in politics may refer broadly to a pact or treaty; in more specific cases it may refer to: * Interstate compact, a type of agreement used by U.S. states * Blood compact, an ancient ritual of the Philippines * Compact government, a t ...
and
convex set In geometry, a set of points is convex if it contains every line segment between two points in the set. For example, a solid cube (geometry), cube is a convex set, but anything that is hollow or has an indent, for example, a crescent shape, is n ...
in R''n''.


Strong variants

The strong variants of the problems are: * Strong optimization problem (SOPT): given a vector ''c'' in R''n'', find a vector ''y'' in ''K'' such that ''c''T''y'' ≥ ''c''T''x'' for all ''x'' in ''K'', or assert that ''K'' is empty. * Strong violation problem (SVIOL): given a vector ''c'' in R''n'' and a number ''t'', decide whether ''c''T''x'' ≤ ''t'' for all ''x'' in ''K'', or find ''y'' in ''K'' such that ''c''T''y'' > ''t''. * Strong validity problem (SVAL): given a vector ''c'' in R''n'' and a number ''t'', decide whether ''c''T''x'' ≤ ''t'' for all ''x'' in ''K''. * Strong nonemptyness problem (SNEMPT): Decide whether ''K'' is empty, and if not, find a point in ''K''. * Strong separation problem (SSEP): given a vector ''y'' in R''n'', decide whether ''y'' in ''K'', and if not, find a
hyperplane In geometry, a hyperplane is a generalization of a two-dimensional plane in three-dimensional space to mathematical spaces of arbitrary dimension. Like a plane in space, a hyperplane is a flat hypersurface, a subspace whose dimension is ...
that separates ''y'' from ''K'', that is, find a vector ''c'' in R''n'' such that ''c''T''y'' > ''c''T''x'' for all ''x'' in ''K''. * Strong membership problem (SMEM): given a vector ''y'' in R''n'', decide whether ''y'' in ''K''. Closely related to the problems on convex sets is the following problem on a
convex function In mathematics, a real-valued function is called convex if the line segment between any two distinct points on the graph of a function, graph of the function lies above or on the graph between the two points. Equivalently, a function is conve ...
''f'': R''n'' → R: * Strong unconstrained convex function minimization (SUCFM): find a vector ''y'' in R''n'' such that f(''y'') ≤ f(''x'') for all ''x'' in R''n'' .


Trivial implications

From the definitions, it is clear that algorithms for some of the problems can be used to solve other problems in oracle-polynomial time: * An algorithm for SOPT can solve SVIOL, by checking whether ''c''T''y'' > t; * An algorithm for SVIOL solves SVAL trivially. * An algorithm for SVIOL can solve SNEMPT, by taking ''c''=0 and ''t''=-1. * An algorithm for SSEP solves SMEM trivially.


Examples

The solvability of a problem crucially depends on the nature of ''K'' and the way ''K'' it is represented. For example: * If ''K'' is represented by a set of some ''m'' linear inequalities, then SSEP (and hence SMEM) is trivial: given a vector ''y'' in R''n'', we simply check if it satisfies all inequalities, and if not, return a violated inequality as the separating hyperplane. SOPT can be solved using
linear programming Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements and objective are represented by linear function#As a polynomia ...
, but it is not so trivial. * If ''K'' is represented as the
convex hull In geometry, the convex hull, convex envelope or convex closure of a shape is the smallest convex set that contains it. The convex hull may be defined either as the intersection of all convex sets containing a given subset of a Euclidean space, ...
of some ''m'' points, then SOPT (and hence SVIOL, SVAL and SNEMPT) is easy to solve by evaluating the objective on all vertices. SMEM requires to check whether there is a vector that is a convex combination of the vertices, which requires linear programming. SSEP also requires a certificate in case there is no solution. * If ''K'' is represented as the epigraph of some computable
convex function In mathematics, a real-valued function is called convex if the line segment between any two distinct points on the graph of a function, graph of the function lies above or on the graph between the two points. Equivalently, a function is conve ...
, then SMEM is trivial; if a
subgradient In mathematics, the subderivative (or subgradient) generalizes the derivative to convex functions which are not necessarily differentiable. The set of subderivatives at a point is called the subdifferential at that point. Subderivatives arise in c ...
can be computed, then SSEP is easy too.


Weak variants

Each of the above problems has a weak variant, in which the answer is given only approximately. To define the approximation, we define the following operations on convex sets: * S(''K'',''ε'') is the ball of radius ε around ''K'', defined as . Informally, a point in S(''K'',''ε'') is either in ''K'' or "almost" in ''K''. * S(''K'',''-ε'') is the interior ε-ball of ''K'', defined as . Informally, a point in S(''K'',''-ε'') "deep inside" ''K''. Using these notions, the weak variants are: *Weak optimization problem (WOPT): given a vector ''c'' in Q''n'' and a rational ''ε''>0, either - **find a vector ''y'' in ''S''(''K,ε'') such that ''c''T''y'' + ''ε'' ≥ ''c''T''x'' for all ''x'' in ''S''(''K,-ε''), or - **assert that ''S''(''K,-ε'') is empty. * Weak violation problem (WVIOL): given a vector ''c'' in Q''n'', a rational number ''t'', and a rational ''ε''>0, either - ** assert that ''c''T''x'' ≤ ''t +'' ''ε'' for all ''x'' in ''S''(''K,-ε''), or - ** find a ''y'' in ''S''(''K,ε'') such that ''c''T''y'' > ''t'' - ''ε''. * Weak validity problem (WVAL): given a vector ''c'' in Q''n'', a rational number ''t'', and a rational ''ε''>0, either - ** assert that ''c''T''x'' ≤ ''t''+''ε'' for all ''x'' in ''S''(''K,-ε''), or - ** assert that ''c''T''y'' ≥ ''t-ε'' for some ''y'' in ''S''(''K,ε'')''.'' * Weak nonemptyness problem (WNEMPT): Given a rational ''ε''>0, either - ** assert that ''S(K,-ε)'' is empty, or - ** find a point ''y'' in ''S(K,ε)''. * Weak separation problem (WSEP): given a vector ''y'' in Q''n'' and a rational ''ε''>0, either - ** assert that y in ''S''(''K,ε''), or - ** find a vector ''c'' in Q''n'' (with , , ''c'', , =1) such that ''c''T''y'' + ''ε'' > ''c''T''x'' for all ''x'' in ''S(K,-ε)''. * Weak membership problem (WMEM): given a vector ''y'' in Q''n'', and a rational ''ε''>0, either - ** assert that ''y'' in ''S''(''K,ε''), or - ** assert that ''y'' not in ''S''(''K,-ε'').Closely related to the problems on convex sets is the following problem on a compact convex set ''K'' and a
convex function In mathematics, a real-valued function is called convex if the line segment between any two distinct points on the graph of a function, graph of the function lies above or on the graph between the two points. Equivalently, a function is conve ...
''f'': R''n'' → R given by an approximate value oracle: * Weak constrained convex function minimization (WCCFM): given a rational ''ε''>0, find a vector in ''S''(''K,ε'') such that f(''y'') ≤ f(''x'') + ''ε'' for all ''x'' in ''S(K,-ε)''.


Trivial implications

Analogously to the strong variants, algorithms for some of the problems can be used to solve other problems in oracle-polynomial time: * An oracle for WOPT can solve WVIOL, by checking whether ''c''T''y'' + ''ε'' > ''t''; * An oracle for WVIOL solves WVAL trivially. * An oracle for WVIOL can solve WNEMPT, by taking ''c''=0 and ''t''=-1. * An oracle for WSEP can be used to solve WMEM.


Stronger weak variants

Some of these weak variants can be slightly strengthened. For example, WVAL with inputs ''c'', ''t''' = ''t''+''ε''/2 and ''ε''' = ''ε''/2 does one of the following: *assert that ''c''T''x'' ≤ ''t''+''ε'' for all ''x'' in ''S''(''K,-ε''/2), or - * assert that ''c''T''y'' ≥ ''t'' for some ''y'' in ''S''(''K,ε''/2)''.''


Implications of weak variants

Besides these trivial implications, there are highly non-trivial implications, whose proof relies on the
ellipsoid method In mathematical optimization, the ellipsoid method is an iterative method for convex optimization, minimizing convex functions over convex sets. The ellipsoid method generates a sequence of ellipsoids whose volume uniformly decreases at every ste ...
. Some of these implications require additional information about the
convex body In mathematics, a convex body in n-dimensional Euclidean space \R^n is a compact convex set with non- empty interior. Some authors do not require a non-empty interior, merely that the set is non-empty. A convex body K is called symmetric if it ...
''K''. In particular, besides the number of dimensions ''n'', the following information may be needed: * A ''circumscribed radius'' ''R,'' which is the radius of a ball centered at the origin that contains ''K''. The tuple (''K'';''n'',''R'') is called a circumscribed convex set. * An ''inscribed radius'' ''r'', which is the radius of a ball contained in ''K'' in case ''K'' is nonempty. This ''r'' also provides a lower bound on the volume of ''K''. The tuple (''K'';''n'',''R'',r) is called a well-bounded convex set. * An ''interior point'' ''a''0, which is a point such that a ball of radius ''r'' around ''a''0 is contained in ''K''. The tuple (''K'';''n'',''R'',''r'',''a''0) is called a centered convex set. The following can be done in oracle-polynomial time: * An oracle for WSEP, with a circumscribed radius ''R'', can solve WVIOL. This algorithm uses the central-cut ellipsoid method. Another option is to use another method that uses simplices instead of ellipsoids. * An oracle for WVIOL, with a circumscribed radius ''R'', can solve WOPT using
binary search In computer science, binary search, also known as half-interval search, logarithmic search, or binary chop, is a search algorithm that finds the position of a target value within a sorted array. Binary search compares the target value to the m ...
. * An oracle for WSEP, with a circumscribed radius ''R'', can solve WOPT. This follows by transitivity from the implications WSEP→WVIOL and WVIOL→WOPT, but there is also a direct algorithm WSEP→WOPT using the sliding objective function technique. * An oracle for WMEM, with ''R'' and ''r'' and ''a''0, can solve WVIOL. This was proved by Yudin and Nemirovskii in 1976, using the shallow-cut ellipsoid method. * An oracle for WMEM, with ''R'' and ''r'' and ''a''0, can solve WOPT. This follows by transitivity from the implications WMEM→WVIOL and WVIOL→WOPT. * An oracle for WMEM, with ''R'' and ''r'' and ''a''0, can solve WSEP. This follows by transitivity from the implications WMEM→WVIOL and WVIOL→WSEP. Interestingly, both steps require the ellipsoid method, and no direct algorithm WMEM→WSEP is known. * An oracle for WOPT can solve WCCFM. ** An approximate value oracle for a convex function can be used to construct a WMEM oracle. Combining this with the implications WMEM→WVIOL and WVIOL→WOPT and WOPT→WCCFM implies that WCCFM on a centered convex body (''K'';''n'',''R'',''r'',''a''0) given by a WMEM oracle can be solved in polynomial time. * An oracle for WOPT, with ''r'', can be used to found ''r and ''a''0 such that S(''a''0,r') is contained in ''K''. The following implications use the
polar set In functional and convex analysis, and related disciplines of mathematics, the polar set A^ is a special convex set associated to any subset A of a vector space X, lying in the dual space X^. The bipolar of a subset is the polar of A^\circ, but ...
of ''K'' - defined as K^* := \. Note that ''K''**=''K''. * An oracle for WVAL on an 0-centered convex body (K; n,R,r,0) can solve WMEM on ''K''*. * An oracle for WVIOL on an 0-centered convex body (K; n,R,r,0) can solve WSEP on ''K''*. * An oracle for WOPT can solve WSEP without any further information. The proof uses polarity arguments. * An oracle for WVAL, with a circumscribed radius ''R'', can solve WSEP. The proof uses polarity arguments.


Necessity of additional information

Some of the above implications provably do not work without the additional information. * An oracle for WMEM or even for SMEM, with ''R'' and ''r'' but without ''a''0, cannot solve WVIOL in polytime, even for ''n''=1 and ''r''=1 and c''=1'' and ''ε''=1. ''Proof''. Note that with the given parameters, what we know about ''K'' is that ''K'' is contained in the interval ''R'',''R'' and contains some interval of length 2''r''=2. Suppose an SMEM oracle answers "no" to the first ''R'' membership queries; this is a valid sequence of answers, since by the pigeonhole principle, there is an interval of length 2 that does not contain any querired point. Therefore, any algorithm solving WOPT needs more than ''R'' queries, so it is exponential in the encoding length of ''R''. * Similarly, an algorithm for WMEM, with ''R'' and ''r'' but without ''a''0, cannot solve WOPT. * An oracle for WVAL, with ''r'' and ''a''0 but without ''R'', cannot solve WVIOL. * An oracle for WVIOL, with ''r'' and ''a''0 but without ''R'', cannot solve WOPT and cannot solve WMEM. * An oracle for WMEM, with ''r'' and ''a''0 but without ''R'', cannot solve WSEP. * An oracle for WSEP, with ''r'' and ''a''0 but without ''R'', cannot solve WVAL. * An oracle for WSEP with ''r'' cannot be used to derive ''a''0, and hence cannot be used to solve WOPT. * An oracle for WVIOL with ''r'' cannot be used to derive ''a''0, and hence cannot be used to solve WOPT. * An oracle for WSEP with ''R'' cannot be used to derive ''r.''


Geometric problems on convex bodies

Using the above basic problems, one can solve several geometric problems related to convex bodies. In particular, one can find an approximate John ellipsoid in oracle-polynomial time: * Given a well-bounded convex body (K; n, R, r) described by a WSEP oracle, one can find an
ellipsoid An ellipsoid is a surface that can be obtained from a sphere by deforming it by means of directional Scaling (geometry), scalings, or more generally, of an affine transformation. An ellipsoid is a quadric surface;  that is, a Surface (mathemat ...
E(A,a) such that E\left(\fracA, a\right) \subseteq K \subseteq E(A, a). The algorithm uses the shallow-cut ellipsoid method. Note that, by the Lowner-John theorem, there exists an ellipsoid satisfying a stronger relation E\left(\fracA, a\right) \subseteq K \subseteq E(A, a), but that theorem does not yield a polytime algorithm. * Given a well-bounded, ''centrally-symmetric'' convex body (K; n, R, r) described by a WSEP oracle, one can find an
ellipsoid An ellipsoid is a surface that can be obtained from a sphere by deforming it by means of directional Scaling (geometry), scalings, or more generally, of an affine transformation. An ellipsoid is a quadric surface;  that is, a Surface (mathemat ...
E(A,a) such that E\left(\fracA, a\right) \subseteq K \subseteq E(A, a). Note that a theorem by Jordan proves that there exists an ellipsoid satisfying a stronger relation E\left(\fracA, a\right) \subseteq K \subseteq E(A, a), but that theorem does not yield a polytime algorithm. * Given a well-bounded, convex body (K; n, R, r) given as the solution set of a system of linear inequalities, one can find an
ellipsoid An ellipsoid is a surface that can be obtained from a sphere by deforming it by means of directional Scaling (geometry), scalings, or more generally, of an affine transformation. An ellipsoid is a quadric surface;  that is, a Surface (mathemat ...
E(A,a) such that E\left(\fracA, a\right) \subseteq K \subseteq E(A, a). * Given a well-bounded, ''centrally-symmetric'' convex body (K; n, R, r) given as the solution set of a system of linear inequalities, one can find an
ellipsoid An ellipsoid is a surface that can be obtained from a sphere by deforming it by means of directional Scaling (geometry), scalings, or more generally, of an affine transformation. An ellipsoid is a quadric surface;  that is, a Surface (mathemat ...
E(A,0) such that E\left(\fracA, 0\right) \subseteq K \subseteq E(A, 0). These results imply that it is possible to approximate any norm by an ellipsoidal norm. Specifically, suppose a norm ''N'' is given by a weak norm oracle: for every vector ''x'' in Q''n'' and every rational ''ε''>0, it returns a rational number ''r'' such that , N(''x'')-''r'', <''ε''. Suppose we also know a constant ''c''1 that gives a lower bound on the ratio of N(''x'') to the Euclidean norm, c_1 \, x \, \leq N(x)Then we can compute in oracle-polynomial time a linear transformation ''T'' of R''n'' such that, for all ''x'' in R''n'', \, T x \, \leq N(x) \leq \sqrt \, T x \, . It is also possible to approximate the
diameter In geometry, a diameter of a circle is any straight line segment that passes through the centre of the circle and whose endpoints lie on the circle. It can also be defined as the longest Chord (geometry), chord of the circle. Both definitions a ...
and the
width Length is a measure of distance. In the International System of Quantities, length is a quantity with dimension distance. In most systems of measurement a base unit for length is chosen, from which all other units are derived. In the Intern ...
of ''K'': * Given a well-bounded convex body (''K''; ''n'', ''R'', ''r'') described by a WSEP oracle, its diameter can be approximated by finding two points ''x'',''y'' in ''K'', and a ball with radius ''R*'' containing ''K'', such that R^* \leq \frac \sqrt \, x-y\, . * Given a well-bounded convex body (''K''; ''n'', ''R'', ''r'') described by a WSEP oracle, its width can be approximated by finding two parallel hyperplanes ''cTx=d1'' and ''cTx=d2'' that lie on two sides of ''K'', and a ball with radius ''r*'' contained in ''K'', such that r^*= \frac Some problems not yet solved (as of 1993) are whether it is possible to compute in polytime the volume, the center of gravity or the surface area of a convex body given by a separation oracle.


Problems on combinations of convex sets

Some binary operations on convex sets preserve the algorithmic properties of the various problems. In particular, given two convex sets ''K'' and ''L'': * For the sum K+L, WOPT can be solved in polytime using WOPT oracles for K and L. The same holds for WVIOL, WSEP and WVAL. However, the same does not hold for WMEM, unless K and L are centered convex bodies. * For the union conv(K u L), the results are the same for the sum: WOPT, WVIOL, WSEP and WVAL (but not WMEM) can be solved in polytime using the respective oracles for K and L. * For the intersection K ח L, it may be impossible to compute the inner radius in polytime, so we need to know the inner radius in advance. With this knowledge, all five problems (WMEM, WOPT, WVIOL, WSEP and WVAL) can be solved in polytime using the respective oracles for K and L. * Given WSEP oracles for K and L, and a rational number ''r''>0, it is possible in oracle-polynomial time to return either (a) an assertion that the intersection K ח L contains a ball with radius ''r'', or (b) a vector c with size 1, and a number d, such that cTx ≤ d for all x in S(K,-ε) and cTx ≥ d for all x in S(L,-ε), where ε=9nr3(RK/rK + RL/rL). That is: either the intersection contains a ball, or there is a hyperplane almost-separating K from L.


From weak to strong oracles

In some cases, an oracle for a weak problem can be used to solve the corresponding strong problem.


General convex sets

An algorithm for WMEM, given circumscribed radius ''R'' and inscribe radius ''r'' and interior point ''a''0, can solve the following slightly stronger membership problem (still weaker than SMEM): given a vector ''y'' in Q''n'', and a rational ''ε''>0, either assert that ''y'' in ''S''(''K,ε''), or assert that ''y'' not in ''K.'' The proof is elementary and uses a single call to the WMEM oracle.


Polyhedra

Suppose now that ''K'' is a
polyhedron In geometry, a polyhedron (: polyhedra or polyhedrons; ) is a three-dimensional figure with flat polygonal Face (geometry), faces, straight Edge (geometry), edges and sharp corners or Vertex (geometry), vertices. The term "polyhedron" may refer ...
. Then, many oracles to weak problems can be used to solve the corresponding strong problems in oracle-polynomial time. The reductions require an upper bound on the representation complexity ( facet complexity or vertex complexity) of the polyhedron: * An oracle for WNEMPT, for a full-dimensional polyhedron ''P'' with a bound on its representation complexity, can solve SNEMPT. * An oracle for WOPT, for a bounded full-dimensional polyhedron ''P'' with a bound on its representation complexity, can solve SOPT. * An oracle for WVIOL, for a bounded full-dimensional polyhedron ''P'' with a bound on its representation complexity, can solve SVIOL. * An oracle for WVAL, for a bounded full-dimensional polyhedron ''P'' with a bound on its representation complexity, can solve SVAL. * An oracle for WSEP, for a bounded full-dimensional polyhedron ''P'' with a bound on its representation complexity, can solve SSEP. * An oracle for WMEM, for a bounded full-dimensional polyhedron ''P'' with a bound on its representation complexity, given an interior point in ''P'', can solve SMEM. The proofs use results on
simultaneous diophantine approximation In number theory, the study of Diophantine approximation deals with the approximation of real numbers by rational numbers. It is named after Diophantus of Alexandria. The first problem was to know how well a real number can be approximated by ...
.


Necessity of additional information

How essential is the additional information for the above reductions? * The assumption that ''P'' is full-dimensional is essential: if ''P'' is not full-dimensional, then the interior ball S(''K'',''-ε'') is empty. Therefore, any oracle for solving a weak problem cannot distinguish between ''P'' and the empty set. * The assumption that ''P'' is bounded can be relaxed: it is possible to define variants of the weak problems for polyhedra that may be unbounded, and prove reductions analogous to the above results. * For the implication WMEM→SMEM, the assumption that an interior point of ''P'' is given is essential. ''Proof'': Suppose we have a polyhedron ''P'' with known vertex complexity 2''n'', and wish to decide whether 0 is in ''P''. If we ask the WMEM oracle fewer than 2''n'' queries, then the oracle can always answer "no", and it is possible that there exists a unit cube ''H'' with vertices whose coefficients are in , that contains zero as a vertex, but does not contain any of the queried points. So it is possible that ''P''=''H'' and the answer is "yes", but it is also possible that ''P'' is the convex hull of all non-zero vertices of ''H'' and the answer is "no". Therefore, no polytime algorithm can solve SMEM.


Implications of strong variants

Using the previous results, it is possible to prove implications between strong variants. The following can be done in oracle-polynomial time for a well-described polyhedron - a polyhedron for which an upper bound on the representation complexity is known: * An oracle for SSEP can solve SNEMPT, * An oracle for each SSEP, SVIOL, SOPT can be used to solve the other two. * In the special case in which ''P'' is a cone, SVIOL for ''P'' is the same as SSEP for its polar cone ''P''*; therefore, an SSEP oracle for ''P'' yields an SSEP algorithm for ''P''*. * If we know in advance that ''P'' is nonempty, then the SSEP oracle can be replaced with a slightly weaker separation oracle: given a vector ''y'' in Q''n'', if ''y'' is not in ''P'' it finds a
hyperplane In geometry, a hyperplane is a generalization of a two-dimensional plane in three-dimensional space to mathematical spaces of arbitrary dimension. Like a plane in space, a hyperplane is a flat hypersurface, a subspace whose dimension is ...
that separates ''y'' from ''P'' (= a vector ''c'' in R''n'' such that ''c''T''y'' > ''c''T''x'' for all ''x'' in ''P''), but if ''y'' is in ''P'', it may still return a hyperplane - a vector ''c'' in R''n'' such that ''c''T''y'' ≥ ''c''T''x'' for all ''x'' in ''P''. So SSEP, SVIOL and SOPT are all polynomial-time equivalent. This equivalence, in particular, implies Khachian's proof that
linear programming Linear programming (LP), also called linear optimization, is a method to achieve the best outcome (such as maximum profit or lowest cost) in a mathematical model whose requirements and objective are represented by linear function#As a polynomia ...
can be solved in polynomial time, since when a polyhedron is given by explicit linear inequalities, a SSEP oracle is trivial to implement. Moreover, a basic optimal dual solution can also be found in polytime. Note that the above theorems do not require an assumption of full-dimensionality or a lower bound on the volume. Other reductions cannot be made without additional information: * If ''P'' is not full-dimensional, then SMEM cannot solve SSEP, SVIOL or SOPT. * If ''P'' is unbounded, then SVAL cannot solve SSEP, SVIOL or SOPT.


Extension to non-well-described convex sets

Jain extends one of the above theorems to convex sets that are not polyhedra and not well-described. He only requires a guarantee that the convex set contains at least ''one point'' (not necessarily a vertex) with a bounded representation length. He proves that, under this assumption, SNEMPT can be solved (a point in the convex set can be found) in polytime. Moreover, the representation length of the found point is at most P(''n'') times the given bound, where P is some polynomial function.


Geometric problems on polyhedra

Using the above basic problems, one can solve several geometric problems related to nonempty polytopes and polyhedra with a bound on the representation complexity, in oracle-polynomial time, given an oracle to SSEP, SVIOL or SOPT: * Find a vertex of ''P''. * Given a vector ''c'', find a vertex of ''P'' that maximizes ''c''T''x''. * Given vectors ''c''1,''c''2, find a vertex of ''P'' that maximizes ''c1''T''x'', and subject to this, maximizes ''c2''T''x'' ( lexicographic maximization). * Find the
affine hull In mathematics, the affine hull or affine span of a set ''S'' in Euclidean space R''n'' is the smallest affine set containing ''S'', or equivalently, the intersection of all affine sets containing ''S''. Here, an ''affine set'' may be defined as ...
of ''P''. This also implies finding the dimension of ''P'', and a point in the relative interior of ''P''. * Decide whether any two given vectors are vertices of ''P'', and if so, whether they are adjacent. * Given a point in ''P'', write it as a convex combination of at most ''n'' vertices of ''P'' (an algorithmic version of Carathéodory's theorem).


See also

* Separation oracle - an algorithm for solving the (weak or strong) separation problem for some convex set ''K''.


References

{{Reflist Convex geometry Mathematical optimization Convex optimization