LP Relaxations of Boolean Problems

LP and QP > Applications > Back | Boolean problems | Next
  • Boolean problems

  • LP relaxation

  • When is the LP relaxation exact?

  • Examples

Boolean problems

A Boolean optimization problem is one where the variables are constrained to be Boolean. An example of Boolean problem is the so-called Boolean LP

 p^ast = min_x : c^Tx ~:~ Ax le b, ;; x in {0,1}^n.

Such problems are usually very hard to solve exactly: this would require a complete enumeration of all the exponential number of possible points in {0,1}^n.

LP relaxation

The LP relaxation takes the form

 p^ast_{rm LP} := min_x : c^Tx ~:~ Ax le b, ;; 0 le x le mathbf{1}.

The relaxation provides a lower bound on the original problem: p^ast_{rm LP} le p^ast. Hence, its optimal points may not be feasible (not Boolean). Even though a solution of the LP relaxation may not necessarily be Boolean, we can often interpret it as a {em fractional} solution to the original problem. For example, in a graph coloring problem, the LP relaxation colors the nodes of the graph not with a single color, but with many.

Exact solutions

Boolean problems are not always hard to solve. Indeed, in some cases, one can show that the LP relaxation provides an exact solution to the Boolean problem, as optimal points turn out to be Boolean. A few examples in this category:

Weighted bipartite matching

The weighted bipartite matching problem is to match N people to N tasks, in a one-to-one fashion. The cost of matching person i to task j is A_{ij}. The problem reads

 min_x : sum_{i,j=1}^N A_{ij} x_{ij} ~:~  begin{array}{ll}  x_{ij} in {0,1} &  forall : j , ;; sum_{i=1}^N x_{ij} = 1 & mbox{(one person for each task)}  forall : i , ;; sum_{j=1}^N x_{ij} = 1 & mbox{(one task for each person)}  end{array}

Shortest path

The shortest path problem has the form

 min_x : mathbf{1}^Tx ~:~ Ax = (1,0,ldots,0,-1), ;; x in{0,1}^n ,

where A stands for the incidence matrix of the network, and arcs with x_i = 1 form a shortest forward path between nodes 1 and m. As before the LP relaxation in this case is exact, in the sense that its solution is Boolean. The shortest path problem can be solved very efficiently with specialized algorithms based on the LP relaxation to the above formulation.