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

кандидата технических наук
Томилов, Иван Николаевич
город
Новосибирск
год
2010
специальность ВАК РФ
05.13.11
Диссертация по информатике, вычислительной технике и управлению на тему «Синтаксически ориентированные и графические средства описания и анализа моделей гибридных систем»

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

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

Томилов Иван Николаевич

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

05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

АВТОРЕФЕРЕРАТ диссертации на соискание ученой степени кандидата технических наук

604603961

Новосибирск - 2010

004603961

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

Научный руководитель: доюгор технических наук, доцент

Шорников Юрий Владимирович

Официальные оппоненты: доктор технических наук, профессор

Авдеенко Татьяна Владимировна

Защита состоится 17 июня 2010 г. в 10— часов на заседании диссертационного совета Д 212.173.06 при Новосибирском государственном техническом университете по адресу: 630092, Новосибирск, пр. К. Маркса 20

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

кандидат физико-математических наук, доцент Мурзин Федор Александрович

Ведущая организация: Национальный исследовательский Томский

политехнический университет, г. Томск

Автореферат разослан « » мая 2010 г.

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

Чубич В,М.

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

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

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

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

В настоящее время научное направление компьютерного моделирования ГС закончило этап становления. Разработан ряд отечественных (MVS, AnyLogic) и зарубежных (DYMOLA, Simulink/Stateflow, SCILAB/SCICOS) пакетов моделирования, каждый из которых реализует уникальный формализм ГС, имеющий свои достоинства и недостатки. Существование многообразия формализмов свидетельствует о недостаточной степени исследования вопросов спецификации ГС и подчеркивает актуальность.

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

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

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

Цель работы и задачи исследования. Цель работы заключается в разработке синтаксически ориентированных и графических средств описания и анализа моделей ГС.

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

• Экспериментальный анализ современных формализмов спецификации ГС и инструментальных средств их реализации.

• Разработка новых альтернативных формализмов спецификации ГС,

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

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

• Разработка предметно-ориентированных средств спецификации и анализа прямых задач химической кинетики.

• Унификация спецификации моделей ГС из различных предметных областей исследования динамики процессов.

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

• Выполнено расширение предметно-ориентированного языка спецификации ГС ЫБМА введением событийного управления. Разработаны средства реализации нового языка в виде многопроходного языкового процессора.

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

• Разработаны методологические и лингвистические основы способов спецификации ГС, допускающих алгоритмическое формирование правых частей системы АДУ для задач повышенной размерности.

• Разработано лингвистическое обеспечение для решения прямых задач химической кинетики в виде языка спецификации LISMA+ и программных средств его реализации.

• Спроектирована архитектура интегрированного препроцессора ПК ИСМА-10.

Практическая ценность работы н реализация результатов.

Разработанные методы и алгоритмы реализованы в рамках новой версии пакета моделирования ИСМА-10 (Свидетельство официальной регистрации программы для ЭВМ № 2005610126. - М: Роспатент, 2005; Свидетельство об официальной регистрации программы для ЭВМ №2007611024. -М.: Роспатент, 2007).

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

Результаты научных исследований использованы при выполнении проекта № РНП 2.1.2/4751 в рамках АВЦП «Развитие научного потенциала высшей школы (2009-2010 годы)»; НИР в рамках государственного контракта № П-297 по ФЦП «Научные и научно-педагогические кадры инновационной России» на 2009-2011 гг.

Достоверность научных положений и результатов подтверждается анализом существующих языковых и инструментальных средств решения поставленных задач, сравнением результатов решения ряда тестовых задач в ПК ИСМА-10 и ведущих отечественных и мировых аналогах (MVS, AnyLogic, DYMOLA, Simulink/Stateflow). Кроме того, достоверность и эффективность обоснована на предметно ориентированном описании прямых задач химической кинетики.

Личный вклад. Все изложенные в диссертации алгоритмы и методики были разработаны, реализованы и экспериментально проанализированы автором лично. Программная реализация пакета моделирования ИСМА-10 проводилась коллективом исследователей при непосредственном участии автора. Автором модифицировано, дополнено и доведено до программной реализации лингвистическое обеспечение ПК ИСМА-10.

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

• всероссийской научной конференции молодых ученых «Наука Технологии Инновации» (Новосибирск, 2004);

• научной студенческой конференции «Дни науки НГТУ» (Новосибирск, 2004,2006);

• втором международном форуме по стратегическим технологиям «IFOST-2007», (Ulaanbaatar, Mongolia, 2007);

• всероссийской научно-технической конференции «Научное программное обеспечение в образовании и научных исследованиях» (Санкт-Петербург, 2007,2008);

• всероссийской научно-практической конференции «Имитационное моделирование. Теория и практика» (Санкт-Петербург, 2009).

Также промежуточные результаты работы докладывались на ежегодной отчетной научной сессии НГТУ, на научных семинарах ИВМ и МГ СО РАН, ИСИСОРАН.

Публикации. Всего по теме диссертации опубликованы 12 научных работ, в том числе: 3 статьи в ведущих рецензируемых научных журналах и изданиях, рекомендованных ВАК РФ; 5 статей в материалах международных и всероссийских конференций; 2 работы опубликованы в международных научно-технических журналах. 2 работы зарегистрированы в Роспатент.

Структура и объем диссертации. Работа состоит из введения, трех глав, заключения и приложений. Объем работы составляет 175 страниц основного текста, включая 83 рисунка и 9 таблиц. Список использованных источников содержит 95 наименований.

Краткое содержание работы

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

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

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

Непрерывное поведение ГС ограничивается классом систем ОДУ в форме

Коши

* = /М. '<Фо.'А]> *('о) = *О> (1)

где xeR" - вектор состояния; /: RxRn -> Д" - нелинейная вектор-функция, удовлетворяющая условию Липшица.

Локальное поведение или режим ГС Су еС,1< j<m характеризуется

непрерывным поведением, полученным на решении задачи Коши с ограничениями

pr:g{t,y)< 0, (2)

где y<=RN- вектор состояния; f:RxRN -*RN - нелинейная вектор-1ая у слов

oN V ds

функция, удовлетворяющая условиям Липшица; yo eRN - вектор начальных

условий; g(t,y):R*R -*Rs,s = 1,2,... - событийная функция,

,, V ¡true,g{t,y)<О,

характеризующаяся предикатом pre [true, false), pr = \ . ,

[false,g(t,y)> 0.

Из изложенного следует, что ГС является обобщением динамических систем. Этот важный вывод согласуется с введенными понятиями ГС в работах отечественных (Ю.Б. Сениченкова, Ю.Б. Колесова, Ю.Г. Карпова) и зарубежных (Е.А. Lee, Н. Zhenq, J. Esposito, V. Kumar) ученых.

Непрерывные поведения ГС могут описываться системами АДУ. Примеры таких систем рассмотрены в работе. Для увеличения класса задач расширим (2) введением алгебраических уравнений, при этом ограничимся алгебраическими уравнениями, разрешенными относительно алгебраических переменных z. Тогда (2) примет вид y = f{t,z,y),

z = <p{t,y),

где yzRN,zeRN',f:RxRN'xRN->RN,<p:RxRNxRNz->RNz.

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

yJ=fj(t.yJ). yJeоМ. Ч'о.'*].

/ (4)

prj:gj(t,yJ)<0,

где yJ eRNJ, fj.-RxRNJ -+RNi, gj:RxRNJ ->RSJ, Sj=l,2.....1< j<m.

В отличие от известных работ Сениченкова Ю.Б., Колесова Ю.Б., Карпова Ю.Г., Шорникова Ю.В., в которых рассматривается приведенный класс задач, правая часть в (3) может быть задана алгоритмически (гл. 2), либо получена из иной формы представления модели на языке предметной области путем трансляции (гл. 3).

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

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

7

Во второй главе решена задача формализации модели ГС и унификации программного обеспечения. Показано однозначное соответствие между разработанным текстовым формализмом и картами поведения при спецификации ГС. Разработана методика текстовой спецификации задач, допускающих алгоритмическое задание правых частей АДУ. Разработан языковой процессор текстовой модели ГС. За счет использования механизмов порождающих грамматик и регулярных выражений достигнута высокая степень унификации и гибкой адаптивности языка к задачам из различных предметных областей. Разработанные формализмы дополняют существующее многообразие: сети Петри (Dymola), мультиагентное моделирование (AnyLogic), блочное моделирование (МВТУ, Matlab), гибридные автоматы (MVS) При этом новые формализмы имеют функциональные преимущества.

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

• интерфейс редактора модели ГС реализован в виде самостоятельного структурного элемента с механизмами взаимодействия с основной структурной схемой для интеграции и возможности применения структурно-текстовой спецификации в рамках ПК ИСМА-10 (рис. 1)\

• языки текстовой и графической спецификации ГС семантически эквивалентны. Существует возможность перехода от одного представления к другому;

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

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

RElement

.....0 Иодели

—М8 Дополнит Ж Источник .....Н Типовые

fjaBop элементов

hl'-(l/S)*(Qp - Q1 - Q2 - V3*Q3); h2'-{l/S)*(Q2 + V3*Q3 - V4*Q4); stl [ {hl<=hv3J J is

V3--0; from init, st2; st2 [ (hl>=hv3) ] is

V3~=l; from stl;

Рис. 1. Интерфейс редактора модели ГС

Q Связь 80 Узел ф Схема f^ Модель ГС Вход Выход

• язык не оперирует терминами, не относящимися непосредственно к процессу моделирования, что делает его приемлемьм для предметного специалиста;

• язык текстовой спецификации поддерживает механизмы алгоритмического формирования правых частей АДУ.

Непрерывное поведение ■. (continuous behavior) при текстовой спецификации задается системой АДУ в общепринятой математической форме.

Дискретное поведение представляется в виде матрицы переходов и формализма карт поведения {рис. 1). Введен механизм событийного управления ГС для расширения возможностей управления дискретным поведением.

Матрица переходов. В ИСМА-10 разработаны и реализованы средства текстовой спецификации ГС. Семантический анализатор на основе синтаксического представления модели генерирует матрицу переходов, однозначно управляющую дискретным поведением модели и реализующую все возможности языка графической спецификации в виде карт поведения.

Базовым языковым объектом, на котором основывается спецификация дискретного поведения ГС в виде совокупности непрерывных режимов, является условно-адресная пара (УАЛ).

Определение. Условно-адресной парой st [pr] называется упорядоченная комбинация идентификатора режима ГС st и условия перехода рг в данный режим. Идентификатор режима является адресной составляющей, условие перехода - условной.

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

Пусть С = \cj,j = 1,л| - непустое множество локальных непрерывных

режимов ГС, £сС2 - множество дискретных переходов системы, где С2 =СхС = |(с;,су),= и| - декартов квадрат. Тогда пару {С,Е) будем

называть ориентированным графом G(C,E), в котором (с,-,су) - дуга с начальной с,- и конечной Cj вершиной.

Пусть prt и pvj - условные составляющие условно-адресных пар выхода

из текущего и входа в следующее состояние соответственно. Тогда определим матрицу переходов как квадратную матрицу М = [ту J порядка п, в которой

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

Событийное управление. В рамках разработанного формализма спецификации ГС под событийным управлением понимается дискретная последовательность действий, осуществляемая при выполнении определенного условия и не приводящая к смене текущего непрерывного состояния. Графическая интерпретация механизма событийного управления изображена на рис. 2, где показано возможное выполнение дискретных действий (act) в рамках непрерывных состояний (st).

St Stj

sti

sti -►

act! 1 1

to t! tx t2 tj ti t

Рис. 2. Графическая интерпретация событийного управления

На языке ЫБМА событийное управление реализуется однозначным условным оператором ¡/-¡¡геп-епсИ/. При помощи механизма событийного управления реализуются внешние воздействия на моделируемую систему, т.е. действия, имеющие другую природу происхождения и не зависящие от законов функционирования системы. Использование событийного управления особенно оправдано при изменении начальных условий и значений параметров модели. Использование событийного управления позволяет:

• упростить логику дискретного поведения модели;

• сократить число непрерывных режимов модели;

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

Карта поведения - это ориентированный граф, в котором вершинам соответствуют локальные непрерывные режимы, а дуги интерпретируются как переходы от одного режима к другому. В настоящее время карты поведения являются стандартом описания дискретно-непрерывных объектов, принятым в формализме ЦМЬ. В ИСМА-10 карты поведения являются графическим формализмом спецификации ГС.

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

ргЗ^, act1

рг4_р act2

Событийное управление

{jn«\-- _РГ1

sttj (st2)

Классическая карта поведения Р'24-

Рис. 3. Расширенная карта поведения на примере модели двух резервуаров

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

// управление вентилятором if (t>=110) then on-=l; endif; if (t<85) than on~=0; endif; // малый контур little [t<75] is f=kl*t; from init; // большой контур big [t>=75] is

t'=(k2-k3-k4*on)*t; from little;

Рис. 4. Модели системы охлаждения двигателя внутреннего сгорания с использованием различных формализмов

Языковой процессор включает стадии лексического, синтаксического и семантического анализа текстовой модели ГС.

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

На лексический анализатор возложены дополнительные функции:

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

- удаление из текста программы не несущих смысловой нагрузки символов (пользовательских комментариев, лишних разделителей);

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

Для описания лексем языка ПБМА используются регулярные выражения и автоматные грамматики, что позволяет применять для разбора детерминированные конечные автоматы.

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

Согласно общепринятой классификации синтаксический анализатор языка ЫБМА является нисходящим, использует последовательность разбора слева направо с просмотром вперед на к символов без возвратов.

В диссертации показана принадлежность грамматики языка ПБМА к классу однозначных ЬЬ(к)- грамматик, что обеспечивает безвозвратный анализ.

Для синтаксического разбора используется метод рекурсивного спуска. Выбор основан на том, что для класса ЕХ(к)-грамматик допускает построение эффективных алгоритмов разбора, используя рекурсивные процедуры.

Задачами семантического анализатора являются:

- контроль правильности структуры программы;

- контроль дублирования языковых единиц;

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

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

- макроподстановки;

- формирование внутреннего представления модели.

Контекстно-свободные грамматики, с помощью которых описывается

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

- хранение статуса каждого идентификатора программы;

- на каждом шаге семантического анализа статус идентификатора определяется однозначно.

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

Алгоритмическое формирование правых частей системы АДУ. В ряде случаев правая часть системы (3) может быть задана в алгоритмической форме, т.е. индексы переменных в правой части аналитически зависят от индекса переменной в левой части уравнения. При этом вид правой части сохраняется

У1=/(УЩ-У12(1).....У1п(

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

<МАССИВ> 'array' <ИД> '[' <ЦБЗ> ']'; .

где 'array' - ключевое слово, <ИД> - имя массива (идентификатор), <ЦБЗ> -размерность массива (целое беззнаковое число);

<СЧБТЧИК>-><ИД>'="[' <ЦБЗ>'-' <ЦБЗ> [ { ',' <ЦБЗ> «-' <ЦБЗ> } ]']'; где <ИД> - имя счетчика (идентификатор), <ЦБЗ> - минимальное и максимальное значения счетчика (целые положительные числа).

В работе механизм алгоритмического формирования правой части системы АДУ демонстрируется на примере задачи проникновения помеченных радиоактивной меткой антител в пораженную опухолью ткань живого организма. Математическая модель задачи имеет вид:

& = f{t,y),y{Q) = g,yeR1N,0Zt<20, (5)

at

где N - задаваемый пользователем параметр, определяющий размерность задачи, g е Rw ,g = (0,v0,0,v0,...,0,v0)r. Функция / определяется формулами: , „ У2]+\-У2]-2л „ У2 j-3 ~ 2у2 j-\ + У2 j+l ...

-(ло2 (6)

. /и=-кУ2]У2]-Ь

где

aj = 2 {JAC -1)3 с2, pj = {JА( -1)4 с2,1 < j < N,

Рассматривается случай для N = 200, т.е. система (5) содержит 400 уравнений.

Из анализа (6) видно, что формализм (5) некорректно представляется индексами, выходящими за пределы массива. В связи с этим предусмотрена возможность явного задания элементов массива фазовых переменных.

Компьютерная модель с применением новых языковых конструкций LISMA представлена на рис. 5. Модель иллюстрирует механизмы явного и алгоритмического задания элементов массива. При этом синтаксически формы записи идентичны.

N - 200; к - 100; С2 - 16; //pow(c, 2) phi = 2; i - [1-200]; j - [2-199];

array у[400]; //объявление массива //начальные условия у[2*1 - 1] - 0; у[2*i] - 1;

macro alpha[1] - 2*pow(i/N - 1, 3)/C2; macro beta[i] - 2*pow(i/N - 1,-4)/C2; //явное задание правых частей СДУ у[1]• - alpha[1]*(у[3] - phi)*N/2 +

beta[1]*(phi - 2*у[1] + y[3])*N*N - к*у[1]*у[2); у[2]' - -к*у[2]*у[1]; у[399]• - -к*у[400]*у[399]; у(400J• - -к*у[399]*у[400];

//алгоритмическое задание правых частей СДУ у[2*j-l]' - alpha[j]*(y[2*j + 1] - y[2*j - 3])*N/2 +

beta[j]*(y[2*j-3] - 2*y[2*j-l] + у[2*j+1])*N*N - k*y[2*j-l]*y[2*j]; y[2*j]' - -k*y[2*j]*y[2*j-l]; //гибридное поведение change_phi [TIME >- 5] is phi — 0; from init;

Из рис. 5 видно корректную инициализацию фазовых переменных и решение поставленной задачи алгоритмического задания правой части системы

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

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

Схема реакции химической кинетики представляет собой совокупность элементарных стадий вида:

где с/, 1 = 1, И, - реактанты (реагенты, продукты и промежуточные вещества); к], } = \, Л^ - константы скоростей стадий; и АГ, - число реактантов и число элементарных стадий в реакции соответственно; ау и Ру, / = 1, Иг, ] = 1, - стехиометрические коэффициенты.

Рис. 5. Фрагмент программной модели

АДУ.

/=1

/=1

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

1. Декомпозиция сложных реакций на элементарные стадии по правилам, изложенным в работе.

2. Каждому реактанту соответствует ОДУ, левая часть которого

Ф/

представляет собой производную его концентрации по времени —, где у1 -

концентрация реактанта с,-.

3. Нахождение выражений для скоростей стадий реакции в качестве промежуточных данных

= (7)

/=1

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

сЫ

Ш ]=\ У=1

или где у у = Ру - ау. Число отличных от нуля слагаемых в

Л >1

правой части равно числу стадий, в которых участвует соответствующий реактант.

Для решения задачи построения системы дифференциальных уравнений химической кинетики в рамках системы ИСМА-10 разработан специализированный языковой процессор, решающий задачи:

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

• автоматическая генерация правых частей ОДУ для заданной системы химических уравнений в соответствии с законом действующих масс в форме, используемой в ИСМА-10;

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

Для спецификации задач химической кинетики разработан язык Ы8МА+, являющийся надстройкой языка ЫБМА. Причем грамматика Ы8МА+ является частным случаем грамматики ЫБМА, т.е. Оц5Ш+ а Ои5МА, чем достигается преемственность, высокая степень унификации и адаптивности языка к задачам из различных предметных областей.

Ввод задачи химической кинетики осуществляется в интерфейсе структурного элемента - текстового блока системы ИСМА-10. Для корректной

15

интеграции языкового процессора Ы8МА+ спроектирована интегрированного препроцессора ИСМА-10 (рис. 6).

структура

Рис. 6. Структура интегрированного препроцессора Ж ИСМА-10

Результатом препроцессирования модели с языка ШМА+ является корректная модель на языке ЫБМА. Генерация такой промежуточной модели позволяет использовать существующий препроцессор с языка ЫБМА и не накладывает на систему моделирования никаких дополнительных требований. Входной язык поддерживает следующие языковые конструкции:

• Определение константы скорости стадии;

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

• Уравнение химической реакции (элементарной стадии реакции). Грамматика имеет вид:

< ОК >-»< ИД >=< ЧБЗ >;

< НУ >->< ИД >=< ЧБЗ >; <ОП>-кЩ>

<ОП >-»<ЦБЗ>*<ИД > <АВ >-><ОЛ>

< АВ >-»< АВ> + <ОП>

< КС >-»< ЧБЗ > <КС>-+<ИД>

< СТ >->< АВ >=>< АВ >;

< СТ >-»< АВ >=< КС >=>< АВ >;

где <0Ю> - определение константы скорости стадии, <НУ> - задание начальных условий, <ОП> - операнд арифметического выражения, <АВ> -арифметическое выражение, <КС> - константа скорости, <СТ> - уравнение стадии химической реакции. Остальные нетерминалы - <ИД> (идентификатор), <ЧБЗ> (число без знака) и <ЦБЗ> (целое без знака) определены в языке ПвМА.

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

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

С2Н6 -» СЯ3 + СЯ3,

СЯ3 + С2Н6 н> СЯ4 + С2Н5,

С2Н5 С2Я4 + Я,

Я + С2Я6->Я2+С2Я5,

С2Н$ + С2Н5 -> СцН^.

Таблица 1

Внутреннее представление исходной задачи

j Щ У2\ Уз, Ун Уб\ Г7|

1 -1 2 0 0 0 0 0 0 к]У1

2 -1 -1 1 1 0 0 0 0 к2У1Уг

3 0 0 0 -1 1 1 0 0 к3У4

4 -1 0 0 1 0 -1 1 0 к4У1Уб

5 0 0 0 -2 0 0 0 1 к3у/

На основе внутреннего представления препроцессор 1Л8МА+ генерирует всю систему кинетических уравнений, за один проход, которая имеет вид (1) и в данном случае представлена системой ОДУ

I

Л = ~к\У\ ~ к У\Уг ~ к4У\У&.

г

Уг =2к\У\-кгУ\У2>

I

Уз = к2У\У2>

У4 = Ь.У\Уг ~ кзУ4 + кУ1Уб ~ 2к5У4- ,оч

У5 = кЗУ4' /

Уб =кзУ4~к4У1Уб-У7 =к4У1Уб-У& =к5у}.

Далее (8) интерпретируется семантическим анализатором ИСМА-10 с традиционными и оригинальными методами численного анализа.

Основные результаты и выводы

Получены следующие основные результаты.

1. Выполнено расширение предметно-ориентированного языка спецификации ГС LISMA и средств его реализации в виде языкового процессора.

2. Разработаны и реализованы в рамках ПК ИСМА-10 новые формализмы спецификации ГС в отличие от сетей Петри (Dymola), мультиагентного описания (AnyLogic), блочного представления (МВТУ, Matlab), гибридных автоматов (MVS). При этом предложенные формализмы имеют функциональные преимущества, ориентированные на предметного пользователя. Показана семантическая эквивалентность разработанных формализмов.

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

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

5. На классе специальных задач показана эффективность инструментально-ориентированного исследования средствами ИСМА-10 ГС разной природы.

6. На основе новых информационных технологий объектно-ориентированного программирования реализована иерархия программных модулей интегрированного препроцессора ИСМА-10. Прикладное значение программных продуктов заключается в повышении эффективности процессов обработки и подготовки данных в вычислительных машинах.

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

1. Омельченко К.В. Инструментальное средство численного решения задачи Коши / К.В. Омельченко, И.Н. Томилов // «НАУКА. ТЕХНОЛОГИИ. ИННОВАЦИИ.»: Материалы всероссийской научной конференции молодых ученых в 6-ти частях. - Новосибирск: Изд-во НГТУ, 2004,Часть 1.-С. 120-121.

2. Томилов И.Н. Моделирование гибридных систем в ИСМА / И.Н. Томилов // Труды науч.-техн. конф. «Научное программное обеспечение в

18

образовании и научных исследованиях». - СПб.: Изд-во СПбГПУ, 2007. -С. 65-69.

3. Tomilov I.N. The Usage of ISMA Software Tools in The Course of Power-operated Low-frequency Filter Synthesis. / I.N. Tomilov // Proc. of The Second International Forum on Strategy Technologies «IFOST-2007». Ulaanbaatar, Mongolia, Mongolian University of Science and Technology, 2007. - pp. 597-598. [Использование программных средств ИСМА при синтезе силовых низкочастотных фильтров]

4. Шорников IO.B. Спецификация и численный анализ гибридных систем в ИСМА / Ю.В. Шорников, И.Н. Томилов, М.С. Денисов, P.O. Леонтьев // Труды науч.-техн. конф. «Научное программное обеспечение в образовании и научных исследованиях». - СПб.: Изд-во Политехи, ун-та, 2008. - С. 138-144.

5. Шорников Ю.В. Внзуалыю-лингвистическое моделирование билиарной системы / Ю.В. Шорников, И.Н. Томилов // Научный вестник НГТУ, 2008. - №4(33). - С. 53-61.

6. Томилов И.Н. Спецификация дискретной составляющей моделей гибридных систем / И.Н. Томилов, М.С. Денисов, Д.Н. Достовалов // Информационные технологии моделирования и управления. - Воронеж: Изд-во Научная книга, 2009. - №4(56). - С. 534-541.

7. Шорников Ю.В. Компьютерный анализ многомерных ГС явными методами в ИСМА / Ю.В. Шорников, И.Н. Томилов, М.С. Денисов // Проблемы информатики, 2009. - №2(3). - С. 33-41.

8. Томилов И.Н. Спецификация дискретного поведения гибридных систем / И.Н. Томилов, Д.Н. Достовалов, М.С. Денисов // 4-я всерос. науч.-практ. конф. по имитационному моделированию и его применению в науке и промышленности «Имитационное моделирование. Теория и практика» ИММОД-2009: Сб. докл. В 2 т. - СПб, 2009. - Т. 1. - С. 192-196.

9. Шорников Ю.В. Спецификация и исследование гибридных систем высокой размерности средствами ИСМА / Ю.В. Шорников, И.Н. Томилов, М.С. Денисов, Д.Н. Достовалов // Научный вестник НГТУ, 2010. -№1(38).-С. 85-94.

10. Томилов И.Н. Математическое и программное обеспечение для решения прямых задач химической кинетики / И.Н. Томилов // Системы управления и информационные технологии, 2009. - №3.2(37). - С. 286-290.

Зарегистрированные в Роспатент

11. Шорников Ю.В. Инструментальные средства машинного анализа / Ю.В. Шорников, B.C. Дружинин, H.A. Макаров, К.В. Омельченко, И.Н. Томилов // Свидетельство об официальной регистрации программы для ЭВМ № 2005610126. - М: Роспатент. - 2005.

12. Шорников Ю.В. Программа языкового процессора с языка LISMA (Language of ISMA) / Ю.В. Шорников, И.Н. Томилов // Свидетельство об официальной регистрации программы для ЭВМ № 2007611024. - М.: Роспатент. - 2007.

Отпечатано в типографии Новосибирского государственного технического университета 630092, г. Новосибирск, пр. К. Маркса, 20, тел./факс (383) 346-08-57 формат 60 X 84/16 объем 1.25 п.л., тираж 100 экз.. заказ № 900 подписано в печать 12.05.2010 г

Оглавление автор диссертации — кандидата технических наук Томилов, Иван Николаевич

ВВЕДЕНИЕ.

ГЛАВА 1. КЛАСС ИССЛЕДУЕМЫХ ОБЪЕКТОВ.

1.1. Гибридные системы как обобщение классических динамических систем.

1.2. Факторы появления гибридного поведения.

1.3. Типы гибридного поведения.

1.4. Обзор современных программных комплексов компьютерного анализа ГС.

1.4.1. Программный комплекс Matlab/Simulink/Stateflow.

1.4.2. Интегрированная среда моделирования DYMOLA.

1.4.3. Интегрированная система символьной математики Maple.

1.4.4. Программный комплекс AnyLogic.

1.4.5. Пакет численного моделирования Model Vision Stadium.

1.5. Обзор формализмов спецификации ГС.

1.5.1. Объектно-ориентированное моделирование.

1.5.2. Гибридные автоматы.

1.5.3. Сети Петри.

1.5.4. Агентное моделирование.

1.6. Пример построения модели ГС в различных средах моделирования .46 ВЫВОДЫ.

ГЛАВА 2. ЯЗЫК СПЕЦИФИКАЦИИ МОДЕЛЕЙ ГИБРИДНЫХ СИСТЕМ.

2.1. Возможности языка спецификации ГС и средств его реализации.

2.2. Спецификация непрерывного поведения.

2.2.1. Наследование непрерывного поведения режимам ГС в ИСМА

2.3. Спецификация дискретного поведения ГС.

2.3.1. Матрица переходов.

2.3.2. Событийное управление.

2.4. Анализ текстовой модели ГС.

2.4.1. Лексический анализ.

2.4.2. Синтаксический анализ.

2.4.3. Семантический анализ.

2.5. Карты поведения.

2.5.1. Расширение карт поведения введением событийного управления.

2.5.2. Семантическая эквивалентность текстовой и графической спецификации ГС.

2.6. Алгоритмическое формирование правой части системы АДУ.

2.6.1. Практический пример.

2.6.2. Расширение языка спецификации.

2.6.3. Компьютерная модель системы.

2.7. Взаимодействие модели ГС с основной структурной схемой.

2.8. Дополнительные возможности спецификации.

2.9. Архитектура интегрированного препроцессора ИСМА.

ВЫВОДЫ.

ГЛАВА 3. МАТЕМАТИЧЕСКОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ СПЕЦИФИКАЦИИ ПРЯМЫХ ЗАДАЧ ХИМИЧЕСКОЙ КИНЕТИКИ

3.1. Основные термины и определения.

3.2. Дифференциальные уравнения химической кинетики.

3.3. Алгоритм формирования дифференциальных уравнений химической кинетики.

3.4. Язык спецификации.

3.4.1. Синтаксис.

3.4.2. Семантика.

3.5. Спецификация сложных химических реакций.

3.5.1. Обратимые реакции.

3.5.2. Параллельные реакции.

3.5.3. Последовательные реакции.

3.6. Спецификация динамических химических реакций.

3.7. Оптимизация расчетов правой части кинетических уравнений.

3.8. Разработка языкового процессора на базе MS Excel.

3.8.1. Практическое применение.

3.8.2. Диагностика ошибок.

ВЫВОДЫ.

Введение 2010 год, диссертация по информатике, вычислительной технике и управлению, Томилов, Иван Николаевич

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

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

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

В настоящее время научное направление компьютерного моделирования ГС закончило этап становления. Разработан ряд отечественных (MVS, AnyLogic) и зарубежных (DYMOLA, Simulink/Stateflow, SCILAB/SCICOS) пакетов моделирования, каждый из которых реализует уникальный формализм ГС, имеющий свои достоинства и недостатки. Существование многообразия формализмов свидетельствует о недостаточной степени исследования вопросов спецификации ГС и подчеркивает актуальность.

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

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

Цель работы и задачи исследования. Цель работы заключается в разработке синтаксически ориентированных и графических средств описания и анализа моделей ГС.

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

• Экспериментальный анализ современных формализмов спецификации ГС и инструментальных средств их реализации.

• Разработка новых альтернативных формализмов спецификации ГС.

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

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

• Разработка предметно-ориентированных средств спецификации и анализа прямых задач химической кинетики.

• Унификация спецификации моделей ГС из различных предметных областей исследования динамики процессов.

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

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

• Выполнено расширение предметно-ориентированного языка спецификации ГС LISMA [69] введением событийного управления. Разработаны средства реализации нового языка в виде многопроходного языкового процессора.

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

• Разработаны методологические и лингвистические основы способов спецификации ГС, допускающих алгоритмическое формирование правых частей системы АДУ для задач повышенной размерности.

• Разработано лингвистическое обеспечение для решения прямых задач химической кинетики в виде языка спецификации LISMA+ и программных средств его реализации.

• Спроектирована архитектура интегрированного препроцессора ПК ИСМА-10.

Практическая ценность работы и реализация результатов.

Разработанные методы и алгоритмы реализованы в рамках новой версии пакета моделирования ИСМА-10 (Свидетельство официальной регистрации программы для ЭВМ № 2005610126. - М: Роспатент, 2005; Свидетельство об официальной регистрации программы для ЭВМ №2007611024. - М.: Роспатент, 2007).

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

Результаты научных исследований использованы при выполнении проекта № РНП 2.1.2/4751 в рамках АВЦП «Развитие научного потенциала высшей школы (2009-2010 годы)»; НИР в рамках государственного контракта № П-297 по ФЦП «Научные и научно-педагогические кадры инновационной России» на 2009-2011 гг.

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

ПК ИСМА-10 и ведущих отечественных и мировых аналогах (MVS, AnyLogic, DYMOLA, Simulink/Stateflow). Кроме того, достоверность и эффективность обоснована на предметно ориентированном описании прямых задач химической кинетики.

Личный вклад. Все изложенные в диссертации алгоритмы и методики были разработаны, реализованы и экспериментально проанализированы автором лично. Программная реализация пакета моделирования ИСМА-10 проводилась коллективом исследователей при непосредственном участии автора. Автором модифицировано, дополнено и доведено до программной реализации лингвистическое обеспечение ПК ИСМА-10.

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

• всероссийской научной конференции молодых ученых «Наука Технологии Инновации» (Новосибирск, 2004);

• научной студенческой конференции «Дни науки НГТУ» (Новосибирск, 2004, 2006);

• втором международном форуме по стратегическим технологиям «IFOST-2007», (Ulaanbaatar, Mongolia, 2007);

• всероссийской научно-технической конференции «Научное программное обеспечение в образовании и научных исследованиях» (Санкт-Петербург, 2007, 2008);

• всероссийской научно-практической конференции «Имитационное моделирование. Теория и практика» (Санкт-Петербург, 2009).

Также промежуточные результаты работы докладывались на ежегодной отчетной научной сессии НГТУ, на научных семинарах ИВМиМГ СОР АН, ИСИ СОР АН.

Публикации. Всего по теме диссертации опубликованы 12 научных работ, в том числе: 3 статьи в ведущих рецензируемых научных журналах и изданиях, рекомендованных ВАК РФ; 5 статей в материалах международных, всероссийских конференций; 2 работы опубликованы в международных научно-технических журналах. 2 работы зарегистрированы в Роспатент.

Структура и объем диссертации. Работа состоит из введения, трех глав, заключения и приложений. Объем работы составляет 175 страниц основного текста, включая 83 рисунка и 9 таблиц. Список использованных источников содержит 95 наименований.

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

ВЫВОДЫ

Разработан язык спецификации прямых задач химической кинетики и средства его реализации в виде языкового процессора. Интеграция языкового процессора с языка химических реакций LISMA+ позволил не только моделировать взаимодействие подсистем различной природы, но и имеющие различные формы представления исходной модели. При этом никаких дополнительных требований, ограничений или доработок системы моделирования ИСМА не потребовалось.

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

Предложенная инструментально-ориентированная методология исследования динамики процессов позволила:

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

- сосредоточиться на сущности исследуемых задач;

- применить существующий арсенал оригинальных эффективных численных методов библиотеки ИСМА для численного анализа системы ОДУ;

- сократить время получения результатов химической кинетики благодаря использованию инструментария интегрированной среды ИСМА;

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

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

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

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

ЗАКЛЮЧЕНИЕ

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

1. Выполнено расширение предметно-ориентированного языка спецификации ГС LISMA и средств его реализации в виде языкового процессора.

2. Разработаны и реализованы в рамках ПК ИСМА-10 формализмы спецификации ГС, дополняющие формализмы известных аналогов: сети Петри (Dymola), мультиагентное моделирование (AnyLogic), блочное моделирование (МВТУ, Matlab), гибридные автоматы (MVS) и имеющие свои функциональные преимущества, ориентированные на предметного пользователя. Показана семантическая эквивалентность текстового и графического формализмов.

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

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

5. На классе специальных задач показана эффективность инструментально-ориентированного исследования средствами ИСМА-10 ГС разной природы.

6. На основе новых информационных технологий объектно-ориентированного программирования реализована иерархия программных модулей интегрированного препроцессора ИСМА-10. Прикладное значение программных продуктов заключается в повышении эффективности процессов обработки и подготовки данных в вычислительных машинах.

Библиография Томилов, Иван Николаевич, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей

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

2. Ахо А. В. Теория синтаксического анализа, перевода и компиляции / A.B. Ахо, Д. Ульман. М.: Мир, 1978. - 612 с.

3. Ахо А.В. Компиляторы: принципы, технологии, инструменты: Пер. с англ. /

4. A.В. Ахо, С. Рави, Д. Ульман. М.: Издательский дом «Вильяме», 2001. - 768 с.

5. Ахмеров P.P. Очерки по ОДУ Электронный ресурс. / P.P. Ахмеров, Б.Н. Садовский // Режим доступа:http://www.ict.nsc.ru/rus/textbooks/akhmerov/ode unicode/index.html.

6. Бенькович Е.С. Практическое моделирование динамических систем / Е.С. Бенькович, Ю.Б. Колесов, Ю.Б. Сениченков. СПб.: БХВ-Петербург, 2002. -464 с.

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

8. Борщев А.В. Практическое агентное моделирование и его место в арсенале аналитика // Exponenta Pro, № 3-4, 2004. С. 38-47.

9. Бурков В.Н. Теория графов в управлении организационными системами /

10. B.Н. Бурков, А.Ю. Заложнев, Д.А. Новиков. -М.: Синтег, 2001. 124 с.

11. Бутырин О.В. Теория языков программирования и методы трансляции: учебное пособие / О.В. Бутырин. Иркутск: ИрГУПС, 2007. - 126 с.

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

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

14. Вирт Н. Алгоритмы + структуры данных = программы / Н. Вирт. М.: Мир, 1985.-446 с.

15. Вирт Н. Алгоритмы и структуры данных / Н. Вирт. М.: Мир, 1989. - 215с.

16. М.Волченская Т.В. Компьютерная математика: Часть 2. Теория графов: Учебное пособие / Т.В. Волченская, B.C. Князьков. — Пенза: Изд-во Пенз. гос. ун-та, 2002. 101 с.

17. Гинзбург С. Математическая теория контекстно-свободных языков / С. Гинзбург. М.: Мир, 1970. - 326 с.

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

19. Грис Д. Конструирование компиляторов для цифровых вычислительных машин / Д. Грис. М.: Мир, 1975. - 544 с.

20. Грис Д. Наука программирования / Д. Грис. М.: Мир, 1984. - 358 с.

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

22. Денисов Е.Т. Химическая кинетика: Учебник для вузов / Е.Т. Денисов, О.М. Саркисов, Г.И. Лихтенштейн. М.: Химия, 2000. - 568 с.

23. Домнин Л.Н. Элементы теории графов: Учебное пособие / Л.Н. Домнин. -Пенза: Изд-во ПГУ, 2007. 144 с.

24. Дьяконов В.П. MATLAB 6/6.1/6.5 + Simulink 4/5,Основы применения / В.П. Дьяконов. М.: СОЛОН-Пресс, 2004. - 762 с.

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

26. Карпов Ю.Г. Имитационное моделирование систем. Введение в моделирование с AnyLogic 5 / Ю.Г. Карпов. СПб.: БХВ-Петербург, 2005. -400 с.

27. Карпов Ю.Г. Теория автоматов / Ю.Г. Карпов. СПб.: Питер, 2002. - 224 с.

28. Касьянов В.Н. Лекции по теории формальных языков, автоматов и сложных вычислителей: Учеб. пособ. / Новосиб. гос. ун-т / В.Н. Касьянов. — Новосибирск, 1995. — 112 с.

29. Кауфман В.Ш. Языки программирования. Концепции и принципы / В.Ш. Кауфман. М.: Радио и связь, 1993. - 432 с.

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

31. Коган В.Е. Физическая химия. Часть 2. Химическая кинетика: Учебное пособие / В.Е. Коган, Г.С. Зенин, Н.В. Пенкина. СПб.: СЗТУ, 2005. - 227 с.

32. Колесов Ю.Б. Моделирование систем. Объектно-ориентированный подход: Учебное пособие / Ю.Б. Колесов, Ю.Б. Сениченков. СПб.: БХВ-Петербург, 2006.- 192 с.

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

34. Корнелик С.Е. Вычислительная гемодинамика: Учебное пособие / С.Е. Корнелик, A.M. Бубенчиков. Томск: Томский государственный университет, 2003.-412 с.

35. Льюис Ф. Теоретические вопросы проектирования компиляторов / Ф. Льюис, Д. Розенкранц, Р. Стирнз. М.: Мир, 1979. - 654 с.

36. Мартыненко Б.К. Языки и трансляции. СПб.: Издательство С.-Петербургского университета, 2004. 235 с.

37. Мельников В.Е. Применение сетей Петри / В.Е. Мельников, Д.И. Харитонов Электронный ресурс.: http://www.iacp.dvo.ru/lab 11/pab/pub 02.html

38. Новиков А.Е. Аппроксимация матрицы Якоби в (2,2)-методе решения жестких систем / А.Е. Новиков, Е.А. Новиков, Ю.В. Шорников // ДАН ВШ РФ. 2008. №1(10). С. 30-44.

39. Носов В.А. Комбинаторика и теория графов. Учебное пособие / В.А. Носов. М.: Изд-во МГИЭМ, 1999. - 116 с.

40. Парийская Е.Ю. Символьная верификация непрерывно-дискретных систем. Алгоритм обобщенного таймер-преобразования: автореф. дисс. канд. физ.-мат. наук / Е.Ю. Парийская, 2000. 17 с.

41. Парийская Е.Ю. Символьная верификация непрерывно-дискретных систем. Алгоритм обобщенного таймер-преобразования: дисс. канд. физ.-мат. наук / Е.Ю. Парийская, 2000. 159 с.

42. Пентус А.Е. Теория формальных языков: Учебное пособие / А.Е. Пентус, М.Р. Пентус. М.: Изд-во ЦПИ МГУ, 2004. - 80 с.

43. Пийль Е.И. Матричное представление и объединение сетей Петри. // Сб.: Управление ресурсами в интегральных сетях. -М.: Наука, 1991. -С. 72-82.

44. Питерсон Дж. Теория сетей Петри и моделирование систем: Пер с англ. -М.: Мир, 1984. 264 е., ил.

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

46. Рейуорд-Смит В.Дж. Теория формальных языков. Вводный курс. Пер. с англ. М.: Радио и связь, 1988. - 128с.: ил.

47. Сениченков Ю.Б. Основы теории и средства моделирования гибридных систем: дис. докт. техн. наук / Ю.Б. Сениченков. СПб., 2005. - 233 с.

48. Сениченков Ю.Б. Численное моделирование гибридных систем. СПб.: Изд-во Политехи, ун-та, 2004. - 206 с.

49. Серебряков В.А. Теория и реализация языков программирования / В.А. Серебряков, М.П. Галочкин, Д.Р. Гончар, М.Г. Фуругян. М.: МЗ-Пресс, 2003. -345 с.

50. Томилов И.Н. Математическое и программное обеспечение для решения прямых задач химической кинетики / И.Н. Томилов // Системы управления и информационные технологии, 2009. №3.2(37). - С. 286-290.

51. Томилов И.Н. Моделирование гибридных систем в ИСМА / И.Н. Томилов // Труды науч.-техн. конф. «Научное программное обеспечение в образовании и научных исследованиях». СПб.: Изд-во СПбГПУ, 2007. - С. 65-69.

52. Томилов И.Н. Спецификация дискретной составляющей моделей гибридных систем / И.Н. Томилов, М.С. Денисов, Д.Н. Достовалов // Информационные технологии моделирования и управления. Воронеж: Изд-во Научная книга, 2009.-№4(56).-С. 534-541.

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

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

55. Хайрер Э. Решение обыкновенных дифференциальных уравнений: Нежесткие задачи / Э. Хайрер, С. Нерсетт, Г. Ваннер. М.: Мир, 1990. - 512 с.

56. Хантер Р. Проектирование и конструирование компиляторов / Пер. с англ.: -М.: Финансы и статистика, 1984. 232 с.

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

58. Шорников Ю.В. Визуально-лингвистическое моделирование билиарной системы / Ю.В. Шорников, И.Н. Томилов // Научный вестник НГТУ, 2008. -№4(33).-С. 53-61.

59. Шорников Ю.В. Визуально-лингвистическое моделирование гибридных систем // Научный вестник НГТУ. 2006. № 2(23). С. 65-72.

60. Шорников Ю.В. Импорт данных в программной среде ИСМА / Ю.В. Шорников, B.C. Дружинин // Свидетельство об официальной регистрации программы для ЭВМ № 50200600117. М.: ВНТИЦ, 2006.

61. Шорников Ю.В. Инструментальные средства машинного анализа / Ю.В. Шорников, B.C. Дружинин, Н.А. Макаров, К.В. Омельченко, И.Н. Томилов // Свидетельство об официальной регистрации программы для ЭВМ № 2005610126. М: Роспатент. - 2005.

62. Шорников Ю.В. Компьютерный анализ многомерных ГС явными методами в ИСМА / Ю.В. Шорников, И.Н. Томилов, М.С. Денисов // Проблемы информатики, 2009. №2(3). - С.33-41.

63. Шорников Ю.В. Моделирование сложных динамических и гибридных систем в ИСМА // Научный вестник НГТУ. 2007. № 1(26). С. 79-88.

64. Шорников Ю.В. Прикладное математическое, алгоритмическое и программное обеспечение компьютерного анализа гибридных систем: Дисс. . док. техн. наук. Новосибирск, 2009. - 292 с.

65. Шорников Ю.В. Программа языкового процессора с языка LISMA (Language of ISMA) / Ю.В. Шорников, И.Н. Томилов // Свидетельство об официальной регистрации программы для ЭВМ № 2007611024. М.: Роспатент. - 2007.

66. Шорников Ю.В. Спецификация и исследование гибридных систем высокой размерности средствами ИСМА / Ю.В. Шорников, И.Н. Томилов, М.С. Денисов, Д.Н. Достовалов // Научный вестник НГТУ, 2010. №1(38). - С.85-94.

67. Шорников Ю.В. Спецификация и численный анализ гибридных систем в ИСМА / Ю.В. Шорников и др. // Труды науч.-техн. конф. «Научное программное обеспечение в образовании и научных исследованиях». СПб.: Изд-во Политехи, ун-та. 2008. С. 138-144.

68. Шорников Ю.В. Теория и практика языковых процессоров: Учебное пособие. Новосибирск: Изд-во НГТУ, 2004. - 203 с.

69. Яненко Н.Н. Проблемы математической технологии / Н.Н. Яненко, В.И. Карначук, А.Н. Коновалов // Численные методы механики сплошных сред. -Новосибирск: ВЦ СО АН СССР. 1977. №3. С. 129-157. Т.8.

70. AnyLogic User's Manual. Электронный ресурс.: http://www.xitek.com.

71. Booch G. Object-Oriented Analysis and Design with Applications / G. Booch, J. Conallen, R.A. Maksimchuk. 2007. - 691 p.

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

73. Borshchev A. Distributed Simulation of Hybrid Systems with AnyLogic and HLA / A. Borshchev, Yu. Karpov, V. Kharitonov // Future Generation Computer Systems. 2002. P. 829-839.

74. Bruck D. Dymola for multi-engineering modeling and simulation / D. Bruck, H. Elmqvist, H. Olsson, S.E. Mattsson / 2nd International Modelica Conference, March 18-19 2002, Proceedings. pp. 551-558.

75. Cellier F. Combined discrete continuous system simulation by use of digital computers: techniques and tools // PhD thesis, ETH Zurich. Switzerland, 1979. — P. 144-156.

76. Esposito J. Accurate event detection for simulating hybrid systems. In: Hybrid Systems: Computation and Control (HSCC) / J. Esposito, V. Kumar, G.J. Pappas // Volume LNCS 2034. Springer-Verlag, 1998.

77. Esposito J.M. An Asynchronous Integration and Event Detection Algorithm for Simulating Multi-Agent Hybrid Systems / J.M. Esposito, V. Kumar //ACM

78. Transactions n on Modeling and Computer Simulation. 2004. №4. P. 336-358. -Vol.14.

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

80. Kesten Y. Timed and hybrid statecharts and their textual representation / Y. Kesten, A. Pnueli. Lec. Notes in Сотр. Sci. pp. 591-620, Springer-Verlag, 1992.

81. Kowalewski S. A Case Study in Toll-Aided Analysis of Discretely Controlled Continuous System: the Two Tank Problem / S. Kowalewski и др. // In Hybrid Systems V, Lecture Notes in Computer Science. Springer Verlag, 1998. P. 78-102.

82. Kulich D.M. Mathematical simulation of the oxygen ethane reaction / D.M. Kulich, J.E. Taylor//J. Chem. Kinet., 1975, 895p.

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

84. Lee E.A. Operational Semantics of Hybrid Systems / E. A. Lee, H. Zhenq // Proc. of Hybrid Systems: Computational and Control (HSCC) LNCS 3414. Zurich, Switzerland, 2005.

85. Lee E.A. Overview of Ptolemy project Электронный ресурс. / Режим доступа: http://ptolemv.eecs.berkelev.edu/publications/papers/03/overview/overview03.pdf.

86. Leveson N. Safety Analysis Using Petri Nets / N. Leveson, J.L. Stolzy // IEEE Transactions on Software Engineering, SE-13 3. 1987. P. 386-397.

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

88. Modelica A Unified Object-Oriented Language for Physical Systems Modeling // Language Specification. Version 2.0, 2002.

89. Modelica and the Modelica Association Электронный ресурс. / Режим доступа: http://www.modelica.org.

90. Mosterman P. An overview of hybrid simulation phenomena and their support by simulation packages // Hybrid Systems: Computation and Control, vol. 1569 of Lecture Notes in Computer Science. Springer Verlag. 1999. P. 165-177.

91. STATEFLOW for use with Simulink: User's guide. Version 1. Math Works, Inc, 1998.-477 p.