Presentation is loading. Please wait.

Presentation is loading. Please wait.

역운동학의 구현과 응용 Implementation of Inverse Kinematics and Application 서울대학교 전기공학부 휴먼애니메이션연구단 최광진

Similar presentations


Presentation on theme: "역운동학의 구현과 응용 Implementation of Inverse Kinematics and Application 서울대학교 전기공학부 휴먼애니메이션연구단 최광진"— Presentation transcript:

1 역운동학의 구현과 응용 Implementation of Inverse Kinematics and Application 서울대학교 전기공학부 휴먼애니메이션연구단 최광진 kjchoi@graphics.snu.ac.kr

2 Content What is Inverse Kinematics? Redundancy Basic Method NLP-based method Jacobian-based method Issues Resolving Redundancy Multiple Goals Application : Motion Retargetting

3 What is Inverse Kinematics? Forward Kinematics Base End Effector ?

4 What is Inverse Kinematics? Inverse Kinematics Base End Effector

5 What does looks like? ? Base End Effector

6 Solution to Our example Number of equation : 2 Unknown variables : 3 Infinite number of solutions !

7 Redundancy  System DOF > End Effector DOF Our example System DOF = 3 End Effector DOF = 2

8 Redundancy A redundant system has infinite number of solutions Human skeleton has 70 DOF Ultra-super redundant How to solve highly redundant system?

9 Content What is Inverse Kinematics? Redundancy Basic Method NLP-based method Jacobian-based method Issues Resolving Redundancy Multiple Goals Application : Motion Retargetting

10 What is NLP? Non Linear Programming Method to optimize a nonlinear function Example Objective function Constraint Iterative algorithm

11 NLP-based Method Inverse Kinematics problem as non-linear optimization problem Minimization of Goal Potential Function Zhao and Badler, 1994, ACMTOG

12 Goal Potential Function “ Distance ” from the end effector to the goal Function of joint angles : G(  )

13 Our Example Base End Effector Goal distance

14 Goal Potential Function Position Goal Orientation Goal Position/Orientation Goal

15 Our Example Goal Potential Function

16 Nonlinear Optimization Recasted Constrained Optimization Problem

17 Nonlinear Optimization Available NLP Packages LANCELOT DONLP2 MATLAB Etc...

18 Quiz Will G(  ) be always zero? No : Unreachable Workspace Will the solution be always found? No : Local Minima/Singular Configuration Will the solution be always unique? No : Redundancy

19 Handling Singularity

20 Singular Configuration Causes infinite joint velocity Occurs when any cannot achieve given Example Fully stretched limbs

21 Remedy For Jacobian-based method Damped pseudo inverse Dexterity measure Clamping For nonlinear optimization method Try again with another initial value

22 Parametric Singularity Gimbal Lock in Euler angle representation When a degree of freedom is lost, the gimbals is said to “ lock ” Consider a y-roll of 90 degrees which aligns the x and z axis Remedy : Quaternion

23 Content What is Inverse Kinematics? Redundancy Basic Method NLP-based method Jacobian-based method Issues Resolving Redundancy Multiple Goals Application : Motion Retargetting

24 Differential Kinematics : Jacobian Matrix Linearly relates end-effector change to joint angle change

25 Differential Kinematics Our Example

26 Differential Kinematics Is J always invertible? No! Remedy : Pseudo Inverse

27 Null space The null space of J is the set of vectors which have no influence on the constraints The pseudoinverse provides an operator which projects any vector to the null space of J

28 Utility of Null Space The null space can be used to reach secondary goals Or to find comfortable positions

29 Null Space

30 Calculating Pseudo Inverse Gaussian Elimination Singular Value Decomposition

31 How Can We Get From ?

32 Integrating Problems Initial tracking error Numerical drift Remedy Error feedback

33 Discretization

34 Open-loop vs. Closed-loop scheme

35 Content What is Inverse Kinematics? Redundancy Basic Method NLP-based method Jacobian-based method Issues Resolving Redundancy Multiple Goals Application : Motion Retargetting

36 Redundancy Is Evil Multiple choices for one goal What happens if we pick any of them?

37 Redundancy Is Good We can exploit redundancy Additional objective Minimal Change Similarity to Given Example Naturalness

38 Minimal Change Pseudo Inverse Solution Minimal velocity norm solution Minimal acceleration norm solution Penalty Term in Goal Potential Function

39 Similarity to Given Example Adding homogeneous solution term to the pseudo inverse solution New Goal Potential Function

40 Naturalness Based on observation of natural human posture Neurophysiological experiments Example Pointing task with pen stylus Linear mapping between shoulder joint and pen stylus in spherical coordinate system Analytic solution for human arm endgame.mov

41 Content What is Inverse Kinematics? Redundancy Basic Method NLP-based method Jacobian-based method Issues Resolving Redundancy Multiple Goals Application : Motion Retargetting

42 Multiple Goals

43 Conflict Between Goals base ee 2 ee 1

44 Conflict Between Goals base ee 2 ee 1 Goal 1

45 Conflict Between Goals base ee 2 Goal 2 ee 1

46 Conflict Between Goals base ee 2 ee 1 Goal 1 Goal 2

47 Conflict Between Goals base ee 2 ee 1 Goal 1 Goal 2

48 Handling Multiple Goals Weighted sum of each goal potential function Jacobian-based method Same formulation No weighting

49 Content What is Inverse Kinematics? Redundancy Basic Method NLP-based method Jacobian-based method Issues Resolving Redundancy Multiple Goals Application : Motion Retargetting

50 Summary Inverse Kinematics Solver NLP-based Solver Jacobian-based Solver Issues Resolving Redundancy Multiple Goals Motion Retargetting

51 Thank You


Download ppt "역운동학의 구현과 응용 Implementation of Inverse Kinematics and Application 서울대학교 전기공학부 휴먼애니메이션연구단 최광진"

Similar presentations


Ads by Google