Научная статья на тему 'СОЗДАНИЕ И ИНТЕГРАЦИЯ ЦИФРОВОГО ДВОЙНИКА'

СОЗДАНИЕ И ИНТЕГРАЦИЯ ЦИФРОВОГО ДВОЙНИКА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
609
133
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЦИФРОВОЙ ДВОЙНИК / НЕЙРОННЫЕ СЕТИ / СОВМЕСТНАЯ СИМУЛЯЦИЯ / БОЛЬШИЕ ДАННЫЕ / PYTHON

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Суримова В.А., Скородумова Е.А.

Введение. Интеллектуальные услуги жизненного цикла, наряду с принятием других стратегий интеллектуального производства, демонстрируют значительный потенциал для повышения производительности и конкурентоспособности предприятий. Становится очевидной потребность в высококачественных моделях процессов и программных представлений физического оборудования, которые особенно подробно отражают эволюцию своих физических аналогов. Технология цифровых двойников может обеспечить благодатную почву для разработки приложений жиз ненного цикла на основе Интернета вещей. В данной работе предлагается программный подход к процессу разработки цифрового двойника. Цель данной работы состоит в изучении методов создания программных фреймворков в контексте технологии цифровых двойников, а также изучение процесса создания и интеграции цифровых двойников и разработка собственного инструмента. Рассматриваются существующие методы создания двойников и описывается библиотека на Python, разработанная самостоятельно. В работе используются методы категории исследования в действии и философия Agile разработки. Методы. Выбор методологии при поиске ответов на вопросы, возникающие при изучении методов усовершенствования цифровых двойников, в основном относится к категории исследований в действии. В данной работе исследование в действии используется как качественный инстру мент, хорошо подходящий для ситуаций, когда исследователь стремится достичь двух различных целей, а именно: решить современную проблему, с которой сталкивается организация; внести вклад в пул знаний, который впоследствии может быть использован другими людьми для решения задач того же класса проблем. Результаты. Созданная библиотека поддерживает два режима получения данных: с помощью периодических запросов к базе данных и TCP-сокет соединение. Эксперименты, проведённые в рамках работы, позволяют сделать вывод о том, что библиотека уже сейчас может быть использована в качестве инструмента создания цифрового двойника и его интеграции.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Суримова В.А., Скородумова Е.А.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

DIGITAL TWIN CREATION AND INTEGRATION

Introduction. Smart lifecycle services, along with the adoption of other smart manufacturing strategies, show significant potential to increase the productivity and competitiveness of enterprises. There is a clear need for high-quality process models and software representations of physical hardware that reflect the evolution of their physical counterparts in particular detail. Digital twin technology can provide fertile ground for the development of IoT-based lifecycle applications. This paper proposes a software approach to the process of developing a digital twin. The purpose of this work is to study the methods of creating software frameworks in the context of digital twin technology, as well as to study the process of creating and integrating digital twins and developing our own tool. Existing methods for creating twins are considered and a self-developed Python library is described. The work uses the methods of the category of research in action and the philosophy of Agile development. Methods. The choice of methodology in seeking answers to questions that arise when studying methods for improving digital twins mainly falls into the category of research in action. In this paper, research in action is used as a qualitative tool, well suited to situations where the researcher seeks to achieve two different goals, namely: to solve a contemporary problem faced by the organization; contribute to a pool of knowledge that can later be used by other people to solve problems in the same class of problems. Results. Created library supports two modes of data retrieval: using periodic database queries and TCP socket connection. The experiments carried out as part of the work allow us to conclude that the library can already be used as a tool for creating a digital twin and its integration.

Текст научной работы на тему «СОЗДАНИЕ И ИНТЕГРАЦИЯ ЦИФРОВОГО ДВОЙНИКА»

doi: 10.36724/2409-5419-2022-14-4-54-64

СОЗДАНИЕ И ИНТЕГРАЦИЯ ЦИФРОВОГО ДВОИНИКА

СУРИМОВА

Валерия Александровна1

СКОРОДУМОВА

Елена Александровна2

АННОТАЦИЯ

Введение. Интеллектуальные услуги жизненного цикла, наряду с принятием других стратегий интеллектуального производства, демонстрируют значительный потенциал для повышения производительности и конкурентоспособности предприятий. Становится очевидной потребность в высококачественных моделях процессов и программных представлений физического оборудования, которые особенно подробно отражают эволюцию своих физических аналогов. Технология цифровых двойников может обеспечить благодатную почву для разработки приложений жизненного цикла на основе Интернета вещей. В данной работе предлагается программный подход к процессу разработки цифрового двойника. Цель данной работы состоит в изучении методов создания программных фреймворков в контексте технологии цифровых двойников, а также изучение процесса создания и интеграции цифровых двойников и разработка собственного инструмента. Рассматриваются существующие методы создания двойников и описывается библиотека на Python, разработанная самостоятельно. В работе используются методы категории исследования в действии и философия Agile разработки. Методы. Выбор методологии при поиске ответов на вопросы, возникающие при изучении методов усовершенствования цифровых двойников, в основном относится к категории исследований в действии. В данной работе исследование в действии используется как качественный инструмент, хорошо подходящий для ситуаций, когда исследователь стремится достичь двух различных целей, а именно: решить современную проблему, с которой сталкивается организация; внести вклад в пул знаний, который впоследствии может быть использован другими людьми для решения задач того же класса проблем. Результаты. Созданная библиотека поддерживает два режима получения данных: с помощью периодических запросов к базе данных и TCP-сокет соединение. Эксперименты, проведённые в рамках работы, позволяют сделать вывод о том, что библиотека уже сейчас может быть использована в качестве инструмента создания цифрового двойника и его интеграции.

Сведения об авторах:

1 студент, Московский Технический Университет Связи и Информатики, Москва, Россия, surimova.lera@mail.ru

2 к.ф.м.н, Московский Технический

Университет Связи и Информэтики, КЛЮЧЕВЫЕ СЛОВА: цифровой двойник, нейронные сети, совместная

доцент, Москва, Россия, eas@mtuci.ru симуляция, большие данные, Python.

Для цитирования: Суримова В.А., Скородумова В.А. Создание и интеграция цифрового двойника // Наукоемкие технологии в космических исследованиях Земли. 2022. Т. 14. № 4. С. 54-64. СЫ: 10.36724/2409-5419-2022-14-4-54-64

Введение

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

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

В данной работе предлагается программный подход к процессу разработки цифрового двойника.

Постановка задачи и методология

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

Предпосылки

Практики гибкой разработки программного обеспечения активно развиваются с 1990-х годов, и сегодня они почти заменили традиционную модель. В целом, они имеют больший успех по сравнению с традиционными методами, благодаря их потенциалу постепенного создания ценности для клиентов в быстрых циклах разработки. Самые ранние внедрения гибких методов по времени примерно совпадают с введением первых широко распространенных объектно-ориентированных языков программирования, таких как С++ (впервые появился в 1983 г.) и Java (1996г.). Этот факт поддерживает идею взаимосвязи между ними. Можно сделать вывод, что наличие высокопроизводительных инструментов может, по крайней мере косвенно, способствовать внедрению высокопроизводительных промышленных методов и наоборот.

Цель данной работы состоит в изучении методов создания программных фреймворков в контексте технологии цифровых двойников. Хотя аналогичные идеи предлагались ранее, термин «цифровой двойник» впервые упоминается в статье Глэссгена и Штаргеля, написанной по заказу НАСА и ВВС США [1]. Основные выводы из современных разработок ([1]-[5]) можно резюмировать в следующем списке особенностей цифровых двойников:

• Репрезентативность: каждый цифровой двойник -это цифровой артефакт, которому соответствует парный физический артефакт. Как правило, можно сделать надежные выводы о поведении физической системы, наблюдая за реакцией цифрового двойника на сигналы искусственного возбуждения.

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

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

С высокой степенью абстракции сложный цифровой двойник может быть реализован как набор программных агентов, взаимодействующих с артефактами в физической или цифровой области. Соответственно, любая структура, которая создана с целью поддержки построения таких конфигураций, должна иметь возможность надлежащим образом управлять этими сложными соединениями «многие ко многим». Для удобства использования необходимо учитывать, что задействованные физические/цифровые артефакты могут быть доступны с помощью различных технологий, например, REST API [6], запросов к базе данных SQL/NoSQL или более сложного протокола связи 1оТ, такого как FMI [7] или MQTT [8].

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

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

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

Методология исследования

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

Ярвинен [5] предложил рассматривать исследование в действии как подкласс исследовательских подходов к построению/оценке артефактов, в которых этапы построения и оценки выполняются циклически. В области исследований науки дизайна существует устоявшаяся идея о том, что простой процесс создания вещей и наблюдения за их работой, иногда даже постфактум, имеет большой потенциал как для развития прямого технологического прогресса, так и расширения базы научных знаний. В данной работе конструктивный подход выбран с целью получения более глубокого понимания проектирования и проведения экспериментов с цифровыми двойниками в контексте различных процессов непрерывного времени. Основная ценность данной работы заключается в создании прототипа минимально жизнеспособного продукта (minimum viable product, MVP) программной среды, которая поддерживает эту цель.

В частности, предлагаемое решение будет представлять собой объектно-ориентированную библиотеку, написанную на Python, которая направлена на создание абстракции для различных функций цифровых двойников низкого уровня. Далее следует отметить, что подход к исследованию циклического построения артефактов/оценки артефактов, очевидно, сродни различным Agile [9] методам разработки программного обеспечения (например, Scrum и т.п.). Таким образом, данный метод является подходящим выбором для практической реализации нашей задачи, которая по существу сводится к довольно стандартному проекту разработки программного обеспечения.

Выбранный подход дополнительно обоснован наблюдением за взаимосвязью между цифровыми двойниками и некоторыми из наиболее интересных современных исследовательских тем в области науки о данных. Сегодня инженеры-программисты все чаще практикуют машинное обучение (ML), глубокое обучение (DL) и искусственный интеллект (AI). Это связано с созданием современных библиотек глу-

бокого обучения с открытым исходным кодом (например, Tensorflow, PyTorch, Keras), которые доступны для широкого круга разработчиков с точки зрения их уровня абстракции. Поскольку технологии ML / DL / AI играют решающую роль в некоторых из наиболее интересных приложений цифровых двойников будущего (например, для профилактического обслуживания), вполне вероятно, что часть будущих разработчиков будет участвовать в проектах в обеих областях. Отсюда возникает понятие согласованности инструментов. Идея заключается в том, что повышение производительности может быть достигнуто, если программные интерфейсы в обоих доменах будут, по крайней мере приблизительно, поддерживать аналогичные рабочие процессы. Насколько нам известно, попыток реализовать такие инструменты было совсем немного и открытых сведений очень мало.

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

Цифровой двойник

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

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

Поскольку современные системы проектирования и производства уже в значительной степени оцифрованы, каждая уникальная реализация продукта в физическом мире оставляет за собой след в киберсфере; цифровую тень, которая

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

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

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

Концепцию цифрового двойника можно рассматривать как расширение временного окна симуляции до всего жизненного цикла продукта. В то время как традиционно моделирование рассматривалось в качестве инструмента в основном для проектных операций, парадигма цифрового двойника позволяет использовать возможности симуляции на этапах поставки, эксплуатации и даже вывода из эксплуатации. Таким образом, мы видим, как роль симуляции развивалась за последние десятилетия (рис. 1).

Claiuapiubje цисфучешы Индивидуальные симуляции приложен ил для для отвел на симуляции конкретные

ол экспертов по ИнАенернИе |моделировании» |вопросы

Системное проектирование па основе с и ч v 141:1111

позволяет применять междисциплинарный подход с расширенным спектром приложений

Концепция цифрового лвоиннка

Превращает симуляцию в основной функционал организации

1960

1985 2000 2015

Рис. 1. Эволюция роли симуляции

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

• Агенты процесса: сущности, которые взаимодействуют с данными процесса физических объектов или про-

цессов в общем, и переводят эти данные в промежуточную форму, интерпретируемую другими агентами, и из неё.

• Агенты симуляции: объекты, которые взаимодействуют с модулями симуляции и переводят свои данные в промежуточную форму и обратно.

Здесь цифровой двойник можно интерпретировать как отношение RDT между набором агентов процесса Р и набором агентов симуляции 5:

Rdt = {(A s)|(p,s) е P х S,

s потребляет данные, произведенные вр}

Очевидно, что упрощенное определение, данное в уравнении, не охватывает всего пространства возможных взаимосвязей между модулями совместной симуляции в S. В общем сценарии совместной симуляции очевидно, что агенты моделирования могут получать не только данные от агентов процесса P, но и от других агентов моделирования. Точно так же опускаются подходы, ориентированные на управление в S. Тем не менее, с учетом этих ограничений, данное уравнение помогает проиллюстрировать концепцию, которая используется в процессе создания простого цифрового двойника.

Создание простого цифрового двойника

В этом разделе мы покажем, как создать простой, но функциональный цифровой двойник на Python. В качестве физического объекта рассмотрим аккумулятор. Цифровой двойник позволит нам анализировать и прогнозировать поведение аккумулятора, и его можно интегрировать в любой рабочий процесс управления виртуальными объектами.

Перед началом работы с данными была проведена предварительная подготовка. Предобработка состояла из 4 этапов:

• импорт необходимых библиотек;

• импорт набора данных;

• обработка пустых значений;

• кодирование категориальных данных;

• тестовый и тренировочный наборы.

В набор данных, с которым мы будем работать, входят такие показатели аккумулятора как напряжение, температура и др. Наиболее интересным параметром является ёмкость аккумулятора, которую мы будем использовать для иллюстрации работы двойника. Также в датасет входят временные метки, тип аккумулятора и его название.

Описание модели

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

Аккумуляторы с истекшим сроком службы обычно предлагают только 80% от их номинальной максимальной емкости. Это ухудшение можно записать следующим образом, используя одну из эмпирических моделей:

L = 1 -(1 - L') Î

Применение нейронных сетей

где Ь - срок службы аккумулятора, V - начальный срок службы батареи, а - линеаризованная скорость снижения эффективности за единицу времени и за цикл.

Эта скорость может быть записана как функция от времени глубины цикла разряда 5, среднего за цикл состояния заряда с и температуры элемента Тс:

/„ = Л (/ Тс) •

Наша модель должна прогнозировать время автономной работы на основе полученной информации.

Для создания цифрового двойника будем использовать реальные данные НАСА о циклах зарядки-разрядки аккумуляторов (наборы данных об износе литий-ионных аккумуляторов). Прежде чем мы начнем, мы заменим переменную Ь (время автономной работы) на С (емкость аккумулятора) [10]. Мы получим следующее уравнение емкости:

С = С0вл .

Здесь С - емкость аккумулятора, Со - начальная емкость аккумулятора. Для /а будем использовать следующее приближение:

fd = к

T. t

где I - цикл заряда-разряда, Тс - температура, измеренная в элементе во время цикла, и - время разряда, и к - эмпирическая константа со значением 0,13 [10].

Сгруппируем данные по циклам и изобразим график сравнения нашей модели и реальных данных. Результат этого шага представлен на рисунке 2.

Рис. 2. График сравнения модели и реальности

Для оценки точности полученной модели можно посчитать Mean Absolute Error (МАЕ - Средняя абсолютная ошибка) [11]. Средняя абсолютная ошибка является мерой ошибки между реальными наблюдениями и смоделированными значениями. Полученный результат МАЕ = 0,004 позволяет сказать, что точность достаточно высока.

Для усовершенствования нашей модели применим нейронную сеть (см. рис. 3).

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

Рис. 3. Создание цифрового двойника Многослойный перцептрон

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

Воспользуемся функцией Dense из библиотеки Keras, которая создает полностью связанный слой нейронной сети, автоматически инициализируя веса как смещения.

Для иллюстрации обучения нейронной сети выведем график сравнения МАЕ (рис. 4). На данном графике мы видим значения МАЕ для тренировочного набора данных и для проверочного (validation set). Они показывают, что наша нейронная сеть не переучена и хорошо описывает данные, с которыми ещё не работала, так как уровень тренировочной и проверочной МАЕ находится в одном диапазоне. Также сравним показания смоделированной ёмкости и тренировочной ёмкости нейросети (рис. 5).

Рис. 4. Сравнение МАЕ

Обучение сети

0.08

• Сноделиромпгая Емкость

— Тренировочная Емкость

0.06

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

-0.06

1.3 1.4 1.5 1.6 1.7 1.3

Смоделированная ЁМКОСТЬ

Рис. 5. Сравнение результатов модели с экспериментальными результатами

Как видно из рисунка 5, нейронная сеть получает базовое понимание различий между построенной математической моделью и экспериментальными результатами. Теперь можно добавить эти знания к нашей математической модели для её усовершенствования.

Далее мы можем сравнить нашу математическую модель (смоделированная емкость), реальные данные (наблюдаемая емкость) и модель нашего цифрового двойника (рис. 6).

Сравнение цифрового двойника с другими моделями

0 20 40 60 00 100 120 140 160

Циклы

Рис. 6. Сравнение моделей

На рисунке 6 показано, как цифровой двойник улучшил нашу модель. Его преимущество заключается в том, что он позволяет использовать полуэмпирическую математическую модель и уточнять ее с помощью экспериментальных данных. Он имеет преимущества перед обеими моделями: особенно математической, поскольку она может быть улучшена, и моделью МЪ, поскольку двойник является более обобщённым (поэтому может быть применен, например, к другому аккумулятору, получая лучшую точность, чем при использовании только модели МЪ).

С помощью цифрового двойника мы можем строить прогнозы относительно работы аккумулятора. Результат представлен на рис. 7. Пунктирными линиями на графике изображены предсказанные значения ёмкости математической модели (синий цвет) и цифрового двойника (красный цвет). Мы видим, что предсказанная двойником емкость меньше, чем смоделированная ёмкость.

Прогноз емкости аккумулятора

Циклы

Рис. 7. Прогноз двойника и математической модели Рекуррентная сеть LSTM

Часто для работы с последовательными данными используют рекуррентные нейронные сети, которые также называют нейронными сетями с обратной связью. Недостатком рекуррентных сетей является то, что элементы обрабатываются поочерёдно, что ведёт к большим затратам памяти. Поэтому была создана такая нейронная сеть как длинная цепь элементов краткосрочной памяти (LSTM - Long short-term memory) [12]. LSTM позволяет передавать информацию, пропуская большую часть обработки текущего элемента и быстрее переходить к следующему. Это даёт возможность сохранять память для более длинных последовательностей.

Выведем соответствующие графики сравнения МАЕ, сравнения цифрового двойника с другими моделями и график прогноза для модели с LSTM (рис. 8-10).

Обучение сети

Рис. 8. Сравнение тренировочной и проверочной МАЕ для Ь8ТМ

Сравнение цифрового двойника с другими моделями

Циклы

Рис. 9. Сравнение цифрового двойника Ь8ТМ с другими моделями

Рис. 10. Прогноз ёмкости с использованием ЬБТМ

Очевидно, результаты, полученные с помощью нейронной сети Ь8ТМ, не имеют глобальных отличий от значений цифрового двойника, основанного на многослойном перцеп-троне. Однако, можно заметить, что разница между проверочной и тренировочной МАЕ для Ь8ТМ немного выше. Также мы видим, что в начале прогнозируемого отрезка емкость данного цифрового двойника принимает значения меньше, чем значения двойника с полносвязной сетью.

Трансформер

В предыдущем разделе были рассмотрены основные простые нейронные сети, которые обычно применяют для работы с последовательными данными, и временными рядами, в частности. Далее применим другую нейронную сеть, которую обычно используют для работы с текстом и языками -трансформер. Его архитектура представлена на рисунке 11.

Multi-head attention - это одна из самых примечательных частей архитектуры, которая отличает трансформер от других видов нейронных сетей. Это специальный новый слой, который дает возможность каждому входному вектору взаимодействовать с другими элементами через механизм внимания (Attention mechanism), вместо передачи скрытого представления (hidden state) как в RNN (Recurrent neural network - рекуррентная нейронная сеть).

В трансформере модуль внимания повторяет свои вычисления несколько раз параллельно. Каждый из них называется Attention Head. Модуль внимания разбивает свои параметры «Запрос», «Ключ» и «Значение» по N-путям и передает каждое разбиение независимо через отдельную «голову». Затем все эти похожие вычисления объединяются для получения окончательной оценки внимания. Этот процесс называется «многоголовым вниманием» и дает трансформе-ру больше возможностей для кодирования множества взаимосвязей и нюансов для каждого элемента. Для модуля multi-head attention нами была создана специальная функция. Также к каждому исходному вектору в трансформере применяется нейронная сеть с прямой связью.

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

Рассмотрим графики для полученной модели (рис. 12-13). По графикам можно заметить, что показатели трансформера немного отличаются от показателей остальных нейронных сетей. Это связано с тем, что обычно их применяют для более объёмных наборов данных. Показатели проверочной МАЕ заметно выше, чем показатели предыдущих двойников, а значения емкости ниже смоделированных и реальных.

Рис. 12. Сравнение МАЕ для трансформера

Рис. 11. Архитектуратрансформера

Рис. 13. Сравнение цифрового двойника трансформера с другими моделями

Таким образом, мы рассмотрели процесс создания простого цифрового двойника с помощью трёх различных нейронных сетей: многослойного перцептрона, LSTM и трансформера. Самым простым в применении является многослойный перцептрон. Данная нейронная сеть также показала высокую точность предсказаний. Цифровой двойник с LSTM и полносвязная сеть продемонстрировали практически одинаковые результаты, однако, если нам важно более эффективно использовать память, подходящим выбором будет нейронная сеть LSTM. В случае, когда важна скорость обучения и наилучшая эффективность работы модели, стоит выбирать нейронную сеть трансформер, так как вычисления в этой модели выполняются параллельно.

Библиотека для совместной симуляции

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

В ходе работы был разработан прототип библиотеки цифровых двойников Python под названием DTSimulator. Данная библиотека - это инструмент интеграции цифрового двойника, который может быть использован для любых физических объектов. Библиотека является минимально жизнеспособным продуктом в том смысле, что она охватывает основные функции вместе с соответствующими модульными тестами, но еще не была тщательно проверена на интеграцию для всех возможных сценариев использования. Архитектура программного обеспечения полностью основана на подходе объектно-ориентированного программирования (ООП), так что классы высокого уровня могут быть легко расширены для поддержки еще большего количества различных типов входных потоков и моделей.

Архитектурабиблиотеки основывается на совместной работе трех различных классов:

• Источники данных (класс MeasurementStreamHandler), представляющие физические активы и исходящие от них потоки данных процесса.

• Потребители данных (класс ModelHandler), представляющие модели цифровых активов, которые имитируют или делают выводы о поведении соответствующих источников данных.

• Человек-оператор.

Предлагаемый MVP обеспечивает решение проблемы лаконичного построения конвейеров данных в режиме онлайн ме^ду источниками данных и потребителями данных, обеспечивая необходимые формальные преобразования на этом пути (рис. 14).

вов потребителей данных существует взаимосвязь «многие ко многим». В терминах ООП эти отношения строятся с помощью отдельной сущности Experiment, которая, помимо прочего, отвечает за хранение маршрутов данных от измерений к моделям для данного вызова (рис. 15).

Рис. 14. Схема БТЗтиЫог

Между источниками данных (физическими активами, на основе которых производятся измерения) и моделями акти-

Рис. 15. Диаграмма классов уровня спецификации

В DTSimulator все данные существуют в одном из двух возможных форматов:

1) объект Measurment, который обозначает структуру данных с меткой времени, полученную от физического актива.

2) объект ModelResponse, который аналогичным образом обозначает структуру данных с меткой времени, полученную от цифрового актива.

Для каждого объекта Measurement, который создается из данных, полученных от физического объекта, в парном цифровом объекте создается ровно один объект ModelResponse. Measurement и ModelResponse представляют собой коллекции "ключ-значение".

В библиотеке существуют следующие категории ключей:

• Ключи ввода (input keys): ключи в объекте Measurement, которые ожидаются в качестве входных данных BModelHandler.

• Целевые ключи (target_keys): ключи, которыебудут выведены из экземпляра ModelHandler в объект ModelResponse.

• Контрольные ключи (control keys): ключи в Measurement, используемые в качестве проверочной переменной для выходных данных ModelHandler.

• Ключ временной отметки (timestamp_keys): ключ, обозначающий момент создания соответствующего экземпляра Measurement или ModelResponse.

На уровне реализации MeasurementStreamHandler и ModelHandler являются родительскими классами. На рисунке 16 показана иерархия наследования MeasurementStreamHandler.

MeasurementStreamPoller используется при получении данных измерений с помощью периодических запросов к базе данных. IncomingMeasurementListener применяется для случая ТСР-сокет соединения.

Аналогичная иерархическая структура присутствует в классе ModelHandler (рис. 17).

Ключевыми на временной шкале эксперимента DTSimulator являются моменты, когда возвращается объект ModelResponse. На этом этапе содержимое ModelResponse записывается во внешний файл в виде значений, разделенных запятыми, в следующем порядке:

timestamp, input keys, target keys, control keys

Рис. 16. Иерархия Меа8игетеп181геатНап111ег

Пример использования библиотеки

Рассмотрим решение задачи прогнозирования мощности двигателя с помощью созданной библиотеки. Для демонстрации работы библиотеки воспользуемся данными испытаний на выбросы внедорожных дизельных двигателей [13].

Необработанные данные представлены в виде матрицы 1238x3, где первый столбец соответствует прошедшему времени в секундах, второй столбец - нормализованной частоте вращения двигателя (в процентах от максимума), а третий столбец соответствует нормализованному крутящему моменту двигателя (в процентах от максимума).

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

рад

■ Т [Ям],

где

а

рад

601 -1

Здесь п - скорость вращения, выраженная в оборотах в минуту (об/мин).

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

В соответствии с архитектурой ВТ§1ти1аЮг эксперимент состоит в периодическом опросе базы данных на наличие новых данных, и всякий раз, когда новые данные становятся доступными, они передаются подключенной модели. Однако, поскольку в этом случае необработанные данные находятся в простом С8У-файле, был разработан отдельный механизм для моделирования периодических измерений, записываемых в базу данных.

Цель эксперимента состоит в том, чтобы отслеживать входящие данные и делать выводы. Этот процесс довольно прост с использованием встроенных методов, содержащихся в классах ModelHandler. Когда код запущен, экземпляр симуляции активируется программно, и пользователь может просмотреть результаты моделирования в окне плоттера в реальном времени. В итоге результаты сохраняются в выходной С8У-файл для последующего изучения и/или последующей обработки с помощью произвольных инструментов. На рисунке 22 показан график окончательных результатов, полученных в среде симуляции.

Рис. 17. Иерархия ММеШашИег

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

бремя (с)

Рис. 18. Результаты эксперимента ОТЭгтиМог один-к-одному

На графике мы видим результат совместной симуляции -мы одновременно получаем измерения мощности двигателя и предсказанные показатели DTSimulator.

Заключение

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

Созданная библиотека поддерживает два режима получения данных: с помощью периодических запросов к базе данных и ТСР-сокет соединение. Эксперименты, проведённые в рамках работы, позволяют сделать вывод о том, что библиотека уже сейчас может быть использована в качестве инструмента создания цифрового двойника и его интеграции.

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

Литература

1. Glaessgen E., Stargel D. The Digital Twin Paradigm for Future NASA and U.S. Air Force Vehicles II 53rd AI-AA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics and Materials Conference - Special Session on the Digital Twin, 2012, pp. 1-14.

2. Пономарев К.С., Феофанов A.H. Цифровой двойник производства как инструмент цифровизации технологических процес-

сов предприятия II Актуальные тренды и перспективы развития науки, техники, технологий: сборник научных трудов по материалам Международной научно-практической конференции / Под общ. ред. Е. П. Ткачевой. Белгород: ООО Агентство перспективных научных исследований (АПНИ), 2019. С. 141-144.

3. Фюер Ц., Вейсманн Ц. Преимущества "цифрового двойника" II CAD/CAM/CAE Observer. 2017. №5 (113). С. 50-53 II Радиопромышленность. 2015. № 4. С. 56-64.

4. Ponomarev K., Kudryashov N., Popelnukha N., Potekhin V. Main principals and issues of digital twin development for complex technological processes II Ann. DAAAM Proc. Int. DAAAM Symp., pp. 523-528,2017.

5. Jarvinen P. Research Questions Guiding Selection of an Appropriate Research Method PerttiJarvinen Research Questions Guiding Selection of an Appropriate Research Method II Proceedings of European Conference on Information Systems 2000, 3-5 July, 2000.

6. Richardson L., Ruby S. RESTful Web Services. OReilly Media, Inc., 2008.

7. Martin Otter, HildingElmqvist, TorstenBlochwitz, Jakob-Mauss, Andreas Junghanns, Hans Olsson. Functional Mockuplnterface-Overview, 2010.

8. Naik N. Choice of effective messaging protocols for IoT systems: MQTT, CoAP, AMQP and HTTP II Proc. IEEE Int. Syst. Eng. Symp. (ISSE), Oct. 2017, pp. 1-7.

9. Beck K. et al. Manifesto for Agile Software Development. Manifesto for Agile Software Development, 2001. URL: http://www.agilemanifesto.org/.

10. Xu Bolun, Oudalov Alexandre, Ulbig Andreas, Andersson Goran, Kirschen D.s. Modeling of Lithium-Ion Battery Degradation for Cell Life Assessment II IEEE TransactionsonSmartGrid. 99. 2016. 1-1. 10.1109/TSG.2016.2578950.

11. Willmott Cort J., Matsuura, Kenji, Advantages of the mean absolute error (MAE) over the root mean square error (RMSE) in assessing average model performance II Climate Research. December 19, 2005, no. 30, pp. 79-80.

12. Olah C. Understanding LSTM Networks, 2015. URL: http://colah.github.io/posts/2015-08-Understanding-LSTMs/

13. Dieselnet. Nonroad Transient Cycle (NRTC). 2019. URL: https://www.dieselnet.com/standards/cycles/nrtc.php.

DIGITAL TWIN CREATION AND INTEGRATION

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

VALERIA A. SURIMOVA,

Moscow, Russia, surimova.lera@mail.ru

KEYWORDS: Digital Twin, Neural Networks, Collaborative Simulation, Big Data, Python

ELENA A. SKORODUMOVA,

Moscow, Russia, eas@mtuci.ru

ABSTRACT

Introduction. Smart lifecycle services, along with the adoption of other smart manufacturing strategies, show significant potential to increase the productivity and competitiveness of enterprises. There is a clear need for high-quality process models and software representations of physical hardware that reflect the evolution of their physical counterparts in particular detail. Digital twin technology can provide fertile ground for the development of IoT-based lifecycle applications. This paper proposes a software approach to the process of developing a digital twin. The purpose of this work is to study the methods of creating software frameworks in the context of digital twin technology, as well as to study the process of creating and integrating digital twins and developing our own tool. Existing methods for creating twins are considered and a self-developed Python library is described. The work

uses the methods of the category of research in action and the philosophy of Agile development. Methods. The choice of methodology in seeking answers to questions that arise when studying methods for improving digital twins mainly falls into the category of research in action. In this paper, research in action is used as a qualitative tool, well suited to situations where the researcher seeks to achieve two different goals, namely: to solve a contemporary problem faced by the organization; contribute to a pool of knowledge that can later be used by other people to solve problems in the same class of problems. Results. Created library supports two modes of data retrieval: using periodic database queries and TCP socket connection. The experiments carried out as part of the work allow us to conclude that the library can already be used as a tool for creating a digital twin and its integration.

REFERENCES

1. Glaessgen E., Stargel D., "The Digital Twin Paradigm for Future NASA and U.S. Air Force Vehicles," 53rd AIAA/ASME/ASCE/AHS/ASC Structures, Structural Dynamics and Materials Conference - Special Session on the Digital Twin, 2012, pp. 1-14.

2. Ponomarev K.S., Feofanov A.N. Digital twin of production as a tool for digitalization of technological processes of an enterprise. Actual trends and prospects for the development of science, technology, technology: a collection of scientific papers based on the materials of the International Scientific and Practical Conference. Belgorod: LLC Agency for Advanced Scientific Research (APNI), 2019, pp. 141-144.

3. Fuer Z., Weismann Z. The advantages of the "digital twin". CAD/CAM/ CAE Observer. 2017. No. 5 (113), pp. 5053; Radio industry. 2015. No. 4, pp. 56-64.

4. Ponomarev K., Kudryashov N., Popelnukha N., Potekhin V., "Main principals and issues of digital twin development for complex technological processes," Ann. DAAAM Proc. Int. DAAAM Symp., pp. 523-528, 2017.

5. Jarvinen P., "Research Questions Guiding Selection of an Appropriate Research Method Pertti Jarvinen Research Questions Guiding Selection of an Appropriate Research Method," Proceedings of European Conference on Information Systems, 2000, 3-5 July, 2000.

6. Richardson L., Ruby S., "RESTful Web Services,"O'Reilly Media, Inc., 2008.

7. Martin Otter, Hilding Elmqvist, Torsten Blochwitz, JakobMauss, Andreas Junghanns, Hans Olsson, "Functional MockupInterface-Overview", 2010.

8. Naik N., ''Choice of effective messaging protocols for loT systems: MQTT, CoAP, AMQP and HTTP,'' Proc. IEEE Int. Syst. Eng. Symp. (ISSE), Oct. 2017, pp. 1-7.

9. Beck K. et al., "Manifesto for Agile Software Development," Manifesto for Agile Software Development, 2001. URL: http://www.agilemanifesto.org/.

10. Xu Bolun, Oudalov Alexandre, Ulbig Andreas, Andersson Goran, Kirschen D.s. (2016). Modeling of Lithium-Ion Battery Degradation for Cell Life Assessment. IEEE Transactionson Smart Grid. 99. 1-1. 10.1109/TSG.2016.2578950.

11. Willmott Cort J., Matsuura Kenji (December 19, 2005). "Advantages of the mean absolute error (MAE) over the root mean square error (RMSE) in assessing average model performance". Climate Research. No. 30, pp. 79-80.

12. Olah C., "Understanding LSTM Networks," 2015. URL:http://colah.github.io/posts/2015-08-Understanding-LSTMs/

13. Dieselnet, "Nonroad Transient Cycle (NRTC)," 2019. URL:https://www.dieselnet.com/standards/cycles/nrtc.php.

INFORMATION ABOUT AUTHORS:

Valeria A. Surimova, Moscow Technical University of Communications and Informatics, student, Moscow, Russias, urimova.lera@mail.ru Elena A. Skorodumova, Moscow Technical University of Communications and Informatics, Associate Professor, Ph.D., Moscow,

For citation: Surimova V.A., Skorodumova E.A. Digital twin creation and integration. H&ES Reserch. 2022. Vol. 14. No 4. P. 54-64. doi: 10.36724/2409-5419-2022-14-4-54-64 (In Rus)

i Надоели баннеры? Вы всегда можете отключить рекламу.