УДК: 681.5.01:621.317.08 (075.8) Федеральное агентство по образованию Государственное образовательное учреждение высшего...
15 downloads
268 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
УДК: 681.5.01:621.317.08 (075.8) Федеральное агентство по образованию Государственное образовательное учреждение высшего профессионального образования Нижегородский государственный технический университет им. Р.Е.Алексеева Арзамасский политехнический институт (филиал НГТУ) Ассоциация ученых города Арзамаса
В.Л. Волков
МОДЕЛИРОВАНИЕ ПРОЦЕССОВ И СИСТЕМ В ПРИБОРОСТРОЕНИИ Учебное пособие для студентов технических специальностей дневной, вечерней, и заочной форм обучения
Волков В.Л. Моделирование процессов и систем в приборостроении. Учебное пособие для студентов технических специальностей дневной, вечерней и заочной форм обучения / Арзамас, АПИ НГТУ, 2008. − 143 с. ISBN 5-230-03038-0. В учебном пособии представлены сведения по математическому моделированию динамических систем и процессов в приборостроении. Особенности задач моделирования в приборостроении заключаются в применении универсального математического аппарата в виде дифференциальных уравнений, матричных преобразований и стохастических процессов. Классические математические модели рассмотрены в предыдущем издании учебного пособия [1]. Здесь представлены современные вопросы моделирования, основанные на применении современного векторно-матричного математического аппарата, и рассмотрены практические задачи моделирования на компьютерах с применением лицензионного объектно-ориентированного программного обеспечения. Печатается по решению кафедры “Авиационные приборы и устройства” Арзамасского политехнического института (филиала) НГТУ.
Рецензент - канд. техн. наук А.Ю. Мишин.
Формат 60×84 1/16. Печать офсетная. Подп. в печ. Печ. л. 8,5. Уч.-изд. л. 8,0. Тираж 200 экз. Зак. . ____________________________________________________________
СИСТЕМА
МОДЕЛЬ
ЭКСПЕРИМЕНТ
Издатель: ОО «Ассоциация ученых» г. Арзамаса Нижегородской области, 607220, г. Арзамас, Нижегородской области, ул. Калинина, 19. Участок офсетной печати: 607220, г. Арзамас, Нижегородской области, ул. Севастопольская, 15. © Волков В.Л., 2008 © Нижегородский государственный технический университет, 2008 © ОО «Ассоциация ученых» г. Арзамаса Нижегородской области, 2008
Арзамас 2008
1
2
Содержание Предисловие Введение 1. Основные понятия систем 1.1. Основные понятия марковских систем 2. Динамические процессы и их свойства 2.1. Теорема проецирования 2.2. Импульсная теорема 2.3. Случайные процессы 3. Модели динамических систем и процессов 3.1 Формирующий фильтр стохастического процесса 3.1.1. Пример факторизации на основе Excel 3.2 Модели датчиков первичной информации 3.2.1. Пример составления динамической модели датчика 3.2.2 Формирование модели ДПИ методом ЖЛАХ 3.3. Основные матричные модели 3.3.1 Каноническое преобразование матричных моделей 3.3.1.1 Каноническое преобразование матричной модели в Excel 3.3.1.2. Алгоритм Сурье-Фадеева 3.4 Свойства матричных моделей 3.5 Методы формирования матричных моделей 3.5.1 Метод вспомогательной переменной 3.5.2. Метод нормальной матричной формы Коши 3.5.3. Метод канонического разложения 3.5.4. Метод разложения на простые множители 3.5.5. Метод аналогового моделирования 3.5.6 Нормальная форма записи уравнений состояния 4. Расчет основных характеристик процессов и систем 4.1. Дисперсия стохастического процесса через вычеты 4.2. Дисперсия стохастического процесса алгоритмом Острема 4.2.1. Реализация алгоритма Острема на основе Excel 4.3 Расчет частоты спектра и периода дискретности процесса 4.4. Расчет непрерывной и дискретной матричной модели 5. Статистическое моделирование систем 5.1. Оптимизация методом статистического моделирования 5.2. Объектно-ориентированное статистическое моделирование 5.3 Расчет передаточной функции ДС по заданным номинальным параметрам и функциональным зависимостям 3
5 6 9 23 24 24 25 25 27 30 31 34 34 36 38 40 41 44 46 48 49 49 50 53 54 55 57 57 57 58 63 65 69 69 72
5.4. Преобразование модели “Передаточная функция” в непрерывную и дискретную матричные модели 5.5. Численное решение дифференциальных уравнений 5.6. Метод статистического моделирования при определении допусков на конструктивные параметры системы 5.7. Моделирование процессов с заданным законом распределения 6. Моделирование в системе MatLab Simulink 6.1. Общие сведения о системе моделирования MatLab Simulink 6.1.1. Библиотека блоков Simulink 6.2. Основные приемы подготовки и редактирования модели 6.3. Моделирование процесса в системе MatLab Simulink 6.3.1. Моделирование непрерывной системы контроля 6.3.2. Моделирование дискретной системы контроля 7. Примеры моделирования 7.1. Моделирование датчика при входном сигнале и аддитивном шуме 7.2. Моделирование процессов с заданными свойствами 8. Марковские процессы и системы 8.1. Марковские процессы 8.1.1. Основные свойства марковских систем 8.2. Уравнения Колмогорова для вероятностей состояний систем 8.3. Основные модели марковских систем 8.3.1. Фомула Литла 8.3.2. Функциональная схема многоканальной системы 8.3.3. Многоканальная система с отказами обслуживания 8.3.4. Многоканальная система с неограниченной очередью 8.3.5. Многоканальная система с ограниченной очередью 8.3.6. Одноканальная система с неограниченной очередью 8.3.7. Одноканальная система с ограниченной очередью 8.3.8. Одноканальная замкнутая система с m источниками заявок 8.4. Уравнения состояния резервированной системы в динамике Заключение Библиографический список
76 4
77 78 79 81 82 83 85 97 99 101 106 109 109 111 114 114 119 123 129 130 131 132 133 134 136 137 137 138 141 142
Предисловие Опыт чтения лекций по курсу “Моделирование процессов и систем” для различных специальностей предоставил автору возможность обобщить некоторые новые теоретические и практические вопросы моделирования в данном учебном пособии. Существующий в настоящее время читательский интерес к вопросам практического применения теории и методов моделирования процессов и систем потребовал, в то же время, от автора рассматривать технологии моделирования в свете современного постоянно совершенствующегося программного обеспечения и возрастающих ресурсов персональной компьютерной техники. Основной задачей учебного пособия является оказание поддержки студентам в освоении новых технологий моделирования в специализированных отраслях знаний. Круг рассматривамых в учебном пособии вопросов, однако, ограничен математическим и компьютерным моделированием для технических систем. Студенты не технических специальностей также могут воспользоваться предлагаемыми методами решения прикладных задач моделирования и распространить приведенный здесь математический аппарат для своих задач. Учебное пособие состоит из восьми разделов, первый из которых содержит краткие общие положения теории систем. Второй раздел посвящен теории динамических процессов и их свойствам. В третьем разделе представлены сведение по практике математических моделей на основе современной теории состояния систем и марковских процессов. Приведен алгоритм эквивалентных матричных преобразований модели системы к канонической форме. Этот раздел уже содержит ряд методик расчета математических моделей на основе удобного для этих целей лицензионного программного обеспечения (ПО) электронных таблиц - MS Office Excel. Четвертый раздел посвящен методикам расчета важных характеристик процессов и систем. Здесь раскрыта, практически легко реализуемая, методика расчета среднего квадрата отклонения процесса на основе алгоритма Острема. Эта методика широко применяется далее во многих практических задачах анализа процессов и систем. В пятом разделе представлены вопросы статистического моделирования процессов и систем. Рассмотрено применение объектно-ориентированного программного обеспечения для решения задач оптимизации динамических характеристик ДПИ методом статистического моделирования, определение допустимых отклонений параметров ДПИ при обеспечении их показателей качества на заданном уровне. 5
Шестой раздел содержит сведения об особенностях моделирования процессов и систем на основе лицензионного инженерного ПО Matlab. Приведены наглядные примеры моделирования непрерывных и дискретных систем. Седьмой раздел собрал ряд примеров прикладных задач моделирования из учебной практики. Большое внимание в восьмом разделе уделено марковским процессам и системам. Здесь рассмотрены как теоретические вопросы, так и прикладные, которые предполагают дальнейшую реализацию в лабораторных и практических работах. Автор старался соблюдать краткость изложения, и поэтому некоторые интересные и важные вопросы представлены в ограниченном объеме. Развитие вопросов моделирования для технических и других систем автор предполагает продолжить и конкретизировать в методических указаниях по лабораторнопрактическим работам дисциплин по моделированию и измерительным системам. Введение Достижения в теории и практике моделирования процессов и систем, в современных условиях, связано со стремительным развитием вычислительной техники. Что казалось невозможным при решении многих задач моделировании еще несколько лет назад, сейчас легко реализуется на доступном инженерном уровне [2 - 4]. Появление и развитие инженерных пакетов моделирования, таких как Matlab, Skylab, Labview, создало условия высокопризводительного, объектно-ориентированного моделирования на современных компьютерах. Задачи моделирования процессов и систем многообразны. Моделирование широко используется при инженерном проектировании и научных исследованиях: для решения технических и экономических задач, при исследованиях в экологии и социологии, в приборостроении и автоматизации управления. Особенности применения моделирования в приборостроении связаны в первую очередь с технологическими достижениями в датчикостроении, теории измерений и обработки информации. В области экономических задач применение моделирования дает эффективный инструмент для управления проектами и прогнозирования развития экономических процессов. Многие современные методы теории управления оказались эффективными при решении экономических задач и достаточно легко реализуемыми на математических моделях и постановке вычислительных экспериментов на компьютерной технике. 6
Развитие нейросетей, микросистемотехники, нанотехнологии внесло много существенно нового в методы моделирования процессов и систем, что дало также эффективный инструмент для предварительного решения задач проектирования в математическом виде на моделях и их численном исследовании на компьютерах. Применение моделирования особенно эффективно при исследовании проектируемых систем с целью изучения и прогнозировании различных явлений и процессов в этих системах. Приближение к реальным условиям работы проектируемых систем осуществляется при стохастическом моделировании, когда к условиям моделирования добавляются случайные изменения параметров системы, возмущения и шумы измерений физических величин. В приборостроении актуально моделирование задач управления, получения, передачи и преобразования информации. При этом современные модели везде для описания процессов и систем используют дифференциальные уравнения и линейные матричные преобразования. Развитие современных методов моделирования создало предпосылки для создания и исследования высокоэффективных систем, которые, как правило, ориентированы на цифровые алгоритмы обработки информации, с применением современных микропроцессоров, нейрокомпьютеров, процессоров с нечеткой логикой и других современных технологических достижений. Появление миниатюрных устройств, в которых гальванические (электрические) подсистемы интегрируются на микроуровне с механическими, породило направление - МЭМС (микроэлектромеханические системы). В России также МЭМС известны как «Микросистемная техника», содержание которой определено как: «Сверхминиатюрные механизмы, приборы, машины с ранее недостижимыми массогабаритами, энергетическими показателями и функциональными параметрами, создаваемые интегральногрупповыми экономически эффективными процессами микро- и нанотехнологии». Это: микроэлектромеханические, микрооптоэлектромеханические, микрофлюидные и микропневматические компоненты для контрольно-измерительных, информационно-управляющих и телерадиокоммуникационных систем; микромеханизмы и микромашины для генерации, преобразования и передачи энергии и движения на микро и наноуровнях [5]. Моделирование МЭМС одно из направлений моделирования процессов и систем. Еще одно из перспективных направлений моделирования перспективных технологических решений это нанотехнологии. 7
Нанотехнология механосинтеза позволяет набором веществ согласно определенным алгоритмам с помощью наномеханизмов произвести сборку практически любого продукта. Помимо этого, механосинтез может также осуществлять обратный процесс, «разбирая» поданные на вход продукты до молекулярного или атомарного уровня. Этот аспект технологии позволяет решить проблему жизненного цикла. Однако существует один важный параметр такой технологии– энергоемкость. Согласно статистике, в самом простом варианте производства при помощи механосинтеза энергетические затраты составляют около 200 кВт часов на 1 кг продукции. В случае сборки сложных устройств увеличение энергозатрат происходит за счет дополнительных модулей сепарации вещества на входе и его подачи на фронт сборки (принцип Plug & Play практически полностью захватит этот сектор). Также для сложных устройств требуются такие вещества, которых мало или которые даже невозможно получить напрямую из окружающей человека среды. Это касается, прежде всего, редкоземельных металлов, используемых в электронике. Переработка же имеющихся в достатке элементов с помощью механосинтеза еще увеличит стоимость синтеза сложных объектов. В этом случае происходит десятикратное увеличение энергозатрат. Предельная стоимость производства 1 кг конечного продукта путем механосинтеза в итоге составляет около 2,2 тыс. современных рублей. Значительное количество сложных технических устройств, изготавливаемых по традиционным технологиям и используемых человеком, имеет более высокую стоимость из расчета на 1 кг массы. В предельном случае однородные объекты, производимые по нанотехнологиям, в конечном итоге, станут «условно-бесплатными» - их стоимость практически на 100% будет состоять из энергозатрат. Информация, как представляется, не может быть продуктом механосинтеза ни прямо, ни опосредованно. В дополнение к этому, уже сейчас себестоимость производства информации находится на очень низком уровне. Можно констатировать, что механосинтез никоим образом не влияет на стоимость информации. Тем не менее, количество генерируемой информации значительно увеличится за счет лавинообразного появления описаний процессов сборки объектов, соответственно, объем информационного оборота возрастет (по закону Мура в два раза каждые два года). Существующая сеть информационного обмена может оказаться далекой от эффективности в таких условиях. Нанотехнологии обещают разработать и запустить в массовое производство нанороботов, способных выполнять кажущиеся невозможными в настоящее время задачи (в медицине, генной инженерии, нейротехнологиях). 8
В свете этих особенностей актуальным становится широкомасштабное моделирование нанотехнологий и технологий механосинтеза, в том числе создание и исследование на компьютерах алгоритмов синтеза различных устройств. Суммируя сказанное о нанотехнологиях, надо учитывать при их моделировании характерные особенности: − существенное снижение издержек на производство и доставку большого количества материальных объектов; − многократное увеличение информационного обмена; − значительное увеличение жизненного цикла ресурсов; − многократное увеличение энергопотребления. На первый план при освоении нанотехнологий выходит моделирование инновационных коммуникационных средств, моделирование перспективных технологий обработки и передачи данных.
свойств). Интегративное свойство системы обеспечивает ее целостность, качественно новое образование по сравнению с составляющими ее частями. Элемент системы можно рассматривать как самостоятельную систему (математическую модель, описывающую какой - либо функциональный блок, или аспект изучаемой проблемы), как правило более низкого порядка. Каждый элемент системы описывается своей функцией. Если такой элемент обладает внутренней структурой, то его называют подсистемой. Информационно-измерительная система (ИИС) (рисунок 1.1) имеет датчики первичной информации ДПИ, измеряющие физические величины; устройство обработки информации (УОИ) с фильтрами и вычислительными устройствами (ВУ). На основе измерений x1,...,xk, имеющих аддитивные шумы n1,...,nk, ИИС определяет оптимальные оценки X^=(x^1,...,x^k).
1. Основные понятия систем Система - это комплекс взаимодействующих элементов, находящихся в определенных отношениях друг с другом и со средой [6]. В определение понятия системы наряду с элементами, связями и их свойствами и целями включают также наблюдателя. Популярно − система есть множество входов, выходов, состояний, характеризуемых оператором переходов и оператором выходов: S=(Х, Y, Z, H, G), где Х - входы, Y - выходы, Z - состояния, Н - оператор переходов, G - оператор выходов. Для организационных систем в определении системы учитываются следующие компоненты: S=(РL, RO, RJ, EX, PR, DT, SV, RD, EF), где РL - цели и планы, RO - внешние ресурсы, RJ - внутренние ресурсы, ЕХ исполнители, PR - процесс, DТ - помехи, SV - контроль, RD - управление, ЕF эффект. Под системой понимается объект, свойства которого не сводятся без остатка к свойствам составляющих его дискретных элементов (неаддитивность
9
Рисунок 1.1. Информационно-измерительная система
Для систем важно понятие управления. В широком смысле слова под управлением понимают организационную деятельность, осуществляющую функции направленные на достижение определенных целей. Управление − это организация такого целенаправленного воздействия на некоторую часть среды, называемую объектом управления (ОУ), в результате которого удовлетворяются потребности субъекта, взаимодействующего с этим объектом. Упрощенное понятие управления – это получение, обработка информации и выработка управляющих воздействий для достижения объектом целей (стабилизация движение по программе, оптимизация движения). Системы управления представляют собой особый класс динамических систем, отличающихся наличием самостоятельных функций и целей управления и необходимым для реализации этих функций и целей высоким уровнем специальной системной организации. Следует заметить, что устройства связи и управления отличаются тем, что энергетические отношения в них не играют существенной роли, а основным является способность передавать и перерабатывать информацию. Так в линии связи ничтожная доля энергии излучаемой антенной передатчика полу10
чатся антенной приемника. КПД такого устройства, с точки зрения передачи энергии, чрезвычайно мало. Кибернетический подход к описанию систем состоит в том, что всякое целенаправленное поведение рассматривается как управление. Язык управления — это использование понятий «объект», «среда», «обратная связь», «алгоритм». Анализ управления заставляет выделить тройку — среду, объект и субъект, внутри которой разыгрывается процесс управления (рисунок 1.2).
Случайный характер оцениваемых параметров и шумов измерений определяет вероятностный математический аппарат теории систем. В общем случае для описания поведения входных параметров и шумов используются плотности вероятности. Параметры определяются априорной плотностью вероятности f(X), где Х - вектор параметров. Шумы косвенно определяются плотностью f(Y/X), где Y - вектор измерений. Вектор измерений связан с вектором параметров Х линейным соотношением: Y(t)=CX(t)+N(t),
объект
X Среда
Y
U Y
субъект
Рисунок 1.2. Схема управления
В данном случае субъект ощущает на себе воздействие среды X и объекта Y. Если состояние среды X он изменить не может, то состоянием объекта Y он может управлять с помощью специально организованного воздействия U. Система автоматического управления (САУ) - это комплекс устройств, предназначенный для автоматического изменения одной или нескольких регулируемых величин объекта управления с целью поддержания желаемого режима работы (цели управления). Целью управления может быть: стабилизация регулируемых величин, программное и следящее управление регулируемых величин, оптимизация регулируемых величин. В САУ (рисунок 1.3) исполнительное устройство и объект управления составляют объект наблюдения и представляют динамику системы.
V(k) Uз
Исполнительное устройство
Uoc=-LX(k/k)
N(k)
Объект X(k) управления
Регулятор
X(k/k)
Датчики
Фильтр
Рисунок 1.3. Система автоматического управления
11
Y(k)
где С - матрица состава измерений; N(t) - вектор аддитивных шумов измерений. Элемент. Под элементом принято понимать простейшую неделимую часть системы (используется название "компонент"). Подсистема. Система может быть разделена на элементы не сразу, а последовательным расчленением на подсистемы, которые представляют собой компоненты более крупные, чем элементы, и в то же время более детальные, чем система в целом. Названием "подсистема" подчеркивается, что такая часть должна обладать свойствами системы (в частности, свойством целостности). Структура. Это понятие происходит от латинского слова structure, означающего строение, расположение, порядок. Структура - это совокупность элементов и связей между ними. Структура может быть представлена графически, в виде теоретико-множественных описаний, матриц, графов и других языков моделирования структур. Структуру часто представляют в виде иерархии. Иерархия - это упорядоченность компонентов по степени важности (многоступенчатость, служебная лестница). Между уровнями иерархической структуры могут существовать взаимоотношения строгого подчинения компонентов (узлов) нижележащего уровня одному из компонентов вышележащего уровня, т. е. отношения так называемого древовидного порядка. Между уровнями иерархической структуры могут существовать и более сложные взаимоотношения, например, типа "страт", "слоев", "эшелонов". Примеры иерархических структур: энергетические системы, АСУ, государственный аппарат. Связь. Понятие "связь" входит в любое определение системы наряду с понятием "элемент" и обеспечивает возникновение и сохранение структуры и целостных свойств системы. Это понятие характеризует одновременно и строение (статику), и функционирование (динамику) системы.
12
Связь характеризуется направлением, силой и характером (или видом). По первым двум признакам связи можно разделить на направленные и ненаправленные, сильные и слабые, а по характеру - на связи подчинения, генетические, равноправные (или безразличные), связи управления. Связи можно разделить также по месту приложения (внутренние и внешние), по направленности процессов в системе в целом или в отдельных ее подсистемах (прямые и обратные). Важную роль в системах играет понятие "обратной связи". Это понятие, легко иллюстрируемое на примерах технических устройств, не всегда можно применить в организационных системах. Исследованию этого понятия большое внимание уделяется в кибернетике, в которой изучается возможность перенесения механизмов обратной связи, характерных для объектов одной физической природы, на объекты другой природы. Обратная связь является основой саморегулирования и развития систем, приспособления их к изменяющимся условиям существования. Классификация систем. Системы разделяются на классы по различным признакам, и в зависимости от решаемой задачи можно выбрать разные принципы классификации. При этом систему можно охарактеризовать одним или несколькими признаками. Системы классифицируются следующим образом: − по виду отображаемого объекта − технические, биологические и др.; − по виду научного направления − математические, физические, химические и т. п.; − по виду формализованного аппарата представления системы — детерминированные и стохастические; − по типу целеустремленности −открытые и закрытые; − по сложности структуры и поведения − простые и сложные; − по степени организованности − хорошо организованные, плохо организованные (диффузные), самоорганизующиеся системы. Классификации всегда относительны. Так в детерминированной системе можно найти элементы стохастических систем. Цель любой классификации ограничить выбор подходов к отображению системы и дать рекомендации по выбору методов. Технические системы. Параметрами технических объектов являются движущие объекты, объекты энергетики, объекты химической промышленности, объекты машиностроения, бытовая техника и многие другие. Объекты технических систем хорошо изучены в теории управления.
13
Экономические объекты. Экономическими объектами являются: цех, завод, предприятия различных отраслей. В качестве одной из переменных в них выступают экономические показатели, например, прибыль. Биологические системы. Живые системы поддерживают свою жизнедеятельность благодаря заложенным в них механизмам управления. Детерминированные и стохастические системы. Системы, для которых состояние системы однозначно определяется начальными значениями и может быть предсказано для любого момента времени, называются детерминированными. Стохастические системы – системы, изменения в которых носят случайный характер. Например, воздействие на энергосистему различных пользователей. При случайных воздействиях данных о состоянии системы недостаточно для предсказания в последующий момент времени. Случайные воздействия могут прикладываться к системе извне или возникать внутри некоторых элементов (внутренние шумы). Исследование систем при наличии случайных воздействий можно проводить обычными методами, минимизировав шаг моделирования, чтобы не пропустить влияния случайных параметров. При этом, так как максимальное значение случайной величины встречается редко (в основном в технике преобладает нормальное распределение), то выбор минимального шага в большинстве моментов времени не будет обоснован. В подавляющем большинстве случаев при проектировании систем задаются не максимальным, а наиболее вероятным значением случайного параметра. В этом случае поучается более рациональная система, заранее предполагая ухудшение работы системы в отдельные промежутки времени. Расчет систем при случайных воздействиях производится с помощью специальных статистических методов. Вводятся оценки случайных параметров, выполненные на основании множества испытаний. Статистические свойства случайной величины определяют по ее функции распределения или плотности вероятности, или часто пользуются просто статистическими характеристиками. Открытые и закрытые системы. Основные отличительные черты открытых систем - способность обмениваться с внешней средой энергией и информацией. Закрытые (замкнутые) системы изолированы от внешней среды (с точностью принятой в модели). Плохо организованные системы. При представлении объекта в виде «плохо организованной или диффузной системы» не ставится задача определить все учитываемые компоненты, их свойства и связи между ними и целями 14
системы. Система характеризуется некоторым набором макропараметров и закономерностями, которые находятся на основе исследования не всего объекта или класса явлений, а на основе определенной с помощью некоторых правил выборки компонентов, характеризующих исследуемый объект или процесс. На основе такого выборочного исследования получают характеристики или закономерности (статистические, экономические) и распространяют их на всю систему в целом. При этом делаются соответствующие оговорки. Например, при получении статистических закономерностей их распространяют на поведение всей системы с некоторой доверительной вероятностью. Подход к отображению объектов в виде диффузных систем широко применяется при: описании систем массового обслуживания, исследовании потоков информации в системах управления и т. д. Самоорганизующиеся системы. Отображение объекта в виде самоорганизующейся системы — это подход, позволяющий исследовать наименее изученные объекты и процессы. Самоорганизующиеся системы обладают признаками диффузных систем: стохастичностью поведения, нестационарностью отдельных параметров и процессов. К этому добавляются такие признаки, как непредсказуемость поведения; способность адаптироваться к изменяющимся условиям среды, изменять структуру при взаимодействии системы со средой, сохраняя при этом свойства целостности; способность формировать возможные варианты поведения и выбирать из них наилучший и др. Иногда этот класс разбивают на подклассы, выделяя адаптивные или самоприспосабливающиеся системы, самовосстанавливающиеся, самовоспроизводящиеся и другие подклассы, соответствующие различным свойствам развивающихся систем. Примеры: биологические организации, коллективное поведение людей, организация управления на уровне предприятия, отрасли, государства в целом, т. е. в тех системах, где обязательно имеется человеческий фактор. Простые и сложные кибернетические системы. В зависимости от способа описания: детерминированного или теоретико-вероятностного А. И. Берг определяет сложную систему как систему, которую можно описать не менее чем на двух различных математических языках (например, с помощью теории дифференциальных уравнений и алгебры Буля). При разработке сложных систем возникают проблемы, относящиеся не только к свойствам их составляющих элементов и подсистем, но также к закономерностям функционирования системы в целом. При этом появляется широкий круг специфических задач, таких, как определение общей структуры системы; организация взаимодействия между элементами и подсистемами; 15
учет влияния внешней среды; выбор оптимальных режимов функционирования системы; оптимальное управление системой и др. Чем сложнее система, тем большее внимание уделяется этим вопросам. Математической базой исследования сложных систем является теория систем. В теории систем большой системой (сложной, системой большого масштаба, Lage Scale Systems) называют систему, если она состоит из большого числа взаимосвязанных и взаимодействующих между собой элементов и способна выполнять сложную функцию. Четкой границы, отделяющей простые системы от больших, нет. Деление это условное и возникло из-за появления систем, имеющих в своем составе совокупность подсистем с наличием функциональной избыточности. Простая система может находиться только в двух состояниях: состоянии работоспособности (исправном) и состоянии отказа (неисправном). При отказе элемента простая система либо полностью прекращает выполнение своей функции, либо продолжает ее выполнение в полном объеме, если отказавший элемент резервирован. Большая система при отказе отдельных элементов и даже целых подсистем не всегда теряет работоспособность, зачастую только снижаются характеристики ее эффективности. Это свойство больших систем обусловлено их функциональной избыточностью и, в свою очередь, затрудняет формулировку понятия «отказ» системы. Наряду с этим в больших системах возможно возникновение лавинообразных эффектов, когда небольшая “песчинка” вызывает “обвал” целой системы. Эти эффекты относятся к странным аттракторам, свойственным взаимодействию сложных систем. Изучаются теорией хаоса. Под большой системой понимается совокупность материальных ресурсов, средств сбора, передачи и обработки информации, людей-операторов, занятых на обслуживании этих средств, и людей-руководителей, облеченных надлежащими правами и ответственностью для принятия решений. Материальные ресурсы — это сырье, материалы, полуфабрикаты, денежные средства, различные виды энергии, станки, оборудование, люди, занятые на выпуске продукции, и т. д. Все указанные элементы ресурсов объединены с помощью некоторой системы связей, которые по заданным правилам определяют процесс взаимодействия между элементами для достижения общей цели или группы целей. Примеры больших систем: информационная система; пассажирский транспорт крупного города; производственный процесс; система управления полетом крупного аэродрома; энергетическая система и др. Характерные особенности больших систем − это: 1) большое число элементов в системе (сложность системы); 2) взаимосвязь и взаимодействие меж16
ду элементами; 3) иерархичность структуры управления; 4) обязательное наличие человека в контуре управления, на которого возлагается часть наиболее ответственных функций управления. Сложность системы. Пусть имеется совокупность из n элементов. Если они изолированы, не связаны между собой, то эти n элементов не являются системой. Для изучения этой совокупности достаточно провести не более чем n исследований с каждым элементом. В общем случае в системе со взаимными связями между компонентами необходимо исследовать n(n-1) связей. Если состояние каждой связи охарактеризовать в каждый момент времени наличием или отсутствием, то общее число состояний системы будут равно 2n(n-1). Например, если n=10, то число связей n(n-1)=90, число состояний 290≈1,3*1027. Изучение такой системы путем непосредственного обследования ее состояния оказывается весьма сложным. Следовательно, необходимо разрабатывать компьютерные методы, позволяющие сокращать число обследуемых состояний. Сокращение числа состояний БС — первый шаг в формальном описании систем. Взаимосвязь и взаимодействие между элементами в БС. Разделение системы на элементы — второй шаг при формальном описании системы. Внутренняя структура элемента при этом не является предметом исследования. Имеют значение только свойства, определяющие его взаимодействие с другими элементами системы и оказывающие влияние на характер системы в целом. В качестве подсистем рассматриваются некоторые более или менее самостоятельно функционирующие части системы. Разделение на элементы и подсистемы может быть произведено различными способами. В системе управления полетом самолета можно выделить следующие подсистемы: систему дальнего обнаружения и управления; систему дальней связи; систему слепой посадки и взлета самолета; систему диспетчеризации; бортовую аппаратуру самолета. Выделение подсистем — третий важный шаг при формальном описании больших ситем. Поскольку в БС обязательно наличие человека, она является всегда эргатической системой. Часть функций управления выполняется человеком. Эта особенность БС связана с целым рядом факторов: − участие человека в БС требует, чтобы управление учитывало социальные, психологические, моральные и физиологические факторы, которые не поддаются формализации и могут быть учтены в системах управления только человеком;
17
− необходимость в ряде случаев принимать решение на основе неполной информации, учитывать неформализуемые факторы. Шкалы времени. Другим важным аспектом динамической сложности является вопрос о различных шкалах времени для различных частей процесса. Бывает, что скорости изменения компонент одного и того же процесса различны: одни компоненты изменяются быстрее, другие – медленнее. Типичным примером такого процесса является регулирование уровня воды в системе водохранилищ. Для управления на уровне индивидуального распределения воды требуется принимать решения ежедневно (или даже ежечасно), хотя решение об общем потоке воды через вход-выход принимается раз в месяц или раз в квартал. Проблема различных шкал времени напоминают проблему интегрирования “жестких” систем ДУ или когда имеем дело с некорректной проблемой. Весьма актуальным является оценка степени целостности системы при переходе из одного состояния в другое. В связи с этим возникает двойственное отношение к закономерности целостности. Ее называют физической аддитивностью, независимостью, суммативностью, обособленностью. Свойство физической аддитивности проявляется у системы, как бы распавшейся на независимые элементы. Строго говоря, любая система находится всегда между крайними точками как бы условной шкалы: абсолютная целостность — абсолютная аддитивность, и рассматриваемый этап развития системы можно охарактеризовать степенью проявления в ней одного или другого свойства и тенденцией к его нарастанию или уменьшению. Интегративными называют системообразующие, системосохраняющие факторы, важными среди которых являются неоднородность и противоречивость ее элементов. Коммуникативность. Система не изолирована, она связана множеством коммуникаций со средой, которая не однородна, а представляет собой сложное образование, содержит надсистему (или даже надсистемы), задающую требования и ограничения исследуемой системе, подсистемы и системы одного уровня с рассматриваемой. Иерархическая упорядоченность пронизывает все, начиная от атомномолекулярного уровня и кончая сложными системами. Иерархичность как закономерность заключается в том, что закономерность целостности проявляется на каждом уровне иерархии. Благодаря этому на каждом уровне возникают новые свойства, которые не могут быть выведены как сумма свойств элементов. При этом важно, что не только объединение элементов в каждом узле приводит к появлению новых свойств, которых у них не было, и утрате неко18
торых свойств элементов, но и что каждый член иерархии приобретает новые свойства, отсутствующие у него в изолированном состоянии. На каждом уровне иерархии происходят сложные качественные изменения, которые не всегда могут быть представлены и объяснены. Но именно благодаря этой особенности рассматриваемая закономерность приводит к интересным следствиям. Во-первых, с помощью иерархических представлений можно отображать системы с неопределенностью. Во-вторых, построение иерархической структуры зависит от цели: для многоцелевых ситуаций можно построить несколько иерархических структур, соответствующих разным условиям, и при этом в разных структурах могут принимать участие одни и те же компоненты. В-третьих, даже при одной и той же цели, если поручить формирование иерархической структуры разным исследователям, то в зависимости от их предшествующего опыта, квалификации и знания системы они могут получить разные иерархические структуры, т. е. по-разному разрешить качественные изменения на каждом уровне иерархии. Эквифинальность характеризует предельные возможности систем определенного класса сложности. Потребность во введении этого понятия возникает начиная с некоторого уровня сложности, например, для биологических систем. В настоящее время не исследован ряд вопросов этой закономерности: какие именно параметры в конкретных системах обеспечивают свойство эквифинальности, как обеспечивается это свойство, как проявляется закономерность эквифинальности в организационных системах. Жизненный цикл - время является непременной характеристикой системы – это свойство историчности. Для технических и организационных систем определить жизненный цикл довольно трудно. Основа закономерности историчности — внутренние противоречия между компонентами системы. Но как управлять развитием или хотя бы понимать приближение соответствующего периода развития системы — эти вопросы еще мало исследованы. В последнее время на необходимость учета закономерности историчности начинают обращать больше внимания. В частности, в системотехнике при создании сложных технических комплексов требуется на стадии проектирования системы рассматривать не только вопросы разработки и обеспечения развития системы, но и вопрос, как и когда нужно ее уничтожить. Например, списание техники, особенно сложной — авиационной, «захоронение» ядерных установок и др. 19
Система должна удовлетворять закону необходимого разнообразия. Его впервые сформулировал У.Р. Эшби: чтобы создать систему, способную справиться с решением проблемы, обладающей определенным, известным разнообразием, нужно, чтобы сама система имела еще большее разнообразие, чем разнообразие решаемой проблемы, или была способна создать в себе это разнообразие. Этот закон достаточно широко применяется на практике. Он позволяет, например, получить рекомендации по совершенствованию системы управления предприятием, объединением, отраслью. Закономерность осуществимости и потенциальной эффективности систем. Исследования взаимосвязи сложности структуры системы со сложностью ее поведения позволили получить количественные выражения предельных законов для таких качеств системы, как надежность, помехоустойчивость, управляемость и др. На основе этих законов оказалось возможным получение количественных оценок порогов осуществимости систем с точки зрения того или иного качества, а объединяя качества — предельные оценки жизнеспособности и потенциальной эффективности сложных систем. Применения системных представлений для анализа сложных объектов и процессов рассматривают системные направления, включающие в себя: системный подход, системные исследования, системный анализ (системологию, системотехнику и т. п.). Системный подход. Исследования объекта с разных сторон, комплексно. Термин «системный подход» практически используется вместо терминов «комплексный подход». Метод экспертной оценки, известен в литературе как «метод Дельфи». Название связано с древнегреческим городом Дельфи, где при храме Аполлона с IX в. до н.э. до IV в. н.э. по преданиям существовал Дельфийский оракул. Суть метода Дельфи заключается в следующем. В отличие от традиционного подхода к достижению согласованности мнений экспертов путем открытой дискуссии метод Дельфи предполагает полный отказ от коллективных обсуждений. Это делается для того, чтобы уменьшить влияние таких психологических факторов, как присоединение к мнению наиболее авторитетного специалиста, нежелание отказаться от публично выраженного мнения, следование за мнением большинства. В методе Дельфи прямые дебаты заменены тщательно разработанной программой последовательных индивидуальных опросов, проводимых обычно в форме анкетирования. Ответы экспертов обобщаются и вместе с новой дополнительной информацией поступают в распоряжение экспертов, после чего они уточняют свои первоначальные ответы. Такая процедура повторяется несколько раз до достижения приемлемой сходимости сово20
купности высказанных мнений. Результаты эксперимента показали приемлемую сходимость оценок экспертов после пяти туров опроса. Метод Дельфи первоначально был предложен О. Хелмером как итеративная процедура при проведении мозговой атаки, которая помогает снизить влияние психологических факторов при проведении повторных заседаний и повысить объективность результатов. Дельфи-процедуры стали основным средством повышения объективности экспертных опросов с использованием количественных оценок при оценке деревьев цели и при разработке сценариев. Процедура Дельфи-метода: 1) в упрощенном виде организуется последовательность циклов мозговой атаки; 2) в более сложном виде разрабатывается программа последовательных индивидуальных опросов обычно с помощью вопросников, исключая контакты между экспертами, но предусматривающая ознакомление их с мнениями друг друга между турами; вопросники от тура к туру могут уточняться; 3) в наиболее развитых методиках экспертам присваиваются весовые коэффициенты значимости их мнений, вычисляемые на основе предшествующих опросов, уточняемые от тура к туру и учитываемые при получении обобщенных результатов оценок. Первое практическое применение метода Дельфи к решению некоторых задач Министерства обороны США во второй половине 40-х годов показало его эффективность и целесообразность распространения на широкий класс задач, связанных с оценкой будущих событий. Недостатки метода Дельфи: 1) значительный расход времени на проведение экспертизы, связанный с большим количеством последовательных повторений оценок; 2) необходимость неоднократного пересмотра экспертом своих ответов вызывает у него отрицательную реакцию, что сказывается на результатах экспертизы. Морфологические методы. Основная идея морфологических методов — систематически находить все «мыслимые» варианты решения проблемы или реализации системы путем комбинирования выделенных элементов или их признаков. Метод морфологического ящика (ММЯ) нашел наиболее широкое распространение. Идея ММЯ состоит в определении всех «мыслимых» параметров, от которых может зависеть решение проблемы, и представлении их в виде матриц-строк, а затем в определении в этой морфологической матрице-ящике всех возможных сочетаний параметров по одному из каждой строки. Получен21
ные варианты могут затем подвергаться оценке и анализу с целью выбора наилучшего. Морфологический ящик может быть не только двумерным. Для организационных систем, систем управления такой многомерный ящик, практически невозможно построить. Поэтому, используя идею морфологического подхода для моделирования организационных систем, разрабатывают языки моделирования или языки проектирования, которые применяют для порождения возможных ситуаций в системе, возможных вариантов решения и нижних уровней иерархической структуры как при моделировании структуры целей, так и при моделировании организационных структур. Примерами таких языков служат: системно-структурные языки (язык функций и видов структуры, номинально-структурный язык), язык ситуационного управления, языки структурно-лингвистического моделирования. Уровни описания систем. При создании и эксплуатации сложных систем требуется проводить многочисленные исследования и расчеты, связанные с: 1) оценкой показателей, характеризующих различные свойства систем; 2) выбором оптимальной структуры системы; 3) выбором оптимальных значений ее параметров. Такие исследования возможны лишь при наличии математического описания процесса функционирования системы, т. е. ее математической модели. Сложность реальных систем не позволяет строить для них «абсолютно» адекватные модели. Математическая модель описывает лишь некоторый упрощенный объект, в котором представлены лишь основные явления, входящие в реальный объект, и лишь главные факторы, действующие на реальную систему. Какие явления считать основными и какие факторы главными — существенно зависит от назначения модели, от того, какие исследования с ее помощью предполагается проводить. Поэтому процесс функционирования одного и того же реального объекта может получить различные математические описания в зависимости от поставленной задачи. Так как математических моделей сложной системы может быть сколько угодно много и все они определяются принятым уровнем абстрагирования, то рассмотрение задач на каком-либо одном уровне абстракции позволяет дать ответы на определенную группу вопросов, а для получения ответов на другие вопросы необходимо провести исследование уже на другом уровне абстракции. Лингвистический уровень описания систем — наиболее высокий уровень абстрагирования. Из него как частные случаи можно получить другие уровни абстрактного описания систем более низкого ранга. 22
Понятие о высказывании на данном абстрактном языке означает, что имеется некоторое предложение (формула), построенное на правилах данного языка. Предполагается, что эта формула содержит варьируемые переменные, которые только при определенном их значении делают высказывание истинным. Все высказывания делят обычно на два типа. К первому причисляют «термы» (имена предметов, члены предложения и т. д.) — высказывания, с помощью которых обозначают объекты исследования, а ко второму — «функторы» — высказывания, определяющие отношения между термами. Отображение множества состояний источника во множество состояний носителя информации называется способом кодирования, а образ состояния при выбранном способе кодирования — кодом этого состояния. Эвристика — это прием, позволяющий сокращать количество просматриваемых вариантов при поиске решения задачи. Причем этот прием не гарантирует наилучшее решение. В настоящее время бурно развивается эвристическое программирование — программирование игровых ситуаций, доказательства теорем, перевода с одного языка на другой, дифференциальной диагностики, распознавания образов, нечеткой логики, нейронных структур. Выбор подходящего метода формального описания при изучении той или иной реальной системы является всегда наиболее ответственным и трудным шагом в теоретико-системных построениях.
ния источников заявок: закрытые – источник в системе и оказывает на нее влияние, открытые – вне системы и не оказывает влияния. По фазам: однофазные – один этап обслуживания, многофазные – два и более этапов. По числу каналов: одноканальные, многоканальные. Потоки событий. Каждому событию соответствует момент t, в который это событие произошло. Т – интервал между двумя моментами времени. Поток событий – независимая последовательность моментов t. Поток событий подразделяются по случайности: регулярные – Т - const, случайные – Т - случайное время; по постоянности вероятностных свойств: стационарные, нестационарные; по связи будущего поведения с прошлым: с последействием, без последействия; по числу заявок в одном событии: ординарные –событию соответствует одна заявка, неординарные - событию соответствует случайное число заявок. Марковским системам характерны марковские процессы, которые имеют важное свойство – отсутствие последействия. Изучение таких систем проводится для определения их вероятностных характеристик. Вероятности состояний таких ситем характеризуют их эффективность и экономическую целесообразность. При моделировании марковских систем используются типовые структуры: одно- и много канальные системы, системы с ограниченной и неограниченной очередью, системы с ограниченным временем ожидания. 2. Динамические процессы и их свойства
1.1. Основные понятия марковских систем Система массового обслуживания (СМО) – структура из обслуживающих каналов, потоков заявок и очередей [7]. Источником является входящий поток заявок (интенсивность потока - λ). Имеется также исходящий поток (интенсивность исходящего потока - µ). Процесс обслуживания в СМО характеризуется числом каналов - n, средним числом занятых каналов -k, производительностью - µ). Дисциплина обслуживания характеризуется правилами, по которым действуют системы массового обслуживания (СМО). Дисциплина может быть: в порядке поступления, случайно, fifo, lifo, с приоритетом – абсолютным или относительным. По условиям ожидания СМО подразделяются на системы с отказами или системы с очередью. По условиям организации очереди: с ограниченной очередью, с ограниченным временем пребывания в очереди. По месту нахожде23
Основные сведения по процессам в задачах моделирования представлены в предыдущем издании “Моделирование процессов и систем” [1]. Здесь приводятся наиболее важные положения для практических приложений, связанных с моделированием. 2.1. Теорема проецирования Для физически реализуемого сигнала, не принадлежащего пространству базисных функций, существует его представление ( ), принадлежащее этому пространству [5]: ( )=
24
( , ) ,
(2.1)
Здесь [ ( ) − ] ⊥
Из свойств случайных процессов, дающих практически реализуемые при моделировании соотношения, необходимо выделить следующие [9].
(ортогонально всем fi ), а норма ( )−
≤
( )−
,
(2.2)
где ( ) – произвольный сигнал, принадлежащий пространству базисных функций. 2.2. Импульсная теорема Если наивысшая частота в спектре процесса Х(t) не больше ωm, то функция X(t) определяется последовательностью своих дискретных значений в моменты, отстоящие друг от друга не более чем на π/ωm с. [8]: ∞
( )=
∞
( ∙
)
[ω ( − ω ( −
)
)]
,
(2.3)
где dt - период дискретности (dt=π/ωm); ωm - предельная круговая частота процесса X(t); k - номер точки отсчета. 2.3. Случайные процессы Все полезные сигналы и помехи в технических кибернетических системах являются в общем случае случайными (стохастическими). Рассматривая процессы неслучайными (детерминированными), мы в определенной мере пренебрегаем их случайными свойствами [9]. Случайные процессы определяются их основной харатеристикой - функцией плотности распределения f(X,t), но исследование случайных процессов с ее помощью - непростая задача, поэтому для большинства практических задач, с определенной степенью допущений, пользуются статистическими характеристиками. К ним относятся: математическое ожидание M(t), дисперсия Dx, корреляционная функция R(τ), спектральная функция S(w). Также особенностью практических задач при моделировании процессов является использование гауссовских процессов, имеющих нормальный закон распределения. Кроме того, весьма важным для удобного математического моделирование является понятие белого шума - это случайный процесс с равномерным распределением спектра мощности во всем диапазоне частот (с постоянной интенсивностью). 25
1. Прохождение процесса через линейную динамическую систему. При прохождении случайного сигнала через линейную динамическую систему (ДС) изменяются его характеристики: математическое ожидание, корреляционная функция, спектральная плотность, взаимокорреляционная функция, взаимоспектральная плотность. При обозначении линейного преобразования оператором L{t} или в частотной области W(jw) выходной процесс определяется выражениями y(t)=L{x(t)}, Y(jw)=W(jw)X(jw). На основании свойств математического ожидания и корреляционной функции имеем изменение этих характеристик в виде M[L{X}]=L{M[X]}, Ry(τ)=LL'{Rx(τ)}, где L' - линейное преобразование по времени t+r. Изменение спектральной плотности определяется в частотной области: Sy(w)=Sx(w)|W(jw)|2, где W(jw) - амплитуднофазочастотная характеристика системы. Взаимоспектральная плотность процессов X и Y имеет вид Sxy(jw)=Sx(w)W(jw), Syx(jw)=Sx(w)W(-jw). На основе этих свойств определяется формирующий фильтр процесса. 2. Формирующий фильтр - это линейная ДС, на входе которой белый шум с интенсивностью Q, а на выходе сигнал со спектральной плотностью Sg(w)=QWg(jw)Wg(-jw), где Wg(jw) - амплитудно-фазочастотная характеристика фильтра. При исследовании результатов моделирования процессов и систем важным является умение практического определения статистических характеристик, в первую очередь математического ожидания, и на его основе - корреляционной и спектральной функций. Поскольку в рамках корреляционной теории процессов в курсе моделирования исследуются стационарные эргодические процессы, то в основе статистического оценивания лежит эргодическая теорема, которая утверждает, что возможно вычисление математического ожидания не только по множеству, но и по времени. При использовании эргодической теоремы процессы представляются дискретными значениями, взятыми через промежутки времени X(tk)=X(k) на основании импульсной теоремы. В этом случае интеграл в формуле математического ожидания вычисляется через сумму. Расчетные формулы статистических характеристик имеют вид. Математическое ожидание ( )= 26
1
( ),
(2.4)
Одним из методов получения математической модели системы или процесса является идентификация. Корреляционная функция ( )=
1 −
( ) ( + ),
(2.5)
где r=0,1,...,m - шаг (m≤0,2n); dt - период дискретности. Спектральная функция ( )=2
+
π
+ (−1)
.
(2.6)
Дисперсия находится через корреляционную функцию или спектральную плотность: ( )=
=
2
1
1 2
+
+
1 2
.
(2.7)
Идентификацией динамической системы (процесса) называется получение или уточнение по экспериментальным данным математической модели (числовых параметров) этой системы или процесса, выраженной посредством того или иного математического аппарата. Идентификация в современном представлении использует аппарат стохастических матричных дифференциальных уравнений (или разностных уравнений) и аппарат матричных линейных преобразований. В общем случае в технике динамической системой называется физическое устройство или совокупность взаимодействующих устройств, в которых протекающие процессы определяются начальными состояниями этих устройств, взаимосвязями между ними и приложенными к системе воздействиями. Состояние динамической системы во времени и пространстве характеризуется переменными, принимающими в каждый момент времени определенные числовые значения. Используются следующие основные математические модели в пространстве состояний. Непрерывная детерминированно-стохастическая динамическая система (ДС) − это система, описываемая линейными дифференциальными уравнениями первого порядка состояния и линейным уравнением выхода. В матричном виде: X′ (t)=AХ(t)+BU(t)+DV(t), Y(t)=CX(t), (3.1)
3. Модели динамических систем и процессов В современной математике используется представление динамических процессов и систем дифференциальными уравнениями в пространстве состояний. Такое описание процессов и систем позволяет легко проводить их цифровое моделирование, используя конечно-разностное представление и проектировать универсальные алгоритмы обработки информации с целью дальнейшего оптимального оценивания параметров систем и процессов [10]. Оптимальные оценки небходимы для организации управления в системах автоматического управления современными методами, а в информационноизмерительных системах для получения достоверных данных об измеряемых физических величинах, для прогнозирования поведения исследуемых явлений и систем, повышения отказоустойчивости обработки информации [11]. Необходимо уметь формировать математические модели различного типа (динамические модели кибернетических систем, процессов) с дальнейшей их реализацией (исследованием) на ПЭВМ путем вычислительного эксперимента. 27
где Х(t) - n-мерный вектор состояния системы; V(t) - r-мерный вектор гауссовских шумов с нулевым средним и корреляционной матрицей E[V(t)Vт(t)]=Q(t) (Е - оператор математического ожидания); Y(t) - m-мерный вектор выхода; A, B, D - матрицы состояния (матрицы коэффициентов); С - матрица линейного преобразования размера m×n. Дискретная детерминированно-стохастическая ДС − это система, описываемая линейными разностными уравнениями первого порядка состояния и дискретным уравнением выхода. Матричный вид соответствует уравнениям: Х(k+1)=FХ(k)+GU(k)+TV(k), Y(k)=CX(k),
(3.2)
где F, G, T, - переходные матрицы. Матрицы F, G, T вычисляются через A, B, D в виде: F=I+Aψdt, G=ψBdt, T=ψDdt, где
28
Ψ=I+A
dt dt 2 dt k + A2 + Ak + ..., 2 6 (k + 1)!
(3.3)
где I - единичная матрица; dt - период дискретности системы (процесса). Период дискретности dt выбирается исходя из полосы пропускания ДС в соответствии с импульсной теоремой. Детерминированной является ДС, у которой отсутствуют шумы возмущения и нет стохастических процессов (или всеми этими факторами можно пренебречь). У чисто стохастической ДС отсутствует детерминированный вектор входных сигналов. Детерминировано-стохастическая система содержит как детерминированные воздействия, так и стохастические процессы. Объектами наблюдения являются информационные процессы (ИП), объекты управления (ОУ), датчики первичной информации (ДПИ), исполнительные устройства (ИУ). Первичной моделью объекта наблюдения типа ИП является спектральная или корреляционная функция. Первичной моделью объекта наблюдения типа ОУ, ДПИ, ИУ является дифференциальное уравнение (или эквивалентная передаточная функция), связывающя вход и выход. Модель объекта наблюдения, или в более общем случае, ДС определяется структурной схемой, приведенной на рисунке 3.1, где X вектор состояния системы; U - вектор входа; V - вектор возмущения (или формирующих Рисунок 3.1. белых шумов для стохастических сигналов); Структурная схема ДС Y - вектор выхода. Связь векторов U, V, Y, X определяется соотношениями (3.1), (3.2). Датчик первичной информации - элемент устройства, преобразующий информацию о физической величине в сигнал, удобный для использования и обработки. Он задается дифференциальным уравнением или передаточной функцией. Передаточной функцией ДПИ является отношение преобразования Лапласа выходного процесса ДПИ к преобразованию Лапласа входного процесса при нулевых начальных условиях. Движением системы называется физический процесс изменения ее переменных во времени и пространстве. Выходные переменные Y(t), управляющие входные воздействия U(t) и возмущающие входные воздействия V(t) рассматриваются в виде соответствующих векторов, которые записываются в виде столбцовых матриц: Y(t)=[y1, y2 , . . . , ym ]T, U(t)=[u1, u2 , . . . , us ]T, V(t)=[v1 , v2 , . . . , vr]T.
29
(3.4)
3.1. Формирующий фильтр стохастического процесса Исходной моделью стохастического процесса является спектральная плотность, но для практического использования в алгоритмах обработки информации, а также для их численного и графического исследования при моделировании используют вторичные модели в виде передаточной функции формирующего фильтра и матричных линейных уравнений [1]. Передаточная функция Wg(s) формирующего фильтра определяется при факторизации исходной спектральной плотности Sg(s)=Wg(s)Wg(-s)Q, где Q интенсивность шума на входе формирующего фильтра; Wg(s), Wg(-s) - дробнорациональные функции, нули и полюсы которых лежат соответственно в левой и правой комплексных полуплоскостях. Учитывая дробно-рациональность спектральной плотности, функцию Sg(w) записывают в факторизованном виде: Sg(w)=C(s/j)/D(s/j)=B(s)/A(s)·B(-s)/A(-s). Из этого соотношения имеем
c0 − c1s 2 + ... + cm ( −1) m s 2 m b0 + ... + bm s m b0 − b1s + ... + bm ( −1) m s m Q. (3.5) ⋅ = d 0 − d1s 2 + ... + d n ( −1) n s 2 n a0 + ... + an s n a0 − a1s + ... + an ( −1) n s n При факторизации спектральной плотности используется следующий алгоритм. С учетом (3.5), где Q=1 − интенсивность входного белого шума фильтра, задача факторизации решается составлением аналитических выражений B(s)B(-s), A(s)A(-s) и систем уравнений относительно bj и aj путем сравнения коэффициентов выражений C(s/j) и B(s)B(-s), а также D(s/j) и A(s)A(-s). Ниже приведены расчетные соотношения для коэффициентов aj. При n=1 a0=(d0)1/2, a1=(d1)1/2. При n=2 a0=(d0)1/2, a1=(2a0-d1)1/2, a2=(d2)1/2. При n>2 система уравнений решается итерационным методом: −для n=3 a0=(d0)1/2, a2=(d2+2a1)1/2, a1=(2a0a2-d1)1/2, a3=(d3)1/2; −для n=4 a0=(d0)1/2, a3=(2d2-d3)1/2, a1=(2a0a2-d1)1/2, a2=(d2-2a0+2a1a3)1/2, a4=(d4)1/2. Для специалистов разных отраслей важным является умение на практике формировать модель динамического процесса высокого порядка в виде передаточной функции. Решение задачи по нахождению передаточной функции формирующего фильтра возможно выполнить с помощью программы факторизации спектральной плотности. Пример такой программы на языке Pascal представлен в [1] на стр.74-75. Эта программа как один из модулей входит в состав многоце30
левой операционной оболочки CAD-MS [9]. Более мобильное программное обеспечение реализуется на основе стандартных электронных таблиц Microsoft Excel. Рассмотрим, как с помощью инструмента Excel решить задачу формирования модели динамического процесса, в случае если задано дробнорациональное выражение спектральной плотности процесса g(t) высокого порядка (не менее шестого). 3.1.1. Пример факторизации спектральной плотности на основе Excel Спектральная плотность исследуемого процесса задана в виде дробнорационального выражения (ω) =
+
+ ω ω + ω +
ω +
ω
.
При n=4 выражение D(s/j)= A(s) A(-s) приобретает вид c0+c1s2+c2s4+c3s6+c4s8=(a0+a1s+a2s2+a3s3+a4s4)(a0-a1s+a2s2-a3s3+a4s4). (3.7) Уравнения для вычисления неизвестных коэффициентов для этого случая представлены в таблице 3.1. Таблица 3.1. Уравнения для факторизации спектральной плотности =
,
=
−2
,
=
+2
−2
,
=
+2
,
=
Применение инструмента электронных таблиц Excel “Поиск решения”. В электронной таблице Excel исходные данные (коэффициенты полиномов C(s), D(s)) размещаются, например, в ячейках B3:B9 (см. рисунок 3.4). Поиск решения производится в изменяемых ячейках I5:I9. Целевые уравнения для поиска решения запрограммированы в ячейках C3:G3.
Заданной спектральной плотности соответствует формирующий фильтр с дробно-рациональной передаточной функцией ( )=
+
+
+
+
+
.
Полином числителя B(s) и полином знаменателя A(s) формирующего фильтра для процесса с заданной спектральной плотностью представляются через нули и полюсы выражения Sg(s) в соответствии со схемой Горнера. Рисунок 3.2. Поиск решения для коэффициентов полинома m/2
b0 + ... + bm s m = bm
∏ ( s − pk ) , k =1
S g (w) =
n/2
a0 + ... + an s n = an
∏ ( s − sk ) ,
(3.6)
k =1
Формулы для расчета в ячейках представлены на рисунке 3.3.
25w2 + 256 , или через s: − 25s 2 + 256 , Sg (s / j) = 8 8 2 5w +12w + 125 5s − 12s2 + 125
где pk, sk - соответственно нули и полюсы выражения Sg(s), находящиеся в левой комплексной полуплоскости (с отрицательными вещественными частями). Для инженерного применения используется вычисление полиномов формирующего фильтра с ипользованием инструмента электронных таблиц Excel “Поиск решения” или “Циклические ссылки”. Эти инструменты, как известно, позволяют решать неявные задачи определения параметров математического функционала итерационными алгоритмами при задании ряда ограничений на параметры. 31
Рисунок 3.3. Формулы для поиска решения
Настройка инструмента “Поиск решения” представлена на рисунке 3.4.
32
3.2. Модели датчиков первичной информации
Рисунок 3.4. Окно настройки параметров “Поиск решения”
Выбор метода “Поиск решения” произведен в окне параметров (рис. 3.5).
Датчики первичной информации, измеряющие динамические параметры объектов наблюдения, кроме внешних воздействий, характеризуются конструктивными силами, проявляющимися только во время динамического движения и зависящими только от технических параметров ДПИ. Свободным движением (или собственным движением) называется динамика ДПИ под влиянием конструктивных сил, которая описывается дифференциальным уравнением (или системой) без правой части. Вынужденным движением называется динамика ДПИ под влиянием внешних сил (входного воздействия g(t) или возмущения v(t)), которая описывается дифференциальным уравнением (или системой) с правой частью. К конструктивным силам относятся: 1) позиционные силы, зависящие от обобщенных координат ДПИ; 2) диссипативные силы, зависящие от первых производных обобщенных координат (скоростей) ДПИ; 3) инерционные силы, зависящие от вторых производных обобщенных координат (ускорений) ДПИ. Датчики первичной информации, измеряющие параметры движения объектов наблюдения, кроме инерционной силы, в качестве конструктивных сил могут иметь: 1) только позиционную силу; 2) только диссипативную силу; 3) обе силы вместе. 3.2.1. Пример составления динамической модели датчика
Рисунок 3.5. Окно выбора метода “Поиск решения”
Правильность полученного решения подтверждается выполнением системы уравнений коэффициентов (см. B3:B9 и C3:G3 (на рисунке 3.2)).
33
Рассмотрим движение рамки гальванометра при измерении тока. На рамку вокруг оси Y действуют следующие силы: 1) сила, пропорциональная протекающему по рамке току − C*i при взаимодействии постоянного тока с магнитным полем постоянного магнита, внутри которого находится рамка (входное воздействие); 2) противодействующая сила пружины, пропорциональная углу поворота рамки и коэффициенту жесткости пружины: − kжa (позиционная сила); 3) противодействующая сила демпфирования, пропорциональная угловой скорости движения рамки: − Kgda/dt, где Kg − коэффициент демпфирования (диссипативная сила); 4) противодействующая сила инерции, пропорциональная ускорению движения рамки и ее моменту инерции: − J(d2a/dt2) (инерционная сила).
34
В каждый момент времени соблюдается правило механики: равенство нулю суммы моментов, действующих на рамку вокруг оси вращения. Математически это имеет вид: J a"+ Kg a' + Kж a = C i. (3.8)
W ( s) =
k чэ k у kио Rн
=
b0
. TJs + Js + k у k ио k ос a 3 s + a 2 s 2 + a0 Для приборных следящих систем прибор первичной информации часто характеризуется структурной схемой, представленной на рисунке 3.7. 3
2
3
Поделив обе части уравнения на J, получим a" + 2hwoa' + wo2a = C i,
(3.9)
где wo=(Kж/J)1/2 - частота собственных колебаний; h=0,5Kg/(KжJ)1/2 − относительный коэффициент затухания (демпфирования) ДПИ. Свободное движение ДПИ, определяемое конструктивными силами, соответствует фундаментальному дифференциальному уравнению a" + 2hwoa' + wo2a = 0.
(3.10)
Получена математическая модель движения рамки гальванометра в виде дифференциального уравнения 2-го порядка. Эта модель является непрерывной, линейной, стационарной. Структурная схема более сложного (реального) ДПИ изображена на рисунке 3.6.
Рисунок 3.6. Структурная схема реального ДПИ
На рисунке обозначено: Wчэ(s) − передаточная функция чувствительного элемента; Wп(s) − передаточная функция преобразователя; Wу(s) − передаточная функция усилителя; Wио(s) − передаточная функция исполнительного органа; Wос(s) − передаточная функция обратной связи; Wв(s) − передаточная функция выходного звена. Часто передаточные функции элементов ДПИ имеют вид: Wчэ(s)=kчэ; Wп ( s ) = 1 / Js 2 ; Wу(s)=kу; Wèî ( s ) = kèî /(Ts + 1) ; Wос(s)=kос; Wв(s)=Rн. Общая передаточная функция в этом случае имеет вид
35
Рисунок 3.7. Структурная схема приборной следящей системы
На рисунке обозначено: Wд(s) − передаточная функция дополнительной связи по управляющему сигналу; Wк(s) − передаточная функция корректирующего устройства (КУ); Wн(s) − передаточная функция неизменяемой части. 3.2.2. Формирование модели датчика методом ЖЛАХ Поскольку частотные характеристики разомкнутой цепи однозначно связаны с передаточной функцией ДПИ, то в них входят все особенности, присущие этой передаточной функции. Из теории, как правило, известны требования к желаемой логарифмической частотной характеристике (ЛЧХ) разомкнутой системы, которая должна обеспечивать оптимальные характеристики качества переходного процесса (минимальное время переходного процесса, приемлемое перерегулирование и запас устойчивости). Для статических и астатических систем желаемая ЛЧХ (ЖЛАХ) определяется коэффициентом усиления K, тремя частотами сопряжения w1, w2, w3 и частотой среза wc. Для примера ЖЛАХ представлена на рисунке 3.8. Выбранная методом ЖЛАЧ структура ДПИ (желаемая передаточная функция разомкнутой системы), включает в себя как неизменяемую часть структуры ДПИ, так и корректирующее устройство (КУ). При этом обеспечение ЖЛАХ возможно путем выбора параметров КУ. Проектирование КУ заключается в определении его передаточной функции с дальнейшей ее технической реализацией или на аналоговых элементах, или в цифровом процессоре. ЛАЧХ корректирующего устройства для случая последовательной коррекции при Woc=1 определяется в виде (3.11).
36
Рисунок 3.9. Логарифмические частотные характеристики: 1) разомкнутой системы; 2) желаемой системы; 3) корректирующего устройства
ЛАХ корректирующего устройства находится путем вычитания из ЖЛАХ характеристики разомкнутой системы (график 3). Передаточная функция КУ по его ЛАХ имеет вид Wê ( s ) =
Рисунок 3.8. Построение желаемой ЛЧХ (ЖЛАХ)
L{KWк(jw)}=L{KWp(jw)}-L{Wн(jw)},
(3.11)
где Wн(jw) - передаточная функция неизменяемой части ДПИ; KWp(jw) передаточная функция разомкнутого ДПИ; L{KWp(jw)}=20lg{KWp(jw)} логарифмическая амплитудно-частотная характеристика (ЛАЧХ) разомкнутого ДПИ. Аппроксимируем ЛАЧХ асимптотами, т.е. прямолинейными отрезками с наклоном 0, 20, 40 дб/декаду. По точкам излома определяются постоянные времени звеньев и затем составляется аналитическое выражение для передаточной функции КУ. Реализация найденной передаточной функции КУ выполняется на пассивных элементах (преимущественно на емкостях и сопротивлениях). При наличии в контуре ДПИ операционного усилителя КУ реализуется также на RC-цепочках с использованием операционного усилителя. Пример. Пусть ДПИ имеет структурную схему, представленную на рисунке 3.6, где передаточные функции элементов ДПИ: Wчэ(s)=m; Wп(s)= 1/ Js2 ; Wу(s)=kу; Wос(s)=kос; Wв(s)=Rн. Общая передаточная функция разомкнутой системы имеет вид K Wð ( s ) = 2 , Js где K = m kу kос Rн. На рисунке 3.9 построена ЛАХ разомкнутой системы (график 1) и ЖЛАХ (график 2). 37
k1 (T1s + 1) , T2 s + 1
где T1=1/w2; T2=1/w3. Техническая реализация КУ выполняется на имеющемся в прямой цепи операционном усилителе с использованием емкостей и сопротивлений (рисунок 3.10).
Рисунок 3.10. Схема КУ
Передаточная функция, полученного КУ
Wê ( s) =
R2 R2C2 s + 1 , R1 R1C1s + 1
где R2C2=T2=1/w3; R1C1=T1=1/w2 . 3.3. Основные матричные модели Для составления алгоритмов обработки информации, а также для исследования движения динамической системы первичную модель, представленную передаточными функциями, преобразуют в матричную модель в пространстве 38
состояний (3.1) или (3.2). Такие преобразования могут быть выполнены различными методами [13]. Широкое распространение методов исследования динамических систем с помощью координат (переменных) состояния в современной теории моделирования обусловлено как методическими соображениями, так и удобством обозначений и простотой проведения анализа динамических свойств системы векторно-матричными методами. С методической точки зрения появляется возможность охарактеризовать динамическую систему понятием "состояния системы", которому соответствует определенная точка в евклидовом пространстве с координатами, являющимися координатами состояния. В этом случае поведение системы (движение), связанное с изменением во времени координат состояния, представляется траекторией, описываемой этой точкой. Применение векторов и матриц позволяет записывать в компактном виде, как математические модели системы, так и их решения. Независимо от физической природы координат состояния, считается, что множество всех комбинаций xi образует некое пространство состояний, т.е. фазовое пространство рассматриваемой системы. Изменение во времени состояния системы определяется вектор-функцией X(t)=Х[x1(t),x2(t),...,xn(t)], являющейся решением исходной системы уравнений вида (3.1). В каждый фиксированный момент времени X(ti ) представляет собой точку фазового пространства RX. Совокупность n линейно независимых векторов в фазовом пространстве образует базис, а каждая компонента произвольного вектора состояния X является проекцией этого вектора на соответствующий вектор базиса. Поскольку координаты xi вектора состояния принимаются как некоторые абстрактные величины, лишенные физического смысла, то их можно подвергать различным линейным преобразованиям, и, в частности, изменению базиса с помощью неособого преобразования Z=RX при det R ≠ 0 соответствующего переходу к новым фазовым координатам zi. Например, произведя в уравнениях (3.1) замену переменных и учитывая, что для неособенных преобразований Z=RX будет иметь место Z=R-1Z получаем математическую модель линейного объекта в новом базисе: ̇= -1
-1
где A'=RAR , B'=RB, C'=CR .
=
+
39
,
(3.12)
Из сравнения уравнений следует, что переход к новому базису не отражается на входных воздействиях U и выходных переменных Y, характеризующих изменение величин, доступных наблюдению. Эквивалентность уравнений состояния позволяет широко использовать указанные преобразования для приведения уравнений состояния к виду, удобному для использования методов матричного исчисления. Записанные уравнения состояния системы не единственны и существуют различные комбинации координат состояния, полностью характеризующих поведение динамической системы. Но при этом любые две системы координат состояния должны быть связаны между собой однозначно. 3.3.1. Каноническое преобразование матричных моделей Рассмотрим алгоритм преобразования одномерной матричной модели X'=AX+Bu динамической системы к канонической форме следующего вида [14]: dZ = A' Z + B' u; Y = C' Z , dt 1 0 ... 0 0 0 0 1 ... 0 0 0 . , A' = ... B ; ' = ... − g 0 − g1 ... − g n −1 1 где g0 ... gn-1 - коэффициенты характеристического уравнения матрицы А. Алгоритм преобразования. 1) Вычисляется квадратная матрица управляемости 2-го рода S = [B|AB|...An-1B]. 2) Определяется матрица Ф с помощью следующего линейного преобразования 0 0 0 ... − g 0 1 0 0 ... − g . 1 Φ= ... ... 0 ... 1 − g n −1
Коэффициенты g0 ... gn-1 в матрице Ф являются коэффициентами характеристического уравнения матрицы А:
40
x&1 = a12 x 2 x& 2 = a 21 x1 + a 22 x2 + a 23 x 3 + a 3 δ b ; x& 3 = a 31 x1 + a 33 x3 ,
det[sI-A] =sn+gn-1 sn +…+g0= 0. 3) Определяется матрица A' в виде A' = ФT.
где а12=-1, а21=-а2, а22=-а1, а23=а2, а31=а4, а33=-а4. Система уравнений (3.14) в векторно–матричной форме имеет вид
4) Вычисляется матрица линейного преобразования К g1 g K = 2 ... gn
g2 g3
...g n −1 ...g n
0
...0
gn 0 . ... 0
X& = AX + Bδb ,
X = x1
3.3.1.1. Каноническое преобразование матричной модели в Excel Рассмотренный алгоритм легко реализуется с помощью электронных таблиц Microsoft Excel. Рассмотрим конкретный пример динамической системы, матричная модель которой получена на основе анализа физики движения объекта. Пример. Вращательное движение ЛА в вертикальной плоскости задаётся в виде системы непрерывных дифференциальных уравнений и уравнений измерения. Уравнения движения ЛА в продольной плоскости имеют вид [15]. (3.13)
где ϑ – угол тангажа; θ – угол наклона вектора скорости к горизонту; δв – угол отклонения руля высоты; ai – динамические коэффициенты, зависящие от аэродинамических параметров самолёта. Вводя новые обозначения для переменных (x1=ϑ, x2=ϑ', x3= θ), запишем систему (3.13) в нормальной форме Коши:
41
(3.15)
где
5) Вычисляется матрица C' в виде C' = KCT.
&& + a ϑ& + a ϑ − a θ = a δ ; ϑ 1 2 2 3 b &θ + a ϑ + a θ = 0, 4 4
(3.14)
x2
x3 ; B = 0 T
a3
T 0 ;
0 A = a 21
a12 a 22
a 31
0
0 a 23 . a 23
Реальные значения аэродинамических коэффициентов для легкого ЛА a2=4,2, a1=1,76, a2=4,2, a4=0,77, a3=-7,4. Уравнения измерений y1=x2’+n1, y2=x3+n2, где n1, n2 - белые гауссовские шумы с интенсивностями R11, R22. Матричные уравнения движения и измерений X'=AX+BU, Y=CX+N, где матрицы A, B, D, C имеют вид: −1 0 0 0 0 1 0 . A = − 4,2 − 1,76 4,2 , B = - 7,4 , C = 0 0 1 0 − 0,77 0,77 0
В электронной таблице Excel (см. рис.3.11) строки 2-4 содержат исходные данные. В строках 7-9 запрограммированы основные матричные формулы канонического преобразования S, Ф, G, K. S´ S´ S´ Ф´ K´
A7:A9 B7:B9 C7:C9 E7:G9 K7:M9
=E2:E4 =МУМНОЖ(A2:C4;E2:E4) =МУМНОЖ(МУМНОЖ(A2:C4;A2:C4);E2:E4) =МУМНОЖ(МУМНОЖ(МОБР(A7:C9);A2:C4);A7:C9) =МУМНОЖ(A7:C9;H7:J9) .
42
Доказательство. Рекуррентная венно из системы уравнений I= sn: sn-1: gn-1I= s0: g1I= s0: g0I=
формула (3.16) вытекает непосредстCn-1 , -Cn-1A+Cn-2, -C1A+C0 , -C0A .
При k=n выражение (3.17) может служить для проведения численного контроля. Доказательство формулы следует из соотношений: det(sI-A)=spur adj(sI-A).
(3.18)
Рисунок 3.11. Алгоритм канонического преобразования в Excel
Результаты канонического преобразования с помощью матриц S, Ф, G, K получены в строках 12-14. A´ A12:C14 =ТРАНСП(E7:G9) C´ F12:H14 =МУМНОЖ(G2:I3;K7:M9) A´ I12:K14 =МУМНОЖ(МОБР(K7:M9);МУМНОЖ(A2:C4;K7:M9))
В левой части здесь стоит производная по s характеристического многочлена; правая же часть преобразуется в соответствии с (3.18). Приравнивая коэффициенты при степенях Sn-k-1, получаем (nk) gnk=spurCn-k-1, k=0,...,n-1. Отсюда вытекает (3.17) с помощью подстановки (3.16). Формулы (3.16) и (3.17) представляют собой простой способ вычисления выражений det(sI-A) и adj(sI-A). А соотношение: (sI-A)-1=[det(sI-A)]-1adj(sIA) дает обратную матрицу (sI-A)-1, соответствующую преобразованию Лапласа переходной матрицы дифференциального уравнения
Коэффициенты матрицы G для вычисления K берутся из матрицы Ф. 3.3.1.2. Алгоритм Сурье-Фадеева для определения коэффициентов Алгоритм Сурье-Фадеева позволяет вычислить коэффициенты характеристического полинома квадратной матрицы независимо от вычисления матрицы Ф (это бывает необходимо для получения канонического преобразования в другой матричной форме). Такая же задача часто возникает и при проектировании матричных моделей нетрадиционного вида. Теория Сурье-Фадеева [16] говорит о том, что для любой невырожденной квадратной матрицы А размером nxn коэффициент gn-k характеристического полинома: sn+gn-1·sn-1+...+g1·s+g0 и матричный коэффициент Cn-k матрицы adj(sI-A) в уравнении adj(sI-A)=Cn-1 sn-1+Cn-2 sn-2+...+C1s+C0 удовлетворяют при k=1,...,n следующим соотношениям: Cn-k-1=Cn-k A+gn-k I, Cn-k=I, C-1=0, gn-k=-(1/k)spur(Cn-k A).
43
(3.16) (3.17)
X'=Ax(t). 3.3.1.3. Продолжение примера Вычисление коэффициентов характеристического полинома квадратной матрицы A на основе алгоритма Сурье-Фадеева легко программируется в электронной таблице Excel. Строки 18-20 и 34-36 в электронной таблице (см. рис.3.12) заполняются вручную на основании исходных данных. Также по исходным данным заполняется блок матрицы C-1 (ячейки A30-C32). Затем в строках 22-24 реализуются матричные формулы (коэффициенты характеристического полинома в электронной таблице Excel обозначены через αi ). A22:C24 E22 F22:H24
=МУМНОЖ(A18:C20;E$2:G$4)+A$34:C$36*E22 =-СУММ(H24;G23;F22)/A21 =МУМНОЖ(A18:C20;E$2:G$4).
Ввод формул в строки 26-28, осуществляется путем простого копирования строк 22-24. 44
Рисунок 3.12. Алгоритм Сурье-Фадеева в Excel
В результате копирования строк 22-24 получаются результаты в строках 26-28 и 30-32 (см. рис.3.13). Это эффект относительной и абсолютной адресации Excel.
Рисунок 3.14. Алгоритм Сурье-Фадеева в Excel (окончание)
3.4. Свойства матричных моделей
Рисунок 3.13. Алгоритм Сурье-Фадеева в Excel (продолжение)
Задача решена! Получены коэффициенты характеристического полинома матричной модели, которые могут быть использованы для канонического преобразования. Полная картина алгоритма Сурье-Фадеева представлена на следующей скрин-копии (рисунок 3.14).
В общем виде детерминированная математическая модель линейной стационарной динамической системы представляется либо в виде одного уравнения dny dy d m g (t ) d r f (t ) a0 n + K + an −1 + a n y = b0 + K + bm g (t ) + β 0 + K + β r f (t ), (3.19) m dt dt dt dt r либо в виде системы уравнений, приведённой к нормальной форме Коши: x&1 = a11 x1 + a12 x 2 + K + a1n x n ; x& 2 = a 21 x1 + a 22 x 2 + K + a 2 n x n ; KKKKKKKKKKKKK x& n = a n1 x1 + a n 2 x 2 + K + a nn x n .
(3.20)
Причём в правых частях не обязательно присутствуют все n переменных, т.е. часть из коэффициентов ai j равны нулю. В то же время в некоторых уравнениях добавляются задающие gi (t) и возмущающие vi (t) воздействия. Характеристическое уравнение такой системы имеет вид
45
46
a11 − λ D (λ ) =
a21 L
L
a1n
a22 − λ L L L
a2 n L
a12
an1
an2
(3.21)
= 0,
L ann − λ
или в развёрнутом виде a 0 λn + a1λn −1 + K + a n −1λ + a n = 0.
(3.22)
Как отмечалось выше, система уравнений (3.20) может быть записана и в матричной форме (3.23) X& = AX , а её характеристическое уравнение (3.21) соответственно в виде
откуда следует, что элемент hi j матрицы H(s) представляет собой преобразования по Лапласу импульсной переходной функции по i-й координате состояния относительно j-го входного сигнала при равенстве нулю всех других входных сигналов. Рассмотрим взаимосвязь между передаточными матрицами Н(s), W(s) и матрицами во временной области A, B и C , для чего применим к математической модели объекта преобразование Лапласа: sX ( s) − x( 0) = AX ( s ) + BU ( s); Y ( s ) = CX ( s ).
Если принять начальные условия нулевыми, т.е. x(0)=0, то вводя понятие единичной матрицы I , получаем sX(s)-AX(s)=BU(s) и далее (sI-A)X(s) = BU(s). Окончательно X ( s ) = ( sI − A) −1 BU ( s), Y ( s ) = C ( sI − A) −1 BU ( s ).
D (λ ) = det( A − λ E ) = 0,
(3.24)
(3.27)
В соответствии с (3.27) имеем
где a11
a12
K
a1n
1
0
K
0
a A = 21 K
a 22 K
K K
a 2n K
0
1
K
0
a n1
an2
K
a nn
,
E=
K K K K 0
0
K
,
1
λi - корни характеристического уравнения (полюсы передаточной функции), называемые в матричном исчислении собственными значениями или характеристическими числами матрицы A. Матричная запись уравнений весьма удобна и для представления математических моделей систем в области изображений по Лапласу. При этом практически все формулы для преобразований по Лапласу скалярных переменных справедливы и для случая матриц. Обозначим через X(s) n-мерный вектор состояния в области изображений Лапласа, через U(s) – p-мерный вектор входных переменных и через Y(s) mмерный вектор выходных переменных. Соотношение между этими векторами устанавливается передаточными матрицами H(s) и W(s) типа n × m и r × m в виде (3.25) X ( s ) = H ( s )U ( s ), (3.26) Y ( s ) = W ( s )U ( s ),
47
H ( s ) = ( sI − A) −1 B ;
(3.28)
W ( s) = C ( sI − A) −1 B,
(3.29)
где (sI-A)-1 есть обратная матрица по отношению к матрице (sI-A), равная на основании правил матричного исчисления отношению присоединённой матрицы ( sI − A)' к определителю матрицы (sI-A), т.е. ( sI − A) −1 =
( sI − A)' . det( sI − A)
Рассмотренный выше алгоритм Сурье-Фадеева, позволяет без труда находить обратную матрицу и получать, таким образом, все рассмотренные здесь передаточные функции и в целом решение дифференциальных уравнений относительно любой из компонент вектора состояния и относительно выхода. 3.5. Методы формирования матричных моделей Рассмотрим всего несколько методов определения детерминированных математических моделей, выраженных через координаты состояния для ли-
48
нейных стационарных систем при условии, если заданы их передаточные функции или дифференциальные уравнения вида D ( s ) y ( s ) = B ( s )u ( s ). Это, прежде всего метод вспомогательной переменной и метод нормальной формы Коши [1]. Для этих методов рассматриваем передаточную функцию в виде Y ( s) B( s) b0 + b1s + ... + bm s m (3.30) W ( s) = = = . U ( s) D ( s) d 0 + d1s + ... + d n s n
шения, требуемые для реализации матричной модели. Универсальные матричные уравнения имеют традиционный вид: X′=AX+BU, y=CX, где матрица A, определяется из соотношения (3.31), а матрицы B и C имеют вид: 0 .... B = Cn−m , C = [1,0,...,0 ] , .... Cn
Соответствующее дифференциальное уравнение определяется на основе свойств преобразования Лапласа: dny(n)(t)+...+d0y(t)=bmu(m)(t)+...+b0u(t).
где коэффициенты матрицы B определяются следующими соотношениями:
3.5.1. Метод вспомогательной переменной Модель в пространстве состояний методом вспомогательной переменной формируется при обозначении y(s)=B(s)/D(s), где B(s), D(s) полиномы соответственно степени m и n. При замене переменной R(s)=u(s)/D(s), получится дифференциальное уравнение относительно R(t) без производных в правой части dnR(n)+...+d0R=u(t). При этом выражение для y(t) также не содержит производных в правой части: bmR(m)+...+b0R=y(t). Матричная модель при этом представляется уравнением состояния и уравнением выхода: X′=AX+Du, y(t)=CX, где матрицы A, D, C cоответственно равны: 0 1 ... 0 0 (3.31) A = ... , D = ... , − d − d − d 1 1 0 ... n −1 d n d n d n d n
C = [b0 ...bm , 0..
0] .
Полученная матричная модель является универсальной, легко реализуемой при моделировании на компьютере. Недостатком метода является необходимость того, что порядок числителя исходной передаточной функции должен быть меньше порядка знаменателя. 3.5.2. Метод нормальной матричной формы Коши Теория формирования матричной модели методом нормальной формы Коши подробно рассмотрена в [1]. Здесь приводятся лишь основные соотно49
(3.32)
C0 =
j−1 b− a−+ bn , C j = n j − ∑ n j k Ck . an k =0 an an
(3.33)
Выходной сигнал системы в общем случае: y (t ) = x1 + bn u (t ). an 3.5.3. Метод канонического разложения Вначале для простоты положим, что M(s)=1, а характеристическое уравнение D(λ)=0 имеет простые корни λi . В этом случае n 1 y= u, а D ( p ) = ∏ ( p − λ i ) , откуда после разложения на простые дроби D( p ) i =1
n ci u (t ). y (t ) = ∑ i =1 p − λ i Если положить, что xi ( t ) = 1 u( t ) , то p − λi
(3.34)
n
y (t ) = ∑ ci xi (t ).
(3.35)
i =1
Согласно уравнению (3.35) переменная xi удовлетворяет дифференциальному уравнению первого порядка:
x&i − λi xi = u , i = 1,2,K, n, 50
(3.36)
а это значит, что уравнение (3.36) эквивалентно уравнению состояния вида (3.14), т.е. X& = AX + BU (3.37) , y = CX где λ1 0 L 0 1 0 λ2 L 0 1 A= = Λ, B = , C = c1 c2 L cn . L L L L M 0 0 L λn 1 На рисунке 3.15 представлена структурная схема системы, соответствующая уравнениям (3.37). Хотя данный способ справедлив как для действительных, так и для комплексных корней λi , применять его в последнем случае не рекомендуется, так как вводить в рассмотрение комплексные координаты состояния весьма неудобно. Если характеристическое уравнение имеет кратные корни или передаточная функция имеет нули (m≠ 0), то метод разложения на простые дроби остается справедливым. Для нестационарных систем метод канонического разложения не применяется.
W (s) =
T12T2 и λ1, 2 = − 1 , λ 3 = − 1 . T1 T2 (T1s + 1) 2 (T2 s + 1)
Требуется: найти уравнения состояния и передаточную матрицу. Представим передаточную функцию через собственные значения в виде суммы простых дробей. 1 T12T2 c1 c2 c3 = = + + = W (s) = (T1 s + 1) 2 (T2 s + 1) ( s − λ1 ) 2 ( s − λ 3 ) ( s − λ1 ) 2 ( s − λ1 ) ( s − λ 3 ) =
c1 (s − λ 3 ) + c2 ( s − λ1 )( s − λ 3 ) + c3 ( s − λ1 ) 2 . ( s − λ1 ) 2 ( s − λ 3 )
Коэффициенты находятся из соотношений c1 ( s − λ 3 ) + c2 ( s − λ1 )( s − λ 3 ) + c3 ( s − λ1 ) 2 = 1; c1 =
1 −1 , c2 = = −c3. λ1 − λ 3 ( λ1 − λ 3 ) 2
Таким образом, имеем x&1 = λ1 x1 + x2 x&2 = λ 2 x2 + u или x&3 = λ3 x3 + u
0 x&1 λ1 0 0 x1 x&2 = 0 λ 2 0 ⋅ x2 + 1 u, 0 0 λ 3 x3 1 x&3
а наблюдаемая переменная y = c1 c2
c3 X .
На рисунке 3.16 представлена структурная схема заданной системы, математическая модель которой получена в канонической форме.
Рисунок 3.15. Схема формирования модели системы каноническим методом
Пример. Дана передаточная функция системы
51
Рисунок 3.16. Схема формирования модели для примера 52
Передаточную матрицу найдем в следующем виде. ( s − λ1 ) −1
W ( s) = C ( sE − A) B = c1 c2
= c1 c2
c3 ⋅
0 0
−1
c3 ⋅
0 0
=
0
(s − λ2 ) 0 ⋅1 = 0 (s − λ3 ) 1 1 ( s − λ1 )
~ ( sE − A) c3 B = c1 c2 det( sE − A)
0
1 ( s − λ1 )2 1 ( s − λ2 ) 0
Рисунок 3.17. Схема формирования модели
или в соответствии с (3.38)
0 0 1 (s − λ3 )
0 ⋅1 =
λ1 λ2 − γ2
1
A=
c1 c2 c3 + + = W (s) 2 ( s − λ1 ) ( s − λ1 ) ( s − λ 3 )
0
0
0
L
λ1 − γ1 λ2 − γ 2
0
0 0 0 0 , B = λ3 − γ 3 , C T = . M L L L L k 0 L λn 0
λ2 0 L λ3 − γ 3 λ3 L
L
L
0
0
(3.40)
Например, при n= 4, m= 2 3.3.4. Метод разложения на простые множители Известно, что передаточную функцию системы можно выразить через ее нули γi , и полюсы λi, т.е.
W (s) =
m M ( s ) b0 s m + L + bm (s − γi ) n 1 . = = k ∏ ∏ n D( s ) a0 s + L + an i =1 ( s − λ i ) i = m +1( s − λ i )
вующая передаточной функции (3.38), принимает вид, представленный на рисунке 3.17, а уравнения состояния будут
x&1 = λ1 x1 + (λ1 − γ1 )u; x&2 = λ 2 x2 + (λ 2 − γ 2 ) x1 + (λ 2 + γ 2 )u;
53
0 λ2 1 0
0 0 λ3 1
0 λ1 − γ 2 0 0 λ2 − γ 2 0 , B= , CT = . 0 0 0 λ4 0 k
λ1
0
0
0
1
λ2
0
0
0 0
1 0
λ3 1
0 λ4
Если М(s)=1, то (3.38)
s − γi λ − γ i , то структурная схема системы, соответстТак как = 1+ i s − λi s − λi
LLLLLLLLLLLLLLLLL x&n = λ n xn + xn −1 ; y = kxn
λ1 λ2 − γ 2 A= 0 0
x&1 = λ1 x1 + u x&2 = λ 2 x2 + x1 x&3 = λ3 x3 + x2 , x&4 = λ 4 x4 + x3 y = x4
A=
0
1 , B=
0 0 0
, CT =
0 0
.
1
3.5.5. Метод аналогового моделирования (3.39)
Метод основан на использовании приемов аналогового моделирования, когда математическая модель системы, заданная дифференциальными уравнениями, реализуется с помощью обратных связей на суммирующих, инвертирующих и интегрирующих типовых звеньях. Уравнения состояния записываются в этом случае в соответствии со схемой аналогового моделирования без предварительного разложения передаточной функции на множители.
54
Пример. Дано дифференциальное уравнение системы, записанное в операторной форме (s3+a1s2+a2s+a3)y=(b0s2+b1s+b2)u. Требуется получить уравнения состояния. Решение: в соответствии с заданным дифференциальным уравнением составляем схему аналогового моделирования (рисунок 3.18), на основании которой уравнения состояния запишутся в виде x&1 = x2 − a1 x1 + b2u ;
x& 2 = x3 − a2 x1 + b1u ;
x&3 = − a3 x1 + b0u ;
y = x1 ,
т.е. − a1 1 0 b2 A = − a2 0 1 , B = b1 , C = 1 0 0 . − a3 0 0 b0
помощью фазового портрета на фазовой плоскости, а при n>2 выходная переменная отображается траекториями в n – мерном фазовом пространстве. Очень удобно применять нормальную форму записи уравнений состояния для многомерных систем с несколькими входами и выходами. Итак, задаваясь при n
D( p ) = ∑ ai p n −1
в
качестве
координат
состояния
i =0
x1 = y , x2 = x&1 , x3 = x& 2 , L, xn = x&n−1 , получаем 0 0
A= L − an a0
1 0
L L
0 0
0 0
L L L , B= M , C= 1 0 L 0. 1 − an −1 − a1 L a0 a0 a0
(3.41)
Структурная схема аналогового моделирования объекта (системы), уравнение состояния которого записано в нормальной форме, представлена на рисунке 3.19.
Рисунок 3.18. Схема аналогового моделирования
3.5.6. Нормальная форма записи уравнений состояния Под нормальной формой записи уравнений состояния подразумевается тот случай, когда в качестве координат состояния принимаются выходная переменная и (n-1) её производных. Преимущества нормальной формы заключаются в простоте представления исходных дифференциальных уравнений даже тогда, когда они являются нелинейными или нестационарными. Например, для системы второго порядка изменение состояния может быть представлено с
55
Рисунок 3.19. Схема моделирования системы с нормальной формой
Можно представить бесконечное множество систем с матричной математической моделью общего вида, которые будут между собой эквивалентны, так как отличаются друг от друга только выбором базиса пространства состояний.
56
4. Расчет основных характеристик процессов и систем С учетом формулы вычисления каждого из интегралов имеем 4.1. Дисперсия стохастического процесса через вычеты Вычисление дисперсии процесса g(t) и затем среднеквадратического отклонения производится при нахождении интеграла через вычеты [17]. Практический пример для 4-й степени w спектральной плотности рассмотрен в [18]. Здесь рассмотрим более сложный пример для спектральной плотности (4.3). ∞
2π ∫
Дисперсия процесса Dg = 1
−∞
25w 2 + 256 5w8 + 12w 2 + 125
dω .
(4.1)
=
Для расчета примем
Dg =
1 2 jπ
∫
− j∞
B ( s) B (− s) ds = A( s) A( − s)
n/2
∑ Resk A(s) A(−s) . C ( s)
Введем в рассмотрение полиномы для k-го шага
Bk ( s) = b1k s k −1 +,..., bkk . (4.2)
Коэффициенты полиномов определяются рекуррентно из уравнений:
Ak −1 ( s ) = Ak ( s) − αk A *k ( s);
(4.3)
(4.4)
a0k bk , β k = 1k , k a1 a1
aik+1 , åñëè i ÷åòíî, aik −1 = k ai +1 - α k aik+2 , åñëè i íå÷åòíî;
(4.7)
bik+1 , åñëè i íå÷åòíî, bik −1 = k bi +1 - β k aik+1 , åñëè i ÷åòíî.
Острем разработал алгоритм расчета дисперсии стохастического процесса, заданного дробно-рациональной спектральной плотностью [19]. Соотношение для расчета имеет вид j∞
57
αk , βk , aik −1 , bik −1
расчитываются по следующим формулам: αk =
4.2. Дисперсия стохастического процесса алгоритмом Острема
j∞
Bk −1 ( s) = Bk ( s) − βk A *k ( s). где A *k ( s ) = [ Ak ( s) − (−1) k A *k (− s )] / 2. Коэффициенты
Вычеты в кратных (m-кратных) полюсах:
n B( s ) B( − s ) 1 1 Dg = S ( w ) dw = dw = Ik . ∑ 2πj −∫j∞ 2πj −∫j∞ A( s) A(− s) k =1
(4.6)
Bn ( s ) = b1n s n −1 +,..., bnn .
Интеграл вычислим через вычеты по полюсам левой комплексной полуплоскости. Вычеты в простых полюсах:
d m −1 C ( s) m Resk [Sg ( s)] = lim ( s − sik − ) . A( s) A( − s) s → sik − ds
.
Ak ( s) = a0k sk + a1k s k −1 +,..., akk ;
k =1
C ( s) Res k [Sg ( s )] = lim ( s − sik − ) . s → sik − A( s) A(− s )
=
An ( s ) = a0n s n + a1n s n −1 +,..., ann ;
Используя факторизацию спектральной плотности, получим j∞
β , 2α
(4.5)
4.2.1. Реализация алгоритма Острема на основе Excel Алгоритм Острема хорошо программируется как на языках высокого уровня Pascal, C++, так и средствами программирования Excel. Пример. Пусть спектральная плотность процесса имеет вид 58
S g ( w) =
w2 + 0,25 . w4 + 1,98w2 + 1,0201
В ячейках A8:C9 формируются полиномы A2(s) B2(s). Расчетные формулы вводятся в ячейках A11:C12, для αk, βk в ячейках E10 и H10. Скрин-копия с расшифровкой формул представлена на рисунке 4.3.
Соответствующий формирущий фильтр
Wg ( s ) =
s + 0,5 . s + 2 s + 1,01 2
Так это выглядит в Excel:
Рисунок 4.3. Реализация алгоритма Острема в Excel (продолжение) Рисунок 4.1. Исходные данные для алгоритма Острема в Excel
Коэффициенты полиномов Ak(s), Bk(s) определяются рекуррентно из уравнений (4.7). Исходные полиномы составлены на основе вычисленной передаточной функции Wg(s). ( )= + ( ) = 0+
+
+
=
+ 2 + 1,01, = + 0,5.
Расчет в электронной таблице (см. рисунок 4.2)
Распространение формул на рекуррентный шаг k=1 производится путем простого копирования строк 10, 12 в строки 13, 15. Результаты вычисления дисперсии при использованиия прикладной программы Astrom.exe [19] в данном случае использованы для контроля правильности программы Excel. Исходные данные для решения задачи формируются в файле S(w).dat и имеют следующий вид: 1 1 1
2 0,5 2
порядок системы полином Bn(s) 1.01 полином An(s)
Результаты вычислений дисперсии при этом получены в файле Astr.dat. k=2 1.00000 2.00000 1.01000 1.00000 0.50000 a[2]=0.50000 b[2]=0.50000 2.00000 1.01000 0.50000 D= 2.5000E-0001 a[1]=1.98020 b[1]=0.49505 1.01000 D= 3.1188E-0001 Рисунок 4.2. Реализация алгоритма Острема в Excel 59
60
Пример. Расчет дисперсии стохастического процесса на выходе динамической системы. Исходные данные: Sg(w) - спектральная плотность входного процесса динамической системы, W(jw) - передаточная функция динамической системы: w 2 + 0,25
Sg ( w) =
w + 1,98w + 1,0201 4
2
, W(s) =
2s + 12 x( s) . = g ( s) 3s 2 + 24s + 21
1. Дисперсия стохастического процесса на выходе динамической системы находится по спектральной плотности выходного процесса Sx(w). Определим спектральную плотность выходного процесса по формуле из [1], представленной на стр.18: Sx(w)=Sg(w)|W(jw)|2. При этом рассчитаем сначала |W(jw)|2:
W ( jw) = 2
144 + 4 w 2 . 441 + 450w 2 + 9 w 4
Учитывая |W(jw)|2, Sg(w), найдем An(s), Bn(s) где s=jw: Рисунок 4.4. Дисперсия выхода в алгоритме Острема (Excel)
An ( s) = (1,01 + 2 s + s 2 )( 3s 2 + 24 s + 21) = 3s 4 + 30 s 3 + 72,03s 2 + 66,24 s + 21,21;
При использовании прикладной программы Astrom.exe исходные данные в файле S(w).dat имеют следующий вид:
Bn ( s) = ( 0,5 + s)( 2 s + 12 ) = 2 s 2 + 13s + 6.
Реализация алгоритма острема в Excel для порядка выше 2, также не вызывает трудностей. Рассмотрим возмость построения алгоритма для n>5: ( )= +
=
+
+
+
+ ( )=
+
+
+
+ +
(
+
(
+
+
+
+
+
)=
+
)=
.
В этом случае надо заполнить формулами рекуррентного вычисления коэффициентов ak, bk на значительно больший диапазон (например, для n=6). Это представлено в следующей скрин-копии.
61
4 0 3
2 30
13 72.03
6 66.24
21.21
{порядок системы} {полином Bn(s)} {полином An(s)}
Результаты вычислений дисперсии получены в файле Astr.dat k=4 3.00000 30.00000 72.03000 66.24000 21.21000 0.00000 2.00000 13.00000 6.00000 a[4]=0.10000 b[4]=0.00000 30.00000 65.40600 66.24000 21.21000 2.00000 13.00000 6.00000 D= 0.0000E+0000 a[3]=0.45867 b[3]=0.03058 65.40600 56.51153 21.21000 13.00000 5.35144 D= 1.0193E-0003 a[2]=1.15739 b[2]=0.23004 56.51153 21.21000 5.35144 D= 2.3881E-0002 a[1]=2.66438 b[1]=0.25231 21.21000 D= 3.5827E-0002 62
Результат вычислений дисперсии стохастического процесса на выходе динамической системы получен, как и при расчетах в Excel (Dx=0,036).
откуда получим уравнение относительно wmax 4 2 0,00098wmax − 3,998wmax − 0,999 = 0 ,
4.3. Расчет частоты спектра и периода дискретности процесса Оценивание максимальной частоты спектра стационарного стохастического процесса и допустимого периода дискретности из условия заданной точности моделирования [20]. Максимальная частота спектра процесса (частота дискретизации) wmax при динамической работе системы (в данном случае формирующего фильтра) определяется при условии ослабления процесса с максимальной частотой по отношению к процессам проходящим без ослабления до уровня погрешностей при численном решении задачи моделирования процессов: |W(jwmax)|2=δ|W(jw0)|2 ,
(4.8)
где w0 - частота, для которой АФЧХ аппроксимируется горизонтальной асимптотой, δ – относительный уровень ослабления сигнала на частоте дискретизации. Пример. Пусть процесс задан спектральной плотностью Sg(w)=(w2+0,25)/(w4+1,98w2+1,0201). Передаточная функция формирующего фильтра для такого процесса имеет вид Wg(s)=(s+0,5)/(s2+2s+1,01). Зададим δ на уровне 10-3. Определим модуль амплитудо-фазочастотной характеристики (АФЧХ) как отношение модуля числителя к модулю знаменателя. Учитывая Sg(w)=Wg(jw)Wg(-jw)=|Wg(jw)|2, получим для квадрата АФЧХ: |Wg ( w)|2 =
0,25 + w2 4w2 + 1 . = 0,245 2 0,98w4 + 1,94w2 + 1 w + 1,98w + 1,0201 4
При w0=0 АФЧХ не зависит от w, поэтому |W(jw0)|2=0,245. Для расчета wmax из (4.1) получим соотношение: 2 4wmax +1 4 0,98wmax
2 + 1,94wmax
63
+1
= 10− 3 ,
или
4 2 wmax − 4079,59wmax − 1019,39 = 0 .
Из
этого
уравнения
2 wmax =4079,84 или wmax=63,87 р/сек. В соответствии с импульсной теоремой
([1] стр.12) период дискретности процесса определяется в виде dt=1/(2Fm)=π/wmax=0,049 c. В соответствии с рассмотренной методикой расчета составлена программа Frequenc (табл.1.4). Входные данные (коэффициенты передаточной функции) задаются в файле Wg(s).dat. В данном случае: 1 1 2 0.5 1 1.01
0.001 2
{число вариантов} {порядок числителя, порядок знаменателя, погрешность} {коэффициенты числителя} 1 {коэффициенты знаменателя}
Результаты расчета с помощью программы Frequenc.exe формируются в файле Wc-out.dat и имеют следующий вид: Computing Max Frequence dynamic system (Wc) and time of diskretization (dt) Variant 1. Computing Wc,dt --------------------------------------------------W(s)-Function of dynamic system 5.00E-0001 1.00E+0000 1.01E+0000 2.00E+0000 1.00E+0000 K^2=0.2450740 |Wа(jw)|^2-Qwadrat of module AFFX Wp(jw) (Co+,...CmW^(2m))/(Do+,...DnW(2n)) 1.00E+0000 4.00E+0000 1.00E+0000 1.94E+0000 9.80E-0001 Biqwadrat equation of Wc Wc^4-4078.420*Wc^2-1019.080=0 Qwadrat of poluse equation -2.50E-0001 0.00E+0000 j 4.08E+0003 0.00E+0000 j Max Frequence dynamic system Wc= 6.386E+0001 Time of diskretization dt= 4.919E-0002
64
4.4. Расчет непрерывной и дискретной матричной модели Пример. Задана математическая модель объекта наблюдения в виде передаточной функции следующего вида W (s) =
h( s ) 0,5 + 16s = u ( s) + v( s) s 4 + 4,85s 3 + 11,8s 2 + 16,6s + 11,2 .
Преобразование передаточных функций в матричные модели производят стандартными методами, например, методом нормальной формы Коши. Определение матричной модели ОН методом Коши производится с помощью электронной таблицы Excel. Результаты расчета непрерывной матричной модели представлены на скрин-копии электронной таблицы (рисунок 4.5).
Детерминированное входное воздействие u(t) задано суммой ступенчатой и гармонической функций. Стохастическая составляющая g(t) определяется формирующим фильтром D с белый шумом возмущения v(t) приведенном ко входу (интенсивность шума возмущения Q=0,7). Модель ОН имеет: X - вектор состояния системы; h(t) - сигнал выхода. X& = AX + Bu + Dv , h = CX , где A, B, D – переходные матрицы состояния (матрицы коэффициентов); С - матрица линейного преобразования размера mxn. 1 0 0 0 . C= 0 1 0 0 Измеряются два параметра объекта наблюдения: выходной сигнал и его производная. Уравнение измерений удовлетворяет линейному соотношению:
Рисунок 4.5. Таблица для расчета матриц непрерывной модели
Для расчета дискретной модели требуется определить период дискретности dt. На основании импульсной теоремы dt=π/ωm, где ωm – максимальная частота пропускания системы. Вычисление периода дискретности производится в электронной таблице Excel (см. рисунок 4.6).
Y (t ) = CX (t ) + N (t ) , где N(t) - вектор шумов, М[ N ( t ) N Т (t )] = R (t ) . Измерения производятся с шумами (интенсивности шумов r11=13, r22=0,3). Дискретная модель
X ( k +1) = FX ( k ) + Gu ( k ) + Tv( k )
Рисунок 4.6. Реализация инструмента “Подбор параметра” для расчета dt
.
Матрицы F, G, T зависят от A, B, D Период дискретности dt для вычисления этих матриц выбирается исходя из полосы пропускания динамической системы в соответствии с импульсной теоремой [21]. 65
Метод расчета основан на определении ωm, когда затухание амплитудночастотной характеристики ограничено на уровне δ от уровня при ω = ω0 = 0. | (
)| = | ( 66
)| .
При δ = 10-3 это уравнение приобретает вид ω + 0,0775ω + 0,62ω − 10 ω − 10
= 0.
Метод расчета основан на использовании инструмента Excel “Подбор параметра”. В ячейке G8 набирается формула биквадратного уравнения, где в качестве неизвестного параметра x = (ωm)2 используется изменяемая ячейка $F$8.
В выделенной ячейке получена остаточная ошибка расчета, а в ячейках H8, I8 найденные значения ωm и dt. Дискретная модель содержит матрицы F, G, T ( F = I + ΨA⋅ dt , G = ΨD ⋅ dt ). Алгоритм расчета основан на представлении матричной экспоненты в виде ряда Тейлора. При этом используется вспомогательная матрица Ψ=I+A
dt dt k . + ,..., + A k 2 ( k + 1)!
Итерационный расчет ψ производится до достижения условия точности Ψ( k +1) − Ψ(k ) abs Ψ( k +1)
где
Рисунок 4.7. − Инструмент “Подбор параметра”
, <δ
δ - заданная относительная погрешность (δ=0,001); ||ψ(k)|| - норма матрицы ψ(k), вычисляемая как сумма элементов матрицы.
Матрицы F, G, T, найденные с помощью электронной таблицы Excel, представлены на копии экрана электронной таблицы (рисунок 4.9).
В данном случае формула биквадратного уравнения четвертого порядка в ячейке G8 имеет вид =F5+G5*F8+H5*F8^2+I5+F8^3+J5*F8^4. Предварительно в искомой ячейке задается достаточно большое число, заведомо большее, чем (ωm)2. После проведения подбора получены результаты, представленные на рисунке 4.8.
Рисунок 4.8. Результаты подбора параметра x = (ωm)2
67
Рисунок 4.9. Результаты расчета матриц дискретной модели
68
5. Статистическое моделирование систем Метод статистического моделирования, или метод Монте-Карло (МК), это численный метод решения математических задач при помощи моделирования случайных величин [22, 23]. Этот метод позволяет исследовать любой процесс, на протекание которого влияют случайные факторы. Для задач, не связанных со случайностями, можно искусственно придумать вероятностные модели. Общая схема применения метода состоит в том, что функцию, которую нужно вычислить, представляют в виде математического ожидания f(x1,...,xn) от n независимых случайных величин. Используя n случайных чисел, моделируемых датчиками случайных чисел, получают реализацию функции. Повторяя, получают n случайных реализаций. В качестве приближенного значения оцениваемой функции принимают среднее арифметическое по реализациям. Среднеквадратическая погрешность полученной статистической оценки с ростом числа реализаций N убывает пропорционально 1/N2. При статистическом моделировании систем производится воспроизведение процессов, происходящих в системах, с искусственной имитацией случайных величин, от которых зависят эти процессы, с помощью датчиков случайных чисел. Комбинируя детерминированные и стохастические зависимости, составляют алгоритм моделирования системы. Применяя его, получают независимые реализации процесса в заданных условиях использования системы. Характеристики, которые нужно определить, оцениваются методом МК. Алгоритм моделирования используется как для анализа, так и для оптимизации и синтеза систем.
На рисунке 5.1 представлена структурная схема алгоритма оптимизации.
k=1
Вариация параметров fi
ДСЧ
Расчет функционала Расчет ограничений P(F)
-
P(F)∈D
Qk(F)
-
Qmin(F)=Qk(F)
k=k+1
-
k>N Qmin(F) →
Рисунок 5.1. Структурная схема алгоритма оптимизации функционала
5.1. Оптимизация методом статистического моделирования В качестве метода оптимизации функционала Q(F), зависящего от параметров системы, используется метод статистического моделирования, легко реализуемый на компьютере. При использовании этого метода, вектор параметров F варьируют в допустимых границах случайным образом и вычисляют при каждом статистическом испытании функционал Q(F). Затем при достижении достаточного статистического материала определяют экстремум функционала и выявляют соответствующие ему оптимальные значения вектора F. Функционал часто определяется неявно при моделировании работы рассматриваемой системы. Задача оптимизации решается при наличии ряда ограничений на другие характеристики (функционалы Q(F)). 69
На схеме обозначено: ДСЧ – датчик случайных чисел; N – количество статистических испытаний; DP – область допустимых второстепенных функционалов; Qmin(F) – минимальное значение ортимизируемого функционала; Fопт - вектор оптимальных параметров. В качестве примера функционала можно, например, привести передаточную функцию ДПИ, зависящую от множества параметров, определяющих конструкцию датчика и его динамические свойства. Большинство параметров функционала являются неизменяемыми, но некоторые можно выбрать оптимальным образом для обеспечения экстремальных характеристик датчика, на70
пример, по точности или по быстродействию. Изменяемыми параметрами векторного аргумента F в этом случае являются параметры корректирующего устройства, выполняемого, например, на малогабаритном операционном усилителе с навесными элементами. Рассмотрим в качестве основного показателя качества динамики датчика время переходного процесса tПП, определяемое при воздействии скачкообразного сигнала на входе. Минимум времени переходного процесса, в данном случае, обеспечивает минимум потерь полезной информации, т.е. минимум интегрального показателя качества – среднеквадратической ошибки переходного процесса. Другие важные показатели динамики (перерегулирование, степень затухания, запас устойчивости по фазе и амплитуде, полоса пропускания) должны находиться в допустимых пределах, т.е. они являются функциями ограничения. Таким образом, задача оптимизации (минимизации) времени переходного процесса поставлена как задача с ограничениями. Показатель качества время переходного процесса определяется неявно, т.е. при моделировании стохастической системы. В качестве системы рассматрим ДПИ. Для моделирования ДПИ используется стандартная матричная модель, характеризующая динамическое движение. Модель определяется уравнением состояния с вектором состояния X=(x1,x2,…,xn) при входных воздействиях U(t) и возмущениях V(t):
где H, G – матрицы коэффициентов соответствующей размерности. Большинство параметров системы, определяют ее конструкцию и статическую характеристику и являются неизменяемыми. Часть параметров, относящихся к изменяемой части (корректирующему устройству) может быть изменена в ограниченных пределах (определяемых в основном массогабаритными и конструктивными характеристиками). 5.2. Объектно-ориентированное статистическое моделирование Решение примера оптимизации ДПИ проводится с использованием объектно-ориентированного программирования в среде Delphi [24]. С этой целью разработана операционная оболочка программы, которая предназначена для организации диалоговой настройки вычислительного эксперимента и его многократного проведения [25]. Основная панель (Desck Top) операционной оболочки с кнопками управления представлена на рисунке 5.2.
•
X (t ) = AX (t ) + Bu (t ) + DV (t ), y (t ) = CX (t ).
(5.1)
где A, B, C – матрицы коэффициентов соответствующей размерности. Начальное состояние процессов в датчике линейных ускорений заданно вектором X(0)=(x10,x20,…,xn0). При поиске оптимальных параметров имеются ограничения, накладываемые на пределы изменения исходных независимых параметров и оптимизируемых выходных характеристик. Параметры F системы и второстепенные показатели качества Pk имеют ограничения: ∈
,
( )∈
,
(5.2)
Моделирование динамики движения системы выполняется численным решением матричных уравнений динамики (формула 5.1). Для этого составляются соответствующие дискретные матричные уравнения: X ( k + 1) = HX (k ) + Gu (k ), y ( k ) = CX (k ). 71
(5.3)
Рисунок 5.2. Управляющая панель операционной оболочки
72
На основной панели размещены элементы управления: 1) Кнопка управления для запуска подпрограммы статистического моделирования и построения графика процесса движения динамической системы. 2) Диалоговое окно для ввода и модификации исходных данных (независимых переменных) исследуемой динамической системы. В этом окне предусмотрена возможность установки/сброса флажков разрешения случайной вариации независимых переменных системы. 3) Движки, задающие: 1) число статистических испытаний; 2) максимальное время наблюдения динамического движения системы. 4) Диалоговое окно для ввода и модификации векторной функции модели (зависимых переменных) от векторного аргумента (независимых переменных) исследуемой динамической системы. 5) Редактируемые окна для модификации порядка дифференциального уравнения и размерности вектора независимых переменных исследуемой динамической системы. 6) Диалоговое окно для просмотра результатов проектирования и оптимизации исследуемой динамической системы. Кнопки управления. Кнопка “Моделирование” предназначена для запуска подпрограммы статистического моделирования. При нажатии кнопки производится подготовка, проведение и завершение вычислительного эксперимента. На этапе подготовки читаются исходные данные из входных файлов: порядок полинома передаточной функции для числителя и знаменателя, число исходных параметров системы, номинальные значения исходных параметров, индикаторы варьирования переменных. На этапе проведения вычислительного эксперимента производится многократный вычислительный эксперимент с выполнением в каждом статистическом испытании: 1) случайного варьирования исходных параметров системы x[1], x[2],..., x[Nq] относительно номинальных значений в заданных диапазонах; 2) расчет коэффициентов b0, b1, b2, …, bm; a0, a1, …, an передаточной функции системы при исходных параметрах x[1], x[2],..., x[Nq]; 3) расчет непрерывной матричной модели системы (формула 5.1); 4) расчет дискретной матричной модели системы (формула 5.3); 5) численное решение дифференциального уравнения системы при воздействии скачкообразного сигнала в заданном диапазоне времени; 6) определение времени переходного процесса, перерегулирования и статистических характеристик этих показателей качества. 73
На этапе завершения вычислительного эксперимента (после проведения заданного числа статистических испытаний) определяется минимальное время переходного процесса (максимальное количество статистических испытаний в данном пакете программ ограничено числом 1000) и соответствующие параметры системы (оптимальные параметры). Строится график оптимального переходного процесса в графическом окне (красная линия) и график переходного процесса при номинальных значениях исходных параметров. Полученные оптимальные параметры системы записываются в результирующий файл. Кнопка “Результаты” позволяет вызывать диалоговое окно для просмотра результатов проектирования и оптимизации исследуемой динамической системы (рисунок 5.3).
Рисунок 5.3. Диалоговое окно результатов проектирования
Движки числа статистических испытаний и времени наблюдения. В графическом окне расположен Движок, устанавливающий максимальное время наблюдения динамического движения системы (от 0 до 1,5 с). Движок, задающий количество статистических испытаний системы рассчитан на диапазон от 10 до 1000. Наиболее часто используемые значения (от 30 до 800) указаны синей полосой. Диалоговое окно для просмотра результатов. В данном окне представлены рассчитанные коэффициенты b0, b1, a0, a1, a2, a3, a4 модели системы “Передаточная функция”, результаты расчета матричной модели: матрицы A, B, C, результаты проведенной оптимизации: минимальное время переходного процесса и соответствующее ему перерегулирование и оптимальные значения па74
раметров ДЛУ. Результаты этого окна связаны с данными, записанными в выходные файлы: Model-W-Nominal.dat, Model-W-Optimal.dat, MK-0.dat, KoshiModel.dat. Также в файлах представлены дискретные модели системы для номинальных (Digital-Model-Nominal.dat) и оптимальных параметров (DigitalModel-Optimal.dat). Эти файлы обновляются при моделировании. Блок статистичекого моделирования, структурная схема алгоритма которого представлена на рисунке 5.4, содержит управляющую процедуру и блоки.
Датчик случайных чисел. Случайные числа в соответствии с исходной информацией о распределении аргументов вырабатываются программно с помощью датчика случайных чисел (ДСЧ). При статистическом моделировании ДС используются случайные величины, имеющие равномерное распределение. Блок решения дифференциального уравнения состояния ДС. Этот блок представлен процедурой Eyler(n,h,u,A,B,X), выполняющей численное решение с высокой точностью. Блок имеет входные параметры: n – порядок динамической системы (ДС), h – период дискретности по времени, u – установившееся значение входного сигнала, A, B – матрицы коэффициентов решаемой системы уравнений. Выходными параметрами являются компоненты вектора состояния ДС: X. Блок оптимизации показателя качества. Определяется минимальное время переходного процесса, соответствующие ему перерегулирование и параметры ДС. Блок обработки результатов. Осуществляется накопление массивов, оценку статистических характеристик, вычисление показателей качества, решение оптимизационных задач, графического представления результатов. Процедуры вывода результатов проектирования и оптимизации. Программа реализует вывод данных в файлы (запись результирующих данных о моделях ДС, времени переходного процесса и основных параметрах системы). Это файлы: Model-W-Nominal.dat, Model-W-Optimal.dat, MK-0.dat, KoshiModel.dat. Также в файлах представлены дискретные модели системы для номинальных (Digital-Model-Nominal.dat) и оптимальных параметров (DigitalModel-Optimal.dat). Эти файлы обновляются каждый раз при выполнении моделирования. 5.3. Расчет передаточной функции ДС по заданным номинальным параметрам и функциональным зависимостям
Рисунок 5.4. Блок статистичекого моделирования 75
Расчет передаточной функции ДС выполняется программой Dynamic System в диалоговом режиме с использованием режима ввода/вывода с файлами. При этом задаются номинальные значения параметров (до 50 параметров) и функциональные зависимости коэффициентов передаточной функции от этих параметров. Вычисления производятся с помощью оригинальной программы, составленной на объектном Pascal. Вычисления производятся с использованием рекурсий и специальных функций. Для записи формулы используются круглые скобки, арифметические знаки и специальные математические функции. Независимые переменные (аргументы) обозначаются как x[1],…, x[50]. 76
Диалоговое окно для ввода и модификации исходных данных. В этом окне производится изменение номиналов исходных параметров (независимых переменных) исследуемой динамической системы. Здесь же с помощью флажков-индикаторов (нулей и единиц) выбираются варьируемые параметры (1 – разрешено варьирование, 0 – запрещено варьирование). Исходные значения параметров и их индикаторные функции записаны в файл Input.dat, который используется при вводе/выводе данных в программу. Диалоговое окно для ввода и модификации векторной функции. В нижнем диалоговом окне индицируются функциональные зависимости коэффициентов передаточной функции: b0, b1, …, bm; a0, a1, …, an (зависимых переменных) от исходных параметров: x[1], x[2],..., x[Nq] (независимых переменных) исследуемой динамической системы. Для ввода в программу функциональных зависимостей выражения записываются с соблюдением определенных правил в файле Function.dat. Правила записи функциональных зависимостей индицируются при вхождении в диалоговое окно для модификации этих зависимостей.
Окна для модификации порядка дифференциального уравнения и размерности вектора независимых переменных. Передаточная функция исследуемой динамической системы записана в общем виде (см. рисунок 5.2), где индексы m и n задаются дополнительно в редактируемых окнах. Таким же образом указывается число исходных параметров Nq. 5.4. Преобразование модели “Передаточная функция” в непрерывную и дискретную матричные модели Для преобразования модели “Передаточная функция” в непрерывную и дискретную матричные модели необходимо записать на основе передаточной функции дифференциальное уравнение и затем преобразовать это уравнение в систему дифференциальных уравнений 1-го порядка. 77
Динамическое движение системы характеризуется вектором состояния X=(x1,x2,…,xn) при входном сигнале u(t) и уравнением выхода y(t), определяющим выходной сигнал (формула 5.1). Моделирование динамики движения системы выполняется численным решением матричных уравнений динамики (формулы 5.1). 5.5. Численное решение дифференциальных уравнений Моделирование динамики движения ДС выполняется численным решением системы уравнений динамики (формулы 5.3) методом Эйлера. Решение относительно компонент xi выполняется с заданной точностью путем выбора достаточно малого периода дискретности h: xi ( k + 1) = xi ( k ) + hxi' ( k ) ,
(5.4)
где x’i - первая производная компоненты xi . Для решения системы дискретных уравнений можно использовать электронную таблицу Excel, но для получения достаточно точного решения требуется выбрать период дискретности на уровне 10-6 секунды. С учетом того, что время наблюдения движения ДС составляет от 0,001 с до 1 с, для получения численных значений траектории движения ДС придется сформировать таблицу на уровне 1000000 значений. Решение такой задачи в Excel нерационально, поэтому она решается при использовании Object Pascal и визуального программирования Delphi. Для решения дифференциального уравнения, заданного моделью в виде передаточной функции необходимо: 1) ввести коэффициенты передаточной функции; 2) сформировать непрерывную матричную модель уравнения состояния (вычислить матрицы коэффициентов A, B, C); 3) задать период дискретности; 4) сформировать дискретную матричную модель уравнения состояния (вычислить матрицы коэффициентов F, G); 5) используя процедуру пошагового решения системы разностных дискретных уравнений, вычислить траекторию движения ДС с шагом дискретности по времени h (сформировать таблицу); 6) построить график движения ДС.
78
Решение дифференциального уравнения состояния ДС производится в матричной форме с помощью процедуры: Eyler(n:Integer;h,u:Real;A:Ms;B:Ms1;Var X:Ms1). Входные данные процедуры: n – порядок системы; h – период дискретности; u – входная переменная; A, B – матрицы коэффициентов уравнения состояния. Выходные данные процедуры: X – вектор выходных переменных (вектор состояния). Для примера рассматривается дифференциальное уравнение 4-го порядка, что не нарушает общности решения для более высокого порядка. Дифференциальное уравнение имеет вид
a 4 y ( 4 ) + a3 y ( 3) + a 2 y ( 2 ) + a1 y (1) + a0 y (t ) = b0 u (t ) + b1u (1) .
(5.5)
Программа Dynamic System для данного примера дает диалоговое окно с параметрами ДС и траекторию движения ДС (аналогично рисунку 5.2). Все параметры моделей просматриваются в диалоговом окне “Результаты” (аналогично рисунку 5.3) и фиксируются в файлах. 5.6. Метод статистического моделирования при определении допусков на конструктивные параметры системы Алгоритм исследования динамических систем методом МК состоит в следующем: задаются случайные вариации исходным параметрам системы, по ним находится значение целевой функции, процесс циклически повторяется с накоплением массива, который по достижении нужного объема подвергается статистической обработке. Задача формирования допусков на исходные параметры ДС. Необходимо обеспечить определенный уровень некоторого выходного свойства J ДС. Это свойство является функцией n независимых аргументов F=(f1,…,fn)T J = ( f1,…, fn).
(5.6)
На стадии проектирования ДС для J устанавливают его номинальное значение Jном и предельные допустимые отклонения – нижнюю J1 и верхнюю J2 79
границы. Они определяют полуширину поля допуска dJ=(J2-J1)/2 (в этом случае требования к уровню J задаются в виде J íîì ± dj ). Необходимо, чтобы J попадало в поле допуска, тогда ДС по данному свойству считается работоспособным. На основе полученных требований к параметру J решается обратная задача − выявление допустимых значений аргументов, влияющих на J. Это особенно важно для исходных параметров, имеющих высокие коэффициенты влияния. Установление численных значений границ J1 и J2 проводится на основе тактико-технических требований к ДС. При статистическом моделировании ДС находят среднеквадратическое отклонение и из условия dJ=k σj определяется σj. (часто k - коэффициент ширины поля допуска принимают равным 3 из условия доверительной вероятности 0,997). Методом статистического моделирования находят коэффициенты чувствительности (коэффициенты влияния) параметров fi ДС на выходную характеристику. Определяют среднеквадратические отклонения аргументов и их допустимые границы. Кроме поставленной задачи, вероятностной по своей природе, более важной представляется математическая задача оптимизации. Здесь случайные вариации исходных параметров вводятся искусственно. Задача оптимизации предшествует задаче формирования допусков на параметры ДС. Обеспечение допустимых отклонений характеристик ДС. Задача определения коэффициентов чувствительности dJ/dfi параметров ДС решается следующим образом. Производится моделирование работы ДС при номинальных значениях параметров. При этом исследуемому параметру задаются случайные вариации с заданным законом распределения. Регистрируется выходная характеристика J и определяется ее дисперсия. Коэффициент чувствительности i-го параметра определяется в виде dJ σ J J . (5.7) = df i σ fi f i Математическое обеспечение. В состав математического обеспечения входят: 1) программа – модель ДС; 2) датчики случайных чисел; 3) программы обработки результатов. Моделирование ДС выполняется численным решением уравнения динамики (5.1) методом прогноза и коррекции при начальном старте "грубым" методом Эйлера. Алгоритм вычислений. Алгоритм легко программируется для решения в численном виде на ПЭВМ. Прикладная программа составлена в объектно-
80
ориентированной среде Delphi с использованием программирования отдельных модулей на языке Object Pascal. Основными элементами программы статистического моделирования и обработки результатов являются: модуль ввода-вывода данных, датчики случайных чисел, блок случайной вариации исходных параметров, блок формирования ограничений, блок оптимизации показателя качества, блок статистической обработки (вычисления математического ожидания и дисперсии показателя качества), блок вычисления коэффициентов влияния, блок записи оптимальных параметров и модели оптимального показателя качества. Модуль графической иллюстрации оптимальных параметров выполнен в виде отдельной процедуры. Операционная оболочка программного обеспечения имеет основную панель, систему меню, диалоговые окна для ввода и модификации исходных данных, окно для вывода графической информации. Подключена заставка и программа индицирующая справочную информацию. Прикладная программа подключена в виде встроенной процедуры объектного языка Pascal. Панель управления изображена на рисунке 5.5. Интерактивный интерфейс пользователя позволяет выполнять исследование ДС путем активного вычислительного эксперимента в различных режимах, задавая необходимые начальные условия, вводя различные ограничения. Статистическое моделирование позволяет исследовать область допустимых параметров ДС, сформулировать к ним требования, определить оптимальные показатели качества, определить границы устойчивости и другие характеристики (время переходного процесса, порог чувствительности, нулевой сигнал, уровни шумов и т.п.). 5.7. Моделирование процессов с заданным законом распределения Любой язык программирования высокого уровня имеет программуфункцию, дающую равномерно распределенную случайную величину в диапазоне [0,1]. На основании этой величины формируются другие с требуемым законом распределения и числовыми характеристиками. Для получения случайной величины Е, распределенной в диапазоне [a,b] с плотностью f(x), необходимо решить интегральное уравнение b
∫ f ( x)dx = q, a
81
(5.8)
где q - равномерно распределенная величина в диапазоне [0,1]. Для равномерно распределенной случайной величины Е в диапазоне [a,b] 1 плотность вероятности имеет вид f ( x) = при a<x
E
1
∫ b − a dx = q
дает выражение Е=a+q(b-a).
a
Нормально распределенная случайная величина формируется из равномерно распределенных на основании центральной предельной теоремы. В библиотеке программ на любом языке программирования имеется подпрограмма GAUSS, которая вычисляет нормально распределенную случайную 12
величину в виде E = ∑ q − 6 , где qi - равномерно распределенная случайная j j =1
величина в диапазоне [0,1], имеющая математическое ожидание m и дисперсию σ2. Для получения нормально распределенной случайной величины с заданным математическим ожиданием и дисперсией необходимо произвести следующие вычисления: Y=Eσy+My. Экспоненциальное распределение имеет плотность вероятности при x≥0. Вычислим случайную величину X из интегрального уравнения
X
∫ ae−ax dx = q , 0
откуда получим 1−e−aX = q или X = − ln(1 − q) / a . Величина 1-q распределена так же, как q, поэтому можно принять X = −ln(q) / a . Возникновение импульсных помех в ДС определяется экспоненциальным законом распределения. Вероятность появления помехи в момент времени to вычисляется по формуле q=1-e-Ltо, где L – интенсивность.
6. Моделирование в системе MatLab Simulink Удобным программным обеспечением для объектно-ориентированного моделирования на компьютере является ПО MATLAB [26-33]. Система MATLAB состоит из шести основных частей: Язык MATLAB. Это язык матриц и массивов высокого уровня с управлением потоками, функциями, структурами данных, вводом-выводом и особенностями объектно-ориентированного программирования. Это позволяет 82
как программировать в "небольшом масштабе" для быстрого создания черновых программ, так и в "большом" для создания больших и сложных приложений. Среда MATLAB. Это набор инструментов и приспособлений, с которыми работает пользователь или программист MATLAB. Она включает в себя средства для управления переменными в рабочем пространстве MATLAB, вводом и выводом данных, а также создания, контроля и отладки М-файлов и приложений MATLAB. Управляемая графика. Это графическая система MATLAB, которая включает в себя команды высокого уровня для визуализации двух- и трехмерных данных, обработки изображений, анимации и иллюстрированной графики. Она также включает в себя команды низкого уровня, позволяющие полностью редактировать внешний вид графики, также как при создании Графического Пользовательского Интерфейса (GUI) для MATLAB приложений. Библиотека математических функций. Это обширная коллекция вычислительных алгоритмов от элементарных функций, таких как сумма, синус, косинус, комплексная арифметика, до более сложных, таких как обращение матриц, нахождение собственных значений, функции Бесселя, быстрое преобразование Фурье. Программный интерфейс. Это библиотека, которая позволяет писать программы на Си и Фортране, которые взаимодействуют с MATLAB. Она включает средства для вызова программ из MATLAB (динамическая связь), вызывая MATLAB как вычислительный инструмент и для чтения-записи МАТфайлов. Simulink, сопутствующая MATLAB программа. Интерактивная система для моделирования динамических систем. Она представляет собой среду, управляемую мышью, которая позволяет моделировать процесс путем перетаскивания блоков диаграмм на экране и их манипуляцией. Simulink работает с линейными, нелинейными, непрерывными, дискретными, многомерными системами. 6.1. Общие сведения о системе моделирования MatLab Simulink Программа Simulink является приложением к пакету MATLAB. При моделировании с использованием Simulink реализуется принцип визуального программирования, в соответствии с которым, пользователь на экране из библиотеки стандартных блоков создает модель устройства и осуществляет расчеты. При этом, в отличие от классических способов моделирования, пользователю 83
не нужно досконально изучать язык программирования и численные методы математики, а достаточно общих знаний требующихся при работе на компьютере и, естественно, знаний той предметной области, в которой он работает. Simulink является достаточно самостоятельным инструментом MATLAB и при работе с ним совсем не требуется знать сам MATLAB и остальные его приложения. С другой стороны доступ к функциям MATLAB и другим его инструментам остается открытым и их можно использовать в Simulink. Часть входящих в состав пакетов имеет инструменты, встраиваемые в Simulink (например, LTI-Viewer приложения Control System Toolbox – пакета для разработки систем управления). Имеются также дополнительные библиотеки блоков для разных областей применения (например, Digital Signal Processing Blockset – набор блоков для разработки цифровых устройств и т.д). При работе с Simulink пользователь имеет возможность модернизировать библиотечные блоки, создавать свои собственные, а также составлять новые библиотеки блоков. При моделировании пользователь может выбирать метод решения дифференциальных уравнений, а также способ изменения модельного времени (с фиксированным или переменным шагом). В ходе моделирования имеется возможность следить за процессами, происходящими в системе. Для этого используются специальные устройства наблюдения, входящие в состав библиотеки Simulink. Результаты моделирования могут быть представлены в виде графиков или таблиц. Преимущество Simulink заключается также в том, что он позволяет пополнять библиотеки блоков с помощью подпрограмм написанных как на языке MATLAB, так и на языках С + +, Fortran и Ada. Запуск Simulink. Для запуска программы необходимо предварительно запустить пакет MATLAB. После открытия основного окна программы MATLAB нужно запустить программу Simulink. Это можно сделать одним из трех способов: − Нажать кнопку (Simulink) на панели инструментов командного окна MATLAB. − В командной строке главного окна MATLAB напечатать Simulink и нажать клавишу Enter на клавиатуре. − Выполнить команду Open… в меню File и открыть файл модели (mdl файл). Последний вариант удобно использовать для запуска уже готовой и отлаженной модели, когда требуется лишь провести расчеты и не нужно добавлять новые блоки в модель. Использование первого и второго способов приводит к открытию окна обозревателя разделов библиотеки Simulink. 84
Для того, чтобы открыть окно просмотра сигналов необходимо выполнить двойной щелчок левой клавишей “мыши” на изображении блока. Это можно сделать на любом этапе расчета (как до начала расчета, так и после него, а также во время расчета). В том случае, если на вход блока поступает векторный сигнал, то кривая для каждого элемента вектора строится отдельным цветом. Настройка окна осциллографа выполняется с помощью панелей инструментов (рис. 6.2).
Рисунок 6.2. Панель инструментов блока Scope
Рисунок 6.1. Окно обозревателя разделов библиотеки Simulink
Процесс расчета модели выполняется Simulink в несколько этапов. На первом этапе выполняется инициализация модели: подключение библиотечных блоков к модели, определение размерностей сигналов, типов данных, величин шагов модельного времени, оценка параметров блоков, а также определяется порядок выполнения блоков и выполняется выделение памяти для проведения расчета. Затем Simulink начинает выполнять цикл моделирования. На каждом цикле моделирования (временном шаге) происходит расчет блоков в порядке, определенном на этапе инициализации. Для каждого блока Simulink вызывает функции, которые вычисляют переменные состояния блока x, производные переменных состояния и выходы y в течение текущего шага модельного времени. Этот процесс продолжается, пока моделирование не будет завершено. 6.1.1. Библиотека блоков Simulink Осциллограф Scope. Строит графики исследуемых сигналов в функции времени. Позволяет наблюдать за изменениями сигналов в процессе моделирования.
85
Панель инструментов содержит 11 кнопок: 1. Print – печать содержимого окна осциллографа. 2. Parameters – доступ к окну настройки параметров. 3. Zoom – увеличение масштаба по обеим осям. 4. Zoom X-axis – увеличение масштаба по горизонтальной оси. 5. Zoom Y-axis – увеличение масштаба по вертикальной оси. 6. Autoscale – автоматическая установка масштабов по обеим осям. 7. Save current axes settings – сохранение текущих настроек окна. 8. Restore saved axes settings – установка ранее сохраненных настроек окна. 9. Floating scope – перевод осциллографа в “свободный” режим. 10. Lock/Unlock axes selection – закрепить/разорвать связь между текущей координатной системой окна и отображаемым сигналом. Инструмент доступен, если включен режим Floating scope. 11. Signal selection – выбор сигналов для отображения. Инструмент доступен, если включен режим Floating scope. Изменение масштабов отображаемых графиков можно выполнять несколькими способами: 1. Нажать соответствующую кнопку ( , или ) и щелкнуть один раз левой клавишей “мыши” в нужном месте графика. Произойдет 2,5 кратное увеличение масштаба. 2. Нажать соответствующую кнопку ( , или ) и, нажав левую клавишу “мыши”, с помощью динамической рамки или отрезка указать область графика для увеличенного изображения.
86
3. Щелкнуть правой клавишей “мыши” в окне графиков и, выбрать команду Axes properties… в контекстном меню. Откроется окно свойств графика, в котором с помощью параметров Y-min и Y-max можно указать предельные значения вертикальной оси. В этом же окне можно указать заголовок графика (Title), заменив выражение %<SignalLabel> в строке ввода. Окно свойств показано на рис. 6.3.
Рисунок 6.3. Окно свойств графика
Параметры блока устанавливаются в окне ‘Scope’ parameters, которое от(Parameters) панели инструментов. Оккрывается с помощью инструмента но параметров имеет две вкладки: General – общие параметры. Data history – параметры сохранения сигналов в рабочей области MATLAB. Вкладка общих параметров показана на рис. 6.4.
2. Time range — величина временного интервала для которого отображаются графики. Если время расчета модели превышает заданное параметром Time range, то вывод графика производится порциями, при этом интервал отображения каждой порции графика равен заданному значению Time range. 3. Tick labels — вывод/скрытие осей и меток осей. Может принимать три значения (выбираются из списка): − all – подписи для всех осей, − none – отсутствие всех осей и подписей к ним, − bottom axis only – подписи горизонтальной оси только для нижнего графика. 4. Sampling — установка параметров вывода графиков в окне. Задает режим вывода расчетных точек на экран. При выборе Decimation кратность вывода устанавливается числом, задающим шаг выводимых расчетных точек. 5. floating scope – перевод осциллографа в “свободный” режим (при установленном флажке). На вкладке Data history (рис. 6.5) задаются следующие параметры: 1. Limit data points to last – максимальное количество отображаемых точек графика. При превышении этого числа часть графика обрезается. 2. Save data to workspace – сохранение значений сигналов в рабочей области MATLAB. 3. Variable name – имя переменной для сохранения сигналов в рабочей области MATLAB. 4. Format – формат данных при сохранении в рабочей области MATLAB. Может принимать значения: Array – массив, Structure – структура, Structure with time – структура с дополнительным полем “время”.
Рисунок 6.4. Вкладка общих параметров General
На вкладке General задаются следующие параметры: 1. Number of axes — число входов (систем координат) осциллографа. При изменении этого параметра на изображении блока появляются дополнительные входные порты. 87
Рисунок 6.5. Вкладка Data history. 88
Блок сохранения данных в файле То File. Блок записывает данные, поступающие на его вход, в файл. Имеет параметры: Filename – имя файла для записи. По умолчанию файл имеет имя untitled.mat. Если не указан полный путь файла, то файл сохраняется в текущей рабочей папке. Variable name – имя переменной, содержащей записываемые данные. Decimation – кратность записи в файл входного сигнала. При Decimation = 1 записывается каждое значение входного сигнала, при Decimation = 2 записывается каждое второе значение, при Decimation = 3 – каждое третье значение и т.д. Sample time – шаг модельного времени. Определяет дискретность записи данных. Данные в файле сохраняются в виде матрицы:
. Значения времени записываются в первой строке матрицы, а в остальных строках будут находиться значения сигналов, соответствующих данным моментам времени. Файл данных (mat-файл), в который записываются данные, не является текстовым. Структура файла подробно описана в справочной системе MATLAB. Пользователям Simulink удобнее всего считывать данные из matфайла с помощью блока From File (библиотека Sources). На рис. 6.6 показан пример использования данного блока. Результаты расчета сохраняются в файле result.mat.
− Limit data points to last – максимальное количество сохраняемых расчетных точек по времени (отсчет ведется от момента завершения моделирования). В том случае, если значение параметра Limit data points to last задано как inf, то в рабочей области будут сохранены все данные. − Decimation – кратность записи данных в рабочую область. − Sample time – шаг модельного времени. Определяет дискретность записи данных. − Save format – формат сохранения данных. Может принимать значения: 1) Matrix – матрица. Данные сохраняются как массив, в котором число строк определяется числом расчетных точек по времени, а число столбцов – размерностью вектора подаваемого на вход блока. Если на вход подается скалярный сигнал, то матрица будет содержать лишь один столбец; 2) Structure – структура. Данные сохраняются в виде структуры, имеющей три поля: time – время, signals – сохраняемые значения сигналов, blockName – имя модели и блока To Workspace. Поле time для данного формата остается не заполненным; 3) Structure with Time – структура с дополнительным полем (время). Для данного формата, в отличие от предыдущего, поле time заполняется значениями времени. На рис. 6.7 показан пример использования данного блока. Результаты расчета сохраняются в переменной simout. Для считывания данных сохраненных в рабочей области MATLAB можно использовать блок From Workspace (библиотека Sources).
Рисунок 6.7. Пример для блока From Workspace
Рисунок 6.6. Пример для блока From File
Блок сохранения данных в рабочей области То Workspace. Блок записывает данные, поступающие на его вход, в рабочую область MATLAB. Имеет параметры: − Variable name – имя переменной, содержащей записываемые данные.
89
Блок выходного порта Outport. Создает выходной порт для подсистемы или для модели верхнего уровня иерархии. Имеет параметры: Port number – номер порта. Output when disabled – вид сигнала на выходе подсистемы, в случае если подсистема выключена. Используется для управляемых подсистем. Может принимать значения (выбираются из списка): 1) held – выходной сигнал подсистемы равен последнему рассчитанному значению;
90
2) reset – – выходной сигнал подсистемы равен значению задаваемому параметром Initial output; 3) Initial output - значение сигнала на выходе подсистемы до начала ее работы и в случае, если подсистема выключена. Использование блока Outport в подсистемах. Блоки Outport подсистемы являются ее выходами. Сигнал, подаваемый в блок Outport внутри подсистемы, передается в модель (или подсистему) верхнего уровня. Название выходного порта будет показано на изображении подсистемы как метка порта. При создании подсистем и добавлении блока Outport в подсистему Simulink использует следующие правила: 1) При создании подсистемы с помощью команды Edit/Create subsystem выходные порты создаются и нумеруются автоматически начиная с 1; 2) Если в подсистему добавляется новый блок Outport, то ему присваивается следующий по порядку номер; 3) Если какой-либо блок Outport удаляется, то остальные порты переименовываются; 4) Если в последовательности номеров портов имеется разрыв, то при выполнении моделирования Simulink выдаст сообщение об ошибке и остановит расчет. В этом случае необходимо вручную переименовать порты таким образом, чтобы последовательность номеров портов не нарушалась. На рис. 6.8 показана модель, использующая подсистему, и схема этой подсистемы.
В том случае, если подсистема является управляемой, то для ее выходных портов можно задать вид выходного сигнала для тех временных интервалов, когда подсистема заблокирована. На рис. 6.9 показана модель, использующая управляемую подсистему (схема подсистемы такая же, как и в предыдущем примере). Для первого выходного порта подсистемы параметр Output when disabled задан как held, а для второго – как reset, причем величина начального значения задана равной нулю. Графики сигналов показывают, что когда подсистема заблокирована, сигнал первого выходного порта остается неизменным, а сигнал второго становится равным заданному начальному значению (нулю). Использование блока Outport в модели верхнего уровня. Выходной порт в системе верхнего уровня используется в двух случаях: 1) Для передачи сигнала в рабочее пространство MATLAB; 2) Для обеспечения связи функций анализа с выходами модели. Для передачи сигнала в рабочее пространство MATLAB требуется не только установить в модели выходные порты, но и выполнить установку параметров вывода на вкладке Workspace I/O окна диалога Simulation parameters… (должен быть установлен флажок для параметра Output и задано имя переменной для сохранения данных). Тип сохраняемых данных - Array массив, Structure (структура) или Structure with time (структура с полем “время”) задается на этой же вкладке.
Рисунок 6.9. Управляемая подсистема с настройками выходных портов Рисунок 6.8. Использование блока Outport в подсистеме 91
92
На рис. 6.10 показана модель, передающая сигналы в рабочее пространство MATLAB.
Рисунок 6.10. Модель, передающая сигналы в рабочее пространство MATLAB
Блок Outport может использоваться также для связи модели с функциями анализа, например: linmod или trim. Блок Goto. Позволяет передавать сигнал от одного блока к другому, без их соединения. Для того, чтобы соединять блок Goto с From блоком, вводится блочная этикетка Goto в параметр этикетки Goto (рисунок 6.11).
Sine Wave1
[A]
[A]
Goto1
From1
Scope1 Рисунок 6.11. Передача сигнала с помощью Goto и From блоков
Блоки Switch и Multiport Switch. Позволяют коммутировать сигналы (рисунок 6.12 и 6.13).
Switch Рисунок 6.12. Коммутирующий блок
Первый и третий входы у коммутатора Switch являются вводами данных. Второй вход назван управляющим входом. Выбираются условия для коммутации. При управляющем входе больше или равном величине порога на выход подключается первый вход. В противном случае − третий вход. Для коммутатора Multiport Switch аналогичные условия (рисунок 6.13).
Multiport Switch Рисунок 6.13. Мульти-коммутирующий блок 93
Первый вход является управляющим, остальные − входы данных. Величина управляющего входа определяет, какой вход данных будет соединен с выходом порта. Если управляющий сигнал является положительной целой величиной, тогда соответствующий вход данных будет соединен с выходом (при нуле ни один вход не соединен с выходом). При управляющем входе равном 1 первый вход данных соединяется с выходом, при 2 − второй и так далее. Если управляющий вход не является целой величиной, блок сначала округляет эту величину до ближайшего целого. Если в этом случае полученное число будет менше единицы или больше, чем количество входных портов, то будет индицироваться ошибка. Входы данных могут быть скалярными или векторными. Блочный выход определен тоже этими правилами: Если определяется только один вход данных и, этот вход является вектором, блок ведется себя как "индексный селектор", а не как много-ключевой порт. Блочный выход является векторным элементом, который переписывается в величину управляющего входа. Если имеется более, чем один вход данных, блок ведет себя подобно много-ключевому порту. Блочный выход является вводом данных, который переписывается в величину управляющего ввода. Если, по крайней мере, один из входов данных - вектор, блочный выход является вектором. Любые скалярные входы расширены на векторы. Если вводы являются скаляром, выход является скаляром. Блок белого шума Band-Limited. Генерирует нормально распределенные произвольные числа, которые подходят для использования в непрерывных или гибридных системах. Первичное различие между этим блоком и блоком Random Namber состоит в том, что Band-Limited осуществляет вывод белого шума в специфической форме отбора, обусловленной временем корреляции шума. Теоретически непрерывный белый шум имеет время корреляции равное 0, характеризуется равномерной спекральной плотностью (PSD), и ковариацией равной бесконечности. На практике физические системы никогда не возмущены белым шумом. Белый шум является полезной теоретической аппроксимацией, но на практике он имеет время корреляции, которое очень невелико относительно естественной полосы частот системы. В Simulink можно имитировать эффект белого шума, используя произвольную последовательность, со временем корреляции значительно меньше, чем самая короткая константа времени системы. Время корреляции шума яв94
ляется формой отбора блока. Для точного моделирования используется время корреляции значительно меньше, чем самая быстрая динамика системы. Можно получить хорошие результаты, определяя
tc =
1 2π , 100 ωmax
где ωmax − ширина полосы частот системы в рад/с. Блок модели динамического объекта State-Space. Блок создает динамический объект, описываемый уравнениями в пространстве состояний:
, где x – вектор состояния, u – вектор входных воздействий, y – вектор выходных сигналов, A, B, C, D - матрицы: системы, входа, выхода и обхода соответственно. Размерность матриц показана на рис. 6.14 (n – количество переменных состояния, m – число входных сигналов, r – число выходных сигналов).
Рисунок 6.14. Размерность матриц блока State-Space 1. 2. 3. 4. 5. 6.
A –Матрица системы. B – Матрица входа. C – Матрица выхода D – Матрица обхода Initial condition – Вектор начальных условий. Absolute tolerance — Абсолютная погрешность.
Subsystem – подсистемы. Подсистема − это фрагмент Simulink-модели, оформленный в виде отдельного блока. Использование подсистем при составлении модели имеет следующие положительные стороны:
95
1. Уменьшает количество одновременно отображаемых блоков на экране, что облегчает восприятие модели (в идеале модель полностью должна отображаться на экране монитора). 2. Позволяет создавать и отлаживать фрагменты модели по отдельности, что повышает технологичность создания модели. 3. Позволяет создавать собственные библиотеки. 4. Дает возможность синхронизации параллельно работающих подсистем. 5. Позволяет включать в модель собственные справочные средства. 6. Дает возможность связывать подсистему с каким-либо m-файлом, обеспечивая запуск этого файла при открытии подсистемы (нестандартное открытие подсистемы). Использование подсистем и механизма их блоков позволяет создавать блоки, не уступающие стандартным по своему оформлению (собственное окно параметров блока, пиктограмма, справка и т.п.). Количество подсистем в модели не ограничено, кроме того подсистемы могут включать в себя другие подсистемы. Уровень вложенности подсистем друг в друга также не ограничен. Связь подсистемы с моделью (или подсистемой верхнего уровня иерархии) выполняется с помощью входных (блок Inport библиотеки Sources) и выходных (блок Outport библиотеки Sinks) портов. Добавление в подсистему входного или выходного порта приводит к появлению на изображении подсистемы метки порта, с помощью которой внешние сигналы передаются внутрь подсистемы или выводятся в основную модель. Переименование блоков Inport или Outport позволяет изменить метки портов, отображаемые на пиктограмме подсистемы, со стандартных (In и Out) на те, которые нужны пользователю. Подсистемы могут быть виртуальными (Subsystem) и монолитными (Atomic Subsystem). Отличие этих видов подсистем заключается в порядке выполнения блоков во время расчета. Если подсистема является виртуальной, то Simulink игнорирует наличие границ отделяющих такую подсистему от модели при определении порядка расчета блоков. Иными словами в виртуальной системе сначала могут быть рассчитаны выходные сигналы нескольких блоков, затем выполнен расчет блоков в основной модели, а затем вновь выполнен расчет блоков входящих в подсистему. Монолитная подсистема считается единым (неделимым) блоком, и Simulink выполняет расчет всех блоков в такой подсистеме, не переключаясь на расчеты других блоков в основной модели. Изображение монолитной подсистемы имеет более толстую рамку по сравнению с виртуальной подсистемой. 96
Подсистемы могут быть также управляемыми или неуправляемыми. Управляемые подсистемы всегда являются монолитными. Управляемые подсистемы имеют дополнительные (управляющие) входы, на которые поступают сигналы активизирующие данную подсистему. Управляющие входы расположены сверху или снизу подсистемы. Когда управляемая подсистема активизирована, она выполняет вычисления. В том случае если управляемая подсистема пассивна, то она не выполняет вычисления, а значения сигналов на ее выходах определяются настройками выходных портов. Для создания в модели подсистемы можно воспользоваться двумя способами: 1. Скопировать нужную подсистему из библиотеки Subsystem в модель. 2. Выделить с помощью мыши нужный фрагмент модели и выполнить команду Create Subsystem из меню Edit окна модели. Выделенный фрагмент будет помещен в подсистему, а входы и выходы подсистемы будут снабжены соответствующими портами. Данный способ позволяет создать виртуальную неуправляемую подсистему. В дальнейшем, если это необходимо, можно сделать подсистему монолитной, изменив ее параметры, или управляемой, добавив управляющий элемент из нужной подсистемы, находящейся в библиотеке. Отменить группировку блоков в подсистему можно командой Undo. 6.2. Основные приемы подготовки и редактирования модели Процесс расчета модели выполняется Simulink в несколько этапов. На первом этапе выполняется инициализация модели: подключение библиотечных блоков к модели, определение размерностей сигналов, типов данных, величин шагов модельного времени, оценка параметров блоков. Затем определяется порядок выполнения блоков и выполняется выделение памяти для проведения расчета. После этого Simulink начинает выполнять цикл моделирования. На каждом цикле моделирования (временном шаге) происходит расчет блоков в порядке, определенном на этапе инициализации. Для каждого блока Simulink вызывает функции, которые вычисляют переменные состояния блока x, производные переменных состояния и выходы y в течение текущего шага модельного времени. Этот процесс продолжается пока моделирование не будет завершено. Выделение объектов, копирование, удаление. Для выполнения какоголибо действия с элементом модели (блоком, соединительной линией, надписью) этот элемент необходимо сначала выделить.
97
Выделение объектов проще всего осуществляется мышью. Для этого необходимо установить курсор мыши на нужном объекте и щелкнуть левой клавишей мыши. Произойдет выделение объекта. Можно также выделить несколько объектов. Для этого надо установить курсор мыши вблизи группы объектов, нажать левую клавишу мыши и, не отпуская ее, начать перемещать мышь. Появится пунктирная рамка, размеры которой будут изменяться при перемещении мыши. Все охваченные рамкой объекты становятся выделенными. Выделить все объекты также можно, используя команду Edit/Select All. После выделения объекта его можно копировать или перемещать в буфер промежуточного хранения, извлекать из буфера, а также удалять, используя стандартные приемы работы в Windows-программах. Для копирования объекта в буфер его необходимо предварительно выделить, а затем выполнить команду Edit/Copy или воспользоваться инструментом на панели инструментов. Для вставки объекта из буфера необходимо предварительно указать место вставки, щелкнув левой клавишей мыши в предполагаемом месте вставки, а затем выполнить команду Edit/Paste или воспользоваться инструментом на панели инструментов. Для удаления объекта его необходимо предварительно выделить, а затем выполнить команду Edit/Clear или воспользоваться клавишей Delete на клавиатуре. Следует учесть, что команда Clear удаляет блок без помещения его в буфер обмена. Однако эту операцию можно отменить командой меню File/Undo. Соединение блоков. Для соединения блоков необходимо сначала установить курсор мыши на выходной порт одного из блоков. Курсор при этом превратится в большой крест из тонких линий. Держа нажатой левую кнопку мыши, нужно переместить курсор ко входному порту нужного блока. Курсор мыши примет вид креста из тонких сдвоенных линий. После создания линии необходимо отпустить левую клавишу мыши. Свидетельством того, что соединение создано, будет жирная стрелка у входного порта блока. Выделение линии производится точно также, как и выделение блока – одинарным щелчком левой клавиши мыши. Черные маркеры, расположенные в узлах соединительной линии, будут говорить о том, что линия выделена. Создание петли линии соединения выполняется также, как перемещение блока. Линия соединения выделяется, и затем нужная часть линии перемещается. Удаление соединений выполняется также как и любых других объектов. Форматирование объектов. В меню Format (также как и в контекстном меню, вызываемом нажатием правой клавиши мыши на объекте) находится 98
набор команд форматирования блоков. Команды форматирования разделяются на несколько групп: 1. Изменение отображения надписей: Font — форматирование шрифта надписей и текстовых блоков. Text alignment — выравнивание текста в текстовых надписях. Flip name — перемещение подписи блока. Show/Hide name — отображение или скрытие подписи блока. 2. Изменение цветов отображения блоков: Foreground color — выбор цвета линий для выделенных блоков. Background color — выбор цвета фона выделенных блоков. Screen color — выбор цвета фона для всего окна модели. 3. Изменение положения блока и его вида: Flip block – зеркальное отображение относительно вертикальной оси симметрии. Rotate block – поворот блока на 900 по часовой стрелке. Show drop shadow — показ тени от блока. Show port labels — показ меток портов. 4. Прочие установки: Library link display — показ связей с библиотеками. Sample time colors — выбор цвета блока индикации времени. Wide nonscalar lines — увеличение/уменьшение ширины нескалярных линий. Signal dimensions — показ размерности сигналов. Port data types — показ данных о типе портов. Storage class — класс памяти. Параметр, устанавливаемый при работе RealTime Workshop. Execution order — вывод порядкового номера блока в последовательности исполнения.
Рисунок 6.15. Схема моделирования в среде MatLab Simulink
Объект наблюдения (в данном случае информационный процесс) представлен схемой (рис.6.16).
Рисунок 6.16. Схема моделирования полезного сигнала h(t)
Параметры блоков, моделирующих динамику сигнала задаются в диалоговом окне параметров (рис. 6.17).
6.3. Моделирование процесса в системе MatLab Simulink Для проведения моделирования процесса необходимо использовать совместное его моделирование с измерителем процесса и устройством обработки измерений. Для этого составляется управляющая схема (рис. 6.15).
Рисунок 6.17. Окно параметров настройки матричной модели
99
100
В соответствии со схемой формирования сигналов (рис. 1) измерение y(t) является аддитивной смесью полезного сигнала h(t) и помехи n(t): y(t)=h(t)+n(t). Такое формирование в реальных условиях осуществляет датчик первичной информации ДПИ. Его модель представлена на рис.6.18. Рисунок 6.20. Схема системы контроля
Рисунок 6.18. Моделирование измерения y(t)
На осциллограммах рис. 6.19 представлены процессы h(t) и y(t), полученные при моделировании процессов.
Случайная составляющая g(t) измеряемого процесса задана спектральной плотностью Sg(w); детерминированная − сигналом u(t); h(t)=g(t)+u(t) − полный информационный процесс; f(t)=h(t)+n(t) − измерение процесса h(t) с аддитивными шумами n(t) (задана спектральная плотность шума − Sn(w)); h^(t) − выходной сигнал ДПИ; W(s) − передаточная функция ДПИ. Детерминированное входное воздействие задано суммой ступенчатой и гармонической функций. Для моделирования системы контроля в Matlab составляется схема модели рис. 6.21. F(t)
Сигналы
Датчик
Регистратор
Блок ошибок
e(t) σ e(t)
Рисунок 6.21. Схема моделирования системы контроля
Пример. Задана спектральная плотность контролируемого процесса ω2 + 16 , ω + ω2 + 4
S ( w) = Рисунок 6.19. Осциллограммы процессов h(t) и y(t)
6.3.1. Моделирование непрерывной системы контроля Система контроля предназначена для измерения и выдачи информации о контролируемом процессе h(t), который содержит среднюю (детерминированную) составляющую и стохастическую (случайную) g(t). Измерение происходит при воздействии аддитивных шумов n(t). Датчик, с помощью которого производятся измерения, является динамическим звеном (в данном случае второго порядка). Эквивалентная схема системы контроля представлена на рисунке 6.20.
101
4
передаточная функция объекта наблюдения W ( s) =
0,45 , 2s + 0,18s + 0,28 2
и интенсивность шумов измерений R=17 (при измерении выходного сигнала объекта наблюдения). Путем факторизации из модели в виде спектральной плотности получим передаточную функцию формирующего фильтра входного процесса.
4+ s . s + 2,236s + 2 Матричная модель ОН находится методом вспомогательной переменной. Уравнение состояния в данном случае X'=AgX+Bgu+Dgv. Процесс h(t) на Wg ( s ) =
102
2
выходе ОН вычисляется в матричном виде: g =CgX, где матрицы Ag, Dg, Cg определяются по матричным соотношениям (формулы (3.6) [1]). В данном примере получим следующий вид матриц 1 0 0 Ag = ; Bg = ; C g = [4 1]. − 2 − 2,236 1 Матричная модель датчика ̇ =
+
имеет вид
Моделирование и исследование в MatLab. Cоставлена схема (рис. 6.22).
1 0 0 A0 = ; B0 = ; C0 = [0,25 0]. − 0,14 − 0,09 0,5
Выход объекта наблюдения h =C0X0 Полное уравнение объекта контроля содержит уравнение состояния входного процесса и уравнение состояния объекта:
.
Рисунок 6.22. Схема верхнего уровня системы контроля в Matlab
Схема динамической системы, включающая стохастический процесс и датчик, представлена на рис. 6.23.
Здесь матрицы A, B, D составляются на основе дифференциальных уравнений процесса и объекта контроля, которые имеют вид
Рисунок 6.23. Схема динамической системы
или относительно полного вектора
Настройка блока уравнения состояния представлена в окне параметров на рис. 6.24.
Матрицы A, B,C, D в этом случае имеют вид
103
104
Рисунок 6.27. Модель фильтра
Матрицы A, B, C соответствуют матрицам полной модели, матрица С в блоке State Spase – единичная. Результаты процессов системы представлены на рис. 6.29. На осциллограф поданы сигналы согласно схеме рис. 6.22.
Рисунок 6.24. Окно настройки параметров
Функциональный блок, вычисляющий h(t)=CX, задан функцией представленной в окне параметров рис. 6.25.
Рисунок 6.28. Регистратор процессов
Рисунок 6.25. Настройка функциональных блоков
Сенсор (датчик) представлен схемой рис. 6.26. Интенсивность шума генератора белого шума составляет 0,4. Рисунок 6.29. Результирующие процессы
6.3.2. Моделирование дискретной системы контроля Рисунок 6.26. Модель сенсора
Блок Filter на основе измерений выдает оценку выходного параметра объекта наблюдения – h^(t). Схема моделирования фильтра в данном случае представлена на рис. 6.27. 105
Дискретная модель содержит неизвестные матрицы F, G. Расчет матриц F, G выполняется итерационным алгоритмом в виде разложения в матричный ряд Тейлора. Для этого используется вспомогательная матрица ψ: 106
A . При этом матрицы F, G вычисляются по формулам: ,
.
B
D
0,00000,00000,45000,0000
-2,0000-2,23600,00000,00000,0000
1,0000
0,00000,00000,00001,00000,0000
0,0000
4,00001,0000-0,1400-0,09000,5000
0,0000
F
(6.1)
C
0,00001,00000,00000,00000,0000
G
dt
C
T
0,96870,15290,00000,00000,00000,19000,00000,00000,450000,0157
Для расчета дискретной матричной модели определяется период дискретности ОН в соответствии с импульсной теоремой [1]: dt=1/(2Fm), где Fm максимальная частота пропускания ОН. Для процесса. Квадрат модуля амплитудно-фазочастотной характеристики (АФЧХ) процесса
-0,30590,62670,00000,00000,0000
0,1529
0,06930,01960,99750,18820,0090
0,0012
0,71360,2136-0,02640,98050,0941
0,0196
I
Psi
1,00000,00000,00000,00000,98920,08240,00000,0000 0,00001,00000,00000,0000-0,16480,80500,00000,0000 0,00000,00001,00000,00000,02340,00640,99920,0944
.
0,00000,00000,00001,00000,36480,1034-0,01320,9907
Для расчета wmax получим соотношение . Получим wmax=16,25 рад/с. В соответствии с импульсной теоремой [1, с.12], период дискретности процесса: dt1 =0,19 c. Для объекта наблюдения. Квадрат модуля амплитудно-фазочастотной характеристики (АФЧХ)
Оценка дисперсии процесса. Экспериментальное исследование дисперсии процесса проводится на основе численной оценки дисперсии ошибки. Рекуррентная формула такой оценки имеет вид [9]: De (k ) =
k −1 1 De (k − 1) + [h(k )]2 . k k
(6.2)
Среднеквадратическое отклонение в этом случае рассчитывается по фор-
. муле
Для расчета wmax получим соотношение . Получим wmax=2,136 рад/с. В соответствии с импульсной теоремой период дискретности объекта наблюдения определяется в виде dt2=π/wmax=1,47 c. Для реализации модели как процесса, так и объекта наблюдения выбирается минимальный период дискретности dtmin= dt1=0,19 c. Матрицы F, G могут быть найдены с помощью электронных таблиц Excel при использовании формул (6.1).
, где De установившееся значение дисперсии (=De(n)). Схема для вычисления De представлена на рисунке 6.30. Эта схема соответствует формуле (6.2). Для формирования векторного сигнала, состоящего из компонент h(t), h^(t), De(k-1), k использован блок Max из библиотеки элементов Matlab Simulink (сигнал h^(t) задается равным нулю). Затем этот вектор обрабатывается функциональным блоком f(u) - De1, в виде (u(2)-u(1))*(u(2)-u(1))/(u(3))+u(4)*(u(3)-1)/(u(3)), т.е. реализуется формула (6.2). Сигнал u(3) вырабатывается вторым функциональным блоком (=1+u[1]/0.1) и с учетом u[1]=i*dt (где i – номер дискретного времени в диапазоне 0…400, dt=0,1 с – период дискретности) соответствует k.
107
108
делей: 1) модели для полезной случайной составляющей Xg′=AgXg+DgVg; 2) модели помехи X′n=AnXn+DnVn; 3) модели ДПИ, определяемой передаточной функцией W(s): Xw′=AwXw+Dwf(t).
Рисунок 6.30. Схема вычисления дисперсии ошибки оценивания
Блок 1/z – предназначен для задержки на один такт сигнала De(k) и получения на выходе De(k-1). Нижний переключатель управляется переменной k (номер дискретного времени) и при начальном k=0 дает на выходе ноль. Если бы не делать такую блокировку, то на вход блока Max проходил бы неопределенный сигнал с 1/z и получился бы сбой в работе. 7. Примеры моделирования 7.1. Моделирование датчика при сигнале и аддитивном шуме Структурная схема ДПИ с воздействующими сигналами представлена на рис. 7.1. Случайная составляющая g(t) измеряемого процесса задана спектральной плотностью Sg(w); детерминированРис.7.1. Структурная схема ДПИ ная − сигналом u(t); h(t)=g(t)+u(t) − полный информационный процесс (ИП); f(t)=h(t)+n(t) − измерение процесса h(t) с аддитивными шумами n(t) (задана спектральная плотность шума − Sn(w)); v(t) − возмущающее воздействие на ДПИ; h^(t) − выходной сигнал ДПИ; W(s) − передаточная функция ДПИ. На практике встречается задача исследования ДПИ, измеряющего детерминированно-стохастические физические величины в условиях внешних помех и при наличии внутренних параметрических шумов, проявляющихся, например, в мультипликативных и аддитивных изменениях статической характеристики ДПИ [10]. Полная модель ДС в данном случае состоит из трех отдельных мо109
Алгоритм формирования полной модели ДПИ. 1. Вычисление передаточных функций формирующих фильтров ИП g(t) и помехи n(t). 2. Определение максимальных частот спектров ИП, шума и вычисление их периодов дискретизации. 3. Определение полосы пропускания ДПИ, периода дискретизации для его цифрового моделирования, результирующего периода дискретизации системы ДПИ с сигналами. 4. Формирование моделей сигналов g(t), n(t), ДПИ и модели выхода в матричной непрерывной форме (для g(t) и n(t) - методом вспомогательной переменной, для ДПИ - методом нормальной формы Коши). 5. Формирование дискретных матричных моделей сигналов и ДПИ. 6. Вычисление среднеквадратической ошибки на выходе ДПИ. 7. Моделирование процессов в ДПИ в дискретном времени и исследование графиков и численной информации. Модель случайных сигналов формируется из спектральных плотностей Sg(w) и Sn(w) путем факторизации и определения передаточных функций формирующих фильтров Wg(s) и Wn(s) с последующим нахождением матричных моделей в пространстве состояний методом вспомогательной переменной. Модель в пространстве состояний методом вспомогательной переменной составляется на основе передаточной функции формирующего фильтра. Для сигнала g(t) Wg (s ) =
g ( s) B ( s ) b0 + b1s + ... + bm s m . = = V ( s) D( s ) d 0 + d1s + ... + d n s n
Уравнениe состояния сигнала X'g=AgXg+DgVg. Сигнал на выходе формирующего фильтра g(t)=CXg. Матрицы Ag, Dg, Cg определяются методом вспомогательной переменной. Модель динамики ДПИ составляется на основе передаточной функции. Выражение W(s) ДПИ имеет дробно-рациональный вид:
W (s ) =
y ( s ) Bw( s) bw 0 + bw1s + ... + bwm s m = = . f ( s) Aw( s) aw 0 + aw1s + ... + awn s n
110
Преобразование модели W(s) в матричную модель в данном случае осуществляется в канонической нормальной форме Коши. Период дискретности равен минимальному из значений для ДПИ и ИП. Возникновение ошибок ДПИ связано с прохождением на выход шумов и искажением полезного сигнала динамикой ДПИ. Теоретическое значение среднеквадратической ошибки (СКО) находится через спектральную плотность в соответствии с соотношением
1∞ Se ( w) dw , π ∫0
СКО =
(7.1)
где спектральная плотность ошибки Se(w) вычисляется в виде Se ( w) = W ( jw) Sn ( w) + 1 − W ( jw) Sg ( w), 2
2
(7.2)
(W(jw) - амплитудно-фазочастотная характеристика ДПИ). Экспериментальное значение СКО при моделировании на ПЭВМ вычисляется как среднее по всем дискретным точкам наблюдения: n
CK O =
1 ∑ [ y( k ) − g( k )]2 . n k =1
(7.3)
процесса такого класса g(t) задано математическое ожидание Mg и дробнорациональная спектральная плотность Sg(w). Процесс g(t) задан спектральной плотностью Sg(w). Детерминированная составляющая процесса u(t)=Mg; h(t)=g(t)+u(t) - полный ИП; y(t)=h(t)+n(t) - измерение процесса h(t) с аддитивными шумами n(t) (задана интенсивность шума Sn(w)=R). Информационный процесс g(k) представляется моделью в пространстве состояний - векторной случайной последовательностью Х(k) (n-мерным вектором состояния); v(k) - формирующий шум векторной случайной последовательности X(k). При этом g(k)=СХ(k). Алгоритм формирования модели. 1. На основе первичной модели ИП - S(w) находится динамическая модель его формирующего фильтра. 2. На основе передаточной функции формирующего фильтра составляется матричная непрерывная модель ИП (X'(t)=AX(t)+DV(t) - система дифференциальных уравнений первого порядка). 3. Вычисляется максимальная частота спектра ИП - Fm (полоса пропускания формирующего фильтра). 4. По импульсной теореме определяется период дискретизации ИП. 5. Формируется результирующая дискретная матричная модель ИП (X(k+1)=FX(k)+TV(k) - система разностных уравнений первого порядка). 6. Определяется уравнение формирования процесса g(k) в зависимости от переменных вектора состояния X (g(k)=CX(k)). Пример. Пусть детерминированно-стохастический ИП задан средним значением Mg=0,1 и спектральной плотностью
7.2. Моделирование процессов с заданными свойствами Sg ( w) =
Реальные ИИС и САУ работают с детерминированно-стохастическими сигналами. В ИИС к ним относятся измеряемые физические величины, шумы измерений, выходные сигналы, параметры вектора состояния. В САУ стохастическими процессами являются возмущения объекта управления, сигналы, измеряемые ДПИ, параметры вектора состояния. В связи с этим задача моделирования процессов с заданными статистическими характеристиками (математическим ожиданием, спектральной плотностью, дисперсией) при исследовании ИИС, САУ и просто ДПИ является актуальной. Рассмотрим задачу моделирования класса эргодических процессов. Они определяются математическим ожиданием и корреляционной функцией (или, что эквивалентно, спектральной плотностью). Пусть для стохастического
111
2 w2 + 8 w4 + 198 w2 + 10201
.
Шум измерения процесса характеризуется интенсивностью R=0,01. При использовании CAD-MS в разделе MODEL задаем исходные данные, например, по варианту 1, и определяем все последующие модели. Получим передаточную функцию формирующего фильтра 14 , s + 2,8 Wg( s) = 2 . s + 20s + 101 Полоса пропускания фильтра составляет Wc=0,0139 рад/с, соответствующий период дискретизации должен быть не более 0,1 с. В качестве резуль-
112
татов получим матричные модели в непрерывной форме: X'g=AgXg+DgVg, g(t)=CgXg и в дискретной форме: Xg(k+1)=FgXg(k)+TgV(k), g(k)=CgXg(k), где матрицы Ag, Dg, Cg, Fg, Tg соответственно равны:
1 0 0 Ag = , Dg = , Cg = [2,8 1,4 ], -101 20 1 0,978 0,0179 0,00022 Fg = , Tg = . -1,81 0,62 0,018
Детерминированная составляющая процесса моделируется аналитическими выражениями (в данном случае скачкообразный сигнал). Результаты. Исследуются числовые характеристики процесса: математическое ожидание, корреляционная функция, дисперсия, спектральная плотность. Эти характеристики оцениваются методами математической статистики. Процесс и его статистические характеристики иллюстрируются на дисплее и записываются в виде дискретных значений в файл на диске.
Рисунок 7.2
Для моделируемого процесса компоненты вектора состояния X(k) представляются в виде графиков на экране дисплея в диалоговом режиме по рисунку структурной схемы. В качестве результатов моделирования ИП на графиках изображены: полный ИП h(t)=g(t)+n(t); измерение процесса с шумами f(t); корреляционная функция Rg(r) (рис.7.2); спектральная плотность Sg(w) (рис.7.3). График корреляционной функции может быть аппроксимирован формулой Rx(τ)=σ2e-ατ, где σ2 - дисперсия процесса g(t); α - постоянная корреляции, которая вычисляется из графика на уровне 2 с. График спектральной плотности показывает распределение мощности процесса по частотам. Эффективный диапазон частот процесса определяется круговой частотой, примерно равной 0,01 рад/с, что соответствует теоретическому значению. Оценки дис-
113
персии процесса, вычисленные через корреляционную функцию и спектральную плотность, совпали и составляют 0,096. Выводы. Матричная модель ИП является универсальной и удобна для цифрового моделирования на ПЭВМ. Исследование процессов необходимо во многих задачах ИИС и САУ, например, для Рисунок 7.3 ДПИ с воздействующими сигналами и аддитивными шумами, для ДС с объектом управления при воздействии возмущений и входных сигналов, для ИИС с детерминированными и стохастическими сигналами и несколькими ДПИ. 8. Марковские процессы и системы Стохастические системы относятся к классу сложных систем. Состояния таких систем рассматриваются с позиций случайных марковских процессов. Пусть имеется некоторая физическая система S (в данном случае ИИС), которая с течением времени меняет свое состояние, причем заранее неизвестным, случайным образом. Например S - техническое устройство, состоящее из ряда узлов, которые время от времени выходят из строя, заменяются или восстанавливаются. Процесс, протекающий в этой системе, безусловно, случаен. Строго говоря, все процессы в природе случайны. До тех пор, пока случайные возмущения несущественны, мало влияют на интересующие параметры, можно ими пренебречь и рассматривать процесс как детерминированный, неслучайный. 8.1. Марковские процессы Марковским называется случайный процесс, протекающий в системе, если для любого момента времени to вероятностные характеристики процесса в будущем зависят только от его состояния в данный момент to и не зависят от того, когда и как система пришла в это состояние [34].
114
Это очень важное определение. Пусть в настоящий момент to (см. рис.8.1) система находится в определенном состоянии So.
Рисунок 8.1. Связь будущего состояния системы с прошлым через настоящее
Естественно, интересует будущее состояние при t > to. Можно ли его предсказать? В точности - нет, т.к. процесс случайный. Но какие-то вероятностные характеристики процесса в будущем можно найти. Например, вероятность того, что через некоторое время t система S окажется в состоянии Si или сохранит состояние So, и т. п. Для марковского случайного процесса такое «вероятностное предсказание» оказывается гораздо проще, чем для немарковского. Если процесс - марковский, то предсказывать можно, только учитывая настоящее состояние системы So и забыв о его «предыстории» (поведении системы при t
Размерность n вектора x(t) называют порядком марковского процесса. Марковская модель безусловно является определенной идеализацией по отношению к реальным процессам, однако, несмотря это, она признается во многих практических случаях достаточно адекватной. Достоинство этой модели со-
стоит в возможности использования эффективных алгоритмов обработки информации. Корреляционная функция Kx(τ), отражающая зависимость процесса во времени (быстродействие), может с ростом τ или монотонно убывать или стремиться к нулю по более сложному закону. Корреляционные функции, наиболее часто имеющие место на практике, описываются выражениями: K (τ) = σ 2 exp( −α | τ |) и K (τ) = σ 2 exp(−α | τ |) cos βτ. x1
Примерами корреляционных функций, соответствующих дифференцируемым процессам, могут служить: K x3 (τ) = σ 2 exp(−α 2 τ 2 ); . α K x 4 ( τ) = σ 2 exp( −α τ ) × cos βτ + sin β τ β
Наиболее часто также случайные процессы является гауссовскими (нормальными) случайными процессами x(t), у которых для вектора x , образованного совокупностью случайных величин xk = x(tk) ( k = 1, n ), все плотности распределения вероятности любого порядка имеют вид f ( x ,t1 ,t 2 ,...,t n ) =
1 n
(2π) 2
Px
1 2
1 exp − ( x − m x ) T Px−1 ( x − m x ) 2
,
где х=(x1, x2,...,xn)T, Px−1 − определитель ковариационной матрицы Px вектора x . Далее рассматриваются процессы, для которых Px ≠ 0 . Недиагональные элементы pij матрицы Px являются значениями взаимной корреляционной функции хi и хj для моментов времени ti и tj. В случае стационарного гауссовского процесса плотность зависит лишь от величин интервалов между рассматриваемыми точками на оси времени. Другим важным стационарным случайным процессом марковских систем является процесс w(t) типа «белый шум», под которым понимается процесс с нулевым математическим ожиданием и корреляционной функцией K w ( τ ) = qδ ( τ ) ,
где 115
x2
q - интенсивность белого шума; 116
δ(τ) - дельта-функция, свойства которой задаются равенствами: 0; τ ≠ 0; δ(t ) = ∞; τ = 0;
∫ δ(t ) dτ = 1,
причем второе равенство справедливо, если точка τ = 0 принадлежит интервалу интегрирования. Ясно, что белый шум, как и гаусссовский процесс, нереализуем, поскольку в любом реальном случайном процессе два достаточно близких значения всегда зависимы, а дисперсия процесса конечна. Оба эти свойства в данном случае не выполняются. Несмотря на отмеченные факты, модель белого шума широко применяется при конструировании моделей случайных процессов в составе так называемых формирующих фильтров. Распределения вероятностей для белого шума в обычном смысле не существует, поскольку дисперсия (значение корреляционной функции в нуле) равна бесконечности. Тем не менее, далее модель гауссовского белого шума применяется достаточно широко. В основном это относится к моделям дискретного времени, где такая модель становится реализуемой. Переход к модели дискретного времени предполагает осреднение непрерывного белого шума на интервале дискретизации. При этом за дисперсию дискретного белого шума принимается поделенная на интервал дискретизации интенсивность непрерывного белого шума. Спектральные плотности, соответствующие корреляционным функциям Kх1(τ) и Kх4(τ), описываются выражениями: S x1 (ω) =
σ2 α ; π (ω 2 + α 2 )
S x 4 (ω) =
2 σ 2 α (α 2 + β 2 ) . π ((ω − β 2 − α 2 ) 2 + 4α 2 ω2 ) 2
Марковский процесс описывается системой стохастических дифференциальных уравнений первого порядка, решением которой он является. Уравнения системы характеризуются случайными начальными условиями и в правой части содержат случайные функции (процессы)
x& (t) = F(t) x(t) + G(t)w(t), где x(t) - n-мерный вектор состояния; F(t) - (п × n) - матрица динамики процесса x(t); 117
w(t) - векторный гауссовский белый шум единичной интенсивности; G(t) - матрица, определяющая интенсивность процесса G(t)w(t). Такой процесс называют диффузионным марковским процессом. Часто уравнения называют формирующим фильтром, отмечая тем самым факт формирования разнообразных случайных процессов x(t) на основе процесса типа белый шум. Диффузионный марковский процесс, описываемый уравнением состояния, может быть как стационарным, так и нестационарным. Решение этого уравнения определяется выражением t , x(t ) = χ(t , t0 ) x(t 0 ) + ∫ χ(t , t 0 ) G ( τ) ξ( τ) dτ t0
где χ(t ,t0 ) - фундаментальная матрица, с помощью которой решение уравнения x& (t) = F(t) x(t) записывается в виде: x(t ) = χ(t , t 0 ) x(t0 ) . Математическое ожидание: m (t ) = χ (t , t ) m . 0 0 Если в момент времени t0 математическое ожидание m0 процесса не равно нулю, то процесс x(t) характеризуется изменяющимся во времени математическим ожиданием от времени (по фундаментальной матрице: χ(t , t 0 ) ), т.е. нестационарен. Ковариационная матрица P(t) процесса удовлетворяет уравнению Риккати P& (t ) = F (t ) P(t ) + P(t ) F T (t ) + G(t )GT (t ) , т.е. в общем случае также является функцией времени. При т0 = 0 процесс будет стационарным, если матрицы F и G постоянны, матрица F устойчива, а начальное значение P(t) совпадает с установившимся значением. Примеры марковских случайных процессов. Диффузионный марковский процесс первого порядка. Этот случайный процесс описывается дифференциальным уравнением первого порядка x& + α x = gw , где α − постоянная положительная величина; w − случайный процесс типа белый шум единичной интенсивности, для которого Sw(ω) = l; g − коэффициент интенсивности белого шума w ( g = q , q −интенсивность белого шума). Спектральная плотность стационарного решения имеет вид
118
S x (ω) =
g2 iω + α
2
=
g2 . ω2 + α 2
Марковский процесс первого порядка в установившемся режиме характеризуется корреляционной функцией K ( τ) = σ 2 exp( −α τ ) и является недифx1
ференцируемым. Это, вообще говоря, следует также из того, что производная процесса содержит белошумную составляющую. В связи с установленным фактом недифференцируемости, следует обратить внимание на условность использования в данном случае символа производной. Диффузионный марковский процесс второго порядка. Этот случайный процесс описывается дифференциальным уравнением второго порядка
и переход системы из состояния в состояние происходит «скачком», практически мгновенно. Процессом с непрерывным временем называется процесс, если моменты возможных переходов из состояния в состояние не фиксированы заранее, а неопределенны, случайны, если переход может осуществиться, в принципе, в любой момент. Будем рассматривать только процессы с дискретными состояниями и непрерывным временем. Пример такого процесса: система S состоит из двух узлов, каждый из которых в случайный момент времени может выйти из строя (отказать), после чего начинается ремонт узла, тоже продолжающийся заранее неизвестное, случайное время (рисунок 8.2). Состояния системы можно перечислить:
&x& + 2hx& + k 2 x = gw, h > 0 или в виде системы двух уравнений первого порядка
x&1 = x2 ;
Рисунок 8.2. Граф отказов и восстановлений 2-х компонентной системы
x& 2 = −k 2 x1 − 2 hx2 + gw, где
h и k - постоянные; w - случайный процесс типа белый шум единичной интенсивности; g - коэффициент интенсивности белого шума w . Спектральная плотность стационарного решения имеет вид S x (ω) =
q − ω + 2ihω + k 2
2 2
=
2σ α (α + β ) , π (ω 2 − β 2 − α 2 ) 2 + 4 α 2 ω 2 2
2
2
где введены обозначения α = h, β = k 2 − h 2 , σ2 = π 2hk 2 . Данный марковский процесс характеризуется корреляционной функцией α K x 4 (τ) = σ 2 exp(−α τ ) cos βτ + sin β τ и является дифференцируемым. β 8.1.1. Основные свойства марковских систем Большое значение имеют марковские случайные процессы с дискретными состояниями и непрерывным временем. Процессом с дискретными состояниями называется процесс, если его возможные состояния S1, S2, S3,... можно заранее перечислить (пронумеровать), 119
S0 - оба узла исправны, S1 - первый узел ремонтируется, второй исправен, S2 - второй узел ремонтируется, первый исправен, S3 - оба узла ремонтируются. Переходы системы S из состояния в состояние происходят практически мгновенно, в случайные моменты выхода из строя того или другого узла или окончания ремонта. При анализе случайных процессов с дискретными состояниями используют граф состояний. Состояния системы изображаются прямоугольниками (или кругами, или даже точками), а возможные переходы из состояния в состояние - стрелками, соединяющими состояния. Граф состояний для данного примера представлен на рисунке. Стрелка, направленная из S0 в S1, означает переход в момент отказа первого узла; стрелка, направленная обратно, из S1 в S0,- переход в момент окончания ремонта этого узла. Остальные стрелки объясняются аналогично. Предполагается, что узлы выходят из строя независимо друг от друга, а вероятностью строго одновременного выхода их из строя бесконечно мала. Потоки событий в системах. Потоком событий называется последовательность однородных событий следующих одно за другим в случайные моменты времени. Например, поток отказов (сбоев) ЭВМ. 120
Говоря о «потоке событий», нужно иметь в виду, что здесь термин «событие» имеет значение, несколько отличное от того, к которому мы привыкли в теории вероятностей. Там «событием» называется исход опыта, обладающий вероятностью. События, образующие поток, сами по себе вероятностями не обладают; вероятностями обладают другие, производные от них события, например, «на участке времени Δt произойдет событие». Важной характеристикой потока событий является его интенсивность λ среднее число событий, приходящееся на единицу времени. Интенсивность потока может быть как постоянной (λ =const), так и переменной, зависящей от времени t. Например, поток отказов автомобиля в период обкатки имеет убывающую интенсивность с течением времени. Поток событий называется регулярным, если события следуют одно за другим через определенные, равные промежутки времени. На практике чаще встречаются потоки не регулярные, со случайными интервалами. Поток событий называется стационарным, если его вероятностные характеристики не зависят от времени. В частности, интенсивность λ стационарного потока должна быть постоянной. Это отнюдь не значит, что фактическое число событий, появляющихся в единицу времени постоянно. Поток неизбежно (если только он не регулярный) имеет какие-то случайные сгущения и разрежения. Поток событий называется потоком без последействия, если для любых двух непересекающихся участков времени τ1 и τ2 (см. рис. 8.3) число событий, попадающих на один из них, не зависит от того, сколько событий попало на другой.
Рисунок 8.3. Возникновение событий без последействия
Если минимальный интервал между событиями много меньше среднего интервала между ними t = 1/ λ, наличием последействия можно пренебречь. Поток событий называется ординарным, если события в нем появляются поодиночке, а не группами по нескольку раз. Если поток событий ординарен, то вероятностью попадания на малый участок времени Δt двух или более событий можно пренебречь. Пуассоновский поток событий. Поток событий называется простейшим (или стационарным пуассоновским), если он обладает сразу тремя свойствами: стационарен, ординарен и не имеет последействия. Название «простейший» связано с тем, что процессы, связанные с простейшими потоками, имеют наи121
более простое математическое описание. Регулярный поток не является «простейшим», так как обладает последействием. Простейший поток играет среди других потоков особую роль, в чем-то подобную роли нормального закона среди других законов распределения. А именно, при наложении (суперпозиции) достаточно большого числа независимых, стационарных и ординарных потоков (сравнимых между собой по интенсивности) получается поток, близкий к простейшему. Для простейшего потока с интенсивностью λ интервал Т между соседними событиями имеет так называемое показательное распределение с плотностью f(t) = λe –λt (см. рис. 8.4).
Рисунок 8.4. Показательное распределение простейшего потока событий
Величина λ в формуле (8.1) называется параметром показательного закона. Для случайной величины Т, имеющей показательное распределение, математическое ожидание тТ есть величина, обратная интенсивности, а среднее квадратическое отклонение σT равно математическому ожиданию: тТ= σT=1/λ.
(8.1)
В теории вероятностей в качестве «меры случайности» не отрицательной случайной величины нередко рассматривают так называемый коэффициент вариации: VT = σT / тТ . (8.2) Из формул (8.1), (8.2) следует, что для показательного закона распределения VT =1, т. е. для простейшего потока событий коэффициент вариации интервалов между событиями равен единице. Очевидно, что для регулярного потока событий, у которого интервал между событиями не случаен (σT = 0), коэффициент вариации равен пулю. Для большинства потоков событий, встречающихся на практике, коэффициент вариации интервалов между событиями заключен между нулем и единицей и может служить мерой «степени регулярности» потока: чем VT ближе к нулю, тем «регулярнее» поток. Простейший поток - это «наименее регулярный» из встречающихся на практике потоков.
122
В расчетах, связанных с потоками событий, удобно пользоваться понятием «элемента вероятности». Рассмотрим на оси Ot простейший поток с интенсивностью λ и произвольно расположенный элементарный участок времени Δt. Элементом вероятности называется вероятность попадания на этот участок хотя бы одного события потока. Легко доказать, что элемент вероятности (с точностью до малых величин более высокого порядка по сравнению с Δt) равен рΔt = λ Δt, (8.3) т. е. для простейшего потока элемент вероятности равен интенсивности потока, умноженной на длину элементарного участка. Поток событий называется рекуррентным (иначе – потоком Пальма), если он стационарен, ординарен, а интервалы времени между событиями T1, T2, Т3,... представляют собой независимые случайные величины с одинаковым произвольным распределением (например, с распределением, показанным на рис. 8.5). Например, технический элемент − интегральная схема работает непрерывно до своего отказа, отказавший элемент мгновенно заменяется новым. Если отдельные экземпляры элемента выходят из строя независимо друг от друга, то поток отказов (он же «поток замен» или «восстановлении») будет рекуррентным. Очевидно, простейший поток представляет собой частный случай рекуррентного потока, когда интервалы между событиями имеют показательное распределение. Другим частным (вырожденным) случаем рекуррентного потока является регулярный поток событий, где интервалы вообще не случайны, постоянны.
Рисунок 8.5. Пример потока Пальма
8.2. Уравнения Колмогорова для вероятностей состояний систем Рассматривая Марковские процессы с дискретными состояниями и непрерывным временем, удобно представлять, что все переходы системы S из состояния в состояние происходят под действием каких-то потоков событий (поток вызовов, поток отказов, поток восстановлении и т.д.). Причем все потоки событий, переводящие систему S из одного состояния в другое простейшие (простейший поток не обладает последействием).
123
Если система S находится в каком-то состоянии Si , из которого есть непосредственный переход в другое состояние Sj (стрелка, ведущая из Si в Sj на графе состояний), то это будем представлять так, как будто на систему, пока она находится в состоянии Si, действует простейший поток событий, переводящий ее по стрелке из Si в Sj. Как только появится первое событие этого потока, происходит «перескок» системы из Si в Sj. Для наглядности на графе состояний у каждой стрелки проставляется интенсивность потока событий, переводящего систему по данной стрелке. Обозначим λij интенсивность потока событий, переводящего систему из состояния Si в Sj. Колмогоров доказал, что процесс Pi (t) детерминирован и определяется дифференциальными уравнениями Колмогорова. Пусть марковский процесс находиться в состоянии Si – процесс может выйти и войти в него. Для вычисления вероятностей состояний составляются и решаются так называемые уравнения Колмогорова - особого вида дифференциальные уравнения, в которых неизвестными функциями являются вероятности состояний. Вероятность сохранения i-го состояния за период Δt определяется в виде: N
N
Pi (t + ∆t ) = Pi (t )(1 − ∆t ∑ λ ji (t )) + ∆t ∑ Pj (t )λ ji (t ) j =1
[ Pi (t + ∆t ) − Pi (t )]
j =1
N
N 1 = − Pi (t ) ∑ λ ij (t ) + ∑ Pj (t ) λ ij (t ) ∆t j =1 j =1
dPi (t ) P (t + ∆t ) − Pi (t ) = lim i ∆ t → 0 dt ∆t N N dPi (t ) dt = − Pi (t )∑ λ ij (t ) + ∑ Pj (t )λ ij (t ), i = 1..n j =1 j =1 N P (t ) = 1 ∑ i i =1
Пример. Пусть система (рисунок 8.6) находится в состоянии S0. Какой поток событий переводит ее в состояние S1? Очевидно, поток отказов первого узла. Его интенсивность λ1 равна единице, деленной на среднее время безотказной работы первого узла. Какой поток событий переводит систему обратно из S1 в S0? Очевидно, поток «окончаний ремонтов» первого узла. Его интенсивность µ1 равна единице, деленной на среднее время ремонта первого узла. Аналогично вычисляются интенсивности потоков событий, переводящих систему по всем стрелкам графа.
124
Имея в своем распоряжении размеченный граф состояний системы, легко построить математическую модель данного процесса. Пусть рассматривается система S, имеющая n возможных состояний S1, S2, S3, …, Sn. Назовем вероятностью i-го состояния вероятность pi (t) того, что в момент t система будет находиться в состоянии Si . Очевидно, что для любого момента сумма всех вероятностей состояний равна единице:
Найдем вероятность второго варианта. Она равна вероятности того, что в момент t система будет в состоянии S2, а за время ∆t перейдет из него в состояние S1, т. е. она равна p2(t)λ21∆t. Складывая вероятности обеих вариантов (по правилу сложения вероятностей независимых событий) получим: p1(t+∆t)=p1(t)[1-(λ12+λ13)∆t]+p2(t)λ21∆t.
n
∑ p (t ) = 1 i =1
i
.
(8.4)
Имея размеченный граф состояний, можно найти все вероятности состояний pi (t) как функции времени. Пример составления уравнений Колмогорова. Рассмотрим более сложную систему S, которая имеет четыре состояния: S1, S2, S3, S4, размеченный граф которых показан на рис.8.6.
(8.5)
Раскроем квадратные скобки перенесем p1(t) в левую часть и разделим обе части на ∆t: (p1(t+∆t)-p1(t))/∆t=λ21p2(t)-(λ12+λ13)p1(t). Устремим, как полагается в подобных случаях, ∆t к нулю слева получим в пределе производную функции p1(t). Таким образом, запишем дифференциальное уравнение для p1(t): dp1 (t ) = λ 21 p2 (t ) − (λ12 + λ13 ) p1 (t ) dt или короче: dp1 = λ 21 p2 − (λ12 + λ13 ) p1 dt
Рисунок 8.6. Марковская система с четырьмя состояниями
Рассмотрим одну из вероятностей состояний, например p1(t). Этовероятность того, что в момент t система будет в состоянии S1. Придадим t малое приращение ∆t и найдем p1(t+∆t) − вероятность того, что в момент t+∆t система будет в состоянии S1. Это может произойти двумя способами: либо в момент t система уже была в состоянии S1, а за время ∆t не вышло из него; либо в момент t система была в состоянии S2, а за время ∆t перешла из него в S1. Найдем вероятность первого варианта. Вероятность того, что в момент t система была в состоянии S1, равна p1(t). Эту вероятность нужно умножить на вероятность того, что, находившись в момент t в состоянии S1, система за время ∆t не перейдет из него ни в S2, ни в S3. Суммарный поток событий, выводящий систему S1, тоже будет простейшим, с интенсивностью λ12+λ13 (при наложении двух простейших потоков получается опять простейший поток). Значит вероятность того, что за время ∆t система выйдет из состояния S1 равна (λ12+λ13)∆t вероятность того, что не выйдет: 1-(λ12+λ13)∆t. Отсюда вероятность первого варианта равна p1(t)[1-(λ12+λ13)∆t].
125
(8.6)
Рассуждая аналогично для всех остальных состояний, напишем еще три дифференциальных уравнения. Присоединяя к ним уравнение (8.6) получим систему дифференциальных уравнений для вероятностей состояний: dp1 dt dp2 dt dp3 dt dp 4 dt
= λ 21 p2 − (λ12 + λ13 ) p1 = λ12 p1 + λ 32 p3 − (λ 24 + λ 21 ) p2
(8.7) .
= λ 31 p1 + λ 43 p4 − λ 32 p3 = λ 24 p2 + λ 43 p4
Это система четырех линейных дифференциальных уравнений с четырьмя неизвестными функциями p1, p2, p3, p4. Еще к этому можно добавить p1+p2+p3+p4=1, можно также выразить любую из вероятностей pi через другие, а соответствующее уравнение с производной (dpi )/dt отбросить. Общее правило составления уравнений Колмогорова. В левой части каждого уравнения системы стоит производная вероятности i-го состояния. В
126
правой части – сумма произведений вероятности всех состояний, из которых идут стрелки в данное состояние на интенсивности соответствующих потоков событий минус суммарная интенсивность всех потоков выводящих систему из данного состояния умноженная на вероятность данного (i-го) состояния. Пользуясь этим правилом, запишем уравнения Колмогорова для системы S, размеченный граф состояний которого дан на рис. 8.2: dp0 dt dp1 dt dp2 dt dp 3 dt
Pi=1
Pi’*(t)
P i’ Pi Pi, i≠i’
0
= µ1 p1 + µ 2 p2 − (λ1 + λ 2 ) p0
t
Рисунок 8.7. Процесс финализации вероятностей
= λ1 p0 + µ 2 p3 − (λ 2 + µ1 ) p1 .
(8.8)
= λ 2 p0 + µ1 p3 − (λ 2 + µ 2 ) p2 = λ 2 p0 + λ1 p2 − (µ1 + µ 2 ) p3
Чтобы решить уравнения Колмогорова и найти вероятности состояний, надо задать начальные условия. Если известно начальное состояние системы Si, то в начальный момент (при t=0) pi (0)=1 а все остальные начальные вероятности равны нулю. Так, например, уравнения (8.8) естественно решать при начальных условиях p0(0)=1, p1(0)=p2(0)=p3(0) (в начальный момент оба узла исправны). Линейные дифференциальные уравнения с постоянными коэффициентами можно решать аналитически, но это удобно только тогда когда число уравнений не превосходит двух - трех. Если уравнений больше обычно их решают численно на ЭВМ. Уравнения Колмогорова дают возможность найти все вероятности состояний как функции времени. Финальные вероятности состояний. При t, стремящемся к бесконечности, в системе устанавливается стационарный режим, при котором система случайным образом меняет свои состояния, но их вероятности уже не зависят от времени. Пределы вероятностей состояний при t стремящемся к бесконечности называются финальными вероятностями состояний. Финальная вероятность состояния Si − это среднее относительное время пребывания системы в этом состоянии. В теории случайных процессов доказано, что если число n состояний системы конечно и из каждого из них можно (за конечное число шагов) перейти в любое другое, то финальные вероятности существуют. На рисунке 8.7 показан процесс установления финальных вероятностей в стационарной системе. 127
Pi
Предположим, что условие существования финальных вероятностей выполнено, тогда имеет место (8.9) lim pi (t ) = pi . Через некоторое время процесс успокаивается и вероятности станут константами. Марковский процесс при t → ∞ вырождается в стационарный. Финальные вероятности обозначаются теми же символами p1, p2, …, что и вероятности состояний, имея ввиду постоянные числа. Очевидно, они тоже образуют в сумме единицу (формула 8.4). При t → ∞ в системе S устанавливается предельный стационарный режим, в ходе которого система случайным образом меняет свои состояния, но их вероятности уже не зависят от времени. Финальную вероятность состояний Si можно истолковать как среднее относительное время пребывания системы в этом состоянии. Вычисляются финальные вероятности из условия равенства нулю их производных. Значит, чтобы найти финальные вероятности нужно все левые части уравнений Колмогорова положить равными нулю и решить полученную систему уже не дифференциальных, а линейных алгебраических уравнений. Например, линейные алгебраические уравнения для финальных вероятностей состояний системы, граф состояний которой дан на рис. 8.2, имеют вид (λ1 + λ 2 ) p0 = µ1 p1 + µ 2 p 2 ( λ + µ ) p = λ p + µ p 2 1 1 1 o 2 3 . ( λ + µ ) p = λ p + µ 2 2 2 0 1 p3 1 (µ1 + µ 2 ) p3 = λ 2 p1 + λ1 p 2
(8.10)
Для решения системы надо воспользоваться условием нормирования: p0+p1+p2+p3=1
128
8.3. Основные модели марковских систем
8.3.1. Фомула Литла
Для составления математической модели марковской системы надо записать уравнения состояния Колмогорова и найти выражения для финальных вероятностей состояний. Граф состояний для основной схемы состояний представлен на рисунке 8.8.
Рисунок 8.8. Граф состояний процесса гибели и размножения
Для данного графа имеем уравнения финальных вероятностей состояний λ 01 p0 = λ10 p1 , λ p = λ p , 12 1 .... 21 2 λ k −1,k p k −1 ....= λ k ,k −1 p k , λ n−1,n pn−1 = λ n,n−1 pn ,
Найдем взаимосвязь среднего времени пребывания заявки в системе и среднего числа заявок в системе. В стационарном режиме работы системы среднее число заявок поступающих в систему равно среднему числу заявок покидающих систему (обслуженных). Оба потока имеют одну и ту же интенсивность. Обозначим: X(t) – число заявок поступивших до момента t, Y(t) – число заявок покинувших систему до момента t. Разность Z(t)=X(t)-Y(t) – это число заявок, находящихся в системе. Когда линии X(t) иY(t) сливаются, в системе нет заявок (рис. 8.9).
(8.11)
кроме того, надо учесть условие нормирования. Решая систему, из первого уравнения выразим p1, через p0 λ p1 = 01 p0 . (8.12) λ10
Рисунок 8.9. Процесс поступления и обслуживания заявок
Среднее число заявок в системе равно интегралу от Z(t) деленному на длину интервала T T
Из второго, учитывая (2.14), получим p2 =
Zc =
. Этот интеграл равен суммарной площади прямоугольников, изображенных на рис.8.9. Прямоугольники имеют высоту, равную единице, а основание, равное времени пребывания соответствующей заявки в системе (t1, t2,…). Получим
λ12λ 01 p0 λ 21λ10 .
И для любого k
pk =
λ k −1,k ...λ12 λ 01 λ k , k −1 ...λ 21λ10
p0
T
∫ Z (t )dt = ∑ t
. Подставим эти выражения в условие нормирования
i
0
Zc =
откуда получим выражение для p0 −1
λ λ ...λ λ λ λ p0 = 1 + 01 + 12 01 +,..., + k −1,k 12 01 . λ k ,k −1...λ 21λ10 λ10 λ 21λ10
i
.
Запишем теперь Zc в виде
λ λ ...λ λ λ λ p0 1 + 01 + 12 01 +,...,+ k −1, k 12 01 = 1 λ k ,k −1...λ 21λ10 λ10 λ 21λ10 ,
129
1 Z ( t )dt T ∫0
(8.13)
1 λ ∑ ti Tλ i ,
где Tλ - среднее число заявок в системе за время T. Среднее время пребывания заявки в системе равно отношению суммарного времени заявок в системе к среднему числу заявок 130
Wc =
∑t i
Tλ
Характеристики состояния: −1
i
.
(8.14)
Pi =
Учитывая (8.14), получим формулу Литтла для системы Wc =
1 Zc λ ,
(8.15)
и для очереди
Wî =
1 Zî . λ
n ρi λ P0 = ∑ , ãäå ρ = − вероятность того, что система будет простаивать, µ i =0 i!
(8.16)
8.3.2. Функциональная схема многоканальной системы Многоканальная однофазная марковская система может быть представлена структурной схемой (рис. 8.10).
ρi ⋅ P0 , i = 1, n − вероятность того, что в системе будет i-е число заявок. i! Характеристики функционирования:
Pîòê = Pn =
ρn ⋅ P0 − вероятность отказа системы, n!
Q = 1 − Pîòê = 1 −
ρ n − относительная пропускная способность (вероятность P0 n!
заявка обслужена), ρn A = λQ = λ1 − P0 − абсолютная пропускная способность (среднее число n! заявок с системе), n A − среднее число занятых каналов. k = ∑ ipi = ρQ = µ i =1 8.3.3. Многоканальная система с отказами обслуживания
Рисунок 8.10. Схема многоканальной однофазной марковской системы
Основные характеристики системы: входящий поток – простейший с интенсивностью λ, n – каналов обслуживания, Λ< λ - часть заявок не обслуживается, интервалы между событиями распределены экспоненциально f(t)= λe-λτ. Информационные каналы статистически одинаковы и всегда исправны, отказов в связи с поломкой нет. Время обслуживания каналом случайно, но у всех приборов это время имеет плотность распределения f0(t)=µe-µτ (статистически независимо). Интервалы времени обслуживания заявок взаимонезависимы. Правила обслуживания: • если все каналы заняты, заявка встает в очередь и ждет обслуживания; • в модели безразлично в каком порядке будут обслужены заявки; • освободившийся канал сразу приступает к обслуживанию заявки из очереди, если таковая имеется; • если величина очереди достигла (N-m) – предельной величины, очередная заявка получает отказ. 131
Многоканальная система с отказами обслуживания соответствует классическая задаче теории массового обслуживания − задаче Эрланга. Пусть имеется n-канальная система, на которую поступают заявки с интенсивностью L; поток обслуживаний имеет интенсивность M, обратную среднему времени обслуживания заявки to. Обозначим p=L/M − приведенную интенсивность потока заявок. Граф состояний системы представлен на рисунке 8.11.
Рисунок 8.11. Многоканальная система без очереди
Характеристики эффективности данной системы следующие: p0, p1,...,pk - вероятности состояний системы (при p<1): −1 p2 pk pn p0 = 1 + p + +,..., + +,..., + , 2! k! n!
132
p1 = pp0,..., pk =
pn pk p0; p0, pn = n! k!
p0 - вероятность того, что поступившая заявка получит отказ (все каналы заняты): pn Po = pn = p0; n! Q - относительная пропускная способность системы - вероятность того, что заявка будет обслужена: Q = 1 − Po = 1 −
pn p0; n!
А - абсолютная пропускная способность системы получается при умножении интенсивности потока заявок L на Q: pn A=LQ = L1 − p0 ; n ! k - среднее число занятых каналов равно математическому ожиданию дискретной случайной величины с возможными значениями 0,1,..., n и вероятностями этих значений p0, p1,...,pn: k=
A pn = p1 − p0 . M n !
8.3.4. Многоканальная система с неограниченной очередью
,
Zo - среднее число заявок в очереди: ∞
Zo = M [r ] = ∑ rpn + r r =1
.
Выполняя преобразования (с дифференцированием ряда) получим Zo =
ρ n +1 p0 ρ = pn 2 n ⋅ n!(1 − ρ / n) n(1 − ρ / n) 2 .
Zс - среднее число заявок в системе: С учетом среднего числа заявок, находящихся под обслуживанием (среднего числа занятых каналов), получим Zc = Zo + ρ . Wc, Wo - среднее время пребывания заявки в системе (очереди). По формуле Литтла: Zc Zo Wc = , Wo = L L . 8.3.5. Многоканальная система с ограниченной очередью Граф состояний системы изображен на рисунке 8.13.
Граф состояний системы изображен на рисунке 8.12.
Рисунок 8.13. Многоканальная система с ограниченной очередью Рисунок 8.12. Многоканальная система с неограниченной очередью
p0, p1,...,pk - вероятности состояний ИС (при ρ<1):
Характеристики данной системы следующие: p0, p1,...,pk - вероятности состояний ИС (при ρ<1):
133
134
8.3.6. Одноканальная система с неограниченной очередью ,
где ρ=L/M - среднее число заявок, поступающих в систему за время обслуживания одной заявки, r – максимальная длина очереди. Zо - средняя длина очереди:
Пусть имеется одноканальная система с очередью, на которую не наложено никаких ограничений (ни по длине очереди, ни по времени ожидания). На эту система поступает простейший поток заявок с интенсивностью L; поток обслуживаний имеет интенсивность M, обратную среднему времени обслуживания заявки to. Обозначим p=L/M - приведенная интенсивность потока заявок. Граф состояний системы изображен на рисунке 8.14.
Рисунок 8.14. Одноканальная система с неограниченной очередью
. где k - текущее число заявок в очереди. Вероятность того, что очередная заявка получит отказ, равна вероятности, что в системе уже находится n+r заявок
Характеристики эффективности данной система следующие: p0, p1,...,pk - вероятности состояний система (при p<1): p0 = 1 − p, p1 = p(1 − p), pk = p k (1 − p); Zc - среднее число заявок в системе: ∞
.
Z c = M [ k ] = ∑ kp k = k =0
Среднее время ожидания в очереди связано со средней длиной очереди
1 Wî = Z î . λ Zобсл - среднее число занятых каналов (среднее число заявок, находящихся под обслуживанием)
Wc - среднее время пребывания заявки в системе. По формуле Литтла Wc = Zc L .
135
p ; 1− p
Wc - среднее время пребывания заявки в системе по формуле Литтла: 1 Wc = ; L(1 − p ) Zо - среднее число заявок в очереди: Zо=Zc-Zoб, где Zc - среднее число заявок в системе; Zoб - среднее число заявок под обслуживанием. Число заявок под обслуживанием в данной системе может быть либо нулем (если канал свободен), либо единицей (если канал занят). Математическое ожидание (среднее значение Zoб) равно вероятности Pз того, что канал занят (степень загрузки канала). Очевидно, что Pз=1-p0=p, где p0 - вероятность того, что канал свободен. Следовательно, среднее число заявок под обслуживанием Zoб=p, отсюда имеем Zo=Zc-Zoб=p/(1-p)-p=p2/(1-p); Wо - среднее время пребывания заявки в очереди по формуле Литтла: Wo =
136
p2 ; L (1 − p )
А - абсолютная пропускная способность системы: А=L, так как очередь не ограничена и каждая заявка рано или поздно будет обслужена; Q - относительная пропускная способность системы: Q=1 также ввиду того, что очередь не ограничена и каждая заявка будет обслужена. 8.3.7. Одноканальная система с ограниченной очередью Пусть имеется одноканальная система с очередью, которая не может превышать некоторого заданного числа m. На эту систему поступает простейший поток заявок с интенсивностью L; поток обслуживаний имеет интенсивность M, обратную среднему времени обслуживания заявки to. Обозначим ρ=L/M приведенная интенсивность потока заявок. Граф состояний системы изображен на рисунке 8.15.
Перечислим состояния системы: S0 – нет заявок в системе (интенсивность потока заявок mL), S1 – одна заявка в системе (обслуживается), очереди нет (интенсивность потока заявок (m-1)L), S2 – две заявки в системе (одна обслуживается, одна в очереди), интенсивность потока заявок равна (m-2)L, ... Sm-1 – m-1 заявок в системе (одна обслуживается, m-2 в очереди), интенсивность потока заявок равна L., Sm – m заявок в системе (одна обслуживается, m-1 в очереди), интенсивность потока заявок равна нулю.
p0 = (1 + mρ + (m − 1)ρ + ...ρ) , p1 = m ρ p 0 ,..., p m −1 = ρ p 0 , p m = 0 . −1
8.4. Уравнения состояния резервированной системы в динамике
Рисунок 8.15. Одноканальная система с ограниченной очередью
Характеристики данной системы следующие: p0, p1,...,pk - вероятности состояний системы (при любом p): Учитывая формулу (2.15) получим выражение для расчета p0 p0 = (1 + ρ + ρ 2 + ...ρm ) , p1 = p 0 ρ,..., p m = ρ m p 0 . −1
Zc - среднее число заявок в системе: m
Z c = M [ k ] = ∑ kρ k .
Теперь рассмотрим случай резервированной системы, состоящей из двух одинаковых блоков - основного и резервного при работе в динамическом режиме. Интенсивность отказов блока обозначим λ, а интенсивность его восстановлений - µ. Очевидно, что система может находиться в одном из трех состояний: S° − в системе исправны оба элемента; S1 − в системе работает один элемент, второй элемент отказал и восстанавливается; S2 − в системе отказали оба элемента, которые восстанавливаются. Граф состояний системы представлен на рисунке 8.16.
k =0
Wc - среднее время пребывания заявки в системе по формуле Литтла: Z Wc = c . L 8.3.8. Одноканальная замкнутая система с m источниками заявок Интенсивность потока заявок каждого клиента равна L, если заявка поступила в момент, когда канал занят, то она ставится в очередь. Интенсивность потока заявок для всего канала равна kL, где k=m-k0 − число заявок, находящихся в очереди и под обслуживанием. 137
Рисунок 8.16. Граф состояний резервированной системы
Дифференциальные уравнения Колмогорова для вероятностей p0(t), p1(t) и p2 (t) состояний S0, S1 и S2 , в соответствии с рассмотренной ранее методикой, получены в виде:
138
p 0 (t ) =
Подставляя p2(t) = 1 – p0(t) – p1(t) во второе уравнение, получаем p& 1 (t ) = 2 (λ − µ ) p 0 (t ) − ( λ + 3µ ) p1 (t ) + 2µ .
Выразив p1(t) из первого уравнения системы и вычислив на основе полученного выражения p& 1 (t ) , подставим p1(t) и p& 1 (t ) в последнее уравнение. В результате получаем линейное неоднородное дифференциальное уравнение второго порядка &p&0 (t ) + 3( λ + μ) p& 0 (t ) + 2( λ + μ ) 2 p0 (t ) = 2μ 2 .
Характеристический многочлен соответствующего однородного уравнения имеет вид r 2 + 3(λ + µ) r + 2(λ + µ) 2 = 0 .
µ2 2λµ λµ (λ + 3µ) + λ (λ + µ ) 2 − 2( λ + µ)t + e − ( λ + µ)t + e 2 (λ + µ) (λ + 3µ ) (λ + µ ) (λ + µ) 2 (λ + 3µ ) ;
p1 (t ) =
2λµ (λ + µ ) 2
+
2λ 2λµ(λ + 3µ) + λ(λ + µ) 2 − 2 (λ + µ )t e − ( λ + µ )t + e (λ + 3µ) (λ + µ) 2 (λ + 3µ) .
Сумма выражений для p0(t) и p1(t) определяет нестационарный коэффициент готовности, а входящие в них постоянные слагаемые - стационарный коэффициент готовности системы. Здесь рассмотрен случай, когда избыточная система состоит из одинаковых элементов, что является частным случаем. Примером более сложной системы, для которой это условие не выполняется, может служить комплексная ИИС, в состав которой входит несколько различных измерителей. Эти измерители имеют различные интенсивности отказов, более сложную схему включения (например, по мажоритарному принципу). Граф состояний будет тоже более сложный, но применяя, рассмотренные здесь стандартные методики, можно рассчитать и оптимизировать важнейшие характеристики надежности комплексной системы.
Отсюда по известной формуле могут быть получены два вещественных корня r1 = −(λ + µ) и r2 =-2 (λ + µ ) , и решение однородного уравнения может быть записано в виде
p 0 ,0 (t ) = C 1 e − (λ + µ )t + C 2 e −2 (λ + µ )t
.
Из этого решения методом вариации постоянных может быть получено частное решение неоднородного уравнения, а затем и общее решение p 0 (t ) =
µ2 (λ + µ ) 2
+ C1 e −( λ+µ) t + C 2 e −2(λ +µ)t
.
Подставляя полученное выражение для p0(t) и производную p& 0 (t ) в первое уравнение системы, получаем выражение для p1(t) p1 (t ) =
2λµ (λ + µ )
2
+
λ+µ C1 e −( λ+µ )t + 2C 2 e −2( λ+µ )t µ .
Произвольные постоянные могут быть определены из начальных условий p0(0)=1 и p1(0)=0:
139
140
Заключение
Библиографический список
Учебное пособие “Моделирование процессов и систем в приборостроении” не претендует на внедрение в науку моделирования новых идей и открытий, а предназначено в основном для информмирования студентов о современном математико-программном обеспечении задач моделирования в доступной форме. Здесь автор старался обобщить современный опыт вопросов моделирования процессов и систем в приборостроении с целью дальнейшего использования при проектировании и исследовании измерительных информационных систем нового поколения (микросистемных, нанотехнологичных, компьютеризированных). В учебном пособии представлен материал по современным методикам расчета основных характеристик процессов и систем, представлены актуальные вопросы компьютерного моделирования на основе лицензионного программного обеспечения. Стремительное развитие информационных технологий, внедрение в практику инновационного подхода предполагает постоянное обновление технологий моделирования. Поэтому совершенствование знаний в области моделирования это прежде всего большая самостоятельная работа, которая предполагает использование мобильных Интернет ресурсов, в частности образовательных и специализированных порталов. Один из оперативно обновляемых сайтов по информационным технологиям является сайт: http://www.apicentr.ru, поддерживаемый группой профессионалов информационных технологий. На этом сайте организован раздел по вопросам моделирования. Многим может помочь информация с сайта http://exponenta.ru, где на русском языке представлена справочная информация по вопросам компьютерного моделирования в среде Matlab.
141
1. Волков, В.Л. Моделирование процессов и систем. Учеб. пособие /В.Л. Волков. - Н.Новгород; НГТУ, 1997. -80 c. 2. Малинин, В.В. Математическое моделирование процессов и систем на ЭВМ. - [Электронный ресурс]. http://www.ssga.ru/metodich/matmod/ © Copyright ЦИТ СГГА, 2003. 3. Лебедев, А.Н. Моделирование в научно-технических исследованиях. - М.: Радио и связь, 1989. 4. Прохоров, С.А. Математическое описание и моделирование случайных процессов. - Самара. Самар. гос. аэрокосм. ун-т, 2001. -209 с. 5. Варадан, В. ВЧ МЭМС и их применение. / В. Варадан, К. Виной, К. Джозе. –М.: Техносфера, 2005. -528 с. 6. Волкова В.Н. Теория систем: Учебник для студентов вузов. / В.Н. Волкова, А.А. Денисов. – М.: Высшая школа, 2006. – 511 с. 7. Хэмди, А. Введение в исследование операций. – Вильямс, 2001. -913с 8. Френкс, Л. Теория сигналов. -М.: Сов. радио, 1974. -373 с. 9. Купер, Д. Вероятностные методы анализа сигналов и систем. / Д. Купер, К. Макгиллем. - М.: Мир, 1989. -376 с. 10. Соболев, В.И. Информационно-статистическая теория измерений. Учебник для вузов. - М.: Машиностроение,1983. -224 с. 11. Гришин, Ю.П. Динамические системы, устойчивые к отказам. / Ю.П. Гришин, Ю.М. Казаринов. - М.: Радио и связь, 1985. 176 с. 12. Волков, В.Л. Система автоматизированного проектирования информационных алгоритмов и алгоритмов управления: Тез.докл.//Информационные технологии в образовании и науке. / В.Л. Волков, П.В. Пакшин, О.Г. Гущин. - Международный семинар-выставка. Рига, 1992. С. 57-58. 13. Справочник по теории автоматического управления. /Под ред. А.А. Красовского. - М.: Наука, 1987. -712 с. 14. Крутько, П.Д. Алгоритмы и программы проектирования автоматических систем. / П.Д. Крутько, А.И. Максимов, Л.М. Скворцов. - М.: Радио и связь, 1988. -306 с. 15. Козлов, В.И. Системы автоматического управления летательными аппаратами. М.: Машиностроение, 1979. -376 с. 16. Браммер, К. Фильтр Калмана-Бьюси. / К. Браммер, Г. Зиффлинг. - М.: Наука, 1982. -200 с. 17. Моделирование процессов и систем. Стохастические и детерминированные динамические системы и информационные процессы. Лабораторные работы. Метод.Указан. /Сост: Волков В.Л., Гущин О.Г., Поздяев В.И. Н.Новгород. НГТУ, 1998. -32 c. 142
18. Прикладные задачи моделирования процессов и систем. Практические работы. Метод. Указан. /Сост: Волков В.Л. - Н.Новгород. НГТУ, 2000. -32 c. 19. Astrom, K.J. Introduktion to stochastic control theory. - New York: Academic Press,1970. -238 p. 20. Волков, В.Л. Проектирование цифровых алгоритмов информационноизмерительных систем: Учеб. пособие. - М.: Изд-во МАИ, 1991. 36 с. 21. Сергиенко, А.Б. Цифровая обработка сигналов. /- СПб.: Питер, 2002. -320 с. 22. Соболь, И.М. Метод Монте-Карло. / - М.: Наука,1968. -64 с. 23. Fishman, G.S. Monte Carlo Concepts, Algorithms and Applications. SpringerVerlag. - New York,1996. -698 p. http://www.amazon.com/gp/reader/038794527X/ref=sib_dp_pt/103-3577987-4699006#
24. Фридман, А. Л. Основы объектно-ориентированной разработки программных систем. / - М.: Финансы и статистика, 2000. -192 с. 25. Автоматизация решения инженерных задач. Практические работы. Метод. Указан. / Сост. В.Л.Волков. - Н.Новгород. НГТУ, 2003. -35 с. 26. Лазарев, Ю. Моделирование процессов и систем в MATLAB. Учебный курс. - - СПб.: BHV, 2005. – 512 с. 27. Гультяев, А. Визуальное моделирование в среде Matlab: Учебный курс. – СПб.: Питер, 2000. 28. Черных, И.В. "Simulink: Инструмент моделирования динамических систем" http://www.exponenta.ru . Раздел Symulink. 29. Дьяконов, В. MATLAB. Анализ, идентификация и моделирование систем. Специальный справочник. / В. Дьяконов, В. Круглов. – СПб.: Питер, 2002. 30. Андриевский, Б.Р. Элементы математического моделирования в программных средах МАТЛАБ и Scilab /Б.Р. Андриевский, А.Л. Фрадков. Спб.: Наука, 2001. -286 с. 31. Hunt, R.B. Matlab R2007 с нуля! + CD (A Guide to Matlab for Beginners and Experienced Users). / R.B. Hunt, R.L. Lipsman, J.M. Rosenberg. Пер. с англ. Д.Н. Проценко. - М.: 2007. -352 с. 32. Волков, В.Л. Справочник по MatLab. /В.Л. Волков. - [Электронный ресурс]. © Copyright Teacher-Proffi. http://www.apicentr.ru, 2006. 33. Леоненков, А.В. Нечеткое моделирование в среде MATLAB и fuzzyTECH. – СПб.: БХВ, 2005. 34. Вентцель, Е.С. Исследование операций. - М.: Наука, 1980. 208 c. 35. Афанасьева, О.В. Теория и практика моделирования сложных систем: Учебное пособие. / О.В.Афанасьева, Е.С. Голик, Д.А. Первухин. – СПб.: СЗТУ, 2005. - 131 с.
143
144