کتاب رایانش تکاملی و روشهای هوش جمعی در بهینه سازی و حل مسئله
پیشگفتار کتاب
ا
بسیاری از مسائل دنیای واقعی را میتوان به طور طبیعی به عنوان یک مسئله بهینهسازی مطرح کرد. بهینهسازی یعنی یافتن راهی برای انجام دادن امری به بهترین وجه ممکن. برای حل اینگونه مسائل الگوریتمهای گوناگونی مطرح شده و هرروزه محققان بسیاری، برای بهبود عملکرد این الگوریتمها و یا نوآوری در این حوزه تلاش میکنند. یکی از روشهای حل اینگونه مسائل که بیشتر مورد استفاده قرار گرفته و نتایج خوبی را نیز به دنبال داشته، استفاده از رایانش تکاملی و یا همان الگوریتمهای تکاملی است. رایانش تکاملی مجموعه روشهایی هستند که یکسری ویژگیهای مشترک دارند: اولا با الهام از طبیعت ایجاد شدهاند. برخی از آنها از نظرییات تکاملی حاکم بر طبیعت الهام گرفته شدهاند و برخی دیگر از تعامل جمعی در یک اجتماع برای بقاء، سرچشمه گرفته اند. دوما این روشها همگی مبتنی بر جمعیت هستند. یعنی در هر تکرار به جای یک جواب، انبوهی از جوابها را مورد استفاده قرار میدهند و در هر تکرار، انبوهی از جوابها را پردازش میکنند. سوما این روشها مبتنی بر تولید جمعیت اولیه تصادفی هستند و تغییرات در این جمعیت بر اساس فاکتورهای احتمالی صورت میگیرد. رایانش تکاملی را میتوان در دو دسته بررسی کرد. اولی مجموعه روشهایی است که مبتنی بر فرایند تکامل در سطح ژن است و دومی مجموعه روشهایی است که مبتنی بر هوش جمعی در یک اجتماع از موجودات است. در دسته اول محبوب ترین روش، الگوریتمهای ژنتیک است که الهامی از فرایند تولید نسل و تکامل در یک اجتماع میباشد. دیگر روشها در این دسته، از آنجا که شباهتهای مفهومی بسیاری با الگوریتم ژنتیک دارند، را میتوان به نوعی زیر مجموعه آن دانست. در دسته دوم روشهای بهینهسازی کلونی مورچگان(ACO) و بهینهسازی اجتماع پرندگان (PSO) محبوب ترین هستند؛ روشهایی که با الهام از رفتار هوشمند و تعامل در اجتماع مورچگان و پرندگان جهت ادامه بقاء ایجاد شدهاند. هرچند تعداد کمی از متون علمی وجود دارد که مشخصا روشهای هوش جمعی را زیر مجموعهای از رایانش تکاملی فرض کرده اند اما آنچه کاملا بدیهی است همسایگی بسیار نزدیک رایانش تکاملی با روشهای مبتنی بر هوش جمعی است.
هدف کتاب پیش رو، معرفی و بررسی رایانش تکاملی در بهینهسازی و حل مسئله است. کتاب، مفاهیم پایه ای را از سطح مقدماتی تا بسیار پیشرفته در بر میگیرد و به گونه ای طرح ریزی شده است که بتواند برای خوانندگان، از مبتدی تا پیشرفته مفید واقع شود. همچنین از آنجایی که بسیاری از مسائل بهینهسازی در علوم اقتصادی، سیاسی، برنامه ریزی شهری، مهندسی و دیگر شاخه های مرتبط را میتوان با کمک رایانش تکاملی حل نمود. این کتاب میتواند مرجع خوبی برای دانشگاهیان در رشتههای مختلف باشد. مثالهای متنوعی از این حوزه ها در کتاب ارائه شده است تا بتواند برای خوانندگان از رشتههای مختلف مفید واقع شود. ساختار کتاب پیش رو به شرح ذیل است:
فصل 1 مقدمه ای را از مفهوم بهینهسازی، انواع روشهای بهینهسازی، چگونگی فرموله کردن ریاضی آنها و مفاهیم مرتبط با آنها را ارائه میدهد. از آنجایی که منشا ظهور الگوریتمهای تکامی، بهینهسازی بوده است و از آنجایی که بسیاری از مسائل را میتوان به صورت یک مسئله بهینهسازی فرموله کرد، این فصل میتواند برای خوانندگان زمینه سازی خوبی برای فصلهای بعدی داشته باشد.
فصل 2 در برگیرنده ساده ترین حالت از پایه ترین الگوریتم تکاملی است. یعنی الگوریتم ژنتیک باینری که درآن نمایش ژنی باینری بوده و عملگرها بر اساس مقادیر باینری ارائه میشود. ژنتیک باینری به معنی حل یک مسئله باینری نیست، بلکه بسیاری از مسائل دنیای واقعی را میتوان با آن حل کرد. این فصل مطالب آموزشی مهمی را در بر گرفته است به گونه ای که یادگیری الگوریتمهای ژنتیکی پیوسته که در فصل 3 آورده شده و مباحث تکمیلی آن و همچنین یادگیری دیگر رایانش تکاملی شامل ممتیک را که در فصل 4 آورده شده است را ساده خواهد کرد.
فصل 5 شامل مثالهای متنوعی از رایانش تکاملی است. فصل 6 روشهای هوش جمعی را بررسی میکند وفصل7 به روشهای ترکیبی و حسابگری نرم اشاره ای خواهد داشت. امید است کتاب پیش رو بتواند برای جامعه علمی کشور مفید واقع شود.