Home task discussion The SPLP is NP-hard in the strong sense. A problem is said to be strongly NP-complete (NP-complete in strong sense), if it remains NP-complete even when all of its numerical parameters are bounded by a polynomial in the length of the input. Node Cover Problem; Knapsack Problem; Maximal Clique Problem. Lecture 2 1 The traveling salesman problem min ∑ ∑ πππ π₯ππ π∈π½ π∈πΌ s.t. ∑ π₯ππ = 1, π ∈ π½; π∈πΌ ∑ π₯ππ = 1, π ∈ πΌ; π∈π½ π’π − π’π + ππ₯ππ ≤ π − 1, π, π = 2, … , π; π₯ππ ∈ {0,1}, π’π ≥ 0, π = 1, … , π. Lecture 2 2 Lecture 2. Basic facility location models ο· The simple plant location problem ο· The π-median problem ο· The π-center problem ο· The set covering problem Lecture 2 3 Combinatorial formulations Proposition 1. The SPLP has the single assignment property (π₯ππ = 1 ∨ 0). Proof. For each customer π ∈ π½ we select a cheapest deliverer π: π₯π = 1. SPLP: combinatorial formulation min {∑ min πππ + ∑ ππ } π⊆πΌ Lecture 2 π∈π½ π∈π π∈π 4 The π-median problem min {∑ min πππ } π⊂πΌ,|π|=π π∈π½ π∈π Mixed integer programming model: min ∑ ∑ πππ π₯ππ π∈π½ π∈πΌ subject to: ∑ π₯ππ = 1, π ∈ π½; π∈πΌ π¦π ≥ π₯ππ , π ∈ πΌ, π ∈ π½; ∑ π¦π = π; π∈πΌ π¦π ∈ {0,1}, π₯ππ ≥ 0, π ∈ πΌ, π ∈ π½. Has the π-median problem the Single Assignment Property? Lecture 2 5 The π-center problem min {max min πππ } π⊂πΌ,|π|=π π∈π½ π∈π Mixed integer linear programming model: min π· subject to: π· ≥ πππ π₯ππ , π ∈ πΌ, π ∈ π½; ∑ π₯ππ = 1, π ∈ π½; π∈πΌ π¦π ≥ π₯ππ , π ∈ πΌ, π ∈ π½; ∑ π¦π = π; π∈πΌ π¦π ∈ {0,1}, π₯ππ ≥ 0, π ∈ πΌ, π ∈ π½. How about relaxation π₯ππ ∈ {0,1} ⇒ 0 ≤ π₯ππ ≤ 1 ? Why we discuss the relaxations? Lecture 2 6 Suppose that we have an algorithm for the π-median problem. ο· Can we solve the π-center problem by using this algorithm? ο· What is computational complexity of your approach? ο· Can we say that the π-center problem is NP-hard? Lecture 2 7 The set covering problem Let π΄ = {πππ } be an 0–1 matrix: 1 if facility π can service customer π 0 otherwise A subset π ⊆ πΌ of facilities defines a cover of π½ if ∑π∈π πππ ≥ 1 for all π ∈ π½. πππ = { The set covering problem is to find a cover of minimal cost: min ∑ ππ π¦π π∈πΌ subject to ∑ π¦π πππ ≥ 1, π ∈ π½; π∈πΌ π¦π ∈ {0,1}, π ∈ πΌ. Can we claim that this problem is NP-hard? Lecture 2 8 Pseudo-Boolean reformulations For a vector π = (π1 , … , ππ ) with ranking ππ1 ≤ ππ2 ≤ β― ≤ πππ we introduce a vector βπ = (βπ0 , … , βππ ) in the following way: βπ0 = ππ1 βππ = πππ+1 − πππ , 1 ≤ π < π; βππ = πππ . Lemma. For each 0-1 vector π§ = (π§1 , … , π§π ), π§ ≠ (1, … ,1) we have π−1 min ππ = βπ0 + ∑ βππ π§π1 … π§ππ . π|π§π =0 π=1 Example. π = (10,8,5,7,1,9); βπ = (1, 4=5-1, 2=7-5, 1=8-7, 1=10-9); π§ = (1,1,0,0,1,0), π§ = (1,1,0,0,0,0), π§ = (1,1,1,1,1,0). Lecture 2 9 Pseudo-Boolean reformulation for SPLP Let the ranking for column π of the matrix (πππ ) be ππ π π ≤ ππ π π ≤ β― ≤ ππ π π 1 π 2 Using Lemma, we can get a pseudo-boolean function for the SPLP: π§π = 1 − π¦π , π ∈ πΌ; π−1 min {∑ ππ (1 − π§π ) + ∑ ∑ βπππ π§π π … π§π π }. π§ π∈πΌ Example. πΌ = π½ = {1,2,3}; ππ = π∈π½ π=0 10 (10); 10 πππ = 0 (5 10 1 π 3 10 0 0 ); 20 7 We get the pseudo-boolean function: π(π§) = 10(1 − π§1 ) + 10(1 − π§2 ) + +10(1 − π§3 ) + (5π§1 + 5π§1 π§2 ) + (3π§2 + 17π§1 π§2 ) + (7π§2 + 3π§2 π§3 ) = = 15 + 5(1 − π§1 ) + 0(1 − π§2 ) + 10(1 − π§3 ) + 22π§1 π§2 + 3π§2 π§3 . Lecture 2 10 Correspondence “many to one” Theorem. The minimization problem for the pseudo-boolean function π(π§) for π§ ≠ (1, … ,1) and the SPLP are equivalent. For optimal solutions π§ ∗ , π ∗ of these problems we have πΉ (π∗ ) = π(π§ ∗ ) and π§π∗ = 0 ⇔ π ∈ π∗ for all π ∈ πΌ. Example. Optimal solutions for these instances are the same or not? 0 5 π = ( 0 ) πππ = ( 0 22 10 Lecture 2 3 4 5 0) and π = ( 2 ) πππ = (0 0 1 10 1 0) 23 11 Reduction of the set π± Theorem. For the minimization problem of the pseudo-boolean function π(π§) with positive coefficients in the nonlinear terms, the equivalent instance of the SPLP with minimal number of customers can be found in polynomial time from π and π. Lecture 2 12 Sketch of proof. Consider a pseudo-boolean function π(π§) define by π(π§) = ∑ πΌπ (1 − π§π ) + ∑ π½π ∏ π§π , π∈πΌ π∈πΏ π∈πΌπ where π½π > 0 and πΌπ ⊂ πΌ for all π ∈ πΏ. The family of subset {πΌπ }π∈πΏ of the set I with order relation πΌπ′ < πΌπ′′ βΊ πΌπ′ ⊂ πΌπ′′ forms a partially ordered set (poset). An arbitrary sequence of subsets πΌπ1 < β― < πΌππ is called a chain. An arbitrary partition of the family {πΌπ }π∈πΏ into nonoverlapping chains induces a matrix (πππ ) for the UFLP. Each element of the partition corresponds a user. The requirement to find an instance of UFLP with a minimal number of users is equivalent to finding a partition of the poset into the minimal number of nonoverlapping chains. This is a well-known problem which can be solved in polynomial time. β Lecture 2 13 Example: Function π(π§) = π§1 π§2 + π§1 π§3 + π§1 π§4 + π§1 π§5 + π§3 π§4 + π§3 π§5 + π§4 π§5 + π§1 π§2 π§3 + π§1 π§3 π§4 + π§1 π§4 π§5 + π§1 π§2 π§3 π§4 + π§2 π§3 π§4 π§5 + π§1 π§3 π§4 π§5 − 10π§1 − 10 π§2 − 5π§3 − 5π§4 − 6 π§5 . Generate an equivalent SPLP instance: πΌ = {1, … , 5}, π½ = {1, … ? }. What can we say about the integrality gap for the minimization problem for the pseudo-boolean function? Lecture 2 14 Paradox Integrality gap for the SPLP can be arbitrary close to 1 (see lecture 1) but for the minimization problem π(π§) the gap equals π. Theorem. The set of optimal solutions of the minimization problem for arbitrary pseudo-boolean function with continuous variables contains a pure integer solution. Proof. For boolean variable π§, we have π§ = π§ 2 (0 = 02 , 1 = 12 ). So, we may assume that pseudo-boolean function has not π§ 2 , π§ 3 , … . All nonlinear terms are product of different variables. Let π§ ∗ be the optimal solution for π(π§) and assume that π§1∗ ≠ 0 ∨ 1. We can rewrite π(π§): π(π§) = π1 (π§2 , … , π§π ) + π§1 π2 (π§2 , … , π§π ). ∗ If π2 (π§2∗ , … π§π ) is positive, then we can improve our optimal solution by ∗) decreasing π§1∗ to 0. If it is negative, we put π§1∗ = 1. Hence, π2 (π§2∗ , … , π§π =0 and we can put π§1∗ = 1 ∨ 0. β Lecture 2 Can it helps us to solve the problem? 15 Boolean linear and nonlinear optimization Boolean linear problem: (BL): min ππ₯ π΄π₯ ≥ π; π₯ ∈ π΅π . It is NP-hard problem (SPLP). Note that π¦ ∈ {0,1} ⇔ π¦(1 − π¦) = 0. Hence, the BL is equivalent to (NLP): Lecture 2 min ππ₯ π΄π₯ ≥ π; π₯π (1 − π₯π ) = 0, π = 1, … , π; π₯ ∈ π π . 16 Hometask 1 In the SPLP we have πΌ = π½ = {Altus, Ardmore, Bartlesville, Duncan, Edmond, Enid}, π=π=6 πππ = 0 169 291 88 153 208 169 0 248 75 112 199 291 248 0 231 146 132 88 75 231 0 93 137 153 112 146 93 0 88 208 199 132 137 88 0 ππ = 150 150 150 100 100 100 Find the equivalent minimization problem for a pseudo-boolean function. Lecture 2 17 Hometask 2 For the following instance of the set covering problem: {1, … ,4} , ππ =1 for π ∈ πΌ, and πππ = 1 1 0 0 0 0 1 1 0 0 1 0 1 0 1 πΌ = {1, … ,5}, π½ = 1 0 0 1 1 find the equivalent minimization problem for a pseudo-boolean function. Lecture 2 18 Questions 1. Suppose that we have an algorithm for the set covering problem. Can we solve the π-center problem using this algorithm? 2. The set covering problem is NP-hard in the strong sense. If the previous reduction is correct, can we claim that the π-center problem is NP-hard in the strong sense? 3. The minimization problem for arbitrary pseudo-boolean function is NP-hard in the strong sense or not? Lecture 2 19