Одномерная оптимизация и многомерная безусловная оптимизация.
Контрольная работа по дисциплине
"Оптимальное управление"
ЯГТУ 27.03.04-003 к/р №1
Контрольную работу выполнил
студент гр. ……………………..
________________......................
…….
Одномерная оптимизация.
Функция имеет вид:
1) Аналитическое решения:
Ответ: точка мнима функции.
2) Решения численным методом (метод параболической аппроксимации).
где: dij=xi2-xj2 ij=-2,9,20.
Из системы вычислим коэффициенты С2, С1, С0.
Из выражения
Так как точка x*=2 лежит между x1 и х2 выбираем новые значения х1(1)=а=-2; х2(1)= х3(1)= х2(0)=9
Из выражения
Ответ: значения 2 является минимумом функции.
Решения задачи в среде МATLAB.
>> x=-2:0.05:20;
y=(x-2).^2;
plot(x,y);grid on;title('График');xlabel('ось f(x)');xlabel('ось x')
options=optimset('Display','iter');
>> [x,fval,exitflag,output]=fminbnd('myfun',0,05,options);
f =
0.0081306
Func-count x f(x) Procedure
1 1.90983 0.00813062 initial
f =
1.1885
2 3.09017 1.18847 golden
f =
0.67184
3 1.18034 0.671843 golden
f =
4 2 0 parabolic
f =
1.1131e-009
5 2.00003 1.1131e-009 parabolic
f =
1.1131e-009
6 1.99997 1.1131e-009 parabolic
Optimization terminated:
the current x satisfies the termination criteria using OPTIONS.TolX of 1.000000e-004
Многомерная безусловная оптимизация
Аналитическое решения функции.
Матрица Гессе отрицательная и А=2>0 значение (f) тоже отрицательная из этого следует функция вогнутая и точка(0,3) является глобальным минимумом.
Графический анализ функции.
Для построения линии уровня функции:
Выбираем следующие значения функции: 10, 25, 50.
Выражаем переменную через
и функцию
.
Точка минимума имеет координатыпо
F | X1 | -X2 | +X2 |
-4 | 2,35 | 7,65 | |
-2 | |||
1,36 | 7,36 | ||
-2 | |||
-1,65 | 3,65 | ||
-1 | |||
-4 | 0,31 | 9,69 | |
-2 | -1,57 | 9,57 | |
-2,83 | 8,83 | ||
-3,57 | 7,57 | ||
-3,69 | 5,69 | ||
-3,4 | 4,4 | ||
-4 | -1,86 | 11,86 | |
-2 | -3,48 | 11,48 | |
-4,68 | 10,68 | ||
-5,48 | 9,48 | ||
-5,85 | 7,85 |
Числовой метод (Разенброка).
Найдем минимум функции
1. Зададим начальные точку
Положим
20. Так как
30. Так как и перейдем к шагу 2.
21. Так как
31. Так как проверим успешность поиска по текущему ортогональному направлению
поиск успешный. Положим
и перейдем к шагу 2.
22. Так как
32. Так как и перейдем к шагу 2.
23. Так как
33. Так как проверим успешность поиска по текущему ортогональному направлению
поиск успешный. Положим
и перейдем к шагу 2.
24. Так как
34. Так как и перейдем к шагу 2.
25. Так как
35. Так как проверим успешность поиска по текущему ортогональному направлению
поиск успешный. Положим
и перейдем к шагу 2.
26. Так как
36. Так как и перейдем к шагу 2.
27. Так как
37. Так как
, но
перейдем к шагу 4.
40. Положим ,Так как
из соотношения.
Построрем новый нобор напровленийпоеска;
Положим
и перейдем к шагу 2.
28. Так как
38. Так как и перейдем к шагу 2.
29. Так как
39. Имеем
, положим
перейдем к шагу 2.
210. Так как
310. Так как и перейдем к шагу 2.
211. Так как
311. Имеем
, то перейдем к шагу 4.
41. Положим ,Так как
из
соотношения.
Построрем новый нобор напровленийпоеска;
Положим
и перейдем к шагу 2.
212. Так как
312. Так как и перейдем к шагу 2.
213. Так как
313. Имеем
, выполнили одну не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2.
214. Так как
314. Так как и перейдем к шагу 2.
215. Так как
315. Имеем
, выполнили вторую не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2.
216. Так как
316. Так как и перейдем к шагу 2.
217. Так как
317. Имеем
, выполнили вторую не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2.
218. Так как
318. Так как и перейдем к шагу 2.
219. Так как
319. Имеем
, положим
перейдем к шагу 2.
220. Так как
320. Так как и перейдем к шагу 2.
221. Так как
321. Имеем
, то перейдем к шагу 4.
42. Положим ,Так как
из
соотношения.
Построрем новый нобор напровленийпоеска;
Положим
и перейдем к шагу 2.
222. Так как
322. Так как и перейдем к шагу 2.
223. Так как
323. Имеем
, выполнили одну не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2.
224. Так как
324. Так как и перейдем к шагу 2.
225. Так как
325. Имеем
, выполнили вторую не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2.
226. Так как
326. Так как и перейдем к шагу 2.
227. Так как
327. Имеем
, выполнили третий не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2.
228. Так как
328. Так как и перейдем к шагу 2.
229. Так как
329. Имеем
, выполнили четвертый не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2
230. Так как
330. Так как и перейдем к шагу 2.
231. Так как
331. Имеем
, выполнили пятый не удачную серию шагов
на последней серии справедлива неравенства
. Поэтому положим
и перейдем к шагу 2
232. Так как
332. Так как и перейдем к шагу 2.
233. Так как
333. Имеем
, положим
перейдем к шагу 2.
234. Так как
334. Так как и перейдем к шагу 2.
235. Так как
335. Имеем
, то перейдем к шагу 4.
43. Положим ,Так как
.
Ответ: x*=(-0,007, 2,952) точка минимума она приближается к точке x*=(0, 3)=-9 которая является минимумом.
>> [x1,x2]=meshgrid(-20:0.12:100,-20:0.12:100);
y=x1.^2+x2.^2+x1.*x2-3.*x1-6.*x2;
mesh(x1,x2,y);
x0=[-5 8];
myfun(x0);
[x,fval,exitflag,output]=fminbnd('myfun',0,12,options);
Attempted to access x(2); index out of bounds because numel(x)=1.
Error in myfun (line 4)
f=x(1).^2+x(2).^2+x(1).*x(2)-3.*x(1)-6.*x(2);
Error in fminbnd (line 217)
x= xf; fx = funfcn(x,varargin{:});