2.3.4 Метод квантования симплексов
Симплексный метод относится к группе безградиентных методов детерминированного поиска. Основная идея метода заключается в том, что по известным значениям функции в вершинах выпуклого многогранника, называемого симплексом, находится направление, в котором требуется сделать следующий шаг, чтобы получить наибольшее уменьшение (увеличение) критерия оптимальности. Примером симплекса на плоскости является треугольник, в трехмерном пространстве – четырехгранная пирамида, в n-мерном пространстве – многогранник сn + 1 вершиной. Основным свойством симплекса является то, что против любой из вершин симплекса расположена только одна грань, на которой можно построить новый симплекс, отличающийся от прежнего расположением новой вершины, остальные вершины обоих симплексов – совпадают.
Наглядную иллюстрацию симплексного метода удобнее рассматривать на примере задачи отыскания минимального значения целевой функции двух независимых переменных (рис. 2.11).
Рисунок 2.11 –Блок-схема метода наискорейшего спуска
Алгоритм поиска заключается в следующем.
1) Определяются значения целевой функции в трех точкахS10,S20,S30, соответствующих вершинам симплекса. Из найденных значений выбирается наибольшее. В рассматриваемом примере – этоS10 (рис. 2.12).
Рисунок 2.12 –Поиск оптимума симплексным методом
2) Строится новый симплекс, для этого вершинаS10 исходного симплекса заменяется вершинойS11, расположенной симметрично вершинеS10 относительно центра грани, расположенной против вершиныS10. Построение нового симплексаS20 S30 S11 осуществляется определением центраА стороныS20 S30 треугольникаS10 S20 S30, после чего проводится прямаяS10A, на продолжении которой откладывается отрезокАS11 равныйS10А.
3) Вычисляется значение целевой функции в вершинеS11, которое сравнивается с известными значениями в вершинахS20 иS30. В результате определяется вершинаS30 с наибольшем значением целевой функции, подлежащая исключению при построении следующего симплексаS11 S20 S31.
Исключение из рассмотренных вершин симплексов с наибольшим значением целевой функции приводит к сходимости процесса к минимальному значению.
При использовании симплексного метода возможно зацикливание вблизи оптимума, которое приводит к тому, что при исключении вершины образуется не новый, а предыдущий симплекс. Для устранения зацикливания достаточно изменить размеры симплекса в сторону его уменьшения, т.е. уменьшить шаг спуска в районе оптимума. Если зацикливание возникает вновь, то размеры симплекса уменьшаются до тех пор, пока не будет достигнута требуемая точность определения оптимума.
Критерием окончания поиска могут служить размеры симплекса. Поиск можно прекратить, если все ребра симплекса станут меньше заданной достаточно малой величины.
- Содержание
- Введение
- 1 Классический медод решения задач нелинейного программирования
- 1.1 Постановка задачи
- 1.2 Экстремум функции одной переменной
- 1.3 Экстремумы функций многих переменных
- 1.4 Метод неопределенных множителей Лагранжа
- 1.4.1 Основные положения
- 1.4.2 Геометрическая интерпретация метода множителей Лагранжа
- 1.4.3 Экономическая трактовка метода множителей Лагранжа
- 1.4.4 Особые случаи
- 1.5 Особенности реальных задач
- 2 Численные методы решения задач нелинейного программирования
- 2.1 Общая характеристика методов решения задач нелинейного программирования
- 2.2 Методы одномерной оптимизации
- 2.2.1 Метод прямого сканирования
- 2.2.2 Метод половинного деления
- 2.2.3 Метод "золотого сечения"
- 2.2.4 Метод Фибоначчи
- 2.3 Методы многомерной оптимизации
- 2.3.1 Метод Гаусса-Зайделя
- 2.3.2 Метод градиента
- 2.3.3 Метод наискорейшего спуска
- 2.3.4 Метод квантования симплексов
- 2.3.5 Поиск при наличии "оврагов" целевой функции
- 2.4 Методы поиска условного экстремума
- 2.4.1 Метод проектирования вектора-градиента
- 2.4.2 Метод ажурной строчки
- 2.5 Проблемы поиска глобального экстремума
- 3 Численные методы решения задач нелинейного программирования
- 3.1 Графический метод решения задач нелинейного программирования
- 3.2 Метод множителей Лагранжа
- 3.3 Компьютерная реализация решений задач нелинейного программирования
- 3.3.1 Решение задач нелинейного программирования в среде приложенияExcel
- 3.3.2 Решение задач нелинейного программирования в среде приложения Matlab
- Перечень ссылок
- Приложение а Блок-схемы методов