29-3 Integer linear programming
An integer linear-programming problem is a linear-programming problem with the additional constraint that the variables \(x\) must take on integral values. Exercise 34.5-3 shows that just determining whether an integer linear program has a feasible solution is NP-hard, which means that there is no known polynomial-time algorithm for this problem.
a. Show that weak duality (Lemma 29.8) holds for an integer linear program.
b. Show that duality (Theorem 29.10) does not always hold for an integer linear program.
c. Given a primal linear program in standard form, let us define \(P\) to be the optimal objective value for the primal linear program, \(D\) to be the optimal objective value for its dual, \(IP\) to be the optimal objective value for the integer version of the primal (that is, the primal with the added constraint that the variables take on integer values), and \(ID\) to be the optimal objective value for the integer version of the dual. Assuming that both the primal integer program and the dual integer program are feasible and bounded, show that
\[IP \le P = D \le ID.\]
a. The proof for weak duality goes through identically. Nowhere in it does it use the integrality of the solutions.
b. Consider the linear program given in standard form by \(A = (1)\), \(b = (\frac{1}{2})\) and \(c = (2)\). The highest we can get this is \(0\) since that's that only value that \(x\) can be. Now, consider the dual to this, that is, we are trying to minimize \(\frac{x}{2}\) subject to the constraint that \(x \ge 2\). This will be minimized when \(x = 2\), so, the smallest solution we can get is \(1\).
Since we have just exhibited an example of a linear program that has a different optimal solution as it's dual, the duality theorem does not hold for integer linear program.
c. The first inequality comes from looking at the fact that by adding the restriction that the solution must be integer valued, we obtain a set of feasible solutions that is a subset of the feasible solutions of the original primal linear program. Since, to get \(IP\), we are taking the max over a subset of the things we are taking a max over to get \(P\), we must get a number that is no larger. The third inequality is similar, except since we are taking min over a subset, the inequality goes the other way. The middle equality is given by Theorem 29.10.
本页面的全部内容在 小熊老师 - 莆田青少年编程俱乐部 0594codes.cn 协议之条款下提供,附加条款亦可能应用