ความเข้าใจที่เป็นรูปธรรมของความแตกต่างระหว่างคำจำกัดความของ PP และ BPP


9

ฉันกำลังสับสนเกี่ยวกับวิธี PPและBPPมีการกำหนด ให้เราสมมติเป็นลักษณะการทำงานสำหรับภาษา{L} Mเป็นเครื่องจักรทัวริงที่น่าจะเป็น คำจำกัดความต่อไปนี้ถูกต้อง:χL
BPP={L:Pr[χ(x)M(x)]12+ϵxL, ϵ>0}
PP={L:Pr[χ(x)M(x)]>12}

หากคำจำกัดความไม่ถูกต้องโปรดพยายามเปลี่ยนแปลงให้น้อยที่สุดเพื่อให้ถูกต้อง (เช่นไม่ให้คำจำกัดความอื่น ๆ ที่เทียบเท่าซึ่งใช้เครื่องนับหรือรุ่นที่ดัดแปลงบางส่วน) ฉันไม่สามารถแยกแยะเงื่อนไขความน่าจะเป็นได้อย่างชัดเจนทั้งบนคำจำกัดความ

ตัวอย่างที่เป็นรูปธรรมบางอย่างที่มีความเข้าใจอย่างลึกซึ้งในจุดที่ลึกซึ้งจะเป็นประโยชน์อย่างมาก

คำตอบ:


10

มันดูถูกต้องสำหรับฉัน ความแตกต่างระหว่าง BPP และ PP เป็นที่สำหรับ BPP ความน่าจะเป็นที่จะต้องมีมากกว่าโดยคงที่ในขณะที่สำหรับ PP มันอาจจะเป็น n ดังนั้นสำหรับปัญหา BPP คุณสามารถทำการขยายความน่าจะเป็นด้วยการทำซ้ำ ๆ จำนวนเล็กน้อยในขณะที่ปัญหา PP ทั่วไปคุณไม่สามารถทำได้1/2 1/2+1/2n


12

คำตอบของ Vor ให้คำจำกัดความมาตรฐาน ผมขออธิบายความแตกต่างให้เห็นได้ชัดขึ้น

Letจะมีความน่าจะเป็นขั้นตอนวิธีการพหุนามข้อผิดพลาดเวลา จำกัด สำหรับภาษาว่าคำตอบถูกต้องกับความน่าจะเป็นอย่างน้อยPให้เป็นอินพุตและขนาดของอินพุตMLp12+δxn

สิ่งที่แตกต่างโดยพลขั้นตอนวิธีการจากขั้นตอนวิธีการเป็นช่องว่างในเชิงบวกระหว่างความน่าจะเป็นของการยอมรับและน่าจะเป็นของการยอมรับL PPBPPxLxLสิ่งที่สำคัญเกี่ยวกับคือช่องว่างที่มีอย่างน้อย(1)} ฉันจะพยายามที่จะอธิบายว่าทำไมความแตกต่างนี้มีความสำคัญและช่วยให้เราสามารถพิจารณาได้รับการพิจารณากลไกที่มีประสิทธิภาพ (คาดคะเนแม้จะเท่ากับ ) ในขณะที่ถือว่าไม่มีประสิทธิภาพ (ที่จริงมีBPPnO(1)BPPPPPPPNP ) ทั้งหมดนี้มาจากช่องว่างนี้

เริ่มต้นด้วยการดูให้ละเอียดยิ่งขึ้นPP

โปรดทราบว่าหากอัลกอริทึมใช้บิตสุ่มมากที่สุดในระหว่างการดำเนินการและความน่าจะเป็นข้อผิดพลาดน้อยกว่าดังนั้นความน่าจะเป็นข้อผิดพลาดนั้นเป็นจริง ๆไม่สามารถเลือกบิตสุ่มใด ๆ ทำให้คำตอบของอัลกอริทึมไม่ถูกต้องr(n)2r(n)0

นอกจากนี้อัลกอริทึมที่ใช้เวลารันไม่สามารถใช้บิตสุ่มมากกว่าดังนั้นหากข้อผิดพลาดของอัลกอริธึมที่น่าจะเป็นกับกรณีที่แย่ที่สุดในการรันไทม์จะดีกว่าt(n)t(n)t(n)

ด้วยเหตุผลที่คล้ายคลึงกันเราสามารถแสดงให้เห็นว่ากรณีที่ความแตกต่างระหว่างความน่าจะเป็นที่จะยอมรับและความน่าจะเป็นที่จะรับนั้นเล็กเกินไปนั้นคล้ายกับกรณีที่เราไม่มีความแตกต่างกันเกือบ เช่นเดียวกับในxLxLPP กรณี.

ตอนนี้เราไปต่อ BPP.

ในอัลกอริธึมความน่าจะเป็นเราสามารถเพิ่มความน่าจะเป็นสำหรับการตอบได้อย่างถูกต้อง สมมติว่าเราต้องการเพิ่มความน่าจะเป็นที่ถูกต้องให้1ϵ สำหรับพูดความน่าจะเป็นข้อผิดพลาด ϵ=2n (ข้อผิดพลาดเล็กน้อยชี้แจง)

ความคิดนั้นง่าย: รัน M หลายครั้งและรับคำตอบส่วนใหญ่

เราควรวิ่งกี่ครั้ง M เพื่อให้ได้ความน่าจะเป็นข้อผิดพลาดให้มากที่สุด ϵ? Θ(δ1lgϵ)ครั้ง หลักฐานจะได้รับที่ด้านล่างของคำตอบนี้

ทีนี้ลองมาพิจารณากันดีกว่าว่าอัลกอริทึมที่เราคุยกันนั้นจำเป็นต้องเป็นพหุนาม นั่นหมายความว่าเราไม่สามารถวิ่งได้Mมากกว่าพหุนามหลายครั้ง ในคำอื่น ๆΘ(δ1lnϵ)=nO(1)หรือมากกว่านั้น

δ1lgϵ=nO(1)

ความสัมพันธ์นี้จัดหมวดหมู่อัลกอริธึมข้อผิดพลาดน่าจะเป็นขอบเขตในคลาสขึ้นอยู่กับความน่าจะเป็นข้อผิดพลาดของพวกเขา ไม่มีความแตกต่างระหว่างความน่าจะเป็นข้อผิดพลาดϵ ความเป็นอยู่ 2n หรือค่าคงที่ในเชิงบวก (เช่นไม่เปลี่ยนแปลง n) หรือ 12nO(1). เราสามารถได้จากสิ่งเหล่านี้ไปยังสิ่งอื่นในขณะที่เหลืออยู่ภายในเวลาพหุนาม

อย่างไรก็ตามหาก δ เล็กเกินไปพูด 0, 2n, หรือแม้กระทั่ง nω(1) จากนั้นเราไม่มีวิธีเพิ่มความน่าจะเป็นของความถูกต้องและลดความน่าจะเป็นข้อผิดพลาดให้พอเข้าไป BPP.

ประเด็นหลักที่นี่คือสิ่งต่อไปนี้ BPPเราสามารถลดความน่าจะเป็นข้อผิดพลาดได้อย่างมีประสิทธิภาพเป็นแบบทวีคูณดังนั้นเราจึงเกือบมั่นใจเกี่ยวกับคำตอบและนั่นคือสิ่งที่ทำให้เราพิจารณาอัลกอริธึมระดับนี้เป็นอัลกอริธึมที่มีประสิทธิภาพ ความน่าจะเป็นข้อผิดพลาดสามารถลดลงได้มากจนความล้มเหลวของฮาร์ดแวร์มีแนวโน้มมากขึ้นหรือแม้แต่ดาวตกที่ตกลงมาบนคอมพิวเตอร์ก็มีโอกาสมากกว่าที่จะเกิดข้อผิดพลาดโดยอัลกอริธึมความน่าจะเป็น

นั่นไม่เป็นความจริงสำหรับ PPเราไม่ทราบวิธีการลดความน่าจะเป็นข้อผิดพลาดและเราถูกทิ้งไว้เกือบราวกับว่าเรากำลังตอบรับโดยการขว้างเหรียญเพื่อให้ได้คำตอบ (เรายังไม่สมบูรณ์ความน่าจะเป็นไม่ใช่ครึ่งหนึ่ง แต่ใกล้ กับสถานการณ์นั้น)


ส่วนนี้ให้การพิสูจน์ว่าจะได้รับความน่าจะเป็นข้อผิดพลาด ϵ เมื่อเราเริ่มต้นด้วยอัลกอริทึมที่มีช่องว่าง (12δ,12+δ) เราควรวิ่ง M Θ(δ1lgϵ) ครั้ง

ปล่อย Nk เป็นอัลกอริทึมที่ทำงาน M สำหรับ kครั้งแล้วตอบตามคำตอบของคนส่วนใหญ่ เพื่อความง่ายลองสมมติว่าk แปลกเราจึงไม่มีความสัมพันธ์

พิจารณากรณีที่ xL. กรณีxLคล้ายกัน. แล้วก็

Pr{M(x) accepts}=p12+δ
เพื่อวิเคราะห์ความน่าจะเป็นที่ถูกต้องของ Nk เราจำเป็นต้องประเมินความน่าจะเป็นที่ส่วนใหญ่ของ k วิ่งยอมรับ

ปล่อย Xi เป็น 1 ถ้า ith run ยอมรับและเป็น 0ถ้ามันปฏิเสธ โปรดทราบว่าการรันแต่ละครั้งไม่ขึ้นอยู่กับผู้อื่นเนื่องจากใช้บิตสุ่มอิสระ ดังนั้นXis เป็นตัวแปรสุ่มแบบบูลอิสระ

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

ปล่อย Y=Σi=1kXi. เราจำเป็นต้องประเมินความน่าจะเป็นที่คนส่วนใหญ่ยอมรับเช่นความน่าจะเป็นที่Yk2.

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

ทำอย่างไร? เราสามารถใช้ Chernoff bound ซึ่งบอกเราถึงความเข้มข้นของความน่าจะเป็นใกล้กับค่าที่คาดไว้ สำหรับตัวแปรสุ่มใด ๆZ ด้วยมูลค่าที่คาดหวัง μ, เรามี

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

ซึ่งบอกว่าความน่าจะเป็นนั้น Z คือ αμ ห่างจากค่าที่คาดหวัง μ จะลดลงอย่างชี้แจงเป็น αเพิ่มขึ้น เราจะใช้มันเพื่อจำกัดความน่าจะเป็นของY<k2.

โปรดทราบว่าเรามีความเป็นเส้นตรงของความคาดหวัง

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

ตอนนี้เราสามารถใช้ Chernoff ที่ถูกผูกไว้ เราต้องการขอบเขตบนของความน่าจะเป็นY<k2. Chernoff ที่ถูกผูกไว้จะให้ขอบเขตบนความน่าจะเป็นของ|Y(k2+kδ)|>kδซึ่งเพียงพอ เรามี

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

และถ้าเราเลือก α ดังนั้น αkp=kδ เราทำเสร็จแล้วดังนั้นเราเลือก α=δp2δ2δ+1.

ดังนั้นเราจึงมี

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

และถ้าคุณทำการคำนวณคุณจะเห็นว่า

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

เรามี

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

เราต้องการให้ข้อผิดพลาดเป็นอย่างมาก ϵดังนั้นเราจึงต้องการ

eΘ(kδ)ϵ

หรือในคำอื่น ๆ

Θ(δ1lgϵ)k

จุดสำคัญอย่างหนึ่งที่นี่ก็คือในกระบวนการเราจะใช้บิตสุ่มอีกมากมายและเวลาการทำงานจะเพิ่มขึ้นนั่นคือเวลาที่เลวร้ายที่สุด Nk จะคร่าวๆ k คูณเวลาทำงานของ M.

ที่นี่จุดกึ่งกลางของช่องว่างคือ 12. แต่โดยทั่วไปไม่จำเป็นต้องเป็นอย่างนั้น เราสามารถนำวิธีการที่คล้ายกันมาใช้สำหรับค่าอื่น ๆ โดยใช้เศษส่วนอื่นแทนส่วนใหญ่สำหรับการยอมรับ


7

ใช้สัญลักษณ์ของคุณ:

BPP={L: เครื่องทัวริงที่น่าจะเป็นแบบโพลิโนเมียลเวลา M, และ costant 0<c1/2 ดังนั้น xPr[χL(x)=M(x)]12+c}

PP={L: เครื่องทัวริงที่น่าจะเป็นแบบโพลิโนเมียลเวลา M ดังนั้น xPr[χL(x)=M(x)]>12}

ความแตกต่างได้รับการชี้ให้เห็นโดย adrianN และคุณยังสามารถดู Wikipedia PP กับ BPP

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.