Вероятностные вычисления. Классы RP, coRP, ZPP, BPP/Задачи/mc-amplification — различия между версиями

Материал из DISCOPAL
Перейти к: навигация, поиск
(Массовая правка: замена :Нерешенные задачи]] на :Решенные задачи]])
(не показано 13 промежуточных версий этого же участника)
Строка 1: Строка 1:
 
* <tt>A</tt> — Монте-Карло алгоритм с вероятностью правильного вычисления f(x): <m>\frac{1}{2}+p\left(|x|\right)</m>
 
* <tt>A</tt> — Монте-Карло алгоритм с вероятностью правильного вычисления f(x): <m>\frac{1}{2}+p\left(|x|\right)</m>
  
Сколько <tt>k(|x|)</tt> повторений вызова <tt>A</tt> надо сделать, чтобы добиться вероятности правильного вычисления большей <tt>(1-q)</tt>?
+
Сколько <tt>k(|x|)</tt> повторений вызова <tt>A</tt> надо сделать, чтобы добится вероятности правильного вычисления большей <tt>(1-q)</tt>?
  
 
Если:
 
Если:
Строка 7: Строка 7:
 
* <m>p\left(|x|\right)=\frac{1}{\log_2{|x|}}</m>
 
* <m>p\left(|x|\right)=\frac{1}{\log_2{|x|}}</m>
  
[[Category:На проверку]]
+
 
 
<!--Вообще-то, решения уже есть-->
 
<!--Вообще-то, решения уже есть-->
  
<latex>
+
[[Категория:Решенные задачи]]
 
+
Решение (Василий Бунаков, 974 гр.)
+
\smallskip
+
 
+
Пусть $f(x)$ принимает значения 0 или 1, и алгоритм А возвращает правильный ответ с вероятностью $P = 0.5 + p(|x|)$.
+
Пусть происходит $k$ вызовов алгоритма А, и решение принимается на основе большинства результатов.
+
Тогда вероятность правильного вычисления по оценке Чебышева:
+
\begin{align*}
+
& P_{true} \geq 1 - \exp(-2(P-0.5)^2 k)
+
\end{align*}
+
Чтобы вероятность правильного вычисления была больше $1-q$, достаточно потребовать, чтобы:
+
\begin{align*}
+
&1 - \exp(-2(P-0.5)^2 k) \geq 1 - q\\
+
& k \geq \frac{-0.5 \ln q}{(P-0.5)^2}\\
+
& k = \left\lceil \frac{-0.5 \ln q}{(P-0.5)^2} \right\rceil
+
\end{align*}
+
  При $P = 0.5 + p(|x|) = 0.5 + \frac{1}{|x|}$ получается, что $$k = \lceil -0.5 {|x|}^2 \ln q \rceil;$$
+
  при $P =  0.5 + \frac{1}{\log |x|}$ число повторений вызова алгоритма равно $$k = \lceil -0.5 {(\log |x|)}^2 \ln q \rceil.$$
+
 
+
<\latex>
+

Версия 15:49, 20 мая 2020

  • A — Монте-Карло алгоритм с вероятностью правильного вычисления f(x):

Сколько k(|x|) повторений вызова A надо сделать, чтобы добится вероятности правильного вычисления большей (1-q)?

Если: