Декомпозиционно-координационная оптимизация с параллельной обработкой информации для нелинейных динамических систем

А

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

УДК 62.50

ДЕКОМПОЗИЦИОННО-КООРДИНАЦИОННАЯ ОПТИМИЗАЦИЯ С ПАРАЛЛЕЛЬНОЙ ОБРАБОТКОЙ ИНФОРМАЦИИ ДЛЯ НЕЛИНЕЙНЫХ ДИНАМИЧЕСКИХ СИСТЕМ

Н. М. Лыченко

Кыргызско-Российский Славянский университет, г. Бишкек

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

ВВЕДЕНИЕ

Для решения задач оптимального управления большими динамическими системами, характеризующимися взаимодействиями между отдельными составляющими этих систем, традиционно применяется декомпозиционно-координационный подход [1], суть которого заключается в следующем. Глобальная система декомпозируется на множество отдельных подсистем, а глобальная задача управления — на множество отдельных подзадач. Для решения глобальной задачи используются двух- или многоуровневые структуры с координирующими переменными. Схема поиска решения — итеративная. На нижнем уровне множество подзадач имеют независимые друг от друга решения, в то время как на верхнем уровне координирующие переменные, принимая определенные значения, обеспечивают сходимость итеративной процедуры.

Структурная природа декомпозиционно-координационных алгоритмов соответствует современным тенденциям в вычислительных системах, направленным на параллельные и распределенные вычисления [2]. Применение таких вычислительных возможностей дает преимущества в плане объема требуемой памяти и времени

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

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

1. ПОСТАНОВКА ЗАДАЧИ

Рассматривается задача синтеза управления для взаимосвязанных систем большой размерности, состоящих из совокупности М подсистем, каждая из которых

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

*/ (0 = А-х, (0 + г, н, (0 + Ф, (*, 0 +

V/=l,..., М х^0)=хт,

или в составной форме записи:

х{ (/) = Аг/х(!) + В[!«(/) + ф(х, и, /) + ц.(/), х(/0) = х0.

п1 т(

Здесь Х(.(/) 6 ЭД И «Д/) 6 ЭД — векторы состояний

111

и управлений /-Й подсистемы соответственно, Хю 6 ЭД —

6

п{ + ... + пм т{ + ... + »%

6 ЭД и «(/) 6 ЭД — составные векторы

м м

состояния и управления всей системы; ^ я; = п, ^ т[ = т;

/ = 1 I = 1

И; х И; И - X ^

6 ЭД 6 ЭД

фициентов, характеризующие линейную динамику /-Й подсистемы (Д., — управляемые пары), а матрицы

/4^6 ЭДяХя и Вё 6 ЭДпХт - динамику всей системы;

ф(х, и, I) 6 ЭД" — известная векторная нелинейная функция, характеризующая нелинейные взаимосвязи между подсистемами и нелинейные части динамики подсис-

П-

тем, составленная из ф(х, и, /) 6 ЭД '; |х(/) 6 ЭД" — вектор

п I

известных возмущений с компонентами |х(/) 6 ЭД .

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

Задача заключается в нахождении вектора управлений И)(/), ..., и-(/), ..., им(0 такого, что следующий в общем несепарабельный показатель качества всей системы будет минимальным:

+ у

Здесь 0](/6 ЭДяХя, б]ж/6 ЭДяХя — симметричные неотрицательно определенные блочно-диагональные матрицы

Ши= Ои, (Зы>0, 0Ш= 0ТХха, (Зш>0);^6 ЭД”Х”-симметричная положительно определенная блочно-диа-тональная матрица > 0); у(х, и, I) — неко-

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

2. ПАРАЛЛЕЛЬНАЯ ОБРАБОТКА ИНФОРМАЦИИ ПРИ РЕШЕНИИ ЗАДАЧ ОПТИМИЗАЦИИ ВЗАИМОСВЯЗАННЫХ ДИНАМИЧЕСКИХ СИСТЕМ

В соответствии с декомпозиционно-координационным подходом [1] применим к решению поставленной задачи оптимального управления двухуровневую схему.

Согласно методу прогноза взаимодействий [1, 3, 4], зададим на верхнем уровне процедуры решения некоторые переменные х(/) и «(/), называемые координирующими переменными, и будем использовать их на нижнем уровне как известные функции времени. Это позволит декомпозировать исходную оптимизационную задачу на ряд независимых подзадач.

Пусть

х

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

В результате исходная задача оптимизации будет эквивалентна (в силу выполнения ограничений (3)) следующей жвивалентной оптимизационной задаче:

минимизировать

и = \\х(^0и +||х(//)^х(//)||(?м +

2 2 - -

+ |(Нх(ОН01^ + НОН^ +¥(*, и,о))Ж +

Г/ - 2 - 2 + |(||х(0 - х(1)\\<21ш1 + ||и(0 - и(1)\\01аа)с11

•о

при ограничениях (3) и

х(/) = А.х.^) + В.иД/) + фДх, и, /) + Ц.Д/),

V/ = 1, ..., М.

Здесь блочно-диагональные весовые матрицы соответствующих размерностей (2,^, £>1хс1 и £)Ь/с1 введены в критерий эквивалентной задачи для последующих упрощений вычислений [3] и влияния на скорость сходимости итерационного алгоритма.

Процедура решения эквивалентной оптимизационной задачи — итеративная, двухуровневая и имеет две отличительные особенности:

— на верхнем уровне формируются координирующие переменные, обеспечивающие сходимость процедуры к оптимальному для полной системы решению;

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

На рис. 1 представлена традиционная (последовательная) двухуровневая структура итеративного решения эквивалентной оптимизационной задачи (/ — итерационный индекс).

Рис. 1. Традиционная двухуровневая структура итеративного решения оптимизационной задачи

В настоящей работе предлагается для решения независимых 03 использовать параллельные вычисления. Пусть каждая 03 обрабатывается отдельным процессором. В этом случае для подсистем меньшей размерности 03 будут решаться быстрее, а значит, состояния х;.(/) и управления этих подсистем будут появляться раньше, чем для подсистем большей размерности. Будем использовать эту новую информацию с целью переопределения координирующих переменных для подсистем, обработка которых процессором еще не завершилась. Верхний уровень включается в процесс параллельной обработки информации таким образом, что в течение одной /-й итерации приближения решения к конечному (оптимальному) решению координирующие переменные будут верхним уровнем М раз (по числу подсистем) переопределяться и вновь передаваться на нижний уровень. Выполнение функций координатора возложено на верхний уровень параллельных вычислений — корневой процесс, а решение оптимизационных задач на нижнем уровне двухуровневой вычислительной процедуры выполняется процессами (рис. 2). Здесь / + 8. — символ, иллюстрирующий определенность соответствующих переменных лишь до некоторого момента в течение 1-Й итерации, tj — время, необходимое у-му процессору для решения оптимизационной задачи для у'-й подсистемы.

Рис. 2. Параллельная обработка информации в двухуровневой структуре решения оптимизационной задачи

3. АЛГОРИТМЫ РЕШЕНИЯ ОПТИМИЗАЦИОННОЙ ЗАДАЧИ

Сформируем двухуровневую итеративную процедуру с параллельной схемой вычисления координирующих переменных. Для этого запишем гамильтониан:

м м

2Н= ъщ= £ (|x,.(oi2Qiii + ытХ + i=\ i= 1

+ ЦхДО - X/WIIq^. + 1|иД0 - h;WIIq,„ + и^)) +

м - - _ _

+ £ (2^f(0(4X,'W + Biui(0 + Vi(x, и, t) +1х(.(0)) + i= 1

м г - г -

+ £ (2а,- (0(Х;(0 - х/(0) + 2р,- (/)(и.(0 - и,.(/))),

/= 1

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

Условия оптимальности и алгоритмы нижнего уровня.

Уравнения для вычисления хД/) и u^t) можно получить из условий:

^ = 0:RiUi(t) + Bj\t(t) + 02И.(И.(О - ЙД/)) +

+ Щ = 0;

Щ) = ~Ч0- -МО = Gix«x«(0 + QiJXiiO - Х-М +

+ at(t) + aJ ХДО;

= х№: xi W = AixUo + Biuko +

+ %(х, и, t) + Ц.Д0-

Далее, используя преобразования %t(t) = P^x^t) + ft{t) и учитывая, что каждой /-й подсистеме соответствует только для нее определенный вектор координирующих

переменных х'+ S'(t), и'+ 8(0> а,- '(/), Р,- (0> можно

получить уравнения для нахождения «;(/), fj(t) и Xj(t):

u\(t) = - V BjP^Ox'it) - D-1 (Bff!(t) +

+ в+*'«)- QiJi 8'(0), Di = Rt + Q2un W

fid) = (-aJ + bJ )f!(t) +

-1+ 8 - - 1+ 8;

+ Qixixi ‘(0 - u,0 + h-(0) - a (0 -

I — / + 8 /+ 8 •

- Pi

Щ) = - Q2i(Xi(tfy, x\(t) = A^it) + B^it) + фДх, «, /) + Ц.Д/),

xi

pi(t) = -ATpi(t) _ pi(t)Ai + /».(/)ад1 i?f р.(0 -

- 01л - Qixi' Щ) = Qm+ Qir

Координатор

/+5, ( /-6, 1 /+8

x =ix; Lr =

“,l5i = R5'tr <8' =

, / </y t </l

Корневой процесс

03] 03, 03 ,v/

Процесс 1 І Іроцесс / Процесс M

Соотношения (4)—(7) определяют алгоритмы решения на нижнем уровне оптимизационных задач для каждой из подсистем при условии, что координирующие

_/ + 8. -/+ 8. 1+ 8; 1+ 8;

переменные Х1 '(/), И. '(/), а (0) Р/ (0 фикси-

руются верхним уровнем.

Условия оптимальности и алгоритмы верхнего уровня.

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

Э н

да

0: х(/)-*(/) = 0;

0: а

да

-=

(Эф(х, и, /)/Эх)ТЦ/) + (Эу(х, и, t)/-x)T\

д

Эв(0

0: u(t) — и (t) = 0;

Э Н -u

0: в

— (дф(х, и, /)/д« )ТХ(/) + (ду(х, и , 0/ди)т.

Из этих условий получены следующие итеративные алгоритмы для второго, верхнего уровня:

+б

+б

а(0 +б а(0

x(t) = х(0

в(0 в(0

_u(t) и(0_

+б

где

+б

_/+б

'(/) = (Эу(х, и, t)/-x

/ + б -^ + бї

Qixd(x (0 ~ х (0)+

/ + б гр_ /+ б

у-

+ (Эф(х, и , t)/-x +б

А '(О, 1+ б,

в '(/) = (Эу(х, и, /)/Эи ')т

+б

_/+ б:

и (/)) +

_/+ б

+ (дф(х, и, О/ди ‘)ТХ '(/).

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

Шаг I. На нижнем уровне, для каждой из М подсистем параллельно решаются уравнения Риккати (7). Решения -Р(0> V/= 1, ..., М запоминаются, итерационный индекс / = 1.

Шаг 2. На верхнем уровне задается начальный вектор координирующих переменных z1

Шаг 3. На нижнем уровне параллельно решаются 03 для всех подсистем.

Шаг 4. По мере решения /-х 03 с учетом новой информации о состояниях х|(/) и управлениях и^(1) под-

+8

систем вектор координирующих переменных z (0 для /-х подсистем (для которых решение оптимизацион-

+б

Рис 3. Структура управления

ных задач еще не завершилось) переопределяется в соответствии с выражением (8).

Шаги 3 и 4 выполняются в цикле и завершаются вы-1 + 8М

числением 1 (/).

Шаг 5. Переопределяется вектор координирующих

переменных z>+ l(t) = Z М (t).

Шаг 6. Вычисляется ошибка координации е1 = = ||Zl+ l(t) ~ Zl(t)\. Если е1 < е (е достаточно малое), расчеты прекращаются, иначе — переход к шагу 3, на новый цикл поиска оптимального решения, итерационный индекс 1=1+ 1.

Сходимость итеративной процедуры аналитически доказана в работе [5].

Структура управления взаимосвязанной системы имеет замкнуто-разомкнутую форму (рис. 3):

«,.(/) = А'.(Р(.(/))х(.(/) + uCj(t),

Kj(Pj(t)) = V Bj(t)Pt(t), uci(t)= B-'iBJw- Qlu,.й,(0Ш-

Обратные связи от состояний — линейные, с коэффициентом обратной связи K.(P.(t)), Pj(t) — решения уравнений Риккати.

4. ОРГАНИЗАЦИЯ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ

В качестве основы реализации параллельных вычислений выбрана технология МР1 (Message Passing Interface — интерфейс передачи сообщений) [6], которая на данный момент является самой развитой системой параллельного программирования и соответствует модели многопроцессорной ЭВМ с передачей сообщений. Идея МР1 предполагает представление параллельной программы в виде множества параллельно исполняющихся процессов, взаимодействующих друг с другом в ходе исполнения для передачи данных с помощью коммуникационных процедур.

+б

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

Корневой процесс формирует вектор координирую-+8

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

состояния Х;(/) и управления и|(/) системы, полученными от завершившегося процесса.

Новое значение вектора координирующих переменных корневой процесс отправляет процессам с незавершенным решением своих оптимизационных задач 03(, после чего их решение возобновляется. Когда таким образом отработают все Мпроцессов (М — число подсистем согласно структуре декомпозиции), корневой процесс вычисляет ошибку координации е1. Если е1 < е, то вычисления заканчиваются. В противном случае осуществляется переход на следующую итерацию итеративной вычислительной процедуры.

Рис. 4. Структурная схема алгоритма двухуровневого решения оптимизационной задачи с параллельной обработкой информации

Рис. 5. Схема решения уравнений Риккати для подсистем на параллельных процессах

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

5. ЧИСЛЕННЫЙ ПРИМЕР

Моделирование процедуры синтеза децентрализованных систем управления с параллельной обработкой информации проводилось на примере решения оптимизационной задачи для моделей системы 7-го порядка, рассмотренной в работе [4] с различными структурами декомпозиции (табл. 1). Модель системы представлена в виде (1), при этом

м м

фДО = X лдх№ + X Вди/0, /=1 ]=\

VI'

х^1) и и^1) — взаимосвязи между подсистемами.

Система является взаимосвязанной, неустойчивой, но управляемой, на каждую переменную состояния действует известное возмущение ц,(/), вид которого представлен на рис. 6. Необходимо найти управляющие воздейс-

Таблица 1

Структура декомпозиции

Номер структуры декомпозиции Число подсистем Размерности векторов состояний и управлений в подсистемах

1 2 4 3 - —

2 6 1

3 3 3 3 1

4 4 1 2

5 5 1

6 4 3 2 1

7 2 2

твия, которые доставят минимум критерию оптимальности вида (2), в котором

т. е. матрицы штрафов в критерии — не блочно-диагональные, а полные, 01х(?/, — блочные наддиагональ-

ные матрицы.

На рис. 6 представлены траектории состояния системы х(/), а на рис. 7 — координирующие управления ис(1) и результирующие управляющие воздействия «(/). В табл. 2 приведены результаты сходимости итерационных процедур решения задачи при различных структурах декомпозиции (см. табл. 1), с использованием параллельной схемы вычислений и традиционной последовательной схемы.

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

Таблица 2

Результаты сходимости итерационных процедур решении оптимизационной задачи при различных структурах декомпозиции

Номер структуры декомпози- ции Последовательная схема решения Параллельная схема решения

Время, с Число итераций Время, с Число итераций

1 20 19 14,5 10

2 13,3 8

3 12 7

4 22 10 5

5 26 22 11,8 6

6 24 19 11,6 5

7 18 15 22,5 10

Рис. 7. Траектории управляющих воздействий «.

ЗАКЛЮЧЕНИЕ

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

ЛИТЕРАТУРА

1. Сингх М., Титли А. Системы: декомпозиция, оптимизация и управление. — М.: Машиностроение, 1986. — 543 с.

2. Параллельные вычисления и задачи управления (аналитический обзор) / А. Л. Бунич, К. С. Гинсберг, А. В. Добро-видов и др. // Автоматика и телемеханика. — 2002. — № 12. - С. 53-70.

3. Маркин Б. М. Декомпозиционно-координационная оптимизация динамических систем с адаптацией критерия // Там же. - 2001. - № 7. - С. 148-157.

4. Маркин Б. М. Оптимизация динамических систем с децентрализованной структурой управления. — Фрунзе: Илим, 1986. - 268 с.

5. Лыченко Н. М. Принцип параллельной обработки информации в задачах иерархической оптимизации взаимосвязанных динамических систем // Проблемы автоматики и управления. — 1999. — № 1. — С. 23—33.

6. Корнеев В. Д. Параллельное программирование в МР1. — М. — Ижевск: Институт компьютерных исследований, 2003. - 303 с.

S (3312) 43-07-17; e-mail: nlychenko@mail.ru

Статья представлена к публикации членом редколлегии

В. Ю. Рутковским.