Промышленная метавселенная объединяет цифровые и физические миры для поддержки проектирования, симуляции и совместной 3D-визуализации инженерных систем. Обычно он состоит из множества взаимосвязанных цифровых двойников компонентов для получения общего представления о системе. Крупные организации, такие как Boeing, BMW, Amazon и многие другие, используют различные подходы для созданияметавселенных. Разработаны и используются системы, позволяющие использовать несколько цепочек инструментов моделирования и обработки. Однако эти примеры обычно либо индивидуальны для областиприменения 2, либо являются коммерческими вариантами 3,4 с некоторой привязанностью к проприетарным системам. Некоторые открытые альтернативы для создания цифровых двойников использовались для создания некоторых систем, таких как Python Flask, с встроенными возможностями симуляции. Тем не менее, они настроены как индивидуальные фрагменты кода для выполнения конкретных задач, связанных с конкретноймоделью 5. В контексте этого протокола платформа метавселенной (NVIDIA Omniverse) функционирует как фронтенд для 3D-визуализации и взаимодействия с рабочими процессами: результаты симуляции загружаются в общую сцену после завершения запуска рабочего процесса, а новые запуски могут запускаться внутри той же среды. Это отличается от систем с живыми цифровыми двойниками, в которых датчики в реальном времени постоянно обновляют модель; Метод, приведённый здесь, поддерживает пакетное выполнение рабочих процессов и послезапусковое исследование результатов. Однако это делается таким образом, чтобы поддерживать будущие работы по интеграции большего числа систем в платформу метавселенной, чтобы создать цифровых двойников с движками рабочих процессов в качестве вычислительного бэкенда.
Рабочие процессы можно определить как цепочки программных инструментов, явно указывающих поток данных между ними. Они позволяют обёртывать существующие коды симуляции, скрипты обработки и другие этапы в типичном аналитическом конвейере, не изменяя их функции, а вместо этого позволяют их настраивать и перестраивать с помощью стандартизированных входов и выводов, независимых от инструмента. Рабочие процессы позволяют легко воспроизводить результаты через совместный обмен инструментами, а также предоставляют метаданные и происхождение о том, какие версии инструментов использовались, в каком порядке и с какими входными данными. Сами инструменты могут быть повторно использованы во многих конвейерах симуляции, что позволяет исследователям тратить меньше времени на настройку симуляций и больше времени на проектирование экспериментов и изучение результатов. Системы рабочих процессов также масштабируемы, с методами подключения к различным локальным вычислительным, облачным и HPC-ресурсам, что позволяет автоматически запускать многие крупномасштабные рабочие процессы на конкретномоборудовании 6.
Типичный ручной подход по своей природе медленный, подвержен ошибкам и труден для воспроизведения: исследователь запускает каждый инструмент симуляции или постобработки вручную, перемещает промежуточные файлы между средами и должен документировать индивидуальные входные и выходные результаты. В отличие от этого, менеджер рабочих процессов формализует поток данных один раз и заново запускает его детерминированно. Это даёт множество преимуществ по сравнению с ручными конвейерами: один и тот же рабочий процесс может выполняться одинаково на разных входах, что поддерживает изучение параметров без специального скриптинга; Каждый запуск автоматически фиксирует полные метаданные происхождения, устраняя любой разрыв воспроизводимости; а после упаковки инструмента его стоимость повторного использования в последующих рабочих процессах падает почти до нуля, за исключением вычислительного времени. Эти преимущества были количественно оценены для биоинформатики Раттеном и др.7 , а для протеомики/метаболомики — Пересом-Риверолом иМорено-8 , а также Верховеном и др.9.
Исторически рабочие процессы использовались преимущественно в областибиоинформатики 8,9 с большим успехом в крупных публичных инстансах, таких как европейский Galaxy server10,11, который к 2022 году содержал более 50 000 пользователей, 2500 инструментов, выполнил более 47 миллионов задач и 260 000 запусков рабочих процессов. Тот же стек движка рабочих процессов поддерживает масштабирование на HPC и облачные ресурсы через распределённую систему выполнения задач Pulsar 6,11, при этом операционные развертывания охватывают 13 конечных точек Pulsar в 10 европейских странах. Среди множества доступных менеджеров рабочих процессов, включая Snakemake, Nextflow, Toil и совместимые с CWL движки, был выбран движок Galaxyworkflow 11 по нескольким причинам. Одной из основных причин является зрелый браузерный интерфейс, который снижает барьер доступа для экспертов в области, не работающих преимущественно в командной строке; он предоставляет полный интерфейс программирования с передачей представления состояния (REST) (API) (используемый в настоящей работе для перехода к интерфейсу метавселенной); Её модель истории и рабочих мест отражает происхождение в форме, которую легко показать неспециалистам; а также поддерживает прозрачный выгруз HPC через вышеупомянутую систему Pulsar (хотя это не обсуждается в разделе протокола в этой статье). Однако подход, описанный в этой статье, принципиально независим от движка рабочих процессов: эквивалентные интеграции можно строить поверх альтернативных движков. Вклад этой работы заключается не в самом менеджере рабочих процессов, а в переводе универсального менеджера рабочих процессов, изначально разработанного для биоинформатики, в другие области (с конкретным примером термоядерной нейтроники), и его интеграции с индустриальной метавселенной (NVIDIA Omniverse) внутри полностью контейнеризованного, локально развертываемого стека, применяемого к 3D-виртуальным экспериментам.
Наконец, контейнеризация позволяет обмениваться множеством программного обеспечения, упаковывая код с операционной системой и всеми необходимыми для её запуска зависимостями. Эти среды избегают проблем с отсутствующими зависимостями и хлопот с установкой некоторых кодов симуляции. Они похожи по назначению на виртуальные машины, но гораздо легче и портативнее. Они значительно повышают возможность совместного использования и воспроизводимость программных пакетов. В этом методе менеджер рабочих процессов и отдельные инструменты работают в контейнерахDocker 12 , что повышает совместимость с разными операционными системами, пока пользователь может запускать контейнеры.
Этот протокол предназначен для экспертов в области области, например, инженеров по термоядерной нейтронике, аналитиков по вычислительной гидродинамике или специалистов по конечным элементам, которые свободно владеют инструментами моделирования своей области, но ранее не использовали менеджер рабочих процессов или контейнерное развертывание. Предполагается знание одного симуляционного кода и базовой командной строки; знакомство с Галактикой или Омниверсом — нет. Читателям, новичкам в контейнеризации, следует ознакомиться с официальной документацией Docker (https://docs.docker.com/) или вводным обучением, доступным по адресу: https://uomresearchit.github.io/docker-introduction/ перед выполнением Раздела 1; Основные команды, необходимые для запуска программного обеспечения, все содержатся в протоколе.
Остальная часть этого отчёта будет посвящена настройке и использованию локально развертываемой системы. Затем будут выполнены этапы разработки новых инструментов для системы и метод связи других внешних пакетов с движком рабочего процесса, например, платформы метавселенной. На протяжении всего отчёта кейс-стади служит нейтронная симуляция с использованиемOpenMC 13 . OpenMC был выбран потому, что он демонстрирует полный конвейер CAD--симуляцию-выход-визуализацию, который мотивирует архитектуру рабочих процессов. Геометрический файл и конфигурационный файл служат структурированными входами; симуляция переноса нейтронов в Монте-Карло даёт скалярную метрику (коэффициент размножения трития, TBR), которую можно сравнить с известным диапазоном значений, а также пространственно разрешённый набор данных по нейтронным трекам, который можно обрабатывать и представлять в визуализируемом формате для 3D-рендеринга в приложении метавселенной.