Решение многокритериальной функции с использованием генетического алгоритма с набором инструментов оптимизации в MATLAB

Я знаю, что по этому поводу есть несколько тем, но ни одна из них не отвечает на мой вопрос. У меня следующий вопрос. Если я использую эту многоцелевую функцию:

function y = GAMultiobjectiveFunction(x)
q=x(1);
d=x(2);
y(1) = -(rev(q) - cost(q, d));  %by minimizing we will make -(profit) to be minimum,
                                %meaning that +(profit) will be the maximum
y(2) = 3*(power(q, 1.4))*((log(power(q,3)*d))/(d+10))+(rand*30);
end

в панели инструментов оптимизации, и я хочу решить ее с помощью метода генетического алгоритма, должен ли я использовать параметр "gamultiobj"? Мне нужны параметры, которые минимизируют оба уравнения. Как мне узнать, что он будет искать параметры, позволяющие достичь минимума в этих уравнениях? Я не могу это нигде указать.

Большое спасибо, ян


person chopeds    schedule 03.04.2015    source источник


Ответы (1)


Да, если вы хотите минимизировать оба, вам понадобится функция gamultobj.

http://www.mathworks.com/help/gads/gamultiobj.html

h = @(X)GAMultiobjectiveFunction(X);
[x,f,exitflag] = gamultiobj(h,2,[],[],[],[],... lb,ub,options);
person amanita kiki    schedule 20.11.2015