4

We know that given a binary (0-1) linear program, we can find lower/upper bounds using its relaxation. But, there are instances (such as shortest path problem with non-negative cycles, bipartite matching, max-flow, etc) for which the feasible region of the relaxation actually has integral vertices. My question is about the methods we can use to prove this property for a given problem that we know for which this property holds. Is there a machinery for this or it is something creative and problem-based?

Update: Assume matrix $A$ is given as

 [1 1 0 1 1 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0]
 [1 1 1 0 0 0 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0]
 [1 0 1 1 0 0 0 0 1 1 0 0 0 0 0 1 0 0 0 0 0 0]
 [0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0]
 [0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 1 0 0 0 0]
 [0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0]
 [0 0 0 0 0 0 0 0 0 1 0 0 1 0 0 0 0 0 0 1 0 0]
 [0 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0]
 [0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 0 1]

I tested this matrix by Matlab, and it is not TU. Given $d_n$, $n =1,\ldots,9$, the problem is

\begin{align} \min \quad &\sum_{n=1}^{22} b_n c_n \\ s.t. \quad& A \begin{bmatrix} b_1 \\ \vdots \\ b_{22} \end{bmatrix}_{22 \times1} = \begin{bmatrix} 1 \\ \vdots \\ 1 \end{bmatrix}_{9 \times1}\\ & b_n \in \{0,1\}, \quad n=1,\ldots,22. \end{align} and its relaxation is: \begin{align} \min \quad &\sum_{n=1}^{22} b_n c_n \\ s.t. \quad& A \begin{bmatrix} b_1 \\ \vdots \\ b_{22} \end{bmatrix}_{22 \times1} = \begin{bmatrix} 1 \\ \vdots \\ 1 \end{bmatrix}_{9 \times1}\\ & b_n \geq 0, \quad n=1,\ldots,22. \end{align} where \begin{align} c_n = \max\{A[1,n]*d_1,A[2,n]*d_2,\ldots, A[9,n]*d_9 \}. \end{align} For example, $c_1 = \max\{d_1,d_2,d_3\}$ and $c_3 = \max\{d_2,d_3\}$.

What can we do to show this: "The vertices of the polytope of the relaxation problem are integral"?

Then, instead of solving the IP, we can solve its LP relaxation.

m0_as
  • 1,065
  • I don't see how you can "use duality to show the equivalence". There is no duality for optimization problems with integers. – LinAlg Nov 19 '16 at 10:33
  • @LinAlg It is not true that there is no "duality for optimization problems with integers". Given a problem P, by definition a dual probleml D for P is a problem that bounds P. If P is linear then D is the ordinary linear Dual, and strong duality holds (no duality gap). For an integer problem, the linear relaxation is the easiest way to obtain a Dual; anather dual problem can be obtained by the Lagrangian relaxation. – Marcello Sammarra Nov 19 '16 at 12:58
  • I haven't ever seen anyone call the linear relaxation a dual problem. Typically one talks about Lagrange/Wolfe/Fenchel duality. None of those concepts is of any use when integers come into play, which is why noone studies them. My point was that the statement that one can "use duality to show the equivalence" is incomprehensible. – LinAlg Nov 19 '16 at 14:11
  • @LinAlg There is a way to show this by duality. I should have said the duality of the relaxed LP. We can find the dual of the relaxed LP for this problem and solve it. The solution is a lower bound for the relaxed LP (primal) and this value is achieved by an integral solution. Hence, we can say that the integral solution is optimal for the LP and the original IP and its LP relaxation are equivalent. But, the application of this method is limited. – m0_as Nov 19 '16 at 18:19
  • That's not really using duality, as you could have simply solved the relaxed LP itself (whose value equals the value of the dual of the relaxed LP). – LinAlg Nov 19 '16 at 20:36
  • @LinAlg You are right. – m0_as Nov 19 '16 at 20:47
  • @m0_as in the relaxation you are missing $b_n \leq 1$. – LinAlg Nov 19 '16 at 22:48
  • @LinAlg adding that constraint doesn't change the problem because we know that sum of a subset of $b_i$'s is 1 (because of the constraint corresponding to each row of matrix $A$), and $b_i$'s are positive, so none of them can be larger than 1. But, yes, to be precise we can also add that. – m0_as Nov 19 '16 at 23:02

1 Answers1

2

Typically you show that the coefficient matrix is totally unimodular (TUM). Then by Cramer's rule any basic feasible solution is integral (if the right hand side is integral).

In the example in your initial question, the coefficient matrix is $\begin{pmatrix}1 & 1 \\ 1 & 1\end{pmatrix}$. The determinant of this matrix is $0$ while all submatrices have determinant $1$. So, this constraint matrix is TUM. Since the right hand side is integral, any basic feasible solution is integral too.

In the example in your updated question, it is merely luck that your solution is integral. If I solve it with a different objective function, I obtain a fractional solution: take $d_n=1$ for $n\in\{2,4,9\}$, $d_n=0$ otherwise. Then $c_n=1$ for $n \in\{1,2,3,7,8,11,13,15,17,22\}$, $c_n=0$ otherwise. When you use the variables $b_n$ for $n$ in $\{4,5,6,7,8,10,11,12,13\}$ as a basis in the simplex method, you obtain a fractional solution that is optimal. There are integral optimal solutions, but this fractional one proves that the relaxation is not equivalent to the original problem.

LinAlg
  • 20,093
  • Thanks. I know about this method. But, it doesn't work for my problem. – m0_as Nov 19 '16 at 19:11
  • Thanks for the counter-example. The problem I described wasn't exactly what I had. I tried to simplify it. I know you have already answered my question twice, but can you take a look at the updated version? For this one, I tried a lot of random input, the two problems are equivalent. – m0_as Nov 19 '16 at 22:21
  • No, I don't think so. Now, $d$ is a vector of size 9 but $c$ was a vector of size 22. I just check it with $d=[1,1,1,0,0,0,0,0,0]$, they are equivalent. – m0_as Nov 19 '16 at 22:31
  • How do you solve this problem? The $c$ you mentioned is correct but I solved this and the solution is $b_1=b_{17}=b_{18}=b_{19}=b_{20}=b_{21}=b_{22}=1$ and other $b_i$'s are zero and the optimal value is 1! – m0_as Nov 19 '16 at 22:54
  • @m0_as You are correct. I have updated my answer once more. Note that your solution shows some degeneracy (fewer than 9 b's are nonzero), so many solutions may be optimal. – LinAlg Nov 20 '16 at 11:12
  • I checked your new example, still the optimal solution is integral and the optimal value of original problem and its relaxed LP is 2. I use a LP solver. If you solve it manually, that might be possible. But we want to know whether there is an integral solution for the relaxed problem or not. It is clear that for a LP, you might find a fractional solution, but you know that in this case, there is an integral solution as well. What we are looking for here is the same. We want to find an integral optimal solution! – m0_as Nov 20 '16 at 19:11
  • If you are trying to find a $d$ for which "there is" a fractional solution, I think you are going the wrong way. – m0_as Nov 20 '16 at 19:13
  • No, I said for the $d$ you mentioned, there is still an integral solution. If you can find a $d$ for which there is no integral solution, then you are definitely right. – m0_as Nov 20 '16 at 19:21
  • @m0_as two problems are equivalent when you can turn any optimal solution to one problem into an optimal solution of the other problem. My example shows that the problems are not equivalent. What you seem to ask is: do the integer problem and its relaxation have the same objective value? – LinAlg Nov 20 '16 at 19:27
  • Oh, right. That was what I am looking for and I thought that is actually the case. Otherwise, we know that for example for the LP relaxation shortest path problem (with no negative cycle), there might be some fractional optimal solutions, in addition to an integral one; but what we actually want to show that is this: "the vertices of the polytope of the relaxation problem are integral". – m0_as Nov 20 '16 at 19:34
  • I updated the question to avoid confusion. – m0_as Nov 20 '16 at 19:37
  • Consider this solution: $b_{n} =1$ for $n \in {7,13,14,16,18,19,21 }$ and zero otherwise. You can verify that $Ab$ is $1_{9 \times 1}$. – m0_as Nov 20 '16 at 22:17
  • You consider a set of basis and solve the LP (probably using Simplex method) from that. But, that's not the only way to solve LPs or maybe you are doing something wrong. For the $d$ you mentioned, what is the optimal value of the LP? If it is 2, it means the integral solution that I found can be considered as the corresponding vertex! I solve that by a LP solver using Gurobi package. So I don't think what I get is wrong. – m0_as Nov 20 '16 at 22:21
  • You know, showing constraint matrix $A$ is totally unimodular is a strong condition. If it holds, then for any cost vector $c$, there is an integral optimal solution for the relaxed LP. That doesn't hold for my problem. Now assume that what I claimed is true that for a cost vector $c$ which has a specific structure (derived from arbitrary $d$), my claim is true. How we can actually prove this? – m0_as Nov 20 '16 at 22:26
  • Okay, thanks for the discussion. The current counter-example you provided is not correct as I said. I solved both LP and IP using that $d$, and they had the same optimal value. That's why I downvoted it. – m0_as Nov 20 '16 at 22:36
  • And I already said thanks for the counter-example you provided for my questions before final update. It was actually a nice discussion for me. Thanks – m0_as Nov 20 '16 at 22:41
  • It was my mistake. I cannot vote it up again now because it says it is locked. – m0_as Nov 20 '16 at 23:02
  • I thought when we compare an IP and its LP relaxation, we only care about the optimal solution of the LP which is a vertex because it is clear that the ones which are not vertex cannot be implemented in the original IP. Now, if the solution you find using simplex method (as far as I know in simplex method, we jump between vertices) is a vertex, there should be a $d$ for which your vertex is uniquely optimal solution (there is a theorem for this result.) That would be interesting. – m0_as Nov 20 '16 at 23:18
  • There are definitely $d$ for which all optimal vertices are integral. However, for the $d$ I select, the simplex method may return a fractional optimal vertex. – LinAlg Nov 20 '16 at 23:37
  • Right, what I said was based on this result: "If $v$ is a vertex of a polytope in a LP, then there is cost vector $c$ for which, v is the unique optimal solution." I think you can visualize why it is true. Now, based on this, there should be another $d$ (not the one you found) for which the fractional vertex you found is uniquely optimal. For the $d$ you found, there is a fractional vertex and also an integral vertex which are optimal. – m0_as Nov 20 '16 at 23:42
  • Thanks for the discussion. I liked it. – m0_as Nov 20 '16 at 23:48
  • you are welcome – LinAlg Nov 20 '16 at 23:54