随机算法 (Fall 2011): Difference between revisions

From TCS Wiki
Jump to navigation Jump to search
imported>Etone
 
(96 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Infobox
|name        = Infobox
|bodystyle    =
|title        = <font size=3>随机算法
<br>Randomized Algorithms</font>
|titlestyle  =
|image        =
|imagestyle  =
|caption      =
|captionstyle =
|headerstyle  = background:#ccf;
|labelstyle  = background:#ddf;
|datastyle    =
|header1 =Instructor
|label1  =
|data1  =
|header2 =
|label2  =
|data2  = 尹一通
|header3 =
|label3  = Email
|data3  = yitong.yin@gmail.com  yinyt@nju.edu.cn 
|header4 =
|label4= office
|data4= 计算机系 804
|header5 = Class
|label5  =
|data5  =
|header6 =
|label6  = Class meetings
|data6  = Monday, 10am-12pm <br> 仙逸C-420
|header7 =
|label7  = Place
|data7  =
|header8 =
|label8  = Office hours
|data8  = Wednesday, 2-5pm <br>计算机系 804
|header9 = Textbooks
|label9  =
|data9  =
|header10 =
|label10  =
|data10  =
{{Infobox
|name        =
|bodystyle  =
|title        =
|titlestyle  =
|image        = [[File:MR-randomized-algorithms.png|border|100px]]
|imagestyle  =
|caption      = ''Randomized Algorithms'',<br>Motwani and Raghavan, Cambridge Univ Press, 1995.
|captionstyle =
}}
|header11 =
|label11  =
|data11  =
{{Infobox
|name        =
|bodystyle  =
|title        =
|titlestyle  =
|image        = [[File:Probability_and_Computing.png|border|100px]]
|imagestyle  =
|caption      = ''Probability and Computing: Randomized Algorithms and Probabilistic Analysis'', Mitzenmacher and Upfal, Cambridge Univ Press, 2005.
|captionstyle =
}}
|belowstyle = background:#ddf;
|below =
}}
This is the page for the class ''Randomized Algorithms'' for the Fall 2011 semester. Students who take this class should check this page periodically for content updates and new announcements.
= Announcement =
* (11/25/2011) <font size=5 color=red>11月26日周六、11月27日周日两天补课。早10点开始,地点系楼229。</font>
* (09/19/2011) 第一次作业发布,在Assignments部分。下周一9月26日上课时交。
* 由于有事需要外出,9月14日星期三下午的office hour改在9月13日下午。
* 第一次课的slides已发布,见lecture notes部分。以后每节课slides的链接都会在那一课的题目后面。
= Course info =
* '''Instructor ''': 尹一通,
:*email: yitong.yin@gmail.com, yinyt@nju.edu.cn
:*office: 计算机系 804.
* '''Class meeting''': Monday 10am-12pm, 仙逸C-420.
* '''Office hour''': Wednesday 2-5pm, 计算机系 804.
= Syllabus =
随机化(randomization)是现代计算机科学最重要的方法之一,近二十年来被广泛的应用于计算机科学的各个领域。在这些应用的背后,是一些共通的随机化原理。在随机算法这门课程中,我们将用数学的语言描述这些原理,将会介绍以下内容:
* 一些重要的随机算法的设计思想和理论分析;
* 概率论工具及其在算法分析中的应用,包括常用的概率不等式,以及数学证明的概率方法 (the probabilistic method);
* 随机算法的概率模型,包括典型的随机算法模型,以及概率复杂度模型。
作为一门理论课程,这门课的内容偏重数学上的分析和证明。这么做的目的不单纯是为了追求严格性,而是因为用更聪明的方法去解决问题往往需要具备有一定深度的数学思维和数学洞察力。
=== 先修课程 Prerequisites ===
* 必须:离散数学,概率论,线性代数。
* 推荐:算法设计与分析。
=== Course materials ===
* [[随机算法 (Fall 2011)/Course materials|教材和参考书]]
=== 成绩 Grades ===
* 课程成绩:本课程将会有六次作业和一次期末考试。最终成绩将由平时作业成绩和期末考试成绩综合得出。
* 迟交:如果有特殊的理由,无法按时完成作业,请提前联系授课老师,给出正当理由。否则迟交的作业将不被接受。
=== <font color=red> 学术诚信 Academic Integrity </font>===
学术诚信是所有从事学术活动的学生和学者最基本的职业道德底线,本课程将不遗余力的维护学术诚信规范,违反这一底线的行为将不会被容忍。
作业完成的原则:署你名字的工作必须由你完成。允许讨论,但作业必须独立完成,并在作业中列出所有参与讨论的人。不允许其他任何形式的合作——尤其是与已经完成作业的同学“讨论”。
本课程将对剽窃行为采取零容忍的态度。在完成作业过程中,对他人工作(出版物、互联网资料、其他人的作业等)直接的文本抄袭和对关键思想、关键元素的抄袭,按照 [http://www.acm.org/publications/policies/plagiarism_policy ACM Policy on Plagiarism]的解释,都将视为剽窃。剽窃者成绩将被取消。如果发现互相抄袭行为,<font color=red> 抄袭和被抄袭双方的成绩都将被取消</font>。因此请主动防止自己的作业被他人抄袭。
学术诚信影响学生个人的品行,也关乎整个教育系统的正常运转。为了一点分数而做出学术不端的行为,不仅使自己沦为一个欺骗者,也使他人的诚实努力失去意义。让我们一起努力维护一个诚信的环境。
= Assignments =
* (2011/09/19) [[随机算法 (Fall 2011)/Problem set 1|Problem set 1]] due on Sept 26, in class.
* (2011/10/10) [[随机算法 (Fall 2011)/Problem set 2|Problem set 2]] due on Oct 24, in class.
* (2011/11/07) [[随机算法 (Fall 2011)/Problem set 3|Problem set 3]] due on Nov 21, in class.
* (2011/11/28) [[随机算法 (Fall 2011)/Problem set 4|Problem set 4]] due on Dec 12, in class.
= Lecture Notes =
= Lecture Notes =
# [[随机算法 (Fall 2011)/Introduction|Introduction]]
# Introduction  | [http://tcs.nju.edu.cn/slides/random2011/random1.pdf slides]
#* [[随机算法 (Fall 2011)/Randomized Algorithms: an Introduction|Randomized Algorithms: an Introduction]]
#*[[随机算法 (Fall 2011)/Complexity Classes|Complexity Classes]]
#*[[随机算法 (Fall 2011)/Complexity Classes|Complexity Classes]]
# Probability Basics
# Probability Basics |  [http://tcs.nju.edu.cn/slides/random2011/random2.pdf slides]
#* [[随机算法 (Fall 2011)/Probability Space|Probability Space]]
#* [[随机算法 (Fall 2011)/Probability Space|Probability Space]]
#* [[随机算法 (Fall 2011)/Verifying Matrix Multiplication|Verifying Matrix Multiplication]]
#* [[随机算法 (Fall 2011)/Verifying Matrix Multiplication|Verifying Matrix Multiplication]]
Line 9: Line 130:
#* [[随机算法 (Fall 2011)/Random Variables and Expectations|Random Variables and Expectations]]
#* [[随机算法 (Fall 2011)/Random Variables and Expectations|Random Variables and Expectations]]
#* [[随机算法 (Fall 2011)/Randomized Quicksort|Randomized Quicksort]]
#* [[随机算法 (Fall 2011)/Randomized Quicksort|Randomized Quicksort]]
# Balls and Bins
# Balls and Bins [http://tcs.nju.edu.cn/slides/random2011/random3.pdf slides]
#* [[随机算法 (Fall 2011)/Distributions of Coin Flipping|Distributions of Coin Flipping]]
#* [[随机算法 (Fall 2011)/Distributions of Coin Flipping|Distributions of Coin Flipping]]
#* [[随机算法 (Fall 2011)/Birthday Problem|Birthday Problem]]
#* [[随机算法 (Fall 2011)/Birthday Problem|Birthday Problem]]
Line 16: Line 137:
#* [[随机算法 (Fall 2011)/Bloom Filter|Bloom Filter]]
#* [[随机算法 (Fall 2011)/Bloom Filter|Bloom Filter]]
#* [[随机算法 (Fall 2011)/Stable Marriage|Stable Marriage]]
#* [[随机算法 (Fall 2011)/Stable Marriage|Stable Marriage]]
# Moment and Deviation
# Moment and Deviation [http://tcs.nju.edu.cn/slides/random2011/random4.pdf slides]
#* [[随机算法 (Fall 2011)/Markov's Inequality|Markov's Inequality]]
#* [[随机算法 (Fall 2011)/Markov's Inequality|Markov's Inequality]]
#* [[随机算法 (Fall 2011)/Chebyshev's Inequality|Chebyshev's Inequality]]
#* [[随机算法 (Fall 2011)/Chebyshev's Inequality|Chebyshev's Inequality]]
#* [[随机算法 (Fall 2011)/Median Selection|Median Selection]]
#* [[随机算法 (Fall 2011)/Median Selection|Median Selection]]
#* [[随机算法 (Fall 2011)/Random Graphs|Random Graphs]]
#* [[随机算法 (Fall 2011)/Random Graphs|Random Graphs]]
# Hashing and Fingerprinting
# Chernoff Bound [http://tcs.nju.edu.cn/slides/random2011/random5.pdf slides]
#* [[随机算法 (Fall 2011)/Pair-wise Independence|Pair-wise Independence]]
#* [[随机算法 (Fall 2011)/Derandomization: Two-Point Sampling|Derandomization: Two-Point Sampling]]
# Chernoff Bound
#* [[随机算法 (Fall 2011)/Chernoff Bound|Chernoff Bound]]
#* [[随机算法 (Fall 2011)/Chernoff Bound|Chernoff Bound]]
#* [[随机算法 (Fall 2011)/Set Balancing|Set Balancing]]
#* [[随机算法 (Fall 2011)/Set Balancing|Set Balancing]]
#* [[随机算法 (Fall 2011)/DNF Counting|DNF Counting]]
#* [[随机算法 (Fall 2011)/Routing in a Parallel Network|Routing in a Parallel Network]]
#* [[随机算法 (Fall 2011)/Routing in a Parallel Network|Routing in a Parallel Network]]
# Concentration of Measure
# Concentration of Measure [http://tcs.nju.edu.cn/slides/random2011/random6.pdf slides1]| [http://tcs.nju.edu.cn/slides/random2011/random7.pdf slides2]
#* [[随机算法 (Fall 2011)/Martingales|Martingales]]
#* [[随机算法 (Fall 2011)/Martingales|Martingales]]
#* [[随机算法 (Fall 2011)/Azuma's Inequality|Azuma's Inequality]]
#* [[随机算法 (Fall 2011)/Azuma's Inequality|Azuma's Inequality]]
#* [[随机算法 (Fall 2011)/The Method of Bounded Differences|The Method of Bounded Differences]]
#* [[随机算法 (Fall 2011)/The Method of Bounded Differences|The Method of Bounded Differences]]
# Dimension Reduction
# The Probabilistic Method  [http://tcs.nju.edu.cn/slides/random2011/random8.pdf slides]
#* [[随机算法 (Fall 2011)/Johnson-Lindenstrauss Theorem|Johnson-Lindenstrauss Theorem]]
#* [[随机算法 (Fall 2011)/Johnson-Lindenstrauss Theorem|Johnson-Lindenstrauss Theorem]]
#* [[随机算法 (Fall 2011)/Locality Sensitive Hashing|Locality Sensitive Hashing]]
# The Probabilistic Method
#* [[随机算法 (Fall 2011)/The Probabilistic Method|The Probabilistic Method]]
#* [[随机算法 (Fall 2011)/Lovász Local Lemma|Lovász Local Lemma]]
#* [[随机算法 (Fall 2011)/Derandomization: Conditional Expectation|Derandomization: Conditional Expectation]]
# Approximation Algorithms
#* [[随机算法 (Fall 2011)/Max-SAT|Max-SAT]]
#* [[随机算法 (Fall 2011)/Max-SAT|Max-SAT]]
#* [[随机算法 (Fall 2011)/Linear Programming|Linear Programming]]
#* [[随机算法 (Fall 2011)/Linear Programming|Linear Programming]]
#* [[随机算法 (Fall 2011)/Randomized Rounding|Randomized Rounding]]
#* [[随机算法 (Fall 2011)/Lovász Local Lemma|Lovász Local Lemma]]
# Fingerprinting
#* [[随机算法 (Fall 2011)/Verifying Matrix Multiplication|Verifying Matrix Multiplication]]
#* [[随机算法 (Fall 2011)/Schwartz-Zippel|Schwartz-Zippel]]
#* [[随机算法 (Fall 2011)/Equality and pattern matching|Equality and pattern matching]]
# Universal hashing
#* [[随机算法 (Fall 2011)/Limited independence|Limited independence]]
#* [[随机算法 (Fall 2011)/Universal hash families|Universal hash families]]
#* [[随机算法 (Fall 2011)/Perfect hashing|Perfect hashing]]
# Markov Chain and Random Walk
# Markov Chain and Random Walk
#* [[随机算法 (Fall 2011)/Markov Chains|Markov Chains]]
#* [[随机算法 (Fall 2011)/Markov Chains|Markov Chains]]
#* [[随机算法 (Fall 2011)/Random Walks on Undirected Graphs|Random Walks on Undirected Graphs]]
#* [[随机算法 (Fall 2011)/Random Walks on Undirected Graphs|Random Walks on Undirected Graphs]]
#* [[随机算法 (Fall 2011)/Cover Time|Cover Time]]
#* [[随机算法 (Fall 2011)/Electrical Network|Electrical Network]]
#* [[随机算法 (Fall 2011)/Electrical Network|Electrical Network]]
#* [[随机算法 (Fall 2011)/Cover Time|Cover Time]]
#* [[随机算法 (Fall 2011)/Graph Connectivity|Graph Connectivity]]
#* [[随机算法 (Fall 2011)/Graph Connectivity|Graph Connectivity]]
# Random Walk Algorithms
#* [[随机算法 (Fall 2011)/Randomized 2SAT|Randomized 2SAT]]
#* [[随机算法 (Fall 2011)/Randomized 3SAT|Randomized 3SAT]]
#* [[随机算法 (Fall 2011)/Perfect Matching in Regular Bipartite Graph|Perfect Matching in Regular Bipartite Graph]]
#* [[随机算法 (Fall 2011)/The Metropolis Algorithm|The Metropolis Algorithm]]
#* [[随机算法 (Fall 2011)/Dynamics on Spins|Dynamics on Spins]]
# Coupling and Mixing Time
# Coupling and Mixing Time
#* [[随机算法 (Fall 2011)/Mixing Time|Mixing Time]]
#* [[随机算法 (Fall 2011)/Mixing Time|Mixing Time]]
#* [[随机算法 (Fall 2011)/Coupling|Coupling]]
#* [[随机算法 (Fall 2011)/Coupling|Coupling]]
#* [[随机算法 (Fall 2011)/Card Shuffling|Card Shuffling]]
#* [[随机算法 (Fall 2011)/Card Shuffling|Card Shuffling]]
#* [[随机算法 (Fall 2011)/Path Coupling|Path Coupling]]
#* [[随机算法 (Fall 2011)/Graph Coloring|Graph Coloring]]
#* [[随机算法 (Fall 2011)/Graph Coloring|Graph Coloring]]
# Expander Graphs I
# Expander Graphs
#* [[随机算法 (Fall 2011)/Expander Graphs|Expander Graphs]]
#* [[随机算法 (Fall 2011)/Expander Graphs|Expander Graphs]]
#* [[随机算法 (Fall 2011)/Graph Spectrum|Graph Spectrum]]
#* [[随机算法 (Fall 2011)/Graph Spectrum|Graph Spectrum]]
#* [[随机算法 (Fall 2011)/The Spectral Gap|The Spectral Gap]]
#* [[随机算法 (Fall 2011)/Random Walk on Expander Graph|Random Walk on Expander Graph]]
#* [[随机算法 (Fall 2011)/Random Walk on Expander Graph|Random Walk on Expander Graph]]
# Expander Graphs II
#* [[随机算法 (Fall 2011)/Expander Mixing Lemma|Expander Mixing Lemma]]
#* [[随机算法 (Fall 2011)/Expander Mixing Lemma|Expander Mixing Lemma]]
#* [[随机算法 (Fall 2011)/Chernoff Bound for Expander Walks|Chernoff Bound for Expander Walks]]
#* [[随机算法 (Fall 2011)/The Zig-Zag Product|The Zig-Zag Product]]
#* [[随机算法 (Fall 2011)/USTCON in LOGSPACE|USTCON in LOGSPACE]]
# Sampling and Counting
# Sampling and Counting
#* [[随机算法 (Fall 2011)/The Metropolis Algorithm|The Metropolis Algorithm]]
#* [[随机算法 (Fall 2011)/The #P Class and Approximation|The #P Class and Approximation]]
#* [[随机算法 (Fall 2011)/The #P Class and Approximation|The #P Class and Approximation]]
#* [[随机算法 (Fall 2011)/DNF Counting|DNF Counting]]
#* [[随机算法 (Fall 2011)/DNF Counting|DNF Counting]]
Line 77: Line 187:
#* [[随机算法 (Fall 2011)/Count Matchings|Count Matchings]]
#* [[随机算法 (Fall 2011)/Count Matchings|Count Matchings]]
#* [[随机算法 (Fall 2011)/Sampling and Counting|Sampling and Counting]]
#* [[随机算法 (Fall 2011)/Sampling and Counting|Sampling and Counting]]
# MCMC
 
#* [[随机算法 (Fall 2011)/Spin Systems|Spin Systems]]
= The Probability Theory Toolkit =
#* [[随机算法 (Fall 2011)/Simulated Annealing|Simulated Annealing]]
* [http://en.wikipedia.org/wiki/Expected_value#Linearity Linearity of expectation]
#* [[随机算法 (Fall 2011)/Volume Estimation|Volume Estimation]]
* [http://en.wikipedia.org/wiki/Independence_(probability_theory)#Independent_events Independent events] and [http://en.wikipedia.org/wiki/Conditional_independence conditional independence]
# Complexity
* [http://en.wikipedia.org/wiki/Conditional_probability Conditional probability] and [http://en.wikipedia.org/wiki/Conditional_expectation conditional expectation]
* The [http://en.wikipedia.org/wiki/Law_of_total_probability law of total probability] and the [http://en.wikipedia.org/wiki/Law_of_total_expectation law of total expectation]
* The [http://en.wikipedia.org/wiki/Boole's_inequality union bound]
* [http://en.wikipedia.org/wiki/Bernoulli_trial Bernoulli trials]
* [http://en.wikipedia.org/wiki/Geometric_distribution Geometric distribution]
* [http://en.wikipedia.org/wiki/Binomial_distribution Binomial distribution]
* [http://en.wikipedia.org/wiki/Markov's_inequality Markov's inequality]
* [http://en.wikipedia.org/wiki/Chebyshev's_inequality Chebyshev's inequality]
* [http://en.wikipedia.org/wiki/Chernoff_bound Chernoff bound]
* [http://en.wikipedia.org/wiki/Pairwise_independence k-wise independence]
* [http://en.wikipedia.org/wiki/Martingale_(probability_theory) Martingale]
* [http://en.wikipedia.org/wiki/Azuma's_inequality Azuma's inequality] and [http://en.wikipedia.org/wiki/Hoeffding's_inequality Hoeffding's inequality]
* [http://en.wikipedia.org/wiki/Doob_martingale Doob martingale]
* The [http://en.wikipedia.org/wiki/Probabilistic_method  probabilistic method]  
* The [http://en.wikipedia.org/wiki/Lov%C3%A1sz_local_lemma  Lovász local lemma]  and the [http://en.wikipedia.org/wiki/Algorithmic_Lov%C3%A1sz_local_lemma algorithmic Lovász local lemma]  
* [http://en.wikipedia.org/wiki/Markov_chain Markov chain]:
::[http://en.wikipedia.org/wiki/Markov_chain#Reducibility reducibility], [http://en.wikipedia.org/wiki/Markov_chain#Periodicity Periodicity], [http://en.wikipedia.org/wiki/Markov_chain#Steady-state_analysis_and_limiting_distributions stationary distribution], [http://en.wikipedia.org/wiki/Hitting_time hitting time], cover time;
::[http://en.wikipedia.org/wiki/Markov_chain_mixing_time mixing time], [http://en.wikipedia.org/wiki/Conductance_(probability) conductance]

Latest revision as of 12:45, 15 September 2017

随机算法
Randomized Algorithms
Instructor
尹一通
Email yitong.yin@gmail.com yinyt@nju.edu.cn
office 计算机系 804
Class
Class meetings Monday, 10am-12pm
仙逸C-420
Office hours Wednesday, 2-5pm
计算机系 804
Textbooks

Randomized Algorithms,
Motwani and Raghavan, Cambridge Univ Press, 1995.

Probability and Computing: Randomized Algorithms and Probabilistic Analysis, Mitzenmacher and Upfal, Cambridge Univ Press, 2005.
v · d · e

This is the page for the class Randomized Algorithms for the Fall 2011 semester. Students who take this class should check this page periodically for content updates and new announcements.

Announcement

  • (11/25/2011) 11月26日周六、11月27日周日两天补课。早10点开始,地点系楼229。
  • (09/19/2011) 第一次作业发布,在Assignments部分。下周一9月26日上课时交。
  • 由于有事需要外出,9月14日星期三下午的office hour改在9月13日下午。
  • 第一次课的slides已发布,见lecture notes部分。以后每节课slides的链接都会在那一课的题目后面。

Course info

  • Instructor : 尹一通,
  • email: yitong.yin@gmail.com, yinyt@nju.edu.cn
  • office: 计算机系 804.
  • Class meeting: Monday 10am-12pm, 仙逸C-420.
  • Office hour: Wednesday 2-5pm, 计算机系 804.

Syllabus

随机化(randomization)是现代计算机科学最重要的方法之一,近二十年来被广泛的应用于计算机科学的各个领域。在这些应用的背后,是一些共通的随机化原理。在随机算法这门课程中,我们将用数学的语言描述这些原理,将会介绍以下内容:

  • 一些重要的随机算法的设计思想和理论分析;
  • 概率论工具及其在算法分析中的应用,包括常用的概率不等式,以及数学证明的概率方法 (the probabilistic method);
  • 随机算法的概率模型,包括典型的随机算法模型,以及概率复杂度模型。

作为一门理论课程,这门课的内容偏重数学上的分析和证明。这么做的目的不单纯是为了追求严格性,而是因为用更聪明的方法去解决问题往往需要具备有一定深度的数学思维和数学洞察力。

先修课程 Prerequisites

  • 必须:离散数学,概率论,线性代数。
  • 推荐:算法设计与分析。

Course materials

成绩 Grades

  • 课程成绩:本课程将会有六次作业和一次期末考试。最终成绩将由平时作业成绩和期末考试成绩综合得出。
  • 迟交:如果有特殊的理由,无法按时完成作业,请提前联系授课老师,给出正当理由。否则迟交的作业将不被接受。

学术诚信 Academic Integrity

学术诚信是所有从事学术活动的学生和学者最基本的职业道德底线,本课程将不遗余力的维护学术诚信规范,违反这一底线的行为将不会被容忍。

作业完成的原则:署你名字的工作必须由你完成。允许讨论,但作业必须独立完成,并在作业中列出所有参与讨论的人。不允许其他任何形式的合作——尤其是与已经完成作业的同学“讨论”。

本课程将对剽窃行为采取零容忍的态度。在完成作业过程中,对他人工作(出版物、互联网资料、其他人的作业等)直接的文本抄袭和对关键思想、关键元素的抄袭,按照 ACM Policy on Plagiarism的解释,都将视为剽窃。剽窃者成绩将被取消。如果发现互相抄袭行为, 抄袭和被抄袭双方的成绩都将被取消。因此请主动防止自己的作业被他人抄袭。

学术诚信影响学生个人的品行,也关乎整个教育系统的正常运转。为了一点分数而做出学术不端的行为,不仅使自己沦为一个欺骗者,也使他人的诚实努力失去意义。让我们一起努力维护一个诚信的环境。

Assignments

Lecture Notes

  1. Introduction | slides
  2. Probability Basics | slides
  3. Balls and Bins slides
  4. Moment and Deviation slides
  5. Chernoff Bound slides
  6. Concentration of Measure slides1| slides2
  7. The Probabilistic Method slides
  8. Fingerprinting
  9. Universal hashing
  10. Markov Chain and Random Walk
  11. Coupling and Mixing Time
  12. Expander Graphs
  13. Sampling and Counting

The Probability Theory Toolkit

reducibility, Periodicity, stationary distribution, hitting time, cover time;
mixing time, conductance