موضوع مقاله: تکامل عصبی توپولوژی‌های تقویت‌کننده | مخاطب: عمومی | لحن: دانشنامه‌ای | ساختار: عنوان، مقدمه، 3 بخش، جمع‌بندی | مقاله: | # تکامل عصبی توپولوژی‌های تقویت‌کننده | مقدمه: تکامل عصبی توپولوژی‌های افزایشی (NEAT) یک الگوریتم ژنتیک (GA) برای تولید شبکه‌های عصبی مصنوعی در حال تکامل (یک تکنیک تکامل عصبی) است که توسط کنت استنلی و ریستو میکولاینن در سال ۲۰۰۲ در دانشگاه تگزاس در آستین توسعه یافته است. | ## بخش 1: تکامل عصبی توپولوژی‌های تقویت‌کننده | این تکنیک پارامترهای وزنی و ساختارهای شبکه‌ها را تغییر می‌دهد و سعی می‌کند تعادلی بین تناسب راه‌حل‌های تکامل‌یافته و تنوع آن‌ها پیدا کند. این روش بر اساس استفاده از سه تکنیک کلیدی است: ردیابی ژن‌ها با نشانگرهای تاریخی برای اجازه دادن به تلاقی بین توپولوژی‌ها، اعمال گونه‌زایی (تکامل گونه‌ها) برای حفظ نوآوری‌ها، و توسعه تدریجی توپولوژی‌ها از ساختارهای اولیه ساده ("پیچیده‌سازی"). عملکرد در وظایف کنترلی ساده، الگوریتم NEAT معمولاً سریع‌تر از سایر تکنیک‌های تکامل عصبی معاصر و روش‌های یادگیری تقویتی به شبکه‌های مؤثر دست می‌یابد. الگوریتم به طور سنتی، توپولوژی یک شبکه عصبی توسط یک آزمایش‌کننده انسانی انتخاب می‌شود و مقادیر وزنی مؤثر از طریق یک فرایند آموزشی یاد گرفته می‌شوند. این وضعیت ممکن است به یک فرایند آزمون و خطا نیاز داشته باشد تا یک توپولوژی مناسب تعیین شود. NEAT نمونه‌ای از یک شبکه عصبی مصنوعی تکاملی با توپولوژی و وزن متغیر (TWEANN) است که تلاش می‌کند به طور همزمان مقادیر وزن و یک توپولوژی مناسب برای یک شبکه عصبی را یاد بگیرد. برای رمزگذاری شبکه به یک فنوتیپ برای الگوریتم ژنتیک (GA)، NEAT از یک طرح رمزگذاری مستقیم استفاده می‌کند که به این معنی است که هر اتصال و نورون به طور صریح نمایانده می‌شود. این در تضاد با طرح‌های رمزگذاری غیرمستقیم است که قوانینی را تعریف می‌کنند که اجازه می‌دهد شبکه بدون نمایاندن صریح هر اتصال و نورون ساخته شود و نمایندگی فشرده‌تری را فراهم کند. رویکرد NEAT با یک شبکه پیش‌خور مانند پرسپترون که فقط شامل نورون‌های ورودی و نورون‌های خروجی است، آغاز می‌شود. با پیشرفت تکامل از طریق مراحل گسسته، پیچیدگی توپولوژی شبکه ممکن است افزایش یابد، چه با وارد کردن یک نورون جدید به یک مسیر اتصال و چه با ایجاد یک اتصال جدید بین نورون‌های (قبلاً غیرمتصل) . | ## بخش 2: تکامل عصبی توپولوژی‌های تقویت‌کننده | کنوانسیون های متضاد مسئله کنوانسیون‌های متضاد زمانی بروز می‌کند که بیش از یک راه برای نمایاندن اطلاعات در یک فنوتیپ وجود داشته باشد. به عنوان مثال، اگر یک ژنوم شامل نورون‌های A، B و C باشد و به صورت [A B C] نمایانده شود، اگر این ژنوم با یک ژنوم مشابه (از نظر عملکرد) اما به ترتیب [C B A] متقاطع شود، فرایند تلاقی فرزندان را تولید می‌کند که اطلاعاتی را از دست داده‌اند A B A] یا [C B C ، در واقع ۱/۳ از اطلاعات در این مثال گم شده است. NEAT این مشکل را با ردیابی تاریخچه ژن‌ها از طریق استفاده از یک شماره نوآوری جهانی که با اضافه شدن ژن‌های جدید افزایش می‌یابد، حل می‌کند. هنگام افزودن یک ژن جدید، شماره نوآوری جهانی افزایش می‌یابد و به آن ژن اختصاص داده می‌شود. برای یک نسل خاص، اگر یک جهش مشابه در بیش از یک ژنوم رخ دهد، هر دو شماره یکسانی دریافت می‌کنند؛ اما شماره جهش به طور نامحدود تغییر نخواهد کرد. این شماره‌های نوآوری به NEAT اجازه می‌دهند که ژن‌هایی را که می‌توانند با یکدیگر تلاقی کنند، مطابقت دهد. گسترش‌ها rtNEAT در سال 2003، کنت استنلی یک گسترش برای NEAT طراحی کرد که اجازه می‌دهد تکامل در زمان واقعی اتفاق بیفتد، به جای تکرار نسل‌ها که در بیشتر الگوریتم‌های ژنتیکی استفاده می‌شود. ایده اصلی این است که جمعیت تحت ارزیابی مداوم قرار گیرد با یک تایمر "عمر" بر روی هر فرد در جمعیت. وقتی تایمر یک شبکه منقضی می‌شود، معیار تناسب فعلی آن بررسی می‌شود تا ببیند آیا در نزدیکی پایین جمعیت قرار دارد یا خیر، و اگر چنین باشد، آن رد می‌شود و با یک شبکه جدید که از دو والد با تناسب بالا پرورش یافته است، جایگزین می‌شود. برای شبکه جدید یک تایمر تنظیم می‌شود و آن در جمعیت قرار می‌گیرد تا در ارزیابی‌های جاری شرکت کند. | ## بخش 3: تکامل عصبی توپولوژی‌های تقویت‌کننده | در مرحله اول بازی، بازیکنان فردی ربات‌ها را در یک "محیط آزمایش" مستقر می‌کنند و آن‌ها را برای یک دکترین تاکتیکی مطلوب آموزش می‌دهند. پس از آموزش مجموعه‌ای از ربات‌ها، مرحله دوم بازی به بازیکنان اجازه می‌دهد تا ربات‌های خود را در نبردی علیه ربات‌های آموزش‌دیده توسط بازیکن دیگر قرار دهند تا ببینند چگونه رژیم‌های آموزشی آن‌ها ربات‌هایشان را برای نبرد آماده کرده است. هرس مرحله‌ای یک گسترش از NEAT کنت استنلی که توسط کالین گرین توسعه یافته است، هرس دوره‌ای توپولوژی‌های شبکه‌های راه‌حل‌های کاندید را در طول فرایند تکامل اضافه می‌کند. این افزودنی به نگرانی که رشد خودکار نامحدود ساختارهای غیرضروری تولید می‌کند، پاسخ می‌دهد. odNEAT در خود ربات‌ها در حین اجرای کارها اجرا می‌شود تا به طور مداوم پارامترها و توپولوژی کنترل‌کننده‌های مبتنی بر شبکه‌های عصبی مصنوعی را بهینه‌سازی کند. به این ترتیب، ربات‌هایی که odNEAT را اجرا می‌کنند، پتانسیل این را دارند که به شرایط متغیر سازگار شوند و رفتارهای جدیدی را در حین انجام کارهایشان یاد بگیرند. هر ربات یک جمعیت داخلی از راه‌حل‌های کاندید را بهینه‌سازی می‌کند (تنوع درون جزیره‌ای) و دو یا چند ربات هنگامی که ملاقات می‌کنند، راه‌حل‌های کاندید را مبادله می‌کنند (مهاجرت بین جزیره‌ای). به این ترتیب، هر ربات به طور بالقوه خودکفا است و فرایند تکاملی از تبادل کنترل‌کننده‌ها بین چندین ربات برای سنتز سریع‌تر کنترل‌کننده‌های مؤثر بهره‌برداری می‌کند. نشریه IEEE در مورد هوش محاسباتی و هوش مصنوعی در بازی‌ها، جلد 4، شماره 1، صفحات 245-263، نیویورک: انتشارات IEEE، 2009. | ## جمع‌بندی | - سیلوا، فرناندو؛ اوربانو، پائولو؛ کورهیا، لوئیز؛ کریستنسن، آندرس لینه (2015-09-15).