Как закодировать выходную функцию для генетического алгоритма в наборе инструментов глобальной оптимизации Matlab

У меня возникли проблемы с написанием функции вывода для генетического алгоритма в наборе инструментов глобальной оптимизации Matlab.

Я хочу создать функцию, которая хранит все state.Population (каждого человека) каждого поколения.

Вот что я знаю:

Выходные функции — это функции, которые генетический алгоритм вызывает при каждом поколении.

Выходная функция имеет следующий синтаксис вызова.

[состояние, параметры, измененный параметр] = myfun (параметры, состояние, флаг, интервал)

Из http://www.mathworks.com/help/releases/R2010b/toolbox/gads/f6174dfi10.html#f17837

Где state содержит полезные данные текущего поколения.

Вот что я пробовал:

Создайте функцию с выходом, отличным от [state,options,optchanged]. Результатом является глобальная матрица, в которой хранится каждое состояние. Население


person user1846407    schedule 28.11.2012    source источник


Ответы (1)


Рекомендуемый способ сделать это — использовать вложенную функцию вывода, как в примере здесь: http://www.mathworks.com/help/matlab/math/output-functions.html#bsgpq6q-31

Обратите внимание, что в этом примере используется синтаксис вызова функции вывода fminsearch, поэтому вам потребуется обновить его для функции вывода ga.

person sdeland    schedule 04.12.2012