Перейти к содержанию
    

Сложение сигналов в самый "узкий"

Есть.

Если у нас N отсортированных по возрастанию изломов слагаемых, то

D[0] = Sum(b - a)

D[k] = D[k-1] + 2 * (a[k] - b[k]), k = 0..N

D[N+1] = Sum(a - b)

 

Сорри, читать "нужно брать".

Не согласен, что нужно брать излом, после которого производная меняет знак. Ведь мы могли идти не слева направо, а наоборот. По-моему, надо брать излом, который соответствует минимальному значению модуля производной.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если у нас N отсортированных по возрастанию изломов слагаемых, то

D[0] = Sum(b - a)

D[k] = D[k-1] + 2 * (a[k] - b[k]), k = 0..N

D[N+1] = Sum(a - b)

 

Задумайтесь о смысле разности b - a.

 

Не согласен, что нужно брать излом, после которого производная меняет знак. Ведь мы могли идти не слева направо, а наоборот. По-моему, надо брать излом, который соответствует минимальному значению модуля производной.

 

Думайте.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Задумайтесь о смысле разности b - a.

На всякий случай напишу целевую функцию: Sum(|a * x + b * (1 - x)|) = Sum((|(a - b) * x + b|).

b - a - это изменение угла наклона.

Думайте.

Нулевой производной может и не существовать. Поэтому нам нужна производная, как можно ближе к нулю. Т.е. если D[M] * D[M + 1] < 0, то искомый излом будет соответствовать min(|D[M]|, |D[M + 1]|)

Изменено пользователем getch

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На всякий случай напишу целевую функцию: Sum(|a * x + b * (1 - x)|) = Sum((|(a - b) * x + b|).

b - a - это изменение угла наклона.

 

А теперь продифференцируйте модуль.

 

Нулевой производной может и не существовать.

 

Но всегда существует излом, при переходе которой производная меняет знак. Он и есть минимум.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А теперь продифференцируйте модуль.

D(x) = b - a, x < b / (b - a)

D(x) = Unknown, x = b / (b - a)

D(x) = a - b, x > b / (b - a)

Но всегда существует излом, при переходе которой производная меняет знак. Он и есть минимум.

Так такой излом и слева и справа от нуля!

 

P.S. Unknown можно считать нулем.

Изменено пользователем getch

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

D(x) = b - a, x < b / (b - a)

D(x) = Unknown, x = b / (b - a)

D(x) = a - b, x > b / (b - a)

 

А если a < b?

 

 

Так такой излом и слева и справа от нуля!

 

От какого ещё нуля?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А если a < b?

D[0] = -Sum(|b - a|)

D[k] = D[k-1] + 2 * |a[k] - b[k]|, k = 0..N

D[N+1] = Sum(|b - a|)

От какого ещё нуля?

Мы бежим слева-направо. Вы утверждаете, что нам нужен первый излом, который поменяет знак производной. Если бы мы бежали справа-налево, то с такой логикой получили бы другой излом.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мы бежим слева-направо. Вы утверждаете, что нам нужен первый излом, который поменяет знак производной. Если бы мы бежали справа-налево, то с такой логикой получили бы другой излом.

 

Нет. Я утверждаю, что нам нужен любой излом, который поменяет знак производной. И каждый такой излом будет равным минимумом целевой функции. С какой бы стороны ни бежать. Но вероятность того, что их окажется несколько, крайне мала.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Нет. Я утверждаю, что нам нужен любой излом, который поменяет знак производной. И каждый такой излом будет равным минимумом целевой функции. С какой бы стороны ни бежать. Но вероятность того, что их окажется несколько, крайне мала.

Допустим, что мы пронумеровали изломы слева направо 1, 2, 3, ...., N

И для них получили такие значения производной:

D[100] = -1

D[101] = -0.25

D[102] = 0.5

D[103] = 1

 

Какой излом брать, 101 или 102?

 

Заметил у себя ошибку, проивзодных будет не N+2, а 2 * N + 2:

D[0] = -Sum(|b - a|)

D[k] = D[k-1] + |a[k/2] - b[k/2]|, k = 0..2 * N

D[2 * N+1] = Sum(|b - a|)

Изменено пользователем getch

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Какой излом брать, 101 или 102?

 

102

 

 

D[k] = D[k-1] + |a[k/2] - b[k/2]|, k = 0..2 * N

 

Мы уже добрались до полуцелых индексов массивов?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

102

Я не понимаю, почему брать надо первый положительный при ходе слева-направо, а не первый отрицательный при ходе справа-налево. Произвел проверку на множестве вариантов, Вы правы. Но почему, так и не пойму.

Написал нахождение минимума:

GetMin.png

Спасибо огромное за разъяснения!

 

Наглею, но спрошу, может, сталкивались с такой задачей:

P.S. Интересно, как сложить сигналы, чтобы получившийся сигнал имел одинаковый коэффициент корреляции с исходными, даже если дисперссии исходных сигналов неравны...

Количество вариантов таких сигналов бесконечно. А вот как найти такой сигнал, у которого коэффициент корреляции с исходными не только одинаковый, но и максимально-возможный?

Изменено пользователем getch

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы правы. Но почему, так и не пойму.

 

Да потому что у вас в массиве вершин к вершине приписана производная справа от неё :)

 

Написал нахождение минимума:

 

Количество вариантов таких сигналов бесконечно. А вот как найти такой сигнал, у которого коэффициент корреляции с исходными не только одинаковый, но и максимально-возможный?

 

С какой это стати "бесконечно"? Они все пропорциональны друг другу. Если ковариационная матрица невырождена, то решение, написанное ранее, дает ровно один вектор.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да потому что у вас в массиве вершин к вершине приписана производная справа от неё :)

Ну я и ступил... Точно!

С какой это стати "бесконечно"? Они все пропорциональны друг другу. Если ковариационная матрица невырождена, то решение, написанное ранее, дает ровно один вектор.

Похоже, вы правы. Меня ввел в заблуждение такой результат (на знаки корреляции не обратил внимание):

Corr2.png

P.S. Допустим мы имеем всего два вектора длинной единица в трехмерном пространстве. Тогда вектора, которые одинаково коррелированы с исходными двумя, разве не образуют окружность?

Изменено пользователем getch

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

P.S. Допустим мы имеем всего два вектора длинной единица в трехмерном пространстве. Тогда вектора, которые одинаково коррелированы с исходными двумя, разве не образуют окружность?

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я что-то запутался. Правильно ли я понимаю:

1. Количество непропорциональных векторов с одинаковой корреляцией к исходным бесконечно.

2. С одинаковой корреляцией и максимально-возможной - один.

3. К какому пункту относится вектор, находящийся, как обратная ковариационная матрица уноженная на единичную?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...