50628

Метод покоординатного спуска

Лабораторная работа

Математика и математический анализ

Напишем программу минимизации функции методом покоординатного спуска: Минимизируем исходную функцию стандартными средствами MatLab

Русский

2014-01-27

56.5 KB

86 чел.

Лабораторные работы

№8

Тема

Метод покоординатного спуска

Ф.И.О.

Пастухова Светлана Владимировна

Группа

403

Вариант

15

Минимизировать функцию f(x,y)=ax + by + exp(cx2 + dy2 )

 N

a

b

c

d

9

22

-0.2

1.44

0.23

Порядок выполнения работы:

  1.  Построим график функции:

ezsurf('13*x-0.2*y+exp(1.44*x^2+0.23*y^2)')

  1.  Минимизируем исходную функцию стандартными средствами MatLab:

x = [0,-6];

min = fminsearch(@my_fun,x)

где x=[0,-6] – начальное приближение, а @my_fun:

function f = my_fun(x)

f =13*x(1)-0.2*x(2)+exp(1.44*x(1)^2+0.23*x(2)^2); 

Получим:

min =[-1.0167, 0.0974]

f(xmin)=  -8.7965

  1.  Напишем программу минимизации функции методом покоординатного спуска:
  2.  %Минимизируем исходную функцию стандартными средствами MatLab:
  3.  x = [0,-6];
  4.  min = fminsearch(@my_fun,x)
  5.  %где
  6.  x=[0,-6] %– начальное приближение, а @my_fun:
  7.  function f = my_fun(x)
  8.  f =13*x(1)-0.2*x(2)+exp(1.44*x(1)^2+0.23*x(2)^2);
  9.  %Получим:
  10.  min =[-1.0167, 0.0974]
  11.  f(xmin)=  -8.7965
  12.  %Напишем программу минимизации функции методом покоординатного спуска:
  13.  aaa=13; bbb=-0.2; ccc=1.44; ddd=0.23;
  14.  x1=0;
  15.  x2=-6;
  16.  e=0.0001;
  17.  k=2;
  18.  h=0.2;
  19.  e1=e/k;
  20.  l=0;
  21.  d=e+1;
  22.  while(d>e)
  23.      d=abs(h);
  24.      h1=h;
  25.      z=aaa*x1+bbb*x2+exp(ccc*x1^2+ddd*x2^2);
  26.      z1=z+1;
  27.      d1=abs(h1);
  28.      while (d1>e)
  29.          d1=abs(h1);
  30.          x1=x1+h1;
  31.          z1=aaa*x1+bbb*x2+exp(ccc*x1^2+ddd*x2^2);
  32.          if (z1>=z) h1=-h1/k; end
  33.          z=z1;
  34.      end
  35.      h1=h;
  36.      z=aaa*x1+bbb*x2+exp(ccc*x1^2+ddd*x2^2);
  37.      d1=e1+1;
  38.      z1=z+1;
  39.      d1=abs(h1);
  40.      while (d1>e)
  41.          d1=abs(h1);
  42.          x2=x2+h1;
  43.          z1=aaa*x1+bbb*x2+exp(ccc*x1^2+ddd*x2^2);
  44.          if (z1>=z)  h1=-h1/k; end
  45.          z=z1;
  46.      end
  47.      h=h/k;
  48.      l=l+1;
  49.  end
  50.  x1
  51.  x2
  52.  aaa*x1+bbb*x2+exp(ccc*x1^2+ddd*x2^2)
  53.  e
  54.  %В результате получим:
  55.  min =[ -1.0165, 0.0981]
  56.  fmin = -8.7965
  57.  n=12
  58.   
  59.  

В результате получим:

min =[ -1.0165, 0.0981]

fmin = -8.7965

n=12


 

А также другие работы, которые могут Вас заинтересовать

53343. Doing housework (Робота по дому) 143 KB
  How are you? Are you ready for the lesson? Please, mark your mood before starting our lesson. If you are fine, raise green cards. If you’re so-so, raise yellow cards. If you’re bad, raise red cards. (Учні підіймають свої картки відповідного кольору.) Cl: We are fine. We are ready for the lesson. Teacher: I am glad to hear you are fine. Today we are happy to have our English lesson in this classroom where you will do a lot of different tasks.
53344. Изготовление из бумаги макетов архитектурных сооружений. Творческий проект 351.5 KB
  Поэтому предлагаю выполнять полуобъемные макеты которые просты и удобны в изготовлении. Такие макеты удобны тем что их можно переносить и хранить в тетради в книге они не мнутся и хорошо складываются. Можно пофантазировать и готовые макеты скомпоновать между собой склеить. На уроках изобразительного искусства и художественной культуры можно выполнять подобные макеты нескольких видов разделив класс на группы.
53345. Сценарій спортивно – розважальної гри «Хрестики – Нулики» 91 KB
  Вчитель фізкультури у початкових класах Сценарій спортивно розважальної гри Хрестики Нулики Мета: розвивати у дітей рухові здібності увагу кмітливість уміння швидко реагувати на поставлені запитання і чітко давати відповідь; виховувати почуття дружби взаємоповаги та взаємо підтримки один за всіх всі за одного; зміцнювати здоровя дітей. Загальні відомості про гру Хрестикинуликиâ матеріал взято з Вкіпедії Хрестикинулики гра для двох гравців. Тому у хрестикинулики частіше всього грають малі діти. Існує 26 830 можливих...
53346. Історичне значення запровадження християнства 48.5 KB
  Історичне значення запровадження християнства Очікуванні результати: визначити історичні корені хрещення Київської Русі; визначити значення хрещення для історії держави та людства; розвивати вміння логічного мислення; порівнювати історичні факти; впроваджувати в практику щоденного життя моральноетичні і духовні цінності християнства; виховувати повагу до історичних постатей та православної віри. Тип уроку: комбінований Форма уроку: урокподорож Обладнання: відеофільм Хрещення Русі портрет В. Великий почав князювати Яку...
53347. Основні принципи будови та функціонування World Wide Web, протокол НТТР, адресація в мережі 395.5 KB
  Для учнів які мають уявлення про мову HTML: розшукати історичні відомості про мову НТМL. Але для того щоб створити Webсторінку необхідно знати мову гіпертекстової розмітки тобто HTML. Отже тема уроку: âСтворення структури HTML документа. На попередньому уроці учням було завдання відшукати історичну довідку про створення мови HTML.
53349. Берегиня вроди – хустка 219 KB
  Впродовж століть хустка була на Україні найдорожчим подарунком який уособлював для кожної людини рідну Україну рідний дім рідну матір. Де ж вона сьогодні щира українська хустка що її серед тисячі інших вирізняє щось невимовно рідне Де весела та барвиста хустка щедро оспівана в народних піснях та іграх Хочеться щоб вона сьогодні стала не просто модною деталлю на деякий час а одним з національних символівоберегів. І учениця: Українська хустка з давніхдавен це основний і улюблений головний убір української молодиці.