没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
500页
这里是 ShowMeAI 持续分享的【开源eBook】系列!内容覆盖机器学习、深度学习、数据科学、数据分析、大数据、Keras、TensorFlow、PyTorch、强化学习、数学基础等各个方向。整理自各平台的原作者公开分享(审核大大请放手) ◉ 简介:《The Design of Approximation Algorithms》整理自哥本哈根大学同名课程的教学资料。书籍围绕近似算法的几个核心算法技术展开,包括贪婪和局部搜索算法、动态编程、线性和半无限编程以及随机化。资料第一部分的每一章都专门讨论一种算法技术,然后将其应用于几个不同的问题。第二部分重温了这些技术,但对它们进行了更复杂的处理。 ◉ 目录: 贪婪算法和局部搜索 舍入数据和动态编程 线性程序和确定性舍入 线性程序的随机抽样和随机舍入 半定约程序的随机舍入 原始二元法 多路切割问题 随机抽样、优先抽样 心数估计 多数据集的总结 有序数据的总结 乘法权重 在线算法
资源推荐
资源详情
资源评论
The Design of
Approximation Algorithms
David P. Williamson
David B. Shmoys
Copyright
c
2010 by David P. Williamson and David B. Shmoys. All rights reserved. To be
published by Cambridge University Press.
2
This electronic-only manuscript is published on www.designofapproxalgs.com with the permis-
sion of Cambridge University Press. One copy per user may be taken for personal use only
and any other use you wish to make of the work is subject to the permission of Cambridge
University Press (rights@cambridge.org). You may not post this file on any other website.
Electronic web edition. Copyright 2011 by David P. Williamson and David B. Shmoys.
To be published by Cambridge University Press
Preface
This book is designed to be a textbook for graduate-level courses in approximation algorithms.
After some experience teaching minicourses in the area in the mid-1990s, we sat down and wrote
out an outline of the book. Then one of us (DPW), who was at the time an IBM Research
Staff Member, taught several iterations of the course following the outline we had devised, in
Columbia University’s Department of Industrial Engineering and Operations Research in Spring
1998, in Cornell University’s School of Operations Research and Industrial Engineering in Fall
1998, and at the Massachusetts Institute of Technology’s Laboratory for Computer Science in
Spring 2000. The lecture notes from these courses were made available, and we got enough
positive feedback on them from students and from professors teaching such courses elsewhere
that we felt we were on the right track. Since then, there have been many exciting developments
in the area, and we have added many of them to the bo ok; we taught additional iterations of
the course at Cornell in Fall 2006 and Fall 2009 in order to field test some of the writing of the
newer results.
The courses were developed for students who have already had a class, undergraduate or
graduate, in algorithms, and who were comfortable with the idea of mathematical proofs about
the correctness of algorithms. The book assumes this level of preparation. The book also
assumes some basic knowledge of probability theory (for instance, how to compute the expected
value of a discrete random variable). Finally, we assume that the reader knows something about
NP-completeness, at least enough to know that there might be good reason for wanting fast,
approximate solutions to NP-hard discrete optimization problems. At one or two points in the
book, we do an NP-completeness reduction to show that it can be hard to find approximate
solutions to such problems; we include a short appendix on the problem class NP and the notion
of NP-completeness for those unfamiliar with the concepts. However, the reader unfamiliar with
such reductions can also safely skip over such proofs.
In addition to serving as a graduate textbook, this book is a way for students to get the
background to read current research in the area of approximation algorithms. In particular, we
wanted a book that we could hand our own Ph.D. students just starting in the field and say,
“Here, read this.”
We further hope that the book will serve as a reference to the area of approximation al-
gorithms for researchers who are generally interested in the heuristic solution of discrete opti-
mization problems; such problems appear in areas as diverse as traditional operations research
planning problems (such as facility location and network design) to computer science prob-
3
4 Preface
lems in database and programming language design to advertising issues in viral marketing.
We hope that the book helps researchers understand the techniques available in the area of
approximation algorithms for approaching such problems.
We have taken several particular perspectives in writing the book. The first is that we
wanted to organize the material around certain principles of designing approximation algo-
rithms, around algorithmic ideas that have been used in different ways and applied to different
optimization problems. The title The Design of Approximation Algorithms was carefully cho-
sen. The book is structured around these design techniques. The introduction applies several
of them to a single problem, the set cover problem. The book then splits into two parts. In the
first part, each chapter is devoted to a single algorithmic idea (e.g., “greedy and local search
algorithms,”“rounding data and dynamic programming”), and the idea is then applied to sev-
eral different problems. The second part revisits all of the same algorithmic ideas, but gives
more sophisticated treatments of them; the results covered here are usually much more recent.
The layout allows us to look at several central optimization problems repeatedly throughout
the book, returning to them as a new algorithmic idea leads to a better result than the previous
one. In particular, we revisit such problems as the uncapacitated facility lo cation problem, the
prize-collecting Steiner tree problem, the bin-packing problem, and the maximum cut problem
several times throughout the course of the book.
The second perspective is that we treat linear and integer programming as a central aspect
in the design of approximation algorithms. This perspective is from our background in the
operations research and mathematical programming communities. It is a little unusual in the
computer science community, and students coming from a computer science background may
not be familiar with the basic terminology of linear programming. We introduce the terms we
need in the first chapter, and we include a brief introduction to the area in an app endix.
The third perspective we took in writing the book is that we have limited ourselves to results
that are simple enough for classroom presentation while remaining central to the topic at hand.
Most of the results in the book are ones that we have taught ourselves in class at one point or
another. We bent this rule somewhat in order to cover the recent, exciting work by Arora, Rao,
and Vazirani [22] applying semidefinite programming to the uniform sparsest cut problem. The
proof of this result is the most lengthy and complicated of the book.
We are grateful to a number of people who have given us feedback about the book at various
stages in its writing. We are particularly grateful to James Davis, Lisa Fleischer, Isaac Fung,
Rajiv Gandhi, Igor Gorodezky, Nick Harvey, Anna Karlin, Vijay Kothari, Katherine Lai, Gwen
Spencer, and Anke van Zuylen for very detailed comments on a number of sections of the
book. Additionally, the following people spotted typos, gave us feedback, helped us understand
particular papers, and made useful suggestions: Bruno Abrahao, Hyung-Chan An, Matthew
Andrews, Eliot Anshelevich, Sanjeev Arora, Ashwinkumar B.V., Moses Charikar, Chandra
Chekuri, Joseph Cheriyan, Chao Ding, Dmitriy Drusvyatskiy, Michel Goemans, Sudipto Guha,
Anupam Gupta, Sanjeev Khanna, Lap Chi Lau, Renato Paes Leme, Jan Karel Lenstra, Roman
Rischke, Gennady Samorodnitsky, Daniel Schmand, Jiawei Qian, Yogeshwer Sharma, Viktor
Simjanoski, Mohit Singh,
´
Eva Tardos, Mike Todd, Di Wang, and Ann Williamson. We also
thank a number of anonymous reviewers who made useful comments. Eliot Anshelevich, Joseph
Cheriyan, Lisa Fleischer, Michel Goemans, Nicole Immorlica, and Anna Karlin used various
drafts of the book in their courses on approximation algorithms and gave us useful feedback
about the experience of using the book. We received quite a number of useful comments from the
students in Anna’s class: Benjamin Birnbaum, Punyashloka Biswal, Elisa Celis, Jessica Chang,
Mathias Hallman, Alyssa Joy Harding, Trinh Huynh, Alex Jaffe, Karthik Mohan, Katherine
Moore, Cam Thach Nguyen, Richard Pang, Adrian Sampson, William Austin Webb, and Kevin
Electronic web edition. Copyright 2011 by David P. Williamson and David B. Shmoys.
To be published by Cambridge University Press
Preface 5
Zatloukal. Frans Schalekamp generated the image on the cover; it is an illustration of the tree
metric algorithm of Fakcharoenphol, Rao, and Talwar [106] discussed in Section 8.5. Our editor
at Cambridge, Lauren Cowles, impressed us with her patience in waiting for this book to be
completed and gave us a good deal of useful advice.
We would like to thank the institutions that supported us during the writing of this book,
including our home institution, Cornell University, and the IBM T.J. Watson and Almaden
Research Centers (DPW), as well as TU Berlin (DPW) and the Sloan School of Management
at MIT and the Microsoft New England Research Center (DBS), where we were on sabbatical
leave when the final editing of the book occurred. We are grateful to the National Science
Foundation for supporting our research in approximation algorithms.
Additional materials related to the book (such as contact information and errata) can be
found at the website www.designofapproxalgs.com.
We are also grateful to our wives and children — to Ann, Abigail, Daniel, and Ruth, and
to
´
Eva, Rebecca, and Amy — for their patience and support during the writing of this volume.
Finally, we hope the book conveys some of our enthusiasm and enjoyment of the area of
approximation algorithms. We hope that you, dear reader, will enjoy it too.
David P. Williamson
David B. Shmoys
January 2011
Electronic web edition. Copyright 2011 by David P. Williamson and David B. Shmoys.
To be published by Cambridge University Press
剩余499页未读,继续阅读
资源评论
ShowMeAI
- 粉丝: 5710
- 资源: 42
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 自动驾驶定位系列教程十:闭环修正.pdf
- HM2333-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- Python实现插入排序算法(源代码)
- 123.cpp
- HM2319-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- modbus4j-3.0.4.jar
- 蒙特·卡罗实验、使用蒙特·卡罗方法计算圆周率近似值.docx
- HM2319A-VB一款P-Channel沟道SOT23的MOSFET晶体管参数介绍与应用说明
- JAVA SpringBoot 集成华为云OBS,多镜像配置settings
- 一个文件共享系统,包括前端文件展示系统和后台管理系统,基于SpringBoot + MyBatis实现
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功