ConstraintTolerance | Определяет выполнимость нелинейных ограничений. Также, max(sqrt(eps),ConstraintTolerance) определяет выполнимость в отношении линейных ограничений. Для структуры опций используйте TolCon. | Положительный скаляр | {1e-3} |
CreationFcn
| I * Функция, создающая исходную популяцию. Укажите в качестве имени встроенной функции создания или дескриптора функции. См. раздел Параметры заполнения. | {'gacreationuniform'} | {'gacreationlinearfeasible'}* | Пользовательская функция создания
|
CrossoverFcn
| I * Функция, которую алгоритм использует для создания перекрестных потомков. Укажите в качестве имени встроенной перекрестной функции или дескриптора функции. См. раздел Параметры кроссовера. | {'crossoverscattered'} для ga, {'crossoverintermediate'}* для gamultiobj | 'crossoverheuristic' | 'crossoversinglepoint' | 'crossovertwopoint' | 'crossoverarithmetic' | Пользовательская функция кроссовера
|
CrossoverFraction
| Доля населения у следующего поколения, не включая элитных детей, которую создает функция кроссовера. | Положительный скаляр | {0.8} |
Display
| Уровень отображения. | 'off' | 'iter' | 'diagnose' | {'final'}
|
DistanceMeasureFcn
| Функция, которая вычисляет измерение расстояния отдельных лиц. Укажите в качестве имени встроенной функции измерения расстояния или дескриптора функции. Значение применяется к переменной решения или пространству проектирования (генотип) или к пространству функций (фенотип). Дефолт 'distancecrowding' находится в функциональном пространстве (фенотип). Для gamultiobj только. См. раздел Параметры многообъективности. Для структуры опций используйте дескриптор функции, а не имя. | {'distancecrowding'} означает то же, что и {@distancecrowding,'phenotype'} | {@distancecrowding,'genotype'} | Пользовательская функция расстояния
|
EliteCount
| NM Положительное целое число, указывающее, сколько людей в текущем поколении гарантированно выживет до следующего поколения. Не используется в gamultiobj. | Положительное целое число | {ceil(0.05*PopulationSize)} | {0.05*(default PopulationSize)} для смешанно-целочисленных проблем |
FitnessLimit
| NM Если функция пригодности достигает значения FitnessLimitалгоритм останавливается. | Скаляр | {-Inf} |
FitnessScalingFcn
| Функция, которая масштабирует значения функции фитнеса. Укажите в качестве имени встроенной функции масштабирования или дескриптора функции. Параметр недоступен для gamultiobj. | {'fitscalingrank'} | 'fitscalingshiftlinear' | 'fitscalingprop' | 'fitscalingtop' | Пользовательская функция масштабирования фитнеса
|
FunctionTolerance | Алгоритм останавливается, если среднее относительное изменение значения функции наилучшего фитнеса превышает MaxStallGenerations поколения меньше или равны FunctionTolerance. Если StallTest является 'geometricWeighted', то алгоритм останавливается, если средневзвешенное относительное изменение меньше или равно FunctionTolerance. Для gamultiobjалгоритм останавливается, когда среднее геометрическое относительное изменение значения разброса по options.MaxStallGenerations поколения меньше, чем options.FunctionTolerance, и окончательный разброс меньше среднего разброса за прошлый options.MaxStallGenerations поколений. См. Алгоритм gamultiobj. Для структуры опций используйте TolFun. | Положительный скаляр | {1e-6} для ga, {1e-4} для gamultiobj |
HybridFcn
| I * Функция, которая продолжает оптимизацию послеga завершается. Укажите в качестве имени или дескриптора функции. Альтернативно, массив ячеек, задающий гибридную функцию и ее опции. См. раздел Гибридная функция ga. Для gamultiobj, единственной гибридной функцией является @fgoalattain. См. раздел Гибридная функция gamultiobj. См. раздел Когда использовать гибридную функцию. | Имя функции или дескриптор | 'fminsearch' | 'patternsearch' | 'fminunc' | 'fmincon' | {[]} или массив ячеек 1 на 2 | {@solver, hybridoptions}, где solver = fminsearch, patternsearch, fminunc, или fmincon
{[]} |
InitialPenalty | NM I * Начальное значение штрафного параметра | Положительный скаляр | {10} |
InitialPopulationMatrix
| Первоначальная популяция использовалась для формирования генетического алгоритма. Имеет до PopulationSize строки и N столбцы, где N - количество переменных. Можно пройти частичное заполнение, то есть с меньшим, чем PopulationSize строк. В этом случае генетический алгоритм использует CreationFcn для создания оставшихся членов населения. См. раздел Параметры заполнения Для структуры опций используйте InitialPopulation. | Матрица | {[]} |
InitialPopulationRange
| Матрица или вектор, указывающий диапазон особей в начальной популяции. Относится к gacreationuniform функция создания. ga сдвигает и масштабирует начальный диапазон по умолчанию в соответствии с конечными границами. Для структуры опций используйте PopInitRange. | Матрица или вектор | {[-10;10]} для неограниченных компонентов, {[-1e4+1;1e4+1]} для неограниченных компонентов проблем с целочисленными ограничениями, {[lb;ub]} для ограниченных компонентов с диапазоном по умолчанию, измененным в соответствии с односторонними границами. |
InitialScoresMatrix
| I * Начальные баллы, используемые для определения пригодности. Имеет до PopulationSize строки и имеет Nf столбцы, где Nf - количество фитнес-функций (1 для ga, больше, чем 1 для gamultiobj). Можно передать матрицу частичных баллов, то есть матрицу с меньшим количеством баллов, чем PopulationSize строк. В этом случае решатель заполняет баллы при оценке функций пригодности. Для структуры опций используйте InitialScores. | Вектор столбца для одного объектива | матрица для мультиобъектива | {[]} |
MaxGenerations
| Максимальное число итераций перед остановкой алгоритма. Для структуры опций используйте Generations. | Положительное целое число |{100*numberOfVariables} для ga, {200*numberOfVariables} для gamultiobj |
MaxStallGenerations
| Алгоритм останавливается, если среднее относительное изменение значения функции наилучшего фитнеса превышает MaxStallGenerations поколения меньше или равны FunctionTolerance. Если StallTest является 'geometricWeighted', то алгоритм останавливается, если средневзвешенное относительное изменение меньше или равно FunctionTolerance. Для gamultiobjалгоритм останавливается, когда среднее геометрическое относительное изменение значения разброса по options.MaxStallGenerations поколения меньше, чем options.FunctionTolerance, и окончательный разброс меньше среднего разброса за прошлый options.MaxStallGenerations поколений. См. Алгоритм gamultiobj. Для структуры опций используйте StallGenLimit. | Положительное целое число | {50} для ga, {100} для gamultiobj |
MaxStallTime
| NM Алгоритм останавливается, если нет улучшения целевой функции для MaxStallTime секунды, измеренные tic и toc. Для структуры опций используйте StallTimeLimit. | Положительный скаляр | {Inf} |
MaxTime
| Алгоритм останавливается после запуска после MaxTime секунды, измеренные tic и toc. Этот предел применяется после каждой итерации, поэтому ga может превышать предел, если итерация занимает значительное время. Для структуры опций используйте TimeLimit. | Положительный скаляр | {Inf} |
MigrationDirection | Направление миграции. См. раздел Параметры переноса | 'both' | {'forward'}
|
MigrationFraction | Скаляр от 0 до 1, указывающий долю индивидуумов в каждой субпопуляции, которая мигрирует в другую субпопуляцию. См. раздел Параметры переноса | Скаляр | {0.2} |
MigrationInterval | Положительное целое число, указывающее число поколений, которые происходят между миграциями индивидуумов между субпопуляциями. См. раздел Параметры переноса. | Положительное целое число | {20} |
MutationFcn
| I * Функция, которая производит детей мутации. Укажите в качестве имени встроенной мутационной функции или дескриптора функции. См. раздел Параметры мутации. | {'mutationgaussian'} для ga, {'mutationadaptfeasible'}* для gamultiobj | 'mutationuniform' | Пользовательская функция мутации
|
NonlinearConstraintAlgorithm
| Алгоритм нелинейных ограничений. См. раздел Алгоритмы решателя нелинейных ограничений. Опция, неизменяемая для gamultiobj. Для структуры опций используйте NonlinConAlgorithm. | {'auglag'} для ga, {'penalty'} для gamultiobj
|
OutputFcn
| Функции, которые ga вызовы в каждой итерации. Укажите в качестве дескриптора функции или массива ячеек дескрипторов функции. См. раздел Параметры функции вывода. Для структуры опций используйте OutputFcns. | Дескриптор функции или массив ячеек дескрипторов функции | {[]} |
ParetoFraction
| Скаляр от 0 до 1, указывающий долю отдельных лиц, которые должны оставаться на первом фронте Парето, в то время как решатель выбирает отдельных лиц с более высоких фронтов, для gamultiobj только. См. раздел Параметры многообъективности. | Скаляр | {0.35} |
PenaltyFactor | NM I * Параметр обновления штрафа. | Положительный скаляр | {100} |
PlotFcn
| Функция, отображающая данные, вычисленные алгоритмом. Укажите в качестве имени встроенной функции печати, дескриптора функции или массива ячеек встроенных имен или дескрипторов функций. См. раздел Параметры печати. Для структуры опций используйте PlotFcns. | ga или gamultiobj: {[]} | 'gaplotdistance' | 'gaplotgenealogy' | 'gaplotselection' | 'gaplotscorediversity' |'gaplotscores' | 'gaplotstopping' | 'gaplotmaxconstr' | Пользовательская функция печати
ga только: 'gaplotbestf' | 'gaplotbestindiv' | 'gaplotexpectation' | 'gaplotrange'
gamultiobj только: 'gaplotpareto' | 'gaplotparetodistance' | 'gaplotrankhist' | 'gaplotspread'
|
PlotInterval | Положительное целое число, указывающее число поколений между последовательными вызовами функций графика. | Положительное целое число | {1} |
PopulationSize
| Численность населения. | Положительное целое число | {50} когда numberOfVariables <= 5, {200} в противном случае | {min(max(10*nvars,40),100)} для смешанно-целочисленных проблем |
PopulationType
| Тип данных населения. Должно быть 'doubleVector' для проблем со смешанными целыми числами. | 'bitstring' | 'custom' | {'doubleVector'}
ga игнорирует все ограничения, когда PopulationType имеет значение 'bitString' или 'custom'. См. раздел Параметры заполнения.
|
SelectionFcn
| I * Функция, которая выбирает родителей детей кроссовера и мутации. Укажите в качестве имени встроенной функции выбора или дескриптора функции . gamultiobj использует только 'selectiontournament'.
| {'selectionstochunif'} для ga, {'selectiontournament'} для gamultiobj | 'selectionremainder' | 'selectionuniform' | 'selectionroulette' | Пользовательская функция выбора
|
StallTest | Тип теста остановки NM. | 'geometricWeighted' | {'averageChange'}
|
UseParallel | Вычислите функции пригодности и нелинейных ограничений параллельно. См. разделы Параметры векторизации и параллелизма (оценка пользовательских функций) и Использование параллельной обработки в инструментарии глобальной оптимизации. | true | {false}
|
UseVectorized
| Указывает, являются ли функции векторизованными. См. разделы Векторизация и параллельные опции (оценка пользовательских функций) и Векторизация фитнес-функции. Для структуры опций используйте Vectorized со значениями 'on' или 'off'. | true | {false}
|