derivatives for design and control
play

derivatives for design and control with Jim and Simon review: - PowerPoint PPT Presentation

derivatives for design and control with Jim and Simon review: serial manipulator end effector position 2 3 1 2 motor angles = 1 forward kinematics (FK) what is ? i.e., given


  1. derivatives for design and control with Jim and Simon

  2. review: serial manipulator ๐’š end effector position ๐‘ฆ โˆˆ โ„ 2 ๐œ„ 3 ๐œ„ 1 ๐œ„ 2 โ‹ฎ motor angles ๐œพ = ๐œ„ 1 ๐œ„ ๐ฟ

  3. forward kinematics (FK) what is ๐’š ๐œพ ? i.e., given joint angles ๐œพ , what is the corresponding tip position ๐’š ? ๏ƒ  something like ๐’š ๐œพ = ๐‘ผ ๐ฟ ๐‘บ ๐ฟ โ‹ฏ ๐‘ผ 1 ๐‘บ 1 ๐‘ท // some big analytic // expression with a bunch // of sin(๐œ„ ๐‘— ) โ€™s and cos(๐œ„ ๐‘˜ ) โ€™s

  4. inverse kinematics (IK) what is ๐œพ โˆ— เทฅ ๐’š ? ๐’š , what is an optimal choice of joint angles ๐œพ โˆ— ? i.e., given joint target tip position เทฅ

  5. option 0: solve analytically

  6. option 1: use optimization minimize a suitable objective

  7. option 1a: derivative-free optimization requires no derivatives - when in doubt just use CMA-ES

  8. option 1b: derivative-based optimization may require 1 derivative (gradient)โ€ฆ gradient descent may require 2 derivatives (gradient and Hessian)โ€ฆ Newtonโ€™s method or be somewhere in the middleโ€ฆ Gauss-Newton, L-BFGS

  9. option 2: learn it ๐‘‚ build a large set of training data {(๐œพ ๐‘— , ๐’š ๐‘— )} ๐‘—=1 using forward kinematics, then train a deep net using tensor flow, and evaluate the deep net at ๐œพ

  10. option 3: invert kinematics using the real world

  11. option 1b: derivative-based optimization 1 ๐’š) ๐‘ˆ (๐’š ๐’’ โˆ’ เทฅ 2 (๐’š ๐’’ โˆ’ เทฅ Say the objective is ๐‘” ๐’š(๐’’) = ๐’š) ๐‘’๐‘” ๐œ–๐‘” ๐‘’๐’š ๐‘’๐’’ = gradient is // chain rule ๐œ–๐’š ๐‘’๐’’ ๐œ–๐‘” ๐œ–๐’š = (๐’š ๐’’ โˆ’ เทฅ ๐’š) is trivial to compute ๐‘’๐’š and for a serial manipulator, ๐‘’๐’’ can be computed analytically

  12. But what if ๐’š ๐’’ does not have an analytic expression? For example, static equilibrium of a finite element mesh: ๐’š ๐’’ = ๐‘๐‘ ๐‘• min ๐น(๐’š, ๐’’) ๐’š Still want to solve optimization problems of this form: min ๐’’ ๐‘” ๐’š ๐’’

  13. An example: topology optimization

  14. Modeling continuous Relation between Parameters and State โ€ข Observation : when we set parameters ๐’’ , we observe the state ๐’š as the result of simulation. โ€ข Although ๐’š are problem variables, they are not real DOFs โ€“ they are functions of the parameters, i.e., ๐’š = ๐’š(๐’’) โ€ข Map from parameters to state is ๐’š = simulate(๐’’) โ€ข For design, we need derivatives of ๐’š(๐’’) , ๐œ–๐‘” ๐œ–๐‘” d๐’š ๐œ–๐’’ = ๐œ–๐’š ๐‘’๐’’ โ€ข But how to compute these derivatives, ๐‘’๐’š ๐‘’simulation ๐‘’๐’’ = ? ๐‘’๐’’ โ€ข The derivative of an argmin ...? 14

  15. Differentiating the Map โ€ข Although we can evaluate the map ๐’š โ†’ ๐’š(๐’’) , this map is not available in closed-form (i.e., analytically ) โ€ข ๐’š โ†’ ๐’š(๐’’) requires minimizing a function, i.e., solving a system of nonlinear equations. โ€ข In general, it is impractical to compute derivatives of the minimization process. โ€ข But even though ๐’š โ†’ ๐’š(๐’’) is not given explicitly , the gradient of the objective ๐’†๐น ๐’‰ ๐’š, ๐’’ = ๐›‚ ๐ฒ E = ๐’†๐’š = ๐Ÿ provides this map implicitly . 15

  16. Differentiating the Map โ€ข Suppose that (๐’š , ๐’’ ) is a feasible pair, i.e., ๐’‰(๐’š, ๐’’) = ๐Ÿ . In other words, ๐’š is an equilibrium configuration for ๐’’ . โ€ข If we apply a parameter perturbation ฮ”๐’’ , the system will undergo displacements ฮ”๐’š such that it is again in equilibrium, ๐’‰(๐’š + ฮ”๐’š, ๐’’ + ฮ”๐’’) = ๐Ÿ โ€ข Since this has to hold for arbitrary parameter variations, we have ๐‘’๐’‰ ๐œ–๐’‰ ๐‘’๐’š ๐œ–๐’‰ ๐‘’๐’’ = ๐‘’๐’’ + ๐œ–๐’’ = ๐Ÿ // total derivative ๐œ–๐’š โ€ข If the Jacobian ๐›ผ ๐’š ๐’‰ is non-singular, we have โˆ’1 ๐œ–๐’‰ ๐‘’๐’š ๐œ–๐’‰ ๐‘’๐’’ = โˆ’ ๐œ–๐’š ๐œ–๐’’ 16

  17. Sensitivity Analysis โ€ข Used in many applications to quantify the sensitivity of a solution with respect to parameters ๐‘’๐’š ( ๐‘ป = ๐‘’๐’’ is also called the sensitivity matrix) โ€ข Widely for shape optimization, topology optimization, control, etc. 17

  18. option 1b: derivative-based optimization 1 ๐’š) ๐‘ˆ (๐’š ๐’’ โˆ’ เทฅ 2 (๐’š ๐’’ โˆ’ เทฅ Say the objective is ๐‘” ๐’š(๐’’) = ๐’š) ๐‘’๐‘” ๐œ–๐‘” ๐‘’๐’š ๐‘’๐’’ = gradient is // chain rule ๐œ–๐’š ๐‘’๐’’ ๐œ–๐‘” ๐œ–๐’š = (๐’š ๐’’ โˆ’ เทฅ ๐’š) is trivial to compute and for statically stable FEM (and for many, many other systems), ๐‘’๐’š ๐‘’๐’’ can be computed using sensitivity analysis

  19. application: soft IK say the control input ๐’’ are the contacted lengths of cables in a soft robot... ๐’š , what is the optimal control ๐’’ โˆ— ? given a target pose เทฅ ๐‘” ๐’š(๐’’) = 1 ๐’š) ๐‘ˆ ๐‘น(๐’š ๐’’ โˆ’ เทฅ 2 (๐’š ๐’’ โˆ’ เทฅ ๐’š)

  20. real-world robot ignals ๐’’ โˆ— optim imal control sig user-specified target pose เทฅ ๐’š

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend