Introduction to Combinatorial Optimization

This document was uploaded by one of our users. The uploader already confirmed that they had the permission to publish it. If you are author/publisher or own the copyright of this documents, please report to us by using this DMCA report form.

Simply click on the Download Book button.

Yes, Book downloads on Ebookily are 100% Free.

Sometimes the book is free on Amazon As well, so go ahead and hit "Search on Amazon"

Introductory courses in combinatorial optimization are popular at the upper undergraduate/graduate levels in computer science, industrial engineering, and business management/OR, owed to its wide applications in these fields. There are several published textbooks that treat this course and the authors have used many of them in their own teaching experiences.  This present text fills a gap and is organized with a stress on methodology and relevant content, providing a step-by-step approach for the student to become proficient in solving combinatorial optimization problems. Applications and problems are considered via recent technology developments including wireless communication, cloud computing, social networks, and machine learning, to name several, and the reader is led to the frontiers of combinatorial optimization. Each chapter presents common problems, such as minimum spanning tree, shortest path, maximum matching, network flow, set-cover, as well as key algorithms, such as greedy algorithm, dynamic programming, augmenting path, and divide-and-conquer. Historical notes, ample exercises in every chapter, strategically placed graphics, and an extensive bibliography are amongst the gems of this textbook.

Author(s): Ding-Zhu Du, Panos M. Pardalos, Xiaodong Hu, Weili Wu
Series: Springer Optimization and Its Applications, 196
Publisher: Springer
Year: 2022

Language: English
Pages: 406
City: Cham

Preface
Contents
1 Introduction
1.1 What Is Combinatorial Optimization?
1.2 Optimal and Approximation Solutions
1.3 Preprocessing
1.4 Running Time
1.5 Data Structure
Exercises
Historical Notes
2 Divide-and-Conquer
2.1 Algorithms with Self-Reducibility
2.2 Rectilinear Minimum Spanning Tree
2.3 Fibonacci Search
2.4 Heap
2.5 Counting Sort
2.6 More Examples
Exercises
Historical Notes
3 Dynamic Programming and Shortest Path
3.1 Dynamic Programming
3.2 Shortest Path
3.3 Dijkstra Algorithm
3.4 Priority Queue
3.5 Bellman-Ford Algorithm
3.6 All Pairs Shortest Paths
Exercises
Historical Notes
4 Greedy Algorithm and Spanning Tree
4.1 Greedy Algorithms
4.2 Matroid
4.3 Minimum Spanning Tree
4.4 Local Ratio Method
Exercises
Historical Notes
5 Incremental Method and Maximum Network Flow
5.1 Maximum Flow
5.2 Edmonds-Karp Algorithm
5.3 Applications
5.4 Matching
5.5 Dinitz Algorithm
5.6 Goldberg-Tarjan Algorithm
Exercises
Historical Notes
6 Linear Programming
6.1 Simplex Algorithm
6.2 Lexicographical Ordering
6.3 Bland's Rule
6.4 Initial Feasible Basis
6.5 Duality
6.6 Primal-Dual Algorithm
6.7 Interior Point Algorithm
6.8 Polyhedral Techniques
Exercises
Historical Notes
7 Primal-Dual Methods and Minimum Cost Flow
7.1 Hungarian Algorithm
7.2 Label-Correcting
7.3 Minimum Cost Flow
7.4 Minimum Cost Circulation
7.5 Cost Scaling
7.6 Strongly Polynomial-Time Algorithm
Exercises
Historical Notes
8 NP-Hard Problems and Approximation Algorithms
8.1 What Is the Class NP?
8.2 What Is NP-Completeness?
8.3 Hamiltonian Cycle
8.4 Vertex Cover
8.5 Three-Dimensional Matching
8.6 Partition
8.7 Planar 3SAT
8.8 Complexity of Approximation
Exercises
Historical Notes
9 Restriction and Steiner Tree
9.1 Idea of Restriction
9.2 Role of Minimum Spanning Tree
9.3 Rectilinear Steiner Minimum Tree
9.4 Connected Dominating Set
Exercises
Historical Notes
10 Greedy Approximation and Submodular Optimization
10.1 What Is the Submodular Function?
10.2 Submodular Set Cover
10.3 Monotone Submodular Maximization
10.4 Random Greedy
Exercises
Historical Notes
11 Relaxation and Rounding
11.1 The Role of Rounding
11.2 Group Set Coverage
11.3 Pipage Rounding
11.4 Continuous Greedy
Exercises
Historical Notes
12 Nonsubmodular Optimization
12.1 An Example
12.2 Properties of Set Functions
12.3 Parameterized Methods
12.4 Sandwich Method
12.5 Algorithm Ending at Local Optimal Solution
12.6 Global Approximation of Local Optimality
12.7 Large-Scale System
Exercises
Historical Notes
Bibliography