![]() |
|
|
![]()
|
|
| Alex1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 299 Регистрация: 6.3.2005 Где: Киев Репутация: нет Всего: 2 |
Нееобходимо найти уравнение прямой проходящей через точки в четирех мерном пространсве
f(x1,x2,x3)=а1*х1+а2*х1+а3*х1+а4 Найти а1,а2,а3,а4 ? Заданы координаты точки (i) x1(i) x2(i) x3(i) и значение функции в этой точке F(i) |
|||
|
||||
| Fin |
|
|||
![]() Дракон->Спать(); ![]() ![]() Профиль Группа: Участник Сообщений: 687 Регистрация: 4.1.2006 Репутация: 1 Всего: 10 |
Одно из решений a1=0; a2=0; a3=0; a4=f(i) С математической точки зрения такая система не имеет решения. -------------------- Пролетал мимо. |
|||
|
||||
| Alex1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 299 Регистрация: 6.3.2005 Где: Киев Репутация: нет Всего: 2 |
Точек не одна, а много. Черезе точки прямая проводиться без проблем, через три, уже не очень гладко, а через десять?
http://www.exponenta.ru/educat/systemat/tarasevich/3_3_1.asp идна переменная, а нужно болтьше двух |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: нет Всего: 260 |
||||
|
||||
| Alex1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 299 Регистрация: 6.3.2005 Где: Киев Репутация: нет Всего: 2 |
Приметр задачи, нужно постоить прямую, проходящую через комнату (комната в одном конце отапливаемая), по которой (средняя температура в окресности точки пространсва) темепратура будет меняться линейно. Тоесть вектор изменения температуры в комнате
Добавлено @ 23:22 Известны координаты точки измерения, и температура в ней, точек много и не находяться на одной прямой. Теость через облако точек нужно провести прямую, растояние от которой были бы минимальными до всех точек, четвертым критерием служит само значерие функции. http://www.exponenta.ru/educat/systemat/tarasevich/3_3_1.asp вот одна переменная и значение функции (к примеру, описать и решить задачу могу), а нужно три переменных и значение функции. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Аппроксимация на прямую. Например по методу наименьших квадратов.
PS. Предвидя - количество размерностей значения не имеет. -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Alex1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 299 Регистрация: 6.3.2005 Где: Киев Репутация: нет Всего: 2 |
да, но в предыдущем топике никто не сказал ничего толкового
|
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
в предыдущем топике был предложен алгоритм до его полной реализации не дошло всё остановилось на фразе "не работает" без объяснений -------------------- qqq |
|||
|
||||
| Aloha |
|
|||
|
. ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 351 Регистрация: 14.5.2006 Репутация: 4 Всего: 165 |
Alex1984
Давай на минуту немного упростим задачу. А именно, предположим, что наша комната двумерна. Тогда распределение температуры в нашей двумерной комнате T(x,y) есть поверхность (в 3-х мерном пространстве). Известно, что существуют поверхности (назовем их экзотическими), имеющие прямолинейную образующую, например конус, цилиндр (эллиптический, гиперболический, параболический), однополостной гиперболоид, гиперболический параболоид (последние две поверхности имеют по два семейства прямолинейных образующих). Очевидно, что в таких случаях рассматриваемая задача будет иметь множество точных решений (по прямолинейной образующей температура и будет меняться линейно). (Перечисляя поверхности, имеющие прямолинейную образующую я забыл сказать про плоскость). Предположим теперь, что точки T(x,y) разбросаны случайным образом, но с малой дисперсией относительно экзотической поверхности. Метод наименьших квадратов вернет коэффициенты некоей прямой, но вопрос какой. Я это к тому, что задача, по-видимому, требует уточнения. (Например, какому условию удовлетворяет изменение температуры вдоль искомой прямой: изменение максимально, минимально, либо температура вдоль прямой в среднем постоянна). Это сообщение отредактировал(а) Aloha - 29.5.2006, 14:27 |
|||
|
||||
| Alex1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 299 Регистрация: 6.3.2005 Где: Киев Репутация: нет Всего: 2 |
maxim1000, вроде получилось найти решение, в маткаде заработало, выложу файл плзже, так как не дома сейчас.
Вы были правы, но не получилось тогда. Принцип МНК реализовал постороением системы уравнений, каждое из которых частные производные по каждой переменной. Напишу работающую прогу на Паскалу, в соответствующем топике представлю к обозрению |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Alex1984, я с тебя фигею... какие к дьяволу частные производные??? тупейшая система из 4 линейных уравнений...
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 7 Всего: 183 |
Akina, это же задача на минимизацию, так что формально эти уравнения действительно получаются из приравнивания частных производных нулю. Только для линейного случая это уже столько раз написано, что никто и не вспоминает...
-------------------- ... |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
НЕТ, НЕТ И ЕЩЕ РАЗ НЕТ. Это не абстрактный алгоритм минимизации, а МЕТОД НАИМЕНЬШИХ КВАДРАТОВ. Уравнение, на которое выполняется аппроксимация - ЛИНЕЙНОЕ ОТНОСИТЕЛЬНО ВСЕХ АРГУМЕНТОВ. Резюме - производные НЕ ТРЕБУЮТСЯ. Как выглядит решение? рассказываю. Имеется уравнение аппроксимации: F = A*X + B*Y + C*Z + D Имеется набор экспериментальных значений Xi, Yi, Zi, Fi При верных значениях коэффициентов A, B, C, D значение выражения S = Sum( (A*X + B*Y + C*Z + D - F)^2 ) минимально. То есть изменение любого из коэффициентов A, B, C, D приведет к увеличению этой суммы. Следовательно производная этой суммы по любому коэффициенту равна нулю: dS / dA = 0 dS / dB = 0 dS / dC = 0 dS / dD = 0 Посмотрим что они есть аналитически. Например первое dS / dA = d( Sum( (A*X + B*Y + C*Z + D - F)^2 ) ) / dA = 2 * ( Sum( (A*X + B*Y + C*Z + D - F)^2 ) ) * ( d( Sum(A*X + B*Y + C*Z + D - F) ) / dA ) = 2 * ( Sum(A*X + B*Y + C*Z + D - F) * X) = 2 * ( Sum(A*X^2) + Sum(B*X*Y) + Sum(C*X*Z) + Sum(D*X) - Sum(F*X) ) = 2 * ( A*Sum(X^2) + B*Sum(B*X*Y) + C*Sum(X*Z) + D*Sum(X) - Sum(F*X) ) = 0 Убираем двойку (если 2*N=0, то N=0 - очевидно): A*Sum(X^2) + B*Sum(X*Y) + C*Sum(X*Z) + D*Sum(X) = Sum(F*X) Аналогично: A*Sum(X*Y) + B*Sum(Y^2) + C*Sum(Y*Z) + D*Sum(Y) = Sum(F*Y) A*Sum(X*Z) + B*Sum(Y*Z) + C*Sum(Z^2) + D*Sum(Z) = Sum(F*Z) A*Sum(X) + B*Sum(Y) + C*Sum(Z) + D*Sum(1) = Sum(F) Sum(1) в последнем уравнении равно N - числу экспериментальных точек. Подсчитать суммы для заданного набора экспериментальных точек - дело плевейшее. А после подсчета и подстановки получаем линейную систему из 4 уравнений с 4 неизвестными A, B, C, D которую можно решать любым доступным способом. Вот и все, собсно... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 7 Всего: 183 |
Кто же спорит, так все и есть. Только:
Производная по одному из параметров и есть частная производная. И задача эта - на минимизацию функции 4 параметров (у тебя - S). Точно так же решается задача, когда искомая функция является не прямой, а параболой или другой полиномиальной кривой, только коэффициентов и уравнений будет больше. -------------------- ... |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 20 Всего: 454 |
Earnest, речь о том что зависимость - линейная, следовательно вместо численного подсчета частных производных надо посидеть 5 минут с карандашом в руке и получить аналитическое решение системы.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
минимизируемая зависимость квадратичная
а где писалось, что частные производные определялись численными методами? -------------------- qqq |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 7 Всего: 183 |
maxim1000 ответил за меня.
Подписываюсь. Добавлено @ 11:18 Только В данном контексте обычно говорят об исходной зависимости, и имеется в виду ее линейность по параметрам, а не по координатам. -------------------- ... |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
но ведь не её частные производные обсуждаются -------------------- qqq |
|||
|
||||
| Aloha |
|
|||
|
. ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 351 Регистрация: 14.5.2006 Репутация: 4 Всего: 165 |
В топике Alex1984 формулировал условие задачи следующим образом:
из чего следует, что нужно получить уравнение прямой, удовлетворяющей каким-то условиям. y = a*x + b есть уравнение прямой в двумерном пространстве. z = a*x + b*y + c есть уравнение плоскости (а не прямой) в трехмерном пространстве (т.е. фактически двумерное подпространство, базис которого может быть выражен через коэффициенты a, b, c). Если, используя МНК-метод, мы найдем в результате коэффициенты уравнения: T = a*x + b*y + c*z + d то мы фактически получим описание трехмерного подпространства исходного 4-х мерного пространства T, x, y, z. Остается лишь решить, какую конкретную прямую в нем выбрать. Математика МНК-метода в случае линейной модели достаточно простая (ее подробно изложил Akina). В любом случае все сведется к решению системы линейных уравнений. Мне кажется вопрос не в том, как получить результат с помощью МНК-метода, а в том, как потом полученные результаты интерпретировать. Это сообщение отредактировал(а) Aloha - 31.5.2006, 00:39 |
|||
|
||||
| maxim1000 |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 3334 Регистрация: 11.1.2003 Где: Киев Репутация: 33 Всего: 110 |
я, когда прочитал, автоматически подумал на линейную (афинную) функцию если всё же нужна прямая, то вряд ли вообще каким-нибудь методом можно ней приблизить функцию трёх переменных (которая выдаёт поверхность в 4-мерном пространстве) с каким-нибудь приемлимым качеством... если трёхмерная функция от одной переменной - тогда да, прямой можно, а так... подозреваю, подразумевалась трёхмерная плоскость... -------------------- qqq |
|||
|
||||
| Alex1984 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 299 Регистрация: 6.3.2005 Где: Киев Репутация: нет Всего: 2 |
Получилось, не могу пока программу вывесиить так как не дома захожу в инет
|
|||
|
||||
![]()
|
| Правила форума "Алгоритмы" | |
|
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
| 1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Алгоритмы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |