PP ve BPP tanımları arasındaki farkın somut anlaşılması


9

PP ve BPP'nin nasıl tanımlandığı konusunda kafam karıştı . Diyelim bir dilin karakteristik işlevi . M olasılıklı Turing Makinesi olabilir. Aşağıdaki tanımlar doğru mu:χL
BPP={L:Pr[χ(x)M(x)]12+ϵxL, ϵ>0}
PP={L:Pr[χ(x)M(x)]>12}

Tanım yanlışsa, lütfen bunları düzeltmek için minimum değişiklik yapmaya çalışın (sayma makinesi veya değiştirilmiş bir model kullanan başka bir eşdeğer tanım vermeyin). Her iki tanımdaki olasılık koşullarını düzgün bir şekilde ayırt edemiyorum.

İnce noktalara ilişkin açık bir kavrayışa sahip bazı somut örnekler çok yardımcı olacaktır.

Yanıtlar:


10

Bu benim için doğru görünüyor. BPP ve PP arasındaki fark, BPP için olasılığın bir sabit tarafından büyük olması gerektiğidir, oysa PP için . Böylece BPP problemleri için az sayıda tekrar ile olasılık amplifikasyonu yapabilirsiniz, oysa genel PP problemleri için yapamazsınız.1/2 1/2+1/2n


12

Vor'un cevabı standart tanımı verir. Farkı biraz daha sezgisel olarak açıklamaya çalışayım.

Let , bir dil için sınırlı bir hata olasılıksal polinom zamanlı algoritma düzgün biçimde olasılık ile cevap, en azından . Let giriş ve olmak giriş boyutu.MLp12+δxn

Rasgele bir algoritmasını algoritmasından şey, de kabul etme olasılığı ile kabul etme olasılığı arasındaki pozitif boşluktur . PPBPPxLxL ile ilgili en önemli şey , boşluğun en az . Bu ayrımın neden önemli olduğunu açıklamaya çalışacağım ve nin etkili algoritmalar (hatta eşit olduğu tahmin ediliyor ) olarak değerlendirilmemize izin verirken verimsiz (aslında içerirBPPnO(1)BPPPPPPPNP ). Bütün bunlar bu boşluktan geliyor.

daha dikkatli bakarak başlayalım .PP

Bir algoritma yürütme sırasında en fazla rastgele bit kullanıyorsa ve hata olasılığı den küçükse, hata olasılığının aslında olduğunu unutmayın. algoritmanın yanlış cevap vermesini sağlayın.r(n)2r(n)0

Ayrıca, zaman çalışan bir algoritma daha kullanamaz , en kötü durum çalışan zamanlı bir olasılık algoritmanın hata bu durumda, rastgele bit daha iyi olduğut(n)t(n)t(n)

Benzer bir argümanla de kabul etme olasılığı ile kabul etme olasılığı arasındaki farkın çok küçük olduğu durumun, neredeyse hiçbir farkımızın olmadığı duruma benzer olduğunu gösterebiliriz. olarak durumda.xLxLPP

Şimdi .BPP

Olasılıksal algoritmalarda, doğru cevap verme olasılığını artırabiliriz. Diyelim ki hata olasılığı (katlanarak küçük hata) için doğruluk olasılığını yükseltmek istiyoruz .1ϵϵ=2n

Fikir basit: birkaç kez çalıştırın ve çoğunluğun cevabını alın.M

Hata olasılığını en fazla elde etmek için kaç kez çalıştırmalıyız ? kez. Kanıt bu cevabın alt kısmında verilmiştir.MϵΘ(δ1lgϵ)

Şimdi tartıştığımız algoritmaların polinom-zaman olması gerektiğine bakalım. Bu, polinomdan birçok kez daha fazla çalıştıramayacağımız anlamına gelir . Başka bir deyişle, veya daha basitMΘ(δ1lnϵ)=nO(1)

δ1lgϵ=nO(1)

Bu ilişki, sınırlı hata olasılık algoritmalarını hata olasılıklarına bağlı olarak sınıflara ayırır. Hata olasılığı ile veya pozitif bir sabit (yani ile değişmez ) veya . Polinom zamanının içinde kalırken bunlardan bir diğerine geçebiliriz.ϵ2nn12nO(1)

Ancak çok küçükse, diyelim , , hatta ise, doğruluk olasılığını artırmak ve hata olasılığını yeterince azaltmak için bir yolumuz yoktur. içine .δ02nnω(1)BPP

Buradaki ana nokta, de hata olasılığını katlanarak etkili bir şekilde azaltabilmemizdir, bu nedenle cevaplar hakkında neredeyse ve bu algoritma sınıfını verimli algoritmalar olarak görmemizi sağlayan şey budur. Hata olasılığı o kadar azaltılabilir ki, bir donanım arızası daha olasıdır veya hatta bilgisayara düşen bir meteor olasılıklı algoritma tarafından hata yapmaktan daha olasıdır.BPP

Bu için doğru değil, hata olasılığını azaltmanın hiçbir yolunu bilmiyoruz ve neredeyse cevabı elde etmek için bir para atarak cevap gibi kalıyoruz (tamamen değiliz, olasılıklar yarı yarıya değil, ama bu duruma çok yakın).PP


Bu bölüm, bir hata olasılığının elde edilmesi için kanıt sağlar GAP ile bir algoritma ile başlar zaman kaçmalıyız kez.ϵ(12δ,12+δ)M Θ(δ1lgϵ)

Let çalışan algoritma olması için çoğunluğun cevaba göre cevaplar ardından süreleri ve. Kolaylık olması açısından, ettiğini varsayalım biz bağları zorunda kalmamak garip.NkMkk

Davayı düşünün . Örnek benzerdir. Sonra doğruluk olasılığını analiz etmek için , çalışır kabul ediyoruz.xLxL

Pr{M(x) accepts}=p12+δ
Nkk

Let eğer 1 olmak inci sayı kabul eder ve olmayacak o reddederse. Her bir çalışmanın, bağımsız rastgele bitler kullandığından diğerlerinden bağımsız olduğunu unutmayın. Böylece bağımsız Boole rastgele değişkenleridir; burada Xii0Xi

E[Xi]=Pr{Xi=1}=Pr{M(x) accepts}=p12+δ

Let . Çoğunluğun kabul etme olasılığını, yani olasılığını tahmin .Y=Σi=1kXiYk2

Pr{Nk(x) accepts}=Pr{Yk2}

Nasıl yapılır? Beklenen değere yakın olasılık yoğunluğunu bize bildiren Chernoff sınırını kullanabiliriz. Beklenen değerine sahip herhangi bir rastgele değişken için ,Zμ

Pr{|Zμ|>αμ}<eα24μ

bu olasılığı söylüyor bir kadar, beklenen değerden üstel olarak azalır artar. Bunu olasılığını sınırlamak için kullanacağız .ZαμμαY<k2

Beklentinin doğrusallığı ile

E[Y]=E[Σi=1kXi]=Σi=1kE[Xi]=kpk2+kδ

Şimdi Chernoff sınırını uygulayabiliriz. olasılığı üzerinde bir üst sınır istiyoruz . Chernoff sınırı yeter. SahibizY<k2|Y(k2+kδ)|>kδ

Pr{|Ykp|>αkp}<eα24kp

ve almak durumunda şekilde Biz yapılır biz almak, böylece .ααkp=kδα=δp2δ2δ+1

Bu nedenle

Pr{Y<k2}Pr{|Y(k2+kδ)|>kδ}Pr{|Ykp|>αkp}<eα24kp

ve eğer hesaplamaları yaparsanız,

α24kpδ24δ+2k=Θ(kδ)

sahibiz

Pr{Y<k2}<eΘ(kδ)

Hatanın en fazla olmasını istiyoruz, bu yüzdenϵ

eΘ(kδ)ϵ

veya başka bir deyişle

Θ(δ1lgϵ)k

Buradaki temel nokta sürecinde biz çok daha fazla rastgele bit kullanacak ve aynı zamanda çalışma süresi yani, en kötü durum çalışan zamanlı artmasıdır kabaca edilecektir kez çalışan zamanlı .NkkM

Burada boşluğun orta noktası . Ancak genel olarak durum böyle olmak zorunda değildir. Kabul etmek için çoğunluk yerine diğer kesirleri alarak diğer değerler için benzer bir yöntem benimseyebiliriz.12


7

Yazınızı kullanma:

BPP={L: olasılıklı bir polinom-zamanlı Turing Makinesi ve bir kostant öyle kiM,0<c1/2xPr[χL(x)=M(x)]12+c}

PP={L: olasılıklı bir polinom-zaman Turing Makinesi böyleceMxPr[χL(x)=M(x)]>12}

Fark adrianN tarafından işaret edilmiştir ve Wikipedia PP ile BPP'ye de göz atabilirsiniz.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.