Enumerate vertices of convex hull defined by set of linear programming problems

51 Views Asked by At

Consider the linear programming problem: \begin{align*} \text{maximize } & z \\ \text{where } & z = \mathbf{c} \cdot \mathbf{x}\\ \text{subject to } & \mathbf{A} \cdot \mathbf{x} = \mathbf{b}\\ \text{and } & \mathbf{x} \geq 0 \end{align*}

The vector $\mathbf{b}$ is now allowed to vary, keeping $\mathbf{c}$ and $\mathbf{A}$ constant. The set of maximal values of $z$ as a function of $\mathbf{b}$ defines a concave hull. Is there a method to efficiently enumerate the vertices of this hull?

1

There are 1 best solutions below

0
On BEST ANSWER

If I understand you correctly, you're taking the set $S$ of points $(b,z) \in \mathbb R^{m+1}$ where $z$ is the maximal value of the linear programming problem, over all $b$ for which the problem is feasible. Note that if $x$ is a feasible solution for $b$ and $x'$ is a feasible solution for $b'$, and $0 \le \lambda \le 1$, then $\lambda x + (1-\lambda) x'$ is feasible for $\lambda b + (1-\lambda) b'$, and of course $c \cdot(\lambda x + (1-\lambda) x') = \lambda (c \cdot x) + (1-\lambda) (c \cdot x')$, so $z$ is a concave function of $b$. I'll assume the feasible set is nonempty and the problem is dual-feasible, so not unbounded.

One may consider basic solutions corresponding to a nonsingular submatrix $B$ of the augmented matrix, where the basic variable values are $B^{-1} b$, the nonbasic variable values are all $0$, and the objective value is $c_B B^{-1} b$. This is feasible in the convex set where all basic decision variable values are nonnegative and all basic slack variable values are $0$. The objective value is always equal to the value in one of the basic solutions. Each extreme point of $S$ should be an extreme point of the region of feasibility of one of the basic solutions.