Форум: "Основная";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];
ВнизПоиск решения в многомерном пространстве Найти похожие ветки
← →
wild_arg © (2004-06-22 10:17) [0]Есть 5-ти мерная матрица. По заданным пяти координатам находится значение соответствующей ячейки матрицы. По каждой координате дискретность разбиения различна.
A[18,30,0.5,10,3] = v1
A[18,30,0.5,10,5] = v2
....
Для первой координаты возможные значения: 18, 20, 22 .
Для второй : 30, 50, 100, 120, 150 .
Для третьей : 0.5, 1, 1.5, 2, 2.5 .
Для четвертой : 10, 20 .
Для пятой : 3, 5, 10, 15, 20, 25, 30 .
И вот, типа, забита вся эта матрица (размерностью 3 х 5 х 5 х 2 х 7) значениями v1, v2, ..., vN
Задача такая: Необходимо найти Vx, при любых значениях пяти координат. Например A[19, 99, 1.1, 13, 18] - ?
Поможите, кто чем может.
← →
Думкин © (2004-06-22 10:19) [1]А в чем проблема?
← →
wild_arg © (2004-06-22 10:23) [2]Напиши формулу
← →
Romkin © (2004-06-22 10:25) [3]Формулу чего? Тебе ближайшую ячейку найти надо или интерполяцию сделать?
Если интерполяцию, то по задаче смотреть надо :)
← →
wild_arg © (2004-06-22 10:29) [4]Апроксимацию мне надо. А вот как по задаче смотреть я чего-то вообще понять не могу. Задачу я вроде описал.
Дайте совет какой-нить. Голова уже пухнет
← →
Romkin © (2004-06-22 10:38) [5]Это не задача. Для интерполяции и тем более аппроксимации должен быть задан вид функции. В первом приближении можно делать линейную интерполяцию ближайших узлов :)
← →
Думкин © (2004-06-22 10:38) [6]http://www.mstu.edu.ru/publish/conf/11ntk/section5/section5_2.html
← →
wild_arg © (2004-06-22 10:40) [7]2Romkin Точно, точно - не напомнишь мне случайно как там чё?
← →
begin...end © (2004-06-22 10:48) [8]Y = Y1 + (X - X1) * (Y2 - Y1) / (X2 - X1)
← →
YurikGL © (2004-06-22 10:50) [9]
> begin...end © (22.06.04 10:48) [8]
Нее.. Здесь нужно с помощью МНК линию притянуть. Для начала попробовать прямую, если средняя квадратичная ошибка будет велика, то sin пользовать.
А потом с помощью построенной функции хоть аппроксимацию, хоть интерполяцию, хоть что можно сделать.
← →
begin...end © (2004-06-22 10:53) [10]
> [9] YurikGL © (22.06.04 10:50)
Ну это был просто ответ на [7]
← →
YurikGL © (2004-06-22 11:01) [11]
> Для интерполяции и тем более аппроксимации должен быть задан
> вид функции.
Не факт, есть, например, метод скользящего среднего...
← →
Romkin © (2004-06-22 11:18) [12]YurikGL © (22.06.04 11:01) [11] Это тоже неявная аппроксимация :))
YurikGL © (22.06.04 10:50) [9] А лучше сразу литанию какую-нить прочитать, если ошибка большая :))))
← →
Romkin © (2004-06-22 11:18) [13]YurikGL © (22.06.04 11:01) [11] Это тоже неявная аппроксимация :))
YurikGL © (22.06.04 10:50) [9] А лучше сразу литанию какую-нить прочитать, если ошибка большая :))))
← →
Igorek © (2004-06-22 11:34) [14]Если я правильно понял задачу - есть матрица, в которую можно забить (3 х 5 х 5 х 2 х 7)=1050 5-мерных векторов (или точек). Надо по даной точке найти к ней ближайшую. Если так, то:
1) надо отсортировать матрицу по всем измерениям (или добавить индекс)
2) по даной точке найти ближайших соседей сверху и снизу по каждому измерению
3) из этих точек найти ближайшую (по какой угодно метрике)
← →
Igorek © (2004-06-22 11:54) [15]Упс. Глупость написал. Но идея вроде правильная.
← →
MBo © (2004-06-22 12:16) [16]пенталинейная интерполяция (32 слагаемых):
1. Находим ячейку, в которую попадает точка - ее индексы i1,i2,i3,i4,i5
2. Находим параметрические координаты точки в ячейке:
t1=(x1-x1[i1])/(x1[i1+1]=x1[i1]) и т.д., где x1 - координата по 1-му измерению
3. Вычисляем Value(t1,t2,t3,t4,t5)=A[i1,i2,i3,i4,i5]*(1-t1)*(1-t2)*(1-t3)*(1-t4)*(1-t5)+A[i1+1,i2,i3,i4,i5]*t1*(1-t2)*(1-t3)*(1-t4)*( 1-t5)+...+A[i1+1,i2+1,i3+1,i4+1,i5
+1]*t1*t2*t3*t4*t5
наглядный пример для 2-х измерений:
A00 A01
P(u,v)
A10 A11
U---------->
V
|
|
|
v
Value(p)=A[0,0]*(1-u)(1-v)+A[0,1]*u*(1-v)+A[1,0]*(1-u)*v+A[1,1]*u*v
← →
wild_arg © (2004-06-22 12:21) [17]надо найти не ближайшее существующее, а приближенное - соответствующее законам распределения в заданной матрице
← →
wild_arg © (2004-06-22 12:25) [18]MBo - человеческое спасибо.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.07.04;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.032 c