“ ความมั่นใจ” ของผลลัพธ์จากคอมพิวเตอร์ควอนตัมในระดับใด


22

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

แต่เนื่องจากสถานะของแต่ละ qubit นั้นมีความเป็นไปได้แน่นอนนี่หมายความว่าผลที่ได้อาจเป็นไปได้อย่างใดอย่างหนึ่งโดยมีโอกาสที่แตกต่างกัน หากฉันรันโปรแกรมอีกครั้ง - ฉันควรคาดหวังว่าจะเห็นผลลัพธ์ที่แตกต่างกันหรือไม่?

ฉันจะแน่ใจได้อย่างไรว่าฉันได้ผลลัพธ์ที่ "ดีที่สุด"? อะไรที่ทำให้มั่นใจ ฉันคิดว่ามันไม่สามารถวัดแบบชั่วคราวได้ดังที่อธิบายไว้ในคำถามนี้เนื่องจากมันจะไม่ยุบผลลัพธ์

คำตอบ:


15

ส่วนใหญ่ของอัลกอริทึมที่มีประโยชน์ / ค่อนข้างมีประสิทธิภาพ1สำหรับคอมพิวเตอร์ควอนตัมเป็นของ'ซับซ้อนควอนตัมควอนตัมเวลา' ข้อผิดพลาดควอนตัม '(BQP) ตามคำจำกัดความนี้คุณต้องการให้ 'อัตราการล้มเหลว' ของอัลกอริทึมควอนตัมใด ๆ เป็นหรือแม้ว่าผลลัพธ์อาจยังคงมีข้อผิดพลาดเล็กน้อย อัลกอริทึมที่ไม่น่าจะเป็น (ที่สามารถทำงานได้ในเวลาพหุนาม) จะยังคงอยู่ในระดับความซับซ้อนนี้มีความแตกต่างเพียงอย่างเดียวว่ามันมักจะส่งกลับผลที่ถูกต้อง2 P(สำเร็จ)213P(success)23

อย่างไรก็ตามในขณะที่คุณสามารถเรียกใช้อัลกอริธึมได้ตามอำเภอใจจำนวนครั้งนี่ก็เท่ากับการมีโอกาสประสบความสำเร็จอย่างน้อยสำหรับอินพุตของความยาวและค่าคงที่บวก .nc12+ncnc

ดังนั้นผลลัพธ์ 'ถูกต้อง' คือผลลัพธ์ที่ปรากฏอย่างน้อยสองในสามของเวลายกเว้นว่าคุณต้องการคำนวณ 'one-shot' เช่นถ้าคุณต้องการสร้างตัวเลขสุ่มหรือถ้าคุณต้องการทำอะไรบางอย่างเช่นเกณฑ์มาตรฐาน ชิปควอนตัมซึ่งสถิติมีความสำคัญและเป็นส่วนหนึ่งของ 'ผลลัพธ์'

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

ใช่คุณอาจเห็นผลลัพธ์ที่แตกต่างกันทุกครั้งที่คุณทำการคำนวณ ความมั่นใจในผลลัพธ์นั้นมาจาก:

  1. อัลกอริทึมของควอนตัมทำให้มั่นใจว่าผลลัพธ์ที่ถูกต้องเกิดขึ้นกับความน่าจะเป็นสูง
  2. ทำซ้ำอัลกอริทึมซ้ำหลาย ๆ ครั้งเพื่อค้นหาผลลัพธ์ที่น่าจะเป็นไปได้มากที่สุด

1 ที่นี่อัลกอริทึมที่สามารถคำนวณได้ในเวลาพหุนามเพื่อแก้ปัญหาด้วย 'ความน่าจะเป็นสูง' ถึงแม้ว่าสำหรับจุดประสงค์ของคำตอบนี้ความซับซ้อนของเวลามีความสำคัญน้อยกว่า

2 อย่างน้อยที่สุดก็เป็นอุดมคติ


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

จุด @glS ยุติธรรมดังนั้นฉันได้แก้ไขเพื่อแก้ไข / ชี้แจงนี้ - สิ่งเดียวก็คือขั้นตอนวิธีการที่ไม่น่าจะยังคงมีข้อผิดพลาด จำกัด ในการที่อัตราความล้มเหลวเป็น 0 ดังนั้นน่าจะเป็นเพียงการทั่วไปของการกำหนด
Mithrandir24601

9

อธิบายรายละเอียดตามMithrandir24601การตอบสนองของ -

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

ตัวอย่างเช่นคอมพิวเตอร์ควอนตัมของคุณอาจให้คำตอบที่ถูกต้องสำหรับคำถาม YES / NO สองครั้งจากทุก ๆ สามข้อ นี่อาจดูเหมือนว่าประสิทธิภาพไม่ดี แต่สิ่งนี้หมายความว่าถ้าคุณเรียกใช้หลายครั้งคุณสามารถรับคำตอบส่วนใหญ่และมั่นใจมากว่ากฎส่วนใหญ่จะให้คำตอบที่ถูกต้อง (เช่นเดียวกันสำหรับการคำนวณแบบสุ่มปกติเช่นกัน) วิธีที่ความเชื่อมั่นเพิ่มขึ้นกับจำนวนของคาถาหมายความว่าตราบใดที่การทดสอบใด ๆ ให้คำตอบที่มีความหมายมากกว่าโอกาส 50% ที่จะถูกต้อง คุณสามารถสร้างความมั่นใจได้สูงสุดเท่าที่คุณต้องการเพียงแค่ทำการวิ่งซ้ำจำนวนเล็กน้อย (ถึงแม้ว่าจะต้องวิ่งมากขึ้นก็ตามโอกาสที่คำตอบที่ถูกต้องในการวิ่งครั้งใดครั้งหนึ่งจะอยู่ใกล้ถึง 50%)

ในแง่ทฤษฎีเราให้ชื่อBQPแก่การรวบรวมปัญหาที่แก้ไขได้ในขั้นตอนการคำนวณโดยคอมพิวเตอร์ควอนตัมสำหรับขนาดอินพุตที่สามารถระบุได้ด้วยสตริงnบิตซึ่งคำตอบคือ ถูกต้องด้วยความน่าจะเป็นอย่างน้อย 2/3; จากอาร์กิวเมนต์ข้างต้นปัญหาชุดเดียวกันนี้จะได้รับหากคุณต้องการให้คำตอบนั้นถูกต้องด้วยความน่าจะเป็น 999/1000 หรือ (1 - 1e-8)poly(n)n

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

สิ่งนี้เป็นความจริงสำหรับอัลกอริธึมแบบสุ่มเช่นกัน - ความแตกต่างที่เราคาดหวังว่าคอมพิวเตอร์ควอนตัมจะสามารถแก้ปัญหาที่คอมพิวเตอร์แบบสุ่มเพียงอย่างเดียวไม่สามารถแก้ไขได้อย่างง่ายดาย


0

153×5

เป็นแนวที่ดีโดยเฉพาะอย่างยิ่งกับจังหวะที่ดีของ Aaronson และผู้ชมมักจะหัวเราะอย่างน้อยนิด แต่แน่นอนว่าเราทุกคนรู้ว่านั่นเป็นลักษณะที่น่าจะเป็นเรื่องเล็กน้อยของอัลกอริธึมของ Shor

15315515=3×5

FACTORผมยังไม่มีข้อความGBQPยังไม่มีข้อความPBQP

BQPยังไม่มีข้อความP

(ฉันรู้ว่ามีสองคำตอบที่ยอดเยี่ยมอยู่แล้วอย่างไรก็ตามคำถามนี้อนุญาตให้มีการอธิบาย / ชี้แจงในเครื่องหมายคำพูด / anectdote ของ Aaronson)

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