Софронова Елена Анатольевна На правах рукописи МЕТОД СЕТЕВОГО ОПЕРАТОРА ДЛЯ РЕШЕНИЯ ЗАДАЧИ

advertisement
На правах рукописи
Софронова Елена Анатольевна
МЕТОД СЕТЕВОГО ОПЕРАТОРА ДЛЯ РЕШЕНИЯ ЗАДАЧИ
МНОГОКРИТЕРИАЛЬНОГО СТРУКТУРНО-ПАРАМЕТРИЧЕСКОГО
СИНТЕЗА СИСТЕМЫ УПРАВЛЕНИЯ
Специальность 05.13.01 - Системный анализ,
управление и обработка информации (промышленность)
Автореферат диссертации на соискание ученой степени
кандидата технических наук
Москва 2008
1
Работа выполнена в Российском университете дружбы народов
Научный руководитель:
доктор технических наук, профессор Дивеев А.И.
Официальные оппоненты:
доктор технических наук, профессор Афанасьев В.Н.
доктор технических наук, профессор Шабалин А.Н.
Ведущая организация:
Московский государственный технический университет им. Н.Э. Баумана
(МГТУ им. Н.Э. Баумана)
Защита диссертации состоится 28 февраля 2008 года в 16 часов 00 мин. на
заседании диссертационного совета Д 002.017.03 в ВЦ им. А.А. Дородницына
РАН по адресу: 119333, г. Москва, ул. Вавилова, 40.
С диссертацией можно ознакомиться в библиотеке Вычислительного
центра им. А.А. Дородницына РАН.
Автореферат разослан « ____ » ___________
Ученый секретарь Совета по защите
докторских и кандидатских диссертаций,
кандидат физико-математических наук
2
2008г.
Мухин А.В.
ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ
Актуальность темы. Работа посвящена решению важной задачи синтеза
системы автоматического управления. Данная задача на протяжении многих
лет является одной из ключевых проблем теории управления. Задача
заключается в следующем. Задан объект управления, математическая модель
которого описывается системой обыкновенных дифференциальных уравнений.
Заданы критерии качества, представленные в виде интегральных функционалов
и терминальных условий. Необходимо найти управление в виде функции
координат пространства состояний, обеспечивающее оптимальное с точки
зрения критериев качества функционирование объектов управления с учетом
ограничений на управление и начального состояния объекта.
В общем случае для нелинейного объекта управления и произвольных
критериев качества задача синтеза в настоящий момент не решена. Основной
причиной отсутствия решения задачи управления является сложность, а точнее
практически невозможность получения аналитического решения задачи
оптимального управления в общей постановке. В тех случаях, когда
аналитическое решение задачи оптимального управления получено, синтез
управления может быть построен на основе анализа найденного
аналитического решения краевой задачи для системы дифференциальных
уравнений.
Предпосылкой для создания эффективного метода решения являются
последние достижения, полученные в области алгоритмизации, и эффективные
современные средства вычислительной техники. В работе синтез системы
управления основывается на методе генетического программирования. С
помощью
генетического
программирования
осуществляется
поиск
функциональной зависимости управления от координат пространства
состояний.
Предметом диссертационного исследования является задача синтеза
системы оптимального управления.
Целью диссертационной работы является разработка метода синтеза
системы автоматического управления, т.е. получение оптимального управления
в виде функциональной зависимости от координат пространства состояний. Для
достижения поставленной цели необходимо решить следующие задачи:
- разработать и исследовать эффективный метод представления
функциональных зависимостей в ЭВМ;
- разработать и исследовать эффективный генетический алгоритм для
поиска функциональных зависимостей при решении задачи синтеза
оптимального управления;
- разработать и исследовать метод сетевого оператора для прикладной
задачи синтеза системы управления стабилизацией спутника.
Методы исследования, используемые в диссертации, основываются на
результатах, полученных в областях теории управления, системного анализа,
методах оптимального управления, теории графов, теории алгоритмов.
Новизна научных результатов, полученных в диссертации, заключается
в том, что разработан новый метод многокритериального структурнопараметрического синтеза системы управления. Разработанный метод
3
использует новую структуру данных, сетевой оператор. Структура позволяет
описывать произвольные математические выражения и представлять их в ЭВМ
с помощью целочисленной матрицы, что повышает эффективность алгоритма
синтеза.
Практическая значимость результатов работы заключается в том, что
разработанный метод синтеза предназначен для построения систем управления
реальными динамическими объектами. В диссертации приведен пример синтеза
системы стабилизации углового движения космического аппарата. На
основании разработанных алгоритмов создан программный комплекс для
синтеза систем управления.
Использование результатов работы осуществляется в учебном процессе
на кафедре Кибернетики и мехатроники Российского университета дружбы
народов. Издано учебно-методическое пособие. Работа выполнялась по теме
гранта РФФИ №06-08-01485-а «Исследование методов синтеза систем
автоматического управления».
Апробация результатов, полеченных в диссертации, подтверждается
докладами на следующих научных конференциях и международных
симпозиумах: «Интеллектуальные системы» (INTELS'2006) (г. Краснодар), III
международной конференции по проблемам управления (г. Москва, 2006),
«Надежность и качество 2007» (г. Пенза), «Космонавтика. Радиоэлектроника.
Геоинформатика 2007» (г. Рязань), XV Международной конференции по
механике и современным программным системам (ВМСППС’2007) (г. Алушта).
Основные положения, выносимые на защиту:
1. Метод многокритериального структурно-параметрического синтеза
системы управления на основе принципа базисного решения и генетического
алгоритма. Алгоритм позволяет одновременно искать решения для
структурного и параметрического синтеза.
2. Новая структура данных, сетевой оператор, которая предназначена для
представления формулы в ЭВМ. Метод преобразования формулы в сетевой
оператор. Представление сетевого оператора в виде целочисленной верхней
треугольной матрицы. Алгоритм вычисления формулы по матрице сетевого
оператора.
3. Решение задачи многокритериального структурно-параметрического
синтеза системы стабилизации углового движения космического аппарата на
основе разработанного метода.
Результаты диссертации опубликованы в 11 научных трудах.
Структура диссертации. Диссертация состоит из введения, четырех
разделов, заключения, списка литературы и приложений. Объем работы – 145
страниц, включая 78 рисунков и 4 таблицы. Список литературы содержит 51
наименование.
ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ
Во введении обоснована актуальность темы, сформулированы предмет,
цель и задачи исследования, методы исследования, новизна научных
результатов и практическая значимость полученных результатов, основные
4
положения, выносимые на защиту, приведены данные о структуре и объеме
диссертации.
В первом разделе приведена постановка задачи.
Объект
управления
описывается
системой
обыкновенных
дифференциальных уравнений
(1.1)
x  f x ,u  ,
где x  x1  xn T - вектор состояния системы, u  u1 u m T
- вектор
управления, x ℝn, u  U  ℝm, m  n , U - ограниченное множество.
Заданы функционалы, определяющие критерии качества управления
tf
     Fi xt ,ut dt , i  1, M ,
J i  Gi x t f
(1.2)
0
где t f - длительность процесса управления.
Задано начальное состояние объекта управления


T
x0  x 0  x10  x n0 .
Необходимо синтезировать систему управления в виде
u  g x , q  ,
(1.3)
(1.4)
где q  q1  q R T - вектор параметров системы управления, q  Q  ℝR, Q ограниченное множество.
Данная задача требует построения структуры системы управления (1.4) и
выбора оптимальных значений параметров для обеспечения минимумов
функционалов (1.2).
Обеспечение минимумов функционалов понимаем в смысле построения
множества Парето оптимальных решений. Результатом синтеза будет система
управления, выбранная из множества систем управлений (1.4), каждая из
которых при оптимальных значениях параметров q обеспечивает
принадлежность решения множеству Парето.
Результатом
решения
задачи
является
вектор-функция
~
~   g~ x , q
~  g~ x , q
~ T , которая при оптимальных значениях параметров
g x , q
1
m
~  q~  q~ T обеспечивает однозначное отображение пространства состояний
q
1
R
в ограниченное подмножество пространства управлений.
Наиболее известным и исследованным случаем решения задачи синтеза
оптимального управления является задача, решенная для линейных систем с
квадратичным
функционалом.
Метод
называется
аналитическим
конструированием регулятора и основан на решении уравнения Риккати.
Все методы решений задачи синтеза оптимального управления можно
разделить на два класса. К первому классу отнесем методы, основанные на
использовании объектов и функционалов определенного вида. Решение
удавалось получить за счет специальных свойств объектов и функционалов.
Например, линейные объекты и критерий быстродействия (Л.С. Понтрягин),
нелинейный объект второго порядка и также критерий быстродействия
(В.Г. Болтянский), линейный объект и квадратичный критерий (Р. Беллман,
5
П. Деруссо, Р. Рой). Известны результаты, которые были получены в работах по
построению нелинейной обратной связи в виде многомерных полиномов
(А.М. Летов, К. Мерриэм, А.А. Красовский, Н.Н. Красовский, Э.Б. Ли,
Л. Маркус, К. Лобри, Р.У. Брокетт).
Ко второму классу методов следует отнести методы двухэтапного синтеза:
на первом этапе осуществляется поиск оптимальной траектории как функции
времени, на втором этапе – строится система, обеспечивающая стабилизацию
объекта в окрестности полученной оптимальной траектории. При построении
систем стабилизации математические модели объекта линеаризуются в
окрестности оптимальной траектории, поэтому используются стандартные
методы синтеза регуляторов для линейных систем.
В последнее время наиболее значимые результаты в решении
поставленной задачи были получены на основе синергетического подхода
(А.А. Колесников, Г.В. Кондратьев). Синергетический подход заключается в
использовании принципов направленной самоорганизации и декомпозиции
нелинейных динамических систем.
Для разработки эффективного вычислительного метода решения задачи
многокритериального
структурно-параметрического
синтеза
системы
управления необходимо использовать последние достижения в области новых
вычислительных алгоритмов. Наиболее важным результатом в области
алгоритмизации является создание метода генетического программирования
(Koza J.R.), которое позволяет получить с помощью вычислительной машины
аналитические решения различных математических задач.
Генетическое программирование является развитием метода генетического
алгоритма (Davis Lawrence, Goldberg D.E., Holland J.H.) для автоматического
написания программ. Автоматическое написание программ подразумевает
создание такой программы, которая могла бы создавать другие программы без
детального описания алгоритма, используя только набор требований и условий.
В генетическом программировании для универсального описания
программы и ее кодировки используется польская запись [1]. Польская запись
представляет собой строку символов, описывающих операторы и операнды.
При скрещивании в генетическом программировании из двух родительских
записей формируем две новые записи. Если оба символа в позициях,
соответствующих случайным числам, в родительских записях являются
операндами или операциями, то данные символы могут являться точками
скрещивания.
В генетическом программировании существует ряд контрольных
параметров. Основными численными параметрами являются размер популяции
и максимальное число поколений, второстепенными - вероятности
скрещивания, воспроизводства, мутации и т.д.
Множество
польских
записей
может
описывать
множество
функциональных зависимостей. Так как генетическое программирование
обеспечивает поиск решения на множестве функциональных зависимостей, то
остановим свой выбор на нем в качестве базового подхода для решения
поставленной задачи. В то же время следует отметить, что генетическое
программирование обладает существенными недостатками:
6

используемая структура данных, польская запись, требует
проведения лексического анализа при каждом расчете, что является
неэффективным с вычислительной точки зрения;

количество переменных в выражении увеличивается с каждым
использованием переменной в аналитической зависимости, т.е. увеличивается
количество листьев на дереве, которое представляет польскую запись;

несмотря на то, что разная длинна польской записи дает
преимущество в разнообразии функциональных зависимостей, она создает
трудности при поиске решения с помощью генетического алгоритма.
Для разработки метода решения поставленной задачи необходимо:

разработать эффективную с вычислительной точки зрения
структуру для представления функциональных зависимостей;

обеспечить возможность выбора оптимальных значений параметров
в каждой функциональной зависимости;

обеспечить
возможность
построения
множества
Парето
оптимальных решений с помощью генетического алгоритма.
Во втором разделе описан метод сетевого оператора, который
предназначен для записи формулы в наиболее удобном виде для вычисления на
компьютере.
Для определения порядка вычислений используем граф, который является
аналогом сетевого графика. Структуру графа в машинной реализации
представляем в виде матрицы смежности.
Введем в рассмотрение несколько конечных упорядоченных множеств, из
элементов которых состоит формула.
Множество переменных – это упорядоченное множество символов, вместо
которых в процессе вычисления могут подставляться числа из множества
вещественных чисел ℝ1,
V  v1 , , v P  , vi  ℝ1, i  1, P .
(2.1)
Множество параметров – это упорядоченное множество чисел, не
меняющихся в процессе вычислений,
С  с1 , , с R  , сi  const , i  1, R .
(2.2)
Множество унарных операций - это упорядоченное множество функций
или однозначных отображений, заданных на числовом множестве,
O1  1 z ,  2 z , , W z  ,
(2.3)
где  i z  : ℝ1  ℝ1, z ℝ1, y  ℝ1  y   i z  , i  1,W .
Множество бинарных операций - это упорядоченное множество функций
двух аргументов или однозначных отображений декартового произведения
пары одинаковых числовых множеств в одно такое же числовое множество,
O2  1 z  , z ,  2 z  , z , , V z  , z  ,
(2.4)
где  i z  , z  : ℝ1  ℝ1  ℝ2  ℝ1, z  , z   ℝ1, y  ℝ1  y   i z  , z  , i  1,V .
Сетевой оператор - это ориентированный граф, обладающий следующими
свойствами [2-5]:
а) в графе отсутствуют циклы;
7
б) к любому узлу, который не является источником, имеется хотя бы один
путь от узла-источника;
в) от любого узла, который не является стоком, имеется хотя бы один путь
до узла-стока;
г) каждому узлу-источнику соответствует элемент из множества
переменных V или из множества параметров C ;
д) каждому узлу соответствует бинарная операция из множества O 2
бинарных операций;
е) каждой дуге графа соответствует унарная операция из множества O1
унарных операций.
Вычисления по сетевому оператору включают три этапа. На первом этапе
находим узел, который имеет выходящие дуги, но не имеет ни одной входящей
дуги. На втором этапе выполняем унарную и бинарную операции. Унарная
операция соответствует дуге, выходящей из найденного узла. В качестве
аргумента унарной операции используем значение, которое хранится в
найденном узле. Бинарная операция соответствует узлу, в который дуга входит.
В качестве первого аргумента бинарной операции используем либо единицу,
либо результат последнего вычисления, который хранится в данном узле. В
качестве второго аргумента используем результат вычисления унарной
операции. На третьем этапе исключаем узел и дугу из графа. Найденный узел
исключаем в том случае, если этот узел не является узлом-стоком и не имеет ни
одной выходящей дуги. Дугу исключаем во всех случаях, если операция,
которая соответствует данной дуге, выполнена.
Этапы вычислений выполняем до тех пор, пока в сетевом операторе не
останутся только узлы-стоки, в которых хранятся результаты вычислений.
Выполнение унарной операции согласно выходящей из узла дуге,
осуществляем только в том случае, если в узел, из которого данная дуга
выходит, не входит ни одна дуга.
Для любой формулы, заданной в графической записи, можно построить
сетевой оператор, вычисления по которому будут давать те же результаты, что
и вычисления по формуле.
Введем в рассмотрение целочисленные векторы. Вектор номеров входных
переменных b  b1 bP T , где bi - номер узла-источника в сетевом операторе,
с которым связана переменная vi , i  1, P . Вектор номеров параметров
s  s1  s R T , где si - номер узла-источника в сетевом операторе, с которым
связан
параметр
ci ,
i  1, R .
Вектор
номеров
выходных
переменных
d  d1  d M T , где d i - номер узла сетевого оператора, который соответствует
выходной переменной yi , M - количество выходных переменных.
Для формального описания сетевого оператора в матрице смежности
сетевого оператора вместо единиц, которые соответствуют дугам графа,
записываем соответствующие номера унарных операций из множества O1 , а на
диагонали – соответствующие номера бинарных операций из множества O 2 .
8
Матрица сетевого оператора – это целочисленная матрица, на диагонали
которой расположены номера бинарных операций, а остальные элементы либо
нули, либо номера унарных операций, причем при замене диагональных
элементов на нули, а ненулевых недиагональных элементов на единицы
получаем матрицу смежности графа сети, удовлетворяющей свойствам а – в
сетевого оператора.
 
Ψ   ij ,
Верхний треугольный вид матрицы сетевого оператора
i , j  1, L , позволяет легко осуществлять вычисления согласно сетевому
оператору. Для этой цели необходимо последовательно проходить все строки
матрицы и совершать вычисления с помощью унарных операций,
определяемых ненулевыми недиагональными элементами в строке, и бинарные
операции, определяемые номерами диагональных элементов, которые
расположены в столбцах с ненулевыми недиагональными элементами.
Для удобства вычислений и хранения промежуточных результатов введем
вектор узлов z  z1  z L T , размерность L которого равна количеству узлов
сетевого оператора. Зададим начальные значения вектору узлов. Если узел


является источником, то в качестве начального z 0  z10  z L0 значения
возьмем соответствующий элемент из множеств переменных или параметров
T
z s0   ci  С , i  1, P , z b0   ai  V , i  1, R .
i
i
Векторы аргументов определяют номера узлов источников сетевого
оператора. Остальные компоненты вектора узлов представляют собой
единичные элементы для бинарных операций, соответствующих узлов. Если
бинарной операцией является сложение, то единицей для данной операции
является ноль, а, если умножение, то единица.
После задания начального значения вектора узлов zi0  , i  1, L ,
последовательно проходим в матрице сетевого оператора Ψ все строки по
столбцам. Если встречаем в строке i в столбце j не нулевой элемент, то
выполняем сначала унарную операцию, номер которой определяем по элементу
 ij матрицы сетевого оператора, над значением элемента z i вектора узлов.
Затем над результатом вычислений  ij zi  выполняем бинарную операцию,
номер которой определяем по элементу  jj матрицы сетевого оператора,
причем первым аргументом бинарной операции является последнее значение
элемента z j вектора узлов. Результат вычислений присваиваем элементу z j



вектора узлов z ji    jj z ji 1 ,  ij zii 1 , где z ji  - значение j -й компоненты
вектора узлов после прохождения i -й строки, i  1, L .
9
После прохождения всех строк матрицы сетевого оператора результат
вычислений будут содержать компоненты вектора узлов, которые
определяются по номерам выходных переменных z d L  , i  1, M .
i
Из-за верхнего треугольного вида матрицы сетевого оператора компонента
j вектора узлов не будет изменяться, если пройдена строка j  1 , поэтому
справедливо соотношение z ji   z j j 1 , i  j , L  1.
В третьем разделе приведена разработка генетического алгоритма для
решения задачи синтеза на основе метода сетевого оператора.
При построении генетического алгоритма, работающего с матрицами
сетевых операторов, используем универсальный принцип базисного решения.
Принцип используется для того, чтобы не нарушать структуру решения.
Генетические операции выполняются не над самой структурой, а над
множеством допустимых вариаций структуры.
Для использования принципа базисного решения сначала необходимо
определить малые вариации графа сетевого оператора [2]. Каждая вариация
должна изменять граф сетевого оператора, сохраняя его свойства. Малые
вариации графа приведены в таблице 3.1.
Таблица 3.1.
Малые вариации графа
Название малой вариации
Номе
р
вариации
Замена унарной операции на дуге графа
0
Замена бинарной операции в узле графа
1
Добавление дуги
2
Удаление дуги
3
Удаление узла
4
Добавление узла
5
Все вариации формально могут быть описаны целочисленным вектором
вариаций из четырех компонент w  w1 w2 w3 w4 T , где w1 - номер
вариации, w2 - номер строки матрицы сетевого оператора, w3 - номер столбца
матрицы сетевого оператора, w4 - номер бинарной или унарной операции, в
зависимости от номера вариации.
При реализации генетического алгоритма на основе принципа базисного
решения в качестве хромосомы используем упорядоченный набор векторов
вариаций.
Помимо основных параметров генетического алгоритма, количества
хромосом, поколений и скрещиваемых пар, количество векторов вариаций в
хромосоме является еще одним настраиваемым параметром. Этот параметр
называем длиной хромосомы. Большая длина хромосомы увеличивает
вариабельность решений, но усложняет вычисления
10
Чтобы обеспечить достаточную вариабельность решений при малой длине
хромосомы необходимо периодически изменять базисное решение. Базисное
решение целесообразно менять после нескольких поколений, которые являются
основными циклами генетического алгоритма. Для смены базисного решения
введем еще один настраиваемый параметр генетического алгоритма – эпоха.
Эпоха – это количество поколений в генетическом алгоритме, при котором
базисное решение гарантированно остается неизменным.
При смене эпохи базисное решение следует заменять наилучшим
найденным решением, при этом в популяции необходимо создать
тождественную хромосому, состоящую из векторов вариаций, не меняющих
решение.
Для решения задачи (1.1)-(1.4) на основе сетевого оператора необходимо
определить конструктивные множества: переменных, параметров, унарных и
бинарных операций. Затем установить размерность сетевого оператора,
определить множество вариаций и выбрать базисные решения. После этого
можно построить генетический алгоритм для поиска решений.
Выбор множества переменных V  v1 , , v P , vi  ℝ1, i  1, P , для
практических задач не вызывает особой сложности. В большинстве случаев
переменными могут являться наблюдаемые и измеряемые компоненты вектора
состояний объекта.
Для выбора множества параметров С  с1 , , с R  , сi  const , i  1, R ,
достаточно определить лишь мощность этого множества, т.к. значения
параметров подбираются в процессе синтеза. Большое количество параметров
увеличивает разнообразие решения, но усложняет процесс оптимизации. Как
правило, число параметров не превосходит число переменных.
Множество бинарных операций O2   0 z  , z , 1 z  , z , , V 1 z  , z  ,
 i z  , z  : ℝ1  ℝ1  ℝ2  ℝ1, z  , z   ℝ1, y  ℝ1  y   i z  , z  , i  0 ,V  1 , в
подавляющем большинстве случаев содержит две операции – умножение и
сложение. Эти операции являются коммутативными, ассоциативными и для них
определены единичные элементы.
Определение множества унарных операций O1  1 z ,  2 z , , W z  ,
 i z  : ℝ1  ℝ1, z ℝ1, y  ℝ1  y   i z  , i  1,W , является наиболее
сложным. Набор конкретных операций подбирается для решаемой задачи. В
множество следует ввести тождественную операцию.
Выбор базисного решения влияет на эффективность работы алгоритма.
Чем ближе базисное решение к оптимальному по количеству вариаций, тем
быстрее может быть найдено решение с помощью генетического алгоритма.
Наиболее эффективно базисное решение следует выбирать на основе
анализа практической задачи. Если нет никаких предположений о структуре
системы, можно в качестве базисного сетевого оператора использовать
тривиальный сетевой оператор, содержащий по одному пути от каждого узлаисточника к любому узлу-стоку, всем узлам поставить в соответствие
бинарную операцию сложения, а дугам - тождественную унарную операцию.
11
На первом этапе генерируем множество возможных решений, популяцию
хромосом. Каждая хромосома состоит из двух частей. Первая часть влияет на
структуру системы управления и представляет собой упорядоченное множество
векторов вариаций


W  w1 , , w r , где

w i  w1i w2i w3i w4i

T
- вектор
вариаций, i  1, r .
При генерации вектора вариаций используем только вариации, которые не
влияют на размерность сетевого оператора, т.е. вариации 0-3.
Вторая часть хромосомы влияет на значения параметров системы
управления и представляет собой битовую строку, закодированную кодом Грея,
s  s1, ,s N  , где s j  0,1, j  1, N .
Для каждого параметра qi  C , i  1, R , выделяется определенное число
бит под целую c и дробную d части. Длина хромосомы определяется из
соотношения N  Rc  d  .
Первоначально создаем популяцию из H хромосом, состоящих из
структурной и параметрической частей. Для каждой хромосомы вычисляем
значения функций приспособленности, которые соответствуют функционалам.
Для того, чтобы вычислить значения функционалов, из структурной части
каждой
хромосомы
получаем
матрицу
сетевого
оператора
Ψ h  w r ,h    w1,h  Ψ 0 , h  1, H , где Ψ 0 - матрица сетевого оператора
базисного решения.
Полученная матрица сетевого оператора Ψ h и вектор параметров q h
определяют одно из возможных решений (1.4) рассматриваемой задачи синтеза
 
u  g h x ,q h .
Для определения
приспособленности


хромосомы
введем
условное
h T
множество Парето. Пусть J h  J1h  J M
- вектор значений функционалов
h1
h2
для
хромосомы
h.
Отношение
Парето
J
J
справедливо,
если
выполняются условия J i 1  J i 2 , i  1, M ,  k  k 1, , M  , J i 1  J i 2 .
Условное множество Парето Pc представляет собой совокупность
h
h
h

h

возможных решений или хромосом W k ,s k , 1  k  H , для которых не
существует хромосом, более лучших в смысле отношения Парето.
Чтобы построить условное множество Парето на популяции хромосом,
введем характеристику, расстояние от текущей хромосомы до условного
множества Парето
k 
H
 hk ,
h 1

1, если J h  J k
где hk  
.

0 , иначе
12
(3.1)
В качестве функции приспособленности для оценки решения используем
расстояние до условного множества Парето. Хромосомы, имеющие нулевое
расстояние, принадлежат условному множеству Парето



(3.2)
Pc  W k , s k ,1  k  H : k  0 .
Для репродукции хромосом в популяции случайно отбираем пару
W h ,sh  и W h
1
1
2

,s h2 . Определяем вероятность скрещивания по условию
1  h1 1  h2 
p s  max 
,
(3.3)
,
h
h
1
2
 1  
1   
где   0,1 .
Если условие (3.3) выполняется, то производим скрещивание хромосом.
Случайно выбираем точки скрещивания
Обмениваем части хромосом и получаем четыре новых хромосомы–




В хромосомах W H 1 , s H 1 , W H  2 , s H  2  сохраняется структура
родителей, но изменяется параметрическая часть. В хромосомах
W H 3 ,s H 3 , W H  4 ,s H  4  изменяются и структурная и параметрическая

потомка W H 1 , s H 1 , W H  2 , s H  2 , W H  3 , s H  3 , W H  4 , s H  4 .
части.
Для новых хромосом выполняем операцию мутации с заданной
вероятностью pm . Вычисляем значения функционалов для новых хромосом




J j g H  i  J j W H  i , s H  i , j  1, M , i  1,4 .


Осуществляем проверку включения новой хромосомы W H  i ,s H  i ,
1  i  4 , в популяцию. Вычисляем расстояние до условного множества Парето

для новой хромосомы, H  i . В популяции находим хромосому W h ,s h


с
наибольшим расстоянием h  max h , h  1, H , где h - номер наихудшей
хромосомы в популяции.
Если расстояние до условного множества Парето у наихудшей хромосомы
больше, чем у новой хромосомы h  H  i , то заменяем наихудшую
хромосому на новую W h  W H  i , s h  s H  i , 1  i  4 .
Пересчитываем расстояния до условного множества Парето для всех
k
хромосом в популяции  
H
 hk , k  1, H .
h 1
Алгоритм завершает свою работу после выполнения заданного числа
основных циклов, поколений. Результатом работы является условное
множество Парето, построенное на конечной популяции хромосом.
Алгоритм также может завершить свою работу, если условное множество
Парето не изменяется на протяжении заданного количества поколений.
Выбор конкретного решения должен осуществляться на основании
дополнительных критериев. В качестве такого критерия может использоваться
13
значение нормы на пространстве функционалов до наилучшей недостижимой
точки
 M



~
h k hk
 2
Fh  min   J i W , s
 J i : k  1, Pc  ,
(3.4)
k  i 1


 
 
где h - номер наилучшей хромосомы в популяции, J i - наилучшее значение



критерия i , J i  min J i W hk , s hk , k  1, Pc .
В четвертом разделе рассмотрена задача синтеза управления для
стабилизации углового движения космического аппарата.
Математическая модель объекта управления имеет следующий вид
dx1 1
 x 2 x3  100u1 ,
(4.1)
dt 3
dx2
  x1 x3  25u 2 ,
(4.2)
dt
dx3
 x1 x 2  100u3 ,
(4.3)
dt
где x1 , x 2 , x3 - угловые координаты спутника, u1 , u 2 , u3 - управляющие
воздействия.
Для системы (4.1)-(4.3) заданы начальные условия x1 0  200 , x 2 0   30 ,
x3 0   40 .
Процесс стабилизации должен сопровождаться минимальным расходом
топлива и отсутствием вращения спутника относительно начала координат
J1 
 
tf 3
  ui t  dt  min ,
0 i 1
 
 
(4.4)
J 2  x12 t f  x 22 t f  x32 t f  min .
(4.5)
Рассматривались две постановки задачи. В первой постановке на
управление были наложены ограничения  4  ui  4 , а во второй -  2  ui  2 ,
i  1,2 ,3.
Для проверки робастности полученных решений, систем управления, для
одной из систем проводилось моделирование с другими начальными
значениями x1 0  220 , x 2 0   33 , x3 0   44 .
Для решения задачи использовались следующие параметры генетического
алгоритма: размерность популяции – 200, количество скрещиваемый пар в
поколении – 64, количество поколений – 50, число поколений между эпохами –
10, длина структурной части хромосомы – 12, количество критериев – 2, число
постоянных параметров – 3, количество бит под целую часть параметра – 2,
количество бит под дробную часть параметра – 6, вероятность мутации – 0,8,
шаг интегрирования – 0,001, шаг печати – 0,01, время переходного процесса –
1, размерность матрицы сетевого оператора – 16, мощность множества
14
констант – 3, мощность множества переменных – 3, размерность вектора
управления – 3.
В качестве базисного решения использовалась линейная обратная связь по
угловым координатам
u  , если y  u 
i
i
i
 
ui  ui , если yi  ui ,
 y , иначе
 i
где ui , ui , yi  ci xi , i  1,2 ,3.
Множества переменных и параметров имели следующий вид
V  x1 , x2 , x3 , C  q1 , q 2 , q3  . Векторы номеров входных переменных,
параметров и выходных переменных имели следующие значения b  1,2 ,3T ,
s  4 ,5,6T , d  14 ,15 ,16T .
Матрица базисного сетевого оператора имела следующий вид
0
0
0
0
0
0
0
0 0
Ψ 
0
0
0
0
0
0

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
3
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
3
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
3
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0 .
0
0
0
0
1
0
0
0
На рис. 1 представлено множество Парето для задачи (4.1)-(4.5).
J2
J1
Рис. 1. Условное множество Парето
Было проведено моделирование для разных решений, принадлежащих
условному множеству Парето. Для одного из полученных решений были
15
J1  2 ,782517 ,
найдены
следующие
значения
критериев
качества
J 2  0 ,499139 и параметров q1  1,890625 , q 2  0 , q3  3,71875 .
Матрица сетевого оператора для данного решения имела вид
0
0
0
0
0
0
0

Ψ  0
0
0
0
0
0
0

0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
3
0
9
1
0
0
0
0
0
0
0
0
0
0
1
0
0
3
0
9
1
0
0
0
0
0
0
0
0
8
0
1
0
0
3
0
0
1
0
0
0
0
0
0
0
0
0
0
0
0
8
1
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
0
0
0
3
1
0
0
4
1
0
0
0
0
0
0
0
0
0
0
0
0
0
4
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
3
0
0
0
0
0 .
0
0
0
0
1
0 
0
0
Более крупным шрифтом отмечены элементы, значения
отличаются от значений в базисной матрице.
По матрице сетевого оператора получено управление в виде
sign  yi 4, если yi  4
ui  
, i  1,2 ,3 ,
 yi , иначе
которых
(4.6)



 z    x ,  z , z      x ,  q  ,  q ,
     x ,  q  ,      x ,  q  ,  q  ,
   x ,  q , z    q ,  z , z    z ,  z ,
  1,  z , z      z ,  z  ,  z ,  z  , z   z   z  ,

где y1  z14   0 0 ,  4 z11  , y 2  z15   0 0 , 1 z12  ,
y3
z8
z9
z12
16
0
3
3
1
13
7
1 1
1 1
2
3
2
9
1
1
1
8
1 8
3
3
13
10
0
1 1
1 1
8
1 1 1 1
3
1 1
1 1
1
8
1
7
9
1
1
3
1
3 1
11
4 12
9
0
3
9
3
8
1
1 10
0
1 z  , z   z   z  , 1 z   z ,  3 z    z ,  4  z   sign z  z ,  8 z  
1  e z
1  e z
,
1, если z  0
 9 z   
.
0 , если z  0
Начальное значение вектора узлов матрицы имел следующий вид
z 0  x1 , x2 , x3 , q1 , q2 , q3 ,1,1,1,0 ,0 ,1,1,0 ,0 ,0T .
Для проверки робастности синтезированной системы управления было
проведено моделирование для управления (4.6) со значениями начальных
условий, увеличенных на 10%. Результаты эксперимента показали, что
полученная нелинейная система управления обеспечивает стабилизацию
космического аппарата, и значения функционалов изменились не более чем на
16
12%. Система является робастной по отношению к изменению начальных
условий.
Расчеты проводились на персональном компьютере с процессором AMD
Athlon 64, с тактовой частотой 1ГГц. Время расчета составило не более 10
минут.
ЗАКЛЮЧЕНИЕ
В результате проведенного научного исследования были получены
следующие результаты:
1. Разработан сетевой оператор, который является графическим
представлением формулы, определены его свойства, обоснован метод
преобразования формулы в сетевой оператор. На основе матрицы смежности
сетевого оператора и его свойств разработан метод построения матрицы
сетевого оператора. Матрица является целочисленной верхней треугольной, и
она является эффективной структурой данных для вычисления формулы.
Разработан алгоритм вычисления формулы по матрице сетевого оператора.
2. На основе принципа базисного решения определено множество малых
вариаций сетевого оператора, и разработан генетический алгоритм для решения
задачи многокритериального структурно-параметрического синтеза системы
управления. Алгоритм позволяет одновременно искать решения для
структурного и параметрического синтеза.
3. На основе разработанного алгоритма решена задача синтеза системы
стабилизации углового движения космического аппарата. Система управления
из полученного условного множества Парето, обеспечивает стабилизацию
космического аппарата относительно начала координат и значение критерия
качества управления, близкого к оптимальному. На основе проведенного
моделирования показано, что синтезированные системы управления в виде
нелинейных обратных связей по координатам пространства состояний
являются робастными по отношению к изменению начальных условий.
ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ
1. Дивеев А.И., Софронова Е.А. Основы генетического программирования.
Учебно-методическое пособие. – М.: Изд-во РУДН, 2006. – 47 с.
2. Дивеев А.И., Софронова Е.А. Метод генетического программирования для
автоматического подбора формул в задаче структурного синтеза системы
управления // Труды института Системного анализа РАН. Динамика
неоднородных систем/ Под ред. Ю.С. Попкова. - М.: Труды ИСА РАН.
Динамика неоднородных систем. КомКнига, 2006. Вып. 10(1). С. 14-26.
3. Дивеев А.И., Софронова Е.А. Метод структурно-параметрического
синтеза систем автоматического управления // Вестник Российского
университета дружбы народов. Серия инженерные исследования. 2005, № 2
(12). С.26-30.
4. Дивеев А.И., Софронова Е.А. Структурно-параметрический синтез
системы управления методами генетического программирования // Труды
Седьмого международного симпозиума «Интеллектуальные системы»
17
(INTELS'2006) Россия. Краснодар, КИИЗ 26-30 июня 2006. М.: RUSAKI. С. 6668.
5. Дивеев А.И., Софронова Е.А. Задача структурного синтеза системы
автоматического управления // Вестник Российского университета дружбы
народов Серия Инженерные исследования. 2007, № 1. С. 48-58.
6. Дивеев А.И., Софронова Е.А. Метод генетического программирования для
структурно-параметрического синтеза систем управления // Тезисы докладов
Третьей международной конференции по проблемам управления Россия.
Москва. 20-22 июня 2006. Изд-во ИПУ. Т.1. С. 26.
7. Дивеев А.И., Софронова Е.А. Усовершенствованный генетический
алгоритм для сложной задачи структурной оптимизации // Материалы XV
Международной конференции по механике и современным программным
системам (ВМСППС’2007) 25-31 мая 2007 г. Алушта - М.: Вузовская книга. С.
208-209.
8. Дивеев А.И., Софронова Е.А. Метод структурно-параметрического
синтеза для системы стабилизации космического аппарата // Тезисы докладов
5-й Международной научно-технической конференции «К.Э. Циолковкий – 150
лет со дня рождения. Космонавтика. Радиоэлектроника. Геоинформатика.
Рязань. 5-7 сентября 2007. РГРТУ, 2007. С.154-157.
9. Дивеев А.И., Северцев Н.А., Софронова Е.А. Эффективный алгоритм для
синтеза структуры системы автоматического управления // Труды
международного симпозиума Надежность и качество в 2-х томах/ под ред. Ю.К.
Юркова. Пенза 21-31 мая 2007, изд-во ПГУ, Т. 1, С. 20-23.
10. Дивеев А.И., Комарь Е.Ю., Северцев Н.А., Софронова Е.А. Генетический
алгоритм синтеза оптимального управления посадкой космического аппарата //
Труды международного симпозиума Надежность и качество в 2-х томах/ под
ред. Ю.К. Юркова. Пенза 21-31 мая 2007, изд-во ПГУ, Т. 1, С. 192-193.
11. Дивеев А.И., Софронова Е.А. Синтез системы стабилизации углового
движения спутника // Фестиваль науки РУДН: Сборник работ студентов –
победителей международных, всероссийских и университетских конкурсов,
конференций, олимпиад. – М.: РУДН, 2007. – С. 423-432.
18
Download