
- •Некрасова м.Г. - Методы оптимизации Оглавление
- •Глава 1. Введение в методы оптимизации
- •Вопросы к главе 1
- •Глава 2. Основы теории оптимизации
- •2.1. Параметры плана
- •2.2. Целевая функция (план)
- •Вопросы к главе 2
- •Глава 3. Функция одной переменной
- •3.1. Определение функции одной переменной и её свойства
- •3.2. Исследование функций в экономике. Нахождение максимума прибыли
- •3.3. Определение глобального экстремума
- •3.4. Выпуклость, вогнутость функции
- •3.4. Критерий оптимальности
- •Замечание.
- •3.6. Идентификация оптимумов
- •Вопросы к главе 3
- •Глава 4. Одномерная оптимизация
- •4.1. Методы исключения интервалов
- •4.1.1. Метод сканирования
- •4.1.2. Метод деления отрезка пополам
- •4.1.2. Метод золотого сечения
- •4.1.2. Сравнительная характеристика методов исключения интервалов
- •4.2. Полиномиальная аппроксимация и методы точечного оценивания
- •4.2.1. Метод параболической аппроксимации
- •4.2.2. Метод Пауэлла
- •4.3. Сравнение методов одномерного поиска
- •Метод Пауэлла
- •Глава 5. Функции многих переменных
- •5.1. Функции многих переменных, их обозначение и область определения
- •5.2. Некоторые многомерные функции, используемые в экономике
- •5.3. Частные производные функции многих переменных
- •5.3. Экономический смысл частных производных
- •5.3. Частные производные высших порядков
- •5.6. Свойства функций нескольких переменных
- •5.7. Производная по направлению. Градиент. Линии уровня функции
- •5.8. Экстремум функции многих переменных
- •Вопросы к главе 5
- •Глава 6. Многомерная безусловная градиентная оптимизация
- •6.1. Концепция методов
- •6.2. Метод градиентного спуска
- •6.3. Метод наискорейшего спуска
- •Вопросы к главе 6
- •Глава 7. Критерии оптимальности в задачах с ограничениями
- •7.1. Задачи с ограничениями в виде равенств
- •7.2. Множители Лагранжа
- •7.3. Экономическая интерпретация множителей Лагранжа
- •7.4. Условия Куна - Таккера
- •7.4.1. Условия Куна – Таккера и задача Куна - Таккера
- •7.5. Теоремы Куна - Таккера
- •7.6. Условия существования седловой точки
- •Теорема 4. Необходимые условия оптимальности
- •Вопросы к главе 7
- •Глава 8. Модели динамического программирования
- •8.1. Предмет динамического программирования
- •8.2. Постановка задачи динамического программирования
- •8.3. Принцип оптимальности и математическое описание динамического процесса управления
- •8.4. Общая схема применения метода динамического программирования
- •8.5. Двумерная модель распределения ресурсов
- •8.6. Дискретная динамическая модель оптимального распределения ресурсов
- •2 Этап. Безусловная оптимизация.
- •8.7. Выбор оптимальной стратегии обновления оборудования
- •8.8. Выбор оптимального маршрута перевозки грузов
- •2 Этап. Безусловная оптимизация.
- •8.9. Построение оптимальной последовательности операций в коммерческой деятельности
- •1 Этап. Условная оптимизация.
- •Вопросы к главе 8
- •Пример выполнения задачи 1
- •Пример выполнения задачи 4
- •Пример выполнения задачи 5
- •Расчетно-графическое задание 2
- •Пример выполнения задачи 1
- •Пример выполнения задачи 2
- •Пример выполнения задачи 3
- •Пример выполнения задачи 4
- •1 Этап. Условная оптимизация.
- •2 Этап. Безусловная оптимизация.
- •2 Этап. Безусловная оптимизация.
Пример выполнения задачи 1
Задача.
Найти минимальное значение f*
и точку минимума х* функции
методом
Пауэлла. Точку х* найти с точностью
=0,1.
Решение. Пусть начальная точка x1 =1 и длина шага x = 1. Для проверки на окончание поиска используем условие:
Итерация 1.
Шаг 1.
Шаг 2.
Шаг 3.
Шаг 4.
Шаг 5. Используя метод параболической аппроксимации, находим
Шаг 6. Проверка на окончание поиска:
Продолжаем поиск.
Шаг 7. Выбираем
«наилучшую» точку, и точки, их окружающие.
Обозначаем эти точки в естественном
порядке
Переходим
к итерации 2, которая начинается с шага
4.
Итерация 2.
Шаг 4.
Шаг 5.
Шаг 6. Проверка на окончание поиска:
Условия окончания поиска выполняются, следовательно, вычисления заканчиваем.
Получили
Пример выполнения задачи 2
Задача. В предыдущей задаче выделить интервал, содержащий минимум функции так, чтобы концы интервала были целыми числами, и найти минимум той же функции с заданной точностью методом золотого сечения.
Решение. В предыдущей задаче функция имеет минимум на интервале [0; 1]. Уточним его методом золотого сечения с точностью =0,1.
Первоначальные значения х1 и х2 находим по формулам
погрешность вычисляется по формуле
Вычисления представим в табл. 37.
Таблица 37
n |
n |
an |
бn |
х1(n) |
x2(n) |
f(x1(n)) |
f(x2(n)) |
Примечание |
1 |
0,618 |
0 |
1 |
0,382 |
0,618 |
1,4965 |
2,3262 |
|
2 |
0,3819 |
0 |
0,618 |
0,2361 |
0,382 |
1,1988 |
1,4965 |
|
3 |
0,2361 |
0 |
0,382 |
0,1459 |
0,2361 |
1,0791 |
1,1988 |
|
4 |
0,1459 |
0 |
0,236 |
0,0901 |
0,1459 |
1,0311 |
1,0791 |
|
5 |
0,0902 |
0 |
0,146 |
|
0,0902 |
|
1,0311 |
|
Следовательно, х* 0,0902, и f* 1,0311.
Пример выполнения задачи 3
Задача.
Минимизировать функцию
методом
наискорейшего спуска, заканчивая
вычисления при
Решение.
Найдем частные производные:
1-й шаг. Положим х(0) = (0, 0), тогда
Для нахождения точки минимума функции Ф0(h) используем метод Пауэлла. Поскольку шаг h изменяется в пределах 0 < h < 1, то за первоначальное значение примем h = 0, а h = 0.5. Таким образом, находим h0 = 0.2.
Значит, х(1) =(0, 0) – 0.2(1, -1) = (-0.2, 0.2).
Вычислим значение производных: f(-0.2, 0.2) = (0.4, 0.4). Условия завершения поиска не выполняются, следовательно, переходим к следующему шагу.
2-й шаг. Составим функцию:
Снова используем метод Пауэлла, полагая h = 0 и h = 0.5, находим h1 = 0.3.
Значит, х(2) =(-0.2,0.2) – 0.3(0.4,-0.4) = (-0.32, 0.08).
Вычислим значение производных: f(-0.32, 0.08) = (0.28, -0.2). Условия завершения поиска не выполняются, следовательно, переходим к следующему шагу.
3-й шаг. Составим функцию:
Используем метод Пауэлла, полагая h = 0 и h = 0.5, находим h2 = 0.2327.
Значит, х(3) =(-0.32-0,23270,28; 0.08+0.23270.2)=(-0.3852; 0.1265). Вычислим значение производных: f(х(3)) = (0.1031, 0.1442). Условия завершения поиска не выполняются, поэтому переходим к следующему шагу.
4-й шаг. Составим функцию:
Используем метод Пауэлла, полагая h = 0 и h = 0.5, находим h2 = 0.27.
Значит, х(4) =(-0.3852-0,270,1031; 0.1265-0.270.1442)=(-0.413; 0.0876). Вычислим значение производных: f(х(4)) = (0.0864, -0.0614). Условия завершения поиска выполняются, поэтому требуемая точность достигнута и