<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE root>
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:ali="http://www.niso.org/schemas/ali/1.0/" article-type="research-article" dtd-version="1.2" xml:lang="en"><front><journal-meta><journal-id journal-id-type="publisher-id">RUDN Journal of Engineering Research</journal-id><journal-title-group><journal-title xml:lang="en">RUDN Journal of Engineering Research</journal-title><trans-title-group xml:lang="ru"><trans-title>Вестник Российского университета дружбы народов. Серия: Инженерные исследования</trans-title></trans-title-group></journal-title-group><issn publication-format="print">2312-8143</issn><issn publication-format="electronic">2312-8151</issn><publisher><publisher-name xml:lang="en">Peoples’ Friendship University of Russia named after Patrice Lumumba (RUDN University)</publisher-name></publisher></journal-meta><article-meta><article-id pub-id-type="publisher-id">18914</article-id><article-id pub-id-type="doi">10.22363/2312-8143-2018-19-2-177-189</article-id><article-categories><subj-group subj-group-type="toc-heading" xml:lang="en"><subject>CYBERNETICS AND MECHATRONICS</subject></subj-group><subj-group subj-group-type="toc-heading" xml:lang="ru"><subject>Информатика, вычислительная техника и управление</subject></subj-group><subj-group subj-group-type="article-type"><subject>Research Article</subject></subj-group></article-categories><title-group><article-title xml:lang="en">PYTHON PACKAGE FOR INTELLIGENT CONTROL SYSTEMS SYNTHESIS</article-title><trans-title-group xml:lang="ru"><trans-title>БИБЛИОТЕКА PYTHON ДЛЯ СИНТЕЗА ИНТЕЛЛЕКТУАЛЬНЫХ СИСТЕМ УПРАВЛЕНИЯ</trans-title></trans-title-group></title-group><contrib-group><contrib contrib-type="author"><name-alternatives><name xml:lang="en"><surname>Diveev</surname><given-names>Askhat I</given-names></name><name xml:lang="ru"><surname>Дивеев</surname><given-names>Асхат Ибрагимович</given-names></name></name-alternatives><bio xml:lang="en"><p>Doctor of Technical Sciences, Professor, chief of Sector of Cybernetic Problems, Federal Research Centre “Computer Science and Control” of Russian Academy of Sciences, professor of Department of Mechanics and Mechatronics, Engineering Academy, Peoples’ Friendship University of Russia. Research interests: Computational methods for problems of control</p></bio><bio xml:lang="ru"><p>доктор технических наук, профессор, заведующий сектором проблем кибернетики, Федеральный исследовательский центр «Информатика и управление», Российская академия наук, профессор департамента механики и мехатроники Инженерной академии, Российский университет дружбы народов. Область научных интересов: вычислительные методы для решения задач управления</p></bio><email>aidiveev@mail.ru</email><xref ref-type="aff" rid="aff1"/></contrib><contrib contrib-type="author"><name-alternatives><name xml:lang="en"><surname>Dotsenko</surname><given-names>Anton V</given-names></name><name xml:lang="ru"><surname>Доценко</surname><given-names>Антон Викторович</given-names></name></name-alternatives><bio xml:lang="en"><p>post-graduate student of Department of Mechanics and Mechatronics, Engineering Academy, Peoples’ Friendship University of Russia. Research interests: Optimization algorithms, evolutionary algorithms, artificial neural networks, machine learning, computational methods for problems of optimal control</p></bio><bio xml:lang="ru"><p>аспирант департамента механики и мехатроники Инженерной академии, Российский университет дружбы народов. Область научных интересов: методы оптимизации, эволюционные алгоритмы, искусственные нейронные сети, машинное обучение, вычислительные методы решения задач оптимального управления</p></bio><email>anton.dozenko@gmail.com</email><xref ref-type="aff" rid="aff2"/></contrib></contrib-group><aff-alternatives id="aff1"><aff><institution xml:lang="en">Institution of Russian Academy of Sciences Dorodnicyn Computing Centre of RAS</institution></aff><aff><institution xml:lang="ru">Федеральный исследовательский центр «Информатика и управление», Российская академия наук</institution></aff></aff-alternatives><aff-alternatives id="aff2"><aff><institution xml:lang="en">Peoples’ Friendship University of Russia (RUDN University)</institution></aff><aff><institution xml:lang="ru">Российский университет дружбы народов (РУДН)</institution></aff></aff-alternatives><pub-date date-type="pub" iso-8601-date="2018-12-15" publication-format="electronic"><day>15</day><month>12</month><year>2018</year></pub-date><volume>19</volume><issue>2</issue><issue-title xml:lang="en">VOL 19, NO2 (2018)</issue-title><issue-title xml:lang="ru">ТОМ 19, №2 (2018)</issue-title><fpage>177</fpage><lpage>189</lpage><history><date date-type="received" iso-8601-date="2018-07-19"><day>19</day><month>07</month><year>2018</year></date></history><permissions><copyright-statement xml:lang="en">Copyright ©; 2018, Diveev A.I., Dotsenko A.V.</copyright-statement><copyright-statement xml:lang="ru">Copyright ©; 2018, Дивеев А.И., Доценко А.В.</copyright-statement><copyright-year>2018</copyright-year><copyright-holder xml:lang="en">Diveev A.I., Dotsenko A.V.</copyright-holder><copyright-holder xml:lang="ru">Дивеев А.И., Доценко А.В.</copyright-holder><ali:free_to_read xmlns:ali="http://www.niso.org/schemas/ali/1.0/"/><license><ali:license_ref xmlns:ali="http://www.niso.org/schemas/ali/1.0/">http://creativecommons.org/licenses/by/4.0</ali:license_ref></license></permissions><self-uri xlink:href="https://journals.rudn.ru/engineering-researches/article/view/18914">https://journals.rudn.ru/engineering-researches/article/view/18914</self-uri><abstract xml:lang="en"><p>This article is devoted to the desription of аpython library based on symbolic regression methods for control systems synthesis problem. Control sysnthesis is becoming more and more relevant, gaining particular importance in view of the rapid development of robotics. Usually, practicians and engineers apply template-type regulators when modeling, and then select optimal parameters for them. At a time when the computing power of PC’s has reached its peak, and programming languages have become extremely expressive due to the high level of abstraction and the vastness of libraries, it is better to implement the synthesis in the form of a library. Python was chosen as the language for synthesis implementation. According to the authors of the article, Python is a convenient language for programming matrix and vector calculations thanks to the numpy package. Moreover, the share of projects written in Python in the web service for hosting Github has been steadily increasing recently, which indicates the support of the language from the developer community. This article describes how to use the package to solve the problem of control synthesis. The authors provide the description of the symbolic regression method, the network operator and algorithms for finding the optimal solution using the principle of small variations of the basic solution. In the experimental part of the article, an example of how to use the library to solve the problem of synthesis of control of a mobile robot moving on a planewith obstacles is considered.</p></abstract><trans-abstract xml:lang="ru"><p>Статья посвящена описанию библиотеки программ на языке Python для решения задач синтеза систем управления методами символьной регрессии. Задача синтеза становится все более актуальной, приобретая особое значение ввиду стремительного развития робототехники. Как правило, инженеры и просто практики используют регуляторы шаблонного типа при моделировании, а затем подбирают под них параметры. В условиях, когда вычислительная мощность персональных компьютеров достигла своего апогея, а языки программирования стали чрезвычайно выразительны за счет высокого уровня абстрактности и обширности библиотек, целесообразнее реализовать синтез в виде пакета. В качестве языка для реализации синтеза был выбран Python. По мнению авторов статьи, Python является удобным языком для программирования матричных и векторных вычислений благодаря пакету numpy. Более того, доля проектов, написанных на Python, в веб-сервисе для хостинга Github за последнее время неизменно растет, что говорит о поддержке языка со стороны сообщества разработчиков. В данной статье представлено описание применения библиотеки для решения задачи синтеза управления. Приведено описание метода символьной регрессии, метода сетевого оператора и алгоритмов поиска оптимального решения с использованием принципа малых вариаций базисного решения. Рассмотрен пример использования библиотеки для решения задачи синтеза управления мобильным роботом, движущимся на плоскости, в условиях препятствий.</p></trans-abstract><kwd-group xml:lang="en"><kwd>control synthesis</kwd><kwd>python library</kwd><kwd>symbolic regression method</kwd><kwd>optimal control</kwd><kwd>mobile robot</kwd></kwd-group><kwd-group xml:lang="ru"><kwd>синтез управления</kwd><kwd>библиотека Python</kwd><kwd>метод символьной регрессии</kwd><kwd>оптимальное управление</kwd><kwd>мобильный робот</kwd></kwd-group><funding-group/></article-meta></front><body></body><back><ref-list><ref id="B1"><label>1.</label><citation-alternatives><mixed-citation xml:lang="en">Diveev A.I. Priblizhennye metody resheniya zadachi sinteza optimal’nogo upravleniya [Approximate methods for solving the optimal control synthesis problem]. Мoscow: Dorodnicyn Computing Centre of RAS Publ., 2015. 184 p. (In Russ.)</mixed-citation><mixed-citation xml:lang="ru">Дивеев А.И. Приближенные методы решения задачи синтеза оптимального управления. М.: ВЦ РАН, 2015. 184 с.</mixed-citation></citation-alternatives></ref><ref id="B2"><label>2.</label><citation-alternatives><mixed-citation xml:lang="en">Diveev A.I. Metod setevogo operatora [Network operator]. Мoscow: Dorodnicyn Computing Centre of RAS Publ., 2010. 178 p. (In Russ.)</mixed-citation><mixed-citation xml:lang="ru">Дивеев А.И. Метод сетевого оператора. М.: ВЦ РАН, 2010. 178 с.</mixed-citation></citation-alternatives></ref><ref id="B3"><label>3.</label><citation-alternatives><mixed-citation xml:lang="en">Diveev A.I. Chislennyi metod setevogo operatora dlya sinteza sistemy upravleniya s neopredelennymi nachal’nymi znacheniyami [Network operator numerical method for the control system synthesis with undefined initial values]. Journal of Computer and Systems Sciences International. 2012. (2). P. 63—78. (In Russ.)</mixed-citation><mixed-citation xml:lang="ru">Дивеев А.И. Численный метод сетевого оператора для синтеза системы управления с неопределенными начальными значениями // Известия РАН Теория и системы управления. 2012. № 2. С. 63-78.</mixed-citation></citation-alternatives></ref><ref id="B4"><label>4.</label><citation-alternatives><mixed-citation xml:lang="en">Python 3.5.5 documentation // www.python.org URL: https://docs.python.org/3.5/tutorial/ introduction.html#lists (access date: Fabuary 2018).</mixed-citation><mixed-citation xml:lang="ru">Python 3.5.5 documentation // www.python.org URL: https://docs.python.org/3.5/tutorial/ introduction.html#lists (дата обращения: февраль 2018).</mixed-citation></citation-alternatives></ref><ref id="B5"><label>5.</label><citation-alternatives><mixed-citation xml:lang="en">Diveev A.I. Small Variations of Basic Solution Method for Non-numerical Optimization // Proceedings of 16th IFAC Workshop on Control Applications of Optimization, CAO’ 2015. October 6th—9th 2015 Garmisch-Partenkirchen. P. 28—33.</mixed-citation><mixed-citation xml:lang="ru">Diveev A.I. Small Variations of Basic Solution Method for Non-numerical Optimization // Proceedings of 16th IFAC Workshop on Control Applications of Optimization, CAO’ 2015. October 6th-9th 2015 Garmisch-Partenkirchen. P. 28-33.</mixed-citation></citation-alternatives></ref></ref-list></back></article>
