Вопрос математикам

Ответить
tessob
Уже с Приветом
Сообщения: 549
Зарегистрирован: Чт янв 07, 2016 7:04 am

Re: Вопрос математикам

Сообщение tessob »

Privet писал(а): Сб дек 26, 2020 8:43 amИзвините, повесил глобально. Ну очень надо.
Не уверен, что правильно понял проблему, но если нам нужно просто получить функцию Гауса максимально приближенную к тем точкам, которые у вас есть, то нужно ввести функцию ошибки, которую и нужно оптимизировать. В качестве такой функции, например, можно взять сумму квадратов отклонений ваших точек от гауссианы. Далее итеративно подбирать параметры Гауссианы (их 2) до тех пор пока функция ошибки будет улучшаться. Решение “в лоб” - покоординатный спуск. Более продвинутое решение - градиентный спуск. Нужно будет еще подобрать функцию “затухания” размера шага и критерий остановки (например, количество шагов или размер шага). Алгоритм получается итеративный, но учитывая, что точек у вас мало и функция Гауса не сильно сложная, работать будет довольно быстро, но все же это не аналитическое решение.

Вместо Гауссианы можно взять любую другую функцию на ваш вкус.
Аватара пользователя
VladDod
Уже с Приветом
Сообщения: 56234
Зарегистрирован: Вс май 06, 2001 4:01 am

Re: Вопрос математикам

Сообщение VladDod »

tessob писал(а): Пн янв 11, 2021 3:21 am ... итеративно подбирать параметры Гауссианы (их 2) до тех пор пока функция ошибки будет улучшаться. Решение “в лоб” - покоординатный спуск. Более продвинутое решение - градиентный спуск. .
тогда лучше метод "Нелдера-Мида". https://ru.wikipedia.org/wiki/%D0%9C%D0 ... 0%B4%D0%B0
функция от "параметров Гауссианы ", запросто будет иметь "овражный" или сильно "зашумленный" характер по которому "градиентный спуск" просто не пройдет.
в реале супруги редко бывают друзьями, так как их отношения подпорчены сексом (с)Роза
Плавали-Знаем! (C)
Аватара пользователя
Privet
Администратор
Сообщения: 17204
Зарегистрирован: Вс янв 03, 1999 4:01 am
Откуда: Redmond, WA
Контактная информация:

Re: Вопрос математикам

Сообщение Privet »

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

Задача: Необходимо определить частоту несущей (чистый гармонический сигнал в полосе 1960 Гц) с точностью не хуже 2 Гц за время не превышающее 140 мс. На чистом шуму обнаружитель несущей должен давать не более На входе в реальной системе стоит фильтр Баттерворта 6-го порядка. Отношение С/Ш в данной полосу составляет 6 дБ. Распределение шума - нормальное. При моделировании используется ФНЧ Баттерворта со срезом на частоте 980 Гц. Частота дискретизации в системе 1953 Гц. Процессор Cortex-3M 40mHz. БПФ 256 точек выполняет примерно за 4мс. Из этого можно прикинуть сколько времени займёт БПФ на другое число точек.

Кажется, всё. Если чего-то забыл - напомните.
Вот наш результат: Боковые палки отстоят от центральной применео на 1 Гц. Красные линии это границы допустимого интервала.
FreqDiff.png
FreqDiffOrig.png
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Привет.
Аватара пользователя
Sergunka
Уже с Приветом
Сообщения: 34164
Зарегистрирован: Вс дек 03, 2000 4:01 am
Откуда: Vladivostok->San Francisco->Los Angeles->San Francisco

Re: Вопрос математикам

Сообщение Sergunka »

Privet писал(а): Пн янв 25, 2021 5:48 pm Кажется, всё. Если чего-то забыл - напомните.
Еще было бы неплохо указать двигаются объекты или нет.
"A patriot must always be ready to defend his country against his government." Edward Abbey
Аватара пользователя
Privet
Администратор
Сообщения: 17204
Зарегистрирован: Вс янв 03, 1999 4:01 am
Откуда: Redmond, WA
Контактная информация:

Re: Вопрос математикам

Сообщение Privet »

Вчера подкорректировал пост и... уснул, не нажав submit.
Sergunka писал(а): Пн янв 25, 2021 10:35 pm
Privet писал(а): Пн янв 25, 2021 5:48 pm Кажется, всё. Если чего-то забыл - напомните.
Еще было бы неплохо указать двигаются объекты или нет.
Нет не двигаются. Это было бы уж слишком.
Привет.
OtecFedor
Уже с Приветом
Сообщения: 8378
Зарегистрирован: Ср окт 17, 2001 4:01 am
Откуда: Уездный город N

Re: Вопрос математикам

Сообщение OtecFedor »

Privet писал(а): Пн янв 25, 2021 5:48 pm Извиняюсь, я выпал из топика на некоторое время. Я не проверял его, т.к. думал, что он уже затух. У нас выяснилось, что алгоритм, который мы использовали до этого, не подходит и это держало всю работу. Был аврал.
Вообще, я спрашивал только о методах, но попробую описать задачу полнее. Наши алгоритмы, как вы понимаете, я не могу, к сожалению, описывать детально.

Задача: Необходимо определить частоту несущей (чистый гармонический сигнал в полосе 1960 Гц) с точностью не хуже 2 Гц за время не превышающее 140 мс. На чистом шуму обнаружитель несущей должен давать не более На входе в реальной системе стоит фильтр Баттерворта 6-го порядка. Отношение С/Ш в данной полосу составляет 6 дБ.
У вас фундаментальная спектральная точность df = 1/0.14 (140 ms) = 7.1 Hz, плюс высокии шум, по-моему 2 Hz ето перебор
Аватара пользователя
Privet
Администратор
Сообщения: 17204
Зарегистрирован: Вс янв 03, 1999 4:01 am
Откуда: Redmond, WA
Контактная информация:

Re: Вопрос математикам

Сообщение Privet »

aml5691 писал(а): Ср янв 06, 2021 12:32 am ... Ни свойства сигнала, ни свойства шума не определены, и не дано точное определение того, что же все таки ищется ("центр колокольчика"). Возможно также нужно об'яснить способ измерения сигнала. Подозреваю, что исходный сигнал - непрерывен, но он измеряется устройством, которое интегрирует исходный непрерывный сигнал по равноотстоящим интервалам измерения, выдавая в результате "дискретный" сигнал, по которому и вычисляется спектр...
То, что вы пишете это не наука, а наукообразие - гора квазинаучной лексики, которая абсолютно ничего не добавляют к тому, что можно коротко сказать самыми простыми словами. В данном случае достаточно лишь знать, что "колокольчик" симметричен с двух сторон.
Привет.
Аватара пользователя
Komissar
Уже с Приветом
Сообщения: 64875
Зарегистрирован: Пт июл 12, 2002 11:38 am
Откуда: г.Москва, ул. Б. Лубянка, д.2

Re: Вопрос математикам

Сообщение Komissar »

Privet писал(а): Вт янв 26, 2021 5:54 pm
aml5691 писал(а): Ср янв 06, 2021 12:32 am ... Ни свойства сигнала, ни свойства шума не определены, и не дано точное определение того, что же все таки ищется ("центр колокольчика"). Возможно также нужно об'яснить способ измерения сигнала. Подозреваю, что исходный сигнал - непрерывен, но он измеряется устройством, которое интегрирует исходный непрерывный сигнал по равноотстоящим интервалам измерения, выдавая в результате "дискретный" сигнал, по которому и вычисляется спектр...
То, что вы пишете это не наука, а наукообразие - гора квазинаучной лексики, которая абсолютно ничего не добавляют к тому, что можно коротко сказать самыми простыми словами.
+100. "Наука умеет много гитик". В химии за такое обливают кислотой. Концентрированной.
Аватара пользователя
Privet
Администратор
Сообщения: 17204
Зарегистрирован: Вс янв 03, 1999 4:01 am
Откуда: Redmond, WA
Контактная информация:

Re: Вопрос математикам

Сообщение Privet »

OtecFedor писал(а): Вт янв 26, 2021 5:36 pm ...
У вас фундаментальная спектральная точность df = 1/0.14 (140 ms) = 7.1 Hz, плюс высокии шум, по-моему 2 Hz ето перебор
Разрешение БПФ 7.6 Гц. Мы его успеваем взять 36 раз с шагом каждые 8 отсчётов, которые берутся на частоте 1953 Гц.

Поправил: не 10, а 36 раз. Обнаружитель включается до появления сигнала. Каждые 8 отсчётов мы получаем результат БПФ. Т.е. отсчёты задвигаются в БПФ.
Привет.
OtecFedor
Уже с Приветом
Сообщения: 8378
Зарегистрирован: Ср окт 17, 2001 4:01 am
Откуда: Уездный город N

Re: Вопрос математикам

Сообщение OtecFedor »

Privet писал(а): Вт янв 26, 2021 6:15 pm
OtecFedor писал(а): Вт янв 26, 2021 5:36 pm ...
У вас фундаментальная спектральная точность df = 1/0.14 (140 ms) = 7.1 Hz, плюс высокии шум, по-моему 2 Hz ето перебор
Разрешение БПФ 7.6 Гц. Мы его успеваем взять 36 раз с шагом каждые 8 отсчётов, которые берутся на частоте 1953 Гц.

Поправил: не 10, а 36 раз. Обнаружитель включается до появления сигнала. Каждые 8 отсчётов мы получаем результат БПФ. Т.е. отсчёты задвигаются в БПФ.
Если время измерения 140 мс, то частота сигнала определена с точностью 7.1 Гц, у вас просто нет достаточо исходнои информации, не важно как точно вы ее меряете, ну что-то вроде принципа Геизенберга штоли, енергия - время. Или вы вы набирате 8 раз по 140 мс?
Аватара пользователя
Privet
Администратор
Сообщения: 17204
Зарегистрирован: Вс янв 03, 1999 4:01 am
Откуда: Redmond, WA
Контактная информация:

Re: Вопрос математикам

Сообщение Privet »

VladDod писал(а): Сб янв 02, 2021 2:33 pm ...Данные взял из первого поста. У меня получился такой колокольчик с максимумом в точке 45.8 с погрешностью около 0.1.

Вы не могли бы озвучить ответ к задачке, кстати? :oops:

Колокольчик получился такой.

...
Примерно так и есть. Мы думали о полиномиальной аппроксимации - классическое решение такой задачи, но оно требует бОльшего числа операций.
Привет.
Аватара пользователя
Privet
Администратор
Сообщения: 17204
Зарегистрирован: Вс янв 03, 1999 4:01 am
Откуда: Redmond, WA
Контактная информация:

Re: Вопрос математикам

Сообщение Privet »

OtecFedor писал(а): Вт янв 26, 2021 6:50 pm
Privet писал(а): Вт янв 26, 2021 6:15 pm
OtecFedor писал(а): Вт янв 26, 2021 5:36 pm ...
У вас фундаментальная спектральная точность df = 1/0.14 (140 ms) = 7.1 Hz, плюс высокии шум, по-моему 2 Hz ето перебор
Разрешение БПФ 7.6 Гц. Мы его успеваем взять 36 раз с шагом каждые 8 отсчётов, которые берутся на частоте 1953 Гц.

Поправил: не 10, а 36 раз. Обнаружитель включается до появления сигнала. Каждые 8 отсчётов мы получаем результат БПФ. Т.е. отсчёты задвигаются в БПФ.
Если время измерения 140 мс, то частота сигнала определена с точностью 7.1 Гц, у вас просто нет достаточо исходнои информации, не важно как точно вы ее меряете, ну что-то вроде принципа Геизенберга штоли, енергия - время. Или вы вы набирате 8 раз по 140 мс?
Принцип Гайзенберга. В немецком "ei" читаются как "ай". Также, как и Эйнштейна в природе не существовало.
Вы, вероятно, путаете точность измерения времени появления импульса и частоту наблюдаемого сигнала, но и в этом случае Вы не правы, если характеристики системы известны и стабильны.
Привет.
OtecFedor
Уже с Приветом
Сообщения: 8378
Зарегистрирован: Ср окт 17, 2001 4:01 am
Откуда: Уездный город N

Re: Вопрос математикам

Сообщение OtecFedor »

Privet писал(а): Вт янв 26, 2021 7:06 pm
OtecFedor писал(а): Вт янв 26, 2021 6:50 pm
Privet писал(а): Вт янв 26, 2021 6:15 pm
OtecFedor писал(а): Вт янв 26, 2021 5:36 pm ...
У вас фундаментальная спектральная точность df = 1/0.14 (140 ms) = 7.1 Hz, плюс высокии шум, по-моему 2 Hz ето перебор
Разрешение БПФ 7.6 Гц. Мы его успеваем взять 36 раз с шагом каждые 8 отсчётов, которые берутся на частоте 1953 Гц.

Поправил: не 10, а 36 раз. Обнаружитель включается до появления сигнала. Каждые 8 отсчётов мы получаем результат БПФ. Т.е. отсчёты задвигаются в БПФ.
Если время измерения 140 мс, то частота сигнала определена с точностью 7.1 Гц, у вас просто нет достаточо исходнои информации, не важно как точно вы ее меряете, ну что-то вроде принципа Геизенберга штоли, енергия - время. Или вы вы набирате 8 раз по 140 мс?
Принцип Гайзенберга. В немецком "ei" читаются как "ай". Также, как и Эйнштейна в природе не существовало.
Вы, вероятно, путаете точность измерения времени появления импульса и частоту наблюдаемого сигнала, но и в этом случае Вы не правы, если характеристики системы известны и стабильны.
Это вопрос доступности информации. Если вся информация что есть- появился сигнал в окне 140 мс то будет как я сказал.

Если ещё есть а-приори знание о сигнале, т.е. дополнительная информация, то в общем случае это не так, но как повлияет это на точность с ходу сказать трудно
Аватара пользователя
Privet
Администратор
Сообщения: 17204
Зарегистрирован: Вс янв 03, 1999 4:01 am
Откуда: Redmond, WA
Контактная информация:

Re: Вопрос математикам

Сообщение Privet »

OtecFedor писал(а): Вт янв 26, 2021 7:20 pm ...
Если ещё есть а-приори знание о сигнале, т.е. дополнительная информация, то в общем случае это не так, но как повлияет это на точность с ходу сказать трудно
В нашем случае вопрос не в сигнале (сигнал - одна чистая гармоника), а в том, каким мы его видим после прохождения через систему. Плюс в том, что выбор системы за нами.
Привет.
Oleg Co
Уже с Приветом
Сообщения: 7916
Зарегистрирован: Пн май 19, 2008 5:10 pm
Откуда: BY->DEU->SFBA

Re: Вопрос математикам

Сообщение Oleg Co »

Privet писал(а): Вт янв 26, 2021 8:22 pm
OtecFedor писал(а): Вт янв 26, 2021 7:20 pm ...
Если ещё есть а-приори знание о сигнале, т.е. дополнительная информация, то в общем случае это не так, но как повлияет это на точность с ходу сказать трудно
В нашем случае вопрос не в сигнале (сигнал - одна чистая гармоника), а в том, каким мы его видим после прохождения через систему. Плюс в том, что выбор системы за нами.
Как-то сильно напомнило В круге первом Солженицина. Спец-связь Путину разрабатываете?
Ответить

Вернуться в «Вопросы и новости IT»