อัลกอริทึม Variational
ก่อนเริ่มต้น กรุณาทำแบบสำรวจก่อนเรียน สั้น ๆ นี้ก่อน เพื่อช่วยพัฒนาเนื้อหาและประสบการณ์การใช้งานของเรา
Note: This survey is provided by IBM Quantum and relates to the original English content. To give feedback on doQumentation's website, translations, or code execution, please open a GitHub issue.
คอร์สนี้ครอบคลุมรายละเอียดของอัลกอริทึม variational และอัลกอริทึม hybrid quantum-classical ระยะใกล้ที่อิงจากทฤษฎีบท variational ของกลศาสตร์ควอนตัม อัลกอริทึมเหล่านี้สามารถใช้ประโยชน์จากคอมพิวเตอร์ควอนตัมในปัจจุบันที่ยังไม่ทนทานต่อความผิดพลาด ทำให้เป็นตัวเลือกที่เหมาะสมสำหรับการบรรลุ quantum advantage
ตลอดคอร์สนี้ เราจะสำรวจ:
- แต่ละขั้นตอนในขั้นตอนการออกแบบอัลกอริทึม variational
- การแลกเปลี่ยนที่เกี่ยวข้องกับแต่ละขั้นตอน
- วิธีใช้ Qiskit Runtime primitives เพื่อปรับแต่งความเร็วและความแม่นยำ
แม้ว่าคอร์สนี้มีไว้เป็นจุดเริ่มต้นสำหรับนักวิจัยและนักพัฒนาในการสำรวจประโยชน์ของคอมพิวเตอร์ควอนตัม แต่คุณสามารถสำรวจความรู้ทางทฤษฎีและพื้นฐานเกี่ยวกับการประมวลผลเชิงควอนตัมโดยทั่วไปได้ใน Basics of Quantum Information and Computation (มีให้บริการเป็นชุดวิดีโอ YouTube ด้วย)
ขั้นตอน hybrid ที่เรียบง่าย
อัลกอริทึม variational ประกอบด้วยองค์ประกอบโมดูลหลายส่วนที่สามารถรวมและปรับแต่งตามความก้าวหน้าของอัลกอริทึม ซอฟต์แวร์ และฮาร์ดแวร์ ซึ่งรวมถึง ฟังก์ชันต้นทุน ที่อธิบายปัญหาเฉพาะด้วยชุดพารามิเตอร์, ansatz เพื่อแสดงพื้นที่การค้นหาด้วยพารามิเตอร์เหล่านี้ และ optimizer เพื่อสำรวจพื้นที่การค้นหาซ้ำ ๆ ในการวนซ้ำแต่ละครั้ง optimizer ประเมิน ฟังก์ชันต้นทุนด้วยพารามิเตอร์ปัจจุบันและเลือกพารามิเตอร์ของการวนซ้ำถัดไปจนกว่าจะconvergeไปสู่วิธีแก้ปัญหาที่เหมาะสมที่สุด ลักษณะ hybrid ของกลุ่มอัลกอริทึมนี้มาจากข้อเท็จจริงที่ว่าฟังก์ชันต้นทุนถูกประเมินโดยใช้ทรัพยากรควอนตัมและปรับแต่งผ่านทรัพยากรแบบคลาสสิก
-
กำหนดค่าเริ่มต้นปัญหา: อัลกอริทึม variational เริ่มต้นด้วยการกำหนดค่าเริ่มต้นคอมพิวเตอร์ควอนตัมในสถานะ ดีฟอลต์ จากนั้นแปลงมันเป็นสถานะที่ต้องการ (ไม่มีพารามิเตอร์) ซึ่งเราจะเรียกว่า reference state
การแปลงนี้แสดงโดยการใช้ reference operator unitary กับสถานะดีฟอลต์ เช่นว่า
-
เตรียม ansatz: ในการเริ่มปรับแต่งซ้ำจากสถานะดีฟอลต์ ไปยังสถานะเป้าหมาย เราต้องกำหนด variational form เพื่อแทนชุดของสถานะแบบมีพารามิเตอร์สำหรับอัลกอริทึม variational ของเราในการสำรวจ
เราเรียกการรวมกันใด ๆ ของ reference state และ variational form ว่า ansatz เช่นว่า: ansatz จะมีรูปแบบของ Circuit ควอนตัมแบบมีพารามิเตอร์ที่สามารถนำสถานะดีฟอลต์ ไปยังสถานะเป้าหมาย
โดยรวมทั้งหมดเราจะได้:
-
ประเมินฟังก์ชันต้นทุน: เราสามารถเข้ารหัสปัญหาของเราเป็น ฟังก์ชันต้นทุน ในรูปแบบการรวมเชิงเส้นของตัวดำเนินการ Pauli ซึ่งทำงานบนระบบควอนตัม แม้ว่าอาจเป็นข้อมูลเกี่ยวกับระบบทางกายภาพ เช่น พลังงานหรือ spin แต่เราสามารถเข้ารหัสปัญหาที่ไม่ใช่ทางกายภาพได้เช่นกัน เราสามารถใช้ Qiskit Runtime primitives เพื่อรับมือกับสัญญาณรบกวนด้วย error suppression และ error mitigation ในการประเมินฟังก์ชันต้นทุนของเรา
-
ปรับแต่งพารามิเตอร์: การประเมินจะถูกนำไปยังคอมพิวเตอร์แบบคลาสสิก ซึ่ง optimizer แบบคลาสสิกจะวิเคราะห์และเลือกชุดค่าถัดไปสำหรับพารามิเตอร์ variational หากเรามีวิธีแก้ปัญหาที่เหมาะสมที่สุดก่อนหน้า เราสามารถตั้งมันเป็น จุดเริ่มต้น เพื่อ bootstrap การปรับแต่งของเรา การใช้ สถานะเริ่มต้น นี้อาจช่วยให้ optimizer ของเราค้นหาวิธีแก้ปัญหาที่ถูกต้องได้เร็วขึ้น
-
ปรับพารามิเตอร์ ansatz ด้วยผลลัพธ์ และรันใหม่: กระบวนการทั้งหมดจะทำซ้ำจนกว่าเกณฑ์การสิ้นสุดของ optimizer แบบคลาสสิกถูกบรรลุ และชุดค่าพารามิเตอร์ที่เหมาะสมที่สุด จะถูกส่งคืน สถานะวิธีแก้ปัญหาที่เสนอสำหรับปัญหาของเราจะเป็น
ทฤษฎีบท variational
เป้าหมายทั่วไปของอัลกอริทึม variational คือการค้นหาสถานะควอนตัมที่มีค่าเฉพาะต่ำสุดหรือสูงสุดของ observable บางตัว ข้อมูลเชิงลึกสำคัญที่เราจะใช้คือ ทฤษฎีบท variational ของกลศาสตร์ควอนตัม ก่อนที่จะเข้าสู่เนื้อหาทั้งหมด เรามาสำรวจแรงจูงใจทางคณิตศาสตร์กัน
แรงจูงใจทางคณิตศาสตร์สำหรับพลังงานและ ground states
ในกลศาสตร์ควอนตัม พลังงานมาในรูปแบบของ quantum observable ที่มักเรียกว่า Hamiltonian ซึ่งเราแทนด้วย มาพิจารณา spectral decomposition ของมัน:
โดยที่ คือมิติของพื้นที่ของสถานะ, คือค่าเฉพาะที่ หรือในทางกายภาพ ระดับพลังงานที่ และ คือ eigenstate ที่สอดคล้องกัน: พลังงานที่คาดหวังของระบบในสถานะ (normalized) จะเป็น:
ถ้าเราคำนึงถึงว่า เราจะได้:
เนื่องจาก เป็น orthonormal basis ความน่าจะเป็นของการวัด คือ และผลรวมของความน่าจะเป็นทั้งหมดคือ โดยสรุป พลังงานที่คาดหวังของระบบใด ๆ สูงกว่าพลังงานต่ำสุดหรือพลังงาน ground state:
ข้อโต้แย้งข้างต้นใช้กับสถานะควอนตัมที่ถูกต้อง (normalized) ใด ๆ คือ ดังนั้นจึงเป็นไปได้อย่างสมบูรณ์ที่จะพิจารณาสถานะแบบมีพารามิเตอร์ ที่ขึ้นอยู่กับ vector พารามิเตอร์ นี่คือส่วน "variational" ที่เข้ามามีบทบาท ถ้าเราพิจารณาฟังก์ชันต้นทุนที่กำหนดโดย และต้องการลดค่าให้น้อยที่สุด ค่าต่ำสุดจะตอบสนองเสมอว่า:
ค่าต่ำสุดของ จะเป็นค่าที่ใกล้ที่สุดที่สามารถได้รับ โดยใช้สถานะแบบมีพารามิเตอร์ และความเท่ากันจะบรรลุได้ก็ต่อเมื่อมี vector พารามิเตอร์ เช่นว่า
ทฤษฎีบท variational ของกลศาสตร์ควอนตัม
ถ้าสถานะ (normalized) ของระบบควอนตัมขึ้นอยู่กับ vector พารามิเตอร์ การประมาณค่า ground state ที่ดีที่สุด (นั่นคือ eigenstate ที่มีค่าเฉพาะต่ำสุด ) คือการที่ลดค่าความคาดหวัง expectation valueของ Hamiltonian ให้น้อยที่สุด:
เหตุผลที่ทฤษฎีบท variational ถูกระบุในแง่ของ energy minima เนื่องจากมีสมมติฐานทางคณิตศาสตร์จำนวนหนึ่ง:
- ด้วยเหตุผลทางกายภาพ จำเป็นต้องมีขอบล่างจำกัดสำหรับพลังงาน แม้สำหรับ
- ขอบบนโดยทั่วไปไม่มีอยู่
อย่างไรก็ตาม ในทางคณิตศาสตร์ ไม่มีอะไรพิเศษเกี่ยวกับ Hamiltonian นอกเหนือจากสมมติฐานเหล่านี้ ดังนั้นทฤษฎีบทสามารถถูกขยายไปยัง quantum observables อื่น ๆ และ eigenstate ของมัน โดยมีเงื่อนไขว่าต้องปฏิบัติตามข้อจำกัดเดียวกัน นอกจากนี้ โปรดสังเกตว่าหากมีขอบบนจำกัด สามารถใช้ข้อโต้แย้งทางคณิตศาสตร์เดียวกันสำหรับการเพิ่มค่าเฉพาะให้สูงสุดโดยการสลับขอบล่างกับขอบบน
สรุป
ในบทเรียนนี้ คุณได้เรียนรู้มุมมองระดับสูงของอัลกอริทึม variational ในบทเรียนต่อ ๆ ไป เราจะสำรวจแต่ละขั้นตอนในรายละเอียดเพิ่มเติม พร้อมกับการแลกเปลี่ยนที่เกี่ยวข้อง