زیست مصنوعی کوانتومی

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

در سال ۲۰۱۶، آلوارز-رودریگز و همکارانش پیشنهادی برای یک الگوریتم زیست مصنوعی کوانتومی ارائه کردند که قادر به شبیه‌سازی زیست و فرگشت داروینی بود. در سال ۲۰۱۸، همین تیم تحقیقاتی این الگوریتم را بر روی رایانه کوانتومی IBM ibmqx4 اجرا کردند و به نتایج امیدوارکننده‌ای دست یافتند. این نتایج به‌طور دقیق سامانه‌ای را شبیه‌سازی کرد که قابلیت تکثیر خود در مقیاس کوانتومی را داشت.

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

افراد به صورت دو کیوبیت در نظر گرفته شدند، یکی نشان‌دهنده ژنوتیپ فرد و دیگری نشان‌دهنده فنوتیپ. ژنوتیپ برای انتقال اطلاعات ژنتیکی از نسلی به نسل دیگر کپی می‌شود و فنوتیپ به اطلاعات ژنتیکی و همچنین تعاملات فرد با محیط خود بستگی دارد. به منظور راه‌اندازی سامانه، حالت ژنوتیپ با چرخش یک حالت کمکی (|0\rangle\langle0| ) نمونه‌سازی می‌شود. محیط یک شبکه فضایی دوبعدی است که توسط افراد و حالت‌های کمکی اشغال شده است. محیط به یاخته‌هایی تقسیم می‌شود که می‌توانند یک یا چند نفر را در خود جای دهند. افراد در سراسر شبکه حرکت می‌کنند و یاخته‌ها را به‌طور تصادفی اشغال می‌کنند. وقتی دو یا چند نفر یک سلول را اشغال می‌کنند، با یکدیگر تعامل دارند.

## تکثیر خودکار

توانایی تکثیر خود برای شبیه‌سازی زنده‌بودن بسیار مهم است. تکثیر خود زمانی اتفاق می‌افتد که ژنوتیپ یک فرد با یک حالت کمکی تعامل می‌کند و یک ژنوتیپ برای یک فرد جدید ایجاد می‌کند. این ژنوتیپ با یک حالت کمکی متفاوت تعامل می‌کند تا فنوتیپ را ایجاد کند. در طول این تعامل، می‌خواهیم مقداری اطلاعات در مورد حالت اولیه را در حالت کمکی کپی کنیم، اما طبق قضیه عدم شبیه‌سازی، کپی کردن یک حالت کوانتومی ناشناخته دلخواه غیرممکن است. با این حال، فیزیکدانان روش‌های مختلفی را برای شبیه‌سازی کوانتومی استخراج کرده‌اند که نیازی به کپی دقیق یک حالت ناشناخته ندارد. روشی که توسط آلوارز-رودریگز و همکاران پیاده‌سازی شده است. روشی است که شامل شبیه‌سازی مقدار مورد انتظار برخی از مشاهدات است. برای یک واحد U که مقدار انتظار برخی از مجموعه‌های قابل مشاهده \mathsf{X} را از حالت \rho در یک حالت خالی کپی می‌کند \rho_e، دستگاه شبیه‌سازی توسط هر (U, \rho_e, \mathsf{X}) تعریف می‌شود.[۵] که موارد زیر را برآورده می‌کنند:
\forall \rho \forall X \in \mathsf{X}  \bar{X} = \bar{X_1} = \bar{X_2}

در اینجا \bar{X} میانگین مقدار قابل مشاهده در \rho قبل از شبیه‌سازی، \bar{X_1} میانگین مقدار قابل مشاهده در \rho بعد از شبیه‌سازی و \bar{X_2} مقدار میانگین قابل مشاهده در \rho_e بعد از شبیه‌سازی است. توجه داشته باشید که دستگاه شبیه‌سازی به \rho وابسته نیست زیرا می‌خواهیم بتوانیم انتظار مشاهدات را برای هر حالت اولیه شبیه‌سازی کنیم. مهم است که توجه داشته باشید که شبیه‌سازی مقدار میانگین مشاهده، اطلاعات بیشتری نسبت به آنچه که به‌طور کلاسیک مجاز است منتقل می‌کند.[۵] محاسبه مقدار میانگین به‌طور طبیعی به صورت زیر تعریف می‌شود:

\bar{X} = Tr[\rho X], \bar{X_1} = Tr[RX \otimes I], \bar{X_2} = Tr[RI \otimes X] که در آن R = U\rho \otimes \rho_e U^\dagger

ساده‌ترین دستگاه شبیه‌سازی، مقدار مورد انتظار \sigma_z را در حالت دلخواه \rho = |\psi\rangle \langle \psi| به \rho_e = |0\rangle \langle 0| با استفاده از U = CNOT شبیه‌سازی می‌کند. این دستگاه شبیه‌سازی است که برای تکثیر خود توسط آلوارز-رودریگز و همکاران پیاده‌سازی شده است. فرایند تکثیر خود به وضوح فقط نیاز به تعامل بین دو کیوبیت دارد، بنابراین این دستگاه شبیه‌سازی تنها دستگاه مورد نیاز برای تکثیر خود است.

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

### جهش
جهش‌ها در دنیای مصنوعی با احتمال محدود وجود دارند، معادل وقوع آنها در دنیای واقعی. دو راه برای جهش فرد وجود دارد: از طریق چرخش‌های تصادفی تک کیوبیتی و با خطا در فرایند تکثیر خود. دو عملگر مختلف وجود دارد که بر روی فرد عمل می‌کنند و باعث جهش می‌شوند. عملیات M باعث جهش خود به خود در فرد می‌شود و یک کیوبیت را با پارامتر θ می‌چرخاند. پارامتر θ برای هر جهش تصادفی است که تنوع زیستی را در محیط مصنوعی ایجاد می‌کند. عملیات M یک ماتریس واحد است که می‌توان آن را به صورت زیر توصیف کرد:
M=\begin{pmatrix} \cos(\theta) & sin(\theta) \\ sin(\theta) & -cos(\theta) \end{pmatrix}

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

U_M(\theta)=\Iota_4+\frac{1}{2}\begin{pmatrix} 0 & 0 \\ 0 & 1 \end{pmatrix}\otimes\begin{pmatrix} -1 & 1 \\ 1 & -1 \end{pmatrix}(cos\theta + i sin\theta + 1)

این دو نوع جهش به‌طور متفاوتی بر فرد تأثیر می‌گذارند. در حالی که عملیات M خود به خود بر فنوتیپ فرد تأثیر نمی‌گذارد، جهش خطای تکثیر خود، UM، هم ژنوتیپ فرد و هم طول عمر مرتبط با آن را تغییر می‌دهد.

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

### مرگ
در لحظه ایجاد فرد (زمانی که ژنوتیپ در فنوتیپ کپی می‌شود)، فنوتیپ با محیط تعامل می‌کند. با گذشت زمان، تعامل فرد با محیط، پیری را شبیه‌سازی می‌کند که در نهایت منجر به مرگ فرد می‌شود. مرگ یک فرد زمانی اتفاق می‌افتد که مقدار مورد انتظار \sigma_z  در فنوتیپ در فاصله \epsilon  از ۱ باشد، یا معادل آن، زمانی که \rho_p = |0\rangle\langle0|  باشد.

لینبلادیان تعامل فرد با محیط را توصیف می‌کند: \dot{\rho} = \gamma (\sigma \rho \sigma^{\dagger} - \frac{1}{2}\sigma^\dagger \sigma \rho - \frac{1}{2}\rho \sigma^\dagger \sigma )  با \sigma = I \otimes |0 \rangle\langle 1|  و بدون \rho = \rho_g \otimes \rho_p . [۱] این تعامل باعث می‌شود که فنوتیپ به‌طور تصاعدی در طول زمان تحلیل رود. با این حال، ماده ژنتیکی موجود در ژنوتیپ از بین نمی‌رود که اجازه می‌دهد ژن‌ها به نسل‌های بعدی منتقل شوند. با توجه به حالت اولیه ژنوتیپ:
\rho_g =
\begin{pmatrix}
 a & b - ic \\
 b + ic & 1 - a \\
\end{pmatrix} 

مقادیر مورد انتظار ژنوتیپ و فنوتیپ را می‌توان به صورت زیر توصیف کرد:
\langle\sigma_z\rangle_g =2a-1,\langle\sigma_z\rangle_p =1-2e^{\gamma t}(1-a). که در آن 'a' نشان دهنده یک پارامتر ژنتیکی واحد است. از این معادله، می‌توان دریافت که با افزایش 'a'، امید به زندگی کاهش می‌یابد. به‌طور معادل، هر چه حالت اولیه به |1\rangle\langle1|  نزدیکتر باشد، امید به زندگی فرد بیشتر می‌شود.

وقتی \langle \sigma_z \rangle_p = 1 - \epsilon ، فرد مرده در نظر گرفته می‌شود، فنوتیپ به عنوان حالت کمکی برای یک فرد جدید استفاده می‌شود؛ بنابراین، چرخه ادامه می‌یابد و فرایند خودپایدار می‌شود.

## منابع

* 

رده:الگوریتم‌های کوانتومی
رده:علوم محاسباتی اعصاب
رده:هوش مصنوعی