Функции plot

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

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

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

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

  • @optimplotx строит график текущей точки

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

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

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

edit optimplotx.m

Пример: Функция plot

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

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

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

    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

Похожие темы

Была ли эта тема полезной?