exponenta event banner

Алгоритмы решателя нелинейных ограничений

Дополненный лагранжианский генетический алгоритм

По умолчанию генетический алгоритм использует дополненный лагранжевый генетический алгоритм (ALGA) для решения задач нелинейных ограничений без целочисленных ограничений. Задача оптимизации, решаемая алгоритмом ALGA,

minxf (x)

такой, что

ci (x) ≤0, i = 1... mceqi (x) = 0, i = m + 1... mtA⋅x≤bAeq⋅x=beqlb≤x≤ub,

где c (x) - нелинейные ограничения неравенства, ceq (x) - ограничения равенства, m - число нелинейных ограничений неравенства, mt - общее число нелинейных ограничений.

Дополненный лагранжевый генетический алгоритм (ALGA) пытается решить проблему нелинейной оптимизации с нелинейными ограничениями, линейными ограничениями и границами. В этом подходе границы и линейные ограничения обрабатываются отдельно от нелинейных ограничений. Подпроблема формулируется путем объединения функции пригодности и нелинейной функции ограничения с использованием лагранжевых и штрафных параметров. Последовательность таких задач оптимизации приблизительно минимизируется с использованием генетического алгоритма, так что выполняются линейные ограничения и границы.

Формулировка подпроблемы определяется как

Λ (x, λ, s, start) = f (x) −∑i=1mλisilog (si ci (x)) +∑i=m+1mtλiceqi (x) +ρ2∑i=m+1mtceqi (x) 2,

где

  • Компоненты λ i вектора λ неотрицательны и известны как оценки множителя Лагранжа

  • Элементы si вектора s являются неотрицательными сдвигами

  • start- положительный штрафной параметр.

Алгоритм начинается с использования начального значения штрафного параметра (InitialPenalty).

Генетический алгоритм минимизирует последовательность подпроблем, каждая из которых является аппроксимацией исходной задачи. Каждая подпроблема имеет фиксированное значение λ, s и start. Когда подпроблема минимизируется до требуемой точности и удовлетворяет условиям осуществимости, оценки Лагранжа обновляются. В противном случае штрафной параметр увеличивается на штрафной коэффициент (PenaltyFactor). Это приводит к возникновению новой проблемы формулирования и минимизации подпроблем. Эти шаги повторяются до тех пор, пока не будут выполнены критерии остановки.

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

Выберите алгоритм Augmented Lagrangian, установив NonlinearConstraintAlgorithm опция для 'auglag' использование optimoptions.

Полное описание алгоритма см. в следующих ссылках:

Ссылки

[1] Конн, А. Р., Н. И. М. Гулд и Ф. Л. Тоунт. «Глобально конвергентный дополненный лагранжевый алгоритм оптимизации с общими ограничениями и простыми границами», SIAM Journal on Numerical Analysis, Volume 28, Number 2, pages 545-572, 1991.

[2] Конн, А. Р., Н. И. М. Гулд и Ф. Л. Тоунт. «Глобально конвергентный дополненный лагранжевый барьерный алгоритм для оптимизации с общими ограничениями неравенства и простыми границами», Математика вычислений, том 66, число 217, стр. 261-288, 1997.

Алгоритм штрафов

Алгоритм штрафов аналогичен алгоритму Integer ga. В своей оценке пригодности человека, ga вычисляет значение штрафа следующим образом:

  • Если индивидуум осуществим, функция штрафа является функцией фитнеса.

  • Если человек неосуществим, функция штрафа является функцией максимальной пригодности среди возможных членов населения плюс сумма нарушений ограничения (неосуществимого) человека.

Для получения подробной информации о функции штрафа см. Deb [1].

Выберите алгоритм штрафа, установив NonlinearConstraintAlgorithm опция для 'penalty' использование optimoptions. Когда вы делаете этот выбор, ga решает задачу ограниченной оптимизации следующим образом.

  1. ga по умолчанию @gacreationnonlinearfeasible функция создания. Эта функция пытается создать выполнимую совокупность по отношению ко всем ограничениям. ga создает достаточное количество пользователей, чтобы соответствовать PopulationSize вариант. Дополнительные сведения см. в разделе Алгоритм штрафов.

  2. ga переопределяет функцию выбора и использует @selectiontournament с двумя лицами на турнир.

  3. ga работает в соответствии с How the Genetic Algorithm, используя функцию штрафа в качестве меры пригодности.

Ссылки

[1] Деб, Калянмой. Эффективный метод обработки ограничений для генетических алгоритмов. Компьютерные методы в прикладной механике и технике, 186 (2-4), стр. 311-338, 2000 .

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