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

доктора технических наук
Колесов, Юрий Борисович
город
Санкт-Петербург
год
2003
специальность ВАК РФ
05.13.01
Диссертация по информатике, вычислительной технике и управлению на тему «Развитие метода объектно-ориентированного анализа для задач проектирования гибридных систем управления»

Автореферат диссертации по теме "Развитие метода объектно-ориентированного анализа для задач проектирования гибридных систем управления"

На правах рукописи

Колесов Юрий Борисович

Развитие метода объектно-ориентированного анализа для задач проектирования гибридных систем управления

05.13.01 - Системный анализ, управление и обработка информации.

АВТОРЕФЕРАТ

диссертации на соискание ученой степени доктора технических наук

Работа выполнена в Санкт-Петербургском Государственном Политехническом Университете.

Официальные оппоненты:

д.т.н., проф. Евгенев Георгий Борисович д.т.н., проф. Сафронов Валерий Васильевич д.т.н., проф. Устинов Сергей Михайлович

Ведущая организация:

Санкт-Петербургский институт информатики и автоматизации РАН (СПИИРАН)

Защита состоится 15 июня 2004г. в 14 часов на заседании диссертационного совета ДС 407.002.01 Центрального научно-исследовательского института автоматики и гидравлики по адресу: Москва, ул. Советской Армии, д.5., т. (095) 631-7151.

С диссертацией можно ознакомиться в библиотеке ЦНИИ автоматики и гидравлики.

Автореферат разослан «_»_2004г.

Ученый секретарь диссертационного совета д.т.н.

Беланов Ю.А.

ОБЩАЯ ХАРАКТЕРИСТИ КА РАБОТЫ

Во второй половине прошлого столетия в ряде областей техники появились т.н. «сложные технические системы», к которым относятся и сложные системы управления (СУ) динамическими объектами. Сложные СУ обладают следующими характерными особенностями:

- имеется много объектов управления со сложной структурой связей между ними и с внешней средой;

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

- имеется много различных режимов работы, причем в пределах одного режима СУ может много раз изменяться режим работы отдельных подсистем;

- имеется значительная неопределенность в поведении объектов управления и внешней среды;

- система имеет иерархическую многоуровневую структуру;

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

- основная часть функций управления реализуется программно на встроенных ЭВМ и микропроцессорах;

- очень часто программное обеспечение и аппаратура разрабатываются одновременно.

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

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

Актуальность темы.

Одним из основных источников трудностей при разработке сложных СУ являются многочисленные ошибки в программном обеспечении (ПО) встроенных ЭВМ и микропроцессоров, которые приводят к затягиванию этапов динамической комплексной отладки и испытаний, а также к неожиданным отказам системы во время эксплуатации. Эти ошибки обусловлены прежде всего логической сложностью комплекса программ. Поэтому особую актуальность приобретают современные технологии разработки надежного и качественного ПО СУ, а также инструментальные средства, поддерживающие эти технологии. В настоящее время одним из наиболее современных и прогрессивных считается объектно-ориентированный подход к разработке сложного ПО. Общеизвестно, что самые сложные и трудно устранимые ошибки делаются на самых ранних этапах разработки. Поэтому в объектно-ориентированной разработке сложной СУ особенно важен этап объектно-ориентированного анализа.

Целью объектно-ориентированного анализа является выделение объектов и их связей, то есть функциональной структуры разрабатываемой системы, определение желаемого поведения системы в основных режимах работы (т.н. «сценариев»), а также определение границы между аппаратной и программной составляющими разрабатываемой системы. Наиболее естественным представляется рассматривать в качестве основного при выделении активных объектов отношение «объект управления (ОУ) - устройство управления (УУ)», которое отражает функциональную структуру СУ. (Рис. 1).

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

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

УУ

Рис. 1

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

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

непрерывных объектов, входящих в систему. Для сложной СУ практически невозможно построить вручную не только компьютерную модель, но даже и совокупную математическую модель всей системы в целом, поэтому системно-аналитическая модель должна быть компонентной. Описание дискретных аспектов поведения должно соответствовать языку UML. Наконец, разнородность принципов действия элементов сложной СУ требует, чтобы системно-аналитическая модель была т.н. мультидоменной. Таким образом, для проведения полноценного объектно-ориентированного анализа при разработке сложных СУ необходимы инструментальные средства компонентного мультидо-менного моделирования гибридных систем. В настоящее время таких инструментальных средств, отвечающих в полной мере предъявляемым требованиям, не существует. Поэтому рассматриваемая в диссертации проблема создания теоретических основ и методологии компьютерного моделирования при объектно-ориентированном анализе сложных гибридных СУ представляется актуальной.

Цель работы.

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

- определен перечень требований, предъявляемых к инструментальным средствам системно-аналитического моделирования;

- проведен анализ современных методов компонентного моделирования гибридных систем;

- найдена совокупность «внешних» математических моделей, позволяющих создавать формальные описания компонентов сложной СУ, а также сово-

купность «промежуточных» математических моделей, возникающих при объединении отдельных компонентов;

- определена совокупность «вычислимых» математических моделей непрерывной и гибридной системы, поддерживаемых современными численными методами и алгоритмами моделирования;

- разработаны комплексные методы контроля корректности «внешних» математических моделей и автоматического преобразования их к «вычислимым»;

- разработан язык объектно-ориентированного системно-аналитического моделирования гибридных систем, базирующийся на «внешних» математических моделях;

- разработан язык управления вычислительным экспериментом;

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

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

Для решения поставленных задач использовались теория систем, теория

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

ориентированного анализа.

Научная новизна работы заключается в следующем:

- разработаны теоретические и методические основы численного компонентного моделирования гибридных систем на основе формализма гибридного автомата;

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

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

- разработан метод динамического построения эквивалентной последовательности непрерывных систем для синхронной параллельной композиции обобщенных гибридных автоматов;

- разработан комплексный алгоритм контроля корректности базовой модели непрерывной системы в свободной форме и преобразования ее в «вычислимую» модель с минимальной сложностью численного решения;

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

- разработана архитектура инструментальных программных средств системно-аналитического моделирования, основанная на представлении описания математической модели исследуемой системы в виде совокупности связанных мета-объектов, хранимых в объектно-ориентированной базе данных;

- разработан метод продвижения гибридного модельного времени в условиях активного вычислительного эксперимента

- разработан метод реализации функции временной задержки в гибридном времени.

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

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

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

Реализация результатов работы.

Все теоретические результаты диссертационной работы доведены до практического воплощения в не имеющем мировых аналогов семействе пакетов моделирования Model Vision. Эти пакеты используются в учебном процессе, научных исследованиях и техническом проектировании в ряде ВУЗ'ов, научных и проектировочных организаций.

Апробация работы.

Результаты работы были представлены на международной конференции по информатике и управлению (Санкт-Петербург-1997), научно-технической конференции «Фундаментальные исследования в технических вузах» (Санкт-Петербург-1997), международной конференции по дифференциальным уравнениям и приложениям (Санкт-Петербург-1997, 1998), научно-технической конференции «Инструменты для математического моделирования» (Санкт-Петербург-1999), международной конференции «Информационные технологии в моделировании и управлении» (Санкт-Петербург-2000), международной конференции по имитационному моделированию (Орландо-2000), международной конференции «Математические методы в технике и технологиях» (Санкт-Петербург-2000), международной конференции WSES (Афины-2000, Ретимна-2001), международной конференции IEEE (Любляна-2003) и ряде других. Структура и объем работы.

Диссертация состоит из введения, пяти глав, заключения, списка литературы и приложений. Работа содержит 218 страниц основного текста и включает 112 рисунков и список литературы из 125 наименований. На защиту выносятся следующие основные положения:

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

- принципы построения визуального объектно-ориентированного языка компонентного моделирования гибридных систем, включающего средства управления вычислительным экспериментом;

- архитектура инструментальных программных средств системно-аналитического моделирования;.

- алгоритм продвижения гибридного модельного времени в активном вычислительном эксперименте.

СОДЕРЖАНИЕ РАБОТЫ.

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

- входной язык должен быть объектно-ориентированным;

входной язык должен поддерживать все типы гибридных моделей, возникающих при объектно-ориентированном анализе сложных СУ;

- для описания чисто дискретных объектов должна использоваться карта состояний в нотации UML, а для описания чисто непрерывных объектов должны использоваться системы уравнений в общепринятой математической нотации;

- входной язык должен поддерживать компонентное моделирование с использование как направленных, так и ненаправленных связей между компонентами;

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

- определение новых классов объектов и формирование библиотек классов должно выполняться средствами самого входного языка;

- входной язык должен включать в себя средства управления вычислительным экспериментом;

- инструментальные средства должны быть «устойчивыми» по отношению к математически некорректным моделям и выдавать пользователю внятную диагностику и рекомендации;

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

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

Анализ существующих отечественных и зарубежных программных средств автоматизации моделирования динамических систем показывает, что ни один из

этих инструментов в полной мере не отвечает этим требованиям. Во введении

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

В первой главе проводится системный анализ существующих методов моделирования гибридных систем и языков объектно-ориентированного моделирования. Функционирование гибридной системы включает в себя кусочно-непрерывные участки, точки разрыва которых соответствуют дискретным событиям. Под непрерывной понимается система, состояние которой определяется вектором хе ЭТ", а поведение задается любым отображением С: 9Т Я" , определяющее функцию x = x(t;x"), непрерывную по совокупности переменных, для которой - непрерывное время.

В момент определяемый переключением значения некоторого логического предиката P{x,t), в системе происходит дискретное событие, в результате которого может произойти:

1) скачкообразное изменение значения некоторых переменных {х, \ ieJ с 1..и}, то есть x(t' -0) * x(t' +0);

2) изменение отображения С при сохранении размерности и состава вектора х;

3) изменяется набор переменных х = {х1,х1У..,хп) и возможно размерность п., причем размерность и состав известны заранее;

4) изменяется набор переменных х = {х,,^,...,*,} и возможно размерность п, причем размерность и состав определяются только динамически в ходе функционирования.

Инструмент системно-аналитического моделирования должен позволять адекватно и максимально наглядно задавать все эти типы гибридного поведения.

Рассматриваются два «исторических» подхода (языки SLAM II и НЕДИС) и два современных - направление «блочного моделирования» (на примере подсистем SIMULINK и STATEFLOW пакета MATLAB) и направление «физиче-

ского моделирования» (на примере языка Modelica и поддерживающего его пакета Dymola), а также подход, использующий схему гибридного автомата. В приложении 1 приведены примеры характерных гибридных моделей, представленных в понятиях различных подходов.

Общим принципом гибридного моделирования в SIMULINK является использование готовых гибридных блоков или переключение заранее заготовленных альтернативных участков блок-схем. Для изменения начальных значений интегрируемых переменных предусмотрены дополнительные входы и режимы работы блока интегрирования. В нестандартных случаях необходимо создавать блок-схемы, соответствующие всем возможным системам уравнений. Кроме того, с помощью специальных блоков необходимо вырабатывать управляющий сигнал, знак которого изменяется в момент появления дискретного события, и подавать его на управляющий вход специального блока, который переключает соответствующие ветви блок-схемы. Ненужные в данный момент подсистемы рекомендуется деактивировать. Поскольку задание сложной логики дискретных событий и асинхронных процессов с помощью стандартных блоков все же чрезвычайно неудобно, в последние версии SIMULINK в нарушение чистоты блочного подхода введена специальная подсистема STATEFLOW. Эта подсистема позволяет создавать специальные дискретные подсистемы, функционирование которых задается картой состояний и которые через свои входы и выходы может взаимодействовать с обычной непрерывной блок-схемой. В целом пакет SIMULINK позволяет создавать достаточно сложные гибридные модели всех типов за исключением моделей типа (4) с динамической структурой. Общим недостатком является низкая наглядность моделей, поскольку запутанные переключательные схемы чрезвычайно сложны для понимания. Кроме того, все направление «блочного моделирования» принципиально ограничено возможностью использования только направленных блоков и связей (исключения возможны только для узкоспециализированных наборов блоков).

Общим принципом гибридного моделирования в языке Modelica является т.н. «принцип синхронного потока данных», согласно которому непрерывная часть модели представляется совокупной системой дифференциально -алгебраических уравнений, а дискретная часть модели трактуется как набор дополнительных уравнений или операторов присваивания, которые присоединяются к совокупной системе уравнений только в момент возникновения дискретного события. Обработчик дискретного события (блок when) ассоциируется с дискретным событием через логический предикат и содержит уравнения (это могут быть только формулы), решаемые только в момент переключения значения ассоциированного предиката с false на true. Выделяется специальный частный случай периодического обработчика, соответствующего разностному уравнению. Все переменные делятся на непрерывные и дискретные: непрерывные переменные изменяются между дискретными событиями, а дискретные только в обработчике дискретного события. В результате изменений дискретных переменных в одном обработчике может стать истинным (немедленно или через промежуток времени) предикат другого обработчика и таким образом может возникнуть цепочка дискретных событий. Следует отметить, что описание сколько-нибудь сложной дискретной логики с помощью обработчиков весьма ненаглядно. Для описания гибридного поведения типа (2) Modelica позволяет использовать условные выражения в правых частях уравнений, а также задавать условные блоки уравнений при условии, что размерность фазового вектора и соответственно общее число уравнений не меняются. Для случая (3) рекомендуется создавать для каждого варианта непрерывного поведения свой локальный объект и по дискретному событию включать следующий объект (у всех объектов языка Modelica имеется специальный предопределенный вход), инициализировать его переменные текущими значениями предыдущего объекта и выключать предыдущий объект (эта методика почти дословно совпадает с методикой SIMULINK). Эти ограничения обусловлены зафиксированным в спецификации языка положением, что все описание моделируемой системы на

этапе компиляции должно сводиться к одноуровневой эквивалентной системе уравнений. Это положение принципиально исключает моделирование гибридных систем типа (4).

В работах по качественному анализу гибридных систем давно используется формальная схема так называемого гибридного автомата. Гибридный автомат представляется ориентированным графом, вершинам которого сопоставляются некие качественные состояния системы, а дугам - переходы из одного состояния в другое. Качественным состояниям приписываются непрерывные действия, которые выполняются до тех пор, пока данное состояние является текущим (конкретные формы непрерывных действий в работах по анализу гибридных систем либо не уточняются, либо под ними понимаются формулы или линейные дифференциальные уравнения). Переходам приписываются логический предикат и последовательность мгновенных действий. Таким образом, формальная схема гибридного автомата по существу в очень компактной и наглядной форме описывает правила «склейки» непрерывных систем в кусочно-непрерывную систему, причем описания непрерывных систем могут задаваться в любой естественной форме, а правила «склейки» могут совпадать с диаграммой состояний UML. Очевидно, что формализм гибридного автомата позволяет задавать все случаи гибридного поведения. Проблемой при компонентном моделировании гибридных автоматов является необходимость динамического формирования совокупного непрерывного поведения модели на этапе выполнения модели, а не этапе компиляции. Для численного моделирования формализм гибридного автомата использовался только в специализированном пакете SHIFT.

Таким образом, существующие подходы позволяют относительно удобно моделировать гибридное поведение типа (1) и (2), с помощью несколько искусственных приемов поведение типа (3) и принципиально не позволяют моделировать поведение типа (4). Все они проигрывают по наглядности гибридному автомату. В то же время, в предлагаемых приемах задания вариантов поведе-

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

Проведенный анализ ляда известных языков объектно-ориентированного моделирования (Simula-67, НЕДИС, ObjectMath, Omola, Modelica, Rhapsody) позволяет сделать следующие выводы:

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

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

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

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

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

- непрерывное время;

- вектор интегрируемых переменных (их также часто называют «дифференциальными» переменными);

- вектор искомых переменных в алгебраических

уравнениях (их также часто называют «алгебраическими» переменными) с согласованными начальными значениями

- вектор параметров.

Форма 1.0. Явные аналитические зависимости (формулы) вида

где то есть выражение в правой части не зависит от пере-

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

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

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

Форма 1.2. Система алгебраических уравнений

Предполагается, что функция О непрерывна по всем переменным в некоторой окрестности , система правильно определена и является структурно невырожденной.

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

т

О = С(Х,.У,ук>0

Такая система называется системой дифференциально-алгебраических уравнений индекса 1 или системой обыкновенных дифференциальных уравнений с ограничениями.

Таким образом, системы уравнений вида 1.1 могут рассматриваться как «вычислимые» математические модели непрерывной изолированной системы. Очевидно, что эти формы неравноценны по требуемым вычислительным затратам: наиболее эффективно аналитическое решение в виде системы формул, затем следуют «чистые» алгебраические и дифференциальные уравнения и затем дифференциально-алгебраические уравнения.

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

Надежных численных методов, непосредственно решающих задачу (2), в настоящее время не существует. Вообще говоря, исходная система уравнений может быть задана пользователем в еще более свободной форме

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

В работе предложен комплексный алгоритм контроля корректности описания непрерывной изолированной системы, заданной в форме (2а) и преобразования его к максимально эффективной вычислимой форме 1 л.

Непрерывным компонентом С в общем случае будем полагать совокупность набора переменных начальных значений и системы уравнений Q в виде (1) или (2), где хсу^су.жс*. Структурный компонент предполагает разбиение набора переменных v на две составляющих: - вектор внешних переменных, а - вектор внутренних переменных (вектор состояния). Взаимодействие компонентов может осуществляться только через внешние переменные. Пусть компоненты А и В взаимодействуют в контексте компоненты-контейнера С. В общем случае это взаимо-

действие осуществляется через явно указанные связи и через собственную систему уравнений компоненты С (Рис. 2).

Рис. 2

Результатом такого объединения будет непрерывная система 5 с набором переменных - vJuva^.Jv(. и системой уравнений +£?<• , где уравнения связей (линейные алгебраические уравнения или формулы), причем

Направленный (ориентированный) компонент соответствует формализму «вход-состояние-выход», то есть внешние переменные разбиваются на входы и выходы Vе а поведение задается отображением С^'.у5)->-(у\у"). Это

означает, что входами могут являться только элементы вектора параметров V1 см>, а дифференциальные и алгебраические переменные могут быть только состояниями или выходами: Направленные компоненты могут со-

единяться только направленными связями (формулами). При объединении направленных компонентов

»¡^су^иу". Следовательно, объединение никак не влияет на вид уравнений Q4 , Qв и, если эти уравнения, а также уравнения <2С заданы в форме 1 л, то и уравнения будут иметь форму 1 л. Таким образом, для направленных компонентов можно проводить анализ корректности и преобразование к форме 1 л независимо на стадии редактирования уравнений компонента. При объединении необходимо лишь провести дополнительную сортировку формул, соответст-

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

В ненаправленном (неориентированном) компоненте на внешние переменные не накладывается никаких ограничений: Внешние переменные в этих блоках подразделяют на «контакты» и «потоки» v£ =v' uv' по виду уравнений, приписываемым соединяющим их связям. Ясно, что даже, если системы уравнений заданы в форме l.i, то результирующая система уравнений в общем случае будет иметь вид (2а), поскольку уравнения связей могут ввести алгебраические зависимости между дифференциальными переменными. Таким образом, при объединении ненаправленных компонентов анализ корректности уравнений и преобразование их к вычислимой форме можно проводить только для системы в целом.

Функционирование пустой непрерывной системы NULL = {v,v°,0} в непрерывном времени заключается в сохранении переменными своих начальных значений Введем также полностью пустую непрерывную систему

null = {0,0,0}. Очевидно, что для любой непрерывной системы С имеет место равенство C + null = C. Заметим, что модель, состоящая из одной только пустой (или даже полностью пустой) непрерывной системы отнюдь не бессмысленна: она продвигает непрерывное время t.

Таким образом, множество непрерывных систем в форме (2) является замкнутым относительно операции объединения «+» и система null играет роль «нуля».

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

компонентов (Рис. 3). Кроме того, будем рассматривать не только статические, но и динамические последовательные компоненты, экземпляр которого создается при входе в соответствующее состояние и уничтожается при выходе из этого состояния.

Обобщенным гибридным автоматом будем называть совокупность Н = {V,V\G}, где

V = Ус u VD - множество переменных, включающее в себя множество непрерывных переменных Ус = {v, e5R|i = I._nr} и множество дискретных переменных Уп={у, e9luIuBoolvStr\i = l..nD}, где / - множество целых чисел, Bool - {false,true} - множество булевских значений, Str - множество строк. Непрерывные переменные являются искомыми в локальных непрерывных компонентах, дискретные переменные изменяются в мгновенных действиях. В общем случае существует множество искомых переменных, которые изменяются и в мгновенных действиях Ус'=Усг\У0

Рис.3

У" - множество начальных значений переменных; G = {g,B,P,A,F} - граф переходов гибридного автомата. Граф переходов включает в себя:

g = {S,E,E!!,s°} - ориентированный граф, вершины которого сопоставлены элементам множества дискретных состояний автомата S = {s, |/ = 1..от,}, одно из которых s" является начальным, а дуги сопоставлены возможным переходам автомата из одного состояния в другое

Кроме того, существует некоторое множество «внутренних» переходов , которые выполняются в пределах одного и того же состояния; - множество локальных компонентов-поведений, где локальный компонент может являться:

О непрерывной системой z, = {v, и V,v° = f(t,V),Q,}; о пустой непрерывной системой z, = null;

о обобщенным гибридным автоматом г, ={v(uK,v,° = /(f,K),G(}; о параллельной композицией компонентов г, = гм + zi 2 +... + z,^. Р = 6 Bool | i -1 ,.тр} и {true} - множество логических предикатов;

A = {al:V-+Vl)\i = l..mA} - множество мгновенных действий Л = иД.* иЛ* , где

1о Ак - множество мгновенных действий переходов; о Л* - множество входных мгновенных действий; - множество выходных мгновенных действий. где:

о Ft:S-+B - отображение, сопоставляющее множество поведений множеству состояний (вершин графа), о F'B:S-+Bool - отображение, сопоставляющее элементу множества состояний значение true, если этому состоянию приписан статический экземпляр локального компонента, и значение false, если этому состоянию приписан динамический экземпляр локального компонента, о FH :Es ~>S - отображение, сопоставляющее множеству внутренних переходов множество состояний;

о Ff„ :S->Al, - отображение, сопоставляющее множество состояний множеству входных мгновенных действий:

- отображение, сопоставляющее множество состояний множеству выходных мгновенных действий;

- отображение, сопоставляющее множество переходов множеству предикатов,

- отображение, сопоставляющее множество переходов множеству мгновенных действий переходов.

В определении обобщенного гибридного автомата неявно предполагает существование независимого глобального непрерывного времени / е Т с [0,оо]. Граф переходов G, для которого FB:S-+ {false}, то есть все локальные компоненты являются динамическими, будем называть картой поведений. Примем обобщенный гибридный автомат в качестве «внешней» математической хмодели гибридного компонента. Автомат, в котором состояниям приписаны только непрерывные системы (включая пустую), будем называть простым.

Результатом функционирования гибридного автомата или любой композиции гибридных автоматов на интервале непрерывного времени Т будет являться последовательность совокупных непрерывных систем (включая NULL), каждая из которых существует на определенном интервале tiJ] (Рис. 4а).

а) б)

Рис. 4

В момент = <«склейки» двух последовательных непрерывных систем С, -»С,,., переменные гибридного автомата первоначально имеют значение рге(У)- /,(!'). Затем в результате мгновенных действий изменяются некоторые

дискретные переменные из множества VD и переменные гибридного автомата получают значение post'(V). Однако, в общем случае эти начальные значения могут быть не согласованными и поэтому необходимо решить алгебраическую составляющую непрерывной системы С,,,, чтобы согласовать начальные значения post(V) = • Среди последовательных непрерывных систем возможны такие, длительность интервала существования которых равна 0 (например, система С2 на Рис. 46). Функционирование такой непрерывной системы ограничивается вычислением согласованных начальных значений. Мгновенную (в непрерывном времени) последовательность действий между двумя соседними интервалами ненулевой длительности называют «временной щелью». Наличие временных щелей приводит к тому, что в общем случае зависимость переменных гибридного автомата от непрерывного времени V{t) становится неоднозначной. Чтобы избежать этого, необходимо ввести глобальное гибридное время й = (/,|')|/еГсЭТ,/е{0,1,2,...}, где t - непрерывная составляющая гибридного времени, равная значению непрерывного времени, а i - дискретная составляющая гибридного времени, равная номеру текущей совокупной непрерывной системы. Зависимость переменных гибридного автомата от гибридного времени V(h) является однозначной.

Гибридные автоматы как структурные компоненты могут быть объединены: а) путем создания функциональной схемы с явным указанием связей между их внешними переменными; б) путем «погружения» в гибридный или непрерывный компонент-контейнер. В случае (а) связываемые внешние переменные могут быть: 1) чисто непрерывными, то есть принадлежат к множеству Vr-V(' ; 2) дискретными, то есть принадлежат множеству

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

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

1) гибридные компоненты взаимодействуют только через уравнения связи;

2) сначала выполняются все мгновенные действия, а затем находятся новые

согласованные значения переменных.

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

Пусть имеется п параллельных карт состояний (возможно, иерархических), взаимодействующих через непрерывную систему Ь. Текущим состояни-

ем эквивалентного последовательного автомата является набор S(h) = (s'(h),...,s'{h),...,s"{k)), где s' - текущее состояние i-й карты поведения на последнем уровне вложенности. Этому состоянию соответствует совокупная непрерывная система {F¡(sl(.h)) + F¡(s^(.hy) + ... + F¡(s'(h)) + L). Пусть TO(s') множество исходящих переходов для текущего состояния i-ГО последовательного автомата (с учетом гиперсостояний). Ближайшее дискретное событие происходит в момент когда становится истинным один или несколько предикатов из множества {F¡,{E'l)\E'lbTO{s,)Jl=*\.:n}. Определяется множество срабатывающих переходов ТЕ (если в карте поведения готовы к срабатыванию переходы разного уровня иерархии, то в ТЕ помещается переход самого верхнего уровня). Следующим состоянием эквивалентного автомата будет комбинация новых текущих состояний последовательных автоматов после срабатывания' переходов, входящих в множество Пе-

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

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

Часто логика дискретного поведения моделируемой системы требует явной синхронизации двух или более последовательных процессов с помощью

посылки сигнала (сообщения) во время выполнения мгновенных действий. Сигнал передается в другие компоненты немедленно и может вызвать срабатывание переходов в других картах поведений. Эти переходы должны добавляться в множество ТЕ динамически ( это возможно из-за коммутативности объединения мгновенных действий). Таким образом, принцип синхронной композиции не противоречит традиционному способу взаимодействия дискретных процессов через сообщения.

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

Основной конструкцией языка МУЪ является активный динамический объект. Он отличается от активного объекта ИМЬ тем, что взаимодействует с внешним окружением не через методы и сообщения, а через внешние переменные (Рис. 5), и имеет непрерывное или гибридное поведение. Определение класса включает в себя имя класса, определение переменных и определение поведения

Рис.5

Поведение объекта в общем случае задается синхронной композицией системы уравнений в форме (2), карты поведений и локальных компонентов с их связями (Рис. 6). Различные комбинации этих составляющих поведения соответствуют типовым элементарным компонентам: непрерывному, дискретному, гиб-

ридному, компоненту-контейнеру. Локальные классы определяют системы уравнений или карты поведений, в которых видимы переменные объекта и которые могут использоваться как деятельности в карте поведений объекта.

Рис.6

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

реотипом»: параметр, константа, входная/выходная переменная, контакт, поток и т.п.

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

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

- у переменной может быть переопределен стереотип;

- переопределение уравнения означает его замену на новое;

- в карте поведений могут быть переопределены: объекты, приписанные состояниям, условия срабатывания переходов, действия в переходах, входные и выходные действия в состояниях;

- любой объект в структурной схеме может быть заменен на другой, совместимый с ним по интерфейсу.

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

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

Проект в целом представляет собой пакет, содержащий определения классов, констант, процедур и функций (Рис. 7). В проекте могут использоваться элементы из других пакетов. Новый проект содержит только один специальный класс Model, который является «синглетным» (может иметь только один экземпляр) и соответствует выполняемой модели, с которой будет проводиться

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

Рис.7

Возможности обобщенного гибридного автомата позволяют использовать карту поведений в качестве визуального языка управления вычислительным экспериментом. Идея состоит в том, что модель исследуемой системы становится деятельностью в одном или нескольких состояниях гибридного автомата, задающего алгоритм проведения вычислительного эксперимента. Сам этот автомат является экземпляром класса «Model». На Рис. 8 показан пример описания вычислительного эксперимента по определению зависимости дальности падения тела, брошенного под углом к горизонту, от угла бросания и угла максимальной дальности.

when ¡<N actions {¡."МО-Полет

у whan ¡«N

о.......

КонецЭкслерммента

do Z := new ПолвтМатериальнсйТочки ( when (y<-D) and (Vy<0) Тв1зО=Т«з[|], VD=V0, Ro=

actions {1Д'ех}

entry actions {

TetaLmex-rroxfur(z.interpal(Teta.Lz).Teta[1].Tete[rJ].1 Е-Э); Lmo*.-interpal(Teta.l,TetQLmax);

}

parameter Teta: vector; parameter 7U: double; parameter Ro: double; N: integer size(Teta); L: vector zeros(N); i: integer :■ □; TetaLmax,Lmax: double; x#y/vy: double;

:Rc) +

(y = z.y;

* = Z.*; Vy = ZV

)

Рис.8

Сам этот эксперимент, в свою очередь, может быть сохранен как класс и использован как локальный динамический объект в более сложном эксперименте

Рис.9

- определение зависимости угла максимальной дальности от плотности воздуха и начальной скорости (Рис. 9) и т.д.

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

средств автоматизации системно-аналитического моделирования на примере пакета Model Vision Studium (MVS), разработанного автором совместно с Д.Б.Иниховым и Ю.Б.Сениченковым. Пакет автоматизации системно-аналитического моделирования (далее просто «пакет моделирования») должен решать три основные задачи:

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

2) обеспечивать автоматическое построение компьютерной модели, соответствующей заданной математической;

3) обеспечивать корректное проведение вычислительного эксперимента с компьютерной моделью на уровне абстракции математической модели.

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

Рис. 10

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

ОО I РОС. НАЦИОНАЛЬНАЯ °° БИБЛИОТЕКА

I СИемрфрг 4 09 308 акт ?

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

Рис. 11

Принципиальной особенностью архитектуры пакета MVS является использование внутреннего структурированного объектного представления математической модели, представляющего собой совокупность взаимосвязанных мета-объектов, отражающих содержание и структуру математической модели на уровне абстракции языка MVL. Эти мета-объекты являются долговременными и сохраняются вместе со связями в объектно-ориентированной базе данных" mvBase, разработанной автором (Рис. 11). Такая архитектура позволяет легко реализовать инкрементный транслятор (процесс трансляции выступает в качестве транзакции базы данных), контроль корректности и преобразования математической модели. При генерации «кода» программы модели на промежуточном языке, в качестве которого выбран Object Pascal, формируется промежуточное внутреннее представление модели (Рис. 11). В случае, если выполняемая модель является чисто непрерывной, можно уже на стадии генерации кода сформировать полную систему уравнений всей модели и преобразовать ее к вычислимой форме, выполнив необходимые символьные преобразования. В случае, если в модели есть гибридные объекты, но используются только направленные связи, выполняется анализ и преобразование отдельных систем уравнений и в «код» модели встраивается дополнительная служебная информация о переменных, участвующих в уравнениях, которая будет необходима при анализе уравнений на стадии выполнения. Наконец, в случае наличия гибридных объектов и использования ненаправленных связей на стадии генерации только встраивается дополнительная служебная информация. Если в результате анализа совокупной системы уравнений на этапе выполнения выявляется необходимость в символьном дифференцировании некоторых уравнений, то возможен возврат к генерации кода (Рис. 11).

Исполняющая система пакета моделирования включает в себя: определения базовых классов для программных объектов модели, численные библиотеки, блок продвижения модельного времени, средства поддержки активного вычислительного эксперимента. Формализм гибридного автомата позволяет ис-

пользовать апробированные численные методы для чисто непрерывных задач, надстраивая их блоком продвижения модельного времени, который осуществляет «склейку» непрерывных систем. Для каждого типа уравнений в численной библиотеке MVS реализован метод - «автомат», используемый по умолчанию, и некоторый набор специализированных методов. После каждого изменения совокупной системы уравнений определяется ее тип и выбирается предпочтительный для этого типа численный метод. Блок продвижения модельного времени динамически строит и интерпретирует эквивалентный последовательный гибридный автомат. Помимо карт поведения активных объектов модели в эквивалентный автомат включены также служебные процессы самой исполняющей системы, необходимые для поддержки активного вычислительного эксперимента: процессы обновления диаграмм, процесс синхронизации с реальным временем, процесс останова по условию. Таким образом, блок продвижения модельного времени работает даже для чисто непрерывной модели. Блок продвижения модельного времени в выполняемой модели необходимо выделять в отдельный поток управления, чтобы избежать «подвисания» модели во время трудоемких вычислений. Алгоритм продвижения модельного времени, являющийся развитием классического алгоритма «по событиям», оперирует с тремя специальными списками:

- КАЛЕНДАРЬ - список переходов с условием after, упорядоченный по значению времени срабатывания;

- СПИСОК_СРАБАТЫВАЮЩИХ_ПЕРЕХОДОВ - список переходов, которые готовы к срабатыванию в данной точке дискретного времени;

- СПИСОК_ОЖИДАЮЩИХ_ПЕРЕХОДОВ - список переходов, ожидающих истинности логического предиката (условие срабатывания when). Этот список задает некоторый логический предикат

множество переменных модели, P,(Vyt) - условие срабатывания i-го перехода, я - число переходов в списке;

СПИСОК_УРАВНЕНИЙ - список уравнений, составляющих в данный момент гибридного времени совокупную систему уравнений модели. С этим списком также соотносится множество искомых переменных vcF. В общем случае совокупная система уравнений может находиться в двух формах: 1) исходной; 2) вычислимой. Любое добавление или изъятие уравнений переводит совокупную систему уравнений из вычислимой формы в исходную за исключением чисто непрерывной модели.

Рис. 12

На Рис. 12 показана блок-схема алгоритма продвижения гибридного времени модели. Блок-схема выполнения действий во временной щели показана на Рис. 13. Задачей алгоритма продвижения непрерывной составляющей модельного времени является получение с заданной точностью значений искомых переменных совокупной системы уравнений для момента времени ЫТ (Рис. 12). Если

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

Рис. 13

Возможны два варианта завершения непрерывного интервала: 1) численный метод благополучно вычисляет значение ; 2) зависимость такова, что в некоторый момент <Г* <ЛТ предикат Р(у',г') становится истинным (Рис. 14) и возникает дискретное событие. Во втором случае этого необходимо определить с заданной точностью момент г' и значения переменных >(/').

Если логические предикаты Р,(У,1) можно привести к в е

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

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

ная относительная погрешность решения, д - заданная абсолютная погрешность решения, и по времени В качестве приближенного решения принимается Цикл завершается ошибкой, если

- некоторая минимальная относительная погрешность, допустимая в разрядной сетке компьютера.

•о Ч 'и Vl 'i NT

Рис. 14

Для гибридной модели реализация функции задержки delay(X.r) не сводится к простой интерполяции, если переменная X изменяется во временной щели. В этом случае в КАЛЕНДАРЬ необходимо заносить специальные элементы, соответствующие отложенным дискретным событиям.

Окна переменных, а также 2D и 3D-анимации должны обновляться с определенной частотой в реальном времени пользователя (в MVS принята частота 10 гц). Кроме того, при наличии анимационных окон непрерывная составляющая модельного времени должна продвигаться линейно относительно реально-

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

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

В пятой главе приводится описание применения результатов диссертации и формулируются направления дальнейших исследований. Основные результаты диссертационной работы реализованы в семействе пакетов автоматизации моделирования Model Vision: Model Vision for DOS, Model Vision for Windows и Model Vision Studium (этот пакет свободно распространяется, см. www.exponenta.ru). Пакет Model Vision Studium в настоящее время успешно используется в учебном процессе примерно двух десятков ВУЗ'ов (для создания демонстрационных моделей и лабораторных работ, а также для курсового и дипломного проектирования). Пакеты семейства Model Vision были использованы в ряде научных исследований, а также на ранних этапах ОКР по разработке системы управления.

Дальнейшие исследования в области объектно-ориентированного анализа гибридных систем управления должны, на взгляд автора, проводиться по двум основным направлениям: качественный анализ гибридной модели и разработка

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

В заключении перечислены основные выводы и результаты работы:

1. Определен перечень требований, предъявляемых к современным инструментальным средствам автоматизации системно-аналитического моделирования.

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

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

4. Разработан комплексный алгоритм контроля корректности базовой модели непрерывной системы и преобразования ее в «вычислимую» модель с минимальной сложностью численного решения.

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

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

7. Разработан метод динамического построения эквивалентной последовательности непрерывных систем для синхронной параллельной композиции обобщенных гибридных автоматов.

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

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

10. Разработана архитектура программных средств автоматизации моделирования, основанная на представлении описания математической модели исследуемой системы в виде совокупности связанных мета-объектов, хранимых в объектно-ориентированной базе данных. Такая архитектура позволяет использовать инкрементный транслятор и легко выполнять любые необходимые преобразования моделей. Для хранения мета-объектов и их связей используется разработанная автором объектно-ориентированная база данных mvBase.

11. Разработан алгоритм продвижения гибридного модельного времени в условиях активного вычислительного эксперимента.

12. Разработанные теоретические и методические основы, а также инженерные методики позволяют создавать инструментальные средства системно-аналитического моделирования, которые делают возможным проведение полноценного объектно-ориентированного анализа при проектировании сложных СУ. Это позволяет уменьшить трудозатраты и сроки создания, а также повысить надежность СУ. Предложенная в работе концепция системно-аналитического моделирования открывает возможность создания принципиально новой технологии разработки программного обеспечения для встроенных ЭВМ.

13. Все теоретические результаты диссертационной работы доведены до практического воплощения в не имеющем мировых аналогов семействе пакетов моделирования Model Vision. Эти пакеты используются в учебном процессе, научных исследованиях и техническом проектировании в ряде ВУЗ'ов, научных и проектировочных организаций.

В приложениях приведены несколько «классических» гибридных моделей, выполненных с помощью Simulink, Modelica и Model Vision Studium, а также ряд моделей, иллюстрирующих основные конструкции языка MVL.

Основные результаты диссертации изложены в следующих работах:

1. Колесов Ю.Б. Объектно-ориентированное моделирование сложных динамических систем. СПб.: Изд-во СПбТПУ, 2004. -240 с.

2. Бенькович Е.С., Колесов Ю.Б., Сениченков Ю.Б. Практическое моделирование сложных динамических систем. СПб.: БХВ, 2001. - 441 с.

3. Колесов Ю.Б., Сениченков Ю.Б. Визуальное моделирование сложных динамических систем. СПб.: Изд-во. «Мир и Семья & Интерлайн», 2000. -242 с.

4. Курочкин Е.П., Колесов Ю.Б. Технология программирования сложных систем управления / ВМНУЦ ВТИ ГКВТИ СССР. - М: 1990, 112с.

5. Колесов Ю.Б. Компьютерное моделирование при объектно-ориентированном анализе сложных систем управления // Вопросы оборонной техники, с.IX, в печати.

6. Колесов Ю.Б., Сениченков Ю.Б. Синхронизация событий при использовании гибридных автоматов для численного моделирования сложных динамических систем / "Научно-технические ведомости СПбГПУ", №1,. 2004, в печати.

7. Y.Kolesov, Y.Senichenkov. A composition of open hybrid automata. Proceedings of IEEE Region 8 International Conference «Computer as a tool», Ljubljana, Slovenia, Sep.22-24,. 2003, pp. 327-331

8. Колесов Ю.Б., Сениченков Ю.Б. Программная поддержка активного вычислительного эксперимента / "Научно-технические ведомости СПбГПУ", №1,2004, в печати.

9. Колесов Ю.Б., Сениченков Ю.Б. Компьютерное моделирование в научных исследованиях и в образовании. "Exponenta Pro. Математика в приложениях", #1,2003, с. 4-11.

Ю.Колесов Ю.Б., Сениченков Ю.Б. Компьютерное моделирование динамических систем / "Научно-технические ведомости СПбГТУ", 3(29).2002, с. 93-102.

11.Колесов Ю.Б., Сениченков Ю.Б. Model Vision Studium инструмент для объектно-ориентированного моделирование сложных динамичнеских систем, 2-я Международная конференция «Гибридные системы. Model Vision Studium.» С.-Петербург, 2001, стр.5-46.

12.Yu. Kolesov, Yu. Senichenkov. Object-Oriented Modeling in Model Vision Studium.//In Advances in Signal Processing and Computer Technologies. WSES 2001, Greece, ISBN: 960-8052-37-8 p. 413-418.

13. Колесов Ю.Б., Сениченков Ю.Б. Имитационное моделирование сложных динамических систем. КомпьютерПресс, 3,2000, CD-приложение: с. 12.

14. Колесов Ю.Б., Сениченков Ю.Б. Model Vision Stadium - компьютерная лаборатория для моделирования и исследования сложных динамических систем. КомпьютерПресс 3, 2000, CD-приложение: с. 24.

15. A. Borshchev, Yu. Kolesov, Yu. Senichenkov. Java engine for UML based hybrid state machines.fln Proceedings ofWinter Simulation Conference, Orlando, California, USA, 2000. p. 1888-1897.

16. Yu. Kolesov, Yu. Senichenkov. Test problems for Hybrid Simulators./In Recent Advances in Theoretical and Applied Mathematics. WSES 2000, ISBN: 960-805221-1, Greece, p. 214-220.

17. Колесов Ю.Б., Сениченков Ю.Б. Объектно-ориентированный подход к моделированию сложных динамических систем // "Труды СПбГТУ", 476, 1998, с. 19-23.

18. Колесов Ю.Б., Сениченков Ю.Б. Применение MVS в химии и биологии. «Математические методы в технике и технологиях», ММТТ-2000, С.Петербург, 2000, стр. 154-157

19. Инихов Д.Б., Колесов Ю.Б., Сениченков Ю.Б. Свидетельство об официальной регистрации программы для ЭВМ «Model Vision Studium версия 3.0» №990643. - Москва, Роспатент, 6.09.1999.

20. Колесов Ю.Б., Сениченков Ю.Б. Как быстро и качественно "приготовить" интерактивную модель динамической системы. "Компьютерные инструменты в образовании", Журнал Российской Академии Образования, С. Петербург, 3-4'98,с. 21-30.

21. Колесов Ю.Б., Расторгуев И.В., Сениченков Ю.Б. Современное программное обеспечение для проведения вычислительного эксперимента // Труды Технического университета, 468. - СПб.: 1997, с. 95-98.

22. Колесов Ю.Б., Сениченков Ю.Б. Объектно-ориентированный подход к моделированию сложных динамических систем./ «Фундаментальные исследования в технических вузах», Научно-техническая конференция, С.-Петербург, 1997, стр. 107.

23. Колесов Ю.Б., Сениченков Ю.Б. Библиотека программ для решения ОДУ// Труды ЛПИ, 462. - СПб.: 1996, с. 116-122.

24.Борщев А.В., Карпов Ю.Г., Колесов Ю.Б. Спецификация и верификация систем логического управления реального времени. - Системная информатика, вып.2, Системы программирования. Теория и приложения. - Новосибирск: «Наука», 1993, с. 113-147.

25.Колесов Ю.Б. Анализ корректности процессов логического управления динамическими объектами // Известия Ленингр. Электротехнического. Ин-та им. В.И.Ульянова (Ленина). - Л.: 1991. -Вып. 436. - с. 65-70

26. Колесов Ю.Б., Курочкин Е.П. Функциональные спецификации программного обеспечения систем управления - В сб.: Информатика. Сер. Информационные технологии. Средства и системы. 1990, вып.2.-с. 23-33.

27. Колесов Ю.Б. Система имитационного моделирования алгоритмов управления // Вопросы оборонной техники аК, 1988, вЗ (163), с. 105-109.

28.Серебровский Л.А., Белявский Е.И., Колесов Ю.Б., Борзенко А.Г. Рада - семейство языков программирования для встроенных ЭВМ // Программирование, 1987^5.-с. 96-100.

29. Колесов Ю.Б.. Язык функциональных спецификаций Рада-Ф // Вопросы оборонной техники с.УШ, 1986, в4(52), с. 69-73.

30. Колесов Ю.Б., Курочкин Е.П. О многоуровневом моделировании при разработке программного обеспечения систем управления // Вопросы оборонной техники с.IX, 1985, в.8 (142), с. 68-71.

31. Колесов Ю.Б. О формализации на структурном уровне программного обеспечения систем управления летательными аппаратами одного класса // Вопросы оборонной техники с.IX, 1984, в.3(127), с. 94-99.

Лицензия ЛР №020593 от 07.08.97.

Подписано в п е • б ъ е м в п.л. а?/

Тираж /00. Заказ /35.

Отпечатано с готового оригинал-макета, предоставленного автором, в типографии Издательства СПбГПУ 195251, Санкт-Петербург, Политехническая ул., 29.

. Отпечатано на ризографе RN-2000 ЕР Поставщик оборудования— фирма "Р-ПРИНТ" Телефон: (812) 110-65-09 Факс: (812) 315-23-04

»-755?

Оглавление автор диссертации — доктора технических наук Колесов, Юрий Борисович

Введение.

1. Объектно-ориентированный анализ при разработке сложных СУ.

1.1 Выделение объектов и их связей.

1.2 Определение желаемого поведения системы.

2. Требования к инструментальным средствам моделирования сложных СУ.

2.1 Требования к входному языку:.

2.2 Требования к проведению вычислительного эксперимента:.

2.3 Требования к интегрированной среде:.

3. Общая характеристика работы.

3.1 Актуальность темы.

3.2 Цели исследования.

3.3 Методы исследования.

3.4 Научная новизна.

3.5 Практическая значимость.

3.6 Достоверность результатов.

3.7 Реализация результатов работы.

3.8 Апробация работы.

3.9 Структура и объем работы.

3.10 Положения, выносимые на защиту.

Глава 1. Анализ существующих подходов к объектно-ориентированному моделированию гибридных систем.

1. Существующие подходы к моделированию гибридных систем.

1.1 Гибридное поведение в модели сложной СУ.

1.2 Гибридные модели в инструментальных средствах для «больших» ЭВМ.

1.3 Гибридные модели в современных инструментах моделирования.

1.4 Гибридные модели на базе формализма «гибридный автомат».

2. Существующие языки объектно-ориентированного моделирования.

2.1 Simula-67 и НЕДИС.

2.2 ObjectMath.

2.3 Ornóla.

2.4 Modélica.

2.5 Объектно-ориентированное моделирование карт состояний.

2.6 Инструменты «блочного моделирования».

2.7 Анализ существующих языков ООМ применительно к системно-аналитическому моделированию.

3. Выводы.

Глава 2. Математические модели гибридной системы.

1. Математические модели непрерывной системы.

1.1 Математические модели непрерывной изолированной системы.

1.2 Компонентные модели непрерывных систем.

1.3 Пустая непрерывная система.

1.4 Преобразование описания непрерывной системы к вычислимой форме.

2. Математические модели гибридного автомата.

2.1 Последовательный гибридный автомат.

2.2 Обобщенный гибридный автомат.

2.3 Гибридное время.

2.4 Эквивалентный последовательный гибридный автомат.

2.5 Иерархический гибридный автомат.

2.6 Принцип синхронной композиции гибридных автоматов.

2.7 Правила интерпретации синхронного параллельного гибридного автомата.

2.8 Явная синхронизация гибридных автоматов с помощью сигналов.

3. Выводы.

Глава 3. Язык объектно-ориентированного моделирования гибридных систем.

1. Объекты и классы.

2. Пакеты и проект.

3. Переменные.

4. Типы данных.

4.1 Скалярные типы.

4.2 Регулярные типы.

4.3 Комбинированный тип (запись).

4.4 Явно определяемые типы.

4.5 Сигналы.

4.6 Автоматическое приведение типов.

5. Система уравнений.

6. Карта поведений.

7. Структурная схема.

7.1 Объекты.

7.2 Связи.

7.3 Регулярная структура.

7.4 Переменная структура.

8. Правила видимости.

9. Наследование классов.

9.1 Добавление новых элементов описания.

9.2 Переопределение унаследованных элементов.

10. Полиморфизм.

11. Язык управления экспериментом.

12. Функциональный стиль моделирования.

13. Использование пассивных объектов.

14. Выводы.

Глава 4. Архитектура программных средств автоматизации моделирования гибридных систем.

1. Общая структура.

2. Средства редактирования математической модели.

3. Средства генерации программы модели.

4. Интегрированная среда.

5. Исполняющая система.

5.1 Определения базовых классов.

5.2 Численные библиотеки.

5.3 Блок продвижения модельного времени.

5.4 Алгоритм продвижения гибридного модельного времени.

5.5 Реализация условных уравнений.

5.6 Реализация функции временной задержки в гибридной модели.

5.7 Процессы обновления диаграмм.

5.8 Процесс синхронизации с реальным временем.

5.9 Процесс останова по условию.

5.10 Интерактивное взаимодействие с пользователем.

6. Распределенные модели гибридных систем.

7. Комплексный моделирующий стенд.

8. Выводы.

Глава 5. Применение результатов диссертации и направления дальнейших исследований.

1. Сравнение пакета Model Vision Studium с другими пакетами гибридного моделирования.

2. Применение пакетов семейства Model Vision.

2.1 Применение для научных исследований.

2.2 Применение в учебном процессе.

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

3. Основные направления дальнейших исследований.

4. Выводы.

Введение 2003 год, диссертация по информатике, вычислительной технике и управлению, Колесов, Юрий Борисович

Во второй половине прошлого столетия в ряде областей техники (преимущественно военного направления) появились т.н. «сложные технические системы» [4,50,55], к которым относятся и сложные системы управления (СУ) динамическими объектами.

Можно выделить следующие характерные особенности сложных СУ [46,20,28]:

- имеется много объектов управления со сложной структурой связей между ними и с внешней средой;

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

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

- имеется значительная неопределенность в поведении объектов управления и внешней среды;

- система имеет иерархическую многоуровневую структуру;

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

- большая часть функций управления реализуется программно на встроенных ЭВМ и микропроцессорах;

- очень часто программное обеспечение и аппаратура разрабатываются одновременно;

- часто состав и структура системы изменяется в ходе ее функционирования.

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

Одним из основных источников трудностей при разработке сложных СУ являются многочисленные ошибки в программном обеспечении (ПО) встроенных ЭВМ и микропроцессоров [11,62,, 15,48]. Эти ошибки приводят к затягиванию этапов динамической комплексной отладки и испытаний, а также к неожиданным отказам системы во время эксплуатации. Эти ошибки обусловлены прежде всего логической сложностью комплекса программ. Не случайно число изменений в программных модулях, координирующих работу подсистем, на порядок превышает число изменений в модулях, реализующих отдельные функции [47,48].

С 1970-х гг. активно разрабатываются методологии структурного проектирования сложных программных комплексов, такие как SADT [111], IDEF [68], метод Йордана [125] и др. С конца 80-х годов начали также интенсивно развиваться объектно-ориентированные методологии разработки программного обеспечения. В настоящее время объектно-ориентированный подход считается наиболее современным и прогрессивным [17,11,62]. В 1997 г. OMG (Object Management Group) приняла язык UML [12,85], появившийся в результате слияния ряда известных методологий, в качестве стандарта языка объектно-ориентированного моделирования. В настоящее время уже существуют разработанные рядом компаний CASE-средства, поддерживающие язык UML, например, такой известный продукт как Rational Rose [7]. Существуют также и отличные от UML объектно-ориентированные методологии, например методология ROOM для разработки систем реального времени [123], а также различные комбинации структурного и объектного подходов [62]. В данной работе мы будем ориентироваться на понятийный аппарат языка UML.

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

Заключение диссертация на тему "Развитие метода объектно-ориентированного анализа для задач проектирования гибридных систем управления"

4. Выводы.

1. Все теоретические результаты диссертационной работы доведены до практического воплощения в не имеющем мировых аналогов семействе пакетов моделирования Model Vision. Эти пакеты используются в учебном процессе, научных исследованиях и техническом проектировании в ряде ВУЗ'ов, научных и проектировочных организаций.

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

3. Разработанные теоретические и методические основы, а также инженерные методики позволяют создавать инструментальные средства системно-аналитического моделирования, которые делают возможным проведение полноценного объектно-ориентированного анализа при проектировании сложных СУ. Это позволяет уменьшить трудозатраты и сроки создания, а также повысить надежность СУ. Предложенная концепция системно-аналитического моделирования открывает путь к принципиально новой технологии разработки программного обеспечения для встроенных ЭВМ.

Заключение.

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

В диссертационной работе получены следующие основные результаты:

1. Определен перечень требований, предъявляемых к современным инструментальным средствам автоматизации системно-аналитического моделирования.

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

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

4. Разработан комплексный алгоритм контроля корректности базовой модели непрерывной системы и преобразования ее в «вычислимую» модель с минимальной сложностью численного решения.

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

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

7. Разработан метод динамического построения эквивалентной последовательности непрерывных систем для синхронной параллельной композиции обобщенных гибридных автоматов.

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

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

10. Разработана архитектура программных средств автоматизации моделирования, основанная на представлении описания математической модели исследуемой системы в виде совокупности связанных мета-объектов, хранимых в объектно-ориентированной базе данных. Такая архитектура позволяет использовать инкрементный транслятор и легко выполнять любые необходимые преобразования моделей. Для хранения мета-объектов и их связей используется разработанная автором объектно-ориентированная база данных шуВаБе.

11. Разработан алгоритм продвижения гибридного модельного времени в условиях активного вычислительного эксперимента.

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

208 но-аналитического моделирования открывает возможность создания принципиально новой технологии разработки программного обеспечения для встроенных ЭВМ.

13. Все теоретические результаты диссертационной работы доведены до практического воплощения в не имеющем мировых аналогов семействе пакетов моделирования Model Vision. Эти пакеты используются в учебном процессе, научных исследованиях и техническом проектировании в ряде ВУЗ'ов, научных и проектировочных организаций.

Библиография Колесов, Юрий Борисович, диссертация по теме Системный анализ, управление и обработка информации (по отраслям)

1. Андронов A.A., Леонтович Е.А., Гордон М.И., Майер А.Г. Качественная теория динамических систем 2-го порядка. - М.: Наука, 1966. -.568 с.

2. Арайс Е.А., Дмитриев В.М. Автоматизация моделирования многосвязных механических систем. М.: Машиностроение, 1987.- 240с.

3. Бенькович Е.С., Колесов Ю.Б., Сениченков Ю.Б. Практическое моделирование сложных динамических систем. СПб.: Изд-во БХВ, 2001.- 441с.

4. Безкоровайный М.М., Костогрызов А.И., Львов В.М. Инструментально-моделирующий комплекс для оценки качества функционирования информационных систем «КОК». Руководство системного аналитика. М.: Син-тег, 2000. - 116с.

5. Бизли Д. Язык программирования PYTHON. Киев, ДиаСофт, 2000. -336 с.

6. Боггс У, Боггс М. UML и Rational Rose. М.: Лори, 2000. - 582с.

7. Борщев A.B., Карпов Ю.Г., Колесов Ю.Б. Спецификация и верификация систем логического управления реального времени. // Системная информатика, вып.2, Системы программирования. Теория и приложения. Новосибирск: ВО Наука, 1993, с. 113-147.

8. Бромберг П.В. Матричные методы в теории релейного и импульсного регулирования. М.: Наука, 1967. - 323 с.

9. Ю.Бусленко Н.П. Моделирование сложных систем. М.: Наука, 1978.-384 с.

10. Буч Г. Объектно-ориентированный анализ и проектирование с примерами на С++. М.: Издательство Бином, СПб.: Невский диалект, 2001 - 560с.

11. Буч Г., Рамбо Д., Джекобсон А. Язык UML. Руководство пользователя. -М.:ДМК, 2000.-432с.

12. Н.Васильев А.Е., Леонтьев А.Г. Применение пакета Model Vision Studium для исследования мехатронных систем. // Гибридные системы. Model Vision Studium: Труды междунар. науч.-технич. конф. СПб.: Изд-во СПбГТУ ,2001.-с.51-52.

13. Вендров A.M. CASE-технологии: Современные методы и средства проектирования информационных систем. М.: Финансы и статистика, 1998. -176с.

14. Глушков В.М., Гусев В.В., Марьянович Т.П., Сахнюк М.А. Программные средства моделирования непрерывно-дискретных систем. Киев: Наукова думка, 1975.- 152с.

15. Гома X. UML. Проектирование систем реального времени, параллельных и распределенных приложений. М.: ДМК Пресс, 2002. - 704с.

16. Гультяев А.К. MATLAB 5.3. Имитационное моделирование в среде Windows. M.: Корона принт, 2001. - 400с.

17. Дал У., Мюрхауг Б., Нюгород К. СИМУЛА-67. Универсальный язык программирования. М.: Мир, 1969. - 99с.

18. Дмитриев А.К., Мальцев П.А. Основы теории построения и контроля сложных систем. -. Д.: Энергоатомиздат, 1988.- 192 с.

19. Дьяконов В. Mathematica 4: учебный курс. СПб: Питер, 2002. - 656 с

20. Емельянов C.B. Системы автоматического управления с переменной структурой. М.: Наука, 1967. - 335 с.

21. Емельянов С.В, Коровин С.К. Новые типы обратной связи. М.: Наука, 1997. 352 с.

22. Инихов Д.Б, Инихова М.А., Колесов Ю.Б., Сениченков Ю.Б. Свидетельство об официальной регистрации программы для ЭВМ «Model Vision ver. 1.5» №930033. Москва, РосАПО, 14.10.1993.

23. Инихов Д.Б, Инихова М.А., Колесов Ю.Б., Сениченков Ю.Б. Свидетельство об официальной регистрации программы для ЭВМ «Model Vision for Windows» №950277. Москва, РосАПО, 04.08.1995.

24. Инихов Д.Б,, Колесов Ю.Б., Сениченков Ю.Б. Свидетельство об официальной регистрации программы для ЭВМ «Model Vision Studium версия 3.0» №990643. Москва, Роспатент, 6.09.1999.

25. Калман Р., Фалб П., Арбиб М. Очерки по математической теории систем. -М.: Мир, 1971.400 с.

26. Касти Дж. Большие системы. Связность, сложность и катастрофы. М.: Мир, 1982.-216с.

27. Киндлер Е. Языки моделирования. М.: Энергоатомиздат, 1985. - 389с.

28. Козлов B.C., Елизаров Ф.Ф., Шухов Г.А., Горинов B.C., Колесов Ю.Б., Володин Р.П. Анализ качества программ СЦВМ на цифровом стенде // Вопросы оборонной техники c.IX 1978 - в.73, с. 109-112.

29. Козлов О.С., Медведев B.C. Цифровое моделирование следящих приводов. // Следящие приводы, т.1 /Под ред. Б.К. Чемоданова. М.: Изд. МГТУ им. Н.Э. Баумана, 1999. - с. 711-806.211

30. Колесов Ю.Б. Анализ корректности процессов логического управления динамическими объектами // Известия ЛЭТИ. Сб. научн. Трудов / Ле-нингр. Электротехнич. Ин-т им. В.И.Ульянова (Ленина). 1991. - Вып. 436.-с. 65-70.

31. Колесов Ю.Б. Верификация алгоритмов логического управления летательными аппаратами // Вопросы оборонной техники с.VIII 1989 - в.2 (62), с. 87-90.

32. Колесов Ю.Б. Некоторые вопросы языкового обеспечения проектирования сложных систем управления летательными аппаратами // Вопросы оборонной техники c.IX 1983 - в. 118, с. 92-94.

33. Колесов Ю.Б. Разработка языковых средств моделирования программно-реализуемых функций систем управления одного класса: Дисс. канд. техн. наук.- М.; ЦНИИАГ, 1987

34. Колесов Ю.Б. Свидетельство об официальной регистрации программы для ЭВМ «MVBase версия 8.0» №2001610183. Москва, Роспатент, 21.02.2001.

35. Колесов Ю.Б., Курочкин Е.П. О многоуровневом моделировании при разработке программного обеспечения систем управления // Вопросы оборонной техники с.IX 1985 - в.8 (142), с. 68-71.

36. Колесов Ю.Б., Матвеев В.В. Выбор рационального интерфейса между функциональным и системным программным обеспечением // Вопросы оборонной техники c.IX 1987 - в.З (154), с. 105-107.

37. Колесов Ю.Б., Сениченков Ю.Б. Библиотека программ для решения ОДУ// Труды ЛПИ, 462. С.Пб.: 1996, с. 116-122.

38. Колесов Ю.Б., Сениченков Ю.Б. Визуальное моделирование сложных динамических систем. СПб.: Изд-во. Мир и Семья & Интерлайн, 2000 -242с.

39. Колесов Ю.Б., Сениченков Ю.Б. Компьютерное моделирование в научных исследованиях и в образовании. // "Exponenta Pro. Математика в приложениях"-№1 -2003 с. 4-11.

40. Колесов Ю.Б., Сениченков Ю.Б. Программная поддержка активного вычислительного эксперимента. // Научно-технические ведомости СПбГПУ 2004 - №1, в печати.

41. Колесов Ю.Б., Сениченков Ю.Б. Синхронизация событий при использовании гибридных автоматов для численного моделирования сложных динамических систем. // Научно-технические ведомости СПбГПУ- 2004 -№1, в печати.

42. Колесов Ю.Б., Цитович И.Г. Имитационная модель участка трикотажного производства // Известия ВУЗ'ов. Технология легкой промышленности -1993 №6, с.56-61.

43. Колесов Ю.Б., Цитович И.Г. Оценка эффективности новой кругл овязаль-ной машины с помощью имитационной модели // Известия ВУЗ'ов. Технология легкой промышленности 1994 - №4, с. 72-77.

44. Курочкин Е.П., Колесов Ю.Б. Технология программирования сложных систем управления. М.: ВМНУЦ ВТИ ГКВТИ СССР, 1990. - 112с.

45. Липаев В.В. Надежность программных средств М.: Синтег, 1998. - 232с.

46. Липаев В.В. Системное проектирование сложных программных средств для информационных систем. М.: Синтег, 1999. - 224с.

47. Майо Д. С#: Искусство программирования. Энциклопедия программиста. СПб.: ДиаСофтЮП, 2002. - 656 с.

48. Меерович Г.А. Эффект больших систем. М.: Знание, 1985. - 231с.

49. Мехатроника / Исии Т., Симояма И., Иноуэ X., и др. М.: Мир, 1988. -387с.

50. Мухин О.И. Компьютерная инструментальная среда "Слоистая машина". -Пермь: Изд-во Пермск. Политехи. Инст., 1991. 122 с.

51. Мухин О.И. Универсальная инструментальная среда "Stratum Computer" -программный продукт нового поколения // Проблемы информатизации высшей школы (бюллетень Госкомвуза РФ). М., ГосНИИ СИ - 1995 -Вып.2. 10-1 - 10-4.

52. Петров Г.Н. Использование пакета "Model Vision" для создания компьютерных лабораторных работ. // Гибридные системы. Model Vision Studium: Труды междунар. науч.-технич. конф. СПб.: Изд-во СПбГТУ , 2001. -с.53-54.

53. Подчуфаров Ю.Б. Физико-математическое моделирование систем управления и комплексов / Под ред. А.Г.Шипунова. М.: Изд-во физико-математической литературы, 2002. - 168с.

54. Прицкер А. Введение в имитационное моделирование и язык СДАМ II. -М.: Мир, 1987. 646с.

55. Самарский A.A., Михайлов А.П. Математическое моделирование: Идеи. Методы. Примеры. М.: Наука. Физматлит, 1997.-320 с.

56. Семененко М. Введение в математическое моделирование М.:Солон-Р, 2002.- 112с.

57. Солодовников В.В. Теория автоматического регулирования. М.: Машиностроение, 1976, т. 1 — 768 с

58. Теория систем с переменной структурой./ Под редакцией С. В. Емельянова. М.: Наука, 1970. - 590 с.

59. Трудоношин В.А., Пивоварова Н.В. Математические модели технических объектов Минск: Выш. шк.,1988 - 159с.

60. Уткин В.И. Скользящие режимы в задачах оптимизации и управления. -М.: Наука, 1981.-368 с.

61. Филиппов А.Ф. Дифференциальные уравнения с разрывной правой частью М.: Наука, 1985,. - 223 с.

62. Хайрер Э., Ваннер Г. Решение обыкновенных дифференциальных уравнений. Жесткие задачи и дифференциально-алгебраические задачи М.: Мир, 1999-685с.

63. Хоар Ч. Взаимодействующие последовательные процессы. М.: Мир, 1989.-264с.

64. Черемных C.B., Семенов И.О., Ручкин B.C. Структурный анализ систем: IDEF-технологии М.: Финстат, 2001. - 208с.

65. Черных И.В. Simulink: среда создания инженерных приложений. М.: ДИАЛОГ-МИФИ, 2003. - 496с.

66. Шеннон Р. Имитационное моделирование искусство и наука. - М.: Мир, 1978.-418с.

67. Шорников Ю.В., Жданов Т.С., Ландовский В.В. Компьютерное моделирование динамических систем // Компьютерное моделирование 2003: Труды 4-й межд. научно-техн. Конференции, С.Петербург, 24-28 июня 2003г., с.373-380.

68. Эльсгольц Л.Э. Дифференциальные уравнения с запаздывающим аргументом.-М.: Наука, 1965.-394с.

69. Эльсгольц Л.Э., Норкин С.Б. Введение в теорию дифференциальных уравнений с отклоняющимся аргументом. М.: Наука, 1971. - 405с.

70. Юдицкий С.А., Покалев С.С. Логическое управление гибким интегрированным производством: Препринт / Институт проблем управления. М., 1989.-55с.

71. Andersson M. Omola An Object-Oriented Language for Model Representation, // 1989 IEEE Control Systems Society Workshop on Computer-Aided Control System Design (CACSD) - Tampa, Florida, 1989.

72. Andersson M. OmSim and Omola Tutorial and User's Manual. Version З.4./ Department of Automatic Control, Lund Institute of Technology 1995, pp.45.

73. ANSI/IEEE Std 754-1985. IEEE Standard for Binary Floating-Point Arithmetic -1985.

74. AnyLogic User's Manual.- http://www.xitek.com.

75. Ascher Uri M., Petzold Linda R. Computer Methods for Ordinary Differential Equations and Differential-Algebraic Equations. SI AM Philadelphia, 1998.

76. Astrom K.J., Elmqvist H., Mattsson S.E. Evolution of continuous-time modeling and simulation. // The 12th European Simulation Multiconference, ESM'98, June 16-19, Manchester, UK 1998.

77. Avrutin V., Schutz M. Remarks to simulation and investigation of hybrid systems, // Гибридные системы. Model Vision Studium: Труды междунар. науч.-технич. конф.- СПб.: Изд-во СПбГТУ , 2001. с.64-66.

78. Baleani М., Ferrari F., Sangiovanni-Vincentelli A.L., and Turchetti С. HW/SW Codesign of an Engine Management System. // Proc. Design Automation and Test in Europe, DATE'OO Paris, France, March 2000, pp.263-270.

79. Booch G. Object-Oriented Analysis and Design with Applicatons. 2nd ed. Redwood City, California, Addison-Wesley Publishing Company, 1993.

80. Booch G., Jacobson I., Rumbaugh J. The Unified Modeling Language for Object-Oriented Development./Documentation Set Version 1.1. September 1997.

81. Borshchev A., Karpov Yu., Kharitonov V. Distributed Simulation of Hybrid Systems with AnyLogic and HLA // Future Generation Computer Systems v. 18 (2002), pp.829-839.

82. Borshchev A, Kolesov Yu., Senichenkov Yu. Java engine for UML based hybrid state machines.// Proceedings of Winter Simulation Conference Orlando, California, USA-2000 - p. 1888-1897.

83. Brenan K.E., Campbell S.L., Petzold L.R. Numerical solution of initial-value problems in differential-algebraic equations.-North-Holland, 1989, 195 p.

84. Bruck D., Elmqvist H., Olsson H., Mattsson S.E. Dymola for multi-engineering modeling and simulation.// 2nd International Modélica Conference, March 18-19 2002, Proceedings, pp. 55-1 55-8.

85. Bunus P., Fritzson P. Methods for Structural Analysis and Debugging of Modélica Models.// 2nd International Modélica Conference, 2002, Proceeding, pp. 157-165.

86. Darnell K., Mulpur A.K. Visual Simulation with Student VisSim Brooks Cole Publishing, 1996.

87. Deshpande A., Gullu A., Semenzato L. The SHIFT programming language and run-time system for dynamic networks of hybrid automata. http://www.path.berkelev.edu/shift/publications.html

88. Elmqvist, H., F.E. Cellier, M. Otter, Object-Oriented Modeling of Hybrid Systems // Proc. ESS'93, SCS European Simulation Symposium Delft, The Netherlands, 1993, pp.xxxi-xli.

89. Elmqvist H., Mattsson S.E., Otter M. Modelica the new object-oriented modeling language. // The 12th European Simulation Multiconference, ESM'98, June 16-19- Manchester, UK.

90. Esposit J.M., Kumar V., Pappas G.I. Accurate event detection for simulating hybrid systems. Hybrid Systems: Computation and Control // Proceedings of 4th International Workshop, HSCC 2001 Rome, Italy, March 28-30, 2001, pp.204-217.

91. Ferreira J.A., Estima de Oliveira J.P. Modelling hybrid systems using statecharts and Modelica. // Proc. of the 7th IEEE International Conference on Emerging Technologies and Factory Automation Barcelona, Spain, 18-21 Oct., 1999, p.1063.

92. Fritzson P., Gunnarson J., Jirstrand M. MathModelica an extensible modeling and simulation environment with integrated graphics and literate programming // Proceedings of 2nd International Modelica Conference, March 18-19 2002, pp. 41-54.

93. Gollu A., Kourjanski M. Object-oriented design of automated highway simulators using SHIFT programming language. http://www.path.berkeley.edu/shift/publications.html

94. Harel D. Statecharts: a visual formalism for complex systems. // Science of Computer Programming North-Holland -1987 - Vol.8, No.3, pp. 231-274.

95. Harel D., Gery E. Executable Object Modeling with Statecharts // Computer, July 1997, pp. 31-42.

96. Jacobson I., Cristerson M., Jonsson P., Overgaard G. Object-Oriented Software Engineering: A Use Case Driven Approach. Wokingham, England, Addison-Wesley Publishing Company, 1992.

97. Kesten Y., Pnueli A. Timed and hybrid statecharts and their textual representation. // Lec. Notes in Comp. Sci. pp. 591-620, Springer-Verlag, 1992.

98. Khartsiev V.E., Shpunt V.K., Levchenko V.F., Kolesov Yu., Senichenkov Yu., Bogotushin Yu. The modeling of synergetic interaction in Theoretical biology. // Tools for mathematical modelling. St. Petersburg, 1999, p.71-73.

99. Kolesov Y., Senichenkov Y. A composition of open hybrid automata.// Proceedings of IEEE Region 8 International Conference «Computer as a tool» -Ljubljana, Slovenia, Sep.22-24,. 2003, v.2, pp. 327-331.

100. Ledin J. Simulation Engineering. CMP Books, Lawrence, Kansas, 2001.

101. Maler O., Manna Z., and Pnueli A. A formal approach to hybrid systems. // Proceedings of the REX workshop "Real-Time: Theory in Practice" LNCS. Springer Verlag, New York, 1992.

102. Maler O., Manna Z., and Pnueli A. From timed to hybrid systems. // Proceedings of the REX workshop "Real-Time: Theory in Practice" LNCS. Springer Verlag, New York, 1992.

103. Marca D.A, McGowan C.L. SADT: Structured analysis and design techniques New York: McGraw-Hill, 1988.

104. Mattsson S.E., Elmqvist H., Otter M., Olsson H. Initialization of hybrid differential-algebraic equations in Modelica 2.0. // Proceedings of 2nd International Modelica Conference, March 18-19 2002, pp. 9-15.

105. Modelica a unified object-oriented language for physical systems modeling. Tutorial. Version 1.4, December 15, 2000.

106. Modelica A Unified Object-Oriented Language for Physical Systems Modeling. Language Specification. Version 2.0, July 10, 2002.

107. Modelica A Unified Object-Oriented Language for Physical Systems Modeling. Tutorial. Version 2.0, July 10, 2002.

108. Mosterman P.J. Hybrid dynamic systems: a hybrid bond graph modeling paradigm and its application in diagnosis: Dissertation for the degree PhD of Electrical Engineering Vanderbilt University, Nashvill, Tenneessee, 1997.

109. Osipenko G. Spectrum of a dynamical system and applied symbolic dynamics // Journal of Mathematical Analysis and Applications 2000 - v. 252, no. 2, , pp.587-616 .

110. Otter M., Elmqvist H., Mattsson S.E. Hybrid modeling in Modelica based on the synchronous data flow principle. // Proceeding of the 1999 IEEE Symposium on Computer-Aided Control System Design, CACSD'99 Hawai,USA, August 1999.

111. Pantelides C.C. The consistent initialization of differential-algebraic systems. // SIAM J. Sci. Stat. Comput. 9(2) 1988 - p.213-231.

112. Selic B., Gullekson G., Ward P.T. Real-Time Object-Oriented Modeling. -John Wiley & Sons. Inc. 1994.

113. Yourdon E. Modern structured analysis.- Prentice-Hall, New Jenersy. 1989.