تبدیل کامپیوتر کوانتومی به تولیدکننده اعداد تصادفی

اولین کاربرد عملی کامپیوتر‌ها‌ی کوانتومی، تولید اعداد کاملا تصادفی است که همین خصوصیت برای اثبات برتری این نوع کامپیوترها کفایت می‌کند.

 

کافی است عبارت «برتری کوانتومی» را در یکی از گردهمایی‌های دانشمندان کامپیوتر به‌کار‌ ببرید تا شاهد باشید حاضران با شنیدن آن پشت چشم نازک می‌کنند. این عبارت از آنجا‌ سرچشمه می‌گیرد که کامپیوتر‌ها‌ی کوانتومی به‌زودی آستانه‌ی علم کامپیوتر را پشت‌سر می‌گذارند و کار‌ها‌یی که برای کامپیوتر‌ها‌ی کلاسیک بسیار سخت هستند، به‌سادگی انجام می‌دهند. تا چندی پیش، مردم تصور می‌کردند کار‌ها‌یی که کامپیوتر‌ها‌ی کوانتومی انجام می‌دهند، کاربرد کمی در جهان واقعی‌ دارند. درحقیقت، دلیل پشت چشم نازک‌کردن نیز همین است.

اکنون که طبق شایعه‌ها تا دستیابی پردازنده‌ی کوانتومی گوگل به برتری کوانتومی زمان چندانی باقی نمانده است، به‌نظر می‌رسد این هدف قریب‌الوقوع کاربرد مهمی دارد: «ایجاد فرایند تصادفی محض». فرایند‌ها‌ی تصادفی تقریبا زیر‌بنا‌ی همه‌ی کار‌ها‌ی کامپیوتری و محاسباتی ما را تشکیل می‌دهند؛ به‌‌ویژه از این فرایند‌ها برای کد‌گذاری‌کردن داده‌ها و محافظت از همه‌ی اطلاعات از مکالمات عادی و معمولی تا معاملات اقتصادی استفاده می‌شود. تعریف تصادف محض و اصیل و اثبات‌شدنی از این قرار است:

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

همین فرایند تصادفی زمانی کامپیوتر‌ها‌ی کوانتومی را تغییر‌ داد و برتری آن‌ها را به همه نشان‌ داد. اولین کار‌ها‌یی که برای این کامپیوتر‌ها در‌ نظر گرفته شد، به‌سادگی می‌توانست قدرت این فناوری را به همه نشان‌ دهد و همین کار‌ها توانست تصادف کاملا تضمین‌شده را به‌وجود آورد. جان مارتینیس، فیزیک‌دان دانشگاه کالیفرنیا و سانتا باربارا، سرپرست محاسبات کوانتومی گوگل، در این زمینه می‌گویند:

این توانایی ایجاد تصادف محض ما را بسیار هیجان‌زده کرده است. امیدواریم این تازه اولین کاربرد کامپیوتر کوانتومی باشد. 

تصادف و آنتروپی

ارتباط فرایند تصادفی و تئوری کوانتوم مانند ارتباط طوفان و رعد‌و‌برق است. در هر دو مورد، فرایند اول نتیجه‌ی اجتناب‌ناپذیر فرایند دوم است. در جهان کوانتومی، همیشه سیستم‌ها ترکیبی از حالت‌ها هستند که به این چیدمان سیستم‌ها‌ی کوانتومی، برهم‌نهی گفته می‌شود.

اگر سیستم کوانتومی را اندازه‌گیری کنیم، سیستم به یکی از این حالت‌ها فرو‌افت می‌کند. ازآنجاکه تئوری کوانتوم به ما کمک می‌کند قبل از اندازه‌گیری سیستم کوانتومی، احتمال اتفاق‌افتادن هر‌کدام از این حالت‌ها را محاسبه‌کنیم، پس از اندازه‌گیری سیستم، نتیجه قطعا تصادفی خواهد‌ بود؛ چراکه تئوری کوانتوم، تنها احتمال اتفاق‌افتادن این حالت‌ها را دراختیار ما قرار‌ داده‌ است. 

فیزیک‌دانان از این ارتباطِ میان تئوری کوانتوم و فرایند‌ها‌ی تصادفی، برای ساخت تولید‌کننده‌ی اعداد تصادفی استفاده‌ کردند. همه‌ی این‌ها به اندازه‌گیری نوعی از بر‌هم‌نهی کوانتومی مربوط است. در‌حالی‌که این سیستم‌ها برای نیاز زندگی روزمره‌ی انسان‌ها به فرایند‌ها‌ی تصادفی، بیشتر از حد کافی هستند، کار با این سیستم‌ها سخت است.

علاوه‌بر همه‌ی این‌ها، ثابت‌کردن اینکه اعداد تولید‌شده با تولید‌کننده‌ی اعداد تصادفی واقعا تصادفی هستند، بسیار سخت است. در‌نهایت، روش‌ها‌ی دیگری برای تولید اعداد تصادفی وجود‌ دارند؛ اما این روش‌ها شامل مراحل بسیار دشوار هستند و برای این کار تجهیزات زیادی موردنیاز است که اغلب این تجهیزات نیز در فاصله‌ی زیادی از یکدیگر قرار‌ دارند.

کامپیوتر کوانتومی

آزمایشگاه هوش مصنوعی گوگل، بریستلکن، پردازنده‌ی  کوانتومی ۷۲ کیوبیتی خود را معرفی کرده‌ است.

یکی از روش‌های پیشنهادی اخیر برای چگونگی تولید اعداد تصادفی با استفاده از دستگاه (کامپیوتر کوانتومی)، بهره‌گیری از وظیفه‌ی به‌اصطلاح نمونه‌برداری است که در میان نخستین آزمون‌ها‌ی برتری کوانتومی قرار‌ خواهد داشت. برای درک این وظیفه، تصور‌ کنید جعبه‌ای پر از کاشی به شما داده‌ شده‌ که رو‌ی هرکدام از آن‌ها تعدادی صفر و تعدادی یک به‌صورت ۰۰۰، ۰۱۰، ۱۰۱ و... نوشته‌ شده‌ است.

اگر مانند مثال‌ها‌ی مذکور تعداد واحد‌ها سه باشد، هشت راه مختلف خواهیم‌ داشت؛ اما ممکن است از هر کاشی تعدادی کپی در جعبه وجود‌ داشته‌ باشد. ممکن است ۵۰ کاشی با برچسب ۰۱۰ و ۲۵ کاشی با برچسب ۰۰۱ وجود‌ داشته‌ باشد. این توزیع کاشی‌ها مشخص می‌کند که با چه احتمالی می‌توانید یک کاشی با برچسب مشخص از جعبه بیرون آورید. در این مورد، احتمال اینکه کاشی با برچسب ۰۱۰ را بیرون آورید، دوبرابر احتمال این است که کاشی با برچسب ۰۰۱ بیرون آورید. 

همین کار با الگوریتمی کوانتومی انجام‌ شده است که به جعبه‌ای شامل توزیع خاصی از کاشی‌ها دسترسی دارد و یکی از آن‌ها را به‌صورت تصادفی بیرون می‌آورد. هر‌چه احتمال وجود کاشی خاصی در این جعبه بیشتر باشد، احتمال بیرون‌آمدن همان کاشی ازطریق الگوریتم کامپیوتری نیز بیشتر است. البته، قرار نیست الگوریتمی کامپیوتری وارد جعبه‌ای واقعی شود و کاشی بیرون آورد؛ اما به‌جا‌ی این کار، از بین رشته‌اعدادی که دراختیارش قرار‌ گرفته است، مثلا طول این رشته می‌تواند ۵۰ باشد، عددی دورقمی به‌صورت تصادفی بیرون می‌آورد. 

زمانی‌که تعداد بیت‌ها‌ی رشته‌ی اعداد زیاد‌ شود، این کار برای کامپیوتر معمولی کلاسیک به‌صورت نمایی سخت‌تر می‌شود؛ اما به‌نظر می‌رسد این کار برای کامپیوتر کوانتومی ساده است و چه تعداد بیت‌ها ۵ باشد یا ۵۰، تفاوت چندانی ندارد. کار کامپیوتر کوانتومی در مرحله‌ای خاص با بیت‌ها‌ی کوانتومی (کیوبیت) آغاز می‌شود. می‌توانیم بگوییم کار همه‌ی آن‌ها با صفر آغاز می‌شود. کامپیوتر کلاسیک از گذر‌گاه‌ها‌ی منطقی با بیت‌ها‌ی کلاسیک کار می‌کند و کامپیوتر کوانتومی از گذر‌گاه‌ها‌ی کوانتومی بر کیوبیت‌ها تأثیر می‌گذارد. 

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

اگر تعدادی از گذر‌گاه‌ها‌ی کوانتومی را انتخاب‌ کنید و آن‌ها را در‌کنار یکدیگر قرار‌ دهید و در ادامه، با ترتیب خاصی آن‌ها را روی تعدادی از کیوبیت‌ها اثر‌ دهید، مدار کوانتومی ساخته‌اید. در این مورد خاص، برای اینکه رشته‌ای ۵۰‌ تا‌یی از بیت‌ها را به‌صورت تصادفی جدا‌ کنیم، می‌توانیم رشته‌ای ۵۰‌تایی از کیوبیت‌ها را در‌کنار یکدیگر قرار‌ دهیم و مداری درست‌ کنیم که همه‌ی ۵۰ کیوبیت آن در ابر‌جای‌گزیدگی حالت‌ها قرار‌ داشته‌ باشند و بتوانیم به‌وسیله‌ی آن، توزیع دلخواهمان را دوباره درست‌ کنیم. 

زمانی‌که روی کیوبیت‌ها اندازه‌گیری شود، ابر‌جای‌گزیدگی از بین می‌رود و یکی از رشته‌ها‌ی ۵۰ بیتی به‌صورت تصادفی ظاهر می‌شود. احتمال اینکه پس از اندازه‌گیری کدام‌یک از رشته‌ها‌ی ۵۰ بیتی ظاهر می‌شود، نحوه‌ی توزیع مدار کوانتومی تعیین می‌کند. اندازه‌گیری کیوبیت‌ها شبیه زمانی است که انسانی نابینا به‌صورت تصادفی یکی از رشته‌ها‌ی موجود در جعبه را با توزیع خاصی بیرون‌ آورد.

 

اسکات ارونسون، دانشمند علم کامپیوتر در دانشگاه آوستین تگزاس، می‌گوید مولد اعداد تصادفی احتمالا اولین کاربرد کامپیوتر‌ها‌ی کوانتومی محسوب می‌شود که از نظر فناوری عملی و دسترس‌پذیر است.

این فرایند چگونه ما را به اعداد تصادفی می‌رساند؟ واضح است که رشته‌ی ۵۰ بیتی نمونه‌برداری‌شده‌ی کامپیوتر کوانتومی، آنتروپی (معیاری از بی‌نظمی و پیش‌بینی‌ناپذیر بودن فرایند‌ها) زیادی دارد. فرایند‌ها‌ی تصادفی نیز به‌ همین شکل هستند؛ یعنی آنتروپی زیادی دارند. اسکات ارونسون، دانشمند علم کامپیوتر در دانشگاه آوستین تگزاس گفت:

درواقع، این موضوع می‌تواند مشکل بزرگی باشد، نه به این دلیل که یکی از مهم‌ترین کاربرد‌ها‌ی کامپیوتر کوانتومی است؛ بلکه شاید به این دلیل که این اولین کاربرد کامپیوتر کوانتومی است که قابلیت تجاری‌سازی و استفاده در صنعت را دارد.

روش ارونسون برای تولید تصادف، روش بسیار سر‌راستی است. کامپیوتر کلاسیک ابتدا تعدادی بیت تصادفی از چند منبع مطمئن جمع‌آوری می‌کند و سپس، از این بذر‌ها‌ی تصادفی برای ترسیم و توصیف مدار کوانتومی استفاده می‌کند. این بیت‌های تصادفی نوع گذر‌گاه‌ها‌ی کوانتومی و ترتیب اثر آن‌ها روی کیوبیت‌ها را تعیین می‌کنند. کامپیوتر کلاسیک توصیف به‌دست‌آمده از مدار کوانتومی را به کامپیوتر کوانتومی ارسال می‌کند. در این مرحله، مدار کوانتومی اجرا می‌شود و کیوبیت‌ها را اندازه‌گیری می‌کند و رشته‌ی ۵۰ بیتی خروجی را پس می‌فرستد. در انجام این فرایند، رشته‌ی ۵۰ بیتی از توزیع انتخاب‌شده برای مدار کوانتومی به‌دست می‌آید. 

پس‌از‌آن، این فرایند بار‌هاوبار‌ها تکرار می‌شود. برای مثال، ۱۰ بار برای هر مدار کوانتومی تکرار می‌شود. کامپیوتر کلاسیک برای مطمئن‌شدن از میزان آنتروپی رشته‌ی به‌دست‌آمده، از آزمون‌ها‌ی آماری استفاده می‌کند. ارونسون در مقاله‌ای که قبلا در لیجی چن منتشر‌ کرده‌ است و در مقاله‌ای که در دست انتشار دارد، نشان‌ داد با فرضیه‌ها‌ی عملی، محاسبات مسائل این‌چنینی بسیار دشوار است. زمانی‌که کامپیوتر کوانتومی می‌تواند این میزان آنتروپی را به‌وجود‌ آورد، هیچ کامپیوتر کلاسیکی در هیچ جا‌ی دنیا نمی‌تواند به‌ همین میزان آنتروپی تولید‌ و از توزیع مشخصی نمونه‌برداری‌ کند. پس از همه‌ی این مراحل، کامپیوتر کلاسیک همه‌ی اجزا‌ی رشته‌ی ۵۰ بیتی را در‌کنار یکدیگر قرار می‌دهد و از آن الگوریتم کلاسیکی شناخته‌شده‌ای می‌سازد. ارونسون گفت:

کامپیوتر کلاسیکی رشته‌ای طولانی می‌سازد که با تقریب خیلی خوبی تصادفی است. 

دریچه‌ی کوانتومی

روش ارونسون برای کامپیوتر‌ها‌ی کوانتومی شامل ۵۰ تا ۱۰۰ کیوبیت بهترین کارایی را دارد. زمانی‌که تعداد کیوبیت‌ها از این حد بگذرد، استفاده از این روش حتی برای ابر‌کامپیوتر‌ها‌ی کلاسیکی نیز از نظر محاسباتی مشکل می‌شود. در اینجا، طرح و برنامه‌ی دیگری برای تولید تصادف محض و مطمئن با استفاده از کامپیوتر‌ها‌ی کوانتومی به‌صحنه می‌آید. در این روش، از تکنیک ریاضی که قبلا هم وجود‌ داشته‌ است، البته با نام باز‌دارنده استفاده می‌شود: تابع دریچه‌ی پنجه‌ آزاد (trapdoor claw-free function). امش وزیرانی، دانشمند علم کامپیوتر در دانشگاه برکلی کالیفرنیا است که به‌همراه ویکا برکرسکی، پاول کریستیانو، ارمیلا ماهادو و توماس ویدیک، راهکار جدید را عملی‌ کرده‌ است. وزیرانی گفت:

موضوع بسیار بد‌تر از این به‌نظر می‌رسد. 

باردیگر جعبه‌ای را تصور‌ کنید. این‌بار به‌جا‌ی بیرون‌آوردن رشته‌ای از این جعبه، رشته‌ی n بیتی درون این جعبه می‌اندازیم و آن را به‌عنوان x نام‌گذاری می‌کنیم و رشته‌ی n بیتی دیگری از این جعبه بیرون می‌آوریم. اتفاقی که می‌افتد، تقریبا بدین‌ترتیب است که در‌این‌میان، جعبه رشته‌ی ورودی را به رشته‌ی خروجی نگاشت می‌دهد؛ اما این جعبه خصوصیت ویژه‌ای دارد: برای هر x، رشته‌ی ورودی دیگری به‌نام y وجود‌ دارد که همان رشته‌ی خروجی قبلی را به‌ ما می‌دهد. 

به‌ عبارت دیگر، دو رشته‌ی یکتا‌ی x و y وجود‌ دارند که به‌ازای هر‌کدام از آن‌ها، جعبه رشته‌ی خروجی z را به‌ ما می‌دهد. به این سه‌تایی x و y و z، یک پنجه (کلاو) گفته می‌شود. درواقع، به زبان کامپیوتر جعبه یک تابع است. محاسبه‌ی این تابع کار ساده‌ای است؛ یعنی اگر x و y را به آن بدهیم، z را محاسبه می‌کند؛ اما اگر فقط x و z را به آن بدهیم، محاسبه‌ی y (در اینجا یعنی پنجه) حتی برای کامپیوتر کوانتومی غیر‌ممکن است. تنها راهی که با آن می‌توانستیم کلاو را به‌دست آوریم، تنها زمانی بود که دریچه‌ای به‌سمت داخل جعبه داشتیم؛ یعنی زمانی‌که اطلاعاتی از داخل جعبه داشتیم.

(از راست به چپ) آرمیلا ماهادو و امش وزیرانی و توماس ویدیک تولید‌کننده‌ی اعداد تصادفی ساخته‌اند که در آن رمز‌نگاری با پردازش اطلاعات کوانتومی ترکیب شده است.

وزیرانی و همکارانش قصد‌ دارند از این توابع برای تولید تصادف محض با کامپیوتر کوانتومی استفاده‌ کنند. علاوه‌براین، قصد‌ دارند ثابت‌ کنند رفتار کامپیوتر کوانتومی ازنظر مکانیک کوانتومی، خوب و بدون نقص است. این کار لازمه‌ی اطمینان‌کردن به تصادف‌ها‌ی تولید‌شده است. این روش با کامپیوتری کوانتومی آغاز می‌شود که تعداد n کیوبیت را در بر‌هم‌نهی‌ای از همه‌ی رشته‌های n بیتی قرار می‌دهد. سپس، کامپیوتر کلاسیکی توصیفی از مدار کوانتومی را می‌فرستند و توابعی را تعیین می‌کند که باید روی بر‌هم‌نهی اثر‌ کنند (قانون تابع آزاد دریچه‌ی کلاو). کامپیوتر کوانتومی بدون اینکه چیزی از دریچه بداند، مدار کوانتومی را اجرا می‌کند. 

در این مرحله، کامپیوتر کوانتومی به وضعیتی می‌رسد که در آن آرایه‌ای از کیوبیت‌ها در بر‌هم‌نهی‌ای با همه‌ی رشته‌ها‌ی n بیتی است؛ در‌حالی‌که آرایه‌ی دیگری از کیوبیت‌ها نتیجه‌ی اعمال تابع بر این بر‌هم‌نهی را در‌بر‌ دارد. نکته‌ی دیگر این است که این دو آرایه از کیوبیت‌ها با یکدیگر در‌هم‌تنیده هستند. 

سپس، کامپیوتر کوانتومی آرایه‌ی کیوبیتی دوم را اندازه‌گیری می‌کند و درنتیجه‌ی این اندازه‌گیری، بر‌هم‌نهی به مقدار خاص z فرو‌پاشی می‌کند؛ اما اولین آرایه‌ی کیوبیتی به بر‌هم‌نهی مساوی از دو رشته‌ی n بیتی x و y فرو‌پاشی می‌کند؛ چراکه هر‌کدام از رشته‌ها‌ی x و y می‌توانستند به‌عنوان ورودی به تابع داده‌ شوند و ما را به خروجی z برسانند. در ادامه، کامپیوتر کلاسیکی خروجی z  را دریافت می‌کند و در بیشتر مواقع از کامپیوتر کوانتومی می‌خواهد تا کیوبیت‌ها‌ی باقی‌مانده را اندازه‌گیری‌ کند. این کار باعث فرو‌پاشی ابر‌جای‌گزیدگی با شانس پنجاه‌پنجاه به یکی از مقادیر x یا y می‌شود. این فرایند با دریافت صفر یا یک به‌صورت تصادفی هم‌ارز است. 

در این زمینه، کامپیوتر کلاسیکی برای آزمودن میزان کوانتومی‌بودن کامپیوتر کوانتومی این اندازه‌گیری را درخواست می‌کند. این اندازه‌گیری و نتیجه‌ی آن به‌صورتی چیده‌ شده‌اند تا کامپیوتری کلاسیک بتواند با استفاده از تنها دریچه‌ای که به آن دسترسی‌ دارد، از کوانتومی‌بودن نتایج به‌دست‌آمده مطمئن‌ شود. وزیرانی و همکارانش نشان‌ دادند اگر دستگاه بتواند بدون استفاده از فرو‌پاشی کیوبیت‌ها به اندازه‌گیری انجام‌شده جواب درست دهد، این با به‌دست‌آوردن کلاو بدون استفاده از دریچه هم‌ارز است. البته، این غیر‌ممکن است؛ بنابر‌این، حد‌اقل باید یک کیوبیت در دستگاه فرو‌پاشی‌ کند و به‌صورت تصاوفی مقدار یک یا صفر تولید‌ کند. وزیرانی گفت:

این روش در کامپیوتری نامطمئن، کیوبیت بررسی‌کردنی و آزمودنی به‌وجود می‌آورد. 

این کیوبیت آزمودنی برای هر درخواست، یک بیت واقعا تصادفی از اطلاعات فراهم می‌کند و یک آرایه از این درخواست‌ها برای ایجاد رشته‌ی بلند تصادفی استفاده‌ می‌شود. این طرح می‌تواند از نمونه‌برداری کوانتومی ارونسون سریع‌تر باشد؛ اما چند ویژگی منفی نیز دارد. ارونسون گفت:

این روش برای تعداد ۵۰ یا ۷۰ کیوبیت عملی نیست.

هم‌اکنون ارونسون درانتظار سیستم گوگل است. او می‌گوید:

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

اگر این‌گونه باشد، دستیابی به فرایند تصادفی کوانتومی با استفاده از دستگاه کوانتومی نزدیک است. مارتینیس معتقد است:

فکر می‌کنیم این قابلیت بسیار پر‌کاربردی است و ظرفیت‌ها‌ی زیادی برای استفاده دارد. این همان چیزی است که قصد‌ داریم به مردم ارائه دهیم. 





تاريخ : پنج شنبه 3 مرداد 1398برچسب:, | | نویسنده : مقدم |