|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : vitalie vrabie 2:469/303 21 Aug 2001 18:43:26 To : Taras Soroka Subject : сглаживание кривой -------------------------------------------------------------------------------- Replying to a message of Taras Soroka to Vitalie Vrabie: TS>>> до них, но все же недостаточно. Да и появляется ступенчатость. TS>>> Что посоветуете? vv>> могу изложить свой метод, но на общность он не претендует ни коим vv>> образом т.к сильно зависит от того какого вида кривую эти точки vv>> пытаются аппроксимировать. TS> Изложи, с удовольствием посмотрю. проблема в том, что задача у меня стояла несколько иная: не "сгладить", а "получить эмпирическую формулу на основе экспериментальных данных". но всё равно погляди, может выудишь что-то полезное для своей задачи. самое главное (оно же и самое слабое) место метода - аналитически написать общий случай функции, которую, на твой взгляд, эти точки пытаются аппроксимировать. далее, для наглядности изложения, поясню на примере экспоненциальной функции. в общем случае, функцию из примера можно описать как f(x) = a1*exp(a2*x)+a3 <обозначения> n - кол-во точек x[i], y[i] - координаты точек (i=1..n) </обозначения> далее, надо найти такой вектор v=(a1,a2,a3), чтобы минимизировалась сумма s(v) = abs(y[1] - f(x[1])) + ... + abs(y[n] - f(x[n])) s(v) берётся в качестве фитнесс-функции, минимизирующий вектор находится генетическим алгоритмом. вот, собственно, и всё. остальные подробности и способы оптимизации сходимости зависят от специфики задачи. - - - естественно, искомая функция у тебя может быть совершенно другая и зависеть от другого кол-ва коэффициентов. но в целом идея та же - описываем аналитически, затем генетикой подбираем коэффы. в зависимости от задачи, можно точкам веса присвоить (например, чем давнее был эксперимент, тем меньше вес его результата). соответственно будет меняться и формула для s(v). если не все точки подгоняются под одну функцию - дробим и рассматриваем по отдельности. но тут надо подумать и о сглаживании стыка (такой проблемы у меня не было, следовательно не думал). sayonara, vv http://vv.os2.dhs.org --- * Origin: yet another random origin (2:469/303) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/18373b82abce.html, оценка из 5, голосов 10
|