Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Элементы математического моделирования в программных средах MATLAB 5 и Scilab (Андриевский Фрадков)

.pdf
Скачиваний:
895
Добавлен:
22.03.2015
Размер:
4.51 Mб
Скачать

ФЕДЕРАЛЬНАЯ ЦЕЛЕВАЯ ПРОГРАММА «ГОСУДАРСТВЕННАЯ ПОДДЕРЖКА ИНТЕГРАЦИИ ВЫСШЕГО ОБРАЗОВАНИЯ

И ФУНДАМЕНТАЛЬНОЙ НАУКИ НА 1997—2000 ГОДЫ»

АНАЛИЗ И СИНТЕЗ НЕЛИНЕЙНЫХ СИСТЕМ

Б. Р. Андриевский, A. JI. Фрадков

Элементы математического моделирования

в программных средах MATLAB 5 и Scilab

в

Санкт-Петербург «Наука»

2001

УДК 681.51 ББК 22.1

А 65

Серия «АНАЛИЗ И СИНТЕЗ НЕЛИНЕЙНЫХ СИСТЕМ» выпускается под общей редакцией Г. А. Леонова и А. Л. Фрадкова

Андриевский Б. Р., Фрадков А. Л. Элементы математического моделирования в программных средах MATLAB 5 и Scilab. — СПб.: Наука, 2001. — 286 е., 50 ил.

ISBN 5-02-024952-1

В книге сжато изложены основные подходы и методы математического моделирования. Описаны методы построения и преобразования дискретных и непрерывных моделей, заданных передаточными функциями и уравнениями состояния с различным описанием неопределенности — стохастическим, нечетким, хаотическим. Затрагиваются вопросы оценивания параметров (идентификации) и оптимизации моделей. Особенностью книги является иллюстрация большинства подходов и методов примерами использования программных пакетов MATLAB и Scilab. Уделяется внимание приемам программирования, повышающим наглядность визуального представления результатов вычислений.

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

Andrievsky В. R., Fradkov A. L. Elements of mathematical modeling in software environments MATLAB 5 and Scilab. — St. Petersburg: Nauka, 2001. — 286 p.

Brief exposition of basic concepts and methods of mathematical modeling is given. Model building and model transformation methods for discrete and continuous state space and transfer function models with different uncertainty description: stochastic, fuzzy or chaotic are described. Model parameters identification and optimization are addressed. Unique feature of the book is that most concepts and methods are illustrated by examples implemented in MATLAB or Scilab software environments. Brief description of MATLAB 5 and Scilab 2 tools and toolboxes is presented. The book is useful for all interested in mathematical modeling and computer-aided design.

Рецензенты: д-р техн. наук В. М. Иванов, д-р техн. наук А. В. Тимофеев

Без объявления

©

«Интеграция», 2001

ISBN 5-02-024952-1

©

Б. Р. Андриевский, A. J1. Фрадков, 2001

О Г Л А В Л Е Н И Е

 

П Р Е Д И С Л О В И Е

7

Глава 1. МЕТОДОЛОГИЯ МАТЕМАТИЧЕСКОГО

 

М О Д Е Л И Р О В А Н И Я

11

1.1. Понятие математической модели

11

1.2.Математическое моделирование и теория си-

стем

13

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

 

анализ

 

 

19

1.4.

Сложные системы и декомпозиция

26

Глава 2. В В Е Д Е Н И Е В MATLAB

30

2.1.

Основные операторы языка

30

 

2.1.1.

Матричные операции

30

 

2.1.2.

Действия

с многочленами

33

 

2.1.3.

Действия

над функциями

36

2.1.4.Построение трехмерных изображений . . . 38

2.2.Примеры использования системы MATLAB для

численного решения задач исследования систем 39

2.2.1.Применение тулбокса символьных вычи-

 

слений

39

2.2.2.

Применение процедуры численного инте-

 

 

грирования дифференциальных уравнений

42

2.2.3.

Применение процедур анализа линейных

 

 

систем

49

2.2.4.

Применение системы SIMULINK

51

Глава 3. В Ы Б О Р СТРУКТУРЫ МАТЕМАТИЧЕ -

 

СКОЙ М О Д Е Л И

53

3.1. Классификация моделей

53

3.1.1.Статические и динамические модели . . . 54

3.1.2.Дискретные и непрерывные модели . . . . 55

3.2. Примеры исследования моделей

60

3.2.1.

Исследование четырехполюсника

60

3.2.2.

Гармонический анализ процессов

67

3.2.3.Исследование экологической системы . . 72

3.3. Модели состояния динамических систем

. . . . 75

3.3.1.

Модели общего вида

75

3.3.2,

Линейные модели и линеаризация

76

3

3.3.3, Дискретизация и континуализация . . . . 79

3.4.Примеры преобразования моделей в среде MAT-

LAB

 

84

3.4.1.

Линеаризация

84

3.4.2.

Дискретизация моделей

87

3.4.3.

Континуализация моделей

91

3.5.Детерминированные и стохастические модели . 94

3.6.Пример статистической обработки данных про-

граммами тулбокса STATISTICS

100

3.7. Нечеткие модели

104

3.7.1.Нечеткие множества и лингвистические

переменные

104

3.7.2. Нечеткие системы

107

3.7.3.Задачи группировки и упорядочения . . . 112

3.7.4.

Нечеткие числа

115

3.7.5.

Вероятность или нечеткость?

117

3.8. Хаотические модели

119

3.8.1.

От колебаний - к хаосу

119

3.8.2.Определение хаотической системы . . . . 125

3.8.3. Критерии хаотичности

130

3.8.4.Зачем нужны хаотические модели? . . . . 132

3.9.

Линейные или нелинейные?

137

Глава

4. В Ы Б О Р ПАРАМЕТРОВ МАТЕМАТИЧЕ -

 

СКОЙ М О Д Е Л И

146

4.1. Предварительные преобразования

146

4.1.1.Линейно-параметризованные модели . . . 146

4.1.2.Преобразование статических моделей . . 147

4.1.3.Преобразование динамических моделей . 150

4.2.Регрессионный анализ и метод наименьших ква-

дратов

155

4.3.Адаптивные модели и рекуррентные методы . . 159

4.4.

Принципы выбора модели

162

4.5.

Культура компьютерных вычислений

165

Глава 5. О П Т И М И З А Ц И Я И СТРУКТУРНЫЙ

 

СИНТЕЗ СИСТЕМ

172

5.1.

Оптимизация технических объектов

172

5.1.1.Задача параметрической оптимизации и

направления ее решения

172

4

5.1.2.

Методы поисковой оптимизации

173

5.2. Задачи структурного синтеза систем

179

5.2.1.

Классификация задач синтеза

179

5.2.2.Подходы к решению задач структурного

синтеза

181

5.3.Методы и алгоритмы структурного синтеза . . . 181

Глава

6. П Р И М Е Р Ы Р Е Ш Е Н И Я З А Д А Ч МАТЕ-

 

МАТИЧЕСКОГО М О Д Е Л И Р О В А Н И Я

183

6.1.

Предсказание курса акций

183

6.2.Управление синхронизацией систем на основе

адаптивных наблюдателей

190

6.2.1.Общая постановка задачи и схема решения190

6.2.2.Передача сообщений на основе синхронизации с использованием систем Чуа . . . . 193

6.2.3.Результаты вычислительных эксперимен-

 

тов

196

З А К Л Ю Ч Е Н И Е . МАТЕМАТИЧЕСКОЕ МОДЕЛИ-

Р О В А Н И Е - ВЧЕРА, СЕГОДНЯ, ЗАВТРА

199

Приложение А. Использование системы Scilab

203

А.1.

Принципы построения системы

203

А.2.

Основные конструкции языка

204

A.З.

Примеры программ решения задач математи-

 

 

ческого моделирования. Scilab и MATLAB . . . .

212

Приложение В. Система визуального моделирова-

 

 

ния SIMULINK

215

B.1.

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

215

В.2.

Библиотека блоков системы SIMULINK

215

B.З.

Маскирование подсистем

216

Приложение С. Дополнительные возможности си-

стемы MATLAB - 5

218

C.1.

Программирование и разработка приложений

. 218

С.2.

Новые конструкции языка и типов данных . . . .

218

С.З.

Математические вычисления и анализ данных

. 219

С.4.

Графика

219

С.5.

Интерактивная документация

220

С.6.

Перевод программ из MATLAB 3 в MATLAB 5 . 220

5

Приложение D.

Сведения об основных

тулбоксах

системы MATLAB 5

222

D.1

Системы управления

222

D.2

Идентификация систем

227

D.3

Обработка сигналов

231

D.4

Системы связи

238

D.5

Обработка изображений

242

D.6

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

247

D.7

Финансовые вычисления

256

D.8

Нечеткие логические вычисления

258

D.9

Нейросетевой тулбокс

261

Л И Т Е Р А Т У Р А

 

268

Список примеров

 

277

Список рисунков

 

278

Предметный указатель

280

В будущем цифры рассеют мрак. Цифры не умира.

Только меняют порядок, как телефонные номера.

Сонм их, вечным пером привит к речи, расширит рот, удлинит собой алфавит; либо наоборот.

Иосиф Бродский

П Р Е Д И С Л О В И Е

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

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

-построение ММ (формализация задачи);

-исследование ММ (анализ модели);

-использование ММ (синтез решения).

Вданной книге рассматриваются в основном первые два этапа.

7

Этап формализации тесно связан с научно-инженерной дисциплиной, именуемой системным анализом [76].

На этапе анализа решаются так называемые прямые задачи, т.е. по заданным значениям входов системы определяются ее выходы. Лля этапа синтеза характерны обратные задачи, а именно определение входов системы по заданным (желаемым) значениям ее выходов. Использование ММ возможно для различных целей: прогнозирования, исследования, проектирования, управления.

Весь опыт человечества показывает, что одни и те же математические модели и методы могут одинаково применяться в различных областях и для различных целей. Это обстоятельство определяет внутреннее единство математического моделирования и его место в системе подготовки специалистов (об этом см. также [13, 17, 18, 67, 94, 107]). Изучение математического моделирования должно идти вслед за изучением основных теоретических курсов и компьютерных технологий, но предшествовать выполнению основных курсовых и дипломных проектов.

 

Заметим, что при проектировании математическая

модель

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

синте-

за:

структура и параметры модели и решения

выбирают-

ся,

когда реальной системы еще не существует.

Напротив,

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

Значительная часть книги является переработкой учебных пособий [74, 107] и посвящена вопросам построения математической модели, выбора ее структуры и параметров. Почти не затрагиваются вопросы анализа дискретных моделей, с которыми можно познакомиться, например, по книгам [26, 94, 77, 89, 88], а также вопросы синтеза решения, которым посвящена обширная литература по методам оптимизации и принятия решений (см.например, [9, 22, 48, 72, 76, 80, 92, 95, 98]).

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

8

ров и программного обеспечения, как специализированного, так и универсального. Поэтому целесообразно не разделять математическое моделирование и его программную поддержку, а говорить о математическом моделировании в той или иной программной среде, предоставляющей набор функциональных (расчетных) и сервисных возможностей и допускающей расширение с учетом специфики решаемых задач. В книге описывается одна из наиболее популярных программных сред MATLAB7*, разработанная фирмой "The MathWorks, Inc." (www.mathworks.com) и ставшая фактически международным стандартом учебного программного обеспечения в областях линейной алгебры, теории систем, теории управления, обработки сигналов и ряда других. Приводятся примеры решения задач в среде MATLAB 5я . Приводятся также примеры, показывающие опасность бездумного, поверхностного подхода к применению численных методов и пакетов программ, и возникающие при этом ошибки.

Читателя может заинтересовать похожая на MATLAB, но в отличие от нее свободно распространяемая система Scilab71, разработанная во Франции в институте INRIA (www-rocq. inria.fr/scilab, [128]). Краткие сведения о системе Scilab72 приведены в Приложении А.

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

Замеченные опечатки и дополнительный материал по теме книги будут помещаться в Интернет на странице лаборатории "Управление сложными системами" ИПМАШ РАН

(www.ipme.ru/ipme/labs/ccs/ccs.html). Там можно найти и другие полезные сведения о публикациях, конференциях, программных продуктах, а также ссылки на другие источники информации по теории автоматического управления и смежным вопросам. В частности, рекомендуем посетить РУСИКОН - Российский архив по системам и управлению

9

(www.rusycon.ru). Те, кто пока не имеет прямого доступа к Интернету, могут связаться с нами по электронной почте: alf@ccs.ipme.ru или по обычной: 199178, С.-Петербург, Большой пр. В.О., д. 61, ИПМАШ РАН, A.JI Фрадкову.

Авторы благодарят сотрудников Института проблем машиноведения РАН и БГТУ за полезные обсуждения и помощь

вработе над книгой. Авторы глубоко признательны рецензентам А.В. Тимофееву и В.М. Иванову за ценные замечания.

Издание книги было поддержано ФПП "Интеграция", проект 360-01. Ряд результатов, включенных в нее, был получен

впроцессе совместной работы авторов по грантам РФФИ (99-01-00672) и ФПП "Интеграция" (проекты 2.1-589, А0145, А0151) в Институте проблем машиноведения РАН.

Книга рекомендовна Учебно-методическим объединением по образованию в области радиотехники, электроники, биомедицинской техники и автоматизации Министерства образования РФ в качестве учебного пособия межвузовского использования по направлениям 550200 и 651900 - Автоматизация и управление. Она также может оказаться полезной преподавателям и инженерам, интересующимся применением математических методов и компьютерных технологий в различных областях науки и техники.