
- •Основания теории оптимизации (теоремы о необходимости и достаточности существования экстремума функции многих переменных).
- •5.2.Достаточные условия экстремума.
- •Матрица Гессе и вектор-градиент функции многих переменных. Привести пример определения (функцию многих переменных задать самостоятельно).
- •Методы одномерного поиска экстремума. Метод золотого сечения.
- •Методы одномерного поиска экстремума. Метод поиска с использованием чисел Фибоначчи.
- •Методы одномерного поиска экстремума. Метод квадратической интерполяции.
- •Графический метод решения задач квадратичного программирования.
- •Метод множителей Лагранжа.
- •Алгоритм обобщенного метода множителей Лагранжа.
- •Градиентные методы решения задач нелинейного программирования.
- •Метод тяжелого шарика.
- •Эвристические методы поиска экстремума. Метод Монте-Карло.
- •Гомеостат Эшби и его связь со случайным поиском.
- •Методы случайного поиска.
- •Алгоритм случайного спуска с линейной тактикой
- •Алгоритмы эволюционной оптимизации. Муравьинный алгоритм.
- •Алгоритмы эволюционной оптимизации. Роевой алгоритм.
- •В чем состоит смысл когнитивной составляющей алгоритма поиска с роевым интеллектом?
- •Виды игр (безкоалиционные, кооперативные, дифференциальные и другие).
- •Игра двух участников с нулевой суммой. Решение игры двух участников с нулевой суммой в смешанных стратегиях.
- •Графо-аналитический метод решения матричной игры 2 х n и m х 2.
- •Решение игр вида 2хn и mх2
Методы одномерного поиска экстремума. Метод квадратической интерполяции.
Этот метод основан на замене f(x) в промежутке x0+-h квадратичной параболой, экстремум которой вычисляется аналитически. После приближенного нахождения экстремума x* (максимума или минимума) можно задать x0=x* и повторить поиск. Таким образом, с помощью итерационной процедуры значение x* уточняется до получения его с заданной точностью ε.
Алгоритм метода следующий:
Задаем начальное приближение x0 для x* и вычисляем два смежных значения аргумента f(x) x1=x0-h и x2=x0+h, где h-полуинтервал поиска.
Вычисляем три значения f(x0), f(x1), f(x2).
Находим коэффициенты параболы a,b,c (считая, что f(x) на указанном отрезке представляет собой параболу a*x^2+b*x+c ) и по найденным коэффициентам вычисляем положение экстремума x*=-b/2*a .
Проверяем условие |x*-x0|<e. Если условие не выполняется, задаем x0=x* и идем к пункту 1. Если выполняется, считаем x* найденным с заданной точностью e, идем к пункту 5.
Графический метод решения задач квадратичного программирования.
Графический метод можно использовать для решения задачи НП, которая содержит две переменных х1 и х2, например задачи следующего вида:
Z = f(x1, x2) → min (max);
gi(x1, x2) ≤ bi,
.
Чтобы найти ее оптимальное решение, нужно выполнить следующие действия:
1. Найти ОДР, определяемую ограничениями задачи. Если окажется, что эта область пуста, то это означает, что задача не имеет решения.
2. Построить семейство линий уровня целевой функции f(х1, х2) = C при различных значениях числового параметра С.
3. При решении задачи на минимум определить направление убывания, а для задачи на максимум — направление возрастания линий уровня ЦФ.
4. Найти точку ОДР, через которую проходит линия уровня с наименьшим в задаче на минимум (соответственно, наибольшим в задачи на максимум) значением параметра С. Эта точка будет оптимальным решением. Если ЦФ не ограничена снизу в задаче на минимум (сверху — в задаче на максимум), то это означает, что задача не имеет оптимального решения.
5. Найти координаты точки оптимума и определить в ней значение ЦФ.
Метод множителей Лагранжа.
Метод
множителей Лагранжа,
метод нахождения условного
экстремума функции
,
где
,
относительно
ограничений
,
где
меняется
от единицы до
.
Составим функцию
Лагранжа в
виде линейной
комбинации функции
и
функций
,
взятых с коэффициентами, называемыми множителями
Лагранжа —
:
где
.
Составим
систему из
уравнений,
приравняв к нулю частные
производные функции
Лагранжа
по
и
.
Если
полученная система имеет решение
относительно параметров
и
,
тогда точка
может
быть условным экстремумом, то есть
решением исходной задачи. Заметим, что
это условие носит необходимый, но не
достаточный характер.
Алгоритм обобщенного метода множителей Лагранжа.
Сначала все ограничения отбрасываются, и решается задача безусловной максимизации ЦФ. Находится ее стационарная точка и проверяется ее допустимость. Если оказалось, что эта точка принадлежит ОДР, то процесс вычислений завершается, так как в силу выпуклости задачи (14) – (15) найденная точка является ее решением.
Если же найденная точка не допустима, то формируется новая задача, которая состоит в максимизации ЦФ с учетом первого ограничения задачи. Однако это ограничение записывается не как неравенство, а как равенство.
Получаем классическую задачу условной оптимизации вида:
Z = f (x1,…, xn) ® mах,
g1(x1,…, xn) = b1.
Для ее решения используется метод множителей Лагранжа. Выписывается функция Лагранжа
L(x1,…, xn, λ) = f (x1,…, xn) + λ (b1 – g1 (x1,…, xn))
и решается система уравнений, определяющая стационарные точки этой функции:
Если в
результате получен вектор решения
такой,
что вектор
допустим
в исходной задаче и λ* ≥
0, то это означает, что
—
искомая точка оптимума. Если же оказалось,
что λ* <
0 или вектор
недопустим
в исходной задаче, то вместо первого
ограничения берется второе ограничение
и рассматривается задача
Z = f (x1,…, xn) ® mах,
g2(x1,…, xn) = b2.
Эта задача также решается методом множителей Лагранжа. Если ее решение опять не является точкой оптимума исходной задачи, то берется третье ограничение и т.д. Если последовательный перебор отдельных ограничений не приводит к желаемому результату, то рассматриваются задачи с двумя ограничениями, затем тремя ограничениями и так до тех пор, пока не будет найдено оптимальное решение исходной задачи.
Замечание. Если исходная задача содержит ограничения типа равенства, то их нужно включать во все формируемые задачи.
Условные и безусловные задачи НП.
Задачи оптимизации
(1)
(2)
называются задачами безусловной оптимизации (на безусловный экстремум). В них ограничения отсутствуют, т.е. x Rn.
Для того, чтобы точка x0 Rn, была точкой локального экстремума (т.е. либо точкой локального минимума, либо точкой локального максимума) в задачах (1) и (2), необходимо, чтобы
(3)
Это есть необходимый признак оптимальности 1 порядка. Все точки x0, удовлетворяющие условию (3), называются стационарными точками (точки, подозрительные на экстремум).
Введение барьерных штрафных функций.
Основная задача метода штрафных функций состоит в преобразовании задачи минимизации функции
с соответствующими ограничениями, наложенными на х, в задачу поиска минимума без ограничений функции
Функция
является
штрафной. Необходимо, чтобы при нарушении
ограничений она «штрафовала» функцию
Z, т.е. увеличивала её значение.В этом
случае минимум функции Z будет находиться
внутри области ограничений. Функция
,
удовлетворяющая этому условию, может
быть не единственной. Задачу минимизации
можно сформулировать следующим образом:
минимизировать функцию
при
ограничениях
.
Функцию удобно записать следующим образом:
где r – положительная величина.
Тогда
функция
принимает
вид
.
Если х
принимает допустимые значения, т.е.
значения, для которых
,
то Z принимает значения, которые больше
соответствующих значений
(истинной
целевой функции данной задачи), и разность
можно уменьшить за счет того, что r может
быть очень малой величиной. Но если х
принимает значения, которые хотя и
являются допустимыми, но близки к границе
области ограничений, и по крайней мере
одна из функций
близка
к нулю, тогда значения функции
,
и следовательно значения функции Z
станут очень велики. Таким образом,
влияние функции
состоит
в создании «гребня с крутыми краями»
вдоль каждой границы области ограничений.
Следовательно, если поиск начнется из
допустимой точки и осуществляется поиск
минимума функции
без
ограничений, то минимум, конечно, будет
достигаться внутри допустимой области
для задачи с ограничениями. Полагая r
достаточно малой величиной, для того
чтобы влияние
было
малым в точке минимума, мы можем сделать
точку минимума функции
без
ограничений совпадающей с точкой
минимума задачи с ограничениями.
Введение штрафных функций Фиакко - Мак-Кормика.
Влияние
штрафа состоит в создании «гребня с
крутыми краями» вдоль каждой границы
области ограничений. Следовательно,
если поиск начинается из допустимой
точки и осуществляется поиск минимума
без ограничений, то минимум, конечно,
будет достигаться внутри допустимой
области для задачи с ограничениями.
Полагая r
достаточно малой величиной, для того
чтобы влияние «штрафа» было малым в
точке минимума, мы можем сделать точку
минимума функции
без
ограничений совпадающей с точкой
минимума функции
с ограничениями.
Штрафные функции Розенброка.
Функция Розенброка — невыпуклая функция, используемая для оценки производительности алгоритмов оптимизации, предложенная Ховардом Розенброком в 1960 году. Считается, что поиск глобального минимума для данной функции является нетривиальной задачей.
Является примером тестовой функции для локальных методов оптимизации. Имеет минимум 0 в точке (1,1)].
Значение функции
Розенброка для двух переменных в
окрестности точки
.
Функция Розенброка для двух переменных определяется как:
Она имеет глобальный
минимум в точке
где
.
Встречаются два классических варианта многомерного обобщения функции Розенброка.
В первом случае, как
сумма
несвязанных
двумерных функций Розенброка:
]
Более сложным вариантом является:
Существует также вероятностное обобщение функции Розенброка, предложенное
где случайные
переменные
являются непрерывно
распределёнными Unif(0,1).