Какие рандомизированные алгоритмы имеют экспоненциально малую вероятность ошибки?

15

Предположим, что рандомизированный алгоритм использует случайных битов. Наименьшая вероятность ошибки, которую можно ожидать (не имея детерминированного алгоритма с ошибкой 0), составляет 2 - Ω ( r ) . Какие рандомизированные алгоритмы достигают такой минимальной вероятности ошибки?р2-Ω(р)

Несколько примеров, которые приходят на ум:

  • Алгоритмы выборки, например, когда нужно оценить размер набора, для которого можно проверить членство. Если каждый случайным образом выбирает элементы для проверки, граница Черноффа гарантирует экспоненциально малую вероятность ошибки.
  • Алгоритм Каргера-Клейна-Тарьяна для вычисления минимального остовного дерева. Алгоритм выбирает каждое ребро с вероятностью 1/2 и рекурсивно находит MST в выборке. Можно использовать Черноффа, чтобы доказать, что экспоненциально маловероятно, что будет 2n + 0,1 м ребер, которые лучше, чем дерево (т. Е. Кто-то предпочел бы взять их за один из ребер дерева).

Можете ли вы вспомнить другие примеры?

После ответа Андраса ниже: Действительно, каждый алгоритм за полиномиальное время может быть преобразован в более медленный алгоритм за полиномиальное время с экспоненциально малой вероятностью ошибки. Я сосредоточен на алгоритмах, которые максимально эффективны. В частности, для двух примеров, которые я привел, существуют детерминированные алгоритмы полиномиального времени, которые решают проблемы. Интерес к рандомизированным алгоритмам связан с их эффективностью.

Дана Мошковиц
источник
1
Не полный ответ, но была некоторая работа в рандомизированной числовой линейной алгебре. youtube.com/watch?v=VTroCeIqDVc
Baby Dragon
Возможно, этого ожидать нельзя , но можно, конечно, надеяться (все еще «не имея детерминированного алгоритма с ошибкой 0»), что для всех действительных чисел с, если с<1 тогда есть алгоритм чья вероятность ошибки составляет 2-ср, Я считаю, что проверка полиномиальной идентичности является такой проблемой.
@RickyDemer Я не понимаю ваш комментарий. Обычный рандомизированный алгоритм для PIT имеет ошибку, которая не является экспоненциальной по случайности. Так что вы говорите? Вы говорите, что может существовать такой алгоритм для любой проблемы BPP?
Сашо Николов
Теперь я понимаю, что на самом деле я не вижу способа показать, что PIT входит в класс, который я описал. С другой стороны, допустим, что будет суперполиномом от d (т. Е. Длина (S) будет суперлинейной по длине (d)) будет достаточно для леммы Шварца-ЦиппеляSd (продолжение ...)
1
Многие вероятностные конструкции имеют такое поведение, не так ли? Например, выбирая случайный набор двоичных строк, и , глядя на их ближайшую пару - вероятность того, что будет две строки в расстоянии меньше , чем очень мало. -------------------------------------------------- ----------------------- В духе ответа BPP ниже: Учитывая постоянный расширитель степени, с n вершинами и n / 2 отмеченными вершинами, вероятность случайного блуждания длины O ( t ) пропустить отмеченную вершину составляет 2 - Ω ( t ) , если t = Ω (N/4N/2О(T)2-Ω(T) . Tзнак равноΩ(журналN)
Сариэль Хар-Пелед

Ответы:

18

Импальяццо и Цукерман доказали (FOCS'89, см. Здесь ), что если алгоритм BPP использует случайных битов для достижения вероятности правильности не менее 2/3, то, применяя случайные обходы на графах расширителей, это можно улучшить до вероятности правильности из 1 - 2 - к , используя O ( гр1-2-К случайные биты. (Примечание:хотя авторы используют конкретную константу 2/3 в аннотации, ее можно заменить любой другой константой, большей 1/2).О(р+К)

Если мы возьмем , то это означает , что любой алгоритм , который достигает БПП вероятность ошибки постоянной < 1 / 2 , с использованиемКзнак равнор<1/2 случайных бит, может быть (нетривиально) улучшеночтобы иметь вероятность ошибки 2 - Ом ( г ) . Таким образом, (если я что-то не так понял) вероятность ошибки2 - Ω ( r ) достижима длякаждойпроблемы в BPP.р2-Ω(р)2-Ω(р)

Андрас Фараго
источник
6
Проблема с такими методами усиления заключается в том, что они замедляют алгоритм. Новый алгоритм может использовать только O (r) случайных битов, но его время выполнения составляет r раз (оригинальное время выполнения). Если r, скажем, по крайней мере линейный по входному размеру n (который обычно есть), вы просто замедлили алгоритм на коэффициент n. Это не то, чем большинство алгоритмистов были бы рады…
Дана Мошковиц
2

Я не уверен, что это то, что вы ищете, но это связано:

Предположим, я хочу найти случайное битное простое число. Обычный алгоритм состоит в том, чтобы выбрать случайное (нечетное) k- битное целое число и выполнить тест примитивности Миллера-Рабина для t раундов на нем и повторять до тех пор, пока не будет найдено вероятное простое число. Какова вероятность того, что эта процедура возвращает составное число? Назовите эту вероятность p k ,ККT .пК,T

Стандартный анализ теста первичности Миллера-Рабина показывает, что раундов дает вероятность сбоя не более 4 - t . Это, вместе с теоремой о простых числах, влечет p k , tO ( k 4 - tT4-T

пК,TО(К4-T),

Однако мы выполняем тест Миллера-Рабина на случайных входах, поэтому мы можем использовать гарантию ошибки среднего случая. Мы получаем намного лучшую оценку. В частности, для , p k , 12 -Tзнак равно1

пК,12-(1-о(1))КперперКперК2-Ω~(К),
То есть, мы получаем экспоненциально малую вероятность отказа только с одним повторением теста!

См. Erdös and Pomerance (1986) , Kim and Pomerance (1989) и Dåmgard, Landrock and Pomerance (1993) для получения более подробной информации.

Это не проблема , решение и количество хаотичности используется О(К2)О(К)

Томас поддерживает Монику
источник