Artificial Intelligence - هوش مصنوعی

Artificial Intelligence - هوش مصنوعی (http://artificial.ir/intelligence/)
-   حل مسائل معروف هوش مصنوعي (http://artificial.ir/intelligence/forum102.html)
-   -   حل معادله با استفاده از الگوریتم ژنتیک (http://artificial.ir/intelligence/thread10106.html)

nazi682 ۰۹-۴-۱۳۹۰ ۰۲:۴۷ بعد از ظهر

حل معادله با استفاده از الگوریتم ژنتیک
 
من نیاز به کمک دارم این یک سوالی هست که نمی دونم باید چه طوری حل بشه
معادله زیر را با استفاد ه از الگوریتم ژنتیم حل کنید در بازه 0و31

x^3 - 17*x^2 - 58*x - 40 = 0
میشه برام توضیح بدین ممنون:18::18:

davodhosini ۰۹-۱۴-۱۳۹۱ ۰۲:۵۲ بعد از ظهر

تو رو خدا اگه کسی میتونه ای معادله رو حل کنه؟؟؟؟؟؟؟؟؟؟؟؟/خواهـــــــــــــــــــــ ــــــش

mahdiii ۰۹-۱۴-۱۳۹۱ ۰۵:۵۴ بعد از ظهر

این معادله را می توان با روشهایی مانند نیوتن و روشهای عددی دیگر حل کرد. ریشه های آن 1-،2- و 20 است.
اگر بخواهید توسط ژنتیک حل کنید، کافیست یک کروموزوم برای x و با تعدادی مثلا 5 ژن تعریف کنید. چون x شما بین 0 تا 31 است بنابراین به 5 بیت نیاز دارید. ابتدا یک تعداد جمعیت اولیه مثلا 50 کروموزوم که هر کدام دارای 5 بیت هستند، ایجاد می کنید با مقادیر تصادفی صفرو یک. و سپس با توجه به مقدار این کروموزومها و گذاشتن آن در تابع مقدار آن را به دست می آورید. مثلا فرض کنید که یک کروموزوم شما به شکل 10001 باشد. این مقدار برابر 17 است آن را در معادله می گذارید می بینید مقدار آن 1026- می شود. بر اساس این مقادیر تابع ارزیابی و درصد انتخاب کروموزومها مشخص می شوند (selection)تا در گامهای بعدی کروموزومهای بهتر با درصد بیشتری بتوانند انتخاب شوند. عمل جهش و تقاطع نیز با احتمالاتی بر روی این کروموزومها انجام می شود. و در نهایت جمعیت جدید ایجاد می شود و این کار تا رسیدن به جواب ادامه پیدا می کند. مشاهده می کنید که اگر یک کروموزوم دارای مقدار 10100 باشد یعنی 20 مقدار معادله صفر خواهد بود که مدنظر ماست بنابراین باید تابع ارزیابی طوری انتخاب شود که اگر معادله دارای مقدار صفر شد بیشترین و در مکانهای دیگر مقدار کمی بگیرد. تا در صورت مواجه شدن با این کروموزوم(20) بیشترین احتمال برای انتخاب آن را داشته باشد. همچنین این روش تنها مقادیر صحیح بین 0 تا 31 را درنظر گرفته است. برای دقت بیشتر می توان با اضافه کردن بیتهای بیشتر، مقادیر اعشاری را نیز درنظر گرفت که در این مساله با توجه به اینکه جوابها خود صحیح هستند لازم نمی باشد.

mahdiii ۰۹-۱۴-۱۳۹۱ ۰۶:۰۱ بعد از ظهر

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

mansor50 ۰۹-۱۵-۱۳۹۱ ۰۳:۲۶ بعد از ظهر

نقل قول:

نوشته اصلي بوسيله davodhosini (پست 27043)
تو رو خدا اگه کسی میتونه ای معادله رو حل کنه؟؟؟؟؟؟؟؟؟؟؟؟/خواهـــــــــــــــــــــ ــــــش

سلام - فقط کافیه تابع رو با تولباکس ژنتیک در متلب بدی - تابع رو در یک تابع بنویس و اون تابع رو در تولباکس در رنج 0 تا 31 اجرا بگیر . بازم سئوال داشتی بهم میل بزن mansor.small@gmail.com

davodhosini ۰۹-۱۸-۱۳۹۱ ۱۰:۴۶ بعد از ظهر

نقل قول:

نوشته اصلي بوسيله mansor50 (پست 27057)
سلام - فقط کافیه تابع رو با تولباکس ژنتیک در متلب بدی - تابع رو در یک تابع بنویس و اون تابع رو در تولباکس در رنج 0 تا 31 اجرا بگیر . بازم سئوال داشتی بهم میل بزن mansor.small@gmail.com

مرسی واقعا لطف کردین

tarmin ۰۳-۱۵-۱۳۹۶ ۱۰:۲۵ قبل از ظهر

سلام
میشه حل معادله درجه دو با ژنتیک یکی برام کداشو بفرسته
خیلی واجبه عجله دارم برا امتحانمه


زمان محلي شما با تنظيم GMT +3.5 هم اکنون ۰۷:۲۳ قبل از ظهر ميباشد.

Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.