Пожалуйста, изучите documentation более тщательно. Я смею предположить, что вы добавили некоторые значения в фигурные скобки, потому что они были в фигурных скобках в документации. Однако, Matlab явно указано, что:
значения в {} обозначает значение по умолчанию
Итак, в первую очередь вам нужно, чтобы удалить их. Затем вам нужно удалить tournamentSize
, 0.1
и 0.8
в аргументы, так как значение после 'SelectionFcn'
, 'MutationFcn'
и 'CrossoverFcn'
должно быть просто дескриптором функции. Таким образом, вы в конечном итоге с:
options = gaoptimset('CreationFcn', @PopFunction,...
'PopulationSize',50,...
'Generations',100,...
'PopulationType', 'bitstring',...
'SelectionFcn',@selectiontournament,...
'MutationFcn',@mutationuniform,...
'CrossoverFcn', @crossoverarithmetic,...
'EliteCount',2,...
'StallGenLimit',100,...
'PlotFcns',@gaplotbestf,...
'Display', 'iter');
Надежда, что помогает
Видимо, вам нужно использовать аргументы другого типа, чем 'cell'. Изучение этой ссылки: http://www.mathworks.com/help/gads/gaoptimset.html может вам помочь. Чтобы получить более сложный ответ, вам нужно предоставить дополнительную информацию. Изучите эту ссылку, чтобы узнать, как задать хороший вопрос на SO: http://stackoverflow.com/help/how-to-ask – brainkz
@brainkz, я редактировал вопрос, пожалуйста, взгляните на него! – Poppy
Прежде чем использовать их, ознакомьтесь с описаниями тегов. Удалены не связанные теги. – Daniel