Научная статья на тему 'ИДЕНТИФИКАЦИЯ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ПЕРВОГО ПОРЯДКА САМОНАСТРАИВАЮЩИМСЯ АЛГОРИТМОМ ГЕНЕТИЧЕСКОГО ПРОГРАММИРОВАНИЯ'

ИДЕНТИФИКАЦИЯ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ПЕРВОГО ПОРЯДКА САМОНАСТРАИВАЮЩИМСЯ АЛГОРИТМОМ ГЕНЕТИЧЕСКОГО ПРОГРАММИРОВАНИЯ Текст научной статьи по специальности «Математика»

CC BY
65
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ИДЕНТИФИКАЦИЯ / ДИФФЕРЕНЦИАЛЬНЫЕ УРАВНЕНИЯ / САМОНАСТРАИВАЮЩИЙСЯ АЛГОРИТМ ГЕНЕТИЧЕСКОГО ПРОГРАММИРОВАНИЯ

Аннотация научной статьи по математике, автор научной работы — Карасева Т. С.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

IDENTIFICATION OF FIRST-ORDER DIFFERENTIAL EQUATIONS BY THE SELF-CONFIGURING GENETIC PROGRAMMING ALGORITHM

In the rocket and space industry, the investigation of processes is carried out with the help of models. Differential equations are used to model dynamic systems. The paper proposes an approach for the differential equations identification by a genetic programming algorithm. The efficiency of the proposed approach is demonstrated on some test problems.

Текст научной работы на тему «ИДЕНТИФИКАЦИЯ ДИФФЕРЕНЦИАЛЬНЫХ УРАВНЕНИЙ ПЕРВОГО ПОРЯДКА САМОНАСТРАИВАЮЩИМСЯ АЛГОРИТМОМ ГЕНЕТИЧЕСКОГО ПРОГРАММИРОВАНИЯ»

УДК 004.89

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

ПРОГРАММИРОВАНИЯ

Т. С. Карасева

Сибирский государственный университет науки и технологий имени академика М. Ф. Решетнева

Российская Федерация, 660037, г. Красноярск, просп. им. газ. «Красноярский рабочий», 31

Е-mail: [email protected]

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

Ключевые слова: идентификация, дифференциальные уравнения, самонастраивающийся алгоритм генетического программирования.

IDENTIFICATION OF FIRST-ORDER DIFFERENTIAL EQUATIONS BY THE SELF-CONFIGURING GENETIC PROGRAMMING ALGORITHM

T. S. Karaseva

Reshetnev Siberian State University of Science and Technology 31, Krasnoyarsky Rabochy Av., Krasnoyarsk, 660037, Russian Federation Е-mail: [email protected]

In the rocket and space industry, the investigation ofprocesses is carried out with the help of models. Differential equations are used to model dynamic systems. The paper proposes an approach for the differential equations identification by a genetic programming algorithm. The efficiency of the proposed approach is demonstrated on some test problems.

Keywords: identification, differential equations, self-configuring genetic programming algorithm.

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

Пусть имеется выборка объема п {х , уt [, 7=7, 2.....п, известно начальное условие yt^fr) =

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

у ' = F (у, *).

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

Секция «Математические методы моделирования, управления и анализа данных»

В алгоритме ГП индивид, кодирующий дифференциальное уравнение, должен быть представлен в виде дерева [5]. Следовательно, для идентификации дифференциального уравнения необходимо изменить функциональное и терминальное множества.

В терминальное множество входит набор всех входных (х) и выходных (y) переменных, набор констант, производная у'. Функциональное множество составляют функции, используемые алгоритмом для формирования решения (+, -, /, sin, cos и т.д.).

На рис. 1 представлено ДУ, закодированное в виде дерева.

5 ) { У

, У-5 У =

у • sin СX)

Рис. 1. Представление ДУ в виде дерева

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

fitness =-1-,

1 + error

1 л V

error = — >--

(y, - у* )2

n г=1 max(у*min (у*)

где n - объем выборки, у, - значение функции-дерева в /-ой точке, у* - значение целевой функции соответственно. При вычислении ошибки соответствия найденного решения требуется вычисление производной в точках исходной выборки. В данной работе оценка выхода ДУ осуществлялась методом Рунге-Кутты 4 порядка.

Для тестирования алгоритма ГП для идентификации были выбраны следующие задачи [6]:

Тестовые задачи

№ Уравнение Интервал Начальные условия

1 y' = - Xy X +1 [-2;5] y (-2) = -7,39

2 , 2 y - 2x4 y' = X [-2;2 ] y (-2 ) = 4

3 ' y sin (x) 1 y =---^-H-- cos(x) cos(x) [-n; n] y (-n ) = -2

4 ' 2y 2 2 y =--x y X [i;6 ] y (1) = 1

5 , cos(x) у =---2- 2sin(x)cos(y)sin (x) n 3n L 2;т J y (f )=»

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

На рис. 2 представлено соотношение символьно точных, символьно условно точных и приближенных выражений среди полученных решений для каждой задачи [4].

Коштестж! запусков

50 W 30 20 10 0

"Задача I Задача 2 Зквтаа 3 Задача 4 Задача 5

■ Точные ■ Уелоню тачнне ■ Црайазыжеиные

Рис. 2. Символьная точность полученных решений

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

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

1. Zoteev V. Parametrical identification of linear dynamical system on the basis of stochastic difference equations. Matem. Mod, 2008. № 20 (9). Р. 120-128.

2. Митрофанов С.А., Карасева Т.С. Решение задач символьной регрессии самонастраивающимся алгоритмом генетического программирования // Актуальные проблемы авиации и космонавтики: сб. материалов XIII Междунар. науч.-практ. конф. (10-14 апреля 2017 г., Красноярск) : в 3 т. / подобщ. ред. Ю. Ю. Логинова ; Сиб. гос. аэрокосмич. ун-т. Красноярск, 2017. С. 49-51.

3. Карасева Т.С. Решение вариационной задачи самонастраивающимся алгоритмом генетического программирования // Решетневские чтения : материалы XXII Междунар. науч.-практ. конф., (12-16 нояб. 2018, г. Красноярск) : в 2 ч. / под общ. ред. Ю. Ю. Логинова. СибГУим. М. Ф. Решетнева. Красноярск, 2018. Ч. 2. С. 124-125.

4. Карасева Т.С. Решение задачи Коши для обыкновенных дифференциальных уравнений самонастраивающимся алгоритмом генетического программирования // Решетневские чтения : материалы XXI Междунар. науч.-практ. конф. (08-11 нояб. 2017, г. Красноярск) : в 2 ч. / под общ. ред. Ю. Ю. Логинова, СибГУ им. М. Ф. Решетнева. - Красноярск, 2017. Ч. 2. С. 189-190.

5. Koza John R. 1992. Genetic Programming: On the Programming of Computers by Means of Natural Selection // MIT Press, Cambridge, MA. P. 162-169.

6. Филиппов А.Ф. Сборник задач по дифференциальным уравнениям // НИЦ «Регулярная и хаотическая динамика»: Москва-Ижевск, 2003. 235 с.

© Карасева Т. С., 2019

i Надоели баннеры? Вы всегда можете отключить рекламу.