Изменить уравнение в FMU для обмена моделями - PullRequest
0 голосов
/ 30 марта 2020

мы хотим опубликовать sh с открытым исходным кодом для интеграции обучения подкрепления с оптимизацией Smartgrid. Мы используем OpenModelica как GUI, PyFMI для импорта в Python и Gym.

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

Использование реализованных переключателей в OpenModelica на самом деле не вариант. Они просто помещают резистор в это место, давая ему либо очень низкое, либо очень высокое сопротивление. Во-первых, это не совсем разъединено, и, во-вторых, высокое сопротивление делает систему ODE жесткой, что делает ее действительно трудной (и дорогостоящей) для ее решения. В тестах наш решатель LSODA (в тяжелых случаях, в основном, BDF) часто выполнялся с числовыми ошибками, независимо от того, как рассчитывался якобиан (аналитически по производным по направлению или с конечными разностями).

Кто-нибудь знает, как мы можем реализовать настоящий "эффект переключения"?

С уважением,

Henrik

1 Ответ

0 голосов
/ 21 апреля 2020

Идеальное соединение и разъединение компонентов во время моделирования требует изменчивости структуры, которая не полностью поддерживается Modelica (пока). См. Также этот ответ { ссылка }

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

Существует платформа python, созданная для поддержки этого процесса: DySMo . Инструмент был написан Александрой Мелхазе, которая сделала много интересных публикаций относительно изменчивости структуры, например Пример полезного использования моделирования с изменяемой структурой для улучшения существующей модели ракеты .

Статья Имитация модели с изменяемой структурой транспортного средства Electri c для оценки срока службы аккумулятора с использованием Modelica / Dymola и Python Морица Штубера также заслуживает внимания. Он содержит хорошее введение о системах с переменной структурой и доступных решениях.

...