Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лаба по ВычМ метод спуска по градиенту

.doc
Скачиваний:
36
Добавлен:
01.04.2014
Размер:
90.62 Кб
Скачать

Козловская К.В., гр. 042801.

«Оптимизация. Метод спуска по градиенту»

  • Исследуемая функция: .

  • Код программы:

function Mdrad (h,E,x1,x2) %h-step; E-error; x1,x2-init. coord.

x0=[x1 x2]; %starting point

x=x0; %moving to starting point

while 1

d=-g(x,h); %grad

while 1 %searching MIN along d

if F(x(1)+h*d(1),x(2)+h*d(2))<F(x(1),x(2)) %

x=x+h*d; %

else break; %

end; %

end; %

if abs(F(x(1),x(2))-F(x0(1),x0(2)))<E %exiting condition

break

else

x0=x;

continue;

end;

end;

Xmin=x %answer: MIN coord.

Fmin=F(x(1),x(2)) %answer: MIN value

end

  • m-файл с функцией вычисление градиента:

function g=g(x,h)

dfdx1=(F(x(1)+h,x(2))-F(x(1)-h,x(2)))/(2*h);

dfdx2=(F(x(1),x(2)+h)-F(x(1),x(2)-h))/(2*h);

g=[dfdx1 dfdx2];

return

  • m-файл с описанием функции :

function F=F(x1,x2)

F=(x2-3)^2+(1-x1)^2-4*x1;

return

  • графики функции:

  • проверка программы: