Randomized Rounding

375 views
321 views

Published on

Published in: Technology, Art & Photos
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
375
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Randomized Rounding

  1. 1. Вероятностное округление для «MAX-SAT» Н.Н. Кузюрин С.А. Фомин 10 октября 2008 г. Вероятностное округление для MAX-SAT . Вероятностные алгоритмы, основанные на округлении нецелочисленного решения. 1 / 16
  2. 2. Задача MAX-SAT Задача Максимальная выполнимость/MAX-SAT. Даны m скобок конъюнктивной нормальной формы (КНФ) с n переменными. Найти значения переменных, максимизирующие число выполненных скобок. Определение Литерал — каждое вхождение переменной xi (или ее отрицания) в скобку. Например, для (x1 ∨ x2 ) ∧ (x1 ∨ x3 ) литералами будут x1 , x2 , x1 , x3 . 2 / 16
  3. 3. Определение Вероятностный приближенный алгоритм A гарантирует точность C , если для всех входов I E mA (I ) 1≥ ≥ C > 0, m0 (I ) где m0 (I ) — оптимум, mA (I ) — значение, найденное алгоритмом, и решается задача максимизации. 3 / 16
  4. 4. Теорема Пусть xi = {0, 1} равновероятно: p = 1 . Для любого подмножества 2 скобок S = {C1 , . . . , Cm }, |S| = m m m E Ci (x) ≥ . 2 i=1 Доказательство. Пусть |C | = k, тогда 1 1 P(C = 0) = 2−k ⇒ P(C = 1) = 1 − 2−k ≥ ⇒ E Ci (x) ≥ . 2 2 Откуда m m E Ci (x) ≥ . 2 i=1 4 / 16
  5. 5. Задача MAX-SAT(IP) Cj : скобка. zj = {0, 1} : значение скобки. Cj+ : i : xi ∈ Cj (положительные литералы в скобке). Cj− : i : xi ∈ Cj . m zj → max (1) j=1 xi + (1 − xi ) ≥ zj , ∀j. i∈Cj+ i∈Cj− xi , zj ∈ {0, 1}, ∀i, j 5 / 16
  6. 6. Пусть xi , zj — решение линейной релаксации. ^ ^ m zj → max (2) j=1 xi + (1 − xi ) ≥ zj , ∀j. i∈Cj+ i∈Cj− xi , zj ∈ [0, 1], ∀i, j m j=1 zj ^ — верхняя оценка оптимума (2). 6 / 16
  7. 7. Вход: Формулировка задачи «MAX-SAT» в виде (1) x ← решения линейной релаксации (2) ^ for all i ∈ {1..m} do xi ← 0 if random(0..1) ≤ xi then ^ xi ← 1 {xi ← 1 с вероятностью xi } ^ end if end for Выход: (x1 , . . . , xm ). Теорема Алгоритм обеспечивает приближенное решение (1), со средней 1 точностью (1 − e ). 7 / 16
  8. 8. Лемма Пусть |Cj | = k, βk = 1 − (1 − 1/k)k . P(Cj = 1) ≥ βk zj . ^ Доказательство. Пусть Cj = x1 ∨ . . . ∨ xk . Из (2) следует: x1 + . . . + xk ≥ zj . ^ ^ ^ k k P(Cj = 0) = (1 − xi ) ⇒ P(Cj = 1) = 1 − ^ (1 − xi ). ^ i=1 i=1 P(Cj = 1) минимально если ∀i xi = zj /k. ^ ^ f (z) = 1 − (1 − z/k)k — вогнутая функция: f (0) = 0 = βk z ⇒ f (z) ≥ βk z 0 ≤ z ≤ 1 ∀k ∈ N. f (1) = 1 − (1 − 1/k)k = βk z 8 / 16
  9. 9. 9 / 16
  10. 10. Теорема Алгоритм «Линейная релаксация и вероятностное округление» обеспечивает приближенное решение (1), со средней точностью 1 (1 − e ). Доказательство. βk = 1 − (1 − 1/k)k ≥ 1 − 1/e ∀k ∈ N. EmA (I ) ≥ βk zj ≥ (1 − 1/e) ^ zj . ^ k Cj ∈S k j m0 (I ) ≤ zj . ^ j 1 1− ≈ 0.632120559 e 10 / 16
  11. 11. Теорема Алгоритм «Линейная релаксация и вероятностное округление» обеспечивает приближенное решение (1), со средней точностью 1 (1 − e ). Доказательство. βk = 1 − (1 − 1/k)k ≥ 1 − 1/e ∀k ∈ N. EmA (I ) ≥ βk zj ≥ (1 − 1/e) ^ zj . ^ k Cj ∈S k j m0 (I ) ≤ zj . ^ j 1 1− ≈ 0.632120559 e 11 / 16
  12. 12. 3 Алгоритм с вероятностной точностью 4 1 n1 — алгоритм «округление каждой переменной независимо в 0 или 1 с вероятностью 1/2»; 2 n2 — алгоритм «Линейная релаксация и вероятностное округление»; 3 выбираем max(n1 , n2 ). Теорема 3 E max{n1 , n2 } ≥ zj . ^ 4 j 12 / 16
  13. 13. Доказательство. S k : множество скобок, содержащих ровно k литералов. Имеем En1 = (1 − 2−k ) ≥ (1 − 2−k )^j z k Cj ∈S k k Cj ∈S k En2 ≥ βk zj . ^ k Cj ∈S k n1 + n2 (1 − 2−k ) + βk E max(n1 , n2 ) ≥ E ≥ zj . ^ 2 2 k Cj ∈S k k 1 3 (1 − 2−k ) + βk = 2 − 2−k − 1 − > ∀k ∈ N. k 2 (1 − 2−k ) + βk 3 3 E max(n1 , n2 ) ≥ zj ≥ ^ zj = ^ zj . ^ 2 4 4 k Cj ∈S k j 13 / 16
  14. 14. Упражнение Рассмотрим задачу «MAX-3ESAT», это «MAX-SAT», только в КНФ в каждой скобке ровно три литерала. Предложите вероятностный алгоритм с точностью 7 . 8 14 / 16
  15. 15. Карта памяти лекции 15 / 16
  16. 16. Интернет поддержка курса http://discopal.ispras.ru/ Вопросы? 16 / 16

×