0

I'm trying to understand how a brute force approach would actually work in a LP model and then try to understand what the simplex method does better. My book mentions

To find each vertex for a model in canonical form with m constraint equations and n + m variables, we can set n of the variables to zero and solve a system of m equations in m unknowns.

Let's say I have the following model in canonical form:

$$ 2x_1 + 3x_2 + x_3 = 30 \\ (2/3) x_1 + 2 x_2 + x_4 = 16 \\ (16/3) x_1 + 4 x_2 + x_5 = 64 $$

It has $n=2$ variables $m=3$ constraints.

Then I could set $n=2$ of the $n+m=5$ variables to $0$, say we pick $x_1,x_2$ to be zero. This results in

$$ x_3 = 30 \\ x_4 = 16 \\ x_5 = 64 $$

Does this mean the point $(0,0,30,16,64)$ is a vertex (not necessarily a feasible one) in a 5D-space that could be the solution to this problem?

So in a brute force approach I need to pick every combination where 2 variables of 5 can be zero and check for feasibility?

So why does setting $n$ of $n+m$ vars to zero guarantee I get all vertices? Are there no vertices that have no zero coordinate?


I read other questions as well, such as the below, but the explanation is still a bit above my head, since it's still too abstract.

Why can't we solve a LP problem just by finding all vertices of feasible region and testing the objective function at each vertex?

BMBM
  • 2,715
  • Your example does not fit. The objective function is missing. To find the (next) pivot element at rhe simplex method an objective function (min or max) is absolutely necessary. – callculus42 Aug 12 '24 at 14:11

1 Answers1

1

Just one thing before the main question: you ask "Does this mean the point $(0,0,30,16,64)$ is a vertex (not necessarily a feasible one)?" In fact, for a point in canonical form, this is guaranteed to be feasible, because all the variables are nonnegative, and that is the only thing we need to check aside from the system of equations being satisfied. I wanted to mention this because it will be important later.

Moving on to the main question:

So why does setting $n$ of $n+m$ vars to zero guarantee I get all vertices? Are there no vertices that have no zero coordinate?

First we should understand what the meaning of a vertex is - or rather, what the point of a vertex is. The reason that a point in the middle of our region isn't worth checking for optimality is that there are nearby feasible points in all directions - and some of those directions will improve the objective function, whatever it is.

In fact, to dismiss a feasible solution from consideration, it is enough to know that it lies halfway between two other feasible solutions. Suppose that $x$, $x+y$, and $x-y$ all satisfy our constraints. Then the value of the objective function at $x$ will be exactly halfway between the values of the objective function at $x-y$ and $x+y$, which means either $x+y$ or $x-y$ will be better than $x$.

(Slightly muddying the issue, all three points could be tied for best, but this turns out not to make a difference.)

So, for which feasible points $x$ can we find a $y$ such that $x+y$ and $x-y$ are also feasible?


Let's illustrate this on an example. Say we're looking at the system $$2x_1 + 3x_2 + x_3 = 30 \\ (2/3) x_1 + 2 x_2 + x_4 = 16 \\ (16/3) x_1 + 4 x_2 + x_5 = 64$$ and we've found the solution $x = (x_1, x_2, x_3, x_4, x_5) = (3, 7, 3, 0, 20)$. How can we find a $y = (y_1, y_2, y_3, y_4, y_5)$ such that both $x+y$ and $x-y$ are feasible?

Well, first, we want $y_4 = 0$. If $y_4 \ne 0$, then either $x_4 + y_4$ or $x_4 - y_4$ will be negative.

Second, we want $y$ to satisfy the associate homogeneous equations: $$2y_1 + 3y_2 + y_3 = 0 \\ (2/3) y_1 + 2 y_2 + y_4 = 0 \\ (16/3) y_1 + 4 y_2 + y_5 = 0$$

Finally, we want $y \ne 0$, or else $x+y$, $x-y$, and $x$ will all be the same point, which doesn't count.

Is this possible? Yes! It's a system of three equations in four unknowns $y_1, y_2, y_3, y_5$. The system is not inconsistent, because a homogeneous system can't be inconsistent. There are more unknowns than equations, so a nonzero solution exists. Scale it down to be very very small, if necessary; a nonzero solution like $y = (0.003,-0.001,-0.003,0,-0.012)$ is ideal.

So our point $x = (3,7,3,0,20)$ is halfway between $x+y = (3.003, 6.999, 2.997, 0, 19.984)$ and $x-y = (2.997, 7.001, 3.003, 0, 20.012)$. Since $y$ is so small compared to $x$, we won't get any negative numbers in $x+y$ or $x-y$, and by construction, $x+y$ and $x-y$ still satisfy the system of equations: they're both feasible!


We can always find such a $y$, provided that the number of nonzero $y$-variables we can pick is larger than the number of equations. The number of nonzero $y$-variables is the same as the number of nonzero $x$-variables. So we conclude that a feasible point worth considering can have at most $m$ nonzero variables, where $m$ is the number of equations. Equivalently, if there are $n+m$ variables, at least $n$ should be set to $0$.

Misha Lavrov
  • 159,700
  • Thanks, this is a great answer. What I found in addition useful to understand more details was: https://or.stackexchange.com/questions/8191/why-are-several-of-the-decision-variables-zero-at-the-corner-point-of-a-polytope - as you mentioned, we don't need to check the inside points, we care about the "corners". – BMBM Aug 14 '24 at 07:51
  • Say we're looking for solutions for 3 variables, then we don't need to look for points inside the polytope. The polytope is formed by planes in 3D that are defined by the constraints. On the "edges" (boundaries), the planes intersect and form a line = one component is zero. At the corners, where boundaries intersect, two components are zero. I think that would generalize to the 5D example I posted initially? (Just as an intuition, there are special cases like degeneration.) – BMBM Aug 14 '24 at 07:52
  • Yes, that's right. So in your 5D example, the solution set to the 3 equations forms a plane in $\mathbb R^5$, and the feasible region is a polygon in that plane whose sides are given by the nonnegativity constraints. An edge of the polygon is where one variable is $0$ (the least value satisfying its nonnegativity constraint). A corner of the polygon is where two variables are $0$. – Misha Lavrov Aug 14 '24 at 15:34