реклама на сайте
подробности

 
 
> Нахождение максимальной суммы разностей модулей соседних значений вектора, Несколько векторов нужно сложить для максимизации искомой суммы
getch
сообщение Sep 12 2012, 23:06
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 117
Регистрация: 6-09-10
Пользователь №: 59 335



Приветствую всех!

На данном форуме мне очень здорово когда-то помогли в решении некоторых задач. Поэтому решил еще раз обратиться к уважаемому сообществу с просьбой дать дельный совет/рекомендации, как подступиться к решению такой задачи:

Определена такая функция для любого вектора: F(V) = Sum(Abs(V[j] - V[j + 1])) , либо F(V) = Sum((V[j] - V[j + 1])^2))
Даны одинаковой размерности вектора V1, V2, ..., Vn, у каждого из которых сумма его элементов равна нулю.

Нужно найти вектор NewV = K1 * V1 + K2 * V2 + ... + Kn * Vn, где Sum(Abs(Ki)) = 1, либо Sum(Ki^2) = 1
значение F(NewV) которого было бы максимальным.

У меня есть гипотеза, что всегда верно неравенство F(NewV) <= max(F(V1), F(V1), ...., F(Vn)), т.е. решением задачи является вектор коэффициентов, где один элемент равен ±единице, а остальные - нули.

Возможно, кому-то известно решение схожей или частного случая этой задачи. Спасибо.

Сообщение отредактировал getch - Sep 13 2012, 07:35
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Oldring
сообщение Sep 19 2012, 11:10
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 041
Регистрация: 10-01-05
Из: Москва
Пользователь №: 1 874



Цитата(getch @ Sep 13 2012, 03:06) *


Гуглите понятие "induced matrix norm".
Dixi.


--------------------
Пишите в личку.
Go to the top of the page
 
+Quote Post
getch
сообщение Sep 19 2012, 15:13
Сообщение #3


Частый гость
**

Группа: Участник
Сообщений: 117
Регистрация: 6-09-10
Пользователь №: 59 335



Цитата(Oldring @ Sep 19 2012, 15:10) *
Гуглите понятие "induced matrix norm".
Dixi.

Спасибо, посмотрел книгу. Срезюмировав:


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

Но как приведенные выше свойства индуцированной матричной нормы помогут решить задачу?

Я запомнил данный Вами замечательный итерационный алгоритм нахождения собственного вектора, соответствующего максимальному собственному значению матрицы. Поэтому данная ранее перефломулировка задачи через матрицу A = V'*V - V'*(S*V) -(S*V)'*V + (S*V)'*(S*V) видится наиболее оптимальной на данный момент.
Go to the top of the page
 
+Quote Post
iiv
сообщение Oct 5 2012, 17:51
Сообщение #4


вопрошающий
*****

Группа: Свой
Сообщений: 1 726
Регистрация: 24-01-11
Пользователь №: 62 436



Цитата(getch @ Sep 19 2012, 21:13) *
Поэтому данная ранее перефломулировка задачи через матрицу A = V'*V - V'*(S*V) -(S*V)'*V + (S*V)'*(S*V) видится наиболее оптимальной на данный момент.


правильно, а дополнительно, хочу сказать как обычно решают задачу поиска максимального собственного значения у такой матрицы:

1. матрица маленькая - эдак до 100 строк/столбцов. Влоб ее вычислить, вызвать лапак, радоваться.
2. матрица средних размеров примерно до 5000 строк/столбцов. Влоб ее посчитать, дальше либо методом простой итерации, либо методом Ланцоша посчитать ее максимальное собственнное значение и соответствующий вектор.
3. матрица больших размеров (вся в память не влезет). В этом случае, скорее всего Вы как-то можете сохранить V, и можно программно реализовать умножение матрицы в форме A = V'*V - V'*(S*V) -(S*V)'*V + (S*V)'*(S*V) на вектор без вычисления A. В этом случае, достаточно методом Ланцоша получить искомый собственный вектор.

Про Ланцоша в Википедии понятно написано.
Про лапак - на http://www.netlib.org/lapack

если что не понятно, спрашивайте, постораюсь помочь.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- getch   Нахождение максимальной суммы разностей модулей соседних значений вектора   Sep 12 2012, 23:06
- - DRUID3   ЦитатаK1 * V1 это векторные произведения?   Sep 12 2012, 23:30
- - getch   Цитата(DRUID3 @ Sep 13 2012, 03:30) это в...   Sep 12 2012, 23:55
- - DRUID3   Цитата(getch @ Sep 13 2012, 02:06) Нужно ...   Sep 13 2012, 07:54
|- - getch   Цитата(DRUID3 @ Sep 13 2012, 11:54) Слова...   Sep 13 2012, 08:20
- - DRUID3   А какая разница? Вот у Вас целевая функция. Вот ве...   Sep 13 2012, 20:38
- - getch   Понимаю, что решение в лоб всегда существует. В ло...   Sep 13 2012, 21:10
- - DRUID3   Цитата...у каждого из которых сумма его элементов ...   Sep 13 2012, 21:47
- - getch   Да, вектора относительно удобные для мат. аппарата...   Sep 13 2012, 22:09
|- - alex_os   Цитата(getch @ Sep 14 2012, 02:09) Нужно ...   Sep 14 2012, 04:52
|- - getch   Цитата(alex_os @ Sep 14 2012, 08:52) Може...   Sep 14 2012, 16:22
|- - getch   Цитата(getch @ Sep 14 2012, 20:22) Подска...   Sep 14 2012, 19:19
|- - fontp   QUOTE (getch @ Sep 14 2012, 23:19) Если п...   Sep 15 2012, 09:59
||- - getch   Цитата(fontp @ Sep 15 2012, 13:59) Нет. А...   Sep 18 2012, 06:14
||- - fontp   QUOTE (getch @ Sep 18 2012, 09:14) Выходи...   Sep 18 2012, 08:05
|- - fontp   Если нужен циклический сдвиг, то матрицу можно пол...   Sep 15 2012, 09:59


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 31st July 2025 - 12:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01409 секунд с 7
ELECTRONIX ©2004-2016