МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ ФЕДЕРАЛЬНОЕ ГОСУДАРСТВЕННОЕ АВТОНОМНОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ ВЫСШЕГО ОБРАЗОВАНИЯ «САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО РИБОРОСТРОЕНИЯ» КАФЕДРА № 32 ОТЧЕТ ЗАЩИЩЕН ПРЕПОДАВАТЕЛЬ к.т.н., доцент С. А. Сериков должность, уч. степень, звание подпись, дата инициалы, фамилия Отчет о научных исследованиях по дисциплине: Научноисследовательская работа РАБОТУ ВЫПОЛНИЛ СТУДЕНТ ГР. № 3923М Д. В. Миренский подпись, дата Санкт-Петербург 2021г инициалы, фамилия Оглавление Оглавление ....................................................................................................... 2 Обзор темы магистерской работы .................................................................. 3 Цели и приложения .......................................................................................... 5 Цели .............................................................................................................. 5 Приложения .................................................................................................. 6 Использование машинного обучения ............................................................. 8 Преимущества машинного обучения .......................................................... 8 Выбор фреймворка машинного обучения .................................................. 9 TensorFlow .............................................................................................. 10 PyTorch ................................................................................................... 11 Keras ........................................................................................................ 12 Алгоритм Boids .............................................................................................. 13 Описание .................................................................................................... 13 Реализация .................................................................................................. 14 Анализ публикаций по теме магистерской работы ..................................... 16 Выводы ........................................................................................................... 30 Список использованных источников: ........................................................... 31 2 Обзор темы магистерской работы В настоящее время наземные роботы (HP) привлекают все большее внимание исследователей в связи с их широким применением. HP должны иметь возможность автономного функционирования в неструктурированных, динамичных, частично наблюдаемых и недетерминированных средах. Все чаще предъявляется требование избегать столкновений со стационарными препятствиями и подвижными объектами. На выполнение указанных требований направлен ряд современных подходов к конструированию систем управления автономными роботами, функционирующими в недетерминированных средах. Основные проблемы, связанные с использованием указанных подходов и методов к формированию управлений тактического уровня, заключаются в следующем: в необходимости предварительного планирования траектории или картографирования области функционирования HP, что налагает существенные ограничения на движение объектов в априори недетерминированных средах; в недостаточной проработанности процедур согласования стратегических уровней планирования и тактических уровней управления; в необходимости дополнительной информации о геометрии, фазовых координатах наземного робота и так далее, что существенно увеличивает эффективность функционирования. Различным аспектам проблемы управления HP посвящены работы отечественных (Безнос A.B., Жихарев Д.Н., Бурдаков С.Ф., Гайдук А.Р., Зенкевич C.JL, Капустян С.Г., Нейдорф P.A., Подураев Ю.В., Чернухин Ю.В., Юревич Е.И., Ющенко A.C., Каляев И.А., Пшихопов В.Х. и др.), и зарубежных (Montaner М.В., Rigatos G.G., Tzafestas C.S., Lee T.L., Wu C.J., Khatib O., Quoy M., Moga S., 3 Gaussier Р., Janglova. D., Lumelsky V., Stepanov V., SkewisT.,Ren J., Mcisaac K.A., Patel R.V.) ученых. Однако, при наличии достаточного большого числа публикаций, большинство предложенных подходов к управлению НР ограничено проблемой тупиковых ситуаций, которая возникает, когда робот движется среди препятствий к желаемой цели без априорного знания окружающей среды. НР может попасть в «ловушку» в среде с вогнутыми препятствиями, лабиринтами и т.д. Также, при наличии препятствий, расположенных близко к целевой точке, возможно возникновение циклических движений робота. Таким образом, решение проблемы обхода НР препятствий сложной формы является весьма актуальной научно-технической проблемой. Целью работы является разработка системы автономного управления НР, лишенного перечисленных выше недостатков, а так же совместное картографирование местности в реальном времени группой НР и обмен данных между ними для своевременного определения окружающей обстановки и создания оптимальных маршрутов. 4 Цели и приложения Цели Миниатюризация и стоимость - ключевые факторы в роевой робототехнике. Это ограничения при создании больших групп роботов; поэтому следует подчеркнуть простоту отдельного члена команды. Это должно мотивировать интеллектуальный подход к рою для достижения значимого поведения на уровне роя, а не на индивидуальном уровне. Многие исследования были направлены на достижение простоты на уровне отдельных роботов. Возможность использовать реальное оборудование в исследованиях Swarm Robotics вместо моделирования позволяет исследователям обнаруживать и решать гораздо больше проблем и расширять сферу исследований Swarm Research. Таким образом, разработка простых роботов для исследования разведки Swarm - очень важный аспект этой области. Цели включают в себя сохранение низкой стоимости отдельных роботов для обеспечения масштабируемости , делая каждого члена роя менее требовательным к ресурсам и более энергоэффективным. Одной из таких роевых систем является роботизированная система LIBOT, в которую входит недорогой робот, созданный для уличной робототехники. Роботы также сделаны с приспособлениями для использования внутри помещений через Wi-Fi, поскольку датчики GPS обеспечивают плохую связь внутри зданий. Еще одна такая попытка - это микроробот (Colias), созданный в лаборатории компьютерного интеллекта Университета Линкольна , Великобритания. Этот микроробот построен на 4-сантиметровом круглом шасси и представляет собой недорогую открытую платформу для использования в различных приложениях Swarm Robotics. 5 Приложения У роевой робототехники много потенциальных применений. К ним относятся задачи, требующие миниатюризации ( наноробототехника , микроботика ), такие как задачи распределенного зондирования в микромашинах или человеческом теле . Одно из самых многообещающих применений роевой робототехники - спасательные операции. Стаи роботов разных размеров могут быть отправлены в места, куда спасатели не могут безопасно добраться, для обнаружения жизни с помощью инфракрасных датчиков. С другой стороны, групповая робототехника может быть подходит для задач, требующих дешевых конструкций, например , добычи полезных ископаемых и сельскохозяйственных нагула задач. Большинство усилий было сосредоточено на относительно небольших группах машин. Однако в 2014 году Гарвард продемонстрировал рой из 1024 отдельных роботов, крупнейший на сегодняшний день. Еще один большой набор задач может быть решен с помощью роя микровоздушных аппаратов , которые в настоящее время также широко исследуются. По сравнению с пионерскими исследованиями стай летающих роботов с использованием точных систем захвата движения в лабораторных условиях, современные системы, такие как Shooting Star, могут управлять группами из сотен микромеханических летательных аппаратов на открытом воздухе с помощью систем GNSS (таких как GPS) или даже стабилизировать их. использование бортовых систем локализации при отсутствии GPS. Стаи микровоздушных аппаратов уже прошли испытания в задачах автономного наблюдения, отслеживания шлейфов и разведки в компактной фаланге. Были проведены многочисленные работы по совместным группам беспилотных наземных и летательных аппаратов с целевыми приложениями совместного 6 мониторинга окружающей среды, защиты конвоев, а также определения местоположения и сопровождения движущихся целей. 7 Использование машинного обучения Машинное обучение — это процесс, происходящий в компьютерах, когда они разрабатывают механизм распознавания шаблонов, или способность непрерывного обучения на основе прогнозов, способность составления таких прогнозов на основе данных, а также способность внесения соответствующих корректировок без какого-либо дополнительного программирования. Машинное обучение, одна из форм искусственного интеллекта, эффективно автоматизирует процесс построения аналитической модели и позволяет компьютерам независимо адаптироваться к новым сценариям. Преимущества машинного обучения Помимо возможности решать новый класс задач нейросети обладают рядом значительных достоинств. Понять, откуда они берутся, очень просто. Все плюсы нейронных сетей являются следствиями плюсов биологических нейронных сетей, так как саму модель обработки информации практически не меняли (при упрощении). Отсюда очень просто объяснять преимущества ИНС, просто выводя их из свойств биологических нейросетей. • Интеллектуальное управление большими данными — огромные объемы и великое разнообразие данных, генерируемых, когда люди и другие движущие силы среды взаимодействуют с технологиями, невозможно будет обработать, а тем более извлечь из них значимую информацию без скорости и развитости, свойственных машинному обучению. • Интеллектуальные устройства — от персональных мониторов здоровья и фитнес-трекеров до самоуправляемых автомобилей, «умных городов» с инфраструктурой, которая способна автоматически сокращать время неэффективной работы и энергопотребление, и Интернета вещей (IoT) имеют 8 огромный потенциал, и машинное обучение поможет рационально и с пользой использовать этот резкий рост объемов данных. • Богатейшие возможности для потребителей — машинное обучение позволяет с помощью механизмов поиска, веб-приложений и других технологий корректировать результаты и рекомендации в соответствии с предпочтениями пользователей, что позволяет вывести персональное обслуживание потребителя на невероятно высокий уровень. Выбор фреймворка машинного обучения Фреймворк — это набор инструментов и стандартных реализаций для обеспечения более быстрой разработки какого-либо программного продукта. Его часто путают с библиотекой, которая же, в свою очередь, является набором стандартных реализаций, функций и структур данных, облегчающих решение какой-либо задачи. Статистика по фреймворкам с официальных аккаунтов на GitHub 9 TensorFlow TensorFlow — это комплексная платформа для машинного обучения с открытым исходным кодом. Она была разработана командой Google Brain как продолжение закрытой системы машинного обучения DistBelief, однако в ноябре 2015 года компания передумала и открыла фреймворк для свободного доступа. Как и большинство фреймворков глубокого обучения, TensorFlow имеет API на Python поверх механизма C и C ++, что ускоряет его работу. Плюсы: • Отличный фреймворк для создания нейронных сетей, которые будут работать в продакшене. • Берёт на себя оптимизацию ресурсов для вычислений. • Огромное комьюнити. • За счёт популярности выше вероятность, что проблему, подобную вашей, уже решили. Минусы: • Сложен в использовании и освоении. • Недружелюбный. • Необходимо постоянно контролировать используемую видеопамять. • Имеет свои стандарты. • Плохая документация. 10 PyTorch PyTorch — это среда машинного обучения на языке Python с открытым исходным кодом, обеспечивающая тензорные вычисления с GPU-ускорением. Она была разработана компанией Facebook и представлена в октябре 2016 года, а открыта для сторонних разработчиков — в январе 2017 года. Фреймворк подходит для быстрого прототипирования в исследованиях, а также для любителей и небольших проектов. Фреймворк предлагает динамические графы вычислений, которые позволяют обрабатывать ввод и вывод переменной длины, что полезно, например, при работе с рекуррентными нейронными сетями. За счёт глубокой интеграции фреймворка с кодом C++ разработчики могут программировать на C и C++ с помощью API-расширения на основе FFI для Python. Плюсы: • Имеет множество модульных элементов, которые легко комбинировать. • Легко писать собственные типы слоев и работать на GPU. • Имеет широкий выбор предварительно обученных моделей. Минусы: • Придётся самостоятельно писать тренировочный код. • Недостаточная документация, содержит большое количество функций и методов, документация которых существует исключительно на форумах сообщества и получена эмпирическим путём. 11 Keras Keras — открытая среда глубокого обучения, написанная на Python. Она была разработана инженером из Google Франсуа Шолле и представлена в марте 2015 года. Фреймворк нацелен на оперативную работу с нейросетями и является компактным, модульным и расширяемым. Подходит для небольших проектов, так как создать что-то масштабное на нём сложно, и он явно будет проигрывать в производительности нейросетей тому же TensorFlow. Плюсы: • Удобен в использовании. Лёгок в освоении. 12 Алгоритм Boids Описание Алгоритм Boids был создан Крейгом Райнольдсом (Craig Reynolds) в 1986м году как модель перемещения стаи птиц. В его основе лежат три следующих правила: Сплоченность — юниты стараются держаться как можно ближе друг к другу Разделение — юниты стремятся разойтись с целью держаться друг от друга на некотором расстоянии Выравнивание скоростей — юниты из одной группы стремятся двигаться с одинаковой скоростью Дополнительно к ним используются еще 2: Движение к цели — юниты стараются двигаться к заданной цели Избегание препятствий — юниты стремятся в противоположную сторону от препятствий 13 Реализация Для каждого юнита необходимо хранить хранить координаты и скорость. Так же нужно знать координаты цели и препятствий. Во время пересчёта игрового мира (пересчёт можно делать, к примеру, 20 раз в секунду) нужно определить новую координату и скорость для всех юнитов. Для этого необходимо определить новую скорость юнита и передвинуть его. Каждое из правил, перечисленных выше, позволяют получить часть скорости. Общая скорость юнита — сумма скоростей, полученных после применения правил и предыдущей скорости самого юнита. Чтобы юнит сильно не разгонялся — скорость рекомендуется ограничивать. Правила реализуются так: • Сплоченность — необходимо найти центр масс (среднее арифметическое координат всех юнитов) и определить вектор, направленный от текущего юнита в центра масс. • Разделение — нужно определить среднее направление от всех ближайших юнитов. • Выравнивание скоростей — необходимо найти среднюю скорость всех юнитов. • Движение к цели — вектор, направленный от юнита в сторону цели. 14 Избегание препятствий — совпадает со вторым, за исключением того что направление нужно искать в сторону от ближайших препятствий. На практике скорости, выданные каждым из правил необходимо уменьшать (путём деления на какой-то коэффициент) или ограничивать. Ограничения и коэффициенты подбираются экспериментальным путём для достижения наилучшего результата. 15 Анализ публикаций по теме магистерской работы 1. В статье [1] рассматривается архитектура аппаратной части автономного мобильного исследовательского мини-робота, который является частью программно-аппаратного комплекса, созданного для изучения многоагентных кооперативных алгоритмов управления группой мобильных роботов. Целью данной работы является создание программно-аппаратного комплекса для разработки и исследования новых алгоритмов коллективного поведения в группе роботов, а также адаптации известных алгоритмов к решению задач с минимальной априорной информацией о внешней среде. 2. В источнике [2] описывается решение задачи навигации мобильного робота (МР) в искусственной среде по данным сканирующего лазерного дальномера и информации от других датчиков, а также разработка методов управления МР по дальнометрическим данным. 3. Статья [3] описывает разработку методов построения интеллектуальных систем планирования перемещения мобильного робота, обеспечивающих выполнение им планируемой и уточняемой непосредственно в процессе движения безопасной траектории в окружающей среде с неизвестными препятствиями. Также в статье рассматривается метод построения интеллектуальной системы планирования перемещения мобильного робота в неизвестной статической среде с помощью аппарата мультиагентов, включающий создание четырех агентов: обхода препятствий, слежения по стене, движения к цели, управления скоростью и соответствующих им нечетких блоков. 4. В [4] рассматривается исследование и применение автономных адаптивных агентов. Эта статья полезна тем, что дает множество информации о там, как будут вести себя адаптивные агенты с внешней средой и эволюционировать с 16 помощью обучения с подкреплением. Также рассматриваются алгоритмы обучения. 5. В статье [5] авторы разбирают поведение агентов, обученных подкреплением, с точки зрения естественных потребностей. Из статьи можно подчеркнуть, как происходит формирование циклов поведения, в которых последовательно удовлетворяются потребности питания, безопасности и размножения. Это полезно с точки зрения когнитивной эволюции. 6. Источник [6] описывает машинное обучение с точки зрения программирования. Простейший алгоритм поиска оптимальной стратегии, когда агенту известна вся информация о переходах среды, состоит в том, что происходит оценка полезности каждого состояния среды и использование этой информации для выбора оптимального действия в каждом состоянии. В пособии рассматриваются стратегии агента, внешние среды, вознаграждение. Главная машинного обучения с точки зрения программирования – максимизация суммарного вознаграждения. 7. В [7] рассматривается пример машинного обучения на практическом примере игры Minecraft. Данная статья очень полезна для магистерской диссертации, так как в ней на практике показывается как будет вести себя агент во внешней среде с нуля. Главная работа авторов состояла в том, чтобы научить агента добираться из одной точки в точку назначения. Все работы были проделаны в случайно генерирующихся закрытых лабиринтах. С увеличением количеств экспериментов, агент становился быстрее и проходил более сложные лабиринты. 8. В пособии [8] были рассмотрены упражнения для компьютерного практикума по курсу машинного обучения с подкреплением на языке программирования Python версии 3. Особое внимание 17 уделено: динамическому программированию, вычислению функции полезности, итерации по стратегиям. 9. В материале [9] Рассмотрены основные положения построения системы управления автономным мобильным роботом на основе индуктивных принципов самоорганизации модели. Приведены результаты поиска целевых функций робота и функции классификации объектов по признаку препятствие/не препятствие. 10. В статье [10] рассматриваются основные положения построения системы управления для автономных передвижных комплексов (АПК) на основе индуктивного подхода. В проблеме автономного управления движением ключевой задачей является задача распознавания препятствий. Показана тесная взаимосвязь задачи распознавания с другими частными задачами управления комплексом. Предлагается к рассмотрению обобщенная структура и программная модель АПК, а также индуктивный алгоритм поиска закона управления. 11. В статье [11] представлены промежуточные результаты проектирования автономной робототехнической колесной платформы, построенной на базе конструктора Makeblock и учебной платы NU LB NUC140, включающей микропроцессор с ядром ARM Cortex-M0. Рассмотрены следующие вопросы: проектирование алгоритмов верхнего уровня, отвечающих за автономную навигацию робота; разработка отдельных программных микропроцессорных модулей (драйверов) дальномеров и двигателей оптических постоянного энкодеров; тока, портирование ультразвуковых разработанных алгоритмов на язык С; интеграция разработанных модулей в единый программный комплекс с помощью операционной системы реального времени 18 CoOS; разработка печатной платы, предназначенной для сопряжения материнской платы NU LB NUC140 со всеми аппаратными модулями, а также ее изготовление. В процессе разработки использована интегрированная среда разработки CooCox, система документирования кода Doxygen и система управления версиями Mercurial. 12. В статье [12] описано применение локального метода адаптации ковариационной матрицы для обучения мобильного робота с частично известными параметрами выполнению различных маневров и движению по траектории со сложными ограничениями. Предложена итеративная модификация алгоритма, ускоряющая процесс обучения для траекторий большой длины. 13. В диссертации [13] решается основная проблема мобильной робототехники, а именно задача навигации, что подразумевает под собой определение положения мобильного робота в рабочем пространстве — локализацию и составление представления, описания окружающего мира — картографию. Информация о текущем положении робота необходима для решения большинства встречающихся задач управления: прохождения заданной траектории, поиска пути в заданную точку, возвращения в исходное положение. Информация об окружающем мире, которая чаще всего представляется в виде карты или плана местности, необходима для запоминания пройденного маршрута, планирования траектории в обход статических препятствий, слежения за динамическими объектами. Задача локализации является наиболее сложной, хотя она может быть решена при помощи датчиков спутниковых навигационных систем (СНС) таких как GPS и ГЛОНАСС, но на настоящий момент в большинстве случаев эти системы не позволяют получить точности, необходимой для управления мобильным 19 роботом. Кроме того, их применение ограничивается зонами доступности сигнала спутников, что делает невозможным определение положения робота внутри зданий, а также вблизи высоких сооружений и деревьев. Наиболее точное решение навигационной задачи может быть получено с помощью систем технического зрения на основе видеокамер, лазерных дальномеров и других сенсоров. Такие системы также позволяют формировать описание окружающей робот зоны, выявлять потенциальные опасности, находить ориентиры целей. Информационный поток с таких датчиков довольно высок (от 5 КБайт/сек. для лазерного дальномера до 8 Мбайт/сек. для видеокамер), поэтому методы обработки такой информации требуют сложных алгоритмов, значительных вычислительных мощностей и получили развитие только в последнее время. Среди датчиков, входящих в системы технического зрения мобильных роботов, большой популярностью среди разработчиков пользуются лазерные сканирующие дальномеры. Эти датчики позволяют измерять расстояния до ближайших объектов за счет излучения пучка лучей лазера в плоскости. Результатом измерения является массив дальностей до ближайших объектов, находящихся на пути лучей - своеобразное изображение сечения окружающего мира в плоскости, называемое также сканом. Лазерные дальномеры имеют высокую точность измерения расстояния (до 10-15 мм.) при больших диапазонах (до 80 м.) и скоростях измерения (до 75 сканов в секунду). Они могут применяться на мобильных роботах, двигающихся по пересеченной местности, для составления цифрового описания рельефа рабочей зоны и определения её проходимости. Более эффективное использование лазерного дальномера возможно в искусственных средах, например офисных и производственных помещениях, где движение совершается в плоскости и сечение рельефа неизменно с высотой. Измерение 20 такого рельефа может быть получено с помощью лазерного дальномера, установленного на мобильном роботе в плоскости, параллельной поверхности движения. В этом случае, информации сканирующего дальномера оказывается достаточно для решения задачи навигации и управления мобильного робота. Эта проблема — навигация и управление мобильным роботом, оснащенным лазерным дальномером, в искусственной среде решается в диссертационной работе. Другая проблема, исследуемая в диссертации — комплексирование данных от различных датчиков мобильного робота, устанавливаемых для получения большей точности и надежности решения задачи навигации. Различные датчики могут использоваться как совместно для получения более точной информации о положении робота, чем позволяет каждый из датчиков (например, интеграция данных глобального позиционирования с данными инерциальной навигационной системы), так и по отдельности, в случае недоступности показаний какого-либо из них (например, пропадание сигнала спутника в городских условиях). Разрабатываемые методы навигации и управления должны учитывать специфику используемых датчиков, возможности по комплексированию информации с доступных сенсоров. 14. В пособии [14] рассмотрены сведения из области анализа изображений, необходимые для изучения систем компьютерного зрения. В частности, разобрано ключевое понятие представления изображений и описаны основные уровни представлений изображений, использование которых разобрано на методах сопоставления изображений. Далее основные задачи компьютерного зрения, трехмерной информации по включающие восстановление изображениям, отражательной способности и анализ движения 21 рассмотрены восстановление карт 15. Книга [15] — руководство по самым разным вычислительным и статистическим методам, без которых немыслима любая интенсивная обработка данных, научные исследования и передовые разработки. Читатели, уже имеющие опыт программирования и желающие эффективно использовать Python в сфере Data Science, найдут в этой книге ответы на всевозможные вопросы, например: как считать этот формат данных в скрипт? как преобразовать, очистить эти данные и манипулировать ими? как визуализировать данные такого типа? как при помощи этих данных разобраться в статистические ситуации, модели получить или ответы реализовать на вопросы, машинное построить обучение? 16. В книге [16] предоставляются концепции, идеи и инструменты, которые необходимы для фактической реализации программ, способных обучаться на основе данных. Рассматриваются многочисленные приемы, начиная с простейших и самых часто используемых (таких как линейная регрессия) и заканчивая рядом методов глубокого обучения, которые регулярно побеждают в состязаниях. Вместо того чтобы реализовывать собственную миниатюрную версию каждого алгоритма, применяются реальные фреймворки Python про­изводственного уровня. • Библиотека Scikit-Learn очень проста в использовании, при этом она эффективно реализует многие алгорит­мы машинного обучения, что делает ее великолепной отправной точкой для изучения машинного обучения. • TensorFlow является более сложной библиотекой для распределенных численных расчетов с применением графов потоков данных. Это позволяет эффективно обучать и запускать очень большие нейронные сети, потенциально распределяя вычисления между тысячами серверов с множеством графических 22 процессоров. Библиотека TensorFlow была создана в Google и поддерживает много крупномасштабных приложений машинного обучения. В ноябре 2015 года она стала продуктом с открытым кодом. В книге отдается предпочтение практическому подходу, стимулируя интуитивное понимание машинного обучения через конкретные работающие примеры, поэтому теории здесь совсем немного. 17. В книге [17] описано, что такое машинное обучение и описана ключевая роль TensorFlow. Так же данная книга содержит описание основных, проверенных временем алгоритмов. Обсуждается регрессия, классификация, кластеризация, и скрытые марковские модели соответственно. Автокодировщики, обучение с подкреплением, сверточные нейронные сети, рекуррентные нейронные сети так же описаны в данной книге. 18. В монографии [18] рассмотрен основной математический аппарат, связанный с формальным представлением алгоритмов управления параллельной обработки информации с использованием модели недетерминированных автоматов (НДА), и даны эквивалентные преобразования такой модели. В качестве основной базовой модели НДА принята система рекуррентных канонических уравнений (СКУ), описывающая все реализуемые в системе управления частные события и язык граф схем алгоритмов с параллельными ветвями (ГСАП). Эквивалентные преобразования модели НДА базируются на использовании операций детерминизации, минимизации, кодирования и компиляции НДА. Рассмотрены некоторые начальные языки представления управляющих алгоритмов и их использования для формального описания алгоритмов и методы их преобразования на язык СКУ. Формальное представление алгоритмов взаимодействия параллельными процессами иллюстрируется на базе решения классических задач управления процессами 23 при обращении к общему ресурсу. Рассмотрены так же методы структурной реализации и верификации алгоритмов управления процессами и ресурсами в многопроцессорных системах, представленных автоматными моделями НДА и ДА. 19. В диссертации [19] рассмотрены современные методы построения адаптивных СУ. Проведено исследование способов построения самообучающихся систем с подкреплением. Проведен анализ существующих методов обучения с подкреплением с использованием нейронных сетей: Q – обучение, сети адаптивной критики (DHP, HDP, GDHP). Проанализирована методика СМП. Выявлены достоинства и недостатки существующих методов. В качестве недостатков сетей адаптивной критики можно отметить: большое количество вычислений, сложность реализации. Для Q – обучения: в случае значительного пространства состояний объекта необходима большая Q – таблица, что сказывается на быстродействии. Для СМП: высокая вероятность зацикливания в лучшей с точки зрения системы контрольной точке, рекурсии для отмены действий, которые снизили поступающее подкрепление. Принято решение реализовывать предлагаемую методику, используя модифицированный метод СМП, что позволит строить универсальные адаптивные СУ в рассматриваемом классе сред. А так же разработаны метод обучения самообучению и нейросетевая топология «внутренний учитель» в СУ в недетерминированных средах. Топология и метод обучения есть две стороны одной концепции – обучения самообучению. 20. В пособии [20] излагается основное «Интеллектуальные алгоритмы управления». содержание дисциплины Рассматриваются основные аспекты нечеткой логики, методика синтеза регуляторов на основе нечеткой логики применительно к техническим системам, приведены типовые 24 структурные схемы регуляторов с нечеткой логикой и рассмотрены методы исследования устойчивости систем с регуляторами с нечеткой логикой. В настоящее время в связи с развитием вычислительных способностей технических устройств, возобновились исследования в области нечеткой логики применительно к управлению техническими объектами. Технологии, использующие нечеткую логику ,в своей основе широко применимы как в управлении техническими системами: автоматическое управление воротами плотины на гидроэлектростанциях (Tokio Electric Pow.),наведение телекамер при трансляции спортивных событий (Omron),эффективное и стабильное управление автомобильными двигателями (Nissan),управление экономичной скоростью автомобилей (Nissan, Subaru),улучшение эффективности и оптимизация промышленных систем управления (Aptronix, Omron, Meiden, Sha, Micom, приводовв Mitsubishi, Nisshin-Denki, Oku-Electronics),позиционирование производстве полупроводников wafer-steppers (Canon),автоматическое управление двигателем пылесосов с автоматическим определением типа поверхности и степени засоренности (Matsushita),однокнопочное управление стиральными машинами (Matsushita, Hitatchi);так и для упрощения повседневной жизни человека: оптимизация потребления бензина в автомобилях (NOK, Nippon Denki Tools),повышение чувствительности и эффективности управления лифтами (Fujitec, Hitachi, Toshiba),оптимизированное планирование автобусных расписаний (Toshiba, Nippon-System, Keihan-Express),системы архивации документов (Mitsubishi Elec.),системы прогнозирования землетрясений (Inst. Of Seismology Bureau of Metrology, Japan),диагностика рака (Kawasaki Medical School),распознавание рукописных символов в карманных компьютерах (записных книжках) (Sony),распознавание движения изображения в видеокамерах (Canon, Minolta).Управление на основе нечеткой логики использует предложения в форме правил для того, чтобы управлять тем или иным процессом 25 .Регулятор на основе нечеткой логики может иметь неограниченное число входных сигналов и строится на основе знаний «эксперта»,а также, в отличие от традиционных систем управления (например, ПИД-регуляторов), может синтезироваться без использования специфических знаний об объекте управления. Данный тип регуляторов хорошо зарекомендовал себя в управлении сложными нелинейными системами, а также системами с нелинейными внешними возмущениями. Традиционная двоичная логика построена на решениях: «да» -«нет», «правда» -«ложь», «ноль» -«один». С другой стороны, нечеткая логика оперирует также и решениями, которые лежат между «правдой» и «ложью». В качестве примера можно рассмотреть кондиционер воздуха, в котором установлен регулятор его автоматического включения. 21. В пособии [21] Рассмотрены базовые положения теории нечеткого нейронного и нечетко-нейронного управления недетерминированными объектами. Разработаны алгоритмы и приведены примеры их применения в системах реального времени. 101.Основы теории нечеткого управления недетерминированными объектами в системах реального времени. Теория нечетких множеств и нечеткой логики представляет собой обобщение и переосмысление классической математики. У ее истоков лежат идеи: – многозначной логики, которая указала на возможности перехода от двух к произвольному числу значений оперирования понятиями с истинности и изменяющимся обозначила проблему содержанием;–теории вероятностей, которая, породив большое количество различных способов статистической определения обработки и экспериментальных интерпретации функций данных, открыла пути принадлежности;–дискретной математики, которая предложила инструмент для построения моделей многомерных и многоуровневых систем, 26 удобных для решения практических задач. Существует достаточное количество промышленных объектов, характеризующихся существенной нелинейностью, и, зачастую, отсутствием приемлемой аналитически заданной модели. Если некоторые процессы объекта управления математическому описанию, используют плохо поддаются то в существующей регулятор нечёткой логики формализации и системе управления параллельно традиционному регулятору, т.е. нечеткая логика используется для замены традиционных алгоритмов управления и совместно с ними. При использовании методов каскадного управления с классическим регулятором во внутреннем контуре регулятор нечёткой логики может быть применен во внешнем контуре. Экспериментально показано, что нечеткое управление дает лучшие результаты, по сравнению с результатами, получаемыми при классических алгоритмах управления. 22. В статье [22] разработана математическая модель системы управления мобильным роботом на основе нечетких алгоритмов. Математическая модель создана с использованием математического аппарата алгебры предикатов в виде системы алгебро-предикатных уравнений. На основе полученных уравнений были созданы АП-структуры, которые, в свою очередь, реализованы в виде ассоциативно-логических преобразователей. Построены АП-структуры распознавателей нечетких подмножеств входных и выходных лингвистических переменных 23. Статья [23] посвящена разработке системы навигации автономных мобильных роботов с нечетки ми стратегиями управления. Предложенный метод позволяет реализовать различные типы поведения колесного робота в условиях наличия и отсутствия проприоцептивной информации. Для координации типов поведения применяются простые супервизорные блоки, 27 реализуемые роботом действия основаны на измерениях датчиков для определения положения цели и измерения расстояния до препятствий. Вычислительная трудоемкость предлагаемого метода позволяет его реализовать в реальном масштабе времени. 24. В статье [24] Рассмотрен оригинальный способ нечёткого управления движением мобильной роботизированной платформы по заданной траектории. Разработана функциональная схема системы управления, структура нечёткого регулятора и база нечётких правил. Предложен алгоритм расчёта параметров и кинематики движения робота для моделирования и отладки системы управления. Реализация нечёткого регулятора, системы управления и моделирования выполнена в среде графического программирования LabVIEW, что позволяет отрабатывать предложенные алгоритмы управления как на модели, так и непосредственно на микропроцессорном модуле робота. Предложенные в работе идеи являются частью проекта по разработке мобильной многоцелевой интеллектуальной платформы. Работа выполнена в соответствии с государственным заданием (заказ-наряд 1047) по теме «Создание мобильной интеллектуальной платформы на базе технологии виртуальной реальности, элементов и систем управления, пригодных для эксплуатации в экстремальных условиях внешней среды». 25. В статье [25] рассматривается вопрос разработки алгоритма для синтеза законов движения системой планирования беспилотного транспортного средства (БТС) при обходе препятствия. Синтез законов движения базируется на использовании интегрального критерия - целевой функции в виде линейной свертки частных показателей с весовыми коэффициентами, которая отражает проектируемую специфику работы БТС. 28 29 Выводы Несмотря на большое количество опубликованных работ, статей, материалов, в данном направлении всё еще существует множество нерешенных проблем, и решений, которые можно улучшить. Исследования в направлении автономных систем управления наземными роботами имеют огромный потенциал. Для магистерской работы разрабатывается виртуальный полигон для испытаний самообучающейся системы, основанной на нейронной сети. Самообучающаяся система содержит блок критики для оценки эффективности действий. 30 Список использованных источников: 1. [Александров и др., 2011] Александров В.А., Кобрин А И. Архитектура мобильного робота — элемента программно-аппаратного комплекса для исследования алгоритмов группового управления // "Журнал радиоэлектроники" N 5, 2011. 2. Зенкевич С.Л. Минин А.А. Построение карты мобильным роботом, оснащенным лазерным дальномером, методом рекуррентной фильтрации //Мехатроника, автоматизация, управление. – 2007. – №8. 3. Чинь Суан Лонг. Особенности управления перемещением несущей платформы мобильного робота методами искусственного интеллекта // Известия высших учебных заведений. Северокавказский регион. Технические науки. 2007. Специальный выпуск «Проблемы мехатроники 2006». С. 70-74. 4. О. П. Мосалов, В. Г. Редько, Д. В. Прохоров, Моделирование эволюции автономных адаптивных агентов, Матем. моделирование, 2008, том 20, номер 2, 21–31. 5. А. Г. Коваль, В. Г. Редько, Поведение модельных организмов, обладающих естественными потребностями и мотивациями, Матем. биология и биоинформ., 2012, том 7, выпуск 1, 266–273. 6. Введение в методы машинного обучения с подкреплением: учебное пособие // А. И. Панов. – Москва: МФТИ, 2019. – 52 с. 7. Oh J., et al. Control of Memory, Active Perception, and Action in Minecraft // arXiv.org. 2016. 8. Машинное обучение с подкреплением на Python: учеб- М38 метод. пособие / сост.: А. И. Панов, А. А. Скрынник. – Москва: МФТИ, 2019. – 54 с. 31 9. А.В. Тырышкин, А.А. Андраханов, А.А. Орлов. Применение метода группового учета аргументов для построения системы управления автономным мобильным роботом 10. О возможности применения алгоритмов МГУА в задаче распознавания препятствий для автономных передвижных комплексов. А.В. Тырышкин, А.А. Андраханов // Томский Государственный Университет Систем Управления и Радиоэлектроники 11. Разработка автономного мобильного робота. Аблати С.П., Ефименко А.П., Овиденко Н.А., Пищук М.А., Цаплин А.В. 12. Обучение мобильного робота движению по траектории со сложными ограничениями П.Н. Брунарский, Москва // УДК 519.7 13. Минин А. А. Навигация и управление мобильным роботом, оснащеннымлазерным дальномером: диссертация кандидата технических наук: 50.02.05,Москва, 2008. 14. Потапов А.С. Системы компьютерного зрения. Учебное пособие. – СПб: Университет ИТМО, 2016. –161с. 15. Python для сложных задач: наука о данных и машинное обучение. — СПб.: Питер, 2018. — 576 с.: ил. — (Серия «Бестселлеры O’Reilly»). 32 16. Прикладное машинное обучение с помощью Scikit-Learn и TensorFlow: концепции, инструменты и техники для создания интеллектуальных систем. Пер. с англ. - СпБ.: ООО "Альфа-книга': 2018. - 688 с. 17. Машинное обучение и TeпsorFlow. -СПб.: Питер, 2019. -336 с 18. Вашкевич, Н. П. Недетерминированные автоматы и их использование для реа-лизации систем параллельной обработки информации : моногр. / Н. П. Вашкевич, Р. А. Бикташев. – Пенза : Изд-воПГУ, 2016. – 394 с 19. Стасевич В. П. Анализ и адаптивное управление в недетерминированных средах на основе самообучения: диссертация кандидата технических наук, Краснодар 2007 20. Демидова Г.Л., Лукичев Д.В. Регуляторы на основе нечеткой логики в системах управления техническими объектами–СПб: УниверситетИТМО, 2017. –81с 21. Хижняков Ю.Н. Алгоритмы нечеткого, нейронного и нейро-нечеткого правления в системах реального времени: учеб. пособие. Пермь: Издво ПНИПУ, 2013. –160 с. 22. Разработка нечеткой логической системы управления мобильным роботом. Булкин В.И. 23. Системи обробки інформації, 2016, випуск 5 (142) С.Г. Удовенко, А.Р. Сорокин. Харьковский национальный университет радиоэлектроники, Харьков. 33 24. Костыгов А.М., Даденков Д.А., Каверин А.А. НЕЧЁТКАЯ СИСТЕМА УПРАВЛЕНИЯ ДВИЖЕНИЕМ МОБИЛЬНОГО РОБОТА // Научное обозрение. Технические науки. – 2014. – № 1. – С. 205-205; 25. Синтез законов движения наземным роботом при обходе стационарного препятствия. Леонард, А.В. / Leonard, A.V, Горбов, И.А. / Gorbov, I.A, Твердохлебов, С.А. / Tverdokhlebov, S.A. Известия Волгоградского государственного технического университета. 2017 (14):105-111 34