Поэтому я недавно внедрил эквалайзер CMA в MATLAB, который использует метод наискорейшего спуска, чтобы приблизиться к минимальной стоимости. (Я на выпивке реализации эквалайзера).
Мои вопросы следующие:
1) Мне кажется, что алгоритм CMA хорош только для каналов, где они относительно «плоские». Другими словами, не ожидается, что он будет работать для каналов с глубокими замираниями / нулями? Это вообще правда?
2) Я использую сигнал BPSK, и мы можем видеть из первого рисунка, что после многолучевых эффектов у меня есть размытие в комплексной плоскости моего сигнала BPSK - нет двух хороших кластеров, как можно было бы ожидать. Вместо этого мы видим 4 красных скопления. Мой вопрос: как получилось, что после эквалайзера CMA у меня все еще есть 4 кластера? (Я покрасил эти синие). Я полагаю, в этом есть какой-то смысл, потому что CMA просто заставляет конверты равняться 1, и не заботится о том, о каком кластере вы говорите. Я слышал, что CMA может страдать от локальных минимумов проблем. Будет ли это примером? (т.е. получить 4 кластера вместо 2, так как это BPSK). Если нет, что с этим можно сделать?
3) Как будто отвечая на вопрос 2, я пошел дальше и изменил постоянный модуль, против которого стараюсь свести ошибку к минимуму. Вместо того, чтобы выбрать 1 (как предполагается, для BPSK), я выбрал 0.25 в качестве модуля. Это созвездие, которое я получил:
Проблема в том, что даже если это «решение», как узнать, априори, какой модуль выбрать? Причина, по которой я считаю это проблемой, заключается в том, что если у меня есть 4 кластера вместо 2, это усложняет оценку / коррекцию сдвига фазы / сдвига частоты после символа, особенно когда ожидается 2 кластера из-за сигнализации BPSK.
(Для полноты я приложил те же графики, но когда я добавил сдвиги частоты)
Заранее спасибо за любые идеи, которые вы можете дать в этот эквалайзер!
источник
Ответы:
В общем, выравнивание канала с глубокими замираниями является проблемой для всех эквалайзеров. Эквалайзер CMA не является исключением. Отсутствие тренировочного сигнала ухудшает ситуацию.
Это, очевидно, пример CMA, застрявшего в локальном минимуме. Начальное состояние эквалайзера CMA, вероятно, находилось вблизи локального минимума. Фильтр эквалайзера, к которому сходился CMA, свернутый с каналом, не дает импульсного общего отклика.
Помните, что функции стоимости эквалайзеров CMA являются нелинейными. Модификация модуля не оказывает «линейного» влияния на функцию стоимости. Вероятно, произошло то, что ваше начальное состояние (идентичное тому, которое было в предыдущем случае) эквалайзера CMA с «модифицированным модулем» теперь упало в окрестности глобального минимума. Это «красота» нелинейности!
источник