Derandomization Luby
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
470
On Slideshare
470
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
1
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Дерандомизация алгоритма Луби. Метод малых вероятностных пространств Н.Н. Кузюрин С.А. Фомин 10 октября 2008 г. Параллельный детерминированный алгоритм нахождения максимального по включению независимого множества в графе. 1 / 17
  • 2. Максимальное по включению независимое множество G = (V , E ) — неориентированный граф с n вершинами и m ребрами. Подмножество вершин I ⊆ V называется независимым в G , если никакое ребро из E не содержит обе своих конечных вершины в I . Определение Независимое множество I называется максимальным по включению, если оно не содержится в качестве собственного подмножества в другом независимом множестве в G . 2 / 17
  • 3. Максимальное по включению независимое множество G = (V , E ) — неориентированный граф с n вершинами и m ребрами. Подмножество вершин I ⊆ V называется независимым в G , если никакое ребро из E не содержит обе своих конечных вершины в I . Определение Независимое множество I называется максимальным по включению, если оно не содержится в качестве собственного подмножества в другом независимом множестве в G . 3 / 17
  • 4. Идея параллельного алгоритма Идея — на каждой итерации находится независимое множество S, которое добавляется к уже построенному I , а S ∪ Γ(S) удаляется из графа. Чтобы число итераций было небольшим, независимое множество S должно быть таким, чтобы S ∪ Γ(S) было большим. Для реализации этой идеи мы выбираем большое случайное множество вершин R ⊆ V . Маловероятно, что R будет независимым, но, с другой стороны, имеется немного ребер, оба конца которых принадлежат R. Для получения независимого множества из R мы рассмотрим такие ребра и удалим концевые вершины с меньшей степенью. 4 / 17
  • 5. Параллельный алгоритм Parallel MIS: Вход: Граф G = (V , E ). Выход: Максимальное по включению множество I ⊆ V . 1. I := ∅. 2. while V = ∅ do 2.1. for all v ∈ V выполнить (параллельно) if d(v ) = 0 then добавить v к I и удалить v из V else пометить v с вероятностью 1/2d(v ). 2.2. for all (u, v ) ∈ E выполнить (параллельно) if u и v обе помечены then удалить пометку у вершины меньшей степени. 2.3. for all v ∈ V выполнить (параллельно) if v помечена then добавить v к S. 2.4. I := I ∪ S. 2.5. удалить S ∪ Γ(S) из V и все инцидентные ребра из E . end while. 5 / 17
  • 6. Идея дерандомизации Идея: вероятностный анализ работает аналогичным образом, даже если пометки вершин делаются не полностью независимо, а попарно независимо. Независимость пометок использовалась только в леммe 1. Справедлива следующая Лемма Если в алгоритме Parallel MIS случайные пометки вершин делаются попарно независимо, то вероятность того, что хорошая вершина принадлежит множеству S ∪ Γ(S), не меньше, чем 1/24. Ключевое преимущество попарной независимости состоит в том, что только O(log n) случайных бит достаточно для порождения всех точек соответствующего вероятностного пространства. 6 / 17
  • 7. Доказательство леммы Была использована полная независимость пометок в нижней оценке вероятности, что хорошая вершина становится помеченной: Пусть Xi , 1 ≤ i ≤ n — {0, 1}–случайные величины и pi = P(Xi = 1). Если Xi независимы в совокупности, то n n P Xi > 0 ≥1− (1 − pi ). 1 1 Мы заменим эту оценку соответствующей оценкой для попарно независимых случайных величин. Утверждение. Пусть Xi , 1 ≤ i ≤ n — {0, 1}–случайные величины и pi = P(Xi = 1). Если Xi попарно независимы, то n n 1 1 P Xi > 0 ≥ min , pi . 2 2 1 1 7 / 17
  • 8. Доказательство леммы Предположим, что pi ≤ 1/2. Обозначим через Yi событие Xi = 1. Имеем по формуле включений-исключений: 1 1 P(∪n Yi ) ≥ 1 P(Yi ) − P(Yi ∧ Yj ) ≥ pi − pi pj = 2 2 i i,j i i,j 2 1 1 1 = pi − pi ≥ pi 1− pi ≥ pi . 2 2 2 i i i i i Если i pi > 1/2, то ограничим индексы суммирования по подмножеству S ⊆ [n], такому, что 1/2 ≤ i pi ≤ 1, и повторим то же доказательство. 8 / 17
  • 9. Доказательство леммы Вершина v ∈ V называется хорошей, если она имеет не менее d(v )/3 соседних вершин степени не более d(v ). Покажем, что если v — хорошая вершина, то вероятность того, что найдется помеченная вершина из Γ(v ), не меньше 1/12. Обозначим эту вероятность через P(Γ(v )marked ). Обозначим Γ∗ (v ) = {w ∈ Γ(v )| d(w ) ≤ d(v )}. По определению |Γ∗ (v )| ≥ 1 d(v ). Имеем 3 1 1 1 P(Γ(v )marked ) ≥ min{ , }≥ 2 2 2d(w ) w ∈Γ(v ) 1 1 1 1 1 1 ≥ min{ , } ≥ min{ , }≥ 2 2 2d(w ) 2 2 2d(v ) w ∈Γ∗ (v ) w ∈Γ∗ (v ) 1 1 1 1 1 1 1 1 ≥ min{ , d(v ) } ≥ min{ , } = . 2 2 3 2d(v ) 2 2 6 12 9 / 17
  • 10. Построение независимых множеств Используя лемму из анализа вероятностного алгоритма Луби (В течение каждой итерации, если вершина помечена, то она выбирается в S с вероятностью не менее 1/2) и учитывая тот факт, что в ее доказательстве использовалась только попарная независимость, получаем доказательство леммы Лемма На каждой итерации помеченная вершина выбирается в S с вероятностью не менее 1/2. 10 / 17
  • 11. Комбинируя две предыдущие леммы получаем Лемма Вероятность того, что хорошая вершина принадлежит множеству S ∪ Γ(S) не меньше, чем 1/24. 11 / 17
  • 12. Дерандомизация. Малые вероятностные пространства Элементарным событием будет приписывание пометок вершинам графа, задаваемое булевым вектором длины n. Размер построенного пространства будет полиномиальным. Идея дерандомизации: путем полного перебора точек из построенного вероятностного пространства достаточно будет вычислить в каждой точке подмножество вершин R, соответствующее шагу 2.1 алгоритма Parallel MIS, затем для каждого ребра в R выбросить концевую вершину меньшей степени (шаг 2.2 алгоритма), подсчитать число NR ребер, смежных с оставшимся множеством вершин. Взять множество R, максимизирующее показатель NR . Оно обеспечит требуемые оценки на число итераций детерминированного алгоритма. 12 / 17
  • 13. Малые вероятностные пространства Конструкция небольшого вероятностного пространства со свойством попарной независимости соответствующих случайных величин. Выберем наименьшее простое число p, такое, что cn ≤ p, где точное значение константы c > 1 выберем далее. Для каждой вершины u выберем целое au , такое, что au /p ≈ 1/2d(u) и интервал Au , |Au | = au p в Zp . Более точно, положим au = 2d(u) . Тогда p 1 au 2d(u) +1 1 1 ≤ ≤ = + ≤ 2d(u) p p 2d(u) p 1 1 1 2 1 1 2 ≤ + ≤ + · = 1+ . 2d(u) cn 2d(u) c 2d(u) 2d(u) c 13 / 17
  • 14. Малые вероятностные пространства Достаточно выбрать c = 10, чтобы для вероятности вершины u быть помеченной на шаге 2.1 алгоритма Parallel MIS было выполнено неравенство 1 au 6 1 ≤ ≤ · . 2d(u) p 5 2d(u) Покажите, что при указанном выборе вероятностей пометки вершин в алгоритме Parallel MIS лемма 1 справедлива без изменений, в лемме 2 оцениваемая вероятность не меньше 2/5, в лемме 3 — соответственно не менее (2/5) · (1 − e −1/6 ). Покажите, что при указанном выборе вероятностей пометки вершин анализ алгоритма Parallel MIS, проведенный для попарно независимых величин, остается в силе с небольшим изменением констант. В частности, лемма 1 справедлива без изменений, в лемме 2 оцениваемая вероятность не меньше 2/5, в лемме 3 — не 1 менее (2/5) · (1/12) = 30 . 14 / 17
  • 15. Малые вероятностные пространства Пусть X (u) — случайная величина, полученная путем равномерного выбора x, y ∈ Zp следующим образом: X (u) = 1, если xu + y ∈ Au , и нулю в противном случае. Это значит, что P(X (u) = 1) = au /p, поскольку Px,y (X (u) = 1) = P(∃a ∈ Au : xu + y = a) = 1 au = P(x = (a − y )u −1 ) = = . p p a∈Au a∈Au Для доказательства попарной независимости достаточно показать, что au av P(X (u) = 1, X (v ) = 1) = P(X (u) = 1) P(X (v ) = 1) = . p2 15 / 17
  • 16. Малые вероятностные пространства Имеем P(X (u) = 1, X (v ) = 1) = = P(∃a ∈ Au , b ∈ Av : xu + y = a, xv + y = b) = = P(xu + y = a, xv + y = b) = a∈Au , b∈Av 1 au av = 2 = 2 . p p a∈Au , b∈Av 16 / 17
  • 17. Интернет поддержка курса http://discopal.ispras.ru/ Вопросы? 17 / 17