Załóżmy, że algorytm losowy używa losowych bitów. Najniższe prawdopodobieństwo błędu, jakiego można się spodziewać (nie spełniając deterministycznego algorytmu z błędem 0), wynosi . Które algorytmy losowe osiągają tak minimalne prawdopodobieństwo błędu?
Oto kilka przykładów, które przychodzą na myśl:
- Algorytmy próbkowania, np. Gdzie chcemy oszacować rozmiar zestawu, do którego można sprawdzić członkostwo. Jeśli ktoś pobierze losowo równomiernie próbki do sprawdzenia, granica Chernoffa gwarantuje wykładniczo małe prawdopodobieństwo błędu.
- Algorytm Karger-Klein-Tarjan do obliczania minimalnego drzewa opinającego. Algorytm wybiera każdą krawędź z prawdopodobieństwem 1/2 i rekurencyjnie znajduje MST w próbce. Można użyć Chernoffa, aby argumentować, że jest wykładniczo nieprawdopodobne, że będzie 2n + 0,1m krawędzi, które są lepsze niż drzewo (tzn. Wolałby je przejąć nad jedną z krawędzi drzewa).
Czy możesz wymyślić inne przykłady?
Zgodnie z odpowiedzią Andrasa poniżej: Rzeczywiście, każdy algorytm wielomianu czasu można przekształcić w wolniejszy algorytm wielomianu z wykładniczo małym prawdopodobieństwem błędu. Skupiam się na algorytmach, które są tak wydajne, jak to możliwe. W szczególności dla dwóch przykładów, które podałem, istnieją deterministyczne algorytmy wielomianowe, które rozwiązują problemy. Zainteresowanie algorytmami losowymi wynika z ich wydajności.
źródło
Odpowiedzi:
Impagliazzo i Zuckerman udowodnili (FOCS'89, patrz tutaj ), że jeśli algorytm BPP używar 1 - 2- k O ( r + k )
źródło
Nie jestem pewien, czy tego właśnie szukasz, ale jest to powiązane:
Zobacz Erdös and Pomerance (1986) , Kim and Pomerance (1989) oraz Dåmgard, Landrock i Pomerance (1993), aby uzyskać więcej informacji.
źródło