Optimization of Closed-loop Multibody Systems print1 Jean-François Collard...
Transcript of Optimization of Closed-loop Multibody Systems print1 Jean-François Collard...
1
Jean-François Collard([email protected])
March 21st 2007
Optimization of Closed-loopMultibody Systems
Computer-aided analysis ofmultibody dynamics (part 2)
Cost function
Begin
End
Begin
End
Begin
End
Mathematical Optimization
A wedding between optimization and MBS ?
IntroductionAssembling constraints
Mechanism synthesis
ContextMBS optimization at UCLOptimization prerequisites
• Geometry• Kinematics• Dynamics
Multibody System analysis
2
MBS Optimization at UCL• Biomechanics (PhD thesis of M. Raison):
model identification using forward kinematics and inverse dynamics
• Multi-physics (IUAP demonstrator):comfort optimization of an Audi A6 equipped with a semi-active suspension
• Vehicle Dynamics (student thesis): optimization of a formula 3 on circuit, or a 2CV suspension
• Manipulator Kinematics (my PhD thesis): kinematical performance of 3D parallel robots
• Mechanisms Geometry (my PhD thesis): synthesis of steering mechanisms (Ackerman)
• …
IntroductionAssembling constraints
Mechanism synthesis
ContextMBS optimization at UCLOptimization prerequisites
MBS Optimization : “prerequisites”
Model formulation : assembling, equations of motion Assembling
Equations of motion
Model “fast” simulationCompact analytical formulation
Compact symbolical implementation (UCL)
Model portabilityAnalytical “ingredients”
Model exportation
Robustness
Efficiency
Flexibility
IntroductionAssembling constraints
Mechanism synthesis
ContextMBS optimization at UCLOptimization prerequisites
3
MBS Optimization : “prerequisites”Model formulation
Assembling : nonlinear constraint equations : h(q, t) = 0
Equations of motion
« DAE »
« ODE »
Reduction technique (UCL)
IntroductionAssembling constraints
Mechanism synthesis
ContextMBS optimization at UCLOptimization prerequisites
Optimization : “prerequisites”Model “fast” simulation
Compact analytical formulation
Compact symbolical implementation (UCL)Formalism
parameters
operators
m z + k z + m g = 0
+, -, ...
m, k, z, ...
..SymbolicGenerator(Robotran)
Audi A6 dynamics : real time simulation !
# flops
# bodies
LagrangeRecursive
Newton-Euler
IntroductionAssembling constraints
Mechanism synthesis
ContextMBS optimization at UCLOptimization prerequisites
4
MBS Optimization : “prerequisites”Model portability
Analytical “ingredients”
Model exportation
Reaction forces:Freact(q, q, q, m, …)
...
Inverse dynamics:Q(q, q, q, m, …)
...Direct dynamics:
q = f (q, m, I, F, L, …).. .
Direct kinematics:x = J(q) q. .
Inverse kinematics:q = (J-1)x. .
x.
. q
Q
Freact. q
SymbolicGenerator(Robotran)
MatlabSimulink
MultiphysicsPrograms (Amesim)
Optimizationalgorithms…
IntroductionAssembling constraints
Mechanism synthesis
ContextMBS optimization at UCLOptimization prerequisites
Optimization of Closed-loop MBS
Dealing with assembling constraintsArtificial penalty approach free-derivative search
Assembling penalty approach gradient-based algorithms
Comparison
Application to parallel manipulators (delta robot, Hexaslide robot)
Synthesis of mechanisms
Extensible-link approach + natural coordinates
Multiple local optima
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
5
Dealing with assembling constraintsNumerical resolution of assembling constraints
Constraints involving joint variables q :h(q) = 0
Coordinate partitioning :q = [u v]
Newton-Raphson iterative algorithm:vi+1 = vi – [∂h/∂v]-1 h(q)
h(q)
Multiple closed loops
?h(q) = 0
u v ?
Types of problems encountered :
Singularity
∂h/∂v = 0
u v2
v1
Unclosable
h(q) ≠ 0 ∀v
u v2
v1
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
u
v1
v2
Dealing with assembling constraintsArtificial Penalization
-0.15 -0.1 -0.05 0 0.050.05
0.15
0.2
0.25
x [m]
y [m
]
Feasible domain of assembling constraints
0.1
G
xxx
X
The optimizer call f(X) return value ?
NR OK
xxF
det(Jc) = 0.004
NR KO
FG X
f(X)
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
6
Dealing with assembling constraintsNumerical minimization of assembling constraints
Coordinate partitioning :q = [u v]
SQP iterative algorithm
h(q)
Multiple closed loops
?h(q) = 0
u v ?
Previous types of problems encountered :
Singularity
∂h/∂v = 0
u v2
v1
Unclosable
h(q) ≠ 0 ∀v
u v2
v1
u
v1
v2
Constraints involving joint variables q :min hT(q)h(q)
s.t. c(q)>=0v
Unique if c is well chosen MinimizedAvoidable if c is well chosen
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
Dealing with assembling constraintsAssembling Penalization
-0.15 -0.1 -0.05 0 0.050.05
0.15
0.2
0.25
x [m]
y [m
]
0.1
G
X • f* = cost function (best assembly)• h* = MIN. of assembling constraint• g = penalized cost function
G X
g(X)
B
B h*2
f*g
g = f* + w h*2
weighted factor
Zero-value domain of assembling constraints
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
7
ComparisonArtificial Penalization
Advantages:• g is differentiable since f and h* are• efficient use of gradient-based
algorithms• one parameter w to tune
Disadvantages:• computation of sensitivity analysis may
be expensive• local optimal solution
Assembling Penalization
h*2
f*g
g = f* + w h*2
BFG
fext
s
B
Δ
Advantages:• fext is easy to compute• possible use of simple free-derivative
search algorithms (e.g. Nelder-Mead Simplex, G.A.,…)
Disadvantages:• fext is not differentiable in F• three parameters to tune (G,s,Δ)• problems if domain is not convex
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
Application to Delta robot isotropyProblem statement
qx J=& &
1x&2x&
3x&
1q& 2q&
3q& J
3 dof
1q2q
3q
( )1 2 3, ,x x x
Rb
z
Rp
la
lb
3 dof
Objective : Maximize isotropy index over a 2cm sided cubeParameters : la, lb, z, Rb, Rp
( )1
1N
i icond JN
Isotropy index ==∑
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
8
Application to Delta robot isotropyOptimization results
Optimum design
Initial designOptimum values
Average isotropy = 95%la = 13.6 cmlb = 20 cmz = 13.5 cmRb = 13.1 cmRp = 10.4 cm
Using free-derivativealgorithm: Simplex method (Nelder-Mead)
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
Application to Hexaslide robot isotropyProblem statement
Parameters :Gz, l, RB, α, β, H, ψ
Objective :Maximize average dexterity over a 6-dimensional hypercube(3 positioning and 3 orienting coordinates)
Problem :Forward kinematic Jacobian dimensionaly inhomogeneous !
6 dof
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
9
Application to Hexaslide robot isotropyNormalizing characteristic length* Lc
Goal :Making the Jacobian matrix dimensionally homogenous
xx q
q
q
δδ
ϑ δϑδ
⎡ ⎤⎢ ⎥⎡ ⎤ ⎢ ⎥=⎢ ⎥ ⎢ ⎥⎣ ⎦⎢ ⎥⎣ ⎦
&&
&
No units
[m-1]
*Angeles J., Fundamentals of Robotic Mechanical Systems. Springer-Verlag, 1997.
[m-1]
[m-1]
cx
q
q
xq
Lϑ δϑ
δ
δδ⎡ ⎤⎢ ⎥
⎡ ⎤ ⎢ ⎥=⎢ ⎥ ⎢ ⎥⎣ ⎦ ⎢ ⎥
⎢ ⎥⎣ ⎦
&&
& =
Lc value ?It can also be obtained by optimization as an additional optimization variable.
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
Application to Hexaslide robot isotropy
Parameters :Gz, l, RB, α, β, H, ψ, Lc
Inspired from :J. Ryu & J. Cha, « Volumetric error analysis and architecture optimizationfor accuracy of HexaSlide type parallel manipulators », Mechanism andMachine Theory 38 (2003) 227-240.
Initial design
Optimal design
Optimum valuesAverage isotropy = 50%
Gz = 0.456 ml = 1.676 m
RB = 0.521 mα = 48°β = 47°
H = 0.276 m= 104.4°
Lc = 0.002 mm
IntroductionAssembling constraints
Mechanism synthesis
Artificial penaltyAssembling penaltyApplications
Optimization results
10
Mechanism synthesisInitial mechanism Optimal mechanism
Target
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
Mechanism synthesisProblem statement
Requirements
Variables: point coordinates & design parameters
Constraint: assembling the mechanism
Function-generationPath-following ORObjective:
δi δo
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
11
Mechanism synthesisExtensible-link model
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
Mechanism synthesisExtensible-link model
Advantage: no assembling constraints
( )( ) ( )( )1, 1
1min , ,2
N T
i=
− −∑N
i i i il f fd t f l K d t f l
KObjective:
Non-LinearLeast-SquaresOptimization
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
12
Mechanism synthesisMultiple solution with Genetic Algorithms
Different local optima !
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
Mechanism synthesisOptimization strategy
Find equilibrium ofeach configuration
Group grid points w.r.t.total equilibrium energy
Perform global synthesisstarting from best candidates
Create grid overthe design space
Refine possibly the grid
7x7 grid = 49 points
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
13
Mechanism synthesisOptimization strategy
Find equilibrium ofeach configuration
Group grid points w.r.t.total equilibrium energy
Perform global synthesisstarting from best candidates
Create grid overthe design space
Refine possibly the grid
Optimization parameters:ONLY point coordinates
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
Mechanism synthesisOptimization strategy
Find equilibrium ofeach configuration
Group grid points w.r.t.total equilibrium energy
Perform global synthesisstarting from best candidates
Create grid overthe design space
Refine possibly the grid
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
14
Mechanism synthesisOptimization strategy
Find equilibrium ofeach configuration
Group grid points w.r.t.total equilibrium energy
Perform global synthesisstarting from best candidates
Create grid overthe design space
Refine possibly the grid
4 groups = 4 candidates
Global synthesis
2 local optima:
Optimization parameters:point coordinates
AND design parameters
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
Mechanism synthesisOptimization strategy
Find equilibrium ofeach configuration
Group grid points w.r.t.total equilibrium energy
Perform global synthesisstarting from best candidates
Create grid overthe design space
Refine possibly the grid
4 groups = 4 candidates
2 local optima:
Global synthesisOptimization parameters:
point coordinatesAND design parameters
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
15
Mechanism synthesisApplication to six-bar linkage: multiple local optima
83521 gridpoints
284 groups
14 local optima
1 « global »optimum
Additionaldesign criteria
IntroductionAssembling constraints
Mechanism synthesis
IntroductionExtensible-link modelMultiple local optima
Thank you for your attention