Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Метод вращающихся координат (метод Розенброка)

Читайте также:
  1. A. Методы измерения мертвого времени
  2. HR– менеджмент: технологии, функции и методы работы
  3. I метод.
  4. I. 2. 1. Марксистско-ленинская философия - методологическая основа научной психологии
  5. I. 2.4. Принципы и методы исследования современной психологии
  6. I. Анализ методической структуры и содержания урока
  7. I. Методические указания к изучению курса

Суть метода Розенброка [Rosenbrock H.H.] состоит в следующем. Задается начальная точка. Из нее осуществляется итеративный поиск направления убыва­ния функции с помощью изменяемых дискретных шагов вдоль линейно неза­висимых и ортогональных направлений. В случае удачного шага в исследуемом направлении его значение на следующей итерации увеличивается с помощью коэффициента растяжения, а в случае неудачи уменьшается за счет умножения на коэффициент сжатия (при этом направление поиска изменяется на противо­положное). Поиск в системе текущих направлений проводится до тех пор, пока все возможности уменьшения функции не будут исчерпаны. Если по каждому направлению поиска имеет место неудача, строится новое множество линейно независимых и ортогональных направлений и циклический поиск по отдельным направлениям продолжается. Новые направления поворачиваются по отношению к предыдущим так, что они оказываются вытянутыми вдоль оврага (рис. 3.7).

Рисунок 3.7

 

Алгоритм:

Шаг 1. Задать начальную точку число для остановки алгоритма, коэффициенты растяжения и сжатия , в качестве начальных ли­нейно независимых и ортогональных направлений выбрать коорди­натные направления:

начальную длину шага вдоль каждого из направлений поиска ; - максимальное число неудачных серий шагов по всем направлениям на одной итерации. Положить для всех .

Шаг 2. Сделать шаг по -тому направлению:

а) если , шаг считается удачным. В этом случае следует положить , и перейти к шагу 3;

б) если , шаг считается удачным. В этом случае следует положить , и перейти к шагу 3;

Шаг 3. Проверить выполнение условий:

а) если , то положить и перейти к шагу 2 (сделать шаги по оставшимся направлениям);

б) если , проверить успешность поиска по текущим ортогональным направлениям:

§ Если , то есть хотя бы один спуск по направлению на шаге 2 был успешным, положить и перейти к шагу 2;

§ Если , то есть каждый из текущих шагов был неудачным, оценить успешность поиска на текущей итерации:

-- если , то есть на -той итерации хотя бы один шаг удачный, перейти к шагу 4;

-- если , то есть не было ни одного удачного шага на -той итерации, процесс поиска приостановить. Если число последовательно неудач­ных серий шагов по всем направлениям на текущей итерации не превышает , проверить условие окончания, а иначе перейти к шагу 4. Проверяются величины , использованные во время последней серии шагов. Если для всех , то

найдено приближенное решение задачи: . Если хотя бы для од­ного , то положить и перейти к шагу 2.

Шаг 4. Положить и проверить условие окончания

а) если , то поиск завершить: ;

б) если , вычислить длины шагов по каждому направлению поиска на -той итерации из соотношения . Далее построить новый набор линейно независимых и взаимно ортогональных направлений поиска с помощью процедуры Грама-Шмидта:

.

После нахождения новых направлений следует положить: для всех , , и перейти к шагу 2.

 

Замечание: Розенброк рекомендовал следующие коэффициенты растяжения и сжатия: , .

 

Пример: Методом вращающихся координат (методом Розенброка) найти локальный минимум функции

Решение:

1. Зададим начальную точку , , , . Пусть .

20. Т.к. , шаг неудачен: .

30. Т.к. i = 1 < 2 = n, то i = i + 1 = 2 и переходим к шагу 2.

21. Т.к. то шаг неудачен: .

31. Имеем i = 2 = n, , выполнена одна неудачная серия шагов: i = 1 < N = 3. На этой серии поэтому положим и перейдем к шагу 2.

22. Т.к. , шаг удачен: .

32. Имеем i = 2 = n, . Положим и перейдем к шагу 2.

24. Т.к. , шаг удачен: .

34. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

25. Т.к. то шаг удачен:

.

35. Имеем i = 2 = n, . Положим и перейдем к шагу 2.

26. Т.к. , шаг удачен: .

36. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

27. Т.к. то шаг удачен:

.

37. Имеем i = 2 = n, . Положим и перейдем к шагу 2.

28. Т.к. , шаг неудачен: .

38. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

29. Т.к. то шаг неудачен:

.

39. Имеем i = 2 = n, . Т.к. выполняется условие , переходим к шагу 4.

40. Положим .

Т.к. , то вычислим из соотношения . Отсюда .

Построим новый набор направлений поиска:

Положим и перейдем к шагу 2.

210.Т.к. , шаг удачен: .

310. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

211. Т.к. то шаг удачен:

.

311. Имеем i = 2 = n, . Положим и перейдем к шагу 2.

212. Т.к. , шаг неудачен: .

312. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

213. Т.к. то шаг удачен:

.

313. Имеем i = 2 = n, . Положим и перейдем к шагу 2.

214. Т.к. , шаг неудачен: .

314. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

215. Т.к. то шаг неудачен:

.

315. Имеем i = 2 = n, . Т.к. выполняется условие , переходим к шагу 4.

41. Положим .

Т.к. , то вычислим из соотношения . Отсюда .

Построим новый набор направлений поиска:

Положим и перейдем к шагу 2.

216. Т.к. , шаг неудачен: .

316. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

217. Т.к. то шаг неудачен:

.

317. Имеем i = 2 = n, , выполнена одна неудачная серия шагов: i = 1 < N = 3. На этой серии поэтому положим и перейдем к шагу 2.

218.Т.к. , шаг удачен: .

318. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

219. Т.к. то шаг удачен:

.

319. Имеем i = 2 = n, . Положим и перейдем к шагу 2.

220. Т.к. , шаг неудачен: .

320. Имеем i = 1 < 2 = n, поэтому i = i + 1 = 2 и переходим к шагу 2.

221. Т.к. то шаг неудачен:

.

321. Имеем i = 2 = n, . Т.к. выполняется условие , переходим к шагу 4.

42. Положим .

Т.к. , то процесс поиска завершается:


Дата добавления: 2015-07-20; просмотров: 914 | Нарушение авторских прав


Читайте в этой же книге: Общие принципы методов поиска безусловного экстремума | Метод конфигураций (метод Хука - Дживса) | Методы первого порядка | Метод градиентного спуска с постоянным шагом | Метод наискорейшего градиентного спуска (Метод Коши) | Метод Гаусса - Зейделя | Метод Ньютона | Метод Ньютона - Рафсона | Метод Марквардта | Пример отчета по лабораторной работе |
<== предыдущая страница | следующая страница ==>
Метод деформируемого многогранника| Метод сопряженных направлений (метод Пауэлла)

mybiblioteka.su - 2015-2024 год. (0.022 сек.)