Теперь следует проверить, действительно ли найден экстремум. Для этого достаточно вычислить значение функции цели
(х) в предполагаемом экстремуме х=х1+Δх - х°ап и сопоставить его с оценкой. Если эти величины отличаются не более чем на ɛ т. е:|( х°ап )-
(х°ап )|, где ɛ заданная погрешность определения экстремума. При этом
= х1. Если условие не выполняется, тогда следует процесс поиска; т.е. выполнить следующий цикл, но уже построениеаппроксимирующей модели производится в окрестности точки х1= х°ап . Процедура будет повторяться пока не выполнится условие.
Алгоритм расчета.
Результаты расчета.
Целевая функция имеет вид :
Нач. знач. X=-100,H=0.5 | ||||
Погрешность Е | Значение Х | Значение F | Кол-во итераций | Кол-во вычислений |
1 | (-)2,19360741 | (-)919,076558 | 10 | 30 |
0.1 | 0,8912446 | 22,8921666 | 14 | 45 |
0.01 | 0,79728604 | 22,27161267 | 16 | 48 |
0.001 | 0,7960595 | 22,2612358 | 17 | 51 |
Нач. знач. Х=-100, Е=0.1 | ||||
Шаг Н | Знач Х | Знач F | Кол-во итераций | Кол-во вычислений |
Увеличение шага | ||||
0,3 | 0,901465 | 22,93463 | 25 | 75 |
0,5 | 0,797286 | 22,27161 | 16 | 48 |
0,8 | 0,6115913 | 20,33949 | 35 | 105 |
Уменьшение шага | ||||
0.5 | 0,79728604 | 22,27161267 | 16 | 48 |
0.4 | 0,8540667 | 22,69232 | 20 | 60 |
0.3 | 0,901465 | 22,934634 | 25 | 75 |
0.2 | 0,936694 | 23,034198 | 41 | 123 |
0.1 | 0,961479 | 23,056109 | 31 | 93 |
0.02 | 0,961661 | 23,05611 | 25 | 75 |
Вывод: расчеты показали, что изменение погрешности определения экстремума ɛ, практически не влияет на точность вычисления в то время, как изменение шага поиска h оказывает значительное влияние. При уменьшении шага точность вычислений улучшается и наоборот, при увеличении шага уменьшается. И в конечном итоге, когда шаг поиска слишком велик для того, чтобы с помощью итерационной процедуры уточнения значений получить результат с заданной погрешностью, программа отказывается производить вычисления.
Оптимизация методом наискорейшего спуска.
Метод наискорейшего спуска предназначен для поиска минимума. Данный метод отличается от метода градиента правилом определения коэффициента шага. Сначала выделяется начальная точка. В пространстве X могут быть выделены области притяжения каждого из локальных минимумов.
Если алгоритм начинает поиск из начальной точки, лежащей в области притяжения некоторого минимума функции
против направления градиента. Таким образом, в каждом цикле решается одномерная задача минимизации , после чего шаг находится какАлгоритм расчета.
Результаты расчета.
Целевая функция имеет вид :
Н=1,E=0.01 | ||||
Приращение L | Оптим. зн. XI | Оптим. зн. Х2 | Оптим. зн. ХЗ | Оптим. зн. F |
0,5 | -10,75 | 17,25 | -12,75 | 0,1875 |
0.1 | -10,95 | 17,04 | -12,95 | 0,0074 |
0.01 | -10,995 | 17,005 | -12,994 | 7,5000001E-7 |
0.001 | -10,99 | 17 | -12,99 | 7,49752E-9 |
L=0.0001, Е=0.1 | ||||
Шаг h | Оптим. зн. XI | Оптим. зн. Х2 | Оптим. зн. ХЗ | Оптим. зн. F |
10 | -100 | 100 | -100 | 31979 |
5 | -100 | 100 | -100 | 31979 |
1 | -10,9 | 17 | -12,9 | 7,5 |
0,5 | -10,9 | 17 | -12,9 | 7,49934E-9 |
0,1 | -10,9 | 17 | -12,9 | 7,49934E-9 |
Н=0.5, L=0.0001 | ||||
Погрешность Е | Оптим. зн. X 1 | Оптим. зн. Х2 | Оптим. зн. ХЗ | Оптим. зн. F |
1 | -121,99 | 65,9 | -125,9 | 31978,93 |
0.1 | -10,99 | 17 | -12,99 | 7,49752Е-9 |
0.01 | -10,99 | 17 | -12,99 | 7,49752Е-9 |
0.001 | -10,99 | 17 | -12,99 | 7.49752Е-9 |
Оптимизация методом линейного программирования.
f0(x)=4x+3y
Представим уравнения прямых, составляющих прямоугольник, в виде ограничений для целевой функции и проверим правильность постановки знаков:
1)3x-y≤4
2)x-2y≤-7
3)3x+y≤21
4)-x+4y≤6
Следовательно искомые ограничения:
1)-3x+y-4
2)-x+2y≤7
3)3x+y≤21
4)x-4y≤-6
Точки min и max:
Amin (2;2) Cmax (5;6)
min и max функции:
f0(x)min=14
f0(x)max=38
Расчет производится в приложении МАТLАВ.
»f=[4,3]
f = 4 3
»A=[-3,l;-l,2;3,l;l,-4]
A =
-3 1
-1 2
3 1
1 -4
» B=[-4;7;21;-6]
B =
-4
7
21
-6
» [x,y,z]=linprog(f,A,B) Optimization terminated,
x =
2.0000
2.0000
y =
14.0000
z = 1
Решение задачи нелинейного программирования.
Задача №2.
Имеются три продукта n1,n2,n3 разной цены. Каждый из них содержит определенное количество питательных ингредиентов, причем для нормального потребления требуется u1≥250; u2≥60; u3≥100; u4≥220.
Минимизировать затраты на приобретение продукта.
N1 | N2 | N3 | |
U1 | 4 | 6 | 15 |
U2 | 2 | 2 | 0 |
U3 | 5 | 3 | 4 |
U4 | 7 | 3 | 12 |
Цена за единицу | 44 | 35 | 100 |
Расчет производится в приложении МАТLАВ.