Эффект асимметрии обучения для нейронных систем управления Астапкович А.М. Нач. СКБ Государственного Университета Аэрокосмического Приборостроения 190000,Санкт-Петербург,Большая Морская , 67 {skb@aanet.ru} http://www.guap.ru Аннотация В работе описывается тестовая модель двухколесного робота SOFA-2009 с независимыми приводами и системой управления на базе нейронной сети. Сравниваются результаты обучения этой сети с применением методики “Обучение через показ” для поведенческой реакции ”перемещение в заданную точку 2D плоскости” под управлением двухканальной системы. Показано, что существует эффект асимметрии обучения для этого типа поведенческой реакции. Эффект проявляется в наличии ассиметрии для значений весов симметричных каналов управления. Показано, что для устранения этого эффекта требуется использование обучающего примера, обладающего симметрией. Также предложена модифицированная одношаговая процедура обучения с использованием метода множителей Лагранжа, обеспечивающая учет наличия линейных связей между весами, что позволяет избавиться от эффекта асимметрии. Ключевые слова: двухколесный робот, тестовая модель SOFA-2009, обучение через показ, эффект асимметрии обучения, модифицированная процедура одношагового обучения, метод множителей Лагранжа, вычислительная робототехника. Введение Применение методологии, называемой ”Вычислительная робототехника” при проведении исследований предполагает использование виртуальных моделей роботов и виртуальных моделей сред для проведения исследований. SOFA-2009 предельно простая тестовая модель двухколесного робота с независимыми приводами, разработанная в рамках студенческого исследовательского проекта Феникс-3 [1],[2]. Модель отражает наиболее важные особенности двухколесных роботов и представляет собой систему из семи обыкновенных дифференциальных уравнений и включает в себя описания кинематики, динамики модели приводов и моторов. Для численных экспериментов, описываемых в этой статье модель SOFA-2009 была дополнена моделью нейросетевой системы управления и проведено исследование поведенческой реакции ”Движение в заданную точку с торможением”. Для обучения нейронной сети использовалась одношаговая процедура обучения ,детально описанная в [3],[4],[5]. Фактически, было продемонстрировано, что очень простая нейронная сеть может быть обучена решению задачи оптимального управления для перемещения в заданную точку двумерного пространства. Было проведено сравнение результатов обучения и продемонстрировано существование эффекта асимметрии обучения. Эффект заключается в наличии асимметрии в значениях весов, полученных с применением методики ”Обучение через показ” при условии, наличия асимметрии в обучающем образце. Было показано, что симметричное решение может быть получено при использовании модифицированной процедуры обучения, которая учитывает наличие линейных связей для весов разных каналов. Предложенная процедура обучения реализует метод множителей Лагранжа и является универсальным инструментом для теоретического анализа особенностей нейронных систем управления. 1. Тестовая модель SOFA –2009 SOFA это виртуальный двухколесный робот с независимыми приводами. Каждое из представляет собой жесткий диск диаметра Dw.. Расстояние между колесами is Lr , а моторы, редукторы и система управления размещаются между ними. Для каждого из колес имеется независимый привод от собственного мотора. Моторы имеют идентичную электромеханическую структуру. Движение робота вперед/назад происходит при одинаковой скорости вращения колес. Робот поворачивается, если колеса имеют разные скорости вращения. Кинематическая модель робота SOFA иллюстрируется рис.1.1. Мгновенная траектория робота представляет собой дугу с центром в R0(t). Положение центра робота описывается вектором Rc (t) и углом φ(t) между осью робота и осью х. Перемещение робота описывается тремя обыкновенными дифференциальными уравнениями, которые выводятся из базовых соотношений модели SOFA φ (t+∆t)- φ (t) = ∆ φ (для левого колеса) = ∆ φ (для правого колеса) (1.1) R0 (t) = R0 (t+∆) (1.2) Вся модель описывается системой из семи обыкновенных дифференциальных уравнений (1.3-1.9). Редуктора описываются уравнениями 1.6 и 1. 7 со свободными параметрами - k 12 , k21. Модель учитывает наличие момента инерции у колес Jr. Коэффициенты k 11 , k21 были включены в модель для придания ей гибкости. dRc Dw (1 2 ) sin dt 4 x dRc Dw (1 2 ) cos 4 dt y d Dw (2 1 ) 2 Lr dt k k11 d1 1 12 I1 (t ) Jr Jr dt d 2 k 22 k 2 21 I 2 (t ) Jr Jr dt dI R k 1 1 m I1 13 1 U1 (t ) Lm Lm Lm dt dI R k 1 2 m I 2 23 2 U 2 (t ), Lm Lm Lm dt (1.3-1.9) Модель SOFA-2009 определяется следующим набором параметров : Dw = 0.3 , Lr = 0.5, Jr = 0.25, k11 = k22 = 75 , k12= k21 = 10, Lm = 0.01, Rm = 0.1, k13= k23 = 1.5 abs(Vmax )=12 . Модель была реализована и верифицирована с помощью пакета Mathcad 14. Для моделирования движения использовалась библиотечная функция Rkadapt (.,.,). направление “вперед” Ось y φ(t) – угол наклона оси R(t) – мгновенный радиус поворота Rс (t)– положение центра робота Неподвижная система отсчета R0 (t) - мгновенный центр дуги ∆φ Ось x Рис. 1.1 Кинематическая модель робота SOFA 2. Упрощенная нейросетевая модель управления Для того, чтобы модель была пригодна для численных экспериментов она должна быть дополнена моделью системы управления. Используемая модель зависит от исследуемой проблемы. В этом разделе будет рассмотрена простая двухканальная система управления. Структура модели нейросетевой системы управления представлена на рис. 2.1. Эта система имеет 3 датчика и управляет поворотом робота относительно оси x. Эта система обучалась на примере поворота на /4 с торможением в конечной точке с помощью одношаговой процедуры обучения. Обучение в данном конкретном случае означает, что должны быть определены 6 весов (3 для каждого канала). Процедура обучения с учителем включает в себя три этапа: разработку набора обучающих примеров, определение весов и оценку качества обученной системы. Последний этап представляет собой моделирования поведения робота при повороте на углы, отличные от используемого при обучении. Одна и та же модель робота SOFA-2009 использовалась на всех трех этапах, но модель системы для 1 этапа отличалась от модели, использованной на этапах 2 и 3. При разработке обучающего примера графики управляющих напряжений подбираются “вручную”. Для вращения робота на месте правый и левый моторы должны вращаться с одинаковой скоростью в разных направлениях. Для таких относительно больших значений поворота, как /4 естественно использовать максимальное напряжение VMAX и знаки прикладываемого напряжения должны отличаться. Длительность импульса подбиралась итерационным образом, таким образом, чтобы скорость вращения колес была равной нулю при повороте на угол /4. Графики управляющих напряжений представлены на рис. 2.3(a), а график 2.3(b) представляет собой описание положения робота при действиях виртуального оператора. Во время второго этапа использовался вариант одношаговой процедуры обучения в одноканальном приближении. Одношаговая процедура обучения интерпретируется как задача аппроксимации для графика, описываемого соотношениями S1(T1) S2(T1) .. SNsen(T1) S1(Tk) S2(Tk) .. SNsen(Tk) S1(TNp) S2(TNp) .. SNsen(TNp) w1 A1(T1) w2 A1(T2) * = wNsen S1(Tp) S2(Tp) .. Sn(Tp) A1(TNp) (2.1) где Si(Tk) – показания i-сенсора в момент Tk, Nsen – количество сенсоров, Am(Tk) - управляющее напряжение на m –канале в момент времени Tk , wi - вес i-сенсора, Np – количество временных точек в обучающем образце. Более сложные варианты формулировки одношаговой процедуры обучения, в том числе и для нелинейной аппроксимации, описаны в деталях в [3]. В матричной форме система (2.1) выражается в виде S w = Ua (2.2) где S – прямоугольная матрица показаний датчиков Np* Nsen, w –вектор весов размерности Nsen, Ua – вектор управляющих напряжений с обучающего примера размерности Np. В рассматриваемом примере используется двухканальная система управления и (2.2) должна быть решена дважды для разных векторов управляющих напряжений (на левом и на правом моторах) с одной и той же матрицей показаний сенсоров. В общем случае система (2.2) сингулярная. Для того чтобы получить корректное по Адамару решение следует использовать процедуру регуляризации по Тихонову. Процедура регуляризации может быть интерпретирована как задача линейного программирования, а именно, поиск минимума целевой функции F(w) от вектора весов нейронной сети управления. min F(w) = (Sw - Ua, Sw – Ua) + (w,w) (2.3) w где -коэффициент регуляризацииis, имеющий относительно небольшую величину. В этом случае процедура обучения представляет собой решение системы линейных уравнений и веса нейронной сети вычисляются по формуле w = (ST S + E) –1 ST Ua (2. 4) где E – квадратная единичная матрица Nsen*Nsen . Некоторые результаты для описываемого примера представлены на рис. 2.3. В системе управления используются три датчика(Nsen=3 ): датчик углового рассогласования, датчик мгновенной угловой скорости и датчик рассогласования текущей угловой скорости и требуемой угловой скорости в конечной точке. Было использовано 100 временных точек для формирования обучающего примера (Np =100). Результаты обучения сети: вектор весов для левого канала Wt = [ 17.5 , 0.5, -0.5] ; вектор весов для правого канала Wt = [ -17.5, - 0.5, 0.5]. Абсолютные значения показаний одинаковы для второго и третьего сенсоров, потому что требуется нулевая скорость в конечной точке. В силу этого в результате обучения получаются одинаковые по абсолютной величине значения весов. Кроме этого, так как каналы управления симметричны (имеют одинаковые параметры), абсолютные значения одинаковых датчиков разных каналов весов совпадают. Результаты предварительной оценки качества обучения представлены на рис.2.3(с). Для оценки матрица S умножалась на вектор весов каждого канала, для того чтобы получить оценку величины управляющего напряжения. Как видно, получаемое таким образом напряжение превышает максимальное значение аккумулятора VMAX=12 в. Для устранения этого противоречия в структуру управляющей сети были введены акторные нейроны, представленные на рис. 2.1. Акторный нейрон накладывает пороговые ограничения на выходное напряжение, которое в этом случае определяется параметрами Vmax и Vmin. На рис. 2.3 d) представлены результаты моделирования поворота робота на угол π/4, (равное значению, использованному при обучении), под управлением нейронной сети с акторными нейронами и без них. В последнем случае параметры акторного нейрона были : Vmax =12В и Vmin =0В. Сенсоры Канал управления левым мотором Wleft = [w0l,w1l,w2l] Акторы (Vmax,Vmin) Uout для левого мотора Vin APS ASS Uout для правого мотора Vin AFFS Uout Канал управления правым мотором Wright = [w0r,w1r,w2r] Uout Uin Uin Рис. 2.1. Структура системы управления APS- датчик угла, ASS- датчик угловой скорости, AFSS –датчик рассогласовании по скорости в конечной точке На третьем этапе для оценки качества обучения использовался поворот на угол, отличающийся от угла в обучающем образце. Поворот на угол π под управлением нейронной сети представлен на рис. 2.4. Поворот моделировался для случаев с ограничением на максимальное напряжение аккумулятора и без. Из представленных графиков видно, что нейронная сеть справляется с поставленной задачей и робот оказывается в заданной точке фазового пространства. При наличии ограничений на максимальное значение питающего напряжения робот разгоняется на начальной стадии до максимально возможной скорости в начальной фазе и тормозит на финальной. Из этого простого примера следует следующий вывод. Конечно, акторный нейрон представляет собой решение проблемы с ограничениями, но универсальный подход требует, чтобы подобного рода ограничения учитывались в процедуре обучения. Более детальное описание методики проведения численных экспериментов с моделью робота SOFA-2009 представлено в работе [1], а примеры приведены на сайте [6]. a b ) ) с d ) ) Рис. 2. 3 Обучение простой нейросетевой системы управления a) Обучающий пример ”вращение влево на π/4 с торможением в конечной точке” b) Управляющие напряжения c) Предварительная оценка качества обучения d) Тестирование нейросетевой системы управления для ”вращение влево на π/4 “ торможением в конечной точке” с d ) ) Рис. 2.4 Вращение влево на π с торможением а) График угла поворота при наличии и без ограничений на Vmax b) Токи в моторах c) Фазовый портрет для системы без ограничений на Vmax ( начальная точка (0,0), конечная (3.14,0) ) d) Фазовый портрет для системы с ограничениями на Vmax ( начальная точка (0,0), конечная (3.14,0) Эффект асимметрии обучения Описанный выше подход был использован для изучения простой нейросетевой системы управления робота SOFA-2009, обучаемой на перемещение в заданную точку двумерной плоскости. Структура системы управления аналогична представленной на рис. 2.1. но количество увеличено до 9. Каждый канал управления использует один и тот же набор датчиков, описание которых представлено в таблице 3.1. Таблица 3.1 Сенсорная система виртуального робота SOFA-2009 3. Обоз DF DV AF AV AVF W1 W1F W2 W2F ОПИСАНИЕ ДАТЧИКА Расстояние до конечной точки от текущего положения центра робота D(F)-D(Rc(t)) Мгновенная линейна скорость робота (w1(t)+w2(t))/2 Расхождение по углу от требуемого в конечной точке и текущим углом φ (F)- φ (t) Мгновенная угловая скорость для угла между осью робота и осью x Dw/2*Lr*( w2(t)- w1(t)) Расхождение требуемой угловой скорости поворота в конечной точке и текущей dφ - Dw/2*Lr*( w2(t)-w1(t)) dt ( F) Текущая скорость вращения левого колеса w1(t) Расхождение между требуемой скоростью вращения левого колеса в конечной точке и текущей скоростью w1(F)- w1(t) Текущая скорость вращения правого колеса w2(t) Расхождение между требуемой скоростью вращения правого колеса в конечной точке и текущей скоростью w2(F)- w1(t) Замечание: F обозначает конечную точку, a D (*) - функция, которая вычисляет расстояние от начальной точки до текущей точки В таблице 3.2 представлены веса для правого и левого каналов управления. Эти веса получены в результате обучения управляющей нейронной сети с помощью разных обучающих примеров. Начальное положение робота было одно и то же, а именно, робот неподвижен и находится в точке (0,0) и направлен вдоль оси Y (угол между осью робота и осью X равен 0). Первые два набора весов соответствуют простым поведенческим реакциям: вращение влево и движение вперед. Третий, четвертый наборы весов соответствуют более сложной поведенческой реакции: робот должен переместится в предписанную точку пространства и остановится в ней с заданной ориентацией по углу и обучение этой поведенческой реакции осуществляется по разному. Представленные в таблице 3.2. данные для третьего обучающего примера демонстрируют наличие эффекта асимметрии обучения. Эффект заключается в том, что наличие асимметрии в обучающем образце приводит к асимметрии в значениях весов для разных каналов, соответствующих одним и тем же датчикам. Так как виртуальный робот имеет симметричные каналы управления, то из этого факта следует, что причиной асимметрии весов является асимметрия обучающего образца поведения. Это в свою очередь означает, что обученный таким образом робот будет вести себя по разному при выполнении задания в левую и правую полуплоскости. Таблица 3.2. Значения весов для разных обучающих образцов 1 2 3 4 5 S C L R L R L R L R L R 1 2 3 4- DF DV AF AV AVF W1 W1F W2 W2F 0.0 0.0 -17.5 0.093 -0.093 -0.155 0.155 0.155 -0.155 0.0 0.0 17.5 -0.093 0.093 0.155 - 0.155 - 0.155 0.155 0.59 0. 382 0.0 0.0 0.0 0. 382 -0. 382 0. 382 -0. 382 0.59 0. 382 0.0 0.0 0.0 0. 382 -0. 382 0. 382 -0. 382 0.239 0. 422 -18.5 0.077 -0.077 0.294 -0.294 0.55 -0.55 0.251 0. 416 16.0 -0.143 0.143 0.654 -0.654 0.178 -0.178 0.196 0. 424 -17. 3 0.109 -0.109 0.243 -0.243 0.605 -0.605 0.196 0. 424 17. 3 -0.109 0.109 0.605 -0.605 0.243 -0.243 0.196 0. 424 -17. 3 0.109 -0.109 0.243 -0.243 0.605 -0.605 0.196 0. 424 17. 3 -0.109 0.109 0.605 -0.605 0.243 -0.243 Вращение на месте влево на π/ 4 Перемещение из точки (0.0) в точку (- 4,4) Вращение на месте влево на π/ 4 и движение вперед из точки (0.0) в точку (- 4,4) Вращение на месте влево на π/ 4 и движение вперед из точки (0.0) в точку (- 4,4) и вращение на месте вправо на π/ 4 и движение вперед из точки (0.0) в точку (4,4) 5 - Вращение на месте влево на π/ 4 и движение вперед из точки (0.0) в точку (- 4,4). Обучение производилось с помощью модифицированной одношаговой процедуры, использующей метод множителей Лагранжа для обеспечения симметрии весов датчиков для разных каналов (абсолютных значений) Было проведено исследование двух способов обеспечения симметрии весов, которые представлены в таблице 3.2, как вариант 4 и вариант 5. Для четвертого набора весов из таблицы 3.2. для обучения использовался обучающий образец, сформированный из двух образцов: движение в точку (-4,4), лежащую в левой полуплоскости и движения в симметричную точку (4,4), лежащей в правой полуплоскости. Как это следует из данных приведенных в таблице 3.2., такой вариант обучения обеспечивает симметричность весов. Фактически, этот результат является подтверждением существования эффекта асимметрии обучения. Следует подчеркнуть, что как таковая одношаговая процедура обучения не накладывает ограничений на количество используемых обучающих примеров. Для того, чтобы обучить реального робота таким образом, необходимо несколько наборов экспериментальных данных, получаемых из перемещения робота под управлением оператора. Для сложных вариантов поведения с увеличенным количеством возможных степеней свободы при перемещении робота формирование обучающих примеров, обеспечивающих симметрию, может оказаться далеко не тривиальной задачей. В качестве еще одного варианта устранения эффекта асимметрии обучения возможно использование модифицированной одношаговой процедуры обучения. Главная идея этого подхода заключается в использовании метода множителей Лагранжа для учета явных соотношений между весами. Такой подход обеспечивает возможность устранения эффектов асимметрии обучения. Результаты обучения с использованием модифицированной процедуры представлены в таблице 3.2. и демонстрируют ее работоспособность. Одношаговая процедура обучения имеет самостоятельную ценность и описывается в следующей главе. Для реальных роботов ситуация окажется более сложной. Ясно, что экспериментальные данные приведут к появлению эффекта асимметрии экспериментальных данных. Это значит, что при обучении эффекты асимметрии обучения, эффекта асимметрии экспериментальных данных должны быть отделены от асимметрии реальных каналов управления. 4. Модифицированная одношаговая процедура обучения Одним из возможных способов решения проблемы эффекта асимметрии обучения является использование в явном виде требуемых соотношений между весами. Применительно к эффекту асимметрии обучения существуют явные линейные соотношения между весами разных каналов, что позволяет использовать метод множителей Лагранжа. Для реализации такого подхода требуется использовать более общую формулировку задачи 2.1)-(2.3), которая обеспечивает возможность учета взаимного влияния каналов. Упрощенный вариант такой формулировки описан ниже. Пусть Wk вектор весов для k-го канала управления. Wk = [ wk1, wk2, ……. wk Nsen ]T (4.1), где Nsen – количество сенсоров, используемых для формирования управляющего напряжения . В этом случае вектор весов всей системы управления может быть выражен в виде где W = [ W1 W2 Wk Wk WNc ]T (4.2), Nc – количество каналов управления во всей системе. Вектор управляющих напряжений может быть выражен аналогичным образом в виде Uak = [ Uak1 Uak2 ……. Uak Np ]T Ua = [ Ua1 Ua2 ……. UaNс ]T (4.3), (4.4). где Np - количество временных точек в обучающем образце. Проблема асимметрии обучения может быть решена, если учесть два типа линейных соотношений между весами wkj = wmj или wkj = - wmj (4.5), где максимальное значение для i равно количеству сенсоров (весов), которые используются в каждом из управляющих каналов. Для однослойной нейронной сети это Nsen. В общем случае, множество такого рода соотношений может быть представлено в виде LW=b (4.6), где L прямоугольная матрица. В этих обозначениях метод множителей Лагранжа может быть сформулирован как задача линейного программирования min F(W) = (SW - Ua, SW – Ua) + (W,W) + Dμ LW (4.7) W,μ где Dμ - диагональная матрица, сформированная из множителей Лагранжа μi для каждого из соотношений (4.5) или (4.6). Сущ ествует элегантная форма одношаговой процедуры обучения, если используются модифицированные вектора W и Ua для того, чтобы переписать (4.7). Пусть μ вектор, сформированный из множителей Лагранжа. μ = [μ1, μ2, ……. μ Nsen ]T (4.8), и вектор модифицированных переменных для задачи (4.7) Wμ = [ W1 W2 Wk Wk WNc μ]T 4.9) включает в себя этот вектор. Вектор Ua должен быть модифицирован аналогичным образом, и результирующий вектор обозначим как Uμ. Для рассматриваемого варианта это будет вектор Ua, к которому добавляется вектор b из (4.6). С использованием этих векторов одношаговая процедура обучения выражается в виде Wμ= (SμTSμ+ Eμ) -1 SμT Uμ (4.10). Этот метод тестировался применительно к проблеме асимметрии обучения, описанной выше. Как это описано выше, рассматриваемая система имеет два симметричных канала, каждый из которых использует один и тот же набор датчиков. Для этого варианта структуры системы управления может быть предложена специальная формулировка метода множителей Лагранжа, которая учитывает специфику структуры матрицы L. С учетом этого матрицы Sμ и Eμ имеют вид Sμ = ST S 0 E 0 T S S E1 E E1 0 Eμ = E 0 0 0 E 0 где E и E1 представляют собой составные блоки матрицы L, L = [E E1] 0 0 0 (4.11), (4.12). Вся совокупность линейных соотношений (4.7), обеспечивающих симметрию, представляется в виде LW=0 (4.13). Блок Е представляет собой диагональную матрицу с единицами для каждого из соотношений (4.5), (4.6). Блок E1представляет собой разреженную матрицу с элементами: 0, 1- для весов с равными абсолютными значениями и разными знаками,, -1 – для равных весов. Вектор Uμ формируется из вектора Ua и вектора b из (4.6), который представляет собой вектор из нулевых элементов. Этот вариант модифицированной процедуры был реализован с помощью Mathcad 14 и использовался при изучении эффекта асимметрии обучения. Результаты представлены в таблице 3.2 и подтверждают работоспособность предлагаемого метода. Заключение Представляется, что использование модели виртуального робота SOFA-2009 продемонстрировало свою эффективность для исследований и разработки теории систем управления, реализуемых на основе нейронных. С помощью этой модели теоретически показано, что должен существовать эффект асимметрии обучения. Ясно также, что должен существовать эффект асимметрии эксперимента. Это означает, что эффекты асимметрии обучения и эксперимента должны быть отделены от реально существующей асимметрии каналов управления. Эта проблема требует дальнейшего изучения. Полученные результаты показывают, что подкласс нейронных систем управления с линейными связями должен быть исследован как с точки зрения построения новых типов процедур обучения, так и с точки зрения построения новых методов прикладной математики. По крайней мере можно констатировать, что формулировка проблемы обучения в виде задачи линейного программирования с ограничениями (4.7) увеличивает набор инструментов, которые используют исследователи и инженеры, имеющие дело с системами управления на базе нейронных сетей. Заинтересованные лица могут найти набор задач, реализованных в среде Mathcad 14, включающих в себя модель SOFA-2009 с моделями систем управления на базе нейронных сетей, процедур обучения и т.п. на сайте [6] guap.ru > student design center>project SOFA-2009. Список литературы 1. Alexander M.Astapkovitch Virtual mobile robot SOFA-2009 Proc. International forum “Information and communication technologies and higher education - prioriries of modern society development”, p.7-15,SUAI Saint-Petersburg,2009 2. A.Burdukov Autonomous robot "Phoenix-3" Proc. International forum “Information and communication technologies and higher education - prioriries of modern society development”, p.41-47,SUAI Saint-Petersburg,2009 3. Astapkovitch A.M. Оne step learning procedure for neural net control system. Proc. International forum “Information systems. Problems, perspectives , innovation approaches” ,, p.3-9,SUAI Saint-Petersburg,2007 4. Д.А.Астапкович, А.А.Гончаров, А.С.Дмитриев, А.В.Михеев. Проект “Робот Феникс-1”. Сборник докладов пятьдесят девятой международной студенческой научно-технической конференции ГУАП., Часть I, Технические науки, 18-22 апреля 2006, г. Санкт-Петербург, с.211-216. 5. Тихонов А.Н, Арсенин В.Я. Методы решения некорректных задач., М., Наука,главная редакция физикоматематической литературы, 1979, с. 286. 6. http://guap.ru/guap/skb