PDA

View Full Version : سوال: الگوریتم ژنتیک، تکامل، نحوه انتخاب بهترین ها



makhdoosh
شنبه 09 مرداد 1389, 11:41 صبح
یه مقاله ایی در مورد الگوریتم ژنتیک میخوندم. یه جاییش درک کردنش برام سخت بود. در واقع نمی تونستم اون مرحله از کار الگوریتم رو قبول کنم.
اون هم مرحله Fitness هست. در اینکه بعد از اینکه از یه سری والدین یه نسل جدید تولید میشه و حالا قراره ما بهترین ها رو انتخاب کنیم. در اینجا ما باید کیفیت رو تشخیص بدیم. حال اینکه من فکر نمیکنم کامپیوتر ها اینقد پیشرفته شده باشند که بتونند کیفیت رو تشخیص بدن. مثلا فرض کنید معیار ما برای تکامل زیبایی باشه. حالا ما چطور باید از بین نسل بوجود اومده تو برنامه نویسی زیبایی رو تشخیص بدیم.

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

BOB
شنبه 09 مرداد 1389, 14:15 عصر
سلام

در واقع مهمترین بخش یا قسمت کلیدی الگوریتم ژنتیک، همان طراحی تابع ارزیابی (fitness) مناسب است.

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

در مورد معیار "زیبایی" هم که گفتید، به ژنتیک مربوط نمیشود، چون زیبایی یک معیار تشخیص انسانی است و قابل محاسبه نیست. فقط معیارهای قابل محاسبه (با منطق ریاضی) مورد استفاده قرار میگیرند.

سعیدسعید
جمعه 22 مرداد 1389, 23:07 عصر
سلام
اگر در همون مقاله یادتون باشه قبل از محاسبه مقدار تابع fitness اول باید کروموزم ها رو ایجاد کنید. حالا اگر معیار شما زیبایی هست پس باید جمعیت اولیه شما یعنی کروموزم ها هم زیبایی رو نشون بدهند تا بتونید براشون fitness رو محاسبه کنید.
حالا سوال من این است: شما چطوری می خواهید زیبایی رو کد کنید؟ تا براش fitness رو هم محاسبه کنید

پس برخی از مسائل با ژنتیک قابل حل نیستند!!!!!!!!!!!!!!!!!!!