کتاب A Practical Guide to Quantum Computing: Hands-on approach to quantum computing with Qiskit (راهنمای کاربردی محاسبات کوانتومی: رویکردی عملی به محاسبات کوانتومی با Qiskit) به عنوان یک مقدمه عملی برای دنیای محاسبات کوانتومی، خوانندگان را با مفاهیم بنیادی این حوزه آشنا میکند. این کتاب با استفاده از فریمورک متنباز Qiskit، که توسط IBM توسعه داده شده، به صورت گام به گام و از طریق مثالهای کدنویسی، نحوه ساخت و اجرای الگوریتمهای کوانتومی را آموزش میدهد.
تمرکز اصلی آن بر رویکرد عملی است تا افراد بتوانند با مفاهیمی مانند کیوبیتها، برهمنهی، و درهمتنیدگی آشنا شوند و الگوریتمهای کلیدی مثل الگوریتمهای گراور (Grover’s) و شور (Shor’s) را پیادهسازی کرده و در شبیهسازها یا حتی کامپیوترهای کوانتومی واقعی اجرا کنند.
در ادامه مقدمهای از کتاب A Practical Guide to Quantum Computing را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب A Practical Guide to Quantum Computing:
ریچارد فاینمن زمانی گفته بود:
«طبیعت کلاسیک نیست، لعنتی! و اگر میخواهی شبیهسازیای از طبیعت انجام بدهی، بهتر است آن را کوانتومی انجام دهی. و خب، این یک مسئله فوقالعاده است، چون اصلاً ساده به نظر نمیرسد.»
حدود سه سال پیش تصمیم گرفتیم کتابی کوچک بنویسیم (البته آن موقع فکر میکردیم کوچک خواهد بود) با عنوان راهنمای عملی یادگیری ماشین کوانتومی و بهینهسازی کوانتومی. این یک ماجراجویی هیجانانگیز و فراموشنشدنی بود که برای خودمان حسابی لذتبخش بود، چون کتاب را برای خودمان نوشتیم.
شاید کلیشه باشد که بگوییم “کتابی را بنویس که خودت دوست داری بخوانی”، اما واقعاً همین کار را کردیم. کتابی با دقت ریاضی لازم (چون بدون فرمولها نمیتوان رایانش کوانتومی را درک کرد)، همراه با کدی که میشود اجرا کرد و نتیجه گرفت، چون هدف نهایی از رایانش کوانتومی، محاسبه کردن است.
بعد از انتشار کتاب، بازخوردهای مثبتی دریافت کردیم و افراد زیادی خواهان مطالب بیشتر بودند. از طرفی، محبوبیت رایانش کوانتومی افزایش یافت، و با اعلام سال 2025 به عنوان «سال جهانی علم و فناوری کوانتومی» از سوی سازمان ملل، این روند بهاحتمال زیاد ادامهدار خواهد بود.
به همین دلایل، وقتی انتشارات Packt دوباره از ما دعوت کرد تا کتابی جدید بنویسیم، این پیشنهاد را پذیرفتیم. در کتاب اول، بیشتر تمرکزمان روی الگوریتمهای کوانتومی مدرن مانند الگوریتمهای واریاسیونی و آنیلینگ کوانتومی بود؛ اما رایانش کوانتومی از ابتدا با الگوریتمهایی مثل الگوریتم گروور یا شور آغاز شده بود، که در آن کتاب به آنها نپرداختیم و این همیشه برایمان جای حسرت داشت.
در این کتاب جدید، تمرکز اصلیمان بر پایههای رایانش کوانتومی است. اگر کتاب اول را خواندهاید، با بعضی مفاهیم آشنا هستید ولی حالا عمق بیشتری از آنها را یاد میگیرید؛ درست مانند اینکه بعد از دیدن سهگانهی اصلی جنگ ستارگان، فیلم “تهدید شبح” را ببینید. البته اگر کتاب اول را هم نخواندهاید، مشکلی نیست.
در کتاب A Practical Guide to Quantum Computing نیز از صفر شروع کردهایم و فرض نکردهایم خواننده با فیزیک کوانتومی یا ریاضیات پیشرفته آشناست. تنها کمی جبر پایه (مثل ماتریس، بردار و ضرب آنها) کافی است. توضیحات گامبهگام از مفاهیم ساده تا پیچیده طراحی شدهاند تا درک عمیقتری حاصل شود. از یک کیوبیت ساده آغاز میکنیم و به تدریج پیش میرویم.
برخلاف کتاب قبلی که ریاضی و کدنویسی را در یک فصل ترکیب کرده بود، در این کتاب مباحث نظری و عملی را جدا کردهایم تا درک بهتر و دقیقتری از هر الگوریتم حاصل شود. فریمورکی که برای برنامهنویسی کوانتومی انتخاب کردهایم، Qiskit نسخه 2.1 است که پلتفرمی محبوب، پایدار و مناسب برای این مباحث است.
لحن نگارش کتاب غیررسمی اما دقیق است. هرجا لازم بوده است، اثباتها را ارائه دادهایم یا منابعی برای مطالعه بیشتر معرفی کردهایم. در طول متن، تمرینهایی برای درک بهتر مفاهیم و تسلط عملی بر کدنویسی کوانتومی گنجاندهایم، که پاسخ کامل آنها در پایان کتاب آمده است.
بخشهایی با عنوان “برای مطالعه بیشتر” نیز اضافه کردهایم که خواننده را به حوزههای تازه و پیشرفتهتری هدایت میکند، هرچند خواندن آنها برای فهم متن اصلی ضروری نیست. اما نکات مهم، هشدارها، و تعاریف کلیدی با عنوان “نکته مهم” آمدهاند و نباید از آنها صرفنظر کرد.
در نهایت، نوشتن کتاب A Practical Guide to Quantum Computing هم برایمان بسیار لذتبخش بود. کتابی نوشتیم که دوست داشتیم هنگام شروع یادگیری این حوزه در اختیارمان بود. امیدواریم برای شما هم مفید باشد. از این سفر لذت ببرید!
کتاب A Practical Guide to Quantum Computing برای چه کسانی مناسب است؟
این کتاب برای دانشجویان رشتههای علوم کامپیوتر، ریاضیات، فیزیک یا سایر رشتههای STEM (علوم، فناوری، مهندسی و ریاضیات) که در حال گذراندن دورههای مقدماتی محاسبات کوانتومی در سطح دانشگاهی هستند، ایدهآل است. همچنین، برای متخصصان، پژوهشگران و افرادی که به صورت خودآموز با پیشزمینه STEM قصد یادگیری این حوزه را دارند، مناسب خواهد بود. خوانندگان کتاب قبلی ما، «A Practical Guide to Quantum Machine Learning and Quantum Optimization»، میتوانند با مطالعه این کتاب، مهارتهای پایهای محاسبات کوانتومی خود را ابتدا تقویت کنند.
به طور کلی، این کتاب برای افرادی که کنجکاو هستند تا محاسبات کوانتومی را از یک منظر دقیق و عملی درک کرده و جزئیات مشهورترین الگوریتمهای کوانتومی را بررسی کنند، انتخاب خوبی است.
محتوای کتاب A Practical Guide to Quantum Computing چیست؟
این کتاب به پنج بخش، یک موخره و چند پیوست تقسیم میشود که به شرح زیر است:
بخش اول: یک کیوبیت بر همهچیز حکم میراند: کار با یک کیوبیت
- فصل اول: کامپیوتر کوانتومی چیست (و چه چیزی نیست): این فصل به عنوان مقدمهای برای بقیه کتاب، توضیح میدهد که یک کامپیوتر کوانتومی چیست، چه تفاوتی با کامپیوترهای کلاسیک دارد و چرا الگوریتمهای کوانتومی میتوانند در برخی وظایف عملکرد بهتری نسبت به الگوریتمهای کلاسیک داشته باشند.
- فصل دوم کتاب A Practical Guide to Quantum Computing: کیوبیتها، گیتها و اندازهگیریها: در این فصل درباره سیستمهای تککیوبیتی و نحوه نمایش، اندازهگیری و تبدیل آنها بحث میشود. این فصل اساسیترین مبانی نظری برای کار با الگوریتمهای کوانتومی را فراهم میکند، زیرا کیوبیتها واحد اصلی اطلاعات کوانتومی هستند (مشابه بیتها در محاسبات کلاسیک). فصلهای بعدی کتاب بر مبنای این فصل ساخته شدهاند.
- فصل سوم کتاب A Practical Guide to Quantum Computing: کاربردها و پروتکلها با یک کیوبیت: این فصل نشان میدهد که یک کیوبیت ساده چگونه میتواند کاربردهای عملی داشته باشد. در اینجا توضیح داده میشود که چگونه از سیستمهای تککیوبیتی برای پیادهسازی طرحهای توزیع کلید و پول کوانتومی استفاده میشود، که جعل آنها غیرممکن است.
- فصل چهارم کتاب A Practical Guide to Quantum Computing: کدنویسی پروتکلهای تککیوبیتی در Qiskit: در این فصل، چارچوب Qiskit معرفی شده و به طور مختصر به پلتفرمهای دیگر محاسبات کوانتومی اشاره میشود. سپس نحوه پیادهسازی و اجرای پروتکلهای تککیوبیتی با استفاده از Qiskit آموزش داده میشود.
بخش دوم: ملاقات کیوبیت با کیوبیت: دو کیوبیت و درهمتنیدگی
- فصل پنجم کتاب A Practical Guide to Quantum Computing: نحوه کار با دو کیوبیت: این فصل با یک قدم فراتر رفتن، سیستمهای دوکیوبیتی را معرفی میکند. مانند فصل دوم، در اینجا نحوه نمایش، اندازهگیری و تبدیل حالت یک سیستم دوکیوبیتی مورد بحث قرار میگیرد.
- فصل ششم کتاب A Practical Guide to Quantum Computing: کاربردها و پروتکلها با دو کیوبیت: پس از معرفی سیستمهای دوکیوبیتی، این فصل به بررسی پدیدههای کوانتومی جدیدی مانند درهمتنیدگی میپردازد. در اینجا نشان داده میشود که چگونه از این پدیدهها برای کاربردهای جذاب استفاده میشود. همچنین، این فصل فرصتی فراهم میکند تا نحوه استفاده الگوریتمهای کوانتومی از پدیدههای کوانتومی در ساختارشان بررسی شود.
- فصل هفتم کتاب A Practical Guide to Quantum Computing: کدنویسی الگوریتمهای دوکیوبیتی در Qiskit: این فصل به طور خلاصه اصول اصلی چارچوب Qiskit را مرور کرده و نحوه کار با سیستمهای دوکیوبیتی در آن را معرفی میکند. سپس نحوه پیادهسازی و اجرای پروتکلها و الگوریتمهای مورد بحث در فصل ششم با استفاده از Qiskit نمایش داده میشود.
بخش سوم: کار با چندین کیوبیت
- فصل هشتم کتاب A Practical Guide to Quantum Computing: نحوه کار با چندین کیوبیت: این فصل به ما امکان میدهد با تسلط بر سیستمهای دوکیوبیتی، آخرین گام را در مسیر یادگیری برداریم و با معرفی سیستمهایی با تعداد دلخواه کیوبیت، تمام قدرت محاسبات کوانتومی را آزاد کنیم. در این فصل، سیستمهای چندکیوبیتی به عنوان تعمیمی از سیستمهای دوکیوبیتی معرفی میشوند و نحوه نمایش، اندازهگیری و تبدیل آنها توضیح داده میشود.
- فصل نهم کتاب A Practical Guide to Quantum Computing: قدرت کامل الگوریتمهای کوانتومی: این فصل الگوریتمهای کوانتومی سادهای را معرفی میکند که به طور کامل نشان میدهند چگونه میتوان از برهمنهی، درهمتنیدگی و تداخل کوانتومی در عمل استفاده کرد. این الگوریتمها به خوبی قابلیتها و محدودیتهای محاسبات کوانتومی را به تصویر میکشند و به عنوان یک گام اساسی برای الگوریتمهای پیچیدهتر در فصلهای بعدی عمل میکنند.
- فصل دهم کتاب A Practical Guide to Quantum Computing: کدنویسی با چندین کیوبیت در Qiskit: این فصل با نشان دادن نحوه کار با تعداد دلخواه کیوبیت در Qiskit، مقدمه استقرایی ما را به این چارچوب به اوج میرساند. برای نمایش این موضوع و مرور مطالب فصل قبلی، نحوه پیادهسازی الگوریتمهای Deutsch-Jozsa و Bernstein-Vazirani در Qiskit نشان داده میشود.
بخش چهارم: ستارههای نمایش: الگوریتمهای اصلی کوانتومی
- فصل یازدهم کتاب A Practical Guide to Quantum Computing: یافتن دوره تناوب و فاکتورگیری اعداد: این فصل به الگوریتم فاکتورگیری شور (Shor’s) میپردازد که احتمالاً شناختهشدهترین الگوریتم کوانتومی است و دلیل اصلی افزایش سریع علاقه عمومی به محاسبات کوانتومی در دهههای اخیر بوده است. در این فصل، ابتدا اهمیت این الگوریتم، به ویژه تأثیر آن بر امنیت سایبری، توضیح داده میشود و سپس جزئیات آن با رویکردی دقیق اما با توضیحات غیررسمی و شهودی فراوان بررسی میگردد.
- فصل دوازدهم کتاب A Practical Guide to Quantum Computing: جستجو و شمارش با یک کامپیوتر کوانتومی: این فصل به بررسی الگوریتم گراور (Grover’s)، که یک الگوریتم جستجوی کوانتومی است، میپردازد. ابتدا مشکل جستجوی عناصر در یک لیست نامرتب و پیچیدگی محاسباتی آن در کامپیوترهای کلاسیک معرفی میشود. سپس الگوریتم گراور معرفی میشود که میتواند سرعت جستجو را به صورت نمایی نسبت به روشهای کلاسیک افزایش دهد. همچنین، توضیح داده میشود که چگونه تبدیل فوریه کوانتومی، که در فصل قبل پوشش داده شده، میتواند با الگوریتم گراور ترکیب شود تا امکان شمارش نتایج جستجو را فراهم کند.
- فصل سیزدهم کتاب A Practical Guide to Quantum Computing: کدنویسی الگوریتمهای شور و گراور در Qiskit: این فصل به این موضوع میپردازد که چگونه الگوریتمهای گراور و شور، زمانی که سختافزار کوانتومی به اندازه کافی قدرتمند شود، کاربردهای گستردهای در دنیای واقعی خواهند داشت. در این فصل، نحوه برنامهنویسی این الگوریتمها با Qiskit نشان داده میشود. همچنین، بخشی به پیادهسازی تبدیل فوریه کوانتومی در Qiskit اختصاص داده شده است.
بخش پنجم: به سوی ستارگان: مسیر به سمت سودمندی و برتری کوانتومی
- فصل چهاردهم کتاب A Practical Guide to Quantum Computing: تصحیح خطای کوانتومی و تحمل خطا: این فصل به معرفی تصحیح خطای کوانتومی میپردازد، که میتواند راه را برای محاسبات با تحمل خطا هموار کند و سنگ بنای توسعه کامپیوترهای کوانتومی مفید باشد. فصل با بحثی در مورد ضرورت تصحیح خطای کوانتومی آغاز میشود و سپس یک کد ساده تصحیح خطای کوانتومی معرفی و پیادهسازی میگردد. در نهایت، با نکاتی در مورد محاسبات با تحمل خطا و نقش تصحیح خطای کوانتومی در آن، فصل به پایان میرسد.
- فصل پانزدهم کتاب A Practical Guide to Quantum Computing: آزمایشهایی برای برتری کوانتومی: این فصل به درک مفهوم برتری کوانتومی اختصاص دارد، به ویژه آزمایشهای اخیر با نمونهبرداری مدارهای تصادفی. مفاهیم اصلی این آزمایشها تشریح شده و با استفاده از Qiskit مثالهایی برای روشنتر شدن موضوع ارائه میشود. علاوه بر این، به عنوان جمعبندی کتاب، ایدههایی درباره آینده محاسبات کوانتومی مطرح میگردد.
پیوستهای کتاب A Practical Guide to Quantum Computing
- پیوست الف: ابزارهای ریاضی: این پیوست به مرور مبانی جبر خطی، از جمله بردارها و ماتریسها، و مفاهیم مهمی مانند پایهها و مقادیر ویژه میپردازد. علاوه بر این، خلاصهای سریع از مهمترین ویژگیهای اعداد مختلط و نحوه کار با آنها ارائه میدهد و حتی برخی مفاهیم از حساب پیمانهای را پوشش میدهد.
- پیوست ب: نمادگذاری Bra-Ket و سایر مفاهیم بنیادی: این پیوست به صورت عمیق به جزئیات نمادگذاری “bra-ket” که در سراسر کتاب و متون محاسبات کوانتومی استفاده میشود، میپردازد. همچنین به طور مختصر یک ابزار بسیار پرکاربرد برای نمایش حالتهای تککیوبیتی، یعنی کره بلوخ (Bloch sphere) را نیز معرفی میکند.
- پیوست ج: اندازهگیری پیچیدگی الگوریتمها: این پیوست به عنوان مقدمهای کوتاه برای اندازهگیری منابع مورد نیاز جهت حل مسائل با استفاده از الگوریتمها است. در آن، مفاهیم مهمی مانند نماد O بزرگ (Big O notation) که در سراسر کتاب استفاده میشود، تعریف شده است.
- پیوست د: نصب ابزارها: این بخش شما را در فرآیند نصب کتابخانههای لازم برای اجرای کدهای موجود در این کتاب راهنمایی میکند.
- پیوست ه: نکات تولید: این بخش نگاهی اجمالی به فرآیند نگارش یک کتاب فنی مانند این کتاب، از جمله نرمافزارهای مورد استفاده برای حروفچینی و آمادهسازی محتوا، ارائه میدهد.
- راهحلها: این قسمت شامل راهحلهای تمامی تمرینات پیشنهادی در متن اصلی کتاب است.
سرفصلهای کتاب A Practical Guide to Quantum Computing:
- Cover
- Title Page
- Copyright and Credits
- Contributors
- Table of Contents
- Foreword
- Acknowledgements
- Preface
- Part 1: One Qubit to Rule Them All: Working with One Qubit
- Chapter 1: What Is (and What Is Not) aQuantum Computer
- Chapter 2: Qubits, Gates, andMeasurements
- Chapter 3: Applications and Protocolswith One Qubit
- Chapter 4: Coding One-Qubit Protocolsin Qiskit
- Part 2: Qubit Meets Qubit: TwoQubits and Entanglement
- Chapter 5: How toWork with TwoQubits
- Chapter 6: Applications and Protocolswith Two Qubits
- Chapter 7: Coding Two-QubitAlgorithms in Qiskit
- Part 3 Working with Many Qubits
- Chapter 8: How toWork with ManyQubits
- Chapter 9: The Full Power of QuantumAlgorithms
- Chapter 10: Coding with Many Qubits inQiskit
- Part 4 The Stars of the Show: Main Quantum Algorithms
- Chapter 11: Finding the Period andFactoring Numbers
- Chapter 12: Searching and Countingwith a Quantum Computer
- Chapter 13: Coding Shor and Grover’sAlgorithms in Qiskit
- Part 5: Ad Astra: The Road toQuantum Utility andAdvantage
- Chapter 14: Quantum Error Correctionand Fault Tolerance
- Chapter 15: Experiments for QuantumAdvantage
- Appendices
- Appendix A: Mathematical Tools
- Appendix B: The Bra-Ket Notation andOther Foundational Notions
- Appendix C: Measuring the Complexityof Algorithms
- Chapter D: Installing the Tools
- Chapter E: Production Notes
- Solutions
- Index
- Other Books You Might Enjoy
جهت دانلود کتاب A Practical Guide to Quantum Computing میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.