exponenta event banner

Функции печати решателя оптимизации

Что такое функция графика?

PlotFcns области options структура определяет одну или несколько функций, которые функция оптимизации вызывает в каждой итерации для построения графика различных показателей прогресса. Передача дескриптора функции или массива ячеек дескрипторов функции. Структура функции графика совпадает со структурой функции вывода. Дополнительные сведения об этой структуре см. в разделе Функции вывода решателя оптимизации.

Вы можете использовать PlotFcns со следующими функциями оптимизации MATLAB ®:

Предопределенные функции графика для этих функций оптимизации:

  • @optimplotx выводит на график текущую точку

  • @optimplotfval строит график значения функции

  • @optimplotfunccount выводит на график количество функций (недоступно для fzero)

Для просмотра или изменения предопределенной функции печати откройте файл функции в редакторе MATLAB. Например, чтобы просмотреть файл функций для печати текущей точки, введите:

edit optimplotx.m

Пример: Функция печати

Просмотр хода минимизации с помощью fminsearch с функцией графика @optimplotfval:

  1. Запишите файл для целевой функции. Для этого примера используйте:

    function f = onehump(x)
    
    r = x(1)^2 + x(2)^2;
    s = exp(-r);
    f = x(1)*s+r/20;
  2. Задайте опции для использования функции печати:

    options = optimset('PlotFcns',@optimplotfval);
  3. Звонить fminsearch начиная с [2,1]:

    [x ffinal] = fminsearch(@onehump,[2,1],options)
  4. MATLAB возвращает следующее:

    x =
       -0.6691    0.0000
    
    ffinal =
       -0.4052

    As the iterations proceed, the function value first decreases, then becomes constant.

Связанные темы