C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Алгоритм Левенберга-Макардта (Levenber-Marquardt)), Где взять толковое описание с примерами?
westpine
Отправлено: 02.09.2004, 21:56


Ученик-кочегар

Группа: Участник
Сообщений: 6



Всем привет. Подскажите где вязть толковое описание алгоритма фиттинга Левенберга — Макардта, желательно с примерами программ. Заранее спасибо.
klen
Отправлено: 03.09.2004, 00:20


Машинист паровоза

Группа: Участник
Сообщений: 239



А по русски можно обьяснит, я математик, а слово такое "фиттинг" не знаю, и перцев таких тоже, про че речь то, мож мы тебе лучше алгоритм построим.
westpine
Отправлено: 03.09.2004, 00:38


Ученик-кочегар

Группа: Участник
Сообщений: 6



С удовольствием!! Дело в том, что я сам не знаю как правльно слово фиттинг перевести smile.gif) А в реальности этот процесс следующий... Есть множество точек которые характеризуют некий процесс. Все они полученны опытным путем. Теория же описывает этот процесс некой формулой в которой есть несколько неопределенных коэфицентов. И вот этот алгоритм Levenberg-Marquardt (за привильность прочтения второй фамилии не ручаюсь) позволяет подогнать эти коэфиценты в теор. формуле исходя из опытных данных. По аглицки это завучит как fitting. На родине же я с этим вообще не сталкивался, поэтому увы, не могу сказать как это по-русски.
klen
Отправлено: 03.09.2004, 09:13


Машинист паровоза

Группа: Участник
Сообщений: 239



Если я правильно понял:
1. Есть модель поведения процесса заданная параметрически()
2. Есть вектор описывающий реализацию процесса.
3. Задача сомтоит в отыскании параметров процесса.

а) если процесс детерминированный то достаточно решить систему из N уравнений, где N — число неизвестных параметров.
б) если процесс случайный, и известна его статистика, то можно
1) Использовать расширенный фильтр калмана(ессеесено построенный на базе модели процесса), кторый построит процесс между узлами экстропаляции. Если процесс не гауссовский то вас ждут проблемы, которые впрочем решаются вычислительной мощью мегакомпьюторов.
2) Использовать опятже систему уравнений но переопределенную.
Оба последних алгоритма дадут оптимальные оценки по критерию минимума квадрата средней ошибки. (В теории должны дать одни и теже значения smile.gif оценок) Если число эксперементальных данных (узлов) менще чем параметров модели то задача не решается(вернее всего получится бесконечное множество решений)

Если вам важно посчитать модель процесса по эксперементальной выборке — я вам помогу, это как два пальца обассать. А если именно по методу этих двух херов которые Вами указаны выше — я сдаюсь, в глаза такого метода аппроксимации(?) не видел.

Отредактировано klen — 03/09/2004, 10:26
joynter
Отправлено: 03.09.2004, 11:07


Станционный диспетчер

Группа: Участник
Сообщений: 137



Левенберга-Маркара алгоритм
Метод Левенберга-Маркара — это улучшение классического метода Гаусса-Ньютона для решения задач нелинейной регрессии наименьших квадратов. Он детально обсуждается в Morй (1977). Этот метод рекомендуется для задач нелинейной регрессии наименьших квадратов, где он является более эффективным, чем большинство общих алгоритмов оптимизации (таких как Квази-Ньютоновский алгоритм или Симплекс метод; см. также Нелинейное оценивание для обсуждения других методов нелинейного оценивания/регрессии).

далее не печатное

Отредактировано joynter — 03/09/2004, 12:26
joynter
Отправлено: 03.09.2004, 11:25


Станционный диспетчер

Группа: Участник
Сообщений: 137



---

Присоединить изображение

Присоединить изображение


Вернуться в Вопросы программирования в C++Builder