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