Artificial Intelligence - هوش مصنوعی  
انجمن را در گوگل محبوب کنيد :

بازگشت   Artificial Intelligence - هوش مصنوعی > محاسبات نرم > الگوریتم ژنتیک(Genetic Algorithm)


 
تبليغات سايت
Iranian Association for the Advancement of Artificial Intelligence
ارسال تاپيک جديد  پاسخ
 
LinkBack ابزارهاي تاپيک نحوه نمايش
قديمي ۰۹-۲۴-۱۳۹۰, ۱۲:۴۵ بعد از ظهر   #1 (لینک دائم)
عضو جدید
 
آواتار jojepanbeyi
 
تاريخ عضويت: آذر ۱۳۹۰
پست ها: 4
تشكرها: 18
0 تشكر در 0 پست
پيش فرض راهنمایی در مورد کاربرد ژنتیک در معادلات خطی

یک مجموعه از 1000رکورد به شکل زیر داریم که در هر سطر آن ،مقدار سه پارامترAو BوC ومقدار یک تابع بر حسب این سه متغیر آمده است.میدانیم که در هر سطر ، مقدار تابع یک ترکیب خطی از سه پارامتر گفته شده است :
result=A*X+B*Y+C*Z
باتوجه به اینکه xوyوz برای تمام سطرها یکسان هستند میخواهیم با یک الگوریتم ژنتیک ،مقدارxوzوy را به شکلی پیدا کنیم که میزان خطای تقریب کمترین شود.ساختار ژنوم ، عملگرهای لازم ، توابع لازم و هر چیز دیگری که برای توضیح روند ضروری میدانید را بنویسید.
A B C RESULT
6 3 7 56
4 9 2 45
11 5 6 67
jojepanbeyi آفلاين است   پاسخ با نقل قول

  #ADS
نشان دهنده تبلیغات
تبليغگر
 
 
 
تاريخ عضويت: -
محل سكونت: -
سن: 2010
پست ها: -
 

نشان دهنده تبلیغات is online  
قديمي ۰۹-۲۴-۱۳۹۰, ۱۰:۲۸ بعد از ظهر   #2 (لینک دائم)
Active users
 
آواتار mahdiii
 
تاريخ عضويت: اسفند ۱۳۸۸
محل سكونت: مشهد
پست ها: 355
تشكرها: 27
167 تشكر در 131 پست
My Mood: Khoshhal
پيش فرض

سلام. اونطوری که من فهمیدم هدف یافتن مقادیر x,y,z هست به طوریکه کمترین خطا در تقریب وجود داشته باشد. باید توجه داشته باشید که تا آنجایی که من می دانم باید حدود x,y,z را هم داشته باشید به اضافه دقت هر کدام. بنابراین با دانستن بازه اعداد مثلا از a تا b و با دقت c (مثلا 0.01). اولین کاری که باید بکنی این است که بازه اعدادو به 0 تا b-a بیاری و پس از آن این اعدادو بر c تقسیم کنی. مثلا فرض کن اعدادت(x,y,z) بین 5 تا 15 باشند. اول این اعدادو به بازه 0 تا 10 میاری و اگه دقتت 0.01 باشه، این اعداد به 0 تا 1000 تبدیل میشن. برای نمایش این اعداد به 10 بیت نیاز داری. بنابراین با این 10 بیت که برای هر کدام از x,y,z نیاز داری در کل میشه 30 بیت. عملیات جهش و تقاطع رو میزنی و برای ارزیابی برای عمل انتخاب(تعیین درصدها برای انتخاب هر جمعیت)، می تونین با مشخص بودن مقادیر x,y,z که درمرحله اول به طور تصادفی تعیین میشه، آنها را در معادلات گفته شده قرار دهید و اختلاف آن را با مقدار result به دست بیاری. این کارو برای تک تک معادلاتت انجام بده(1000 تا) و مقادیر اختلاف رو با هم جمع کن. تابع برازشت میشه مجموع این اختلافها که اختلافها رو می تونی قبل از جمع زدن به توان 2 برسونی یا قدرمطلقشو بگیری تا علامتش حذف بشه و بعد با هم جمع بزنی. ما مایلیم این مقدار کمینه شود پس برای بیشینه کردن تابع برازش می تونی یا این مقدار معکوس کنی یا منهای اونو درنظر بگیری و این مقدار به عنوان تابع برازش بیشینه کنی. بقیش مثل الگوریتم ژنتیک هستش. فقط من نمی دونم چرا می خواین این مساله رو با ژنتیک حل کنین. ژنتیک در مواردی کاربرد دارد که مساله ما، مساله پیچیده ای باشد یعنی نتوان به راحتی بهینه سراسری اونو محاسبه کرد که در این مساله به راحتی قابل محاسبه است زیرا تابع خطای ما که می خواهیم کمینه شود، یک تابع محدب بوده و با روش های رگرسیون مانند LMS به راحتی حل می شود. اگه مشکلی بود در خدمتم.
mahdiii آفلاين است   پاسخ با نقل قول
از mahdiii تشكر كرده است:
jojepanbeyi (۱۰-۱-۱۳۹۰)
قديمي ۱۰-۱-۱۳۹۰, ۰۹:۵۱ قبل از ظهر   #3 (لینک دائم)
عضو جدید
 
آواتار jojepanbeyi
 
تاريخ عضويت: آذر ۱۳۹۰
پست ها: 4
تشكرها: 18
0 تشكر در 0 پست
پيش فرض

مهندس اگر یکی با عدد واسم بگی ممنون میشم
jojepanbeyi آفلاين است   پاسخ با نقل قول
پاسخ



كاربران در حال ديدن تاپيک: 1 (0 عضو و 1 مهمان)
 

قوانين ارسال
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is فعال
شکلکها فعال است
كد [IMG] فعال است
كدهاي HTML غير فعال است
Trackbacks are فعال
Pingbacks are فعال
Refbacks are فعال




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


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

Teach and Learn at Hexib | Sponsored by www.Syavash.com and Product In Review

استفاده از مطالب انجمن در سایر سایت ها، تنها با ذکر انجمن هوش مصنوعي به عنوان منبع و لینک مستقیم به خود مطلب مجاز است

Inactive Reminders By Icora Web Design