Электронный научный журнал
Современные проблемы науки и образования
ISSN 2070-7428
"Перечень" ВАК
ИФ РИНЦ = 0,931

ВЫЧИСЛИТЕЛЬНЫЙ МЕТОД ВАРИАЦИОННОГО АНАЛИТИЧЕСКОГО ПРОГРАММИРОВАНИЯ ДЛЯ СИНТЕЗА СИСТЕМЫ УПРАВЛЕНИЯ

Дивеев А.И. 1 Конырбаев Н.Б. 2
1 Федеральное государственное бюджетное учреждение науки Вычислительный центр им. А.А. Дородницына Российской академии наук
2 Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования Российский университет дружбы народов
Рассматривается вычислительный метод вариационного аналитического программирования. В отличие от известного метода аналитического программирования, который является развитием метода генетического программирования и использует представление математических выражений в виде упорядоченного множества целых чисел, новый метод обеспечивает поиск решения на пространстве малых вариаций базисного решения, заданного в форме кода записи аналитического программирования. Такой подход эффективен для решения задачи синтеза управления, в которой опытный исследователь может на основе анализа свойств задачи определить приблизительный вид математического выражения, близкого к искомому оптимальному решению. Использование малых вариаций и задание близкого к оптимальному решению базисного решения позволяют существенно сократить область поиска в пространстве возможных решений и время поиска оптимального решения. Определено понятие малой вариации решения в аналитическом программировании. Приведен пример решения задачи синтеза управления с помощью разработанного метода для системы третьего порядка с фазовыми ограничениями.
генетическое программирование
аналитическое программирование
метод вариаций базисного решения
синтез системы управления
1. Zelinka I. Analytic programming by Means of Soma Algorithm // Mendel ’02 In: Proc. 8th International Conference on Soft Computing Mendel’02, Brno, Czech Republic, 2002. – P. 93-101.
2. Zelinka I., Oplatkova Z. Analytic programming // Comparative Study. CIRAS’03, The second International Conference on Computational Intelligence, Robotics, and Autonomous Systems, Singapore, 2003.
3. Zelinka I., Nolle L., Oplatkova Z. Analytic Programming —Symbiloc Regression by Means of Arbitrfary Evolutionary Algorithms //Journal of Simulation. – 2012. – Vol. 6, N 9. – P. 44-56.
4. Koza J. R., Keane M. A., Rice J. P. Performance improvement of machine learning via automatic discovery of facilitating functions as applied to a problem of symbolic system identification //IEEE International Conference on Neural Networks I. 1993. San Francisco, USA. 1993. – P. 191-198.
5. Koza J.R. Genetic Programming: On the Programming of Computers by Means of Natural Selection. Cambridge, Massachusetts, London, MA: MIT Press, 1992. – 819 p.
6. Bourmistrova A., Khantsis S., Control System Design Optimisation via Genetic Programming in Proc. of IEEE Congress on Evolutionary Computation, Singapore, 2007. – P. 1993–2000.
7. Robbins H. Junction phenomena for optimal control with state variable inequality constraints of third order// Journal of Optimization Theory and Applications. 31:1. 1980. – P. 85-99.

Введение

Метод аналитического программирования [1-3] предназначен для задач, решениями которых являются нечисловые структуры. К таким задачам относится задача синтеза управления, решением которой является математическое выражение, описывающее функциональную зависимость управления от координат пространства состояния объекта. Метод аналитического программирования представляет собой разновидность метода генетического программирования [4-6]. Код метода аналитического программирования состоит из упорядоченного множества целых чисел, которые указывают на номера кодируемых структур. Простота кодирования определяет преимущества метода аналитического программирования.

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

Постановка задачи синтеза системы управления

Задана модель объекта управления

,                                                                (1)

где , ,  – ограниченное замкнутое множество.

Задана область начальных значений

.                                                                          (2)

Заданы терминальные условия

, ,                                                       (3)

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

Задан функционал качества

.                                                    (4)

Необходимо найти управление в виде

,                                                                             (5)

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

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

1.    Метод аналитического программирования

Введем упорядоченные множества функций с определёнными количествами аргументов

, ,                               (5)

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

Объединим все множества в одно

.                                                                            (6)

Пронумеруем все элементы объединённого множества

,                                                                (7)

где

,                                                                         (8)

, ,…,  ,…, , ,…, .

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

.                                  (9)

Запись кода математического выражения в методе аналитического программирования осуществляется в форме упорядоченного множества целых чисел

,                                                               (10)

где , .

Каждое число указывает на номер элемента в объединенном множестве  (7). Запись имеет префиксный порядок. Код функции в записи предшествует коду аргумента. Длина записи кода ограничена. Дополнительное множество переменных и параметров используется для корректного завершения записи. При необходимости код функции из объединённого множества используется в виде кода для элемента множества переменных или параметров.

Рассмотрим пример. Пусть задано множество функций

, , .

Построим объединённое множество

.

Объединённое множество содержит девять элементов . Множество переменных и параметров содержит четыре элемента .

Пусть задана запись из восьми элементов

.

Определяем вид математического выражения

, ,

, ,

, ,

, ,

, ,

, ,

, ,

, .

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

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

,                       (11)

, .                                                  (12)

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

, ,                                                       (13)

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

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

,                (14)

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

В коде записи векторного выражения (14) значения для элементов выполняются условия

, если , .                                      (15)

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

Для определения корректности записи кода математического выражения используем индекс элемента. Пусть в записи кода (10) математического выражения элемент . Для векторного математического выражения определим него номер компоненты  из соотношения

.                                                          (16)

Для корректной записи для индекса элемента  необходимо выполнения условий

, ,                                                      (17)

.                                               (18)

где  индекс элемента  записи кода математического выражения.

Для вычисления индекса  элемента  при условии  используем соотношение

,                                            (19)

где

,                                (20)

.                                                            (21)

Индекс  элемента  указывает на минимальное число недостающих справа элементов. Невыполнение условий (17) или (18) указывает на неправильность записи математического выражения.

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

2.        Метод вариации аналитического программирования

Пусть запись кода (10) определяет пространства записей математических выражений. Пространство всех вариантов возможных записей длины  для  значений кодов содержит  элементов.

Малой вариацией кода аналитического программирования является изменение значения кода элемента . Одной малой вариации достаточно для получения любой записи пространства из одной заданной записи за конечное число вариаций.

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

,                                                       (22)

где  – номер позиции изменяемого кода элемента записи,  – значение кода элемента.

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

Номер позиции  в векторе вариации (22) не должен превышать количество позиций в коде

                                                                      (23)

Значение кода элемента  не должно превышать количество элементов в объединенном множестве (22)

,                                                                       (24)

где

.                                                          (25)

При выполнении вариации возможно получение некорректных записей. Проверку корректности записи кода осуществляем по условиям (17), (18). Для обеспечения корректности записи в зависимости от полученного в результате вариации кода записи изменяем значения некоторых последних кодов.

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

 , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , ,

,                            (26)

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

Рассмотрим применение метода вариационного аналитического программирования к решению задачи синтеза управления для системы третьего порядка с фазовыми ограничениями [3].

Задана система уравнений

,

,

.

Заданы терминальные условия

, .

Заданы фазовые ограничения

.

Задана область начальных значений

, , .

Задан функционал

.

Необходимо найти управление в виде

.

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

При решении использовали набор функций (26)

Базисное решение имело следующий вид

,

где , , .

В результате применения метода было получено следующее решение

,

где , .

На рис. 1-4 приведены результаты моделирования системы с полученным решением.

 

                                   а                                                                                 б

                                   в                                                                                г

Рис. 1 График изменения  при различных начальных условиях:

а - , ; б - , ;

в - , ; б - , ;

 

                                   а                                                                                 б

                                   в                                                                                г

Рис. 2 График изменения  при различных начальных условиях:

а - , ; б - , ;

в - , ; б - , ;

 

                                   а                                                                                 б

                                   в                                                                                г

Рис. 3 График изменения  при различных начальных условиях:

а - , ; б - , ;

в - , ; б - , ;

                                   а                                                                                 б

                                   в                                                                                г

Рис. 4 График изменения  при различных начальных условиях:

а - , ; б - , ;

в - , ; б - , ;

Из сказанного следует вывод, что метод вариационного аналитического программирования эффективен для решения задач синтеза управления.

 

Работа выполнена при финансовой поддержке гранта РФФИ № 14-08-00008-а «Исследование методов синтеза систем управления в условиях неопределенности».

Рецензенты:

Забудский Е.И., д.т.н., профессор, ФГБОУ ВПО «Московский  агроинженерный университет им. В.П. Горячкина», г. Москва.

Юрков Н.К., д.т.н., профессор, ФГБОУ ВПО «Пензенский государственный университет» Россия, г. Пенза.

Антонов А.В., д.т.н., профессор, декан факультета «Кибернетики», Обнинский институт атомной энергетики Национального исследовательского ядерного университета МИФИ Министерства образования и науки РФ, г. Обнинск.


Библиографическая ссылка

Дивеев А.И., Конырбаев Н.Б. ВЫЧИСЛИТЕЛЬНЫЙ МЕТОД ВАРИАЦИОННОГО АНАЛИТИЧЕСКОГО ПРОГРАММИРОВАНИЯ ДЛЯ СИНТЕЗА СИСТЕМЫ УПРАВЛЕНИЯ // Современные проблемы науки и образования. – 2014. – № 2.;
URL: http://science-education.ru/ru/article/view?id=12401 (дата обращения: 15.06.2021).

Предлагаем вашему вниманию журналы, издающиеся в издательстве «Академия Естествознания»
(Высокий импакт-фактор РИНЦ, тематика журналов охватывает все научные направления)

«Фундаментальные исследования» список ВАК ИФ РИНЦ = 1.074