Материал: Интеллектуальные информационные системы. труды международной научно-практической конференции. И73

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

где ci – коэффициенты полинома замкнутой системы |s·E-B+N·R|, (s – оператор Лапласа); di – коэффициенты полинома (4):

(sS1*) (sS2*) (sS3*) (sSm* ) (sSm+1) (sSn ),

(4)

Sj,Sk—корни характеристического полинома; q—коэффициент, определяющий степень(глубину) робастности. Система (3) содержит n уравнений и n+(n-m) неизвестных. Поскольку m<n, то 2n-m>n, то есть число неизвестных больше числа уравнений, и появляется возможность выполнить наложенные ограничения-неравенства

Sj < b Sk*,k =1,m; j = m+1,n;k ri > q ai1,

не единственным образом, поэтому необходимо ввести некоторый критерий решения задачи (3). Воспользуемся критерием:

4

 

F(r1,r2,r3,r4) = (ri 4 r1 r2 r3 r4 )2 min,

(5)

i=1

обеспечивающим близкие значения коэффициентов регулятора.

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

Проверим работоспособность метода на примере неустойчивого объекта четвертого порядка со следующими матрицами: B, N и A:

0

1

0

0

0

 

 

 

 

 

 

 

 

, A =[1 0 0 0].

(6)

B = 0

0

1

0

 

, N = 0

 

0

0

1

 

 

 

 

0

 

0

 

 

0 1 1

3

1

 

 

Характеристический полином объекта в изображении по Лапласу: s·(s3+3·s2+s+1), или в матричном виде: |(s·E)-B|, где Е-единичная матрица.

Введём в систему регулятор, тогда характеристический полином PS(s) системы будет получит вид:

PS(s)=|(s·E)-B+N·R|=s4+(r4+3)·s3+(r3+1)·s2+(r2+1)·s+r1.

Зададимся желаемым полиномом, в котором нулевой корень объекта будет заменён на желаемое значение, обеспечивающее устойчивость системы. Данный полином содержит один неизвестный корень:

PG(s)=(s+5)·(s+7)·(s+10)·(s-S4).

Приравняем коэффициенты при s полиномовPS(s) и PG(s)

s4+ (r4+3)·s3+(r3+1)·s2+(r2+1)·s+r1=s4+(22-S4) ·s3+ +(155-22·S4) ·s2+(350-155·S4s-350·S4.

В результате cистема уравнений (3) с критерием (5) примет вид:

130

 

 

 

 

 

 

 

 

4

 

 

 

 

2

 

 

 

 

 

 

 

 

 

 

 

 

 

F(r1,r2,r3,r4) = (ri 4 r1 r2 r3 r4 )

 

min;

 

 

 

 

 

 

 

 

i=1

 

 

 

 

 

r

 

= −350 S

4

;

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

r2 +1= 350155 S4;

 

 

r

 

+1=15522

S

4

;

 

 

 

 

3

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

(7)

r4 +3= 22S4;

 

 

 

 

 

 

k

 

r

10 a

 

;

 

 

 

 

 

 

 

 

 

 

1

0

 

 

 

 

 

 

 

 

 

k

 

r

10 a

 

;

 

 

 

 

 

 

 

 

 

 

2

1

 

 

 

 

 

 

 

 

 

k r3 10 a2;

 

 

 

 

 

 

 

k

 

r

10 a

 

;

 

 

 

 

 

 

 

 

 

 

4

3

 

 

 

 

 

 

 

 

 

S

4

5 S .

 

 

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

Выбрано решение системы: S4=-25, r1=8750, r2=4224, r3=704, r4=44.

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

Построим области устойчивости робастной и неробастной системы.

Y(ω)

Робастная система

 

 

 

 

D(2)

 

 

Неробастная

 

 

система

 

d(0)

D(0)

X(ω)

 

d(2)

 

Рис. Сравнение областей устойчивости робастной и неробастной систем

На рисунке обозначены: Y(ω)=Im(a1(ω)); X(ω)=Re(a1(ω)), D(i), d(i) – подоб-

ласти с числом i корней с положительной вещественной частью для робастной и неробастной систем соответственно.

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

Таким образом, на примере робастной стабилизации системы автоматического регулированияпоставлена задача математического программирования с нелинейной функцией цели. Решениеэтой задачи позволило значительно расширить область устойчивости системы, а также обеспечить компактное расположение коэффициентов регулятора.

131

Литература

1. Yue X. Adaptive control for attitude coordination of leader-following rigid spacecraft systems with inertia rametepar uncertainties// Chinese ournalJ of Aeronautics. 2019. V. 32, no 3. P. 688-700.

2.Jordehi A. How to deal with uncertaintiesin electric power systems? A review// Renewable and Sustainable Energy Reviews. 2018. V. 9. P. 145-155.

3.Alsaadi F. Robust stability of uncertain fractional order singular systems with neutral and time-varying delays// Neurocomputing. 2020.

4.Wong H. Robust control ofthe adaptive immune system. Seminars in Immunology. 2018. V. 36, P. 17-27.

ФГБОУ ВО «Воронежский государственный технический университет»

УДК 004.424.5

С. В. Скворцов, Т. А. Фетисова

АНАЛИЗ ЭФФЕКТИВНОСТИ МНОГОПОТОЧНОГО ГЕНЕТИЧЕСКОГО АЛГОРИТМА С УЧЕТОМ ОСОБЕННОСТЕЙ РЕАЛИЗАЦИИ ОПЕРАТОРА СЕЛЕКЦИИ

Впоследнее время в связи с быстрым развитием вычислительной техники

иеё возрастающими мощностями, становится актуальным вопрос об их эффективном использовании. Для этого активно применяют механизмы распараллеливания процессов в многомерных системах. Эволюционные алгоритмы, а именно генетические алгоритмы (ГА), широко применяемые для решения задач поиска и оптимизации, реализуют итеративное обучение популяций, что может быть принято за основу организации многопоточности [1]. При этом ГА формируют подпопуляции пробных решений, управляемых с помощью операторов генетического алгоритма (селекция, кроссинговер, мутация, миграция).

Мощность подобных эволюционных алгоритмов усиливается с применением параллельных вычислений [2]. Они основаны на делении популяции на несколько подпопуляций, каждая из которых обрабатывается независимо от других подпопуляций на первом (блочном) уровне параллелизма [3]. На втором (поточном) уровне параллелизма происходит вычисление значений целевой функции каждой особи [3].

Целями данной работы являются:

модификация и исследование оператора селекции, используемого в ГА, для его эффективной реализации на платформе CUDA в виде многопоточных приложений, объединенных в один модуль/библиотеку;

132

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

систематизация полученных экспериментальных данных.

Под селекцией в ГА понимается выбор хромосом, которые будут участвовать в генерации потомков следующей популяции. Такая процедура позволяет выбрать особи с наилучшими (наибольшими) значения функции полезности, что способствует появлению новой популяции с лучшими характеристиками. На сегодняшний день существуют разные методы селекции. В многопоточной реализации будут использованы следующие методы: колесо рулетки, турнирная селекция, ранговая селекция – они различны по своей реализации, и, в свою очередь, каждый имеет свои особенности, преимущества и недостатки.

Принцип колеса рулетки обычно считают основным методом селекции для ГА. Метод основывается на выполнении следующих шагов:

1)вычисление значения функции полезности каждой особи;

2)вычисление секторов рулетки по формуле (1)

v(chi) = ps(chi) 100% ,

(1)

где

F(chi)

 

 

ps(chi) =

 

(2)

F(chi)

,

 

i

 

v – вероятность выбора сектора колеса рулетки; ps – величина сектора; F – значение функции полезности особи; chi i-ая особь;

3) рандомный выбор особей по секторам (особь повторяется тем чаще, чем больше сектор);

3)удаление повторяющихся особей;

4)переход к кроссинговеру.

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

Турнирная селекция является более востребованной при решении задач минимизации и максимизации функций, а также многокритериальной оптимизации. Данный метод разделен на четыре этапа:

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

2)вычисление значения функции полезности каждой особи в подпопуля-

ции;

3)выбор из каждой подпопуляции особи с наилучшим значением функции полезности;

4)переход к кроссинговеру.

133

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

Ранговая селекция основывается на ранжировании особей популяции по значениям их функции полезности, а именно:

1)вычисление значения функции полезности каждой особи;

2)ранжирование особей по уменьшению функции полезности;

3)определение особей, которые будут в выборке для скрещивания;

4)переход к кроссинговеру.

Главное преимущество ранговой селекции заключается в возможности ее применения при минимизации и максимизации функций.

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

Для проведения эксперимента по оценке эффективности параллельных вариантов ГА, на платформе CUDA разработано четыре версии программы поиска глобального минимума целевой функции: последовательная реализация на ЦП; одноуровневая блочная; одноуровневая поточная и двухуровневая блочнопоточная реализация на платформе CUDA. Эксперимент проводился с использованием следующих технических средств: видеоплата NVIDIA GeForcegtx 1070, процессор IntelCorei5 6500.

Задачи эксперимента:

сравнение скорости работы параллельных и последовательных версий программ;

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

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

Результаты эксперимента, представленные в таблице 1, получены на основе следующих сходных данных: количество особей 2000-8000; количество блоков при распараллеливании: 128-512; количество потоков: 128-512; сложность целевой функции (фитнес-функции): от алгебраической функции третьей степени до трансцендентной функции с наличием нескольких тригонометрических слагаемых; варианты селекции: колесо рулетки, турнирная селекция, ранговая селекция.

134

Источник: https://studfile.net/preview/16566030/