Как стать автором
Обновить
9.33

Matlab *

Математическое моделирование и одноимённый ЯП

Сначала показывать
Порог рейтинга
Уровень сложности

MIMO spatial diversity: Аламоути, DET и прочее пространственное разнесение

Время на прочтение8 мин
Количество просмотров9.7K

Чтобы передать сообщение от базовой станции мобильному устройству (и наоборот), электромагнитной волне приходится преодолевать значительное количество препон: отражения, преломления, рассеивания, затенения, доплеровские смещения частот и так далее. Во-первых, все эти воздействия принято называть мультипликативными (от англ. multiplication — умножение) — по математической модели таких воздействий. А, во-вторых, можно собрать под общим термином замирания (fading).


От стандарта к стандарту, от поколения к поколению, от технологии к технологии ученые и инженеры бились и бьются над проблемой нивелирования этих замираний (fading mitigation).


И некоторые решения нашли широкое распространение. Скажем больше: почти все из них, так или иначе, связаны с понятием разнесения (diversity).


Читать дальше →

Об авторегрессионном оценивании спектральной плотности стационарного сигнала

Время на прочтение5 мин
Количество просмотров8.6K
Методы спектрального оценивания стационарных случайных процессов, основанные на быстром преобразовании Фурье (БПФ), хорошо известны и широко применяются в инженерной практике. К их недостаткам следует отнести, в частности, высокую дисперсию (низкую точность) оценки при недостаточно длительном интервале наблюдения за процессом, что визуально обычно проявляется в сильной «изрезанности» графика спектральной плотности мощности(СПМ). Одним из альтернативных методов спектрального оценивания является авторегрессионный метод, рассмотренный на примере ниже, который в инженерной практике известен гораздо меньше. Метод во многих случаях позволяет сравнительно просто получить гораздо более качественную оценку СПМ (рис.1), а иногда и более глубокие сведения об исследуемом случайном процессе.

image
Рис.1 Классическая и авторегрессионная оценка СПМ «короткого» процесса
Читать дальше →

Моделируем алгоритм MUSIC для задач определения направления прихода электромагнитной волны

Время на прочтение9 мин
Количество просмотров19K

aaspcats


Предисловие


Начну своё вступление издалека. Давным-давно, в далеких 2016-2017 годах вашему покорному слуге удалось съездить на полугодовое обучение в далекий город Ильменау (Германия), где он успешно (в общем и целом) закончил магистерскую программу Communications and Signal processing. Программа оказалась не из простых, однако сейчас о ней вспоминать даже приятно. Иногда...

Читать дальше →

LQR оптимизация систем управления

Время на прочтение13 мин
Количество просмотров11K

Введение


На Habr были опубликованы несколько статей [1,2,3], прямо или косвенно касающиеся указанной темы. В связи с этим, нельзя не отметить публикацию [1] с названием “Математика на пальцах: линейно-квадратичный регулятор”, которая популярно поясняет принцип работы оптимального LQR контролера.

Мне захотелось продолжить указанную тему, рассмотрев практическое применения метода динамической оптимизации, но уже на конкретном примере средствами Python. Сначала пару слов о терминологии и методе динамической оптимизации.

Методы оптимизации делятся на статические и динамические. Объект управления находится в состоянии непрерывного движения под действием различных внешних и внутренних факторов. Следовательно, оценка результата управления дается за время управления Т, и это задача динамической оптимизации.

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

Математическим аппаратом решения таких задач являются вариационные методы: классическое вариационное исчисление, принцип максимума Л.С. Понтрягина и динамическое программирование Р. Беллмана.

Анализ и синтез систем управления выполняется во временной, частотной областях и в пространстве состояний. Анализ и синтез систем управления в пространстве состояний введен в учебные программы, однако приведенные в учебных материалах методики с применением SQR контролера рассчитаны на применение Matlab и не содержат практически реализуемых примеров анализа.
Читать дальше →

Подключение датчиков KELLER к среде MATLAB

Время на прочтение7 мин
Количество просмотров4.6K

Введение


Компания KELLER производит высокоточные датчики с цифровым выходом, которые подключаются к фирменному программному обеспечению для отображения и накопления показаний. Зачастую, пользователю необходимо интегрировать датчики в собственные системы мониторинга и управления. В этой работе на примере высокоточного датчика давления PR-33X показано подключение датчиков KELLER к интегрированной среде MATLAB, первоначально разработанной для анализа и синтеза систем управления, имеющей мощные средства обработки и отображения сигнальных данных.
Читать дальше →

SciPy, ввод и вывод в MATLAB

Время на прочтение4 мин
Количество просмотров7.3K

SciPy (произносится как сай пай) — это пакет прикладных математических процедур, основанный на расширении Numpy Python. С SciPy интерактивный сеанс Python превращается в такую же полноценную среду обработки данных и прототипирования сложных систем, как MATLAB, IDL, Octave, R-Lab и SciLab. В этом посте я хотел бы рассказать о возможностях пакета ввода/вывода scipy.io, который позволяет работать с файлами данных Octave и MATLAB.

Читать дальше →

Нечеткая логика против ПИД. Скрещиваем ежа и ужа. Авиадвигатель и алгоритмы управления АЭС

Время на прочтение10 мин
Количество просмотров16K

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


В этой статье мы будем экспериментировать с «настоящей» моделью авиационного двигателя. Обвесив ее «реальными» моделями аппаратуры и алгоритмов управления от атомной станции.


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


Как только модель превратилась из листинга Fortran в структурную схему, с ней стало просто и удобно работать, проводя любые, самые «изощренные» эксперименты. Совершенно не случайно у меня оказались реальные алгоритмы управления АЭС. Что позволило быстро собрать модель для экспериментов, не используя при этом никаких формул, да да, только картинки.

Читать дальше →

Простая нечеткая логика слеплена «из того что было» для газотурбинного двигателя

Время на прочтение9 мин
Количество просмотров11K

В этой статье мы создадим модель регулятора на базе стандартной библиотеки структурного моделирования (без использования готовой библиотеки блоков нечёткого регулирования).
В качестве объекта управления будет использована модель газотурбинного двигателя из учебника В.И. Гостева «Нечеткие регуляторы в системах автоматического управления»
Выполним сравнение с ПИД и ПДД регуляторами.


Читать дальше →

Data-driven decision на примере выбора цвета для покраски стен

Время на прочтение8 мин
Количество просмотров2.4K
Начав выбирать себе цвет для покраски стены в комнате, я столкнулся с интересной вещью. Весь этот процесс с самого начала начал напоминать работу над каким-нибудь IT-ML-Blah-blah-blah-аналитическим проектом.

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


Читать дальше →

Создание регулятора на базе нечеткой логики с многоканальной настройкой

Время на прочтение9 мин
Количество просмотров9.3K
«Зато мы делаем ракеты!»

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

Для нестационарных объектов управления где параметры объекта изменяются в широких диапазонах, нечеткий регулятор может не обеспечивать достаточное качество управления во всех диапазонах работы. В этом случае необходимо использовать нечёткий регулятор с «многоканальной настройкой».

Проверим возможно ли настроить такой регулятор стандартными методами оптимизации.
Рассмотрим синтез нечеткого регулятора с многоканальной настройкой для стабилизации баллистической ракеты по углу тангажа. Как подсказали в комментариях ракета будет ФАУ-2. Используем пример из той же книге Гостева В.В. «Нечеткие регуляторы в системах автоматического регулирования».

Все термины использованные в данном тексте взяты из этой книги и могут не соответствовать строгой терминологии теории автоматического управления.
Читать дальше →

Пространство состояний в задачах проектирования систем оптимального управления

Время на прочтение6 мин
Количество просмотров22K

Введение


Исследование системы управления во временной области с помощью переменных состояния широко используется в последнее время благодаря простоте проведения анализа.

Состоянию системы соответствует точка в определённом евклидовом пространстве, а поведение системы во времени характеризуется траекторией, описываемой этой точкой.

При этом математический аппарат включает готовые решения по аналоговому и дискретному LQR и DLQR контролерам, фильтра Калмана, и всё это с применением матриц и векторов, что и позволяет записывать уравнения системы управления в обобщённом виде, получая дополнительную информацию при их решении.

Целью данной публикации является рассмотрение решения задач проектирования систем оптимального управления методом описания пространства состояний с использованием программных средств Python.
Читать дальше →

Дескрипторная графика в MATLAB: вторая горизонтальная ось

Время на прочтение3 мин
Количество просмотров5.4K
При изучении дескрипторной графики в MATLAB обнаружилась нехватка «юзер френдли» функционала, а именно отсутствие стандартной команды позволяющей добавить дополнительную горизонтальную ось.

Добавление дополнительной вертикальной оси, командой plotyy предусмотрено и в help к ней, в разделе topics, есть пример добавления дополнительной оси x, однако данный пример, как и сама команда, не без недостатков, что любезно сообщает нам сам разработчик фразой:
plotyy is not recommended
Читать дальше →

Работа с параметрами CST из Matlab

Время на прочтение7 мин
Количество просмотров12K
Заголовок
В начале своего карьерного пути нам ставят мелкие задачки, результат решения которых мы сразу бежим показывать руководителю. Получаем советы и замечания, потом бежим переделывать. В конце рабочего дня мы отключаем компьютер и со спокойной душой идем домой.

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

Ближайшие события

TSP problem. Mixed algorithm

Время на прочтение13 мин
Количество просмотров12K
Всем доброго времени суток. В прошлых статьях мы сравнивали два эвристических алгоритма оптимизации на симметричной задаче коммивояжера таких как: ACS (ant colony system — муравьиный алгоритм) и SA (simulating annealing — алгоритм имитации отжига). Как мы убедились у каждого свои плюсы и минусы.


Читать дальше →

Бинарная сегментация изображений методом фиксации уровня (Level set method)

Время на прочтение10 мин
Количество просмотров14K
Сегментация изображений является задачей разбиения цифрового изображения на одну или несколько областей, представляющих интерес. Это фундаментальная проблема в области компьютерного зрения, которая решается многими различными способами, каждый из которых обладает своими преимуществами и недостатками.

В этой статье я кратко рассмотрю понятие метода фиксации уровня и неявно заданных динамических поверхностей (level set method). Также рассмотрю роль этого метода в бинарной сегментации с введением и определением математических конструкций, таких как SDT (Signed Distance Transforms), маркированной карты расстояний.

Слева — исходное изображение, справа — сегментированное
Читать далее...

This is Science: наблюдая за ростом растений

Время на прочтение2 мин
Количество просмотров5.9K


Одна из проблем современной биологии – как отследить/запечатлеть объекты, которые постоянно находятся в движении. С этой ж проблемой сталкивается любой родитель, когда пытается сфотографировать маленького ребёнка: то фото размазалось, то поплыл фокус, то не хватает контрастности. Конечно, в биологии существует целый ряд инструментов, как добиться фиксации тех или иных биологических объектов. К примеру, мушек можно «усыпить» холодом, клетки «затормозить» с помощью химических веществ. Но что делать, если эксперимент заключается в наблюдении за ростом корней растения, которые постоянно удлиняются и извиваются. Чтобы получить одну лишь только серию фотографий могут уйти дни и даже недели кропотливой постоянной подстройки микроскопа. На выручку учёным приходят системы распознавания и автоматической коррекции изображения!

За микроскопическими подробностями жизни растений добро пожаловать под кат.

Управление CST MWS с помощью Matlab

Время на прочтение7 мин
Количество просмотров12K

Введение


Перед многими инженерами в области электромагнитного моделирования часто встают вопросы дальнейшей обработки и использования результатов моделирования задачи в других средах или, наоборот, передачи параметров из одной среды в другую. Казалось бы, нет никакой проблемы экспортировать результаты в понятную другой программе форму и пользоваться ими, либо ввести данные вручную. Однако часто встают задачи, требующие выполнения данной последовательности действий N раз и производительность выполнения данных действий устремляется к нулю. Если вам интересна тема обозначенная в заголовке, тогда прошу под кат.
Читать дальше →

Еще один алгоритм для восстановления смазанных изображений

Время на прочтение5 мин
Количество просмотров19K
Доброго времени суток. Уже столько сказано о методах деконволюции изображений, кажется добавить больше нечего. Однако всегда найдется алгоритм лучше и новее предыдущих. Не так давно был описан итерационный алгоритм, имеющий линейную скорость сходимости при малых затратах памяти, стабильный и хорошо распараллеливаемый. А через некоторое время он был улучшен еще и до квадратичной сходимости. Встречайте: (Fast) Iterative Shrinkage-Thresholding Algorithm.


Читать дальше →

Простая реализация FDTD на Java

Время на прочтение13 мин
Количество просмотров13K
FDTD (Finite Difference Time Domain) — метод конечных разностей во временной области — самый «честный» метод решения задача электродинамики от низких частот до видимого диапазона. Суть — решение уравнений Максвелла «в лоб». Здесь неплохо расписано. Особенно посмотрите сетку.

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

Представлена реализация алгоритма на Java и C++.

image
Читать дальше →

Оптимизация на примере. Муравьиный алгоритм (ACS) против Метода отжига. Часть 2

Время на прочтение12 мин
Количество просмотров21K
Продолжаю цикл статей «Оптимизация на примере». В данной статье сравниваются два эвристических алгоритма на избитой симметричной задаче коммивояжера. Сегодня чуть углубимся в данную тему и разберем определенную модификацию муравьиного алгоритма.


Читать дальше →