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

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 05.04.2024

Просмотров: 439

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

Бели погрешности модели (4.1) не случайны, а обладают лишь ограниченностью, т.е. стохастический подход неприменим, то алгоритмы (4.37), (4.38) сохраняют работоспособность при определенном выборе длин шагов 7*. Например, при выполнении (4.31) алгоритм (4.37) будет обеспечивать при достаточно большом числе наблюдений к неравенство \Ук — Окх(к)\ < А, если Д > Д^,, векторы х(к) ограничены ||х(А:)|| < const и коэффициенты шага выбраны в виде

 

 

71 = ( РЙГ при I » > д .

(4.39)

 

 

 

 

[

0

при

к - ек_хх{к)\

<

Д,

 

где 0

<

7

< 2 ^

д ^ .

Алгоритм

получил

известность под

названием

"полоска".

Свойства

подобных

и

более общих

алгоритмов

изучены

в рамках развитого В.А.

Якубовичем

и его учениками метода рекуррентных

целевых неравенств

[6,

95,

32,

28].

 

 

 

 

 

 

 

 

Градиентные

адаптивные

алгоритмы

(4.38)

применяются

для идентификации статических и дискретных динамических систем. Что делать, если ММ системы непрерывна? Аналогом градиентных алгоритмов для непрерывных динамических систем являются так называемые алгоритмы скоростного градиента [6, 32, 28]. Поясним идею метода скоростного градиента для случал, когда ММ системы описывается уравнением состояния

i =

F(x,0,*)

(4.40)

и требуется достичь цели

 

 

Q{x{t)ye{0,0

— 0 при f — оо,

(4.41)

где Q(x,0 > 0 - некоторая гладкая целевая функция. Поскольку Q не зависит от 0, ее градиент равен нулю и градиентный алгоритм типа (4.38) неприменим. Однако вместо задачи уменьшения Q можно поставить вспомогательную задачу уменьшения величины

д<

VeQTF(x)e}t)

Q(x,0,O = ^f +

- скорости изменения Q вдоль траекторий (4.40). Градиентный алгоритм, построенный по целевой функции Q(x)6)t)) на-

6 Б. Р. Андриевский и др.

161

 


зывается алгоритмом скоростного градиента и может применяться в дифференциальной форме

§ = " 7

(4-42)

где 7 > 0, или в конечной форме

в = -yVeQ.

(4.43)

Можно предположить, что если существует 0*, такое что Q^x.O^.t) убывает для всех x,t} то, начиная с некоторого момента времени, будет убывать и Q(x,t), что приведет к достижению исходной цели (4.41). Это действительно будет так при некоторых дополнительных предположениях [6, 63, 106].

Градиентные алгоритмы и алгоритмы скоростного градиента можно применять не только для оценивания параметров, но и для оценивания состояний динамических систем, для фильтрации, управления и т.д. Благодаря своей простоте они находят применение в бортовых вычислительных устройствах, при микропроцессорной реализации систем управления, контроля, диагностики в различных областях. В последние годы адаптивный подход применяется также в вычислительных процедурах [8].

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

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

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

162

ММ: у = Oq + 0\u. Если зависимость выхода от входа носит экстремальный характер, то берут квадратичную функцию у = 0О + + 02и2, а если есть основания думать, что зависимость выхода от входа имеет перегиб, то начинают с

кубической функции у = 0О + вхи + в2и2 + в3и3.

Аналогично действуют и в случае нескольких входов и выходов (см. п. 4.1 , а также [46], с. 39 - 45). Возможен различный выбор ММ в разных областях переменных. Например, если построение ММ выполняется с целью оптимизации, то вдали от экстремума можно ограничиться линейной моделью, а при приближении к экстремуму переходить на квадратичную. В любом случае предпочтительнее модели, в которые постоянные коэффициенты входят линейно (см. п. 4.1). В последние годы приобрели популярность модели, основанные на нейронных сетях [99, 100].

Если точность моделей с постоянными коэффициентами недостаточна, т.е. исследуемая система нестационарна, то в модель вводят зависимость коэффициентов от времени (дрейф) Дрейф может быть монотонным или периодическим, причем в большинстве случаев достаточно ограничиться простейшими моделями дрейфа - линейными 0; = а, + bit или гармоническими 0, = at cos(wtf) + biS\n(<Jit). Если неясно, как выбрать частоты и>{} или есть аргументы в пользу того, что параметры испытывают нерегулярные колебания, то стоит попробовать хаотические модели дрейфа.

Если возникает дилемма: "выбрать ММ детерминированную или стохастическую", то предпочтение следует отдать детерминированной ММ. И только если не удается обойтись без случайности, то вводят ее, причем сначала в наиболее простой форме, например приведенной к выходу: y = F(u}0)+

где - случайное возмущение. Точно так же переходить к нечеткой ММ следует только при неадекватности стохастических ММ (что в действительности бывает не так уж редко).

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

163


описываются моделями первого-второго порядков. Например, для описания монотонных (так называемых "апериодических" ) переходных процессов часто достаточно апериодического звена - линейной стационарной дифференциальной ММ первого порядка, имеющей передаточную функцию (см. п. 3.3.2) от входа к выходу W(p) = Tp^fl1 г д е ^ ~ коэффициент усиления статической ММ, Т - постоянная времени звена. 1

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

ющее передаточной функции W(p) =

1

р

$

+

%——

 

, где f

 

 

р + 1

 

- показатель затухания колебаний (|£| <

1).

Если

форма ко-

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

порядка. Иначе говоря, "не р е ш а й

с л о ж н у ю з а д а ч у ,

не р е ш и в с н а ч а л а п р о с т у ю "

(см. п. 1.3).

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

1 Величина Т определяется тем свойством, что за время 3Т переходная составляющая процесса в апериодическом звене уменьшится до 5% от начального уровня.

164


ошибки. Если бы эти ошибки существенно сказывались на результатах, моделью просто нельзя было бы пользоваться. Резюмировать сказанное можно в виде принципа грубости: "без о ш и б к и нет м о д е л и , а п о э т о м у н е г р у б ы е м о д е л и п л о х и е " .

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

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

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

П р и м е р 4.5.1. Выполняя вычисления на обычном быто-

вом микрокалькуляторе,2 легко убедиться, что 108+1—108 = 0, 1020+106-102° = 0, но в то же время 108-108+1 = 1, 1020-1020+106 =

1 Э.Хемингуэй давал следующий совет начинающим писателям: "Можно опускать что угодно, нужно только точно знать, что опускаешь".

2Действия выполняются слева направо.

165

= 106. Таким образом, в машинной арифметике

нарушают-

ся законы коммутативности и ассоциативности

действий. 1

Применимость основных законов элементарной

математики

ставится под сомнение.

 

Пример 4.5.2. Хорошо известно, что limn_>ooen

= е,

где

е„ =

+ ^

, е = 2.718281828... - основание натуральных

логарифмов.

Попробуем приближенно вычислить

этот

пре-

дел. Проводя вычисления на микрокалькуляторе или на персональном компьютере с обычной точностью, получаем:

пе„

105

2.7182682

107

2.7182817

1.1-107 3.0041656

1.2• 107 3.3201163

2.0• 107 7.3890551

3.0 • 107

1

При вычислении по данному алгоритму с помощью пакета MATLAB 5 в среде PC Windows ошибка хоть и оказывается меньшей, но характер результата, как это видно из рис. 4.1, остается тем же.

 

бе, %

 

n

140

 

 

s бе, %

 

 

 

120

 

 

 

100

 

 

 

80

 

 

 

60

 

 

 

40

£ ю

 

 

20

10"

10"

Рис. 4.1. Относительная ошибка вычисления е в обычном (а) и логарифмическом (6) масштабах.

Таким образом, в компьютере нарушается представление о пределе последовательности как о числе, к которому при-

1 Заметим, что при использовании пакета MATLAB 5 на вычислительной платформе PC Intel в среде Windows 95/98 указанный эффект наблюдается при действии с величинами порядка 1015.

166