2014 dxdy logo

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

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


Правила форума


В этом разделе нельзя создавать новые темы.

Если Вы хотите задать новый вопрос, то не дописывайте его в существующую тему, а создайте новую в корневом разделе "Помогите решить/разобраться (М)".

Если Вы зададите новый вопрос в существующей теме, то в случае нарушения оформления или других правил форума Ваше сообщение и все ответы на него могут быть удалены без предупреждения.

Не ищите на этом форуме халяву, правила запрещают участникам публиковать готовые решения стандартных учебных задач. Автор вопроса обязан привести свои попытки решения и указать конкретные затруднения.

Обязательно просмотрите тему Правила данного раздела, иначе Ваша тема может быть удалена или перемещена в Карантин, а Вы так и не узнаете, почему.



Начать новую тему Ответить на тему
 
 Решение матричного уравнения для ковариационной матрицы
Сообщение25.09.2013, 19:00 


25/09/13
4
С использованием линейной теории возмущений получено
следующее уравнение для ковариационной матрицы $C$:
$A C A^T = G$

Особенности:
1) A - разреженная невырожденная матрица высокой размерности (порядка $10^6$);
2) G - полная матрица с выраженной диагональной частью.
3) Решение $C$ желательно найти в виде $C = \sum c_i_jx_ix_j^T$ (для удобства хранения и выполнения операции обращения).

Может ли кто-нибудь дать ссылку на работы в которых решалась подобная задача?

 Профиль  
                  
 
 Re: Решение матричного уравнения для ковариационной матрицы
Сообщение26.09.2013, 14:25 
Аватара пользователя


08/01/13
246
С.Писсанецки. Технология разреженных матриц (1988)

Эстербю О., Златев З. (Osterby, Zlatev). Прямые методы для разреженных матриц

http://bookfi.org/s/?q=%D1%80%D0%B0%D0% ... %D1%8B&t=0

 Профиль  
                  
 
 Re: Решение матричного уравнения для ковариационной матрицы
Сообщение26.09.2013, 16:31 


25/09/13
4
Благодарю за высланные Вами ссылки по работе с разреженными матрицами.
У меня остался ещё один вопрос. Сейчас я рассматриваю два способа решения уравнения $ACA^T=G$.
1. Посредством разложения матрицы $A$ в сумму проекторов на её собственные подпространства.
Этот подход потребует расчёта собственных векторов $A$.
2. Посредством разложения матрицы $G$ в сумму $\sum p_i q_j^T$ и последующего решения уравнений $Ax=p_i, Ay=q_j$. Тогда решение матрицы $C$ получим в виде $C=\sum x_i y_j^T$.

На мой взгляд подход №2 потребует меньших вычислительных затрат, так как задача нахождения собственных векторов более трудоёмка, чем задача о решении нескольких уравнений вида $Ax=f$. Некоторые сомнения возникают из-за вида матрицы $G$, которая плохо раскладывается в ряд $\sum p_i q_j^T$ из-за ярко выраженной диагональной части. Понятно, что окончательный ответ на вопрос об эффективности можно дать лишь проведя исследования скорости сходимости обоих методов для конкретной задачи.

Мой вопрос заключается в следующем: существуют ли более эффективные подходы для решения уравнения $ACA^T=G$ чем №1,2 и где можно найти их описание?

 Профиль  
                  
 
 Re: Решение матричного уравнения для ковариационной матрицы
Сообщение26.09.2013, 16:53 
Аватара пользователя


08/01/13
246
Существуют готовые алгоритмы для решения подобных задач на С++, FORTRAN. Сам когда-то решал задачу на собственные значения. Но у Вас "хорошее" число $10^{6}$. Это прямые методы. Воспользуйтесь "подготовкой", приведите к "удобному" виду: ленточной, треугольной, симметричной матрице. Для этого тоже есть готовые алгоритмы. На чем считать собираетесь ? Какой-нибудь мейнфрейм ? Имейте в виду, что в этих процедурах
матрицы хранятся в виде одномерных векторов, для ускорения доступа к памяти. Этот
момент часто оказывается "ловушкой" для программиста.

 Профиль  
                  
 
 Re: Решение матричного уравнения для ковариационной матрицы
Сообщение27.09.2013, 23:56 


25/09/13
4
Спасибо за совет. Собираемся одну задачу решить в качестве примера с использованием библиотеки scipy python.
Но моя главная цель состоит в написании отчета, в котором в частности фигурирует та задача, о решении которой я спрашиваю. Мне необходимо сформулировать возможные способы её решения и отметить наиболее эффективные из них.
При этом алгоритмы решения задач на собственные значения и СЛАУ считаются уже реализованными.

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 5 ] 

Модераторы: Модераторы Математики, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group