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

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

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

سوال ژنتیک
 
سلام دوستان عزیز یه تابع هست میخوام ماکزیممش کنم با الگوریتم ژنتیک.اگه کسی بتونه کدشو برام بنویسه کلی لطف کرده بهم.
تابعش اینه:
y=102.44(a^0.56)(b^-0.38)c^0.09 و هر کدوم از متغییرا بازه ای دارند که به صورت زیره:
a=1-2 ، b=24-32 ، c=7-20
ممنون

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

بیشینه کردن تابع با الگوریتم ژنتیک
 
سلام
اصولا از این که جواب رو حاضر و آماده به کسی بدم نفرت دارم. ولی گفتم شاید این موضوع بعدا به دردم بخوره بره همین یه سرچ کوچولو زدم.( راجع به این سوال شما هیچ اطلاعی نداشتم)
چند نکته:
۱- چرا نگفتی کدش رو با چه زبونی می خوایی؟
۲- منظورت از این که a =1-2 یعنی چی؟ یعنی این بازه اعداد حقیقی رو شامل می شه یا فقط اعداد صحیح؟
چون اگه اعداد صحیح باشه کلا ۲۵۲ حالت هست و به راحتی می شه جواب رو بدست آورد.

این هم کد MATLAB:


function GaMaximization

clc; clear;

nvars = 3; % Number of variables
LB = [1 24 7]; % Lower bound
UB = [2 32 20]; % Upper bound

x = ga(@FitnessFunction, nvars, [], [], [], [], LB, UB);

fprintf( 'a = %f, b = %f, c = %f .\n', x(1), x(2), x(3) );

end

function y = FitnessFunction(x)
y = 102.44 * (x(1)^0.56) * (x(2)^-0.38) * (x(3)^0.09);
end


Optimization terminated: average change in the fitness value less than options.TolFun.
a = 1.000000, b = 30.883943, c = 7.000000 .
]


زمان محلي شما با تنظيم 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.