О проекте
Разработка открытой библиотеки проведения поэтапного математического моделирования и оптимизации параметров систем при создании цифровых двойников изделий (ссылка на сайт)
Цель проекта
Обеспечить предприятия, инжиниринговые компании, научно-исследовательские институты и ВУЗы доступным инструментом для формирования комплексных математических моделей цифровых двойников изделий за счет создания открытой платформы для решения инженерных задач, связанных с подбором и поиском оптимальных параметров на базе сквозного мультидисциплинарного моделирования с использованием различных параметризированных математических моделей и САЕ продуктов.
Преимущества проекта
Закладываемая архитектура обеспечивает возможности параллельного и распределенного выполнения задач внутри этапа сценария, комбинирования легких и ресурсоемких моделей, использование локальных подпространств имен обеспечит возможность:
- переиспользования математических моделей
- разработки сложных комплексных моделей (в том числе многопользовательском режиме), задел для:
- вложенных циклов оптимизации
- применения вложенных моделей
- формирования локальных баз для прогнозирования параметров отдельных моделей
Перечень направлений прикладного использования проекта
Открытая библиотека позволяет решать инженерные задачи, связанные с подбором и поиском оптимальных параметров на базе сквозного многодисциплинарного моделирования с использованием различных параметризированных математических моделей и CAE продуктов и может быть использована для:
- проведения исследовательских работ по созданию многодисциплинарных математических моделей при создании цифровых двойников изделий
- поиска параметров, вариантов и комбинаций для формирования обликов изделий и процессов оптимальных по широкому спектру параметров и ограничений
- изучения подходов к разработке многодисциплинарных математических моделей при создании цифровых двойников изделий при выполнении магистерских и аспирантских проектов в ВУЗах
- применения в качестве интегрируемого решения в корпоративные системы и другие продукты
Архитектура открытой библиотеки
Основные компоненты открытой библиотеки сквозного многодисциплинарного моделирования расположены в следующих репозиториях:
- БХО (ustep-storage) - База хранения и обмена параметрами
- МИС (ustep-player) - Модуль исполнения сценария
- Оптимизатор (ustep-optim) (текущий репозиторий) - компонент, обеспечивающий проведение оптимизационных исследований
Для демонстрации возможностей открытой библиотеки, а также в качестве примеров ее использования, разработаны независимые програмные компоненты, расположенные в репозиториях:
- ГИ (ustep-ide) - Графический интерфейс , демонстрирующий использование библиотеки из приложения Electron;
- Сценарии (ustep-workers) - Консольные примеры, демонстрирующие использование библиотеки из интерфейса командной строки.
Для использования библиотеки следует загрузить на компьютер репозитории библиотеки (БХО, МИС, Оптимизатор), а также один или оба репозитория, демонстрирующих ее использование (ГИ, Сценарии). Подключение библиотеки к ГИ осуществляется в окне настроек ГИ, в котором указываются пути к БХО, МИС и оптимизатору. Для подключение библиотеки к Сценариям все загруженные репозитории (БХО, МИС, Оптимизатор, Сценарии) должны быть расположены в одной директории, после чего подключение осуществляется автоматически.
Платформа сквозного многодисциплинарного моделирования при использовании ГИ работает по следующему алгоритму:
- пользователь готовит в ГИ проект сквозного многодисциплинарного моделирования;
- ГИ сохраняет описание и начальные параметры сценария;
- ГИ запускает МИС;
- МИС считывает начальные параметры сценария, инициализирует и заполняет БХО с помощью помощника БХО;
- МИС выполняет запуск МШС в соответствии с полученным описанием сценария;
- API внешних модулей получает параметры для выполняемого МШС;
- МШС сценария выполняет свой скрипт/сценарий расчета задачи и обменивается расчетными данными с ядром платформы;
- API внешних модулей передает статус выполняющегося МШС в БХО;
- ГИ получает из БХО информацию о выполнении МШС, отображает ее и позволяет пользователю управлять выполнением сценария;
- ГИ отображает результаты выполнения сценария.
Платформа сквозного многодисциплинарного моделирования при использовании Сценариев работает по следующему алгоритму:
- пользователь запускает в командном интерпритаторе начальный скрипт (run.cmd для ОС Windows или run.sh для ОС Linux) и выбирает сценарий, который должен быть расчитан;
- скрипт запускает МИС, передавая ему параметры выбранного сценария;
- МИС считывает начальные параметры сценария, инициализирует и заполняет БХО с помощью помощника БХО;
- МИС выполняет запуск МШС в соответствии с полученным описанием сценария;
- API внешних модулей получает параметры для выполняемого МШС;
- МШС сценария выполняет свой скрипт/сценарий расчета задачи и обменивается расчетными данными с ядром платформы;
- API внешних модулей передает статус выполняющегося МШС в БХО;
- по окончании расчета управление возвращается в командный интерпритатор, после чего пользователь может проанализировать файлы с результатами выполнения сценария.
Взаимодействие представленных компонентов платформы друг с другом, обеспечивает полный цикл сквозного многодисциплинарного моделирования: подготовку, выполнени и отображение результатов расчета.
Описание инструментов для оптимизации и параметрических исследований
Репозиторий содержит набор инструментов для оптимизации и параметрических исследований открытой библиотеки проведения поэтапного математического моделирования и оптимизации параметров систем при создании цифровых двойников изделий
Минимальные технические требования для запуска и использования исполнителя сценария
- системные требования:
- процессор с архитектурой x86-64 (Intel с поддержкой Intel 64, AMD с поддержкой AMD64). Желательно использование многопроцессорных или многоядерных машин
- оперативная память не менее 2 Гбайт (рекомендуется 4 Гбайт и выше)
- жесткий диск 40Гб и выше
- программные требования:
- ОС Windows 10 x64 /Ubuntu 22.04
- Python 3.11
- дополнительные модули Python можно установить из файла requirements.txt командой
pip install -r requirements.txt
- Redis 7.2
Корневая директория содержит:
- базовые константы платформы определенные в файле UStepMultiParamIntegration.py;
- основную точку доступа к алгоритмам платформы в файле UStepMultiParam.py
Директория Base cодержит набор интерфейсов поддерживаемых библиотекой:
- Optimizer - интерфейс методов оптимизации;
- Sampler - интерфейс генератора очередных точек в пространстве варьируемых параметров (используется адаптивными суррогатными моделями и итеративными оптимизаторами);
- Surrogate - интерфейс суррогатных моделей поддерживающих вычисление значений в точках;
- SurrogateDispersion - интерфейс суррогатных моделей поддерживающих вычисление значений и дисперсии в точках
Директория Core cодержит реализации алгоритмов оптимизации и параметрических исследований такие как:
- алгоритм глобальной оптимизации Стронгина;
- алгоритм адаптивного построения суррогатных моделей на основе метода Кригинга.
Директория Test содержит средства тестирования алгоритмов репозитория:
- unit тесты алгоритмов Test/Core;
- интеграционные тесты Test/Integration, представленные задачей о движении велосипеда с велосипедистом с оптимизацией целевой функции усталости велосипедиста.