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

Синтез_мех_систем

.pdf
Скачиваний:
43
Добавлен:
16.03.2015
Размер:
2.5 Mб
Скачать

Для нахождения

следующего

приближения определим Г=max[ (1) ,

(1) ].

 

 

 

 

 

 

 

 

1

2

Пусть Г=

 

(1)

(1)

[u (1) ]. Следующее приближение u(2)=u(1)+ u(1) определим

 

2

2

 

 

 

 

 

из условия

 

уменьшения

2 [u] ,

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

спуска, т. е.

 

 

 

 

 

 

 

 

 

2 [u]

 

u (1)

0

 

2

 

 

u

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

u u (1)

 

 

 

Задаваясь малым параметром , характеризующим шаг приближения, со-

гласно методу градиентного спуска, получим:

u2

 

2 [u]

,

 

0 .

 

 

 

 

 

 

 

 

 

u

 

 

 

 

 

 

 

 

 

 

 

u u(1)

 

 

 

 

 

 

 

 

 

 

Теперь

вычислим

( 2)

1

[u( 2) ]

и

( 2)

2

[u( 2) ] при

управлении

 

 

 

1

 

 

 

2

 

 

 

 

u ( 2) u (1)

u (1) и сравниваем

( 2) ,

( 2)

с единицей. Если оба

( 2) ,

( 2)

мень-

 

 

 

 

1

 

2

 

 

 

 

1

2

 

ше единицы, то u(2) одно из решений ОЗУ. В противном случае находим

max[ ( 2) ,

(

2) ]

и производим следующий шаг градиентного спуска. Этот

1

2

 

 

 

 

 

 

процесс продолжается до тех пор, пока не получим

 

s [u] 1, s 1,2 или же

не найдем

 

o

min max

s [u] и не убедимся, что

o

1, т. е. решения ОЗУ

 

 

 

u

s

 

 

 

не существует.

Но если функция имеет несколько минимумов, то метод градиентного спуска, вообще говоря, гарантирует нахождение только относительного ми-

нимума. Для утверждения того, что ОЗУ не имеет решения, следует найти

абсолютный минимум выражения max

s [u]

s

 

Условие

 

min max

s [u] 1

(3.2.12)

u U s 1...2 n

 

 

при выполнении связей (3.2.12) является необходимым и достаточным ус-

ловием существования решения ОЗУ.

31

Достаточность. Допустим, что существует решение системы (3.1.2)

удовлетворяющее условию (3.2.12). Используя (3.1.2) для каждого управле-

ния u U вычислим s

[u] и найдем Г[u] max

s [u]

 

s 1, 2..2 n

 

Функционал Г[u] определяется на множестве допустимых управлений u U и представляет собой на каждом фиксированном управлении наи-

большее значение функционалов s [u], s 1,2...2n . Далее решая задачу ми-

нимизации функционала Г[u] по управлению u, находим допустимое управ-

ление u=uo, при котором функционал Г[u] принимает наименьшее значение

Гo

Г[uo

] min Г[u] , причем Г

о

1. Тогда существует, по крайней мере,

 

 

u U

 

 

одно управление uo, при котором все

s [u] не превосходят единицы. Следо-

вательно, управление uo дает решение ОЗУ.

Необходимость. Допустим, что условие (3.2.12) нарушается, т. е. Го>1.

Но max

s [u] и min max

s [u] совпадает с одним из значений какого либо из

s

 

u U s

 

 

 

функционалов

s [u], например min max

s [u]

к [uo ].

 

 

 

u U s

 

 

Это означает, что, по крайней мере, для одного функционала к [u] из за-

данной совокупности условие s [u] 1 при управлении u=uo не выполняется.

Тем более оно не выполняется для какого-нибудь функционала при других значениях управления.

Примечание: Если функционалы

s [u], кроме индекса s, зависят от не-

прерывного индекса

, (например, непрерывные моменты времени t [0,T]),

т. е. если

s

[u],

[0, T ], s

1,2...2n , то условие (3.2.12) запишется в виде:

min max

s [u]

1 , где u

U, s

1,2...2n,

[0,T ]

u

S ,

 

 

 

 

 

3.4 Основная, оптимизационная и минимаксная задачи

Наряду с ОЗУ записанной соотношениями (3.3.9) рассмотрим минимакс-

ную задачу:

 

 

 

(0)

 

,u U ,t [0,T ]

(3.4.1)

x

f (x,u,t), x

xo

 

 

 

 

 

 

 

32

Гo

min max

s [u]

(3.4.2)

 

u

s

 

 

где требуется найти такое управление u при заданных связях, которое

обеспечивает минимакс выражения s [u], т. е. требуется найти Го.

Задачи (3.3.9) и (3.4.1) разные, и их решения не совпадают. Но, тем не ме-

нее, существование решения минимаксной задачи (3.4.1), удовлетворяющее

условию Го 1 гарантирует существование решения ОЗУ, а построение ре-

шения ее позволяет найти одно из решений ОЗУ.

Управление u=uo, являющееся решением минимаксной задачи, по сравне-

нию с другими управлениями, гарантирует наибольшее удаление даже наи-

худшего s [u] от границы, равной единице.

Только одно из допустимых решений ОЗУ совпадает с решением мини-

максной задачи с условием Го 1, но если одна задача имеет решение, то имеет решение другая, и наоборот. Эти задачи эквивалентны в смысле суще-

ствования их решения, хотя сами решения не полностью совпадают. Отме-

тим, что минимаксная задача является более определенной и конкретной ма-

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

ленный поиск решения.

В дальнейшем поиск решения ОЗУ будем связывать с построением реше-

ния минимаксной задачи. Но при решении ОЗУ не обязательно находить ми-

нимакс функционалов s [u].

Алгоритмы решения ОЗУ можно использовать для решения оптимизаци-

онных задач. Например, требуется максимизировать функционал J1[u] при условиях

a J [u] A ,

2, 3,...m (3.4.2)

Для решения этой задачи возьмем последовательность k основных задач управления, каждая из которых формулируется следующим образом: найти u U , при котором выполняются условия (3.1.2), (3.4.2) и

a1( k ) J1[u] A1 , k 1,2...

(3.4.3)

33

где: A1 – заданная постоянная, если J1 ограничивается сверху, или А= ,

если J1 сверху не ограничивается; a1( k ) - заданные постоянные для каждого k.

Величины a1( k ) с ростом номера могут дойти до значения, равного А1.

Следовательно, все a1( k ) A1 . Сначала задаемся достаточно малым значением a1(1) , таким, что при условии (3.4.3) для k=1 ОЗУ имела решение. Вообще го-

воря, постановка оптимизационной задачи имеет смысл только в том случае,

если ОЗУ имеет решение.

Пусть найдено какое то решение ОЗУ, так что за a1(1) естественно принять

значение a1

для этой задачи ОЗУ. Увеличим a1(1) на некоторую величину

a1(1) и обозначим:

a1( 2) a1(1)

a1(1) A1

Найдем решение ОЗУ при условии (3.4.3) для k=2. Далее найдем решение

следующей ОЗУ и т. д. При этом последовательно получаем:

a1( k 1) a1( k ) a1( k ) A1 ; a1( k ) 0.

Наибольшее значение a1( k ) , при котором еще выполняются условия

(3.4.1), (3.4.2) и будет

искомым

максимальным значением а1. Если

a1( k0 )

max a1 , то при

a1

max a1

решение ОЗУ существует, а при

a1

max a1 - не существует.

Этот признак служит условием определения

max a1 . В частности, может быть max a1 A1 . Точность и сложность реше-

ния оптимизационной задачи зависит от величины шага a1( k ) . Можно реко-

мендовать следующие приемы:

1. Решая ОЗУ при a1(1) , вычисляем J1 при полученном управлении u1; его величину принимаем за a1( 2 ) т. е. a1(1) =J1[u1]. Далее решаем ОЗУ при a1( 2 ) , находим управление u2 и вычисляем J1[u2]. Полагаем a1( 3) =J1[u2]. и т. д., пока не получим a1( k ) =A1 или не перестанет существовать решение ОЗУ.

34

и А1. Далее эта задача решается последо-

2. Интервал (a1, A1) разделяем на k равномерных участков и принимаем:

a

a

A1 a1

(k 1), k 1,2...k 1. Задача решается последовательно для

 

1( k )

1

k

 

 

ряда значений a1( k ) , k=1,2…k+1. Первые же значения a1( k ) , при котором ОЗУ не имеет решения, дает решение оптимизационной задачи. Для уточнения

значения max a1 вблизи этого значения интервал следует разбивать на более мелкие участки.

3. Задача ОЗУ решается при a1(1)

вательно для значений:

a

a1(1) A1

, a

a1( 2) A1

, a

a1( k ) A1

, и т. д.

 

 

 

1( 2)

2

1(3)

2

1( k 1)

2

 

 

 

 

 

Отметим, что для каждой конкретной оптимизационной задачи построе-

ние последовательности ОЗУ может быть специфичным.

Таким образом, оптимизационная задача сводится к построению решения последовательности ОЗУ.

Аналогично рассмотренной максимизации a1 решается минимизация или максимизация по остальным критериям.

В полное решение ОЗУ следует включить построение всевозможных ча-

стных решений, оптимизацию по всем критериям и исследование влияния изменения границ as, As на ршение ОЗУ. При этом, любая из оптимизацион-

ных задач включается как частный случай или частное решение ОЗУ. Иссле-

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

Таким образом, полное решение ОЗУ позволяет получить всестороннее представление о возможности исследуемой системы. Часто при заранее за-

данных технических условиях задача не имеет решения. Приходится менять граничные значения as, As в допустимых разумных пределах,

т. е. исследовать задачу на изменение граничных значений.

35

Ввиду сложности задачи и вычислительной трудности построение полно-

го решения ОЗУ не всегда удается, поэтому часто ограничиваются построе-

нием только одного или нескольких решений.

3.5 Применение метода градиентного спуска к решению ОЗУ

Для приближенного решения оптимизационной задачи часто применяют метод градиентного спуска или различные его модификации [7, 8, 15] – ме-

тод случайного поиска и т. д. Эти методы применимы при решении мини-

максной задачи и, следовательно, ОЗУ. Минимаксная задача понимается как минимизация по управлению u функционала

Г[u] max

s [u], s 1...2n ,

s

 

который при каждом допустимом управлении u U совпадает с одним из функционалов 1 [u] или 2 [u] , …, или 2 n [u]. Так что при применении ме-

тода градиентов спуск осуществляется по градиенту одного из функционалов

s [u], s

1...2n в каждом шаге, например, по

k [u]. Но после выполненного

шага при новом управлении максимум s [u], s

1...2n

может достигаться

при другом индексе s

 

k , т. е. другом функционале, например,

s [u], s

k .

Таким образом, при применении метода градиентов:

 

 

 

 

 

 

1)

Задаемся управлением u(o) нулевого приближения;

 

 

 

 

 

 

2)

Вычисляем значения всех функционалов

1

[u(0) ],

2

[u(0)

],...

2n

[u(0)

] при

 

 

 

 

 

 

 

 

 

 

 

 

управлении u(o); если

s

[u(0) ] 1, то одно из решений ОЗУ найдено, в про-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

тивном случае продолжаем решение задачи;

 

 

 

 

 

 

 

 

3)

Находим наибольший из этих функционалов

 

 

 

 

 

 

max

s

[u ( 0) ] Г[u ( 0) ], s

1,2...n ; пусть это k-ый

функционал, т. е.

 

 

 

s

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Г[u(0) ]

k

[u(0) ];

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

4)

Определяем первую вариацию Г функционала Г[u]

k [u] в точке

u=uo;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

36

5)

Задаваясь малым шагом спуска, из условия

Г

0, определяем по-

правку u ( 0 ) на управление u(o);

 

 

 

 

 

 

 

 

6)

Находим первое приближение управления u (1)

 

u ( 0) u ( 0) ;

7)

Вычисляем функционалы

1

[u(1) ],

2

[u(1) ],...

2n

[u(1) ];

 

 

 

 

 

 

 

8)

Проверяем, выполняется ли условие

s

[u(1) ]

1 для всех s=1,2…2n, ес-

 

 

 

 

 

 

 

 

 

ли выполняется, то это будет одним из решений ОЗУ.

Дальнейший ход вычислений существенно зависит от поставленной цели и сложности задачи. Если не требуется подробного изучения всех возможно-

стей системы или процесс вычисления слишком сложен, то расчет на этом можно прекратить – одно решение ОЗУ найдено. Если целью является под-

робное изучение всех решений ОЗУ, то процесс вычислений можно продол-

жить до нахождения минимакса, что гарантирует наибольшее удаление

функционала от границы. Если же условие

s

[u(1)

] 1 нарушается хотя бы

 

 

 

для одного из индексов s=1,2…2n, то процесс решения продолжается, начи-

ная с п. 3 до тех пор, пока не выполняется s [u] 1 для всех s=1,2…2n, или

не найдем Го

min max

s [u]. Если Го>1, то решения ОЗУ не существует. В

 

u s

 

этом случае продолжить поиск решения ОЗУ можно только изменяя те или иные условия исходной задачи. Следует заметить, что градиентный спуск часто осуществляется вблизи множества управлений, удовлетворяющих ра-

венству типа p [u] q [u], т. е. вблизи пересечения двух функционалов,

вблизи «оврага». Если спуск осуществить по одному функционалу в каждом шаге, то это приведет к перескакиванию с одного «берега» на другой «берег»

«оврага», с функционала p [u] на s [u], и наоборот. Это сильно замедляет ход спуска, иногда почти останавливает. В таких случаях рекомендуется спуск «по дну оврага», т. е. по множеству p [u] s [u] или параллельно гра-

диенту этого множества, если удастся его обнаружить. Это значительно ус-

коряет процесс отыскания решения задачи.

37

Значение

Го

min max

s [u] совпадает со

значением одного или не-

 

 

 

 

 

 

 

 

 

 

 

u

s

 

 

 

 

скольких функционалов

s [u], s

1...2n . Пусть

Гo

k [uo ], где индекс k и

управление uo доставляет минимакс функционалу. Тогда, учитывая, что:

 

 

[u

 

]

 

J k [uo ]

ak

, если k

n;

 

 

 

k

o

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ak

ak

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[u

 

]

 

Ak

J k [uo ]

, если k

n

 

 

 

k

o

 

 

 

 

 

 

 

 

 

 

 

 

 

Ak

ak

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

и полагая

 

 

k [uo ]

1 или

k [uo ] 1, получим критерий существования ре-

шения ОЗУ, т. е. неравенства

 

 

 

 

 

J k [uo ]

ak

 

 

 

1, при k

n

 

 

 

 

 

 

Ak

 

 

ak

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Ak

 

J k [uo ]

1, при k

n

 

 

 

 

 

 

Ak

 

 

ak

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

определяющие область изменения значений ak и Аk, при которых ОЗУ имеет решение.

Таков путь решения ОЗУ методом поиска минимакса. Следует отметить,

что для нахождения решения ОЗУ нет необходимости определения минимак-

са, достаточно выполнения неравенства s [u] 1 для всех s=1,2…2n. Задача минимакса служит только для построения алгоритма решения ОЗУ, т. е. яв-

ляется вспомогательной задачей.

3.6 Стохастическая постановка задачи

Рассмотрим процессы, которые описываются системой:

 

 

 

 

 

 

 

 

,

(3.6.1)

 

 

x

f (x,

u,

b, t), t [0, T ], X (0) X 0

 

 

 

 

 

 

 

 

 

 

Эта система содержит случайный вектор параметров b и случайные на-

чальные условия x(0) x , заданные своими вероятностями и параметрами

o

распределения. Управление u u(t) - детерминированные кусочно-

непрерывные функции или параметры, принимающие свои значения из вы-

пуклой замкнутой или открытой области U. Для каждой реализации парамет-

38

 

 

 

 

 

 

 

ров, начальных условий x(0)

xo и заданного управления u

u(t) система

(3.6.1) имеет единственное решение. Теперь условия

 

as J s

As ,

s

1...n ,

 

(3.6.2)

 

будут выполняться только с некоторой вероятностью:

 

Ps [u]

P[as

J s

As ], s

1...n.

(3.6.3)

 

где: P[as J s

 

As ] - вероятность попадания значения функционала Js в

 

 

 

 

 

 

 

отрезок [as, As]. Вероятность Ps[u] зависит от выбора управления u .

 

 

 

 

 

 

 

Определение управления

u U

из условия, что вероятности Ps[u] не

меньше заданных допустимых max Psg , т. е.:

 

Ps [u]

Psg

 

 

 

(3.6.4)

 

назовем стохастической ОЗУ, (СОЗУ).

Пронормируем вероятности Ps[u] по формуле:

 

 

Psq

 

(3.6.5)

s

 

Ps [u]

 

 

 

 

 

 

 

 

и условие (3.6.4) запишем в виде:

 

s

1, s

1...n

(3.6.6)

 

 

 

 

Условие

 

 

min max

 

 

s [u] 1, u U , s 1...n

(3.6.7)

u

 

s

 

 

является необходимым и достаточным для существования решения

СОЗУ. (Аналогичное условие было получено ранее для детерминированной ОЗУ).

Допустим,

Гo

min

max

 

u

s

найдено

 

 

 

s [u]

Г

о [u].

 

 

 

 

 

 

решение

u

uo

минимаксной

задачи

 

 

 

 

 

 

При u

uo

наименьшая вероятность достигает

наибольшего значения, т. е. Po

min

 

max Ps [u].

 

u

s

Таким образом, Ро представляет собой наибольшее гарантированное зна-

 

 

 

чение вероятности, причем неравенства (3.6.2) при управлении u

uo

будут

39

выполняться с вероятностью, не меньшей, чем Ро Но при решении СОЗУ достаточно удовлетворения неравенств (3.6.2) или, что одно и то же – (3.6.6).

Основная трудность решения СОЗУ заключается в вычислении вероятно-

стей (3.6.3). Это общая трудность всех динамических стохастических задач.

Для вычисления Ps[u] (3.6.3) можно применить метод статистических ис-

пытаний. Введем характеристическую функцию:

 

1, если J s

[as , As

]

 

s [b,u]

0, если J s

[as , As ]

(3.6.8)

 

 

Проводя большое число испытаний (расчетов) N, получим соответствен-

ные числа s( k ) , где k – номер испытания. Тогда, приближенно, при достаточ-

но большом N, получим:

 

1

Ps [u]

 

N

 

N

( k )

(3.6.9)

s

 

k 1

При этом должны быть известны вероятности распределения параметров

 

 

 

 

 

b

и начальных условий xo

, которые реализуются методом Монте-Карло. Ре-

 

 

 

 

 

шая систему (3.6.1) при каждой реализации b

и xo

, вычисляем Js, s=1…n и

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

Для

 

таким путем вычислим

вероятности

заданного управления u

 

 

 

 

 

 

 

Ps [u], s

1...n . По формуле (3.6.5)

находим

s

, max

s [u], s

1...n . Далее,

 

 

 

 

s

 

 

применяя метод градиентного спуска или какую-нибудь его модификацию,

улучшаем управление, как это было изложено для детерминированной зада-

чи. Снова вычисляем s

 

 

 

 

при новом управлении, находим max

s [u], s 1...n

 

 

 

s

 

 

 

 

 

 

 

 

и улучшаем управление до тех пор, пока не получим max

s [u] 1 или не

 

 

 

s

 

 

убедимся, что Гo

min

max

 

 

 

s [u] 1, т. е. решение СОЗУ не существует.

 

u

s

 

 

 

40