introduction to computational robotics with sofa-2009 model
DESCRIPTION
Student research project Phoenix-3. Introduction to Computational Robotics with SOFA-2009 model. Alex Astapkovitch, Head of the Student Design Cent er State University of Aerospace Instrumentation Saint-Petersburg,Russia 2010. Computatonal robotics - what is it ?. - PowerPoint PPT PresentationTRANSCRIPT
Introduction to Computational RoboticsIntroduction to Computational Roboticswith SOFA-2009 modelwith SOFA-2009 model
Alex Astapkovitch,Alex Astapkovitch, Head of the Student Design CentHead of the Student Design Centerer
State University of Aerospace InstrumentationState University of Aerospace InstrumentationSaint-Petersburg,RussiaSaint-Petersburg,Russia
20102010
Student research project Phoenix-3
Computatonal robotics - what is it ?
- Computational robotics is the branch of computer science related with the control theory ;
- From theory point of view computational robotics has as the goal the understanding of investigated case with:
- the robot mode; - the environment model; - numerical simulation ;
- From practice point of view computational robotics is a efficient tool for the robot control system designer;
- We have computational chemistry, computational plasma physics and so on
So, why we have not a “ Computational Robotics “ ?
What for this report is ?-Goal of this report is to illustrate the computational robotics approach; Presented research was focused on neuron net control system:
- Virtual model SOFA-2009 was used with two channel neuron net control system with the supervised learning approach;
- Discovered phenomena - learning asymmetry effect ;
- Developed algorithm – modified one step learning procedure with Lagrange multiplyers method for linear relation between variables;
Virtual robot SOFA-2009 Virtual robot SOFA-2009 -It is as simple as possible model of two wheel robot ; -It is as simple as possible model of two wheel robot ;
Cinematics and dynamics models of virtual robot SOFA Cinematics and dynamics models of virtual robot SOFA
axe x
direction “forward”
φ(t) – robot angle position
axe y
axe xearth fixed frame
Rс (t)– robot center position vector
R0 (t) - instant center of arc
R(t) – instant rotation radius
φ (t+∆t)- φ (t) = ∆ φ (for left wheel) = ∆ φ (for right wheel) R0 (t) = R0 (t+∆t)
Basic relations:
Virtual robot SOFA-2009Virtual robot SOFA-2009
),(1
)(1
)(2
cos4
)(
sin4
)(
2223
22
1113
11
221
2222
121
1111
12
21
21
tULL
kI
L
R
dt
dI
tULL
kI
L
R
dt
dI
IJ
k
J
k
dt
d
IJ
k
J
k
dt
dLr
D
dt
d
D
dt
dR
D
dt
dR
mmm
m
mmm
m
rr
rr
w
w
y
c
w
x
c
Model SOFA-2009 is defined with parameters set :
Dw = 0.3 Lr = 0.5 Jr = 0.25k11 = k22 = 75k12 = k21 = 10 Rm = 0.1Lm = 0.01k13 = k23 = 1.5 Vmax = 12
Vmax is the maximal absolute value for accumulator voltage.
- Model includes dynamic equations, gear model for every wheel, motor model, control system model.
- The simplest as possible model consists of 7 ODE with at least 9 parameters.
Virtual robot SOFA-2009Virtual robot SOFA-2009
Uin left
Uin right
Model of the neuron net control system:Model of the neuron net control system:
Actor layer neuronVmax, Vmin
Uout Left Motor
Uout Right Motor
Actor neuron transfer function
Unlimited case
Vout
Vin
Vmax = 12 V
Vmax
Sensorlayer
S9
S1
S2 S3
Sensor neuron transfer function
Unlimited case
Sval
Sraw
Smax
Smax
Left motor control channelWLeft = [w1L…………..w9L]
Right motor control channelWRight = [w1R………W9R]
Uin = S*W
NAME SENSOR DESCRIPTION
DF Distance to final point robot center position from instant position D(F)-D(Rc(t))
FORMULA
(W1(t)+ W2(t))/2 Instant linear velocity DV
Difference between the robot inclination angle at the final point and the instant one
φ (F)- φ (t) AF
Instant robot axe inclination angle rotation speed Dw/2*Lr*( W2(t)- W1(t)) AV
Difference between the robot angle speed at the final point and the instant one
d φ - Dw/2*Lr*( W2(t)- W1(t))
dt ( F) AVF
Instant rotation speed for left and right wheelsW1(t),W2(t) W1(t), W2(t)
Difference between rotation speed at the final point for left(right) wheel and the instant one
W1(F)- W1(t) W2(F)- W2(t)
W1F,W2F
Note: F denotes the final point
Virtual robot SOFA-2009Virtual robot SOFA-2009
Supervized learningSupervized learning - “Learning” stands for the procedure of determination of weights; - “Learning” stands for the procedure of determination of weights;
S1(T1) S2(T1) .. Sn(T1)
S1(T2) S2(T2) .. Sn(T2)
……………………
S1(Tp) S2(Tp) .. Sn(Tp)
w1
w2
wn
Ua1(T1)
Ua1(T2)
Ua1(Tp)
* =
One step supervised learning (simplified form)
min F(w) = (Sw - Ua, Sw – Ua) + (w,w) w
Tichonov regularization formulation provides stable solution
w = (ST S + E) –1 ST Ua
Weights calculation with one step learning procedure :
S*w = Ua - the bad posed problem for w
S,U – learning sample set, w – unknown vector
Supervised learning procedureSupervised learning procedureExperiment with virtual robot includes at least three steps:
sample set generating and neuron net control system learning ; simulation of the robot dynamics with "learned "neuron net control system; research experiments;
1. SAMPLE GENERATING AND NEURON NET LEARNING
Final positionvector X(T1),velocity vector V(T1)
SOLUTION TABLE [ti, X (ti) ]
Sensor System Model
Weight Matrix Calculation W= (StS+γE) -1St Ua (one step procedure)
NEURON NET CONTROL SYSTEM STRUCTURE
Cauchy problem solution for[T0 -T1]
Control voltage matrix(vector Ua(t) for every motor ),that corresponds to robot mission
Initial positionvector X0
Robot model
Supervised learning procedureSupervised learning procedure
Initial and final positions, control net structure depends on researchPROBLEM
Cauchy Problem Solution
POSTPROCCESINGS
NEURON NET CONTROL SYSTEM MODEL
Ua = s(t)*w
Cauchy problem solution for autonomous ODE problem
Initialposition
Final position
Robot model cinematic and dynamic model
2. CONTROL SIMULATION
3. NUMERICAL EXPERIMENTS
Weights, received from learning procedure
S(t) - Sensor model
Virtual robot SOFA-2009Virtual robot SOFA-2009
rotation to left on π with limited and unlimited Vmax
motor currents for limited and unlimited voltage
phase portrait for unlimited case: start point (0,0),final (3.14,0)
phase portrait for limited Vmax: start point (0,0),final (3.14,0)
Sample of autonomous operation for π rotate task:
SOFA neuron net control system was learned with different samples :
Simple behavior
1 - Rotation in place on π/ 4 to left 2 - Moving from the point (0.0) to the point(- 4,4) Complex behavior 3 - Rotation in place on π/ 4 to left and moving from point (0.0) to the point (- 4,4) 4 - Rotation in place on π/ 4 to left and moving from point (0.0) to the point (- 4,4) and rotation in place on π/ 4 to right and moving from point (0.0) to the point (4,4) Generalized learning procedure
5 - Rotation in place on π/ 4 to left and moving from point (0.0) to the point (- 4,4). Robot was learned with using modified learning procedure with Lagrange multipliers to provide the symmetry for weights absolute meanings
Learning asymmetry effect
X
Y
Learning sample set : “Robot has to reach the prescribed point and stop at it”
Learning asymmetry effect Samp. Sensor
Chan.l DF DV AF AV AVF W1 W1F W2 W2F
1 L R
0.0 0.0
0.0 0.0
-17.5 17.5
0.093 -0.093
-0.093 0.093
-0.155 0.155
0.155 - 0.155
0.155 - 0.155
-0.155 0.155
2 L R
0.59 0.59
0. 382 0. 382
0.0 0.0
0.0 0.0
0.0 0.0
0. 382 0. 382
-0. 382 -0. 382
0. 382 0. 382
-0. 382 -0. 382
3 L R
0.239 0.251
0. 422 0. 416
-18.5 16.0
0.077 -0.143
-0.077 0.143
0.294 0.654
-0.294 -0.654
0.55 0.178
-0.55 -0.178
4 L R
0.196 0.196
0. 424 0. 424
-17. 3 17. 3
0.109 -0.109
-0.109 0.109
0.243 0.605
-0.243 -0.605
0.605 0.243
-0.605 -0.243
5 L R
0.196 0.196
0. 424 0. 424
-17. 3 17. 3
0.109 -0.109
-0.109 0.109
0.243 0.605
-0.243 -0.605
0.605 0.243
-0.605 -0.243
3 - Rotation in place on π/ 4 to left and moving from point (0.0) to the point (- 4,4) 4 - Rotation in place on π/ 4 to left and moving from point (0.0) to the point (- 4,4) and rotation in place on π/ 4 to right and moving from point (0.0) to the point (4,4) 5 - Rotation in place on π/ 4 to left and moving from point (0.0) to the point (- 4,4). Robot was learned with using modified learning procedure with Lagrange multipliers to provide the symmetry for weights absolute meanings
- WEIGHTS REFLECT ASYMMETRY OF USED LEARNING SAMPLE SET
Learning asymmetry effect
- From comparison of the 3 an 4 sample it can be concluded, that the learning asymmetry effect exists; - Effect results in the asymmetry of the weight values of the symmetry control channels if asymmetry sample is used for learning. To avoid this effect the symmetrical learning set has to be used;
- For real robot the situation is more complex. It is clear, that the experimental data will put on weight the experimental asymmetry effect ;
- It means, that the learning asymmetry effect and the experimental asymmetry effect influences have to be separated from the real asymmetry of control channels ;
Modified One Step Learning Procedure
• The one possible way to solve asymmetry problem is using the description of the relation between the weights in explicit form;
• For learning asymmetry there are exist linear relation between the same weights in the different channels, so it is possible to use Lagrange multiplier method;
• One step learning procedure on base of Lagrange multipliers method is proposed ( learning sample 5), that provide possibility
to take into account the existence of the linear relations for weights and avoid asymmetry effects also;
Modified One Step Learning Procedure
Let us Wk is the weight vector for k-th control channel Wk = [ wk1, wk2, ……. wk Nsen ]T In this case the weight vector for whole system can be expressed as W = [ W1 W2 Wk Wk WNc ]’
Actor vector can be expressed with the same manner Uak = [ Uak1 Uak2 ……. Uak Np ]’
Ua = [ Ua1 Ua2 ..... UaNс ]’
Learning asymmetry problem can be solved if one take into account the two type of linear relations between weights wkj = wmj or wkj = - wmj
In common way the set of this relation can be presented as L W = b
With the introduced above vectors Lagrange multipliers method for one step learning procedure can be formulated as linear programming optimization problem:
min F(W) = (SW - Ua, SW – Ua) + (W,W) + Dμ LW W,Dμ
Modified One Step Learning Procedure
The elegant form of the one step learning procedure exists, if the modified vectors W and Ua are used;
Let us μ is the vector that is formed from Lagrange multiplier μ = [μ1, μ2, ……. μ Nsen ]’
and let us introduce the modified vector of the independent variables
Wμ = [ W1 W2 Wk Wk WNc μ]’
Vector Ua has to be modified with the same manner and the resulted vector will denote as Uμ. This vector is formed from vector Ua and the added vector b.
With this vectors the one step learning procedure can be expressed as -1 Wμ= (Sμ’Sμ+ Eμ) Sμ’ Uμ
•This method was tested for the effect of asymmetry learning problem, described above. The results of the learning with this procedure are presented in the table (learning sample 5). So, case 4 and case 5 supports each other !
Supporting publications
1. Astapkovitch A.M. Learning Asymmetry Effect for the Neuron Net Control
Systems (to be published)
2. Astapkovitch A.M. 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
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
- MathCAD and MathLab examples library “Virtual robot SOFA-2009 with neural net control system” can be downloaded for free from the site http://guap.ru/guap > student design center > student projects > SOFA-2009