Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Direct & Inverse Kinematics Algorithmic Robotics and Motion Planning (0368.4010.01) Instructor: Prof. Dan Halperin Direct & Inverse Kinematics 1 Overview Kinematics Introduction to Protein Structure A kinematic View of Loop Closure Direct & Inverse Kinematics 2 Overview Kinematics the science of motion that treats the subject without regard to the forces that cause it Introduction to Protein Structure A kinematic View of Loop Closure Direct & Inverse Kinematics 3 Direct & inverse kinematics of manipulators What are we trying to do ? (direct) ??? Go right !!! Direct & Inverse Kinematics 4 Direct & inverse kinematics of manipulators What are we trying to do ? (inverse) ??? Take the ball !!! Direct & Inverse Kinematics 5 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics Inverse kinematics Direct & Inverse Kinematics 6 Spatial description and transformation We need to be able to describe the position and the orientation of the robot’s parts Suppose there’s a universe coordinate system to which everything can be referenced. Direct & Inverse Kinematics 7 Spatial description and transformation We need to be able to describe the position and the orientation of the robot’s parts (relative to U) U universe coordinate system What’s its position (“reference point”) ? What’s its orientation ? Direct & Inverse Kinematics 8 Direct & Inverse Kinematics Spatial description and transformation • Spatial description • Transformations • Presentation of orientation Direct kinematics Inverse kinematics Direct & Inverse Kinematics 9 Positions, orientations and frames The position of a point p relative to a coordinate system A (Ap): px A p py p z A p ZA YA XA Direct & Inverse Kinematics 10 Positions, orientations and frames The orientation of a body is described by a coordinate system B attached to the body, relative to A (a known coordinate system). ZA ZB YA XB XA YB Direct & Inverse Kinematics 11 Positions, orientations and frames The orientation of a body is described by a coordinate system B attached to the body, relative to A (a known coordinate system). A B A A A R XB YB Z B X B X A YB X A Z B X A X B YA YB YA Z B YA X B Z A YB Z A Z B Z A cosinus of the angle Direct & Inverse Kinematics 12 Positions, orientations and frames A frame is a set of 4 vectors giving the position and orientation. Example: frame B B A B A R, PBorg ZB A P Borg ZA XB YB YA XA Direct & Inverse Kinematics 13 Positions, orientations and frames Remember the robot’s part: ZB A PBorg ZA XB YA XA position Direct & Inverse Kinematics YB orientation 14 Direct & Inverse Kinematics Spatial description and transformation • Spatial description • Transformations • Presentation of orientation Direct kinematics Inverse kinematics Direct & Inverse Kinematics 15 Mapping Until now, we say how to describe positions, orientations and frames. We need to be able to change descriptions from one frame to another: mapping. Mappings: – translated frames – rotated frames – general frames Direct & Inverse Kinematics 16 Mappings involving translated frames Expressing a point Bp in terms of frame {A}, when {A} has the same orientation as {B}: A p p pBorg B A B A p ZB p A pBorg ZA YA YB XB XA Direct & Inverse Kinematics 17 Mappings involving rotated frames Expressing a vector Bp in terms of frame {A}, when the origins of frames {A} and {B} are coincident: B ZA ZB p YA XB XA YB Direct & Inverse Kinematics 18 Mappings involving rotated frames Ap‘s components are Bp’s projections onto the unit directions of {A}. A Remember the rotation matrix B R : it’s columns are the unit vectors of {B} expressed in {A}. Thus: A P R P A B B Direct & Inverse Kinematics 19 Mappings involving rotated frames: example Given:frame {B} is rotated relative to frame {A} about Z by 30 degrees, and BP. Calc: AP YA ZA =ZB YB B p XA XB Direct & Inverse Kinematics 20 Mappings involving rotated frames: example Sol: X B X A YB X A X Y A R B B A YB YA X B Z A YB Z A cos 30 cos 60 0 cos120 cos 30 0 ZB X A Z B YA Z B Z A 0 0 1 exact computation !? And : A P BA R B P ! Direct & Inverse Kinematics 21 Mappings involving general frames {A} and {B} has different origins and orientations. Vector offset between origins: ApBorg A {B} is rotated in respect to {A}: B R A ZB p B p A pBorg ZA XB YB YA XA Direct & Inverse Kinematics 22 Mappings involving general frames First, describe Bp relative to a frame that has the same orientation of {A}, but whose origin coincides with the origin of {B} Then add ApBorg for the translation Thus: A P R P PBorg A B B A A ZB p B p A pBorg ZA XB YB YA XA Direct & Inverse Kinematics 23 Mappings involving general frames “Homogeneous transform”: A P BA R 1 0 0 0 A A B P B T P A B PBorg P 1 1 A “transform” specifies a frame. Direct & Inverse Kinematics 24 Multiplication of transforms Given Cp. We want to find Ap. ZC C p A p ZB YC XC ZA XB YB YA XA Direct & Inverse Kinematics 25 Compound transforms Given Cp. We want to find Ap. Frame {C} is known relative to frame {B}, and frame {B} is known relative to frame {A}. B P CB T C P and A P BA T B P T T T A C A B B C BA RCB R 0 0 0 A B R B PCorg A PBorg 1 Direct & Inverse Kinematics 26 Inverting a transform Frame {B} is known relative to frame {A} We want the description “frame {A} relative to frame {B}” Straightforward way: compute the inverse matrix (of a 4x4 matrix) Direct & Inverse Kinematics 27 Inverting a transform Frame {B} is known relative to frame {A} We want the description “frame {A} relative to frame {B}” Better way: – Compute AB R ( BA R T ) – Compute APBorg: 0 B ( A PBorg ) BA R A PBorg B PAorg B PAorg BA R A PBorg BA RT A PBorg Direct & Inverse Kinematics 28 Inverting a transform Frame {B} is known relative to frame {A} We want the description “frame {A} relative to frame {B}” Better way: A T A T A R R PBorg B B B AT 1 0 0 0 Direct & Inverse Kinematics 29 Transformations: example Direct & Inverse Kinematics 30 Direct & Inverse Kinematics Spatial description and transformation • Spatial description • Transformations • Presentation of orientation Direct kinematics Inverse kinematics Direct & Inverse Kinematics 31 Presentation of Orientation Rotation matrices are useful as operator. Still, it’s “unnatural” to have to give elements of a matrix with orthonormal columns as input. There are several presentations which make that input process easier: – – – – Fixed angles Euler angles Euler parameters Quaternions Direct & Inverse Kinematics 32 Fixed angles X-Y-Z fixed angles – Start with 2 frames: a fixed reference frame {A} and a coinciding frame {B} – First rotate {B} by γ about XA, then by β about YA and finally by α about ZA. – The equivalent rotation matrix is: 0 c s 0 c 0 s 1 0 A c 0 0 1 0 0 c s B RXYZ ( , , ) s 0 0 1 s 0 c 0 s c c c c s s s c c s c s s s c s s s c c s s c c s s c s c c Direct & Inverse Kinematics 33 Euler angles Z-Y-X Euler angles – Start with 2 frames: a moving reference (Euler angles) frame {B} and a coinciding fixed frame {A} – First rotate {B} by α about ZB, then by β about YB and finally by γ about XB. – The equivalent rotation matrix is: c s 0 c 0 A c 0 0 1 B RZ 'Y ' X ' ( , , ) s The final result 0 0 1 s 0 is the same as c c c s s s c X-Y-Z fixed s c s s s c c angles!!! s c s Direct & Inverse Kinematics s 1 0 0 c 0 c s c 0 c s 0 s c s s s s c c s c c 34 Fixed & Euler angles In general: 3 rotations taken about fixed axes (fixed angles) yield the same final orientation as the same 3 rotations taken in opposite order about the axes of the moving frame (Euler angles). There are other angle-set conventions: Z-Y-Z, etc. (both for fixed and moving reference frames). Direct & Inverse Kinematics 35 Euler parameters Given an equivalent axis K=[KX KY KZ]T (a unit vector we want to rotate about) and an angle θ, the Euler parameters are defined as: 2 2 2 1 k X sin , 2 kY sin , 3 kZ sin , 4 cos 2 The rotation matrix Rε is: 1 2 22 2 32 2(1 2 3 4 ) 2(1 3 2 4 ) 2 2 R 2(1 2 3 4 ) 1 21 2 3 2( 2 3 1 4 ) 2(1 3 2 4 ) 2( 2 3 1 4 ) 1 212 2 22 Direct & Inverse Kinematics 36 Quaternions Definition: a generalization of complex numbers, obtained by adding the elements i, j, and k to the real numbers, where i, j, and k satisfy: i2=j2=k2=ijk=-1. a+bi+cj+dk, with a,b,c and d real numbers Quaternion’s conjugate: a-bi-cj-dk Quaternions are associative, distributive and not commutative. Another representation: a+vector(b,c,d) Direct & Inverse Kinematics 37 Quaternions A rotation about the unit vector K=[KX KY KZ]T by an angle θ, can be computed using the quaternion: q (cos , K sin ) 2 2 p’, the rotation of point p(0,pX,pY,pZ), is given by: p ' qpq Rotations may be contatenated: q2 (q1 pq1 )q2 (q2q1 ) p(q1 q2 ) (q2q1 ) pq2q1 q’s elements are the same as the Euler parameters! Direct & Inverse Kinematics 38 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics – – – – – Link description Link-connection description Affixing frames to links Manipulator kinematics Example Inverse kinematics Direct & Inverse Kinematics 39 Link Description Think of the manipulator as a chain of bodies (links) connected by joints. We will consider manipulators constructed with joints of 1 degree of freedom (DOF): revolute and prismatic joints. The links are numbered from 0 (immobile base) to n (free end of the arm). Direct & Inverse Kinematics 40 Link Description Direct & Inverse Kinematics 41 Link Description Direct & Inverse Kinematics 42 Link Description Joint axis i: the line about which link i rotates relative to link i-1 link i-1 can be specified by 2 numbers: link length ai-1 and link twist αi-1 Link length and twist are sufficient to define the relation between any 2 axes in space Direct & Inverse Kinematics 43 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics – – – – – Link description Link-connection description Affixing frames to links Manipulator kinematics Example Inverse kinematics Direct & Inverse Kinematics 44 Link-connection description Neighboring links have a common axis 2 parameters define the link-connection: – Link offset di: the distance along the common axis from one link to the next – Joint angle θi: amount of rotation about the common axis The link offset di is variable if joint i is prismatic The joint angle θi is variable if the joint is revolute Direct & Inverse Kinematics 45 Link-connection description Direct & Inverse Kinematics 46 Link-connection description variable offset di variable angle θi Direct & Inverse Kinematics 47 First and last link in the chain The link length ai, and the link twist αi depend on the joint axis i and i+1. Convention: a0=an=0 and α0=αn=0 Similar for the link offset di and the joint angle θi : if joint 1 is revolute, then d1=0. if joint 1 is prismatic, then θ1=0. Direct & Inverse Kinematics 48 Denavit-Hartenberg notation Any robot can be described kinematically by 4 quantities for each link: – 2 for the link – 2 to describe the link’s connection For revolute joints, θi is called the joint variable (the other 3 quantities are fixed). For prismatic joints, di is the joint variable (the other 3 quantities are fixed). Direct & Inverse Kinematics 49 Denavit-Hartenberg notation The definition of mechanics by means of these quantities is called the DenavitHartenberg notation. Direct & Inverse Kinematics 50 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics – – – – – Link description Link-connection description Affixing frames to links Manipulator kinematics Example Inverse kinematics Direct & Inverse Kinematics 51 Affixing frames to links We define a frame attached to each link: frame {i} is attached rigidly to link {i} Convention: – the origin is located where the “link length line” ai intersects the joint axis – the Z axis is coincident with the joint axis – the X axis points along ai, to the direction from joint i to joint i+1 – The Y axis is formed by the right-hand rule Direct & Inverse Kinematics 52 Affixing frames to links Direct & Inverse Kinematics 53 First and last link in the chain Frame {0} is the immobile base (link 0) of the robot. Thus a0=0 and α0=0. If joint 1 is revolute, then d1=0. If joint 1 is prismatic, then θ1=0. If joint n is revolute, then Xn’s direction is the same as Xn-1’s (θ1=0), and {n}’s origin is the intersection of Xn-1 and axis n when dn=0. Direct & Inverse Kinematics 54 Example i αi-1 ai-1 di θi 1 0 0 0 θ1 2 0 L1 0 θ2 3 0 L2 0 θ3 Direct & Inverse Kinematics 55 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics – – – – – Link description Link-connection description Affixing frames to links Manipulator kinematics Example Inverse kinematics Direct & Inverse Kinematics 56 Manipulator kinematics We want to construct the transform that defines frame {i} relative to frame {i-1}, as a function of the four link parameters Each transform will be a function of only 1 joint variable Each link has his frame, thus the kinematics problem has been broken into n subproblems ii 1T Direct & Inverse Kinematics 57 Manipulator kinematics Direct & Inverse Kinematics 58 Manipulator kinematics Each transform can be written as a combination of a translation and a rotation The single transformation that relates frame {n} to frame {0}: 0 n T T T 0 1 1 2 n 1 n T Direct & Inverse Kinematics 59 Manipulator kinematics General form: cos i sin cos i i 1 i 1 T i sin i sin i 1 0 sin i cos i cos i 1 cos i sin i 1 0 Direct & Inverse Kinematics 0 sin i 1 cos i 1 0 ai 1 sin i 1di cos i 1di 1 60 Frames with standard names Direct & Inverse Kinematics 61 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics – – – – – Link description Link-connection description Affixing frames to links Manipulator kinematics Example Inverse kinematics Direct & Inverse Kinematics 62 Example: PUMA 560 PUMA 560 is a 6 DOFs industrial robot with all rotational joints (6R mechanism) Direct & Inverse Kinematics 63 Example: PUMA 560 PUMA 560 is a 6 DOFs industrial robot with all rotational joints (6R mechanism) Direct & Inverse Kinematics 64 Example: PUMA 560 Frame {0} and Frame {1} coincides when θ1=0. The joint axes Z4, Z5 and Z6 (wrist’s joints) intersect at a common point. Z4, Z5 and Z6 are mutually orthogonal. Direct & Inverse Kinematics 65 Example: PUMA 560 Frames and link parameters: Direct & Inverse Kinematics 66 Example: PUMA 560 Frames and link parameters: Direct & Inverse Kinematics 67 Example: PUMA 560 Frames and link parameters: αi-1 ai-1 di θi 0 0 θ1 -90º 0 0 θ2 a2 d3 θ3 4 -90º a3 d4 θ4 5 90º 0 0 θ5 6 -90º 0 0 θ6 1 2 3 0 0 Direct & Inverse Kinematics 68 Example: PUMA 560 Link transformations: c1 s1 0 0 s c 0 0 1 0 1 1T 0 0 1 0 0 0 0 1 c 2 s 2 0 0 0 0 1 0 1 2T s 2 c 2 0 0 0 0 0 1 c3 s3 0 a2 s c 0 0 3 3 2 3T 0 0 1 d3 0 0 0 1 c 4 3 0 T 4 s 4 0 c5 4 0 T 5 s5 0 c 6 5 0 T 6 s 6 0 Direct & Inverse Kinematics s 4 0 c 4 0 a3 1 d4 0 0 0 0 1 s5 0 0 0 1 0 c5 0 0 0 0 1 s 6 0 0 0 1 0 c 6 0 0 0 0 1 69 Example: PUMA 560 The kinematics equations of the PUMA 560: 0 6 T 10 T 12 T 32 T 34 T 54 T 56 T r11 r12 r13 p X r r r p 21 22 23 Y r31 r32 r33 pZ 0 0 0 1 With : r11 c1[c23 (c5c6 s4 s5 ) s23 s5c5 ] s1 (s4c5c6 c4 s6 ), r21 s1[c23 (c4c5c6 s4 s6 ) s23 s5c6 ] c1 ( s4c5c6 c4 s6 ), r31 s23 (c4 c5c6 s4 s6 ) s23 s5c6 , r12 c1[c23 (c4c5c6 s4c6 ) s23 s5c6 ] s1 (c4c6 s4c5 s6 ), r22 s1[c23 (c4c5 s6 s4c6 ) s23 s5 s6 ] c1 (c4c6 s4c5 s6 ), r32 s23 (c4c5 s6 s4c6 ) c23 s5 s6 , p X c1[a2c2 a3c23 d 4 s23 ] d3 s1 , r13 c1 (c23c4 s5 s23c5 ) s1s4 s5 , pY s1[a2c2 a3c23 d 4 s23 ] d3c1 , r23 s1 (c23c4 s5 s23c5 ) c1s4 s5 , pZ a3 s23 a2 s2 d 4c23 , r33 s23c4 s5 s23c5 . Direct & Inverse Kinematics 70 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics Inverse kinematics – About the problem – Method of solution – Example Direct & Inverse Kinematics 71 About the problem We now want to compute the set of joint variables, given the desired position and orientation of the tool relative to the station. The problem is non-linear: given 0n T, find the values of θ1,…,θn . These equations can be non-linear, transcendental. Direct & Inverse Kinematics 72 About the problem Consider the PUMA 560: – Given the matrice 0 , solve PUMA 560’s 6T kinematics equations for the joint angles θ1 through θ6. – We get 3 independent equations from the rotation-matrix part of 06 Tand 3 equations from the position-vector part of 06 T. – Thus: 6 nonlinear, transcendental equations and 6 unknowns, and this for a “very simple” 6 DOFs manipulator! Direct & Inverse Kinematics 73 About the problem We must ask the following questions: – Is there a solution? – Are there several solutions? – How to solve the problem? Direct & Inverse Kinematics 74 Workspace If the goal (desired position and orientation) is in the reachable workspace, then there’s at least 1 solution. The reachable workspace is dependent on the manipulator. There might be several solutions. We won’t cover the following considerations: obstacles, limits on joint ranges,... Direct & Inverse Kinematics 75 Multiple solutions Direct & Inverse Kinematics 76 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics Inverse kinematics – About the problem – Method of solution – Example Direct & Inverse Kinematics 77 Method of solution There’s no general algorithm Consider a manipulator as “solvable” if it is possible to calculate all the solutions. Manipulator solution strategies might be split into 2 classes: closed-form and numerical solutions (numerical solutions won’t be covered – generally slower because of their iterative nature). Direct & Inverse Kinematics 78 Method of solution closed-form solutions methods are solutions methods based on analytic expressions or on the solution of a polynomial of degree 4 or less. There’s a general numerical solution for which all “6 DOFs in a single chain” system with revolute and prismatic joints are solvable! Only on special cases can they be solved analytically. Direct & Inverse Kinematics 79 Method of solution There are several closed-form solution strategies. We’ll discuss the following 2: – Algebraic solution by reduction to polynomial – Pieper’s criteria We’ll also discuss a heuristically solution strategy: – Cyclic Coordinate Descent (CCD) Direct & Inverse Kinematics 80 Algebraic solution by reduction to polynomial Substitution: u tan cos 2 1 u2 2u , sin 1 u2 1 u2 Advantage: – the substitution yields an expression in terms of variable ui instead of sin θi and cos θi. Once the solutions for ui are found, θi=2tan-1(solutions-of-ui). Direct & Inverse Kinematics 81 Pieper’s criteria There’s a closed-form solution for 6 DOFs manipulators (with prismatic and/or revolute joints configurations) in which 3 consecutive axes intersect in 1 point. Almost every 6 DOFs manipulator built today respect Pieper’s criteria. For ex: PUMA 560’s joint axes 4, 5 and 6. Direct & Inverse Kinematics 82 Cyclic Coordinate Descent Algorithm: – adjusting one DOF at a time (iterative) to minimize tool’s distance to the goal – starts at the last link and works backwards, adjusting each joint along the way – repeat the whole set until “satisfied” or maximum nr. of sets reached Each step results in one equation with one unknown for each degree. Direct & Inverse Kinematics 83 Cyclic Coordinate Descent Adjusting one link at the time Tool’s current position minimize Joint to move Goal’s position Direct & Inverse Kinematics 84 Cyclic Coordinate Descent Adjusting one link at the time Direct & Inverse Kinematics 85 Cyclic Coordinate Descent starts at the last link, adjusting each joint along the way repeat until “satisfied” Direct & Inverse Kinematics 86 Cyclic Coordinate Descent Advantages: – – – – – Allow constraints to be placed (at each step) Free of singularities Degree independent Computationally inexpensive (fast) Simple to implement Disadvantage: – Might not find a solution Direct & Inverse Kinematics 87 Direct & Inverse Kinematics Spatial description and transformation Direct kinematics Inverse kinematics – About the problem – Method of solution – Example Direct & Inverse Kinematics 88 Example: PUMA 560 We know the links transformations in θi (1≤i≤6). c1 s1 0 0 s c 0 0 1 0 1 1T 0 0 1 0 0 0 0 1 c 2 s 2 0 0 0 0 1 0 1 2T s 2 c 2 0 0 0 0 0 1 c3 s3 0 a2 s c 0 0 3 3 2 3T 0 0 1 d3 0 0 0 1 c 4 3 0 T 4 s 4 0 c5 4 0 T 5 s5 0 c 6 5 0 T 6 s 6 0 Direct & Inverse Kinematics s 4 0 c 4 0 a3 1 d4 0 0 0 0 1 s5 0 0 0 1 0 c5 0 0 0 0 1 s 6 0 0 0 1 0 c 6 0 0 0 0 1 89 Example: PUMA 560 We know the links transformations in θi (1≤i≤6). Thus, we know the transformation from {k} to {l} in θi (1≤k,l≤6 and k≤i≤l w.l.o.g.). k l l k T k k 1 T l 1 l l 1 l T T T and 1 k k 1 T 1 Direct & Inverse Kinematics 90 Example: PUMA 560 We know the links transformations in θi (1≤i≤6). Thus, we know the transformation from {k} to {l} in θi (1≤k,l≤6 and k≤i≤l w.l.o.g.). We wish to solve: r11 r12 r13 p X r r r p Y 0 21 22 23 T 6 r31 r32 r33 pZ 1 0 0 0 10 T (1 ) 12 T ( 2 ) 32 T (3 ) 34 T ( 4 ) 54 T (5 ) 56 T (6 ) Direct & Inverse Kinematics 91 Example: PUMA 560 We’ll search for a solvable equation iteratively: – multiply each side of the transform equation by an inverse to separate a variable – Search for a solvable equations 0 6 T 10 T (1 ) 12 T ( 2 ) 32 T (3 ) 34 T ( 4 ) 54 T (5 ) 56 T (6 ) 10 T (1 ) 1 60 T 12 T ( 2 ) 32 T (3 ) 34 T ( 4 ) 54 T (5 ) 56 T (6 ) c1 s1 s1 c1 0 0 0 0 0 0 1 0 0 r11 r12 0 r21 r22 0 r31 r32 1 0 0 r13 r23 r33 0 Direct & Inverse Kinematics pX pY pZ 1 1 T 6 92 Example: PUMA 560 After calculating the right side, it can been seen there’s a solvable solution: c1 s1 0 0 r11 r12 r13 p X s1 c1 0 0 r21 r22 r23 pY 1 T 0 0 1 0 r31 r32 r33 pZ 6 1 0 0 0 1 0 0 0 And we get: -sin θ1 pX + cos θ1 pY = d3 . a cosθi + b sin θi = c return 2 solutions: i arctan 2(b, a) arctan 2( a 2 b 2 c 2 , c) Direct & Inverse Kinematics 93 Example: PUMA 560 2 solutions were found for θ1. For each one of them, we’ll continue to search for solvable equations… c1 s1 0 0 r11 r12 r13 p X s1 c1 0 0 r21 r22 r23 pY 1 T 0 0 1 0 r31 r32 r33 pZ 6 1 0 0 0 1 0 0 0 Direct & Inverse Kinematics 94 Overview Kinematics Introduction to Protein Structure A kinematic View of Loop Closure Direct & Inverse Kinematics 95 Overview Kinematics Introduction to Protein Structure What do proteins look like and why is it important? A kinematic View of Loop Closure Direct & Inverse Kinematics 96 Proteins & Polypeptides Amino Acids Polypeptides Proteins Direct & Inverse Kinematics 97 Where are they? Proteins are very important molecules to all forms of life. They are one of the four basic building blocks of life: – – – – carbohydrates (sugars) lipids (fats) nucleic acids (DNA and RNA) proteins Direct & Inverse Kinematics 98 Where are they? They serve all kinds of functions: – – – – – – part of structural elements in a cell (small scale) part of the fibers that make up your muscles (larger scale) Enzymes Antibodies Hormones ... Direct & Inverse Kinematics 99 What are they? Proteins are made up of a chain of amino acids linked together (peptide bonds). They may be seen as a chain (the backbone) with a lot of side chains (the residues). There are 20 of those proteins' building blocks (amino acids) What differs the amino acids is their residue. Direct & Inverse Kinematics 100 Polypeptides and Proteins Definition: A polypeptide is a compound containing amino acid residues joined by peptide bonds. A protein may consist of one or more specific polypeptide chains, which generally undergo further structural configurations in the course of becoming functional proteins. Direct & Inverse Kinematics 101 Polypeptides and Proteins Direct & Inverse Kinematics 102 Structure Proteins have 4 increasingly complex levels of structure: – Primary: sequence of the amino acids – Secondary: common folding patterns seen in proteins, like the alpha helix or the beta sheet – Tertiary: three-dimensional structure of a single folded amino acid chain – Quaternary: the complete protein with all of the subunits together (only in proteins made up of more than one polypeptide chain) Direct & Inverse Kinematics 103 Structure Direct & Inverse Kinematics 104 3D structure's importance Example of the importance of the structure: Boiling an egg causes all the proteins it contains, the "white" of the egg, to change shape and hardens (solid). It still has the same primary structure as the original protein, but the tertiary structure (three dimensional shape) has been lost, and so have all the critical properties of the original protein! Direct & Inverse Kinematics 105 Structure's importance Proteins can have very complex shapes, and the final form of the protein is essential to its intended function The process of changing the shape of a protein so that the function is lost is called denaturation. Direct & Inverse Kinematics 106 Structure-based problems Docking: predicting whether (and how) one molecule will bind to another Folding: the process by which the chain of amino acids is modified to reach its final form. Loop Closure (see next) Direct & Inverse Kinematics 107 Geometric Properties Simplified (fixed bond lengths and angles) Planarity of the Peptide Bond: A polypeptide chain (backbone) may be considered as a series of planes (peptide units) with two angles of rotation between each plane. Direct & Inverse Kinematics 108 Geometric Properties Each peptide bond adds 2 DOFs, Direct & Inverse Kinematics 109 Geometric Properties Each peptide bond adds 2 DOFs, and the residues too add some DOFs. Direct & Inverse Kinematics 110 A Kinematic View of Loop Closure Evangelos A. Coutsias, Chaok Seok, Matthew P. Jacobson, Ken A. Dill Direct & Inverse Kinematics 111 Overview Kinematics Introduction to Protein Structure A kinematic View of Loop Closure Direct & Inverse Kinematics 112 Overview Kinematics Introduction to Protein Structure A kinematic View of Loop Closure redefining the loop closure problem as a “inverse kinematics” problem Direct & Inverse Kinematics 113 Loop Closure The loop closure problem Tripeptide loop closure Generalizations of the method Direct & Inverse Kinematics 114 The loop closure problem Definition: finding the ensemble of possible backbone structures of a chain segment of a protein molecule that is geometrically consistent with preceding and following part of the chain whose structures are given Direct & Inverse Kinematics 115 The loop closure problem missing So that it is geometrically consistent with the find given possible a chainbackbone segment preceding and followingofparts of the chain structure the protein Direct & Inverse Kinematics 116 The loop closure problem In his simplest form: given a molecular chain with inflexible bond length ad bond angles, find all possible arrangements with the property that all bond vectors are fixed in space except for a contiguous set and such that the changes are made in at most six intervening dihedral angles. Direct & Inverse Kinematics 117 The loop closure problem In his simplest form: Protein find inflexible bond all possible with bondinflexible angles angles length Direct & Inverse Kinematics 118 Loop Closure The loop closure problem Tripeptide loop closure Generalizations of the method Direct & Inverse Kinematics 119 Tripeptide loop closure The six-torsion loop closure problem in simplified representation: variables: τi (i=1,2,3) constraints: θi (i=1,2,3) τ1 θ2 θ1 τ2 θ3 τ3 Direct & Inverse Kinematics fixed in space 120 Tripeptide loop closure The six-torsion loop closure problem in simplified representation. But there are only 3 rotation angles τi ? σi=τi+δi Direct & Inverse Kinematics 121 Affixing frames Direct & Inverse Kinematics 122 Affixing frames τi angle is the rotation angle of riτ about Zi Direct & Inverse Kinematics 123 Affixing frames σi angle is the rotation angle of ri σ about Zi Direct & Inverse Kinematics 124 Constraints We’ve defined the frames so that they’ll be “easy to use”: – τi is defined by riτ – σi is defined by ri σ The θi angle constraints can be expressed in terms of riτ and ri σ: riτ . ri σ = cos θi Direct & Inverse Kinematics 125 Constraints riτ . ri σ = cos θi θi Direct & Inverse Kinematics 126 Constraints τi angle is the rotation angle of riτ about Zi Xi sin ηi Zi cos ηi Direct & Inverse Kinematics 127 Constraints sin i ri RZ i 0 cos i sin i cos i cos i sin i 0 0 sin i cos i sin i sin i cosi 0 sin i 0 0 cos 1 i Direct & Inverse Kinematics 128 Constraints Same for σi angle: is the rotation angle of riσ about Zi sin i 1 cos i 1 ri 1 sin i 1 sin i 1 cos i 1 Direct & Inverse Kinematics 129 Constraints Direct & Inverse Kinematics 130 Constraints Those equations describe the rotation of the Cαi-1-Ni and Cαi-Ci bonds about the virtual bonds Cαi-1-Cαi and Cαi-Cαi+1 respectively Direct & Inverse Kinematics 131 Solving the equations The angles αi, ηi, ξi, θi and δi depend on the bonds, which inflexible structure is known. Thus, they’re known constants. Convert the equations to polynomial variables wi and ui: Direct & Inverse Kinematics 132 Solving the equations The equations becomes: Direct & Inverse Kinematics 133 Solving the equations Eliminating wi : i i sin 2 i i i wi tan tan 2 2 cos i i 2 cos i / 2 sin i / 2 sin i / 2 cos i / 2 cos i / 2 cos i / 2 sin i / 2 sin i / 2 tan i / 2 tan i / 2 ui i 1 tan i / 2 tan i / 2 1 ui i where i tan i / 2 Direct & Inverse Kinematics 134 Solving the equations There are now 3 equations, quadratic in 2 variable (ui and ui+1) Eliminating u1 and then u2 results in a degree 16 polynomial in u3 There might be up to 16 solutions, even if at most 10 real solutions has been found in the article’s research Direct & Inverse Kinematics 135 Loop Closure The loop closure problem Tripeptide loop closure Generalizations of the method Direct & Inverse Kinematics 136 Generalizations of the method There are no assumptions about the intervening structures. Therefore, the algorithm can be applied to moves involving arbitrary triads of Cα atoms. Direct & Inverse Kinematics 137 Generalizations of the method Finding alternative local structures when an arbitrary dihedral angle is changed Direct & Inverse Kinematics 138 Generalizations of the method The constraints form stay unchanged: But, Cα1-Cα2, η1 and ξ2 changed. As a result, Zi (i=1,2) and αi (i=1,2,3) changed too. Still, the equations can be derived with the changed parameters Direct & Inverse Kinematics 139 References Introduction to Robotics: Mechanics and Control (3rd Edition) John J. Craig Kinematic View of Loop Closure Evangelos A. Coutsias, Chaok Seok, Matthew P. Jacobson, Ken A. Dill Cyclic Coordinate Descent: A Robotics Algorithm for Protein Loop Closure Adrian A. Canutescu, Roland L. Dunbrack Jr. Direct & Inverse Kinematics 140 Thank you Direct & Inverse Kinematics 141