Quantum Programming
1.58K subscribers
357 photos
36 videos
47 files
514 links
هدف از ایجاد این کانال معرفی و آموزش محاسبات کوانتومی و برنامه‌نویسی کوانتومی هست.

Group:@quantumprogramming_chat
Instagram: http://instagram.com/Quantum.Programming
Download Telegram
در دهه گذشته سخت افزارهای کوانتومی در عملکرد بهینه کیوبیت ها، مدت زمان همدوسی و تعداد کیوبیت های بکار گرفته شده، پیشرفت های زیادی داشته اند. مدارهای کوانتومی با استفاده از کیوبیت های ابررسانا و یون های به دام افتاده ساخته شده اند. اگرچه محدودیت های بنیادی مهندسی اجازه بکارگیری زمان همدوسی دلخواه و یا تعداد کیوبیت دلخواه را نداده است اما در حال حاضر این مسائل هم از موضوعات روز در فناوری های کوانتومی هستند.
الگوریتم های کوانتومی با سرعت بسیار زیاد و زمان کم قادر به حل مسائلی هستند که الگوریتم های کلاسیکی از حل آنها عاجزند اما باید توجه داشت برای بکارگیری الگوریتم کوانتومی به صدها یا شاید هزارها کیوبیت احتیاج است. علاوه بر این، باید خطا هایی که در حین انجام الگوریتم به وقوع می پیوندد را نیز تصحیح کرد. به عنوان مثال، در بکارگیری الگوریتم شور برای حل یک مسئله که روی کامپیوتر کلاسیکی به سختی قابل حل است به شش میلیون کیوبیت احتیاج است در حالی که در حال حاضر فقط 50 کیوبیت در اختیار است.

برای رفع چنین مشکلاتی، در سال 2016 الگوریتم های ترکیبی کوانتومی- کلاسیکی (Hybrid Quantum Classical Algorithm) مطرح شد. در این الگوریتم ها، آماده سازی حالت اولیه سیستم کوانتومی و اندازه گیری های کوانتومی روی یک کامپیوتر کوانتومی انجام شده و قسمت بهینه سازی و به روز رسانی پارامترهای حالت کوانتومی در کامپیوتر کلاسیکی انجام می شود.

در این دسته از الگوریتم ها، حالت اولیه با توجه به مسئله ساخته می شود که یک حالت پارامتری است. بعد از این کار، حالت پارامتری به یک کامپیوتر کوانتومی فرستاده می شود و اندازه گیری کوانتومی انجام می گیرد. نتایج اندازه‌گیری که تابعی از پارامترهاست به یک کامپیوتر کلاسیکی فرستاده می شود. کامپیوتر کلاسیکی با انجام بهینه سازی روی تابع، یک سری پارامتر جدید بازتولید می کند. این پارامترها به کامپیوتر کوانتومی بازگردانده شده و حلقه تا یافتن پارامتر بهینه تکرار می شود. (بخش اول الگوریتم ترکیبی کوانتومی کلاسیکی)

#الگوریتم_ترکیبی_کوانتومی_کلاسیکی
#برنامه_‌نویسی_کوانتومی
#بخش12

🆔@QuantumProgramming
🆔 http://instagram.com/Quantum.Programming
برای به کارگیری الگوریتم های ترکیبی کوانتومی- کلاسیکی از کامپیوتر کوانتومی مقیاس-متوسط نوفه ای ((Noisy Intermediate Scale Quantum (NISQ) استفاده می شود که در چند سال آینده بصورت عمده در دسترس خواهد بود که در ادامه به توضیح آن می پردازیم.

واژه نوفه ای مربوط به موضوعی است که در آن وسایل کوانتومی می توانند تحت تاثیر محیط مختل شوند برای مثال تغییرات کوچک در دما یا انحراف میدان های مغناطیسی و الکتریکی می توانند باعث حذف اطلاعات کوانتومی شوند که از این فرآیند با عنوان ناهمدوسی یاد می شود. برای غلبه به این موضوع ما باید بتوانیم تصحیح خطای کوانتومی انجام دهیم. اساسا باید تشخیص دهیم که سیستم مورد نظر چه مقدار دچار اختلال شده است و سپس آن را تصحیح کنیم. مقیاس-متوسط مربوط به تعداد کیوبیت هاست که اغلب موارد محدود به صد کیوبیت و یا کمتر می شود. اما در نهایت باید میلیون ها کیوبیت را در نظر گرفت و خطای آن را تصحیح کرد که با نام خطای قابل تصحیح شناخته می شود.

در اغلب محاسبات کوانتومی عبارت "near-term" بجای NISQ به کار برده می شود زیرا این وسایل در چند سال آینده در دسترس خواهند بود و همچنین به تصحیح خطا نیازی نخواهند داشت. بکارگیری کامپیوتر کوانتومی NISQ در تمامی بسترهای فیزیکی که برای ساخت یک کامپیوتر مطرح است از قبیل کیوبیت های ابررسانا و یا در کامپیوترهای کوانتومی فوتونیکی فراهم است. باید توجه داشت که کوچک بودن کامپیوتر کوانتومی به اندازه فیزیکی آن مربوط نیست بلکه به تعداد کیوبیت های آن اطلاق می شود.


در کامپیوتر کوانتومی NISQ باید نوفه را حذف کرده و آن را به عنوان یک عامل با اثر محدود چه برای وسایل کلاسیکی و چه برای وسایل کوانتومی درنظر گرفت. به زبان ساده می توان گفت وقتی تعداد هر بیت زیاد باشد احتمال وقوع خطا در آن بیت کم است، از این روش می توان در تصحیح خطای کوانتومی نیز استفاده کرد.

الگوریتم های ترکیبی کوانتومی- کلاسیکی، بطور روز افزون در حال توسعه هستند و از این الگوریتم ها برای یافتن ویژه مقادیر و ویژه بردارهای سیستم های مولکولی(الگوریتم VQE)، شبیه سازی دینامیک سیستم های باز و بسته کوانتومی، یافتن حالت های برانگیخته سیستم های کوانتومی و همچنین مسائل بهینه سازی(الگوریتمQAOA) استفاده می شود. (بخش دوم الگوریتم ترکیبی کوانتومی کلاسیکی)


#الگوریتم_ترکیبی_کوانتومی_کلاسیکی
#برنامه_‌نویسی_کوانتومی
#بخش13

🆔 @QuantumProgramming
🆔http://instagram.com/Quantum.Programming
شبیه سازي کوانتومی یک راهکار بهینه براي به دست آوردن رفتار فیزیکی سیستم هاي بزرگ و بس ذره اي است. در شبیه سازي کوانتومی با استفاده از یک سیستم کوانتومی شناخته شده و کنترل پذیر (شبیه ساز کوانتومی)به مطالعه سیستم هاي که کنترل آنها مشکل است پرداخته می شود.

به دلیل کارایی بالایی که شبیه سازي کوانتومی در زمینه هاي مختلف همچون فیزیک ماده چگال ، فیزیک انرژي هاي بالا ، فیزیک اتمی و حتی کیهان شناسی دارد در سالهاي اخیر بسیار مورد توجه قرار گرفته است. می توان از شبیه سازي کوانتومی در ساخت کامپیوترهاي کوانتومی بهره برد. با توجه به رشد فناوري در حال حاضر بکارگیري موثر شبیه سازي کوانتومی در دسترس است. کنیم. طبق تعریف شبیه سازهاي کوانتومی وسایلی هستند که خود یک سیستم کوانتومی محسوب می شوند.

به بیان ساده‌تر در شبیه سازی کوانتومی هدف یافتن حالت سیستم کوانتومی بعد از گذشت زمان t است. این حالت با استفاده از شبیه ساز کوانتومی قابل محاسبه است(تصویر پایین را ببینید)

در حالت کلی شبیه سازهاي کوانتومی به دو دسته عمده دیجیتال و آنالوگ دسته می شوند. در شبیه سازهاي دیجیتال با استفاده از گیت هاي کوانتومی کار شبیه سازي انجام می شود اما در شبیه سازهاي آنالوگ با تغییر روي خود شبیه ساز سیستم مورد نظر شبیه سازي می شود به عبارت دیگر دینامیک سیستم را کپی می کند.



#شبیه_سازی_کوانتومی
#برنامه_‌نویسی_کوانتومی
#بخش14

🆔 @QuantumProgramming
🆔http://instagram.com/Quantum.Programming
نمای شماتیکی از شبیه سازی کوانتومی
🆔@QuantumProgramming
🆔 http://instagram.com/Quantum.Programming
اکنون که مفاهیم اولیه محاسبات و اطلاعات کوانتومی بیان شده است، زمان آن رسیده است تا به برنامه نویسی کوانتومی بپردازیم. براي دسترسی به کامپیوتر کوانتومی به نرم‌افزارهاي کوانتومی احتیاج است. برنامه نویسی کوانتومی در دو دهه اخیر بصورت نظري بدون وجود سخت افزار کوانتومی در حال توسعه بوده است.

اکنون کامپیوتر کوانتومی در واقعیت در دسترس است و هر شخصی می تواند با آن کار کند. اخیرا نرم افزارهاي کوانتومی توسعه پیدا کرده اند که تعداد آنها حدود پنجاه است و همچنین شبیه ساز هاي کوانتومی زیادي هم معرفی شده است. از کاربردی ترین و معروفتروین نرم‌افزارهای کوانتومی که برای انجام محاسبات کوانتومی استفاده می شود می‌توان به موارد زیر اشاره کرد

1-PyQuil
2-QISKit
3-ProjectQ
4-Quantum Development Kit
5-QuTip

این نرم‌افزارهای کوانتومی در بستر پایتون و C++ در دسترس هستند. البته بیشتر برنامه‌نویسی کوانتومی در بستر پایتون انجام می شود و ما نیز از پایتون برای معرفی برنامه‌نویسی کوانتومی استفاده خواهیم کرد. در تصویر نمای کلی از نرم‌افزارهای کوانتومی نشان داده شده است.

#نرم_افزار_کوانتومی
#پایتون
#برنامه_‌نویسی_کوانتومی
#بخش15

🆔@QuantumProgramming
🆔 http://instagram.com/Quantum.Programming
نمای نرم‌افزارهای کوانتومی که برای محاسبات کوانتومی به کار گرفته می‌شوند
#نرم_افزار_کوانتومی
#پایتون
#برنامه_‌نویسی_کوانتومی


🆔@QuantumProgramming
🆔 http://instagram.com/Quantum.Programming
⁉️تعدادی از عزیزان پیگیر هستند که آیا دوره برنامه نویسی کوانتومی در تابستان برگزار می‌شود؟

⚜️⚜️جهت اطلاع عزیزان
دوره تابستان با معرفی Qutip برگزار خواهد شد.
متعاقبا زمان و نحوه ثبت‌نام از طریق این کانال اعلام خواهد شد.


بااحترام


یگانه


🆔 @QuantumProgramming
🆔 http://instagram.com/Quantum.Programming
Quantum Programming pinned «⁉️تعدادی از عزیزان پیگیر هستند که آیا دوره برنامه نویسی کوانتومی در تابستان برگزار می‌شود؟ ⚜️⚜️جهت اطلاع عزیزان دوره تابستان با معرفی Qutip برگزار خواهد شد. متعاقبا زمان و نحوه ثبت‌نام از طریق این کانال اعلام خواهد شد. بااحترام یگانه 🆔 @QuantumProgramming…»
معرفی Pyquil

این نرم‌افزار توسط شرکت Rigetti طراحی شده است و برای برنامه‎‌نویسی کوانتومی مورد استفاده قرار می‌گیرد. این بستر بروی Rigetti Forest قرار دارد که شامل Quantum instruction language می‌باشد که به اختصار Quil نامیده می‌شود که یک کتابخانه منبع باز روی پایتون است از این رو با نام Pyquil معرفی می‌گردد. Pyquil یک محیط شبیه ساز دارد که با نام Quantum Virtual Machin (QVM) است که برای برنامه های کوانتومی مورد استفاده قرار می‌گیرد. همچنین پردازنده کوانتومی که Pyquil از آن استفاده می کند، از جنس کیوبیت‌های ابررسانا هست که تعداد آنها در حال حاضر 16تاست. ماقصد داریم قسمت های مختلف این بستر قوی را در بخش های بعدی معرفی کنیم.



#نرم_افزار_کوانتومی
#Pyquil
#برنامه_‌نویسی_کوانتومی
#بخش16

🆔 @QuantumProgramming
🆔 http://instagram.com/Quantum.Programming
vs_community__1265394606.1530448632.exe
1.2 MB
برای نصب Pyquil لازم است ویژوال استودیو نصب شود. همچنین پایتون نیز باید نصب گردیده باشد. فایل نصبی ویژوال استودیو خدمت عزیزان @QuantumProgramming
pyquil1.py
1.4 KB
🖥کد کوانتومی معرفی شده در #فیلم_آموزشی6، نوشتن اولین برنامه در Pyquil

🆔 @QuantumProgramming
🆔 http://instagram.com/Quantum.Programming
pyquil2.py
1.6 KB
کد ران شده در #فیلم_آموزشی7، گیت‌های تک‌کیوبیتی در Pyquil
🆔 @QuantumProgramming
🆔http://instagram.com/Quantum.Programming
⚪️انجمن علمی دانشجویی فوتونیک دانشگاه تبریز با همکاری انجمن علمی دانشجویی فیزیک دانشگاه شهیدبهشتی برگزار می کند
وبینار آشنایی با درهم تنیدگی کوانتومی و کاربردهای آن
سخنران: دکتر یگانه، پژوهشگر پسادکتری محاسبات و اطلاعات کوانتومی دانشگاه تهران
📌وبینار اول به میزبانی انجمن علمی دانشجویی فوتونیک
🗓تاریخ برگزاری:روز پنجشنبه۳۱تیر ماه/ساعت ۲۰تا۲۱
📩لینک ورود به جلسه:
http://vc1.tabrizu.ac.ir/fphy
______________________
@photonic_of_tabrizuniversity
@sbu_physics
@quantumprogramming