Научная статья на тему 'Использование генетических алгоритмов для автоматического формирования программ управления движением'

Использование генетических алгоритмов для автоматического формирования программ управления движением Текст научной статьи по специальности «Математика»

CC BY
955
115
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕТИЧЕСКИЕ АЛГОРИТМЫ / GENETIC ALGORITHMS / РОБОТОТЕХНИКА / ROBOTICS / МЕХАТРОННО-МОДУЛЬНЫЕ РОБОТЫ / MECHATRONIC-MODULAR ROBOTS / УПРАВЛЕНИЕ ДВИЖЕНИЕМ / MOTION CONTROL

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

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

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

This article provided a mechanism for managing the movement of the robot in the configuration of the walking mechanism based on genetic algorithms

Текст научной работы на тему «Использование генетических алгоритмов для автоматического формирования программ управления движением»

_ 2 k-1

Vx e[a, P]AVz = 0,2k -1,[a, p] = \ [xt, xt+1].

i = 0

С учетом n > 2 из теоремы вытекает

Следствие В условиях теоремы выполняется неравенство

~ В-а ~

1 f '(x) - W\n (x) 1 < C00 , C00 = c0nst, при этом C00 не зависит от выбора степени полинома n .

Таким образом, если с помощью варьируемого кусочно-полиномиального метода в условиях двукратной дифференцируемости приближается функция, то автоматически приближается производная, причем с равномерной сходимостью при дополнительном требовании (n +1) -кратной дифференцируемости приближаемой функции. Скорость сходимости имеет порядок геометрической прогрессии по числу подынтервалов.

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Ромм, Я. Е. Бесконфликтные и устойчивые методы детерминированной параллельной обработки: авто-реф. дис. ... докт. техн. наук. / Я.Е. Ромм - Таганрог: ТРТУ. - 1998. - 42 с.

2. Ромм, Я. Е. Минимизация временной сложности вычисления функций с приложением к цифровой обработке сигналов: учеб.пособие / Я. Е. Ромм, С. А. Фирсова. - Таганрог: ТГПИ, 2008. - 124 с.

3. Ромм, Я.Е., Джанунц, Г.А. Кусочно-полиномиальные приближения функций и решений дифференциальных уравнений в применении к моделям периодических реакций./Я.Е. Ромм, Г.А. Джанунц. - Таган-рог:ТГПИ имени А.П. Чехова, 2013. - 240 с.

УДК 517.91: 518.1 ББК 81.11

Т.Г. Каплунов

ИСПОЛЬЗОВАНИЕ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ ДЛЯ АВТОМАТИЧЕСКОГО ФОРМИРОВАНИЯ ПРОГРАММ УПРАВЛЕНИЯ ДВИЖЕНИЕМ

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

Ключевые слова: генетические алгоритмы, робототехника, мехатронно-модульные роботы, управление движением.

T.G. Kaplunov

USING GENETIC ALGORITHMS TO AUTOMATICALLY GENERATE TRAFFIC

MANAGEMENT PROGRAMS

Absrtact This article provided a mechanism for managing the movement of the robot in the configuration of the walking mechanism based on genetic algorithms.

Key words: genetic algorithms, robotics, mechatronic-modular robots, motion control.

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

Приведем основные сведения об эволюционных методах. В эволюционных методах вначале создается множество случайно сформированных объектов с заданной структурой (такое множество называется популяцией объектов) и функция, определяющая близость объекта к истинному решению, называемая целевой функцией. Далее все эволюционные методы работают по общей схеме: определяется пригодность объектов в популяции, с учетом близости к целевой функции и при внесении элемента случайности создаются объекты для популяции следующей итерации. Данный процесс повторяется либо до получения решения, либо до окончания времени, отведенного на решение. Популяция имеет «память» - в ней накапливаются лучшие результаты предыдущих итераций, и этим эволюционные методы отличаются от других методов случайного поиска. В создании нового объекта популяции обычно участвуют два существующих объекта, от каждого из которых новый объект отбирает часть свойств; этот процесс называется скрещиванием или кроссовером. При кроссовере, кроме того, исходные объекты подвергаются некоторому случайному изменению - мутации. Иногда используется стратегия элитизма, при которой несколько лучших особей переходят в следующее поколение без изменений, не участвуя в кроссовере и отборе [2].

В литературе направление исследований, объединяющее различные эволюционные методы, получило название «эволюционные вычисления».

Обычно все алгоритмы эволюционных вычислений состоят из следующих шагов:

1. Задается структура объектов, функция цены и условия останова. Создается популяция объектов P.

2. С помощью функции цены из популяции P выбирается множество лучших объектов.

3. С помощью операторов, поддерживающих эволюцию, из выбранных объектов создаются новые - претенденты на включение в следующую популяцию.

4. Образуется новая популяция P из отобранных на 4-м шаге объектов.

5. Шаги 3-5 повторяются до выполнения условия останова.

6. Если итерации завершены успешно, то из итоговой популяции выделяется объект с высшей ценой, который является искомым решением. Иначе выдается сообщение о невозможности получить решение.

Объектами популяции могут быть структуры данных, автоматы, программы. Функция цены выбирается так, чтобы наибольшую цену имели объекты, лучше всего соответствующие целям эволюции.

Широкому распространению эволюционных вычислений способствует три причины.

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

II. Естественный отбор устраняет необходимость заранее учитывать все особенности решения задачи. Можно успешно решать задачи, структуру решения которых программист не знает. Существует много примеров решения с помощью эволюционных вычислений практических задач (задача коммивояжера, задачи распределения ресурсов; решение задач в реальном времени, связанных с управлением движущимися объектами).

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

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

Типичными представителями эволюционных вычислений являются генетические алгоритмы, эволюционные стратегии и генетическое программирование.

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

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

Совершено самостоятельный аспект исследований, которые активно проводятся в рамках этой очень широкой тематики, связан с попытками применения генетических алгоритмов для решения задач по автоматическому формированию программ, выполняющих требуемые функции. Подобные задачи приобретают особую актуальность в контексте проблем разработки принципиально нового класса технических систем, обладающих способностями к самоорганизации и самообучению. Одним из примеров систем такого рода являются многозвенные реконфигурируемые мехатронно-модульные роботы, техническая реализуемость которых подтверждается результатами ряда известных проектов. Так, в лабораторных испытаниях конкретных образцов реконфигу-рируемых мехатронно-модульных роботов различных типов, включая PolyBot (PARK, USA), Poly-pod (StanfordUniversity, USA), MTRAN (AIST, Japan) и др., неоднократно демонстрировалась возможность изменения кинематической структуры за счет автоматической перестыковки ее фрагментов [1].

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

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

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

• поднять конечность;

• опустить конечность;

• повернуть конечность вперед (+15°);

• повернуть конечность в нейтральное положение (0°);

• повернуть конечность назад (-15°).

Будем считать, что реализация оговоренных движений определяется радом допущений:

• прямоугольная система координат робота связана с его узловым модулем;

• точки крепления конечностей к узловому модулю совпадают с осями системы координат робота;

• движение каждой конечности в вертикальной плоскости осуществляется поворотами шарниров первого и второго модулей (в порядке следования от узлового).

• движение каждой конечности в горизонтальной плоскости осуществляется поворотом шарнира, первого модуля (по отношению к узловому).

Структура хромосомы, отвечающей этим требованиям, разбивается на несколько фрагментов, каждый из которых будет кодировать один такт алгоритма управления, задающий изменение состояний конечностей робота. Для кодирования могут использоваться три бита, первый из которых устанавливает движение конечности в вертикальной плоскости, а второй и третий - в горизонтальной плоскости (табл. 1).

Таблица 1

Команды управления роботом

№ бита Значение Элементарное движение

1 0 Опустить конечность

1 Поднять конечность

2, 3 00 Повернуть конечность в нейтральное положение

01 Повернуть конечность вперед

10 Повернуть конечность назад

11 Оставить конечность в текущем положении

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

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

f=*2+У2,

где х, у - координаты положения робота после отработки одного цикла синтезированного алгоритма управления движением (рис. 1).

Подхромосома 1 Подхромосома 2

Подхромосома п

А А А

t V • • • • ' >

1 1 1 1 1

J—

Хромосома а)

Подхромосома Ж.

IX.

010 101 010 101

№ конечности 1

з

Рис. 1. Механизм движения робота с точки зрения ГА

Как известно, формирование новой популяции особей в процессе их эволюции осуществляется в результате рекомбинации отобранных хромосом с помощью не только операций скрещивания, но и мутации.

Применительно к задачам автоматизации синтеза алгоритмов управления движением меха-тронно-модульного шагающего робота методами эволюционного программирования выполнение операции мутации хромосом также должно осуществляться в нескольких различных вариантах.

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

Третий вариант операции мутации обеспечивает дополнительное подключение сгенерированной подхромосомы в состав структуры имеющейся битовой строки с увеличением ее длины (рис. 2).

Хромосома 0101010101.01.010101010101010101.010101010101010101

Хромосома

010111010101010001010101010100010101010101111101

Рис. 2. Три варианта мутации хромосом

В ходе выполнения экспериментальных исследований селекция синтезируемых хромосом осуществлялась по методу элитного отбора. Для эмуляции движений робота, отвечающих кодам полученных хромосом, использовался специализированный комплекс программно - инструментальных средств моделирования виртуальной реальности ODE (OpenDynamicEngine). При этом продолжительность «жизни» каждой особи ограничивалась 40 тактами, где под тактом понимается период выполнения команд одной подхромосомы.

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

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

походкой шагающего робота в автоматическом режиме по времени занимает от 10 до 30 минут (табл.2), то для эксперта решение аналогичной задачи требует от 1,5 до 3 суток (табл. 3).

Таблица 2.

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

синтезированной экспертом

№ опыта Хромосома Число подхромосом Пригодность Вектор направления

1 101011110011 111010111001 011011011011 011101011110 010111001111 011011011011 6 2,53% \ >

*

Таблица 3

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

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

№ опыта Хромосома Число полхромосом Пригодность Вектор направлен ил

1 000110110100 111100010111 11001111110! 3 1,7961 У

г 010101111010 оопоооооооо 011100010101 110000111001 4 2.3882

3 001000110010 011100101101 001Ю11 иооо 110010010001 4 2,4966

4 ошооюшо 110010010001 2 2,614 н [г

5 011110101100 1100Ю010001 2 2,7276 - /

6 001001010011 N0010000010 101110100111 3 2,5102

7 И00010100П 111010000010 101110100111 3 2,8601

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Кадочников, М.В. Модели и алгоритмы управления многозвенными мехатронно-модульными роботами: Дис. ... канд. тех. наук. Москва: Мирэа, 2009. - 190 с.

2. Рутковская, Д., Пилиньский, М., Рутковский Л. Нейронные сети, генетические алгоритмы и нечеткие сис-темы./Д. Рутковская и др. - 2-е изд. - М: Горячая линия-Телеком, 2008. - 452 с.

3.

УДК 37.02 ББК 74.202

Д. С. Кулишова

ВНЕДРЕНИЕ ЭЛЕКТРОННЫХ ДОСОК В УЧЕБНЫЙ ПРОЦЕСС ШКОЛЫ ДЛЯ СОВМЕЩЕНИЯ ИНТЕРЕСОВ ПРЕПОДАВАТЕЛЕЙ И ШКОЛЬНИКОВ

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

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