Similar presentations:
Задачи нелинейного программирования
1. Задачи нелинейного программирования
• Общая задача НП заключается вотыскании экстремального значения
ЦФ, зависящей от n переменных.
• Точка Х0 является точкой максимума,
если в ее окрестностях значение
функции f(X) не превосходит f(Х0). Для
минимума - f(Х)≤f(Х0).
2.
• Рассмотрим функцию f(X) на отрезке [a,b]. .F(x)
а
X1
X2
x3
x4
x5
в
f(x5)-глобальный максимум, f(x1), f(x3) – локальные максимумы.
f(x1) – нестрогий максимум. x2 , x4 – точки минимумов.
3.
• Необходимое условие существованияэкстремума функции f(x) в точке x0
является равенство нулю градиента
функции в этой точке grad f(x0)=0
• grad f(X)=(df/dx1,……..df/dxn) – задает угол
наклона касательной к графику функции.
• Это условие не является достаточным, т.к.
оно выполняется для точек перегиба и
седловых
точек,
их
называют
стационарными точками.
4. Методы решения задач НП
аналитическиеградиентные
непрямые методы
методы случайного поиска
5. Аналитические методы
• Основаны на использованиинеобходимых и достаточных условий
экстремумов функций.
• Для их использования необходимо,
чтобы ЦФ и функции ограничений были
непрерывными вместе с их частными
производными первого порядка.
6. Численные методы
• Для поиска экстремума функции,зависящей от 1-й переменной.
• Выделяется диапазон значений x , на
котором может находиться точка
экстремума, затем диапазон сужается
до тех пор, пока не будет найдена точка
экстремума с заданной точностью
7. Покоординатные методы
• Отыскание экстремального значенияфункции по каждой из переменных.
8. Методы случайного поиска
• Выбирается любое допустимое решение.• Переход к следующему решению
производится в случайным образом
выбранном направлении.
• Если при этом получаем улучшенное
значение целевой функции, то дальше
движемся в выбранном направлении, иначе –
меняем направление.
• В результате получаем приближенное
решение с заданной точностью.
9. Градиентные методы
• Основаны на использовании градиента ЦФ(градиент в точке указывает направление
скорейшего возрастания функции).
• Пошаговый переход от одного допустимого
решения к другому в направлении градиента.
• Получаем приближенное решение с заданной
точностью. Это наиболее универсальные
методы.
10. Непрямые методы
• Сведение задачи НП к более простойзадаче, например задаче ЛП.
• В зависимости от вида ЦФ и функций
ограничений выделяют следующие
классы
11. Методы квадратичного программирования
• Целевая функция представляет собойсумму линейной функции и квадратичной
формы, а функции ограничений
являются линейными функциями.
• F=∑cjxj+∑∑aikxjxk
j=1,n k=1,n
12. Методы сепарабельного программирования
Функции ограничений сепарабельны:
• F(x1….xn)=F1(x1)+…+Fn(xn)
Методы решения основаны на
линейной аппроксимации ЦФ и
применении симплекс-метода.
13. Методы геометрического программирования.
Целевая функция и функции ограничений
являются полиномами и имеют следующий вид:
• F=∑uk
m
u k c k xi
aik
i 1
ck- положительны, aki- целые числа.
14. Методы стохастического программирования.
Целевая функция и функции
ограничений являются линейными, но
при этом коэффициенты aij, bi –
случайные числа, а ограничения
должны выполняться с некоторыми
вероятностями.
15.
Общая задача нелинейного программированияформулируется следующим образом: найти вектор
X
x1 , ...,
x n
удовлетворяющий системе ограничений:
g , ...,
xn bi i 1, k
i x1
g i x1 , ..., xn bi i k 1, m
и обращающий в максимум (или минимум) целевую
функцию
F F x1, ...,
xn
16.
• ВекторX x1 , ..., x n
удовлетворяющий системе ограничений
называется допустимым решением задачи
нелинейного программирования
•Допустимое решение, при котором целевая
функция F достигает максимального
значения (в случае задачи максимизации)
или минимального значения (в случае
задачи минимизации) называется
оптимальным.
17. Факторы, затрудняющие решение задач нелинейного программирования.
1. В задачах ЛП ЦФ имеет абсолютныйглобальный экстремум, в НП ЦФ может
иметь несколько локальных
экстремумов, при этом не существует
методов, с помощью которых можно
установить, является ли этот экстремум
глобальным
18.
1. Для задачи ЛП множество допустимыхрешений
задачи
образует
выпуклый
многогранник, при этом оптимальное
решение достигается в одной из его
вершин, т.е. за конечное число шагов мы
можем найти оптимальное решение (если
оно существует).
В НП множество допустимых решений
образует область, которая не всегда
выпукла. Оптимальное решение может
находиться не только на границе области,
но и в любой внутренней точке.
Следовательно, его нельзя найти с
помощью перебора.
19.
1. В ЛП множество точек, в которых ЦФпринимает постоянное значение есть
гиперплоскость c1x1+……cnxn=const. При
различных значениях const мы получаем
параллельные гиперплоскости.
В НП множество точек, в которых ЦФ
принимает постоянное значение есть
гиперповерхность f(x1……xn)=const. При
различных значениях const мы получаем
гиперповерхности,
которые
могут
пересекаться.
20. Геометрический метод решения задач НП
• Если определена область допустимыхрешений, то нахождение решения задачи
нелинейного программирования сводится к
определению такой точки этой области,
через которую проходит гиперповерхность
наивысшего уровня (в случае максимизации)
или наинизшего уровня (в случае
минимизации):
F x1 , ..., x n h
21. Решение задачи нелинейного программирования графическим способом :
1. Находят область допустимых решенийзадачи. Если она пуста, то задача
решения не имеет.
2. Строят гиперповерхность .
F x1 , ..., x n h
22.
1. Определяют гиперповерхностьнаивысшего (наинизшего) уровня или
устанавливают неразрешимость
задачи из-за неограниченности
функции F сверху (снизу) на
множестве допустимых решений.
2. Находят точку области допустимых
решений, через которую проходит
гиперповерхность наивысшего
(наинизшего) уровня, и определяют
значение целевой функции F в этой
точке
23. Пример. Найти максимальное и минимальное значение функции
F x1 3 x2 42
При выполнении условий
3 x1 2 x 2 7
10 x1 x 2 8
18
x
1 4 x 2 12
x1 0, x 2 0.
2
24.
• Решение.• Областью
допустимых
решений этой
задачи является
треугольник ABC
25.
• Полагая значение целевой функции Fравным некоторому числу h, получаем
линии уровня
x 3 x 4 h
2
1
2
2
которые являются окружностями с центром P(3, 4)
и радиусом h. С увеличением (уменьшением) h
значения функции F соответственно
увеличиваются (уменьшаются).
26.
Проводя из точки P,окружности
различных радиусов,
получим, что
минимальное
значение функция F
принимает в точке D,
в которой
окружность касается
области решений
27.
• Координаты точки D определяются из равенстваугловых коэффициентов прямой
10 x x 2 8
1
и касательной к окружности в точке D.
Из уравнения прямой видим, что ее угловой
коэффициент в точке D равен 10.
Угловой коэффициент касательной к окружности
в точке D определим как значение производной
функции x2 от переменной x1 в этой точке
28.
• Рассматривая X2 как неявную функциюот переменной X1 и дифференцируя
уравнение окружности, получим
2 x1 3 2 x 2 4 x 2' 0
откуда
'
x 2 x1 3 x 2 4 10
29.
• получим систему:x1 10 x 2 43
10 x1 x 2 8
Решая систему, получим
* 123
x1
* 422
101 x2
F min F D 324
101.
101
30.
• Целеваяфункция F
принимает
максимальное
значение в
точке C..
31.
• Координаты точки C находят решаясистему уравнений, соответствующих
прямым BC и AC
18 x1 4 x 2 12
10 x1 x 2 8
* 2
x1
* 12
x2
F max F C 65