- •1 Математическое описание линейных систем
- •1.1 Дифференциальное уравнение системы. Характеристическое уравнение и его корни
- •1.2 Разложение передаточной функции на сумму простых слагаемых. Вычисление импульсной переходной характеристики ω(t) с помощью обратного преобразования Лапласа и переходной характеристики h(t)
- •1.3 Построение лачх и лфчх
- •1.4 Уравнение состояния в нормальной форме,схема моделирования
- •1.5 Уравнение состояния в канонической форме,
- •1.6 Решение уравнения состояния в нормальной и канонической формах
- •2 Линейное программирование
- •2.1 Математическая модель задачи. Нахождение оптимального плана х* и экстремального значения функции
- •2.2 Построение и решение задачи, двойственной к исходной. Сравнение решения прямой и двойственной задач
- •2.3 Получение целочисленного решения путем введения дополнительных ограничений по методу Гомори
- •3 Нелинейное программирование
- •3.1 Построение одзп, выбор начальной точки поиска
- •3.2 Нахождение экстремального значения функции f(X) без учета ограничений на переменные
- •3.2.1 Метод наискорейшего спуска
- •3.2.2 Метод Ньютона-Рафсона
- •3.3 Нахождение экстремального значения функции f(X) с учетом системы ограничений задачи
- •23.3.1 Метод допустимых направлений Зойтендейка
- •3.3.2 Метод линейных комбинаций
- •3.3.3 Условия теоремы Куна-Таккера
- •4 Тексты программ в среде matlab
- •4.1 Математическое описание линейных систем
- •4.2 Линейное программирование
- •4.3 Нелинейное программирование
3 Нелинейное программирование
3.1 Построение одзп, выбор начальной точки поиска
Целевая функция имеет вид:
Построим ОДЗП:
Рисунок 3.1 - ОДЗП
Внутри области допустимых значений выбираем точку x0, которая в дальнейшем будет являться начальной в процессе поиска экстремума:
x0=(3;1).
3.2 Нахождение экстремального значения функции f(X) без учета ограничений на переменные
3.2.1 Метод наискорейшего спуска
В методе наискорейшего спуска (подъема) очередная точка при поиске максимума функции вычисляется по формуле:
(3.1)
где “+” для задачи на максимум, а “-” – на минимум.
Найдем
градиент
:
;
(3.2)
.
На
первом шаге движение осуществляется
из точки
в направлении, обратном вектору
в новую точку
:
Величина шага
на любом шаге выбирается из условия
обеспечения экстремума функции в
рассматриваемом направлении. Подставляя
координаты точки
в функцию
,
получим:
;
Из условия:
;
найдем
:
;
;
;
В результате после первого шага координаты очередной точки получаются равными:
Вычисляем
:
.
На втором шаге движение осуществляется
в направлении, обратном вектору
с увеличением шага
:
;
;
;
;
;
В результате после второго шага координаты очередной точки получаются равными:
Вычисляем
:
.
На третьем шаге движение осуществляется
в направлении, обратном вектору
с увеличением шага
:
;
;
;
;
;
В результате после третьего шага координаты очередной точки получаются равными:
Вычисляем
:
.
На третей итерации закончим
вычисления, значение функции цели:
Рисунок 3.2 – Графическая интерпретация метода наискорейшего спуска
3.2.2 Метод Ньютона-Рафсона
Данный метод дает решение задачи за 1 шаг. Очередная точка поиска вычисляется в соответствии с выражением:
(3.3)
где
– матрица Гессе функции
;
– обратная по отношению к
матрица.
Градиент F(x):
;
.
(3.4)
где det H – определитель матрицы H; AdjH – присоединенная к H матрица (транспонированная матрица алгебраических дополнений).
Найдем определитель матрицы Гессе:
Найдем транспонированную матрицу алгебраических дополнений AdjH:
Теперь найдем матрицу обратную по
отношению к
- матрицу
:
тогда:
Следовательно,
в точке
функция
F(x)
достигает максимального значения.
3.3 Нахождение экстремального значения функции f(X) с учетом системы ограничений задачи
23.3.1 Метод допустимых направлений Зойтендейка
Координаты следующей точки:
.
Тогда координаты очередной точки:
Определяем интервал допустимых значений для 0, при котором точка x1 будет принадлежать ОДЗП. Для этого подставим координаты точки x1 в ограничения задачи:
=>
Тогда:
Находим величину ,которая обеспечит минимум функции F(x). Воспользуемся уже найденным =0,199 (метод наискорейшего спуска, стр. 29), но т.к. оно не входит в найденный интервал, то =0,0454. Координаты точки и значение градиента функции в этой точке :
На следующем шаге двигаемся в направлении
и
попадаем в очередную точку.
Координаты очередной точки:
Определяем интервал допустимых значений для 1, при котором точка x2 будет принадлежать ОДЗП. Для этого подставим координаты точки x2 в ограничения задачи:
Находим величину ,которая обеспечит минимум функции F(x) из условия
Полученное
значение
не входит в найденный ранее интервал,
поэтому примем
.
Тогда:
Движение вдоль выводит за вершины ОДЗП, следовательно следующую точку ищем в соответствии с выражением:
(3.5)
где
- новое направление, которое составляет
минимальный острый угол с вектором
градиента и направлено либо внутрь,
либо по границе ОДЗП. При этом очередная
точка должна принадлежать ОДЗП.
Найдем направление
очередного шага: т.к. x2
и точка экстремума лежат на оси [0;X2],
то
При движении из точки x2 в точку x3 следует двигаться по граничной прямой в направлении , как показано на рис. 3.3.
Координаты точки x3 определяются выражением:
или
Находим
интервал изменения
,
при котором
принадлежит ОДЗП:
Найдем такое 2, которое обеспечит минимум F(x) в направлении
тогда
Вычисляются составляющие вектора градиента в точке x3:
Направление вектора
перпендикулярно направлению
,
следовательно, найденная точка
обеспечивает минимум функции F(x)
с учетом ограничений на переменные:
Рисунок 3.3 - Графическая интерпретация метода допустимых направлений Зойтендейка
