• No results found

5.2 A Semidefinite Programming Approach

5.2.3 Reducted SDP model

At a general point of the branch tree, we distinguish a set A of elements which are put in M and another set ˜A of elements which are inhibited to be in M. Finally, the set N/(A + ˜A) is formed by the undecided elements. We impose the belonging of elements in A and ˜A as linear constraints and we obtain the following problem, named SDPRA:

M ax − M eanDP SDP Relaxation A (SDPRA). max1 2Tr(DZ) (5.29) subject to: Tr(IZ) = 1 (5.30)   Z z zT z n+1,n+1  0 (5.31) 1 n ≤ zn+1,n+1 ≤ 1 2 (5.32) zi = zn+1,n+1 ∀i ∈ A (5.33) zi = 0 ∀i ∈ ˜A (5.34) valid inequalities ∈ B (5.35)

It is possible to create a reducted version of SDPRA by substituting 5.33 and

5.34 in the rest of the model. Let us define a set Ba ⊆ B of active constraints, i.e. the set of constraints in B which are not redundant because of the decisions taken in the branch tree. Let us define a matrix Da obtained by considering only rows and columns of D associated to elements in N/(A + ˜A). Analogously, we define Za from Z by removing the same rows and columns. Both Da and Za are ˆn × ˆn matrices

where ˆn ≤ n is the number of unfixed variables. The contribution of the picked elements, i.e. elements belonging to A, in the objective is given by the expression s =

P i∈A

P

j∈Adi,jzn+1,n+1

2 . Moreover, there exists a contribution brought by the

insertion of an element i ∈ N/(A+ ˜A) in M that is obtained as si = P

j∈Adi,jzn+1,n+1

2 .

In the following notation, we use a function α(·) which provides the element number α(p) ∈ N associated to a row/column index p. First, we define a matrix Ua as a diagonal matrix with the p-th component of the diagonal equal to sα(p). Let za be a ˆn-dimensional vector whose p-th component is equal to xαpzn+1,n+1. Let us consider the following ˆn + 1 × ˆn + 1 matrices:

ˆ Da =   Da+ Ua 0 0T s   (5.36) ˆZa =   Za 0 0T z n+1,n+1   (5.37) ˆI =   Ia 0 0T |A|   (5.38)

Then, the following problem, called SDPRB, can be obtained: M ax − M eanDP SDP Relaxation B (SDPRB). max12Tr( ˆDaˆZa) (5.39) subject to: Tr(ˆIˆZa) = 1 (5.40)   Za za zT a zn+1,n+1  0 (5.41) 1 n ≤ zn+1,n+1 ≤ 1 2 (5.42) valid inequalities ∈Ba (5.43)

It is easy to verify that SDPRA and SDPRB are equivalent problems, but SD- PRB presents a lower number of variables and constraints, since unrelevant con- straints and variables are not taken into consideration. Thus, SDPRB is used as a method in the branch and bound tree to determine powerful upper bounds in a reasonable amount of time.

SDP based lower bounds

As we have seen so far, semidefinite programming is exploited in order to have powerful upper bounds. However, the semidefinite solution of the relaxation SDPRB can be used to determine good lower bounds too. The basic strategy embedded in the framework is a rounding heuristic that, starting from the fractional semidefinite programming solution za, allows to reconstruct a high quality feasible solution for the M ax − M eanDP. In an open node of the branch and bound tree, an initial feasible solution xA can be instantly obtained by fixing at 1 variables whose associated

element is in A and at 0 all the other elements. Another initial feasible solution x

can be obtained in the opposite way, variables associated at elements in ˜A are set to 0 and all the other variables are equal to 1.

The heuristic based on the solution za of SDPRB can be seen as a path relinking from solution xA to xA˜. At each step of the path-relinking procedure a variable

associated to an element in N/(A + ˜A) is set to 1. Let us suppose that this element is p and the associated variable is xp. The element p is choosed such that the i-th component of za with α(i) = p has the highest value in the semidefinite solution among the unfixed variables. Thus, the path relinking is guided by the solution of SDRB and the distance between the current solution xCU RRand xA˜decreases by one

unit at each step. Note that it is not a problem if the initial solution does not satisfy Constraint 5.2, because the cardinality of set M will increase along the path and feasible solutions will be found. A steepest descent three-opt local search centered in xCU RR is performed after of each iteration of the path relinking. In the end of the algorithm, the best solution found is provided as an output. The pseudocode of this heuristic approach follows.

Algorithm 11 SDP based heuristics for Max − MeanDP

Input: M ax − M eanDP instance, sets A and ˜A, semidefinite solution xa

Set xCU RR = xA

while xCU RR = x/ A˜ do

Set variable associated to the highest valued component of za at 1 Update xCU RR

Perform steepest descent three-opt local search from xCU RR Update best feasible solution x

end while

Tree expansion strategy

Our preliminary tests revealed that the best branching rule, in order to reduce the size of the search tree, is to branch on the highest valued variable. Since the algorithm is thought to reduce the overall time to compute the optimal solution of a Max − MeanDP instance, the expansion strategy is a simple depth-first search where at each step of the algorithm the node with the most promising upper bound is expanded.