Нелинейные ограничительные алгоритмы решателя

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

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

minxf(x)

таким образом, что

ci(x)0,i=1mceqi(x)=0,i=m+1mtAxbAeqx=beqlbxub,

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

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

Подформулировка задачи задана как

Θ(x,λ,s,ρ)=f(x)i=1mλisilog(sici(x))+i=m+1mtλiceqi(x)+ρ2i=m+1mtceqi(x)2,

где

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

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

  • ρ является положительным параметром штрафа.

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

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

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

Выберите Увеличенный лагранжевый алгоритм путем установки NonlinearConstraintAlgorithm опция к 'auglag' использование optimoptions.

Для полного описания алгоритма смотрите следующие ссылки:

Ссылки

[1] Коннектикут, A. R. Н. Ай. М. Гулд и Ph Л. Тойнт. “Глобально Конвергентный Увеличенный лагранжевый Алгоритм для Оптимизации с Общими ограничениями и Простыми Границами”, SIAM Journal согласно Числовому Анализу, Объем 28, Номер 2, страницы 545-572, 1991.

[2] Коннектикут, A. R. Н. Ай. М. Гулд и Ph Л. Тойнт. “Глобально Конвергентный Увеличенный лагранжевый Алгоритм Барьера для Оптимизации с Общими Ограничениями неравенства и Простыми Границами”, Математика Расчета, Объем 66, Номер 217, страницы 261-288, 1997.

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

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

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

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

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

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

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

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

  3. ga доходы, согласно Как работы Генетического алгоритма, с помощью функции штрафа в качестве меры по фитнесу.

Ссылки

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

Похожие темы