Читайте также:
|
|
Этот метод был предложен Фиакко и Мак-Кормиком и назван ими методом последовательной безусловной минимизации. Этот метод предназначен для решения задач нелинейного программирования в форме неравенств:
¦(x) ® min; x Î X Ì E n, (8.32)
gi (x) < 0, i = 1: m. (8.33)
Неравенство (8.33) запрещает присутствие в задании множества X ограничений-равенств. На множестве Х определим функцию B (x), которая называется барьерной функцией. Барьерные функции могут быть двух типов.
В первом типе используется так называемая обратная функция:
B (x) = - [ gi (x)]-1, (8.34)
определенная всюду, за исключением границы допустимой области.
Во втором типе используется логарифмическая функция вида
B (x) = - ln [- gi (x)], (8.35)
определенная только внутри допустимой области. Она неограниченно возрастает при приближении к границе допустимой области.
Составим функцию
¦(x, k) = ¦(x) + B (x).
Штрафная добавка B (x) к целевой функции ¦(x) образует как бы барьер, препятствующий выходу из допустимой области в процессе оптимизационного поиска.
Метод заключается в следующем. Выбирается последовательность постоянных { ki }, ki ® ¥. Решается соответствующая последовательность задач минимизации без ограничений, в результате чего определяется последовательность минимальных точек { x ( k )*}. При определенных условиях такая последовательность { x ( k )*} существует и точка минимума x * задачи с ограничениями получается в виде предела.
, ¦*» ¦(x ( k )).
Поскольку все точки последовательности { x ( k )} лежат в допустимой области, метод барьерных функций называют методом внутренней то чки.
Пример 8.7. Решить задачу
¦(x) = x ® min,
- x + 2 £ 0
методом барьерных функций, используя в качестве В (x) = - 1/ gi (x).
Решение. Обобщенная функция будет иметь вид
¦(x, k) = x + . (8.36)
Y
¦1(x)
A1
5
4
¦100(x)
3
A2
8 A
1
x* x(100) x(1)
1 2 3 4 5 X
Рис. 8.8. Графическая иллюстрация задачи
Область ограничений лежит справа от вертикальной прямой x = 2 (рис. 8.8). Начиная из произвольной точки допустимого множества, например x (0) = 5, найдем решение ¦ (x, k) при различных k. Вычислим производную
d ¦(x, k)/ dx = 1 – 1/(k (x -2)2) = 0.
Откуда
k (x -2)2 – 1 = 0, (x -2)2 = , x = 2 + . (8.37)
Решая (8.37) при k=1; 9; 100, получим соответственно x (1)* = 3, x (9)* = 2,3, x (100)* = 2,1 (табл. 8.2).
Таблица 8.2.
Оптимальные значения функции (8.36)
k | x | ¦(x, k) |
2,3 | 2,67 | |
2,1 | 2,2 |
Нетрудно видеть, что последовательность точек A 1, A 2, A 3 стремится к A - минимуму функции при наличии ограничений.
d 2¦(х, k)/ dx 2 = 2 /[ k (x -2)3] и минимум достигается при x = 2 + . Тогда A 1 есть точка с координатами (3; 4), A 2 – точка с координатами (2,3;2,67), A 3 – точка с координатами (2,1;2,2). Ясно, что при k ® ¥ x ( k )* = 2.
Дата добавления: 2015-02-16; просмотров: 196 | Поможем написать вашу работу | Нарушение авторских прав |