9 พฤศจิกายน 2560

Published 11/09/2560 by with 1 comment

การประมวลผลควอนตัม (quantum computing) ด้วย Python

หากคุณต้องการศึกษาการประมวลผลควอนตัม (quantum computing) แต่ด้วยข้อจำกัดของเทคโนโลยีในปัจจุบัน ทำให้ควอนตัมคอมพิวเตอร์ (quantum computer) ยังไม่สามารถหาซื้อได้ทั่วไป (อาจต้องรอมากกว่า 10 ปี) และปัจจุบันยังถูกใช้ในวงการวิจัยเท่านั้น
Quantum Computer Interior
IBM Q ระบบควอนตัมคอมพิวเตอร์ของ IBM

แล้วคอมพิวเตอร์ทั่วไปต่างกับควอนตัมคอมพิวเตอร์อย่างไร ?

ควอนตัมคอมพิวเตอร์ถูกสร้างขึ้นบนหลักการของกลศาสตร์ฟิสิกส์ควอนตัมที่ซับซ้อน ต่างจากคอมพิวเตอร์ทั่วไป และโดยปกติแล้วคอมพิวเตอร์ทั่วไปใน 1 บิตจะเก็บข้อมูล 0,1 แต่ในควอนตัมคอมพิวเตอร์สามารถเก็บข้อมูลได้มากกว่านี้ใน 1 บิต (ในคอมพิวเตอร์ควอนตัมเรียก 1 บิต ว่า Qubit หรือ quantum bit)  และมีความแตกต่างอื่น ๆ อีกมากมายนอกจากที่ยกตัวอย่างมาข้างต้น



อ่านเพิ่มเติมได้ที่ คอมพิวเตอร์ควอนตัมเบื้องต้น: เรามาถึงจุดที่คอมพิวเตอร์ต้องพึ่งฟิสิกส์ควอนตัมกันแล้ว

การประมวลผลควอนตัม (quantum computing) คืออะไร ?

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

ตัวอย่างผลงานที่ได้จากการใช้ควอนตัมคอมพิวเตอร์


แต่ในภาษา Python เราจะศึกษาการประมวลผลควอนตัมได้อย่างไรในเมื่อเรายังไม่มีคอมพิวเตอร์ควอนตัม (อาจนานถึงหลายสิบปี)

คำตอบคือใช้ ProjectQ หรือ IBM Quantum Experience

ProjectQ

ProjectQ เป็นโปรแกรมสำหรับใช้ศึกษาการประมวลผลควอนตัมในภาษา Python โดยมีคุณสมบัติดังนี้
  • รันโปรแกรมควอนตัมใน IBM Quantum Experience chip
  • จำลองโปรแกรมควอนตัมในคอมพิวเตอร์ทั่วไป
เป็นต้น
ใช้ Apache License 2.0 และรองรับทั้ง Python 2 , Python 3
ติดตั้งได้ด้วยคำสั่ง pip install --user projectq

อ่านเอกสารการใช้งานได้ที่ http://projectq.readthedocs.io/

IBM Quantum Experience

IBM Quantum Experience เป็นบริการสำหรับเชื่อมต่อหน่วยประมวผลควอนตัมของ IBM บน IBM Cloud

เราสามารถเรียกใช้ IBM Quantum Experience ใน Python ได้ด้วยโมดูล IBMQuantumExperience

อ่านเอกสารการใช้งานได้ที่ https://github.com/QISKit/qiskit-api-py


อ้างอิง

1 ความคิดเห็น:

  1. ร่วมแบ่งปันความรู้กันได้ที่ความคิดเห็นนี้นะครับ :)

    ตอบลบ

แสดงความคิดเห็นได้ครับ :)