Пленарные доклады

Программный комплекс поддержки процессов системной инженерии и имитационного моделирования

С.Н. Васильев,
академик РАН,
snv@ipu.ru,
С.П. Ковалёв,
в.н.с., д.ф.-м.н., kovalyov@nm.ru
ИПУ РАН, г. Москва

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

 

A software system designed for comprehensive support of modern systems engineering methods that provide the formation, analysis, transformation of digital models during the life cycle of complex engineering products is considered. A brief overview of systems engineering processes to be automated is given. The list and functions of subsystems of the system are presented. Key principles of the mathematical device for systems engineering based on constructive logic and category theory capable to provide accurate automatic calculation of systemic solutions are described.

Введение

Качественно спроектировать современное высокотехнологичное промышленное изделие невозможно без опоры на методы и инструменты системной инженерии, основанные на комплексном многоаспектном моделировании изделия в компьютерном виртуальном пространстве [1]. Целью привлечения методов и моделей является соблюдение целевых требований и сертификационных ограничений, предотвращение системных коллизий, плавный бесшовный переход между стадиями, снижение затрат на всех стадиях жизненного цикла изделия. Действительно, если формируется широкий набор взаимоувязанных разнородных моделей, отражающих все части и аспекты изделия, то повышение эффективности управления жизненным циклом изделия достигается за счет редукции к манипуляциям над моделями. Все процедуры жизненного цикла сначала задаются, оптимизируются и верифицируются на моделях «в цифре», и только потом выполняются «в железе» [2]. Для всесторонней поддержки формирования, анализа, трансформации цифровых моделей по ходу жизненного цикла необходим мощный комплекс специализированных программных средств. Более того, чтобы результаты анализа на моделях заслуживали высокого доверия, необходимо проводить анализ с математическим уровнем строгости. Здесь целесообразно применять нетрадиционный аппарат, основанный на конструктивной логике и теории категорий.

Предполагается использовать этот подход для реализации системного фундамента глобального отечественного доверенного инженерного программного комплекса системы управления полным жизненным циклом сложных технических изделий. Проект по созданию такого комплекса планируется реализовать силами консорциума ведущих отечественных разработчиков программного обеспечения, учрежденного Республикой Татарстан, МГТУ им. Н.Э. Баумана и КНИТУ-КАИ, при научном сопровождении Института проблем управления им. В.А. Трапезникова РАН [3].

1. Процессы системной инженерии

Проблемы организации жизненного цикла сложных изделий относятся к компетенции специальной инженерной дисциплины – системной инженерии [4]. Система понимается как «совокупность взаимосвязанных компонентов, которые работают совместно для достижения общей цели» [4, с. 53]. Главным исходным мотивом к созданию систем является присущая им эмерджентность – появление свойств и возможностей по достижению цели, отсутствующих у любого из компонентов. К числу, может быть, наиболее известных практик системной инженерии относятся сбор и анализ требований, выработка системной архитектуры, выделение интерфейсов, моделирование, трассирование, верификация (проверка) и валидация (приемка), организационное управление жизненным циклом. В проектах, составляющих жизненный цикл сложного технического изделия, системный инженер организует деятельность инженеров-специалистов по отдельным частям и аспектам (механическим, электрическим, программным и т.д.) так, чтобы части могли быть собраны в цельную систему, обладающую ожидаемой эмерджетностью, при условии соблюдения наложенных временных и стоимостных ограничений.

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

В целях преодоления этих проблем в конце 2000-х годов был предложен новый модельно-ориентированный подход в системной инженерии (Model-Based Systems Engineering, MBSE) [5]. Подход MBSE предлагает инженерам работать не с документами, а с моделями – абстрактными формальными представлениями системных решений, пригодными к автоматической обработке на компьютерах. Абстрагирование и автоматизация рассматриваются как главные факторы, позволяющие создавать значительно более сложные системы, чем в рамках документо-ориентированного подхода. В самом начале жизненного цикла нового изделия, исходя из ожиданий заинтересованных сторон, строятся функциональные модели. В ходе проектирования они в соответствии с разнообразными требованиями к изделию дополняются логическими (системными), геометрическими, компоновочными, расчетными и другими моделями. Модели включают не только механическую основу изделия, но и кабельные сети и трубопроводы, термоэлектрогидравлические элементы, аппаратные и программные средства управления и др. По этим моделям строятся, визуализируются и анализируются реалистичные анимационные (имитационные) сценарии поведения изделия в различных условиях. Производится автоматическое исследование пространства проектных параметров (Design Space Exploration, DSE) [6] и многокритериальная оптимизация конфигураций изделия по широкому спектру эксплуатационных характеристик изделия (массогабариты, долговечность, расход топлива и т.д.). Одновременно проводится оценка и повышение технологичности конструкции изделия по критериям удобства сборки, ремонта, утилизации (Design For Assembly, DFA) [7]. Выявляются и устраняются на моделях всевозможные коллизии, как между компонентами изделия, так и между изделием и его окружением. По окончании проектирования, фактическая сборка и натурные испытания изделий выполняются в соответствии с моделями под контролем соответствующей системы управления. Далее в ходе эксплуатации модели стадии проектирования применяются как эталоны при периодической оценке потребности изделия в ремонте. Здесь моделирование проводится, чтобы грубо, но быстро оценить последствия воздействий, которым изделие подвергается в ходе эксплуатации (в том числе нештатных, не учтенных при проектировании), сформировать производственные задания на ремонт и модернизацию изделия (в том числе после нештатных ситуаций и/или с нештатными запасными частями), проявить другие аспекты фактических взаимоотношений изделия с реальным миром. Средства комплексного оперативного эксплуатационного моделирования и принятия решений придают изделию важное эмерджентное свойство, известное как эластичность к внешним воздействиям (resiliency) [8].

Следует иметь в виду, что большое количество разноплановых моделей может вызвать трудности при модификации изделия: необходимо согласованно модифицировать модели, ответственные за разные части или аспекты системы и записанные на разных языках. Условия согласованности выявляются путем трассирования требований – прослеживания их реализации в разнородных моделях. Чем полнее и детальнее проведено трассирование, тем проще локализовать модификации, необходимые в ответ на очередное требование, и избежать побочных эффектов, способных вызвать утрату соответствия другим требованиям. Проблема организации эффективного трассирования находится в фокусе интенсивных исследований в модельно-ориентированной инженерии программного обеспечения, где трассирование традиционно относится к числу самых трудоемких операций [9]. Результаты этих исследований могут быть заимствованы в целях сквозного трассирования требований на протяжении всего жизненного цикла изделия [2].

2. Структура программного комплекса

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

·      Система управления требованиями (Requirements Management);

·      Система управления изменениями и конфигурациями (Change & Configuration Management);

·      Система управления испытаниями и моделированием (Test & Modelling);

·      Система управления качеством, рисками и надежностью (Quality, Risk & Reliability Management).

2.1. Система управления требованиями

В рамках процесса управления требованиями к изделию, заинтересованные стороны с применением соответствующей автоматизированной системы документируют и анализируют требования, управляют приоритетами, трассированием на протяжении всего жизненного цикла, верификацией и валидацией требований. Эта деятельность регламентируется стандартом ISO/IEC/IEEE 29148:2011 «Системная и программная инженерия. Процессы жизненного цикла. Разработка требований».

Система управления требованиями обладает следующими функциями:

·      выявление и фиксация требований;

·      верификация и валидация требований;

·      документирование и утверждение требований;

·      верификация проектных решений и документов на соответствие требованиям;

·      трассирование требований.

2.2. Система управления изменениями и конфигурациями

Основной целью управления изменениями и конфигурациями изделия является удовлетворение потребностей заинтересованных сторон за счет применения модификаций, вариантов исполнения и дополнительных опций базовой конфигурации изделия, а также сопровождение всех конфигураций путем скрупулезного учета и управления изменениями. Эта деятельность регламентируется стандартом ISO 10007:2003 «Системы менеджмента качества. Руководящие указания по менеджменту конфигурации».

Система управления изменениями и конфигурациями обладает следующими функциями:

·        регистрация изменений;

·        анализ влияния изменений;

·        оптимизация процедур внесения изменений;

·        контроль внесения изменений;

·        планирование управления конфигурациями;

·        идентификация конфигураций;

·        оптимизация конфигураций;

·        учет статуса конфигураций;

·        аудит конфигураций;

·        формирование каталога запасных частей и услуг по техническому обслуживанию в разрезе конфигураций;

·        управление сервисной информацией в разрезе конфигураций.

2.3. Система управления испытаниями и моделированием

Как указывалось во введении, компьютерное моделирование и симуляция лежит в основе современного подхода к управлению жизненным циклом сложных изделий. В сфере модельно-ориентированной системной инженерии пока нет устоявшихся стандартов основополагающего характера, имеется только ряд стандартов, регламентирующих те или иные ее аспекты, например семейство стандартов компьютерного представления инженерных моделей ISO 10303 STEP.

Система управления испытаниями и моделированием обладает следующими функциями:

·      поддержка процессов комплексного многоаспектного моделирования;

·      имитационное моделирование;

·      экспресс-оценка геометрических и мультифизических характеристик изделия;

·      топологический анализ прокладки сетей и коммуникаций;

·      выявление путей распространения шума и вибрации;

·      генерация встроенного программного обеспечения для системы управления изделием;

·      анализ интерфейсов и обнаружение коллизий;

·      исследование пространства проектных параметров;

·      оценка технологичности конструкции изделия по критериям удобства сборки, ремонта, утилизации;

·      сбор данных натурных испытаний;

·      оценка соответствия моделей натурным испытаниям.

2.4. Система управления качеством, рисками и надёжностью

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

Система управления качеством, рисками и надежностью обладает следующими функциями:

·      расчёт показателей надежности и долговечности;

·      построение деревьев отказов;

·      анализ видов, последствий и критичности отказов;

·      сбор статистики по отказам;

·      прогнозирование ремонтопригодности и расчёт периодов обслуживания;

·      выработка корректирующих мероприятий;

·      оценка затрат жизненного цикла и совокупной стоимости владения изделием;

·      анализ рисков отказов.

3. О математическом аппарате системной инженерии

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

Один из перспективных подходов к ее построению основывается на наблюдении, что даже примитивные инструменты модельно-ориентированного подхода способны накапливать полную историю разработки всех моделей в ходе жизненного цикла [2]. Если известны математические модели компонентов и технологических операций разработки систем, то можно рассчитывать интегральные характеристики системы по формальным аналогам сборочных чертежей или «мегамоделям» – ориентированным графам (диаграммам), узлы которых помечены обозначениями компонентов, а ребра помечены обозначениями операций. Здесь требуется формировать и обрабатывать большие графы, которые целиком даже нельзя изобразить, а можно только описать структурными ограничениями. Мощный аппарат для конструирования и анализа диаграмм такого типа развит в рамках теории категорий – раздела высшей алгебры, который «начинается с наблюдения, что многие свойства математических систем можно представить просто и единообразно посредством диаграмм» [10, с. 12]. Системным единицам (компонентам, подсистемам, системам как целое и т.д.) сопоставляются объекты подходящих категорий, операциям сопоставляются морфизмы, комплексным технологическим процедурам сопоставляются диаграммные конструкции [11]. В целях структурного согласования разнородных процедур, заданных в разных категориях такого рода, вводятся подходящие функторы между этими категориями.

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

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

Заключение

Применение подхода, представленного в докладе, при создании программного средства системы управления полным жизненным циклом сложных технических изделий позволит обеспечить всестороннюю поддержку процессов системной инженерии. Архитектуру предлагаемого комплекса целесообразно сделать микрокомпонентной – организовать в виде большого набора небольших инструментов, хорошо интегрирующихся друг с другом и с системами сторонних производителей. Это позволит собирать в режиме «конструктора» любую конкретную программную систему управления жизненным циклом с учетом специфики конкретных предприятий, конкретных изделий, конкретных инженерных практик. Микрокомпонентная архитектура также дает большую свободу выбора вариантов развертывания системы по программно-аппаратной базе, в том числе распределение функций по уровням иерархии управления, размещение ресурсоемких задач в вычислительном облаке и др.

Литература

1.  Modeling and Simulation-Based Systems Engineering Handbook. L.: CRC Press, 2014.

2.  Ковалёв С.П., Толок А.В. Применение модельно-ориентированного подхода в управлении жизненным циклом технических изделий // Информационные технологии в проектировании и производстве. 2015. № 2. С. 3–9.

3.  Нелюб В.А. Проект разработки отечественного глобального программно-аппаратного комплекса управления жизненным циклом сложных инженерных объектов для нужд ОПК и базовых отраслей промышленности // Тезисы 14-й международной конференции «Системы проектирования, технологической подготовки производства и управления этапами жизненного цикла промышленного продукта (CAD/CAM/PDM – 2014)». М.: «Аналитик», 2014. С. 12.

4.  Косяков А., Свит У., Сеймур С., Бимер С. Системная инженерия. Принципы и практика. М.: ДМК Пресс, 2014.

5.  Long D., Scott Z. A Primer For Model-Based Systems Engineering. Blacksburg: Vitech corp., 2011.

6.  Neema S., Sztipanovits J., Karsai G., Butts K. Constraint-Based Design-Space Exploration and Model Synthesis // Lecture Notes in Computer Science. 2003. Vol. 2855. P. 290–305.

7.  Boothroyd G., Dewhurst P., Knight W. Product Design for Manufacture and Assembly. 2nd Edition. NY: Marcel Dekker, 2002.

8.  Rieger C.G., Gertman D.I., McQueen M.A. Resilient Control Systems: Next Generation Design Research // Proc. 2nd Conf. Human System Interactions HSI'09. Piscataway: IEEE Press, 2009. P. 629–633.

9.  Aizenbud-Reshef N., Nolan B., Rubin J., Shaham-Gafni Y. Model Traceability // IBM Systems Journal. 2006. Vol. 45(3). P. 515–526.

10.  Маклейн С. Категории для работающего математика. М.: Физматлит, 2004.

11.  Ковалёв С.П. Диаграммное описание комплексирования программных систем // Вестник НГУ. Серия: Математика, механика, информатика. 2012. Т. 12, № 3. С. 103–126.

12.  Васильев С.Н. Формализация знаний и управление на основе позитивно-образованных языков // Информационные технологии и вычислительные системы. 2008. № 1. С. 3–19.