ما هي لغات البرمجة الكمية؟

ما هي لغات البرمجة الكمية؟

تحدثنا عزيزي القارئ عن الصراع الكمي في مقالات سابقة ووضحنا شراسته. فتحدي IBM للحوسبة الكمية في 2021 خير مثال، الذي شارك فيه 3100 مشارك من 94 دولة عن تطبيقات الحواسيب الكمية باستخدام Qiskit. إذ لم يقتصر التحدي على الحوسبة الكمية وكيفية استخدام Qiskit. بل في أي شيء متعلق بالحوسبة الكمية في الصناعة وذلك بتطبيق تكنولوجيا الكم في المجالات العلمية مثل الكيمياء والتعلم الآلي وغيرها وساهم أكثر من 1293 مشارك في تقديم مشاركة واحدة على الأقل لها أثرها وشاركت دول عدة جديدة في المنافسة وكانت السعودية هي الدولة الوحيدة في الشرق الأوسط. إذ حاز الدكتور إبراهيم المسلم على المركز الثاني عالميًا ونال المركز الأول «نافان بنشاشتابوسه-Naphan Bencgasattabuse» من كوريا الجنوبية. [1]

وكما للحوسبة التقليدية لغات برمجة تتعامل بها، أيضًا للحواسيب الكمية لغات. وهنا سيدور حديثنا حول ما هي لغات البرمجة الكمية؟ وكيف يمكنك ممارسة الحوسبة الكمية والتلاعب بالـ Quibts وبالتأكيد تبادر إلى ذهنك سؤال، ما الـ Qiskit؟ كل ذلك وأكثر سنجيب عنه في هذا المقال، فهيا بنا…

ما هو Qiskit؟

يمنح عملاقة التكنولوجيا مثل Google وIBM المستخدمون الذين لديهم شغف تعلم الحوسبة الكمية فرصة لمعرفة كيفية برمجة ومعالجة الدوائر الكمية. باستخدام لغات البرمجة الكمية ولتعلم فحص مفاهيم الحوسبة الكمية مثل التراكب والتشابك والتلاعب بالـ Qubits وإدارة الأجهزة الكمية والتحقق من الخوارزميات

فـ Qiskit هو SDK -مجموعة أدوات تطوير البرامج في حزمة واحدة قابلة للتثبيت- مفتوح المصدر للعمل على الحواسيب الكمية من IBM. إذ يُترجم لغات البرمجة الشائعة مثل Python للآلة الكمية وأي شخص خارج مختبرات IBM يمكنه استخدامه. إذ تعد أداة تعليمية ممتازة لتطوير فهمك عمليًا حول المفاهيم الكمية، يوجد كذلك Cirq وهو من شركة Google ومشابه لـ Qiskit.

لكن وجب التنبيه أنه على الأقل وجب أن تكون لديك خلفية جيدة حتى تستطع البدء فهو مناسب لفئات مثل الخبراء في مجالات الكيمياء والذكاء الاصطناعي والمطوريين الذين لديهم معرفة بالدوائر الكمية ويودون في اختبار مزايا الكم وخبراء ميكانيكا الكم. [4,3]

علاقات لغات البرمجة الكلاسيكية باللغات الكمية؟

كما نحن البشر نتحدث بلغات مختلفة فالحواسيب لها لغاتها. تتيح لغات البرمجة في الحواسيب التقليدية إعطاء تعليمات للحاسوب بلغة يفهمها. فلغة البرمجة الكمية هي تلك التي يمكن استخدامها لكتابة برامج الحاسوب الكمي. فنظرًا لأن التحكم في أي آلة يكون بواسطة جهاز كلاسيكي. فإن لغات البرمجة الكمية الحالية تتضمن هياكل تحكم كلاسيكية أيضًا وتسمح بعملها على البيانات الكلاسيكية والكمية فسنجد لغة Python من اللغات المستخدمة والأساسية وكذلك C وJavascript وغيرهم. [2]

ما هي البيئات التي تتيح لك ممارسة الحوسبة الكمية؟

كما ذكرنا فور معرفتك بالأساسيات البرمجية وتعلم اللغات الكلاسيكية؛ يمكنك البدء مباشرةً في بيئات ستوفر لك التعامل مثل Qiskit وCirq. وإليك في السطور الآتية بعض لغات البرمجة الكمية المهمة في تنمية تدريبك على الحوسبة الكمية بجانب اللغات الكلاسيكية.

أشهر لغات البرمجة في الحوسبة الكمية

هنالك نوعان من لغات البرمجة الكمية، الأول لغات البرمجة الأساسية وتتكون من تعليمات تُنفذ خطوة بخطوة وتشمل اللغات الأساسية في الحواسيب الكلاسيكية مثل Python وC وJavascript وPascal، وإليك ثلاثة من أشهر اللغات [5]:

لغة QCL

هي واحدة من أولى لغات البرمجة الكمية وتشبه لغة C وPascal من حيث بناء الجملة Syntax وأنواع البيانات. فهي لغة تحكم عالية المستوى ومستقلة عن بنية الحواسيب الكمية ويمكن للمبرمجين الجمع بين كود C كلاسيكي وكود كمي… [8]

لغة QMASM

نشأت QMASM كلغة لتعريف الدائرة الكمية ومع تطور الحساب الكمي، اعتُمدت اللغة كطريقة لتحديد الدوائر الكمية كمدخلات في الحاسوب الكمي. لوصف العمليات على الـ Qubits وهي منخفضة المستوى، فتستخدم لوصف الدوائر البسيطة نسبيًا وهنالك لغات أخرى عالية المستوى مثل لغات سنذكرهم في السطور القادمة. [6] التي بإمكانها التعامل مع مليارات من Qubits.

لغة Silq

نشرت في عام 2020 وهي لغة عالية المستوى من ETH Zurich في سويسرا وتُحدث باستمرار. نبع الاحتياج لتلك اللغة لملاحظة الباحثين أن كل لغات البرمجة السابقة منخفضة المستوى خاصة في التعامل مع الـ Quibts. ففي كل مرة وجب عليك التفكير في جميع القيم الناشئة من العملية التي تقوم بها وذلك يستغرق وقتًا وينتج عن ذلك بالتأكيد أخطاء. [7]

النوع الثاني هو لغات البرمجة الوظيفية وهي لا تعتمد على تنفيذ التعليمات خطوة بخطوة بل على الدوال الرياضية. أي يتم تحويل المخرجات باستخدام تحويلات رياضية وتعد أقل شيوعًا من اللغات الأساسية وإليك أشهر اللغات:

لغة QML

هي لغة تعريفية مصممة لوصف واجهة مستخدم البرنامج ونُشرت في عام 2007 وتشبه Haskell وتُستخدم لغة Javascript كلغة برمجة نصية في QML وقبل التعمق فيها وجب أن تكون كما ذكرنا مرارنا لديك خلفية برمجية [9] وفهم للغات الويب الأخرى مثل HTML وCSS…

لغتا QPL وQFC

هما لغتان من لغات البرمجة الكمية حددهما «بيتر سيلينجر-Peter Selinger» وتعمل كل منهم على البيانات الكمية والكلاسيكية. [10]

لغة Quipper

هي لغة شهيرة ذات مستوى عال، وتستخدم لوصف الدوائر عالية المستوى ومعالجتها وتحوي مكتبات واسعة من الدوال الكمية بما في ذلك مكتبات الأعداد الصحيحة الكمية وتحويل فورييه الكمي ومكتبات لتحليل دقيق للدوائر والعديد من المزايا. [11]

فيما تتميز لغة Twist؟

هناك عزيزي القارئ العديد من اللغات لكن تحدثنا عن الأحدث والأشهر ولنختم جزء اللغات بلغة Twist التي أثارت ضجة في عامنا هذا 2022، فما هي تلك اللغة وما المميز فيها؟

سعى علماء من علوم الحاسوب والذكاء الاصطناعي CSAIL التابع لمعهد ماساتشوستس للتكنولوجيا إلى إنشاء لغة خاصة بهم للحوسبة الكمية وتسمى (Twist). وتستطيع تلك اللغة أن تصف أجزاء البيانات المتشابكة في برامج الكم والتحقق منها. ويمكن للمبرمج الكلاسيكي فهمها وتستخدم اللغة مفهوم يسمى Purity أو النقاء ويفرض ذلك المفهوم عدم وجود التشابك وينتج عنه برامج أكثر سهولة والأخطاء أقل بكثير. فالمميز هنا أنه لطالما تطلبت برمجة الحواسيب الكمية فهم للتشابك ولكن تأتي Twist لتسهل الأمر على المبرمجين بفرضها عدم وجوده بمفهوم Purity. إضافة إلى أن اللغات البرمجية الكمية لا تزل تربط عمليات منخفضة المستوى معًا مستبعدة أحيانًا معايير مهمة مثل أنواع البيانات… لكن التحدي الذي تتخذه Twist حاليًا هو تسهيل البرمجة الكمية. نهاية فقد دعمت الجهود عليها جزئيًا من قبل MIT-IBM Waston AI lab والمؤسسة الوطنية للعلوم ومكتب البحوث البحرية. [12]

المصادر

  1. IBM
  2. quantiki
  3. .ibm
  4. quantumai
  5. aimultiple
  6. github
  7. sliq
  8. github
  9. qml
  10. liquisearch
  11. qcf
  12. researchgate
  13. mit

ما هي الخوارزميات الكمية؟

قبل أن نتعرف عن ما هي الخوارزميات الكمية، وجب أن نعرف أن مصطلح الخوارزمية مشتق من اسم عالم الرياضيات الفارسي محمد بن موسى الخوارزمي من القرن التاسع، وظهرت الفكرة الحديثة للخوارزمية في اللغة الإنجليزية في القرن التاسع عشر وأصبحت أكثر شيوعًا منذ خمسينيات القرن الماضي.

تستخدم الخوارزميات في كل جزء من علوم الحاسوب، وهي التي تسمح للحاسوب بفعل كل شيء، فيتمثل جزء كبير من برمجة الحاسوب في معرفة كيفية صياغة الخوارزمية. إذ أنها تعتبر القدرة على تحديد خطوات واضحة لحل مشكلة ما، أيضًا فهي أمرًا مهمًا في العديد من المجالات، لذلك فنحن نستخدم الخوارزميات التي تسمح لنا بتفكيك المشكلات ووضع تصور للحلول. [5]

بعد تلك المقدمة البسيطة، لنلقى نظرة أوسع على ماهية الخوارزميات الكمية.

بعد وقت قصير من إثبات جودل عدم اكتماله الشهير، نُشرت العديد من الأوراق البحثية لتميز بين الدوال التي يمكن حسابها والتي لا يمكن حسابها. فأظهرت الأوراق أن هنالك البعض منها لا يمكن حسابه ويتطلب إثبات مثل هذه النظرية تعريفًا رياضيًا وكانت التعريفات مختلفة. في النهاية، أدى هذا إلى اقتراح أطروحة «تشرش-تورينغ»، سميت على اسم العالمين الرياضيين ألونزو تشيرش وآلان تورينج. إذ كان يرى معظم علماء الحاسوب أن الحوسبة الكلاسيكية هي كل ما في الأمر، ولا تستطيع الآلات الكلاسيكية إجراء كل هذه الحسابات بكفاءة مثل السلوك الكيميائي للجزئ، إذ يرتبط هذا السلوك بسلوك الإلكترونات، فتعتمد الحالة الكمية لكل إلكترون على حالات الآخرين بسبب ظاهرة ميكانيكا الكم، فحساب هذه الحالات معقد للغاية. [1،2]

انتهاك أطروحة تشرش-تورينغ!

يشير المبدأ الأساسي لأطروحة تشرش-تورينغ إلى حل مشكلة حسابية على نحو أسرع من خلال:

  • تقليل الوقت لتنفيذ خطوة واحدة.
  • تنفيذ العديد من الخطوات بالتوازي أو تقليل إجمالي الخطوات.

لكن اكتشاف حواسيب كمية انتهك الأطروحة من خلال حل بعض المهام الحسابية بخطوات أقل بكثير من أفضل خوارزمية كلاسيكية أيضًا لنفس المهمة وفتح الباب أمام طرق جديدة لحل المشكلات الحسابية.

فصور الخوارزميات القادرة على حل حسابات معقدة ليس بالأمر الهين. لكن في عام 1994، اقترح موظف شاب في مختبرات بيل يسمى بيتر شور خوارزمية كمية تحلل الأعداد الصحيحة على نحو أسرع من أي خوارزمية كلاسيكية وتخترق العديد من أنظمة التشفير الشائعة. بعدها بعامين فقط، ابتكر زميل شور في مختبرات بيل ويُدعى لوف جروفر خوارزمية تسرع العمليات الكلاسيكية للبحث من خلال قواعد البيانات غير المصنفة. [4]

آلان تورنج وألونزو تشرش

ما هي خوارزمية الكم ببساطة؟

الخوارزمية هي إجراء عملية حسابية تبعًا لمجموعة من الخطوات المتتالية أو سلسلة من التعليمات لحل مشكلة ما. إذ يمكن تنفيذ كل خطوة على حاسوب، لذلك تنفذ الخوارزمية الكمية على حاسوب كمي. كذلك من الممكن تشغيل جميع الخوارزميات الكلاسيكية على الحاسوب الكمي. يرجع ارتباطها بكلمة (الكم) نظرًا لتمتعها بمبادئ ميكانيكا الكم مثل التراكب والتشابك…

ما هي دوائر الكم؟

توصف الخوارزميات الكمية على نحو أكثر شيوعًا بواسطة دائرة الكم، فالدائرة الكمية هي نموذج للحسابات الكمية، إذ تكون خطوات حل المشكلة عبارة عن بوابات كمية، تُجرى على كيوبت أو أكثر. فتكمن القيمة المضافة للخوازميات الكمية في قدرتها على بعض المشكلات بسرعة مثل خوارزمية شور وجروفر المذكورتين. [3]

أشهر الخوارزميات الكمية

  • «Deutsch-Jozsa».
  • «Bernstein-Vazirani».
  • «Simon’s».
  • «Shor’s».
  • «Grover’s».

فستتفوق الخوارزميات الكمية عزيزي القارئ على نحو كبير خاصة في محاكاة أنظمة تتمتع بدرجات حرية كمية عالية. فتطبيقاتها ستشمل حل المشاكل في الكيمياء وعلوم المواد والفيزياء النووية… فتلك مقدمة في الخوارزميات الكمية. فتابعنا؛ لمعرفة المزيد عن الخوارزميات الكمية وكيفية عملها.

المصادر

  1. Proceedings of Symposia in Applied Mathematics 58, 143-160, 2002‏
  2. quantumagazine
  3. quantum inspire
  4. nap.edu
Exit mobile version