Question

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

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

0 0
Add a comment Improve this question Transcribed image text
Answer #1

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.

Add a comment
Know the answer?
Add Answer to:
What would be an appropriate lower bound for a branch-and-bound algorithm for Set Cover?
Your Answer:

Post as a guest

Your Name:

What's your source?

Earn Coins

Coins can be redeemed for fabulous gifts.

Not the answer you're looking for? Ask your own homework help question. Our experts will answer your question WITHIN MINUTES for Free.
Similar Homework Help Questions
ADVERTISEMENT
Free Homework Help App
Download From Google Play
Scan Your Homework
to Get Instant Free Answers
Need Online Homework Help?
Ask a Question
Get Answers For Free
Most questions answered within 3 hours.
ADVERTISEMENT
ADVERTISEMENT