Book contents
- Frontmatter
- Dedication
- Contents
- Preface
- Acknowledgments
- Copyright Permissions
- 1 Introduction
- Part I Methods for Optimal Solutions
- Part II Methods for Near-optimal and Approximation Solutions
- 5 Branch-and-bound framework and application
- 6 Reformulation-Linearization Technique and applications
- 7 Linear approximation
- 8 Approximation algorithm and its applications – Part 1
- 9 Approximation algorithm and its applications – Part 2
- Part III Methods for Efficient Heuristic Solutions
- Part IV Other Topics
- References
- Index
5 - Branch-and-bound framework and application
from Part II - Methods for Near-optimal and Approximation Solutions
Published online by Cambridge University Press: 05 May 2014
- Frontmatter
- Dedication
- Contents
- Preface
- Acknowledgments
- Copyright Permissions
- 1 Introduction
- Part I Methods for Optimal Solutions
- Part II Methods for Near-optimal and Approximation Solutions
- 5 Branch-and-bound framework and application
- 6 Reformulation-Linearization Technique and applications
- 7 Linear approximation
- 8 Approximation algorithm and its applications – Part 1
- 9 Approximation algorithm and its applications – Part 2
- Part III Methods for Efficient Heuristic Solutions
- Part IV Other Topics
- References
- Index
Summary
Vision is not enough, it must be combined with venture. It is not enough to stare up the steps, we must step up the stairs.
Vaclav HavelReview of branch-and-bound framework
In this chapter, we present a general and effective approach to solve NP-hard or NP-complete problems, despite their potential exponential worst-case complexity. Although the complexity of this approach is nonpolynomial, when designed appropriately, this approach may still be a viable approach to solve many problems that arise in practice, particularly when their problem sizes are not terribly large.
The approach that we describe is called branch-and-bound [113]. It is a powerful general-purpose framework to solve nonconvex programming problems. Such a framework aims to obtain a (1 − ∊)-optimal solution for a small given ∊ ≥ 0. Obviously, the smaller ∊ is, the higher is the complexity. Thus, we need to select a suitable ∊ based on the optimality requirement. The efficiency of the algorithm depends on its ability to correctly remove large portions of the solution space during each iterative step within the process of identifying the best solution. As a result, we progressively focus on smaller and smaller portions of the solution space and thus we are able to find a (1 − ∊)-optimal solution much faster than a brute-force exhaustive search.
We now describe the branch-and-bound framework for a minimization problem (the procedure for a maximization problem is similar). Initially, we need to determine the solution space for our problem, including the set of feasible values for each of the optimization variables. The framework consists of two steps, namely, the bounding step and the branching step.
- Type
- Chapter
- Information
- Applied Optimization Methods for Wireless Networks , pp. 95 - 121Publisher: Cambridge University PressPrint publication year: 2014
- 1
- Cited by