МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Технологический институт Феде...
40 downloads
239 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ Технологический институт Федерального государственного образовательного учреждения высшего профессионального образования «Южный федеральный университет» ПРИОРИТЕТНЫЙ НАЦИОНАЛЬНЫЙ ПРОЕКТ «ОБРАЗОВАНИЕ»
В.И. ФИHАЕВ Е.Н. ПАВЛЕНКО Е.В. ЗАРГАРЯН
АНАЛИТИЧЕСКИЕ И ИМИТАЦИОННЫЕ МОДЕЛИ Допущено Учебно-методическим объединением вузов по образованию в области автоматизированного машиностроения (УМО АМ) в качестве учебного пособия для студентов высших учебных заведений, обучающихся по направлению подготовки дипломированных специалистов – «Автоматизированные технологии и производства» (специальность 210200 – «Автоматизация технологических процессов и производств (в энергетике))».
Таганрог 2007
2 УДК 518.5.001.57(075.8) В.И.Финаев, Е.Н. Павленко, Е.В.Заргарян. Аналитические и имитационные модели: Учебное пособие. - Таганрог: Изд-во Технологического института ЮФУ, 2007. - 310 с. ISBN 978-5-8327-0268-1 Учебное поcобие пpедназначено для cтудентов высших учебных заведений, изучающиx дисциплины «Моделиpование cиcтем», «Компьютерное моделирование». В учебном пособии приведены основные теоретические положения и методы имитационного моделирования. Табл. 8. Ил. 30. Библиогр.: 22 назв.
Рецензенты Целых А.Н., д-р. техн. наук, профессор, директор регионального (областного) центра новых информационных технологий, проректор по информатике ТТИ ЮФУ. Ромм Я.Е, д-р. техн. наук, профессор, заведующий кафедрой информатики ТГПИ. ISBN 978-5-8327-0268-1
© Технологический институт Южного федерального университета, 2007 © Финаев В.И., Павленко Е.Н., Заргарян Е.В., 2007
3
СОДЕРЖАHИЕ ВВЕДЕHИЕ……………………………………..……. 6 1. КОНЦЕПЦИЯ МОДЕЛИРОВАНИЯ………...... 9 1.1. Понятие модели…………………………………….. 9 1.2. Концепции определения моделей……………….… 18 2. КЛАССИЧЕСКИЕ МАТЕМАТИЧЕСКИЕ МОДЕЛИ…………………………………………..……. 24 2.1. Примеры моделей в виде дифференциальных уравнений…………………………. 24 2.2. Классические модели в виде дифференциальных уравнений…………………………. 29 2.3. Инерционные модели…………………………...….. 33 2.4. Модели на основе передаточных функций……..… 38 2.5. Конечные автоматы…………………………………. 40 3. СТОХАСТИЧЕСКИЕ МОДЕЛИ ОБЪЕКТОВ………………………………………..……. 46 3.1. Математические модели случайных процессов..… 46 3.2. Классификация моделей случайных процессов..… 53 3.3. Модели марковских процессов………………….… 55 4. ИМИТАЦИЯ СЛУЧАЙНЫХ СОБЫТИЙ….... 59 4.1. Понятие статистического моделирования…...……. 59 4.2. Датчики случайных чисел…………………….…… 60 4.3. Проверочные тесты…………………………..…….. 69 4.4. Имитация случайных событий…………………..… 78 4.5. Имитация непрерывных случайных величин…..… 83 4.6. Имитация марковского процесса……………….…. 93 5. ОБРАБОТКА РЕЗУЛЬТАТОВ МОДЕЛИРОВАНИЯ НА ЭВМ………………………. 106 5.1. Выбор числа опытов……………………………….. 106 5.2. Значимость оценки…………………………………. 111 5.3. Формулы и алгоритмы для оценки результатов моделирования…………………………….. 120
4 6. МОДЕЛИРОВАНИЕ ВЕРОЯТНОСТНЫХ АВТОМАТОВ…………………………………………... 132 6.1. Аналитическое определение вероятностных автоматов…………………..…………... 132 6.2. Табличное задание функций переходов и выходов 136 6.3. Имитационное моделирование вероятностных автоматов…………………..…………... 138 7. МОДЕЛИ СИСТЕМ МАССОВОГО ОБСЛУЖИВАНИЯ……..…………... 147 7.1. Общие сведения…..………………………………..... 147 7.2. Модель входного потока заявок и времени обслуживания…..…………………….……... 151 7.3. Модель Эрланга…..…………………………….…... 153 7.4. Исследование модели пуассоновского процесса с помощью производящих функций…..………...……... 156 7.5. Модель для определения времени задержки в виде интегро-дифференциальных уравнений Линди-Такача-Севастьянова…..………………………... 158 7.6. Имитационное моделирование одноканальной СМО…..………………………….……... 162 7.7. Имитационные модели многофазных СМО………. 184 7.8. Имитационные модели многоканальных СМО...… 190 7.9. Алгоритмизация имитационной модели СМО произвольной структуры…………………………. 211 8. АЛГОPИТМИЗАЦИЯ ПPОЦЕCCОВ ФУНКЦИОНИPОВАНИЯ CИCТЕМ………….……. 221 8.1. Моделиpующие алгоpитмы……………………..…. 221 8.2. Пpинципы поcтpоения моделиpующиx алгоpитмов для cложныx cиcтем………………………………..……. 226 9. УНИФИЦИРОВАННЫЙ ЯЗЫК МОДЕЛИРОВАНИЯ UML…………..………. 229 9.1. Основные компоненты…………..…………………. 229 9.2. Понятия и компоненты…………..…………………. 231 9.3. Диаграммы вариантов использования ………….… 238
5 9.4. Диаграммы классов…………………………………. 241 9.5. Типы связей между классами……………………… 249 9.6. Расширения понятия класса в UML………………. 255 9.7. Связи между объектами……………………………. 258 9.8. Диаграммы взаимодействия……………………….. 261 9.9. Диаграммы состояний……………………………… 267 9.10. Диаграммы деятельностей………………………... 278 10. ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ МОДЕЛИРОВАНИЕ………………………..………… 282 10.1. Определение объекта ……………………..……… 282 10.2. Наследование ……………………………………… 295 10.3. Полиморфизм……………………………………… 299 10.4. Типы данных и пакеты………………………….… 303 БИБЛИОГРАФИЧЕСКИЙ СПИСОК…………… 308
6
ВВЕДЕНИЕ Компьютерное моделирование стало широко применяться после появления персональных компьютеров с графическим дисплеем, программного обеспечения, сделавших возможным появление современных визуальных инструментов моделирования. Вместе со строгим математическим описанием, позволяющим разрабатывать достаточно полные аналитические и алгоритмические модели, визуальное моделирование предполагает использование графической формы описания модели и зримого представления результатов исследования. Основным элементом графического представления моделируемой системы в современных средах является структурная схема, построенная из образов отдельных компонентов, соединенных функциональными связями. Для представления результатов используется математическая графика, а также двух- и трехмерная анимация. Моделирование направлено на решение задач и проведение исследований. При исследовании систем методами системного анализа необходимо построить модель, т.е. реальному объекту ставится в соответствие некоторый математический объект, называемый его моделью. Исследование модели позволяет получить рекомендации относительно поведения реального объекта [1, 2]. Моделирование - это творческий процесс, требующий определенного искусства, математических знаний, практических навыков и умения предвидеть результат исследований, поэтому при решении задач моделирования могут быть получены неоднозначные результаты [2, 3].
7 Работа проектировщика связана с аналитическим сравнением множества различных вариантов проектируемой системы при заданных ограничениях. Современные инструменты визуального моделирования предоставляют проектировщику новое средство проектирования - виртуальный испытательный стенд, который следует рассматривать, как некоторый специализированный набор программных продуктов для решения задач моделирования. Проектировщик на стенде может проводить эксперименты, используя ту же технологию, что и на обычном испытательном стенде, но значительно быстрее. В данном пособии не ставится задача обучения конкретным пакетам прикладных программ для решения задач моделирования, например, Matlab-Simulink-Stateflow, UML, Simulink, Stateflow, Model Vision Studium, Modeliсa, AnyLogiс и других. Одним из современных направлений компьютерного моделирования является объектно-ориентированное моделирование, которое рассматривают как расширение языка проектирования сложных вычислительных систем — Unified Modeling Language (UML) [4]. В пособии излагается материал по дисциплине «Компьютерное моделирование» согласно государственному образовательному стандарту. В первом разделе изложены основные концепции моделирования. Рассмотрена классификация моделей, тесно связанная с классификацией систем. Во втором разделе рассмотрены классические схемы моделей в виде аналитического задания: модели в виде дифференциальных уравнений; модели в виде сумм и интегралов свертки; модели на основе передаточных функций; модели в виде конечных автоматов и приведена их алгоритмизация.
8 В третьем разделе приведено описание стохастических моделей объектов. Рассмотрены способы задания моделей объектов в виде стохастических распределений, классификация стохастических моделей, модели марковских процессов. Чертвертый раздел позвящет имитационным моделям случайных событий. Формально определены датчики случайных чисел, приведены способы и алгоритмы генерации случайных величин, описано применение проверочных тестов. Рассмотрены алгоритмы имитации марковских процессов. В пятом разделе приведен материал, связанный с обработкой результатов моделирования на ЭВМ. Рассмотрены тербования к выбору числа реализаций, задачи значимости оценки, формулы и алгоритмы для оценки результатов моделирования. В шестом разделе приведено аналитическое определение вероятностных автоматов, а также алгоритмы для их имитационного моделирования. Седьмой раздел посвящен аналитическому моделированию и алгоритмизации систем массового обслуживания. В восьмом разделе изложены принципы поcтpоения моделиpующиx алгоpитмов процессов функционирования систем. В девятом и десятом разделах изложены основные сведения об унифицированном языке моделирования UML, об объектно-ориентированном моделировании. За основу взяты материалы работы [4].
9
1. КОНЦЕПЦИЯ МОДЕЛИРОВАНИЯ 1.1. Понятие модели 1.1.1. Системный подход к моделированию. При проектировании автоматизированных систем управления, разработке прикладных программных продуктов важно правильно поставить задачу проектирования, применяя методы системного анализа. Системным анализом называют совокупность методов и приемов решения задач. Системный подход состоит в исследовании изучаемого объекта как системы, состоящей из взаимодействующих элементов, построении математической модели для объекта и исследовании ее методами математического моделирования с целью решения некоторых оптимизационных задач, задач управления или принятия решения. Поэтому постановка задачи проектирования требует знаний методов и средств системного анализа, а в арсенал средств системного анализа входит моделирование объекта. При исследовании систем с применением системного подхода вначале необходимо построить модель, т.е. реальному объекту ставится в соответствие некоторый математический объект, называемый его моделью. Модель (modulus (лат.) - мера) есть объект-заменитель объектаоригинала [1]. Модель обеспечивает изучение свойств оригинала, а моделирование есть замещение одного объекта другим объектом с целью получения информации о свойствах объекта-оригинала. Теория замещения объектов называется теорией моделирования. Моделирование объекта может быть математическим, в
10 виде построения некоторого макета объекта, натурным и имитационным. Математическое моделирование связано с нахождением математической схемы, описывающей функционирование объекта и его взаимодействие с внешней средой. Математическое моделирование имеет ряд достоинств. Это точная воспроизводимость численных экспериментов, их гибкость и экономичность, возможность значительного сокращения времени моделирования по сравнению с временем выполнения реальных экспериментов на промышленном объекте. Моделирование может предусматривать построение макета объекта. Макет объекта может быть реализован в виде принципиальной электрической схемы, изготовления устройства, отображающего функционирование объекта или построение макетов (самолеты), моделей одежды и прочее. Данный вид моделирования не является предметом исследования в данной работе. Натурное моделирование предусматривает проведение экспериментов непосредственно на объекте. Высокая стоимость натурных экспериментов с промышленными объектами ограничивает возможность этого вида моделирования при проведении исследований. Имитационное моделирование является методом моделирования объектов и процессов на ЭВМ. При моделировании на ЭВМ вырабатывается информация, описывающая элементарные явления исследуемого процесса с учетом их связей и взаимных влияний. Получаемая информация о состояниях процесса используется для определения тех характеристик процесса, которые нужно получить в результате моделирования. Моделирующий алгоритм приближенно воспроизводит реальный процесс во времени. Имитируются элементарные явления, составляющие процесс, с сохранением их
11 логической структуры и последовательности протекания во времени. Моделирующий алгоритм позволяет по исходным данным получить сведения о состоянии процесса в произвольные моменты времени. Сущность имитационного моделирования состоит в реализации на ЭВМ специального алгоритма, который воспроизводит формализованный процесс сложной системы. Имитационное моделирование представляет собой определенную последовательность этапов решения задач: - изучение реальных систем; - составление содержательного описания процесса функционирования; - формулировка цели исследования; выбор основных критериев функционирования; - разбиение сложной системы на подсистемы; - построение формализованной схемы процесса функционирования; - построение математической модели системы; - планирование эксперимента и сбор исходных данных; -составление рабочей программы с учетом особенностей машины; - отладка программы; - осуществление моделирования; - обработка результатов; - выработка рекомендаций. Моделирование - творческий процесс, требующий определенного искусства, математических знаний, практических навыков и умения предвидеть результат исследований. Поиск модели объекта связан с понятием формализации, т.е. математическим, алгоритмическим или каким-либо другим видом задания модели. Формализация объекта и разработка адекватных математических моделей – начальная часть работ по моделированию систем самого разного назначения.
12 Формализация любого объекта или процесса содержит три этапа: содержательное описание, построение формализованной схемы процесса, построение математической модели процесса. Содержательное описание в словесном выражении концентрирует сведения о физической природе и характеристиках элементарных явлений исследуемого объекта или процесса, о степени и характере взаимодействия между ними, месте и значении каждого элементарного явления в общем процессе функционирования рассматриваемой реальной системы. Тщательное изучение объекта сводится к наблюдению и фиксации количественных характеристик при проведении натурного эксперимента. Если система проектируется, то при описании используют накопленный опыт и результаты наблюдения за процессами функционирования аналогичных систем. Материалы описания содержат постановку задачи моделирования, перечень искомых величин с указанием их практического предназначения и требуемой точности, исходные данные для исследования. Формализованная схема процесса является промежуточным звеном между содержательным описанием и математической моделью. Разрабатывается в том случае, когда из-за сложности исследуемого процесса или трудностей формализации некоторых его элементов непосредственный переход от содержательного описания к математической модели оказывается невозможным или нецелесообразным. Для построения формализованной схемы необходимо выбрать характеристики процесса, установить систему параметров, определяющих процесс, строго определить все зависимости между характеристиками и параметрами процесса с учетом тех факторов, которые принимаются во внимание при формализации. На этом этапе построения
13 формализованной схемы должна быть дана точная математическая формулировка задачи исследования с указанием перечня искомых величин и оцениваемых зависимостей. К формализованной схеме прилагается систематизированная и уточненная совокупность всех исходных данных, известных параметров процесса и начальных условий. Формализованная схема подводит итог изучению, экспериментальному исследованию процесса и преобразовывается в математическую модель без притока дополнительной информации о процессе. Необходимо записать в аналитической форме все соотношения, выразить логические условия. Начало формализации объекта состоит в следующем. Объект функционирует в некоторой среде. Среда воздействует на объект, а объект воздействует на среду. Hа объект могут подаваться управляющие параметры (сигналы). Объект характеризуется вектором состояний Z, называемым еще вектором конструктивных параметров. Формально это отображают схемой, приведенной на рис. 1.1, где Х, Y, F - векторы входных, выходных и возмущающих сигналов. F X
Объект Z
Y
Среда
Рис. 1.1 1.1.2. Классификация моделей. Существует много определений понятия «модель» [1,2,3]. Определим
14 математическую модель как упрощенное отображение существенных сторон реальной системы, выраженное в математической форме и позволяющее математически описать правило (оператор) преобразования входных Х сигналов в выходные Y: Y=W(Х), (1.1) где W – некоторая математическая модель системы. Под символом W(.) понимаются любые математические действия (алгебраические операции, дифференцирование, интегрирование, решение функциональных уравнений и т.д.). Оператор W представляет собой совокупность математических и логических операций, позволяющих установить соответствие между входными и выходными сигналами. В простейшем случае оператор модели преобразует векторную функцию Х(t) в векторную функцию Y(t). Модели подобного типа называются динамическими (временными). При выполнении классификации моделей исходят из существующих подходов к классификации систем, т.к. модель, по сути, является отражением системы в форме, выбранной исследователем. При классификации моделей обычно рассматривают зависимости между состояниями и параметрами сложной системы, которые в выбранной аналитической форме являются моделями. Математические модели делятся на два основных класса: детерминистические модели и стохастические модели. Детерминистические модели - модели тех систем, в которых существует однозначное соответствие для каждого момента времени между входными параметрами, состояниями и выходными параметрами. Иными словами, каждому набору входных параметров и набору состояний соответствует единственный выходной параметр в скалярной или векторной форме представления.
15 Стохастические модели - модели тех объектов, в которых изменение состояния и выхода задается в виде вероятностного распределения, т.е. каждому набору входных параметров и набору состояний соответствует вероятностное распределение значений выходного параметра. Для изучения математических моделей могут быть применены разные способы, применение которых позволяет делить модели на аналитические и имитационные. Аналитические модели представляют собой некоторые математические схемы в виде алгебраических, дифференциальных, конечно-разностных уравнений или иных аналитических зависимостей выходного параметра от входных параметров и состояний. Аналитические модели исследуются следующими способами: - аналитически, когда стремятся получить в явном виде зависимости для искомых величин; - численно, когда нет метода решения уравнения в общем виде, но можно получить результаты при конкретных начальных условиях; - качественно, когда нет решения в явном виде, но можем найти некоторые свойства решения (оценить устойчивость и т.п.). В тех случаях, когда аналитическое описание системы получить не удается, применяется алгоритмическое описание процесса ее функционирования или строится моделирующий алгоритм, предназначенный для реализации на ЭВМ. Модели делятся на стационарные, когда структура и свойства оператора W(t) не изменяются со временем, и на нестационарные. Реакция стационарной системы на любой входной сигнал зависит только от интервала времени между
16 моментом начала действия входного сигнала (возмущения) и данным моментом времени. Процесс преобразования входных сигналов не зависит от сдвига входных сигналов во времени. На рис. 1.2 приведен пример изменения выходного сигнала для стационарной и нестационарной системы. Стационарная система x(t) t y(t)
t1
t2
t3
t4
t5
t6
t7
t
Нестационарная система x(t) t y(t)
t1
t2
t3
t4
t5
t6
t7
t
Рис. 1.2 Для нестационарной системы изменение выходного сигнала y(t) зависит от моментов ti подачи входного сигнала х(ti) и времени t. При сдвиге входного сигнала во
17 времени (без изменения его формы) выходные сигналы не только сдвигаются во времени, но и изменяют форму. Модели делятся на модели безынерционных и инерционных (модели с запаздыванием или с предысторией) систем. Безынерционные модели соответствуют системам, в которых оператор W определяет зависимость выходных величин от входных в один и тот же момент времени – y(t)=W(Х,t). В инерционных системах значения выходных параметров зависят не только от настоящих, но и предыдущих значений переменных Y=W(Z,хt,хt-1,…,хt-k), (1.2) где хt-i=х(t-i) - значение входного сигнала в момент времени t-i. Инерционные модели еще называют моделями с памятью. Оператор преобразований может содержать параметры, которые обычно неизвестны - Y=W(Θ,Z,Х), где Θ={Θ1,Θ2,…,Θk} - вектор параметров. Модели, содержащие неизвестные параметры, называются параметрическими (например, обычные дифференциальные уравнения с неизвестными коэффициентами), в отличие от непараметрических моделей (например, модели типа интеграла свертки). Важнейшим признаком структуры оператора является линейность или нелинейность по отношению к входным сигналам, поэтому модели делят на модели линейных и нелинейных систем. Для линейных систем справедлив принцип суперпозиции, который состоит в том, что линейной комбинации произвольных входных сигналов ставится в соответствие та же линейная комбинация сигналов на выходе системы
18 m
m
m
i =1
i =1
i =1
W ( ∑ Ci x i ) = ∑ Ci W( x i ) = ∑ Ci y i .
(1.3)
Математическую модель с использованием линейного оператора можно записать в виде Y=WХ. Если условие (1.3) не выполняется, модель называется нелинейной. Классифицируются динамические модели в соответствии с тем, какие математические операции используются в операторе. Можно выделить: алгебраические, функциональные (типа интеграла свертки), дифференциальные, конечно-разностные модели и др. Одномерной моделью называется такая модель, у которой и входной сигнал, и отклик одновременно являются величинами скалярными. В зависимости от размерности параметра Θ модели подразделяются на одно- и многопараметрические. Классификация моделей может быть продолжена также в зависимости от видов входных и выходных сигналов.
1.2. Концепции определения моделей Под динамической системой понимается объект, находящийся в каждый момент времени t∈T в одном из возможных состояний z ∈Z и способный переходить во времени из одного состояния в другое под действием внешних и внутренних причин. При моделировании динамической системы применяют следующие механизмы: - описание изменения состояний под действием внутренних причин (без вмешательства внешней среды); - описание приема входного параметра и изменения состояния под действием этого параметра (модель в виде функции перехода);
19 - описание формирования выходного параметра или реакции динамической системы на изменения состояний и входного параметра (модель в виде функции выхода). Аргументами входных и выходных параметров системы могут служить время, пространственные координаты, а также некоторые переменные, используемые в преобразованиях Лапласа, Фурье и других. Входные параметры модели в общем случае могут быть заданы в виде вектора x ={х1,х2,…,хm}, хi∈Хi,, ( i = 1, m ), где Хi - заданные дискретные или непрерывные множества. Прямое произведение вида Х=Х1×Х2×…×Хm называется пространством входных параметров, а вектор x представляет собой точку пространства Х. Отображение Х=L(t), сопоставляющее каждому моменту времени t некоторый параметр x ∈Х, называется входным процессом L(t). Вектор выходных параметров y ∈Y - множеству выходных параметров. Выходной параметр, выдаваемый системой в момент времени t∈T, обозначим y(t ) . Если выходной сигнал y описывается набором характеристик y1,y2,…,yr, таких, что yj∈Yj, ( j = 1, r ), где Yj - заданные множества, то прямое произведение Y=Y1×Y2×…×Yr называется пространством выходных параметров. По аналогии с входным процессом определяется понятие выходного процесса Y=M(t). В теории управления выходные параметры называются фазовыми координатами (переменными состояния). Состояние системы определяется как совокупность состояний элементов. Состояние системы z описывается некоторым набором характеристик zk∈Zk, ( k = 1, n ), где Zk заданные множества, а пространство состояний Z определяется как прямое произведение Z=Z1×Z2×…×Zn.
20 В технических системах в большинстве случаев не удается непосредственно наблюдать параметры (сигналы) на выходе системы. Можно наблюдать сигналы лишь на выходе измерительного устройства, последовательно соединенного с системой, как это показано на рис. 1.3. Δ X
Объект Z
Y
+
V
Рис. 1.3 Выходные сигналы системы и дополнительные воздействия, которым соответствует r-мерный вектор дополнительных сигналов (связанных также с ошибками измерения) Δ={δ1,δ2,…,δr}, являются входными сигналами для измерительного устройства. Наблюдаемый вектор состояний измерительной системы (вектор откликов) записывается в виде V={v1,v2,…,vr}. Математическая модель измерительного устройства имеет вид V=B(YΔ), (1.4) где B(YΔ) - некоторый оператор, преобразующий сигналы Y и Δ на входе измерительного устройства в сигналыотклики V. При моделировании систем находят модели в виде функций переходов и выходов. В самом общем случае эти модели могут быть заданы в виде соответствий. Соответствие [4] - это способ (закон) сопоставления элементов х∈Х с элементами y∈Y так, что имеется возможность образования пар (двоек) (х,y), причем для каждого элемента х∈Х возможно указать элемент y∈Y, с которым сопоставляется элемент х. В сопоставлении могут
21 участвовать не все элементы Х и Y. Для задания соответствия необходимо указать: - множество Х, элементы которого сопоставляются с элементами другого множества; - множество Y, с элементами которого сопоставляются элементы множества Х; - множество Q⊆Х×Y, определяющее закон, согласно которому осуществляется соответствие, т.е. перечисляющее все пары (х,y), участвующие в сопоставлении. Соответствие, обозначаемое через q, представляет собой тройку множеств q=(Х,Y,Q), где Х – область отправления соответствия, Y – область прибытия соответствия, Q – график соответствия, Q⊆Х×Y. Очевидно, что проекция Пр1Q⊆Х, а Пр2Q⊆Y, причем множество Пр1Q называется областью определения соответствия, а проекция Пр2Q – областью значений соответствия. Способы задания соответствий следующие. При теоретико-множественном задании определяют множества Х={х1,х2,…,хn}, Y={y1,y2,…,ym} и график Q={(хi,yj)}, х∈Х, y∈Y ( i = 1, n ) , ( j = 1, m) . При матричном способе задания соответствие задается в виде матрицы инцидентности RQ, которая имеет вид прямоугольной таблицы размером n×m. Элементы хi∈Х соответствуют строкам матрицы RQ, а элементы yj∈Y соответствуют столбцам. На пересечении хi строки и yj столбца ставится элемент rij=1, если элемент (хi,yj)∈Q, и rij=0, если (хi,yj)∉Q. При графическом способе соответствие задается в виде рисунка (см. рис. 1.4.), на котором элементы хi∈Х – кружки одной линии, элементы yj∈Y – кружки другой линии, а каждая двойка (хi,yj)∈Q обозначается стрелкой, идущей от
22 кружка хi к кружку yj. Такое представление называется графиком. Если сопоставлять элементы y∈Y элементам множества Х, то получим соответствие q-1=(Y,Х,Q-1), обратное соответствию q (инверсия соответствия q). x1
x2
y1
x3
y2
x4
y3
Х={х1,х2,х3,х4}, Y={y1,y2,y3}, Q={(х1,y1), (х1,y2), (х2,y1), (х2,y2), (х3,y2), (х4,y3)}. Рис. 1.4 Исходя из приведенных выше определений множеств входных параметров Х=Х1×Х2×…×Хm, выходных параметров Y=Y1×Y2×…×Yr, состояний Z=Z1×Z2×…×Zn определим задание моделей функций переходов и выходов, как соответствий. Модель системы в виде функции переходов задана соответствием fП=(Х1×Х2×…×Хm,Z1×Z2×…×Zn,FП). (1.5) Данная модель устанавливает соответствие fП между каждым элементом x ={х1,х2,…,хm}∈Х1×Х2×…×Хm и элементом z ={z1,z2,…,zn}∈Z1×Z2×…×Zn. FП – график соответствия fП. Модель системы в виде функции переходов может быть задана также в виде fП={(Х1×Х2×…×Хm),(Z1×Z2×…×Zn), (Z1×Z2×…×Zn),FП}, (1.6) т.е. модель устанавливает соответствие fП между каждым элементом ( x , z )∈[(Х1×Х2×…×Хm)×(Z1×Z2×…×Zn)] и
23 элементом z ={z1,z2,…,zn}∈Z1×Z2×…×Zn. Модель системы в виде функции выходов задана соответствием fВ={[(Х1×Х2×…×Хm),(Z1×Z2×…×Zn)], (Y1×Y2×…×Yr),FВ}. (1.7) Модель устанавливает соответствие fВ между каждым элементом ( x , z ) из множества [(Х1×Х2×…×Хm), (Z1×Z2×…×Zn)] и элементом y ={y1,y2,…,yr}∈Y1×Y2× ×…×Yr. FВ – график соответствия fВ. Модель системы в виде функции выходов может быть задана еще и в таком виде: fВ={[(Х1×Х2×…×Хm)×(Z1×Z2×…×Zn)],[Z1×Z2×…×Zn], (Y1×Y2×…×Yr),FВ), (1.8) т.е. модель в данном случае устанавливает соответствие fВ между каждым элементом {( x , z ), z } из множества {[(Х1×Х2×…×Хm), (Z1×Z2×…×Zn)], [Z1×Z2×…×Zn]} и элементом y ={y1,y2,…,yr}∈Y1×Y2× ×…×Yr. Модель системы в виде функции переходов может быть записана еще в следующем виде: fП (1.9) {(X1 , X1 ,..., Xm ) ⎯⎯ →(Z1 , Z1 ,..., Z n ) или в виде fП {(X1 , X1 , ..., Xm ) × (Z1 , Z1 , ..., Z n )} ⎯⎯ →(Z1 , Z1 , ..., Z n ) . (1.10) Модель системы в виде функции выходов может быть задана и в таком виде: fВ {(X1 , X1 ,..., Xm ) × (Z1 , Z1 ,..., Z n )} ⎯⎯ →(Y1 , Y1 ,..., Yr ) (1.11) или в виде {[(X1 , X1 ,..., Xm ) × (Z1 , Z1 ,..., Zn )] × fВ ×(Z1 , Z1 ,..., Z n )} ⎯⎯ →(Y1 , Y1 ,..., Yr ) .
(1.12)
24
2. КЛАССИЧЕСКИЕ МАТЕМАТИЧЕСКИЕ МОДЕЛИ 2.1. Примеры моделей в виде дифференциальных уравнений 2.1.1. Модель электрического колебательного контура. Классические разделы высшей математики связаны с решением и исследованием дифференциальных уравнений. Дифференциальные уравнения нашли широкое применение при моделировании технических, социальных, экономических и других систем. Классическая теория автоматического управления применяет модели объектов в виде дифференциальных уравнений и позволяет решать задачи управления, исследуя дифференциальные уравнения [5]. Вид уравнений может быть очень сложным и для решения и исследования моделей, заданных дифференциальными уравнениями, применяется компьютерное моделирование. Применяют специальные пакеты прикладных программ, например MatLab, Omola, Dymola, Dymosim, Model Vision Studium, язык UML и другие. Колебательный контур, известный в электротехнике, представляют в виде схемы, приведенной на рис. 2.1. Определены параметры колебательного контура: - С – емкость конденсатора; - L – индуктивность катушки; - UС(t) – напряжение на конденсаторе; - IL(t) – ток в катушке; - U(t)ИСТ – напряжение внешнего источника. Определим модель колебательного контура, которая позволит моделировать колебательный процесс в контуре.
25
L Uист(t)
C UC(t)
IL(t)
Рис. 2.1 В соответствии с законом Кирхгофа запишем следующие соотношения: dI L dU C = − U C + U ИСТ . С = −I L , L dt dt Введем координаты z1=UС, обозначим UИСТ/L=х(t) и получим систему дифференциальных уравнений: dz 1 z dz 2 z =− 2, (2.1) = − 1 + x(t ) . dt dt dt L Если UИСТ=0, то х(t)=0 и система (2.1) описывает свободные колебания. Рассматривая х(t) как сигнал управления, получим описание динамики колебаний в каждый момент времени t. Решая систему (2.1), можно получить аналитический вид функций z1(t) и z2(t). Если рассматривать U(t)ИСТ как единичное ступенчатое воздействие, R - внутреннее сопротивление источника, то можно показать, что напряжение на конденсаторе С будет изменяться по формуле [6]: δ UC (t) = 1- e-δt (cosω1t + sinω1t) , (2.2) ω1 R 1 2 , ω0 = , ω12 = ω02 − δ2 . где δ = 2L LC
26 Дальнейшее исследование модели связано с разработкой программы, которая будет рассчитывать и выводить график функции UС(t) в зависимости от параметров R, L и С, тем самым позволяя исследовать время переходного процесса (время затухания колебаний) в данном контуре. 2.1.2. Модель размножения микроорганизмов. Из результатов изучения развития популяций микроорганизмов известно, что скорость размножения микроорганизмов пропорциональна числу уже имеющихся на данное время. Рассмотрим моделирование процесса роста популяций микроорганизмов. Пусть E(t) − число особей в момент времени t. Скорость размножения определим как отношение величины E(t+∆t)E(t) к величине Δt при Δt→0. Исходя из этого условия, получим уравнение в частных приращениях (модель роста популяций в частных приращениях): E(t + Δt ) − E(t ) = kE(t ). Δt
Переходим к предельному выражению E(t + Δt ) − E(t ) lim = kE(t ) Δt → 0 Δt и получаем модель роста популяций микроорганизмов в виде дифференциального уравнения (общий вид): dE(t ) (2.3) = kE(t ) . dt
Решая дифференциальное уравнение (2.3), можно получить аналитическое уравнение роста популяций и провести исследования. При начальных условиях t=0, E(t=0)=E0 получим решение модели роста популяций в виде аналитического выражения E(t)=E0ekt. (2.4) Вид уравнения (2.4) показан на рис. 2.2.
27 Е(t)
Е0
Рис. 2.2
t
Если при t=0 начальное число популяций микроорганизмов E=E0, то можно определить время Т, за которое число особей удвоится по формуле 2E0=E0ekt, → 2=ekT, → T=(1/k)ln2. Заметим, что при получении этой модели не учитывалось ограничение, связанное с требуемым количеством питательных средств для существования микроорганизмов, а также воздействия внешней среды (например, иммунные силы организма). 2.1.3. Модель динамики боя. Проведение военных сражений связано с расчетами, поэтому разрабатывают модели боевых действий [2]. Пусть m1 - число боевых единиц красных; m2 - число боевых единиц синих, сохранившихся непораженными к моменту времени t; λ1 - средняя скорострельность для одной боевой единицы красных; λ2 - средняя скорострельность для одной боевой единицы синих. Цели поражаются с вероятностью р1 - красными и вероятностью р2 - синими. Рассмотрим модель, отображающую динамику боя. Интенсивности успешных выстрелов определятся как
28 L1=λ1р1, L2=λ2р2. Число выведенных боевых единиц красных Δm1 за время Δt составит λ2р2Δtm2, а число выведенных из строя боевых единиц синих Δm2 за время Δt составит λ1р1Δtm1, Тогда Δm1=-λ2р2Δtm2, Δm2=-λ1р1Δtm1. (2.4) Уравнения (2.4) - модель динамики боя в частных приращениях. От уравнения (2.4) осуществим переход к дифференциальным уравнениям. Разделив правую и левую части на Δt, получим Δm1 Δm 2 = -λ 2p 2m 2 , = -λ 1p1m1 . Δt Δt Взяв пределы при Δt→0, получим дифференциальные уравнения, моделирующие динамику боя dm1 dm 2 (2.5) = -L 2m 2 , = -L1m1 dt dt Уравнения (2.5) называются уравнениями Ланчестера. 2.1.4. Модель движения ракеты. Движение ракеты, запускаемой в космос, описывается её координатами х и y, проекциями вектора скорости V на координатные оси VХ и VY. Пусть m - масса ракеты; u величина тяги; ϕ - угол между направлением тяги и осью 0х; f(u) - секундный расход массы. Рассмотрим построение модели, отображающей динамику полета. Проекции скоростей являются производными от движения по координатам, следовательно dy dx = Vy . = Vx , dt dt В соответствии с уравнением Ньютона запишем: dVy dV m = Fy + U sin ϕ; m x = Fx + U cos ϕ . dt dt Расход массы определится уравнением
29 dm = − f (u ) . dt Таким образом, моделью движения ракеты является система уравнений: dVx dy dx = Vx , = Vy , m = Fx + U cos ϕ, dt dt dt m
dVy dt
= Fy + U sin ϕ,
dm = − f (u ) dt
при начальных условиях х(t 0 )=х 0 , y(t 0 )=y 0 , m(t 0 )=m 0 , V х (t 0 )=V х0 , V y (t 0 )=V y0. Управление траекторией ракеты осуществляется за счет регулирования величины и направления силы тяги двигателя, U и ϕ - управляющие параметры. Во всех приведенных выше примерах применение компьютерного моделирования сводится к получению аналитических уравнений, программированию с целью получения решений при заданных наборах входных параметров, визуализации результатов решения.
2.2. Классические модели в виде дифференциальных уравнений Дифференциальные уравнения описывают процесс перехода динамической системы из одного состояния в другое и изменение выходного параметра. Могут рассматриваться системы, в которых моделируют только изменение состояний или только изменение выходного параметра. Могут рассматриваться системы, в которых моделируют изменение и состояний, и выходного параметра. Математические схемы такого вида отражают динамику изучаемой системы и носят название D-схем от английского слова dynamic (динамика).
30 Пусть входные параметры (сигналы, координаты и прочее) заданы множеством Х(t)={х1(t),х2(t),...,хm(t)}, а выходные параметры заданы множеством Y(t)={y1(t),y2(t),..., yr(t)}. Модель динамической системы, определяемая обыкновенными дифференциальными уравнениями в общем виде, задается следующим образом. Задают дифференциальные уравнения, определяющие движение системы в пространстве состояний dz i = f i (t, z 1 (t),..., z n (t), x1 (t),..., x m (t)), i = 1,n . (2.6) dt Каждое i-е дифференциальное уравнение задается в общем виде функцией fi, зависящей от времени t, компонент вектора состояний Z={z1(t),z2(t),…,zn(t)} и компонент вектора входных параметров Х(t)={х1(t),х2(t),...,хm(t)}. Задают соотношения, определяющие изменение выходных параметров y j = g j (t, z1 (t),..., z n (t), x1 (t),..., xm (t)), j = 1,r . (2.7) Для решения дифференциальных уравнений системы (2.6), определения изменения во времени выходных параметров необходимо для момента t(0)=t0 задать начальные состояния z1 (t 0 ) = z10 , z 2 (t 0 ) = z 02 , ..., z n (t 0 ) = z n0 , а также функции, определяющие изменения во времени компонент вектора входных параметров Х(t) на полуинтервале (t0,t]:
(X(t)]tt0 = {(x1 (t)]tt0 ,(x 2 (t)]tt0 , ...,(xm (t)]tt0 } . Если для каждого уравнения системы (2.6) выполнены условия существования и единственности решений, то эти решения в общем случае имеют вид
z i (t) = ji (t, t 0 , z 10 , z 02 , ..., z n0 ,(X(t)]tto ), i = 1,n .
(2.8)
Обозначим решения системы дифференциальных уравнений (2.6), проходящие в момент времени t0 через
31 точку Z 0 = ( z 10 , z 02 ,..., z n0 ) , символом F. Тогда модель в виде функции переходов для динамической системы будет задана в общем виде уравнением (2.9) Z( t ) = F( t , t 0 , Z 0 , ( X( t )] tt o ) . Эта функция каждому набору (t , t 0 , Z 0 , ( X(t )] tt o ) ставит в соответствие то состояние Z(t), в которое переходит система за время перехода t-t0 из фазы (t0,Z0) под действием входных параметров ( X(t )] tt o . Модель динамической системы в виде функции выходов в общем виде будет определена уравнением (2.10) y ( t ) = G ( t , t 0 , Z 0 , ( X( t )]tt o ), в котором оператор G каждому набору ( t , t 0 , Z 0 , ( X( t )]tt o ) сопоставляет выходной сигнал yt=y(t). Дифференциальные уравнения классифицируются на линейные и нелинейные, стационарные и нестационарные, уравнения первого и более высокого порядка, а также одномерные и многомерные. Если модель предназначена для описания изменения состояния z(t) динамической системы, то модель в виде обыкновенного линейного дифференциального уравнения q-го порядка с постоянными коэффициентами и правой частью, выраженной через производные от управляющих функций, задается в следующем виде: dqz d q −1 z d q−2 z − λ − λ − ... − λ q z = 1 2 dt q dt q − 1 dt q − 2 drx d r −1 x d r−2 x = μ 0 r + μ 1 r −1 + μ 2 r − 2 + ... + μ r x (2.11) dt dt dt Если применить оператор дифференцирования p =
d , dt
то с учетом аддитивной ошибки v(t) уравнение (2.11) запишется в виде
32
z(р)=λ-1(р)μ(р)х(р)+v(р), где λ-1(р)=рq-λ1рq-1-λ2рq-2-…-λq, μ(р)=μ0рr+μ1рr-1 + … + μr. Модели в виде многомерных дифференциальных уравнений в форме Коши находят наибольшее применение. Они описываются системами обыкновенных дифференциальных уравнений первого порядка в форме Коши, т.е. разрешенными относительно первых производных. Для стационарной линейной системы, параметры которой изменяются непрерывно во времени, модель в общей форме имеет следующий вид: dZ = ФZ + GX + ГW, Y = HZ + V . dt
(2.12)
В уравнении (2.12): Z={z1(t),z2(t),…,zn(t)} - вектор состояний; Х(t)={х1(t),х2(t),...,хm(t)} – вектор входных параметров; Y(t)={y1(t),y2(t),..., yr(t)} – вектор выходных параметров; W={w1(t),w2(t),…,wn(t)} - вектор шума системы;
dZ dz dz dz = { 1 , 2 ,..., n }T - транспонированный dt dt dt dt
вектор производных от переменных состояния; матрицы Ф, G, H и Г имеют размерности, зависящие от размерностей векторов Z, Х(t), Y(t), W. Коэффициенты матриц Ф, G, H и Г имеют смысл коэффициентов передачи, для стационарной системы не зависят от времени и подлежат оцениванию. Параметры могут входить и в начальное условие, которое необходимо добавить для решения первого уравнения (2.12). Модель для нестационарной линейной непрерывной системы отличается от (2.12) тем, что матрицы Ф, G, H и Г будут зависеть от времени. Непрерывная нелинейная система может быть описана моделью dZ = ϕ( Z, X, t , Θ ) + Г( t , Θ )W , dt
Y = ψ ( Z, X, t , Θ ) + V. (2.13)
33 Векторные функций ϕ(…), ψ(…) и матрица Г(...) предполагаются известными с точностью до параметров, подлежащих оцениванию. Применяя преобразования Лапласа, можно перенести описание из временной области в область изображений по Лапласу. Компьютерное моделирование систем, описываемых многомерными дифференциальными уравнениями в форме Коши, осуществляется с применением пакетов программ. Широко используется подсистема Simulink пакета MatLab. При моделировании определяется вид дифференциального уравнения, задаются начальные условия. Результаты решения отображаются визуально в виде цифровых данных, а также в виде графических данных.
2.3. Инерционные модели Динамические системы с последействием (с предысторией) могут быть формализованы с применением дифференциальных уравнений с запаздывающим аргументом. 2.3.1. Дифференциальные уравнения с запаздывающими аргументами. В общем случае дифференциальные уравнения n-го порядка с запаздывающим аргументом имеют вид d n z(t) dz(t) d n-1z(t) = f[t, z(t), , ..., , z(t - τ), dt n dt dt n-1
dz(t - τ) d n-1z(t - τ) , ..., ]. dt dt n-1
(2.14)
Дифференциальное уравнение (2.14) может быть сведено к системе дифференциальных уравнений первого dz 2 (t) dz(t) = z3 и ; порядка. Введем обозначения: z=z1; = z2 dt 2 dt
34 т.д. Тогда дифференциальное уравнение (2.14) запишем в следующем виде: d n z(t) = f[t, z1 (t), z 2 (t),..., z n (t), z1 (t - τ), z 2 (t - τ),..., z n (t - τ)] . dt Из рассмотрения даже простейшего дифференциального уравнения вида dz(t ) = f [t , z(t ), z(t − τ)] , (2.15) dt где τ>0, τ=сonst, сложно понять, какие начальные условия надо задать, чтобы определить решение z(t) для t>t0. Решение дифференциального уравнения (2.15) определяется из интегрального уравнения t
z(t ) = z(t 0 ) + ∫ f [Θ, z(Θ ), z(Θ − τ)]dΘ. (2.16) t0
Решение уравнения (2.16) осуществляется по следующему алгоритму. Следует задать начальное значение для точки t0 z0=z(t0) и функцию z(t) в полуинтервале t0-τ≤tt0 с применением методов вычислительной математике и компьютерного моделирования. Алгоритм решения уравнения (2.16) представляет собой следующую последовательность действий. После задания начальных условий следует определить непрерывное решение z(t) для t>t0, при условии, что z(t)=W(t) для ∀t∈[t0-τ,t0). Если функции f и W непрерывны и первая из них удовлетворяет условию Липшица по z, то искомое решение существует и единственно.
35 Зная W(t) для t0-τ≤t