крутой спуск, Matlab - PullRequest
       3

крутой спуск, Matlab

0 голосов
/ 20 декабря 2011
f(x) = 4*(1-x(1)).^2 .* exp(-x(1).^2 - (x(2)+1).^2) - ...
    10*(x(1)/3 - x(1).^3 - x(2).^5 ) .* exp(-x(1).^2 - x(2).^2) - ...
    (1/2) .* exp(-(x(1)+1).^2 - x(2).^2)

where -5 <= x(1) <= 5 , -3 <= x(2) <= 3 

Я хочу определить оптимальный x*, который максимизирует f(x), используя крутой спуск .Я нашел http://www4.ncsu.edu/~ctk/darts/steep.m, но я не могу его использовать.Я не понимаю эту часть комментария:

%  f = objective function,
%            the calling sequence for f should be
%            [fout,gout]=f(x) where fout=f(x) is a scalar
%              and gout = grad f(x) is a COLUMN vector
  1. Как использовать эту функцию?
  2. Как можно изменить начальные условия?
  3. Как можно изменить шагразмеры?

1 Ответ

1 голос
/ 21 декабря 2011
  1. Вам нужно передать свою функцию, используя «дескриптор функции». Ищите это в помощи.
  2. Начальными условиями являются входные данные x0.
  3. Размер шага выбирается автоматически.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...