автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.11, диссертация на тему:Автоматизация разработки и применения пакетов программ для исследования динамики сложных управляемых систем
Текст работы Опарин, Геннадий Анатольевич, диссертация по теме Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
РОССИЙСКАЯ АКАДЕМИЯ НАУК СИБИРСКОЕ ОТДЕЛЕНИЕ ИНСТИТУТ ДИНАМИКИ СИСТЕМ и ТЕОРИИ УПРАВЛЕНИЯ
На правах рукописи УДК 681.3.06
Опарин Геннадий Анатольевич
АВТОМАТИЗАЦИЯ РАЗРАБОТКИ И ПРИМЕНЕНИЯ ПАКЕТОВ ПРОГРАММ ДЛЯ ИССЛЕДОВАНИЯ ДИНАМИКИ СЛОЖНЫХ УПРАВЛЯЕМЫХ СИСТЕМ
05.13.11 - Математическое и программное обеспечение вычислительных машин, комплексов, систем и сетей
ДИССЕРТАЦИЯ
на соискание ученой степени доктора технических .наук ...
44 иШ ЗВ
Научный консультант чл.-корр. РАН
МЯ^ии^и^^С- С.Н.Васильев
М
Иркутск - 1998
Содержание
Введение
Глава I. Методологические основы автоматизации процессов разработки и применения пакетов знаний в области исследования динамики и проектированиям сложных управляемых движущихся объектов 26
§1. Характеристики ПО и требования к организации расчетных работ.....26
§2. Принципы организации процессов разработки и применения пакетов знаний 32
§3. Язык 8АТЬ для представления и использования пакетных знаний.....46
§4. Концептуальная схема спецификаций ПО и выбор модели данных.....71
§5. Методы планирования схем решения задач...................87
§6. Методические и технологические аспекты проектирования пакетов знаний 102
Глава II. Инструментальная система САТУРН для разработки и эксплуатации пакетов знаний 109
§1. Архитектура инструментальной САТУРН-среды пакетов знаний......111
§2. Макросредства в инструментальной системе САТУРН............127
§3. Особенности архитектуры и реализации инструментальной системы СА-
ТУРН/М.....................................133
§4. Особенности архитектуры и реализации инструментальной системы САТУРН/Б .......................................140
§5. Технология использования инструментальной системы САТУРН......149
Глава III. Инструментальная среда моделирования динамики составных непрерывно-дискретных объектов 155
§1. Характеристики типовых объектов моделирования..............157
§2. Формальная модель составных непрерывно-дискретных объектов......161
§3. Каноническая форма уравнений динамики составных непрерывно-дискретных объектов и планирование вычислений..................166
§4. Языковые средства ................................169
§5. Архитектура инструментальной среды моделирования............177
§6. Моделирование динамики системы управления движением в пространстве
космического аппарата средствами системы БАЙКАЛ...........185
Глава IV. Пакеты программ для исследования динамики прецизионных электромеханических систем 188
§1. Пакет прикладных программ по динамическому анализу и параметрическому синтезу прецизионных электромеханических систем (ДИАНА) . . . 189 §2. Пакет прикладных программ для динамического анализа и параметрического синтеза непрерывно - дискретных прецизионных электромеханических систем (ДИСАН)..............................208
§3. Исследование динамики высокоточной системы стабилизации орбитального телескопа средствами пакета ДИАНА...................227
§4. Пакет программ С О С. 4M для моделирования динамики режимов работы
системы ориентации и стабилизации космического аппарата.......236
§5. Методический пакет знаний СПЕКТР для вычисления собственных значений и векторов с использованием библиотеки NAG............246
Глава V. Инструментальная поддержка процессов разработки и функционирования многопакетных систем 250
§1. Комплексирование пакетов программ......................250
§2. Имитационная система сложного оптикомеханического комплекса.....255
Заключение 268
Список литературы 271
Введение
В последние два с половиной десятилетия большую значимость приобрели вопросы автоматизации расчетных работ в отдельных приложениях динамики систем и теории управления, в частности, в области исследования динамики и проектирования систем управления сложными движущимися объектами (СУ СДО), к числу которых относятся внеатмосферные астрономические обсерватории, орбитальные телескопы, спутники связи и другие объекты ракетно-космической техники [1] - [3].
Термин "проектирование" здесь и далее понимается в классическом (см., например, [4]) для специалиста по управлению движением смысле и подразумевает решение задачи структурно-параметрического синтеза систем управления, когда цель проектирования определяется в виде совокупности требований к динамическим показателям функционирования СУ СДО (точность в различных режимах, быстродействие, запасы устойчивости и др. динамические показатели). По сути дела, речь идет о формировании динамического облика СУ СДО и связанного с этой задачей комплексе научно-исследовательских работ, выполняемых на уровне математических моделей, аналитических и численных методов их исследования. В этом контексте определяющим для специалиста по управлению является понимание математических моделей СУ СДО и способность выполнять операции их построения, идентификации, преобразования, упрощения, комплексирования, анализа и синтеза с целью достижения предъявляемых к СУ СДО требований.
Основу расчетных работ при заданной цели исследования составляют три тесно связанных типа понятий - это математические модели СУ СДО, методы исследования этих моделей и методики достижения цели исследования с использованием моделей и методов их решения. В данной работе рассматриваются наиболее часто используемые на практике алгоритмические модели, когда описывающие функционирование СУ СДО сложные системы дифференциальных, разностных и алгебраических уравнений оформляются в виде множества взаимосвязанных процедур и организованный на этой основе вычислительный процесс соответствует в определенном
смысле поведению моделируемой системы. В этом контексте совокупность понятий "модель+метод+методика" несет ярко выраженную алгоритмическую окраску и составляет базу алгоритмических знаний расчетных работ.
Традиционно процесс исследования динамики и проектирования СУ СДО представляет собой организованную в соответствии с технологией системного анализа [5] последовательность многовариантных расчетов - вычислительных экспериментов, на каждом шаге которой в соответствии со стратегией и тактикой исследования и поиска приемлемых решений варьируются структура и значения параметров модели, методов и методик, выполняются запланированные расчетные работы, производится оценка результатов и принимается решение о дальнейшем направлении исследований.
Конструирование плана вычислительного эксперимента, а также дальнейшая реализация этого плана средствами базового языка программирования составляет во многом рутинную деятельность, которая многократно выполняется в рамках этой технологии специалистами по управлению, отвлекает их внимание от решения проблемных задач и обоснованно требует автоматизации и инструментальной поддержки. Перспективным подходом к решению проблемы автоматизации этой деятельности и ее инструментальной поддержки является комплексное использование методов и средств программной инженерии и инженерии знаний.
Основной целью диссертации является исследование, разработка и применение инфраструктуры, или системной инструментальной программной среды, компьютерного исследования динамики и проектирования СУ СДО с использованием средств и методов баз знаний [6] и доказательного программирования [7]. Автоматизированная технология, в которой фундаментальную роль играет алгоритмическое знание и сборочно-конкретизирующее программирование, именуется далее как САТУРН-технология.
Первичным понятием в этой технологии является понятие пакета прикладных программ, точнее - пакета знаний, представляющего разновидность прикладной интеллек-
туальной 1 системы.
1. Пакеты программ в автоматизированном проектировании управляемых систем (обзор).
Анализу становления и развития пакетной проблематики с общезначимых (независимых от проблемной области) позиций посвящена первая часть обзора. Это в основном касается так называемой системной части пакета и инструментальным средствам его построения. Анализ существующих пакетов уже применительно к решению задач исследования динамики и проектирования управляемых систем составляет предмет второй части обзора.
1.1. Пакеты прикладных программ и инструментальные средства для автоматизации их разработки. В последние двадцать пять лет сформировалось и в настоящее время не утратило своего значения самостоятельное направление в программировании, связанное с разработкой методо- и проблемно-ориентированных программных систем, называемых пакетами прикладных программ (ППП). Основной смысл создания ППП состоит в приближении ЭВМ к специалистам в той или иной проблемной области (ПО). Не без основания можно утверждать, что ППП стали к настоящему времени одним из самых развитых, эффективных и широко используемых видов математического обеспечения ЭВМ.
Источником идей нового направления следует считать проблемы программной реализации на ЭВМ численных методов решения задач математической физики, сформулированные впервые А.А.Самарским и Н.Н.Яненко в начале 70-х годов. Очень скоро стало понятно, что ППП являются эффективным инструментом решения расчетных задач и что методология ППП применима и во многих других проблемных областях.
Большую роль для становления и развития пакетной проблематики сыграл семинар по комплексам программ математической физики под руководством академика Н.Н.Яненко. Координация работ по пакетной тематике осуществлялась в рамках Научного совета АН СССР по комплексной проблеме "Математическое моделирование"
хНа наш взгляд, терминологически правильнее говорить об интеллектных системах (т.е. использующих методы и средства искусственного интеллекта).
(председатель совета - академик А.А.Самарский). Инструментально-технологические вопросы обсуждались на заседаниях Комитета по технологии программирования и инструментальных средств вычислительного эксперимента (председатель комитета В.И.Легоньков, автор диссертации входил в состав этого комитета) Секции программного обеспечения математического моделирования упомянутого Научного совета. Хорошо известны таллинская школа Э.Х.Тыугу и ее направление исследований по пакетам с автоматическим синтезом программ. В Иркутском ВЦ (ныне Институт динамики систем и теории управления) СО РАН пакетная тематика была активно поддержана его первым директором В.М.Матросовым и с конца 70-х годов стала одним из научных направлений деятельности коллектива. В связи с Иркутским ВЦ следует отметить Сибирскую школу по пакетам прикладных программ под руководством В.М.Матросова и то влияние, которое она оказала на молодых ученых и специалистов, приезжавших на нее не только из Сибирского региона.
Большое значение для становления пакетной проблематики имели, выходящие в издательстве "Наука", серия "Алгоритмы и алгоритмические языки", сборники "Пакеты прикладных программ" (главный редактор - А.А.Самарский).
Наряду с уже упомянутыми именами, с историей формирования и развития пакетной проблематики связаны имена таких исследователей, как А.С.Алексеев, О.Б.Арушанян, М.М.Бежанова, С.Н.Васильев, В.М.Глушков, Н.Н.Говорун, М.М.Горбунов-Посадов, А.А.Дородницын, Ю.Г.Евтушенко, А.П.Ершов, В.Д.Ильин, В.П.Ильин, В.М.Ковеня, А.Н.Коновалов, Д.А.Корягин, С.С.Лавров, В.В.Липаев, Г.И.Марчук, О.Н.Перевозчикова, Г.С.Поспелов, И.В.Поттосин, И.В.Сергиенко, Л.Н.Столяров, Б.Г.Тамм, А.Н.Тихонов, Ю.И.Шокин, В.М.Фомин, Л.И.Эрлих и др. Из числа зарубежных следует отметить коллектив специалистов из Германии, известный под названием «Группа ПАКЕТЫ ПРОГРАММ» (П.Бахманн и др.), а также такие имена, как Ф.П.Брукс, Б.Дисков, Д.Л.Парнас и др.
В самом общем виде ППП представляет собой совокупность взаимосвязанных программ его функционального наполнения и средств управления ими, обеспечивающих
решение задач из некоторого заранее определенного класса в содержательных терминах ПО [8] - [13]. В основе разработки функционального наполнения ППП лежит модульный принцип, сформулированный и развитый в первой половине 70-х годов [14, 15] и др. Согласно этому принципу функциональное наполнение есть набор базисных, сравнительно простых, вычислительных модулей, композицией которых можно получить решение всех задач рассматриваемого класса.
Понятие модуля, как программной единицы, является многозначным и в каждом конкретном случае зависит, в основном, от способа комплексирования программы из модулей. Модулем может быть процедура или фрагмент текста алгоритмического языка, набор данных, схема счета, программная единица на языке загрузки и др. Разнообразны и инструментальные средства, автоматизирующие создание функционального наполнения [16]: это общепринятые компоненты операционных систем (редакторы текстов, средства организации библиотек модулей, документаторы, макрогенераторы, средства управления наборами данных и др.) и специальные средства, создаваемые на базе штатных с целью обеспечения более простого доступа к ним.
Управление ППП осуществляется через входной язык и реализуется его системной частью, в состав которой могут входить монитор, процессор, интерпретатор, генератор, база данных, средства поддержки диалога, средства управления памятью, планировщик и др. компоненты. Важными свойствами ряда системных компонент является их полная инвариантность по отношению к ПО или возможность их адаптации к конкретной ПО с помощью набора специальных инструментальных средств, главными из которых являются языки спецификации ППП и реализующие эти языки трансляторы.
В последние 15 лет наблюдается устойчивая тенденция повышения уровня автоматизации решения задач за счет использования методов искусственного интеллекта [6, 7, 17, 18]. Применительно к ППП речь идет в первую очередь о внедрении методов баз знаний и доказательного программирования (в смысле А.П.Ершова). Именно в таком контексте построен этот краткий обзор.
Исторически сложилось четыре укрупненных типа ППП и, соответственно, четыре
типа инструментальных систем (ИС) для их построения. Это:
- ППП библиотечного типа;
- ППП с развитой системной частью;
- интеллектуальные ППП;
- гибридные экспертные системы.
В основу такой классификации положен уровень автоматизации решения задач и тесно связанный с ним уровень необходимой программистской квалификации пользователя ППП: степень автоматизации решения задач повышается при переходе от ППП библиотечного типа к ППП с развитой системной частью, и далее к интеллектуальным ППП, а требуемый уровень необходимой программистской квалификации пользователя для работ с ППП при таком движении снижается.
И С создания ППП библиотечного типа развиваются в рамках штатных систем программирования ЭВМ. К числу первых отечественных ИС такого типа относится программа ИС-2 [19], разработанная под руководством М.Р.Шура-Бура. Решение задачи с помощью ППП данного типа сопряжено с ручным написанием программы на некотором языке программирования и требует высокой программистской квалификации.
Отличительной чертой ППП с развитой системной частью является возможность описывать в содержательных терминах с той или иной степенью подробности только схему решения задачи. В схеме прямо или косвенно указаны ссылки на модули, а также определен порядок их следования в расчетной цепочке.
К ИС построения ППП с развитой системной частью можно отнести систему автоматизации физических расчетов САФРА [13], систему СТАРТ [20] и комплекс ТРАП [21] для решения задач вычислительного эксперимента, систему модульного программирования МОПР [22] для решения задач электрооптики, систему организации программ СОП [23] на основе структурно-модульного подхода и систему организации комплексов СОК [24] в области больших задач математической физики, систему СОФИСТ [25], систему ИСТОК [26] для построения инженерно-физических пакетов в области га-
зодинамических расчетов, систему ВИКАР [27] для создания ППП по выводу теорем метода векторных функций Ляпунова и принятию решений, систему ВИЛЬНЮС [31] для конструирования ППП в области календарно-тематического планирования и управления, систему ДИСУ ППП [32] для проектирования управляющих программ для станков с числовым программным управлением, близкие по принципам построения систему автоматизации проектирования ядерных реакторов [33] и систему ИСП [34], системы RADIOS и PBS [218] для задач вычислительной математики и автоматизации проектирования.
Бесспорным лидером в этом классе пакетов и ИС для их построения является система САФРА, базирующаяся на каркасной методологии построения пакетов программ
[36], как наиболее адекватной потребностям решения задач математической физики. В концентрированном виде эта потребность может быть определена термином " исследовательское программирование" - который означает не создание новых, а развитие существующих программ за счет включения в программный фонд все новых и новых вариантов модулей. Исследовательское прог
-
Похожие работы
- Автоматизация разработка и применения пакетов программ для исследования динамики сложных управляемых систем
- Автоматизация разработки пакетов статистического моделирования траекторий в геометрически сложных областях
- Разработка и исследование эффективных способов управления сложными динамическими объектами с транспортирующими и наматывающими механизмами
- Автоматизация вывода уравнений динамики исполнительных систем роботов на основе метода связных графов
- Технология и инструментальные средства организации распределенных пакетов прикладных программ
-
- Системный анализ, управление и обработка информации (по отраслям)
- Теория систем, теория автоматического регулирования и управления, системный анализ
- Элементы и устройства вычислительной техники и систем управления
- Автоматизация и управление технологическими процессами и производствами (по отраслям)
- Автоматизация технологических процессов и производств (в том числе по отраслям)
- Управление в биологических и медицинских системах (включая применения вычислительной техники)
- Управление в социальных и экономических системах
- Математическое и программное обеспечение вычислительных машин, комплексов и компьютерных сетей
- Системы автоматизации проектирования (по отраслям)
- Телекоммуникационные системы и компьютерные сети
- Системы обработки информации и управления
- Вычислительные машины и системы
- Применение вычислительной техники, математического моделирования и математических методов в научных исследованиях (по отраслям наук)
- Теоретические основы информатики
- Математическое моделирование, численные методы и комплексы программ
- Методы и системы защиты информации, информационная безопасность