What would be an appropriate lower bound for a branchandboun

What would be an appropriate lower bound for a branch-and-bound algorithm for Set Cover?

Solution

Lower Bounds:
   pruning criteria for the nodes of the search tree. Again consider a node (T , R) with a corresponding
partition of the items IT 1 , IT 2 ,...,IT t . We define four lower boundson the number of tests that have to
be added to T to obtain a test cover. For each of the lower bounds we also give the complexity of computing them.

The following is the skeleton of a generic branch and bound algorithm for minimizing an arbitrary objective function f.
To obtain an actual algorithm from this, one requires a bounding function g, that computes lower bounds of f on nodes of
the search tree, as well as a problem-specific branching rule.

Using a heuristic, find a solution xh to the optimization problem.
Store its value, B = f(xh). (If no heuristic is available, set B to infinity.)
B will denote the best solution found so far, and will be used as an upper bound on candidate solutions.
Initialize a queue to hold a partial solution with none of the variables of the problem assigned.
Loop until the queue is empty:
Take a node N off the queue.
If N represents a single candidate solution x and f(x) < B, then x is the best solution so far. Record it and set B f(x).
Else, branch on N to produce new nodes Ni. For each of these:
If g(Ni) > B, do nothing; since the lower bound on this node is greater than the upper bound of the problem, it will never
lead to the optimal solution, and can be discarded.
Else, store Ni on the queue.
Several different queue data structures can be used. A stack (LIFO queue) will yield a depth-first algorithm. A best-first branch
and bound algorithm can be obtained by using a priority queue that sorts nodes on their g-value.The depth-first variant is recommended
when no good heuristic is available for producing an initial solution, because it quickly produces full solutions, and therefore upper bounds.

1.Lower Bound by Ideal Tests

   The first one, which we denote L1(T ), is straightforward and, as the notation suggests, independent
of the discarded tests. It assumes the existence of ideal oreven splitting tests, regardless of the availability
of such tests in the instance. Given any partition of the items in equivalence classes, such a test contains half
of the items in each of the equivalence classes.


Lemma 1:The number of ideal tests that have to be added to partial test cover T in order to obtain a test cover is
bounded from below by
   L1(T ) = [log( max Isuper(T)subIh)]wher h=1,.....t
  
Proof. Given a set of m items, defining 1/2m(m 1) item pairs, any ideal test covers [1/4m^2] of the item
pairs. From this observation the lemma follows easily.Computing this lower bound requires time O(m) in each
node of the search tree. This can be improved by using a more efficient data structure for storing the
sizes of the equivalence classes.

What would be an appropriate lower bound for a branch-and-bound algorithm for Set Cover?SolutionLower Bounds: pruning criteria for the nodes of the search tree.

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site