ช่วงหลังมานี้เราเริ่มจะได้ยินข่าวเกี่ยวกับคอมพิวเตอร์ควอนตัมกันมากขึ้น ทั้งเรื่องของการวิจัยพัฒนา จนไปถึงความพยายามสร้างเพื่อเอาไปใช้จริง หลายหน่วยงานในต่างประเทศก็เริ่มพูดถึง และให้การสนับสนุนงานวิจัยเหล่านี้กันมากขึ้นเรื่อยๆ (ขนาดนายกรัฐมนตรีแคนาดายังเคยพูดถึงเลย) หลายคนเชื่อกันว่านี่จะเป็นวิวัฒนาการของคอมพิวเตอร์แบบก้าวกระโดด
แต่ก็ยังมีอีกหลายคนที่ไม่รู้จัก หรือเพิ่งจะได้ยินชื่อนี้เป็นครั้งแรกเสียด้วยซ้ำ บทความนี้เขียนไว้เพื่อนำเสนอว่าคอมพิวเตอร์ควอนตัมคืออะไร แตกต่างจากคอมพิวเตอร์ที่เราใช้ๆ กันยังไง และเราจะได้ประโยชน์อะไรจากมัน
กฎของมัวร์กล่าวไว้ว่าทรานซิสเตอร์ในวงจรไอซีจะมีจำนวนเพิ่มขึ้นเป็นเท่าตัวทุกๆ 2 ปี ในวงจรขนาดเท่าเดิม หากกฎข้อนี้ยังคงเป็นจริงไปเรื่อยๆ สักวันหนึ่งทรานซิสเตอร์ก็จะมีขนาดเล็กลงจนแทบจะเท่ากับอะตอม เมื่อถึงเวลานั้น ฟิสิกส์ในชีวิตประจำวันจะไม่สามารถอธิบายปรากฎการณ์ต่างๆ ที่เกิดขึ้นภายในวงจรได้อีกต่อไป ฟิสิกส์ควอนตัมจะเข้ามามีบทบาทแทน
แต่แทนที่จะเพิ่มแค่จำนวนทรานซิสเตอร์ขนาดเล็กเข้าไปเรื่อยๆ ก็มีนักวิทยาศาสตร์ปิ๊งไอเดีย ว่าทำไมไม่ลองเอาสมบัติบางประการในฟิสิกส์ควอนตัมมาใช้ในการคำนวณซะเลยล่ะ ไอเดียที่ว่านี้กลายร่างมาเป็นศาสตร์ใหม่ เรียกว่า “การประมวลผลควอนตัม” (quantum computing) ศาสตร์นี้เริ่มมีมาในช่วงต้นปี 1980 แล้ว แต่ยังไม่ได้รับความสนใจมากนัก จนกระทั่งปี 1994 ถึงจะเริ่มมาบูม เนื่องจากมีคนพัฒนาอัลกอริทึมหาตัวประกอบเฉพาะของจำนวนเต็มขนาดใหญ่ด้วยคอมพิวเตอร์ควอนตัมได้สำเร็จ อัลกอริทึมนี้ประมวลผลได้เร็วมากเสียจนสะเทือนวงการวิทยาการเข้ารหัสกันเลยทีเดียว
สรุปแล้ว คอมพิวเตอร์ควอนตัมก็คือคอมพิวเตอร์ที่เอาสมบัติของฟิสิกส์ควอนตัมมาใช้ในการประมวลผลนั่นเอง
แล้วสมบัติของฟิสิกส์ควอนตัมอะไรบ้างหล่ะที่ถูกนำมาใช้ เพื่อตอบคำถามนี้ ผมจะพาไปแนะนำให้รู้จักกับ “คิวบิต” หน่วยข้อมูลที่เล็กที่สุดในคอมพิวเตอร์ควอนตัม
เป็นที่รู้กันว่าคอมพิวเตอร์คลาสสิกจะมีหน่วยแทนข้อมูลที่เล็กที่สุดคือบิต (bit) ในข้อมูล 1 บิต จะมีอยู่ด้วยกัน 2 สถานะ ได้แก่ 0 และ 1 (หลังจากนี้จะใชัคำว่า “คอมพิวเตอร์คลาสสิก” เรียกคอมพิวเตอร์ที่เราใช้งานกันอยู่ในปัจจุบัน)
ในคอมพิวเตอร์ควอนตัม ข้อมูลบิตจะมีสถานะพิเศษอีกอย่างหนึ่ง เรียกว่า superposition เป็นสถานะที่บิตเป็นทั้ง 0 และ 1 ในเวลาเดียวกัน เลียนแบบสถานะ quantum superposition ของอนุภาคขนาดเล็ก โดยบิตในคอมพิวเตอร์ควอนตัมนี้มีชื่อเรียกกันเล่นๆ ว่า “คิวบิต” (qubit มาจากคำว่า quantum bit)
วัสดุทางกายภาพที่จะใช้แทนข้อมูลคิวบิต ก็เลยเป็นอนุภาคขนาดเล็ก และสมบัติบางประการของมันมีสถานะ quantum superposition ตัวอย่างเช่น ขั้ว (polarization) ของอนุภาคโฟตอนของแสง หรือสปิน (spin) ของอนุภาค
อย่าเพิ่งเข้าใจผิดนะครับว่า superposition คือสถานะหมายเลข 2 ต่อจาก 0 และ 1 จริงๆ แล้วคิวบิตในสถานะ superposition นั้นยังไม่เป็นข้อมูลที่จะเอามาใช้จริงได้ แต่ต้องถูกนำไปวัดก่อน เรียกกระบวนการนี้ว่า “measurement” เมื่อคิวบิตถูกวัดแล้ว มันต้องตัดสินใจทันทีว่าจะเป็น 0 หรือ 1 โดยดูจากความน่าจะเป็นของการเปลี่ยนสถานะที่คิวบิตถูกตั้งเอาไว้
เราสามารถแก้ไขความน่าจะเป็นของการวัดคิวบิตเพื่อใช้คำนวณได้ เช่น อาจจะแก้สถานะ superposition ให้มีโอกาสถูกวัดได้สถานะ 1 สัก 70% หรือในกรณีของคิวบิต 2 ตัว เมื่อเข้าสถานะ superposition มันจะมีสถานะ 00, 01, 10, และ 11 พร้อมๆ กัน และเราก็สามารถปรับแก้ความน่าจะเป็นของการวัดให้สถานะ 00 มีโอกาสถูกวัดเจอได้สูงกว่าสถานะอื่นๆ
คลิปอธิบายสถานะ quantum superposition ของอนุภาค
รายละเอียดของคิวบิตข้างต้นนี้อาจจะยังไม่ถูกต้องร้อยเปอร์เซ็นต์ สถานะของคิวบิตแท้จริงแล้วไม่จำเป็นต้องเป็น 0 หรือ 1 เสมอไป ขึ้นอยู่กับตัว measurement แต่ในขั้นต้นให้เข้าใจกันแบบนี้ก็พอครับ
นักวิทยาศาสตร์คาดการณ์ไว้ว่าคุณสมบัติ superposition ของคิวบิตจะเป็นคุณสมบัติหนึ่งที่สามารถนำไปสร้างอัลกอริทึมสำหรับคอมพิวเตอร์ควอนตัม และจะช่วยให้ประมวลผลได้รวดเร็วขึ้นกว่าเดิม ลองดูสถานการณ์สมมติต่อไปนี้ประกอบ (หลังจากนี้จะใช้คำว่า “อัลกอริทึมควอนตัม” เรียกอัลกอริทึมสำหรับคอมพิวเตอร์ควอนตัม)
สมมติว่าเราจะไขล็อก (เปรียบเสมือนฟังก์ชัน) โดยมีกุญแจ (เปรียบเสมือนข้อมูล input) มาให้ 8 ดอก และให้การปลดล็อกสำเร็จหรือไม่สำเร็จเป็น output ของฟังก์ชัน ในบรรดากุญแจทั้ง 8 ดอกนี้จะมีเพียงดอกเดียวเท่านั้นที่สามารถปลดล็อกได้สำเร็จ และการปลดล็อกสำเร็จคือ output ที่เราต้องการ
ถ้าเป็นคอมพิวเตอร์คลาสสิก เราจะต้องหยิบกุญแจขึ้นมาไขทีละดอกจนกว่าจะเจอดอกที่สามารถปลดล็อกได้ หรือไม่งั้น เราอาจจะพิมพ์ล็อกขึ้นมาหลายๆ ชุด แล้วให้กุญแจแต่ละดอกไขของใครของมันพร้อมๆ กันได้ โดยแลกกับการใช้ทรัพยากรที่เพิ่มขึ้น
แต่สำหรับคอมพิวเตอร์ควอนตัมนั้น ตัวกุญแจสามารถสร้างสถานะ superposition เสมือนกับว่ามีอยู่ 8 ดอกพร้อมๆ กัน แล้วปลดล็อกพร้อมกันทีเดียวได้เลย กระบวนการในลักษณะนี้ถูกเรียกว่าการประมวลผลควอนตัมแบบขนาน (quantum parallelism)
กระบวนการ quantum parallelism เป็นจุดเริ่มต้นของกระบวนการในอัลกอริทึมควอนตัมหลายๆ ตัว แต่นั่นยังไม่ใช่หัวใจสำคัญของอัลกอริทึมควอนตัม เพราะถ้าเป้าหมายจริงๆ คือการหากุญแจดอกที่ปลดล็อกได้ กระบวนการนี้ก็ไม่ช่วยอะไร
Scott Aaronson ผู้ช่วยศาสตราจารย์ด้านวิทยาการคอมพิวเตอร์แห่ง MIT ผู้เขียนหนังสือ “Quantum Computing since Democritus” ให้สัมภาษณ์กับ The Washington Post ว่าแท้จริงแล้วหัวใจสำคัญของอัลกอริทึมควอนตัมคือการดัดแปลงสถานะ superposition ของคิวบิตเพื่อให้ได้คำตอบที่ต้องการ โดยอาจจะเพิ่มโอกาสของการวัดได้คำตอบที่ต้องการให้สูงขึ้น และลดโอกาสของการวัดได้คำตอบที่ผิดให้น้อยลง
เพื่อให้เห็นภาพมากขึ้น ผมจะขอพูดถึงอัลกอริทึมควอนตัม 2 ตัวด้วยกัน ได้แก่ Grover’s search algorithm และ Shor’s algorithm
Grover’s search algorithm: อัลกอริทึมค้นหาข้อมูลที่เร็วทะลุขีดจำกัด
อัลกอริทึมบนคอมพิวเตอร์คลาสสิกสำหรับค้นหาข้อมูลแบบ unstructured (ไม่มีระเบียบ ไม่มีการจัดเรียงหรือทำอะไรมาก่อน) ที่เร็วที่สุดแล้วคือ linear search คือไล่หาไปเรื่อยๆ จนกว่าจะเจอนั่นเอง ดังนั้น ถ้าข้อมูลดังกล่าวมีจำนวน 1,000,000 ชุด เหตุการณ์เลวร้ายที่สุดคือเราจะหาข้อมูลที่ต้องการเจอในรอบที่หนึ่งล้าน
แต่อัลกอริทึมควอนตัมของ Lov Grover นั้นสามารถค้นหาข้อมูลแบบ unstructured ได้ เลวร้ายสุดๆ ก็ใช้เวลาเพียงประมาณ 1,000 รอบเท่านั้น แล้วมันทำได้อย่างไร ขอให้สังเกตกราฟด้านล่างนี้ประกอบ
กราฟแสดงความน่าจะเป็นของการวัดข้อมูลคิวบิตแล้วได้ผลลัพธ์เป็นสถานะ 00, 01, 10, 11 ตามลำดับ ที่เปลี่ยนไปเมื่อผ่านอัลกอริทึมของ Grover (ที่มาภาพ: Vinayak Bhatt บน Quora)
สมมติว่ามีข้อมูลอยู่ 4 ชุด ได้แก่ ข้อมูลที่ตำแหน่ง 00, 01, 10, 11 ตามลำดับ โดยข้อมูลที่เราต้องการอยู่ที่ตำแหน่ง 10 ซึ่งกราฟแท่งจะถูกไฮไลต์ด้วยสีแดง เราจะต้องเตรียมคิวบิตไว้ทั้งหมด 4 สถานะ คือสถานะ 00, 01, 10, และ 11 ตามตำแหน่งของข้อมูล
อัลกอริทึมของ Grover จะมีกระบวนการดังนี้
นักวิทยาศาสตร์พิสูจน์มาแล้วว่า หากนำคิวบิตวนเข้ากระบวนการข้างต้นตั้งแต่ข้อ 2–5 ซ้ำไปเรื่อยๆ ประมาณ sqrt(N) รอบ เมื่อ N แทนจำนวนชุดข้อมูล ก็จะทำให้มีโอกาสวัดคิวบิตแล้วได้ตำแหน่งของข้อมูลที่เราต้องการสูงสุด
*** ถ้ายังงงๆ อยู่ ผมเขียนอธิบายอัลกอริทึมแบบละเอียดไว้ในคอมเมนต์ครับ
Shor’s algorithm: อัลกอริทึมหาตัวประกอบเฉพาะของจำนวนเต็มขนาดใหญ่
ตัวประกอบเฉพาะของจำนวนเต็มขนาดใหญ่ (เช่น 3233 = 53 × 61 แต่ในความเป็นจริงใช้ตัวเลขใหญ่กว่านี้มาก) ต้องใช้เวลานานมาก อาจนานนับร้อยปีกว่าจะหาเจอ นั่นทำให้กระบวนการเข้ารหัสทั้งหลายที่นิยมใช้กันในปัจจุบัน เช่น กระบวนการเข้ารหัส RSA พึ่งความยากของปัญหานี้ในการเข้ารหัสข้อมูล แต่ในปี 1994 Peter Shor คิดอัลกอริทึมควอนตัมเพื่อแก้ปัญหานี้ได้สำเร็จโดยเทียบกันแล้วอาจใช้เวลาเพียงไม่กี่ปีเท่านั้น (สำหรับผู้เรียนวิทยาการคอมพิวเตอร์ ดูการเทียบ time complexity และ big O notation ของแต่ละอัลกอริทึมใน Wikipedia)
Peter Shor นักคณิตศาสตร์ประยุกต์ ศาสตราจารย์ประจำ MIT (ที่มาภาพ: Heidelberg Laureate Forum)
หลักการอัลกอริทึมของ Shor จะอาศัยการลดรูปปัญหา (problem reduction) โดยเอาวิธีการหาคาบของฟังก์ชัน f(x) = ax mod M (เมื่อ M แทนจำนวนเต็มบวกที่จะแยกตัวประกอบ และ a คือจำนวนเต็มบวกที่น้อยกว่า M) มาหาตัวประกอบเฉพาะของจำนวนเต็มแทน พูดง่ายๆ คือ ถ้าเราหาคาบของฟังก์ชันนี้ได้ เราก็จะสามารถหาตัวประกอบเฉพาะของจำนวนเต็มได้
ในการหาคาบของฟังก์ชันนั้นจะใช้คอมพิวเตอร์ควอนตัม แต่เนื่องจากกระบวนการมีความซับซ้อนมาก… (ก.ไก่ ล้านตัว) จึงขอบอกเพียงแค่ว่าในขั้นตอนหนึ่ง คิวบิตสถานะ superposition ที่ผ่านการคำนวณฟังก์ชันแล้ว จะถูกนำเข้าสู่กระบวนการ quantum Fourier transform ซึ่งจะทำให้มีโอกาสสูงที่วัดคิวบิตแล้ว จะได้ตัวเลขที่สามารถนำไปคำนวณต่อเพื่อหาคาบของฟังก์ชันต่อไป และพอได้คาบของฟังก์ชันแล้ว เราก็เอาตัวเลขนี้ไปคำนวณกลับให้ได้ตัวประกอบเฉพาะตัวหนึ่งของจำนวนเต็มนั่นเอง
อัลกอริทึมของ Shor สร้างผลกระทบต่อวิทยาการเข้ารหัสอย่างมหาศาล หากมีคนที่สามารถสร้างคอมพิวเตอร์ควอนตัมขนาดใหญ่ขึ้นมาได้แล้วละก็ ข้อมูลเข้ารหัสทั้งหมดจะตกอยู่ในความเสี่ยงทันที (แต่ไม่ต้องกังวลไปครับ นักวิทยาศาสตร์ได้เตรียมวิธีการเข้ารหัสแบบอื่นๆ เพื่อหลีกเลี่ยงปัญหานี้ไว้บ้างแล้ว แต่เราจะไม่พูดถึงในบทความนี้)
อัลกอริทึมทั้งสองตัวอย่างที่ยกมานั้น เป็นเพียงอัลกอริทึมในเชิงทฤษฎีที่ยังต้องมีการทดสอบรันบนคอมพิวเตอร์ควอนตัมจริงๆ อย่างเมื่อเดือนเมษายนที่ผ่านมา ก็มีคนทดสอบแยกตัวประกอบของ 200099 ด้วยอัลกอริทึมของ Shor โดยใช้คอมพิวเตอร์ควอนตัมได้แล้ว
อย่างไรก็ตาม การสร้างเครื่องคอมพิวเตอร์ควอนตัมให้ใช้งานได้จริงนั้นเป็นไปยากมาก เนื่องจากคอมพิวเตอร์จะต้องรักษาสถานะ superposition ของคิวบิตที่มีความเสถียรต่ำไว้ให้ได้
เนื่องจากคิวบิตเป็นอนุภาคเล็ก และอยู่ท่ามกลางอนุภาคอื่นๆ รายล้อมนับพัน จึงมีโอกาสสูงมากที่จะถูกอนุภาคในสภาพแวดล้อมเข้าไปรบกวนจนสถานะเปลี่ยนแปลงไป ทำให้ข้อมูลในสถานะ superposition สูญเสียไปด้วย เหตุการณ์ทั้งหมดนี้เกิดขึ้นเพียงแค่เสี้ยววินาทีเท่านั้น นอกจากนี้ ในทฤษฎี no-cloning บอกอีกว่า เราไม่สามารถคัดลอกสถานะของคิวบิตที่ไม่ทราบสถานะตัวหนึ่งไปยังคิวบิตอีกตัวหนึ่งได้ ทำให้การคัดลอกคิวบิตเพื่อสำรองข้อมูลเป็นไปไม่ได้ด้วย
คอมพิวเตอร์ควอนตัมจึงต้องถูกออกแบบขึ้นโดยปกป้องคิวบิตไม่ให้ถูกสภาพแวดล้อมรบกวน เพื่อให้คิวบิตคงสถานะ superposition ให้ได้นานที่สุดจนกว่าการคำนวณจะเสร็จสิ้น สิ่งเหล่านี้ เป็นอุปสรรคที่ทำให้เครื่องคอมพิวเตอร์ควอนตัมขนาดใหญ่ไม่สามารถสร้างขึ้นมาได้โดยง่ายนัก นักวิทยาศาสตร์จึงต้องหาเทคนิคอื่นๆ เสริมเพื่อสร้างเครื่องคอมพิวเตอร์ควอนตัมที่สามารถใช้งานได้จริง
การสร้างคอมพิวเตอร์ควอนตัมที่คงทนต่อสภาพแวดล้อมภายนอก ถือเป็นหลักเกณฑ์สำคัญข้อหนึ่งในการสร้างคอมพิวเตอร์ควอนตัมซึ่งตั้งขึ้นโดยนักฟิสิกส์ทฤษฎีนาม David DiVincenzo เรียกว่า DiVincenzo’s criteria มีทั้งหมด 5 หัวข้อ ดังนี้
กรณีที่จะสร้างคอมพิวเตอร์ควอนตัมสำหรับการสื่อสาร จะมีหลักเกณฑ์เพิ่มอีก 2 หัวข้อ คือ
ปัจจุบัน หลายๆ สถาบันทั่วโลกทั้งภาครัฐ ภาคเอกชน และมหาวิทยาลัย ต่างก็เร่งมือให้การสนับสนุนและผลิตงานวิจัยด้านการประมวลผลควอนตัมกันมากขึ้นเรื่อยๆ จนเรียกได้ว่าเป็นยุคทองของการวิจัยด้านนี้ โดยส่วนใหญ่แล้วจะมุ่งสร้างคอมพิวเตอร์ควอนตัมให้รองรับคิวบิตจำนวนมาก เพราะยิ่งมีคิวบิตในระบบมาก นักวิจัยก็จะสามารถใช้ทดลองรันอัลกอริทึมที่ซับซ้อน หรือรันด้วย input ขนาดใหญ่เพื่อทดสอบประสิทธิภาพของมันได้
เป้าหมายสูงสุดของการวิจัยอย่างหนึ่ง คือการสร้างคอมพิวเตอร์ที่สามารถรันอัลกอริทึมใดๆ ก็ได้ นักวิทยาศาสตร์เรียกคอมพิวเตอร์ควอนตัมประเภทนี้ว่าเป็น universal ซึ่ง IBM คาดการณ์ไว้ว่าอาจจะต้องใช้คิวบิตมากกว่าหนึ่งแสนตัวเลยทีเดียว การสร้างคอมพิวเตอร์สเกลใหญ่และมีความซับซ้อนแบบนี้อาจต้องรอกันอีกนาน เพราะเรายังต้องหาองค์ความรู้ที่เกี่ยวข้องกับการจัดการคิวบิตในปริมาณมากๆ ทั้งกระบวนการตรวจสอบและแก้ไขข้อผิดพลาด วัสดุทางกายภาพอื่นๆ ที่ใช้แทนคิวบิต จนไปถึงสถาปัตยกรรมต่างๆ ของคอมพิวเตอร์ควอนตัม
อย่างไรก็ตาม วิทยาการต่างๆ ที่วิจัยกันออกมานั้นก็ทำให้การสร้างคอมพิวเตอร์ควอนตัมสเกลใหญ่เข้าใกล้ความจริงมากขึ้นเรื่อยๆ บทความนี้จะพูดถึงงานวิจัยจากสองสถาบัน ได้แก่ IBM และกูเกิล
IBM: เจ้าพ่อแห่งวงการคอมพิวเตอร์ควอนตัม
IBM มีประวัติในด้านการสนับสนุนงานวิจัยด้านคอมพิวเตอร์ควอนตัมมาตั้งแต่ช่วงถือกำเนิดของศาสตร์นี้แล้ว ที่มา - IBM Quantum Computing
ปี 1981 IBM ร่วมกับ MIT จัดงานประชุมทางวิชาการ (conference) ครั้งแรก ในหัวข้อ “The Physics of Computation” ปรากฏว่าในงานนี้ Richard Feynman นักฟิสิกส์ทฤษฎี ได้ไปเสนอไอเดียเกี่ยวกับการสร้างเครื่องคอมพิวเตอร์ควอนตัมเพื่อจำลองระบบควอนตัมไว้ (quantum simulation) ถือว่าเป็นการบุกเบิกศาสตร์การประมวลผลควอนตัมครั้งแรกๆ ในประวัติศาสตร์
ปี 1984 Charles Bennett นักวิทยาศาสตร์จาก IBM Research และ Gilles Brassard นักวิจัยจาก Université de Montréal ประเทศแคนาดา เสนอไอเดียการเข้ารหัสข้อมูลด้วยหลักการฟิสิกส์ควอนตัมในนาม “โปรโตคอล BB84” ถือเป็นโปรโตคอลการเข้ารหัสข้อมูลควอนตัมตัวแรกของโลก และในปี 1993 Bennett, Brassard และคณะก็เป็นกลุ่มแรกที่นำเสนอกระบวนการ quantum teleportation ซึ่งเป็นการส่งข้อมูลคิวบิตระยะไกลโดยใช้หลักการของ quantum entanglement
ปี 1996 David DiVincenzo ซึ่งทำงานที่ IBM ในสมัยนั้น นำเสนอหลักเกณฑ์ของการสร้างคอมพิวเตอร์ควอนตัม 7 ข้อ ในนาม DiVincenzo’s criteria หลักเกณฑ์นี้ก็ถูกนำไปใช้ในการสร้างเครื่องคอมพิวเตอร์ควอนตัมในช่วงเวลาต่อมา
ปี 2001 IBM ประสบความสำเร็จในการแยกตัวประกอบเฉพาะของ 15 (= 3 × 5) ด้วยการรันอัลกอริทึมของ Shor บนคอมพิวเตอร์ควอนตัมประเภท NMR (nuclear magnetic resonance)
ปี 2012 IBM พบเทคนิคการสร้างคิวบิตที่สามารถรักษาสถานะ superposition ของคิวบิตไว้ได้นานถึง 100 ไมโครวินาที มากขึ้นเป็น 2–4 เท่าจากเดิม
ปี 2015 IBM พัฒนาเทคนิคการตรวจจับและแก้ไขความผิดพลาดของข้อมูลคิวบิต ทั้งความผิดพลาดแบบ bit-flip และความผิดพลาดแบบ phase-flip และพัฒนาเทคนิคการตรวจสอบความผิดพลาดของคิวบิตระหว่างกันด้วยการเรียงคิวบิตเป็นสี่เหลี่ยมจัตุรัส ข่าวเก่า - IBM ประกาศความสำเร็จด้านการวิจัยควอนตัมคอมพิวเตอร์
และเมื่อเดือนพฤษภาคมที่ผ่านมา IBM เปิดตัวคลาวด์ประมวลผลควอนตัมชื่อว่า IBM Quantum Experience โดยเปิดโอกาสให้นักวิจัย นักศึกษา และบุคคลทั่วไป สามารถเข้าไปทดลองใช้คอมพิวเตอร์ควอนตัมแบบ universal จำนวน 5 คิวบิต IBM กล่าวเพิ่มเติมว่าในทศวรรษหน้าจะสร้างคอมพิวเตอร์ควอนตัมแบบ universal ที่มีจำนวนคิวบิต 50–100 ตัว ข่าวเก่า - IBM เปิดตัวคลาวด์ทดลองใช้งานคอมพิวเตอร์ควอนตัมสำหรับนักวิจัย
คลิปนำเสนอ IBM Quantum Experience
กูเกิล: คอมพิวเตอร์ควอนตัมสำหรับงานด้าน AI
ปี 2013 กูเกิลจัดตั้ง Quantum Artificial Intelligence Lab (QuAIL) โดยได้รับความร่วมมือจากศูนย์วิจัย NASA Ames และ USRA (Universities Space Research Association) โดยซื้อเครื่องคอมพิวเตอร์ควอนตัมจากบริษัท D-Wave Systems แม้ว่าคอมพิวเตอร์ D-Wave Two ที่ซื้อมาในสมัยนั้นจะมีคิวบิตมากถึง 512 ตัว แต่ก็ไม่ได้เป็นคอมพิวเตอร์แบบ universal
วัตถุประสงค์หลักในการจัดตั้งแล็บของกูเกิล คือเพื่อศึกษาความเป็นไปได้ในการนำคอมพิวเตอร์ควอนตัมมาใช้ในงานด้าน machine learning โดยโฟกัสไปที่ปัญหาประเภท optimization นั่นคือปัญหาการเลือกสิ่งที่ดีที่สุดภายใต้เงื่อนไขและทรัพยากรจำกัด ที่มา - Google Research Blog
ปี 2014 กูเกิลขยายไปทำวิจัยด้านโปรเซสเซอร์สำหรับคอมพิวเตอร์ควอนตัมเพิ่มเติม โดยได้ทีมวิจัย Martinis Group จากมหาวิทยาลัย UC Santa Barbara มาช่วยเสริมทัพอีกแรง ที่มา - Google Research Blog
ปี 2015 กูเกิลเผยผลการวิจัยคอมพิวเตอร์ควอนตัม D-Wave ว่าสามารถแก้โจทย์ปัญหาได้เร็วกว่าอัลกอริทึมแบบเดิม ทั้ง simulated annealing และ quantum Monte Carlo มากถึง 108 เท่าเลยทีเดียว หลังจากที่ผ่านมา คอมพิวเตอร์ D-Wave เคยถูกตั้งข้อครหาถึงประสิทธิภาพของมัน ข่าวเก่า - กูเกิลเผยผลการวิจัยควอนตัมคอมพิวเตอร์ D-Wave แก้ปัญหาได้เร็วขึ้น 10^8 เท่า
และเมื่อเดือนมิถุนายนที่ผ่านมา กูเกิลก็เผยความสำเร็จในการสร้างชิพคอมพิวเตอร์ควอนตัมขนาด 9 คิวบิต สามารถทำงานแบบ universal ได้ และมีระบบตรวจสอบและแก้ไขความผิดพลาดของคิวบิต (quantum error correction) ทำให้ในอนาคต นักวิจัยจะสามารถสร้างชิพที่มีจำนวนคิวบิตมากขึ้นเพื่อนำไปสร้างเป็นคอมพิวเตอร์ควอนตัมขนาดใหญ่ได้ ข่าวเก่า - นักวิจัยกูเกิลสร้างคอมพิวเตอร์ควอนตัมแบบ “ลูกผสม” เข้าใกล้สู่การสร้างเพื่อใช้งานทั่วไป
คลิปเปิดตัว Quantum Artificial Intelligence Lab ของกูเกิล
บทความนี้อาจจะข้ามเนื้อหาบางส่วนเกี่ยวกับคอมพิวเตอร์ควอนตัมไปบ้าง (เช่น quantum entanglement, quantum simulation) แต่ก็เป็นการนำเสนอข้อมูลเกี่ยวกับคอมพิวเตอร์ควอนตัมในเบื้องต้น ซึ่งผมคิดว่าเพียงพอที่จะทำให้เห็นภาพได้ว่ามันคืออะไร มีดีกว่าคอมพิวเตอร์ที่เราใช้กันอยู่อย่างไร จะขอสรุปเพื่อเก็บประเด็นต่างๆ อีกสักรอบ
เราอาจจะไม่ได้เห็นคอมพิวเตอร์ควอนตัมในอนาคตอันใกล้นี้ และอาจจะยังไม่ทราบได้แน่ชัดว่ามันจะมีประโยชน์ต่อมวลมนุษยชาติมากน้อยแค่ไหน แต่การสนับสนุนงานวิจัยก็จะช่วยทำให้เราเดินทางเข้าสู่ยุคต่อไปของคอมพิวเตอร์ได้เร็วขึ้น หรืออย่างน้อย แม้จะมีคนพบว่าคอมพิวเตอร์ควอนตัมไม่คุ้มที่จะสร้าง เราก็ได้เก็บเกี่ยวองค์ความรู้ในระหว่างทางไว้ เผื่อว่าจะใช้กรุยทางให้เกิดประโยชน์ในศาสตร์ด้านอื่นๆ ต่อไปได้
ยินดีต้อนรับสู่ยุคทองของการวิจัยคอมพิวเตอร์ควอนตัมครับ :)
แหล่งข้อมูลอ้างอิง
แก้ไขครั้งที่ 1: เพิ่มคำอธิบายเกี่ยวกับอัลกอริทึม Grover ไว้ในคอมเมนต์ใต้บทความ
แก้ไขครั้งที่ 2: เพิ่มคลิปอธิบายสถานะ quantum superposition ของอนุภาค