Компенсация знакопеременного дрейфа целевой функции в решении обратной задачи кинематики манипулятора в условиях движущейся цели
Галемов Руслан Тахирович
аспирант, кафедра робототехники и технической кибернетики, Сибирский Федеральный Университет 660041, Россия, Красноярский край, г. Красноярск, проспект Свободный, 79
И galemovruslan@gmail.com
Статья из рубрики "Системный анализ, поиск, анализ и фильтрация информации"
Аннотация.
Объектом исследования является решение обратной задачи кинематики, как задачи оптимизации, в условиях движущейся цели. Предметом исследования является учет дрейфа целевой функции, как результат движения цели, в процессе оптимизации. Для решения обратной задачи кинематики многозвенного манипулятора, в условиях изменяющегося во времени положения цели, разработан эффективный алгоритм поисковой оптимизации. Его суть состоит в оценке скорости дрейфа, сформулированной целевой функции, на каждом шаге поиска и учете влияния дрейфа цели при выборе направления поиска. В работе рассмотрена модификация метода для переменной скорости дрейфа целевой функции. Оценки скорости дрейфа вычисляются рекуррентным методом наименьших квадратов на основе двух режимов: непрерывного движения поиска и поиска с повторными экспериментами в каждой вершине. Влияние дрейфа на значение целевой функции получается интегрированием оценок скорости дрейфа на интервале времени между измерениями. Автором был предложен метод учета дрейфа целевой функции в задаче оптимизации. Предложенный метод показал свою эффективность в задачах оптимизации с одним и несколькими экстремумами, на примере симплексного поиска и генетического алгоритма, работающих в условиях непостоянного дрейфа целевой функции. Экспериментальным путем определены границы эффективности применения метода.
Ключевые слова: генетический алгоритм, симплексный поиск, оценки дрейфа, движущаяся цель, прямые методы оптимизации, обратная задача кинематики, дрейф целевой функции, оптимизация, комбинированный поиск, экстремальное управление
DOI:
10.25136/2306-4196.2018.4.26798
Дата направления в редакцию:
04-08-2018
Дата рецензирования:
01-08-2018
Дата публикации:
06-08-2018
Введение
Обратную задачу кинематики (ОЗК) манипулятора можно рассматривать как задачу статической оптимизации Если заданное положение рабочего органа меняется во время поиска по неизвестному закону и имеется возможность оперативно фиксировать эти изменения, то задача оптимизации становится задачей экстремального управления, вследствие изменения положения оптимума во времени.
Задачи оптимизации в реальном времени, где целевая функция имеет дрейф оптимума, привлекали внимание исследователей из различных областей несколько последних десятилетий. В результате чего разработано несколько производительных алгоритмов. В отличие от оптимизации статической функции, где оптимум зафиксирован, в задаче оптимизации в реальном времени необходимо найти оптимум и следовать за ним. Наиболее активное применение экстремального управления наблюдается в химической
промышленности [2-5].
В процессе оптимизации строится последовательность входных значений направленная на достижение экстремума. Для построения последовательности входных значений используются методы прямого поиска, с различными модификациями для определения
правильного направления поиска, когда модель процесса неизвестна. В работе ^ представлен симплексный поиск, основанный на построении нескольких симплексов на
каждом шаге алгоритма, и выборе на их основе направления движения. В ^ представлен симплексный поиск, который совершает шаги на основе статистики, определяющей вероятность нахождения оптимума в каждом из направлений движения. В
работах [6] и представлены метод роя частиц и генетический алгоритм соответственно, использующие технику сброса и обновления значений целевой функции.
В используется комбинация из муравьиного алгоритма и симплексного поиска из для задач экстремального управления.
В данной статье представлена модификация алгоритмов прямого поиска, основанная на
компенсации дрейфа целевой функции Компенсация позволяет вести поиск в условиях знакопеременного дрейфа. Работоспособность модификации исследована на комбинированном поисковом методе (КПМ), состоящем из симплексного поиска и генетического алгоритма ¿А0!.
Постановка задачи
Задача слежения п -звенным манипулятором за целью в т -мерном пространстве имеет вид:
¡-1 / >1
где
,2 1-1
Х = {х-.хеЕ\х~ <лг+]
1-Х
хо-вектор начальных обобщенных координат манипулятора; Рб (^ ), Р(х)-вектор заданного конечного положения манипулятора в момент времени tk и вектор текущего положения соответственно; Л, м -весовые коэффициенты; х-вектор переменных поиска; ^ =кТ о-дискретное время; Т о-интервал наблюдения.
При изменении р^ (t ) будет изменяться целевая функция (1). Выделяем несколько видов изменения целевой функции:
■ вертикальный дрейф - движение поверхности целевой функции вдоль ординат Q . В этом случае со временем меняются значения целевой функции при фиксированных аргументах, но положение оптимума остается неизменным;
■ горизонтальный дрейф - движение поверхности целевой функции вдоль аргументов. В этом случае меняется положение оптимума, что приводит к изменениям значений целевой функции при фиксированных значения х;
■ смешанный дрейф - комбинация вертикального и горизонтального дрейфов.
Заметим, что при любом виде дрейфа происходит изменение значений целевой функции при фиксированных переменных. Поэтому независимо от вида изменения целевой функции, предполагаем, что на малом интервале времени на систему действует вертикальный дрейф.
Компенсация дрейфа
Рассмотрим, как дрейф может повлиять на поиск экстремума. Имеем конусообразную целевую функцию Q (х ) для п = 2 и метод прямого поиска, состоящий из трех вершин на к -м шаге поиска, представленные на рисунке 1.
Рисунок 1 - Влияние вертикального дрейфа: а) линии уровня в начальный момент
времени; б) разрез
Обозначим б j - смещение поверхности функции Qj в момент времени tj относительно поверхности Qj - 1 в момент времени tj -1 . В поиске с s вершинами индексом s обозначим последнюю вершину, в которой производилось вычисление целевой функции и времени, соответственно в вершине с индексом 1 вычисление целевой функции проводилось раньше всех остальных s -1 вершин, при этом ^ =tk . В момент времени ^ -2 вычисляется
значение целевой функции Q (xs -2 ) в вершине х s _2. Значение Q (xs -2 ) лежит на поверхности Qs _2. В момент времени ^ _1 дрейф перемещает поверхность целевой функции на расстояние ds _1, в положение Qs _1. Здесь происходит измерение Q (xs _1). В момент времени ^ поверхность смещается на расстояние ds в положении Qs и
вычисляется <3 ). Из-за дрейфа поверхности целевой функции алгоритм поиска
может определить неверное направление движения. Поэтому необходимо вычесть влияние дрейфа, тем самым привести все измерения к одной поверхности Приведем значения целевых функций из всех вершин к поверхности последнего измерения <5 . Значение целевой функции в I -й вершине, приведенное к текущей поверхности <<5 , назовем компенсированным, и обозначим С (ж| ).
Компенсированная целевая функция для I -й вершины поиска в момент времени t| равна значению целевой функции вычисленной в I -й момент времени с добавлением всех смещений произошедших с целевой функцией после измерения:
>='+! , (2)
где I =1 ...5 - индекс вершины поиска. Поскольку смещения неизвестны, то
используются их оценки на основе скорости дрейфа. Для оценки дрейфа используем рекуррентный метод наименьших квадратов (РМНК) с повторными экспериментами и РМНК без повторных экспериментов. Разница времени между смежными измерениями
1к ~1к-1
времени
равна времени дискретизации Т д.
При повторных экспериментах РМНК минимизирует разницу между изменением целевой функции в двух экспериментах и моделью:
С. С.
I =1 ...5 , (3)
,
,
где Ь интервал времени время между экспериментами в э -й вершине; ^
оценка скорости дрейфа
Поскольку для оценки скорости дрейфа используется два измерения целевой функции в каждой вершине, которые длятся некоторое время, и присутствует промежуток времени, на котором значение дрейфа неизвестно, то при компенсации их необходимо учитывать. Временная диаграмма оценки скорости дрейфа представлена на рисунке 2.
Рисунок 2 - Временная диаграмма оценок скорости дрейфа с повторными
экспериментами
Воспользуется методом трапеций для оценки смещения целевой функции на
Этот интервал можно разделить на две части: . Интегрирование производится по следующим формулам:
инте рв а ле в ре ме ни
'М м
4-1 ч
1 =
'*(?) ЛУ
4-1 Ч
к =
А) ЛУ I ч
¿и =
I Ч-\
, (5)
- ¿и , (б) где l = 1 ... s .
При РМНК без повторных экспериментов минимизируется разница между изменением целевой функции в соседних измеренных вершинах и оценкой смещения.
Оценка вычисляется без повторных экспериментов по следующей формуле:
Г- Да,
ф; =фМ +■
1 + Де, ■ Г ■ ДЕ,
,
l = 1.5, (7)
I
1015,
где ^и+1хи+1 - единичная диагональная матрица размера я + 1хя + 1. -
ния переменных и времени между соседними вершинами ^ы
Фх—1 = [ам ¿м]1 дрейфа; а'-1 -[й1
Временная диаграмма оценок скорости дрейфа представлена на рисунке 3.
вектор изменения переменных и времени между соседними вершинами
-]Т
- комбинированный вектор аппроксимации целевой функции и скорости
а 1Т
- вектор аппроксимации целевой функции.
Рисунок 3 - Временная диаграмма оценок скорости дрейфа без повторных
экспериментов
Для оценки смещения используется метод трапеций.
, I = 1...5, (8)
Оценка дрейфа, вычисляемая по методу с повторными экспериментами, обладает высокой точностью и находится за одно применение РМНК. Кроме того её можно использовать при большом разбросе точек поиска. Однако дополнительный эксперимент удваивает количество вычислений целевой функции. Оценка дрейфа без повторных экспериментов требует расположения точек поиска на одном склоне целевой функции, кроме того для оценки скорости дрейфа необходимо несколько применений РМНК. Полученные таким способом оценки незначительно уступают в точности оценкам с двух экспериментов. При этом поиск не замедляется повторными экспериментами. На основе этого предложено использовать оценку повторными экспериментами в алгоритмах глобального поиска, где вершины могут быть разбросаны по всему пространству поиска, таких как генетический алгоритм. А оценку без повторных экспериментов использовать в алгоритмах локального поиска, таких как симплексный поиск.
Генетический алгоритм (ГА) - итеративный эвристический алгоритм поиска, использующийся для решения многомерных задач оптимизации значений целевой функции путем случайного подбора, комбинирования и вариации исходных параметров. ГА содержит «популяцию» точек в пространстве поиска, именуемых «особи». На каждом шаге поиска создается новая популяция. С каждой новой популяцией особи будут находиться ближе к оптимуму. Чтобы создать новую популяцию на основе предыдущей ГА выполняет следующие шаги: а) вычисление целевой функции каждой особи популяции; б) выбор особей на основе значения их целевой функции; в) рекомбинация существующих особей генетическими операциями: скрещивание и мутация. ГА работает независимо над несколькими потенциальными решениями, а не над одним, что позволяет находить глобальный оптимум. Так же в поиске глобального оптимума содействует наличие случайностей в операциях выбора и рекомбинации.
Имеется задача (1). Для поиска в п -мерном пространстве одна особь будет иметь п генов, и будет представлять одну конфигурацию манипулятора. Значение целевой функции особи называется фитнесом или приспособленностью.
Генетический алгоритм, имеющий 5 вершин, использующий оценки с повторными экспериментами, имеет вид:
2) создается новая популяция:
2.1) рассчитываются координаты вершины xI ,! = 1.5 ;
2.3) оценивается скорость дрейфа ' в вершине х/,/ = 1...5 , по формуле (3);
2.4) вычисляется , I = 1...5 по формуле (6);
2.5) вычисляется !='+1 , I- 1...5- 1;
3) на основании 1=1--£ производятся этапы генетического алгоритма;
3.1) выбор родителей;
3.2) скрещивание;
3.3) мутация;
4) условие останова: достижение максимального числа популяций , самая
Хт ____: ________ „______ХГ,! = ХГ,!-1 = — = Х!\!-1
приспособленная особь г не меняется /5 поколений подряд: ' ' 1 , или
если целевая функция находится в определенном диапазоне значений. Если выполнены условия останова, то переход к п.5 в противном случае переход к п.2;
5) вывод результатов.
Симплексный поиск это локальный алгоритм прямого поиска нулевого порядка. «Симплекс» это геометрическая фигура в п -мерном пространстве, состоящая из (п +1) вершин. В процессе работы алгоритм использует простую геометрическую трансформацию над симплексом (отражение). Для выбора подходящей трансформации используется значения целевой функции в каждой вершине. П осле каждой трансформации текущая худшая вершина заменяется на более хорошую. Таким образом, симплекс движется в сторону оптимума. При любом значении п алгоритм на каждом шагу требует не более одного вычисления целевой функции для отражения, что делает симплексный поиск быстрее других алгоритмов, требующих на каждом шагу вычисления целевой функции п раз.
Алгоритм симплексного поиска с п + 1 вершинами, использующий оценки без повторных экспериментов, имеет вид:
2) формируется начальный симплекс:
2.1) рассчитываются координаты вершины Х| , I = 1.5 ;
2.2) вычисляется /= 1...5 ;
2.3) оценивается скорость дрейфа в вершине х/,/ = 1...5 по формуле (7);
2.4) вычисляется ^ , / = 1...5 , по формуле (8);
2.5) вычисляется !=;+1 " , I- 1...5 -1;
2.б)
3) на основании = 1...5 определяется худшая вершина х^ ;
4) вычисляются координаты отраженной вершины x5 ;
5) в вершине x5 :
5.1) вычисляется ^
5.2) оценивается скорость дрейфа ^ в вершине х5 по формуле (7);
5.3) вычисляется ^ , по формуле (8);
5.4) вычисляется
или
6) проверка условия останова: если симплекс удовлетворяет (9) при известном Е число шагов больше , то переход к п.7. Переход к п.З;
7) вывод результатов.
J1 и+1 , _ ?
-ЦЕ еоо-е) <е n+li=i . (9)
Комбинируя симплексный поиск и генетический алгоритм можно получить быстрый поиск оптимума на многоэкстремальной функции при воздействии дрейфа с переменной скоростью.
Комбинированный поисковой метод
Интенсификация - процесс уменьшения области поиска ГА. Используется для повышения шансов нахождения глобального оптимума, а так же увеличения точности поиска в целом. Смысл её заключается в увеличении концентрации особей генетического
алгоритма в перспективной области (promising area) -t11-^ Перспективная область -область пространства поиска генетического алгоритма в которой, вероятнее всего, находится глобальный оптимум. Она считается найденной, если в ней находится лучшая особь популяции и большая часть других особей. В процессе интенсификации происходит уменьшение размера области поиска и объема популяции.
0 <упл <1
Интенсификация характеризуется параметром сжатия , который регулирует,
какая доля области поиска и популяции останется после интенсификации.
Оптимизационные алгоритмы можно классифицировать на глобальные и локальные. Глобальные методы способны найти глобальный оптимум на многоэкстремальной функции. Локальные методы за короткое время находят ближайший оптимум, независимо о т того глоба льный о н или не т.
Недостатком генетического алгоритма является большое число шагов и обращений к целевой функции из-за частично случайного характера поиска.
Симплексный поиск быстро сходится к ближайшему оптимуму, но не способен выбраться из локального оптимума.
Для сохранения достоинств и устранения недостатков рассмотренных методов поиска был разработан комбинированный метод поиска. Суть его заключается в том, что на каждом шаге генетического алгоритма его лучшие особи передаются в алгоритм Нелдера-Мида, где вокруг них строятся симплексы и производится симплексный поиск. Результаты поиска сравниваются с особями ГА и при необходимости заменяют их. Алгоритм работы комбинированного поискового метода представлен на рисунке 4.
Эксперименты
В данной работе проведены эксперименты на тестовых функциях, подверженных вертикальному дрейфу. Так же проведено решение обратной задачи кинематики, в условиях движущейся цели, многозвенного манипулятора в которой движение цели создает смешанный дрейф целевой функции.
Использовалась конусообразная целевая функция со знакопеременным вертикальным дрейфом с частотой дискретизации и к - дискретным временем:
Q[xík} = -^а-х^ + а-х\ +
3111
К
, (10)
,
.
Дискретная частота дрейфа подобрана таким образом, чтобы во время расчета популяции генетического алгоритма с объемом
Q{x,k) = х^+х^-П знак несколько раз.
+ Х[ + — ■ ят ( ■ к} со,
£-20 скорость дрейфа поменяла
Рисунок 4 - Блок-схема алгоритма КПМ График скорости дрейфа и её оценки представлены на рисунке 5
Рисунок 5 - Скорость и оценка дрейфа
Результаты одной итерации комбинированного поискового метода с интегральной оценкой дрейфа представлены на рисунке 6.
100
50
2 0
-50
-100
Контуры О(х) + Оптимум * КПМ с компенсацией КПМ без компенсации
11 Гг,
—\
/ 1 / / /
\ \ N
-100
-50
0 х1
50
100
Рисунок 6 - Результаты работы алгоритма с компенсацией и без компенсации
Следующая целевая функция со знакопеременным вертикальным дрейфом - функция Химмельблау в дискретном времени:
Q{■s.,k) = \L^ -11
+ + — 7Л + X! + — ■ ■ к)
, (11)
Ь = 20, 00 = 1, ^ =0.2
Результаты одной итерации комбинированного поискового метода с интегральной оценкой дрейфа представлены на рисунке 7.
Рисунок 7 - Результаты работы алгоритма с компенсацией и без компенсации
Чтобы определить границы эффективности оценок построим график зависимости среднеквадратичной ошибки поиска от отношения сигнал-дрейф. Отношение полезный сигнал - максимальная скорость дрейфа отражает степень влияния дрейфа на
значение целевой функции. Где а -уровень полезного сигнала (10); Ь -максимальная скорость дрейфа (10). Среднеквадратичная ошибка равна:
М
^=1 , (12)
п
(13)
где
значение оптимума;
X,-
найденное значение на / -м поиске; N - число
экспериментов.
При N =1000, значениях начальной длины ребра симплекса и коэффициента растяжения симплекса, указанных в таблице 1, получены графики, представленные на рисунке 8.
Таблица 1 - Значения начальной длины ребра симплекса и коэффициенты растяжения
L 0 а
1 1.5
0.2 1.5
1 1.1
Рисунок 8 - Зависимость среднеквадратичной ошибки от отношения сигнал / дрейф
На рисунке 8 видно, что точность поиска стремительно падает после того как максимальная скорость дрейфа превышает уровень сигнала в 10 раз.
Эксперименты с решением обратной задачи кинематики проводились на модели трехзвенном манипуляторе в среде МА^АВ. Кинематическая схема манипулятора представлена на рисунке 9.
Рисунок 9 - Кинематическая схема трехзвенного манипулятора
Данный манипулятор является не избыточным, поэтому ОЗК имеет малое Iм 2) число решений. Параметры Денавита-Хартенберга для манипулятора представлены в таблице 2.
Таблица 2 - Параметры трехзвенного манипулятора
Звено Звено 1 Звено 2 Звено 3
Параметр
0 0 0
рад 0 0 0
м 0.500 0.670 0.200
м 0 0 0
{?min ?max}, град {-170,170} {-170,170} {-170, 170}
Движение цели происходило по траекториям, представленным в таблице 3. Траектория 1 - окружность с радиусом 1 м на плоскости хцуц с рабочим органом, ориентированным в сторону положительного направления оси хд. Траектория 2 - синусоида на плоскости х оУо с рабочим органом, ориентированным в сторону положительного направления оси
x.Q. Вектор Р^) состоит из следующих элементов: ^Д- положение по оси хц, -
положение по оси уц, ^^ - угол отклонения от положительного направления оси хц.
Таблица 3- Заданные траектории для рабочего органа манипулятора
Траектория 1 Траектория 2
рЛ0,м cos(è ■ i) sin(è-t) 0 0.8 + 0.05 cos(lO-b-i)" 1-b-t 0
b , м/с 0.5 0.5
Построенные траектории движения рабочего органа представлены на рисунке 10 и рисунке 11.
в)
150
100
50
ся
Ш
-50
-100
ч3 91
ишИ1**
10
20
30
40
50
г)
Рисунок 11 - Результаты решения ОЗК для траектории 2: а) заданная и пройденная траектории; б) ошибки положения; в) ошибки ориентации; г) траектории обобщенных
координат
Из рисунка 10а и рисунка 11а видно, что траектория рабочего органа проходит достаточно близко к траектории цели. Как показывает рисунок 10б и рисунок 11б ошибки
положения в рабочем пространстве находится в диапазоне 10-2 метра. Из рисунка 10г и рисунка 11г видно, что простроенные траектории не имеют скачкообразных изменений обобщенных координат и пригодны для дальнейшего использования в качестве
задающего воздействия регулятора привода манипулятора.
Заключение
Предложена модификация методов прямого поиска для работы в условиях непостоянного дрейфа целевой функции. Показана эффективность компенсации дрейфа целевой функции в генетическом алгоритме и симплексном поиске. Оценивая скорость дрейфа метод способен произвести компенсацию значений целевой функций, таким образом, что будет правильно определено направление поиска. При условии, что скорость дрейфа не превышает уровень сигнала более чем в 10 раз. Предложенная модификация может использоваться со многими методами прямого поиска.
Библиография
1. Parker J. K., Khoogar A. R., Goldberg D. E. Inverse kinematics of redundant robots using genetic algorithms / /Robotics and Automation: Proceedings on IEEE International Conference. - Scottsdale: IEEE, 1989. - P. 271-276.
2. Yip W. S., Marlin T. E. Designing plant experiments for real-time optimization systems //Control Engineering Practice. - 2003. - Vol. 11. - No. 8. - P. 837-845.
3. Yip W. S., Marlin T. E. The effect of model fidelity on real-time optimization performance //Computers & chemical engineering. - 2004. - Vol. 28. - No. 1-2. - P. 267-280.
4. Xiong Q., Jutan A. Continuous optimization using a dynamic simplex method //Chemical Engineering Science. - 2003. - Vol. 58. - No. 16. - P. 3817-3828.
5. Martinez E. C. Statistical simplex method for experimental design in process optimization //Industrial & engineering chemistry research. - Washington: American Chemical Society, 2005. - Vol. 44. - No. 23. - P. 8796-8805.
6. Carlisle A., Dozier G. Adapting particle swarm optimization to dynamic environments //International conference on artificial intelligence. - Las Vegas: Proc. 2000 ICAI, 2000. - Vol. 1. - P. 429-434.
7. Branke J. Evolutionary optimization in dynamic environments. - Norwell: Kluwer Academic Publishers, 2001. - P. 208.
8. Dreo J., Siarry P. An ant colony algorithm aimed at dynamic continuous optimization //Applied Mathematics and Computation. - 2006. - Vol. 181. - No. 1. - P. 457-467.
9. Круг, Г.К., Масальский Г.Б. Симплексный инвариантный метод экспериментальной оптимизации // Вопросы кибернетики. Планирование эксперимента и оптимизация в системах управления: сб. тр. / под ред. Г.К. Круга, А.П. Вощинина. М.: Академия наук СССР.- 1981. - 155 с.
10. Галемов Р.Т., Масальский Г.Б. Планирование траектории манипулятора для движущейся цели // Кибернетика и программирование. - 2018. - № 2. - С. 9-28.
11. Chelouah R., Siarry P., Berthiau G., De Barmon B. An optimization method fitted for model inversion in non destructive control by eddy currents. The European Physical Journal Applied Physics .- 2000 .- Vol. 12 .- No. 3 .- P. 231-238.