2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Шаг в методе Розенброка
Сообщение26.12.2012, 21:28 
Пытаюсь написать в matlab алгоритм поиска минимума функции методом Розенброка.
Формула для одной из координат новой точки:

$x_{j}^{k+1} = x_{j}^{k}+\alpha_{j}^{k} p_{j}^{k}$

Так и не смог найти конкретный способ получения $ \alpha$.
Где то пишут, что $\alpha$ подстраивается коэффициентами по ходу работы, а в другом источнике пишут, что нужно найти минимум функции $f(x_{j}^{k}+\alpha_{j}^{k} p_{j}^{k})$, но это совсем странно, потому что это уже задача многомерной оптимизации.
Как же вычислять $\alpha$?

 
 
 
 Re: Шаг в методе Розенброка
Сообщение27.12.2012, 01:46 
GMD в [url=http://dxdy.ru/post664171.html#p664171]сообщении #664171
[/url]
писал(а):
...в другом источнике пишут, что нужно найти минимум функции $f(x_{j}^{k}+\alpha_{j}^{k} p_{j}^{k})$, но это совсем странно, потому что это уже задача многомерной оптимизации...
Нет, это одномерная задача: нужно найти минимум вдоль вектора $(p_{j}^{k})$. Полученные значения $\alpha$ можно использовать для выбора следующей точки.
Фактически, особенно на начальных шагах поиска, точная 1-мерная минимизация и не нужна.

P.S. Может пригодиться:
- Метод Розенброка.docx
- Метод Розенброка

 
 
 
 Re: Шаг в методе Розенброка
Сообщение29.12.2012, 01:33 
Теперь я понял, почему это задача одномерной оптимизации - для каждого $x_{i}$ в векторе $p_{i}$ нужно выбрать только соответствующую компоненту, а остальные приравнять к нулю.

По крайней мере так моя программа стала находить решение правильно.

 
 
 [ Сообщений: 3 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group