“inverse kinematics” the loop closure problem in biology barak raveh dan halperin course in...

52
Inverse Kinematics” Inverse Kinematics” The Loop Closure Problem in The Loop Closure Problem in Biology Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Post on 20-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

““Inverse Kinematics” Inverse Kinematics” The Loop Closure Problem in The Loop Closure Problem in

BiologyBiologyBarak RavehDan Halperin

Course in Structural BioinformaticsSpring 2006

Page 2: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

““Riddle” IRiddle” I

target

Page 3: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

““Riddle” IIRiddle” II

target

Page 4: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

OutlineOutline

• Introduction– The Loop Closure Problem in Proteins– Direct & Inverse Kinematics

• Brief Linear Algebra of a Kinematic Chain• Heuristics:

– Cyclic Coordinates Descent Algorithm (“CCD”)

• Analytical Solution:– Tripeptide Loop Closure

Page 5: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Loop Closure in ProteinsLoop Closure in Proteins

Want to fill in a continuous segment that is the “loop” that needs closing

Page 6: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Loop Closure in ProteinsLoop Closure in Proteins

How can we fill in the gap?

Page 7: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Loop ClosureLoop Closure

Loop closure constraints

Page 8: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Loop ClosureLoop Closure

Loop closure constraints

Page 9: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

The Goal of Loop ClosureThe Goal of Loop Closure

The ultimate goal of the loop closure problem in proteins is to find the ensemble of conformations that can close a fixed gap within the backbone of a protein using a certain number of amino acids

Page 10: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Loop Closure – When?Loop Closure – When?

• Protein Loop Design

• Flexible Docking & Fold Prediction

• Flexible Peptides

• And more…

Page 11: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

MHC Proteins & ImmunologyMHC Proteins & Immunology

• MHC (Major Histocompatability Proteins)– class I

• on the membrane of every cell in our body

– class II• On memory cells of immune system

• Human MHC = “HLA” (Human Leukocyte Antigens)

Page 12: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

MHC Proteins & ImmunologyMHC Proteins & Immunology• MHC class I proteins present

small peptides to the immune system– A sample of each protein is digested

in the lysosome to small (8-16) peptide chunks (“antigen”)

– The “antigen” binds MHC– The complex transfers to the outer

surface of the cell membrane– CD8+ T-Cells recognize the MHC-

peptide complexes of invader proteins (viruses, cancer cells, etc.)

Page 13: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

MHC I Peptide Binding Domain MHC I Peptide Binding Domain is Hyper-Variableis Hyper-Variable

• 1000 possible alleles in Human MHC (HLA) alone !

• 3-6 different alleles in each individual

• Each allele binds different peptides

• Evoloutianary protection of populations

• Problems in Organ Transplant

Page 14: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

MHC-peptide bindingMHC-peptide binding

MHC “Cradle”

•~ 1000 MHC alleles

• Huge # of peptides

Page 15: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Loop Closure for Predicting Loop Closure for Predicting MHC-Peptide BindingMHC-Peptide Binding

Page 16: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

OutlineOutline

• Introduction– The Loop Closure Problem in Proteins– Direct & Inverse Kinematics

• Brief Linear Algebra of a Kinematic Chain • Heuristics:

– Cyclic Coordinates Descent Algorithm (“CCD”)

• Analytical Solution:– Tripeptide Loop Closure

Page 17: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Kinematic Chains = Kinematic Chains = Chains of Rigid LinksChains of Rigid Links

Page 18: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Protein as Kinematic ChainsProtein as Kinematic Chains

Page 19: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Direct KinematicsDirect Kinematics

• Where will the robot head move when we change its degrees of freedom?

Go right !!!

???

Page 20: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Inverse KinematicsInverse Kinematics

• How can we move the robot head to a certain location at a certain orientation?

Take the

ball !!!

???

Page 21: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Inverse Kinematics in Inverse Kinematics in RobotsRobots

What values of DOFs will bring the robot tool to the desired

position and orientation?

Page 22: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Research Questions on Research Questions on Inverse KinematicsInverse Kinematics

• Can we find a single solution to an inverse kinematics problem?

• Can we find all solutions to an inverse kinematics problem?

• How many solutions exist?– 0 ?– 1 ?– Many ?– infinite ?

Page 23: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Multiple SolutionsMultiple Solutions

Page 24: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Loop Closure = Inverse Loop Closure = Inverse KinematicsKinematics

What set of Φ / Ψ angles will close a certain peptide loop?

Page 25: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

OutlineOutline

• Introduction– The Loop Closure Problem in Proteins– Direct & Inverse Kinematics

• Brief Linear Algebra of a Kinematic Chain • Heuristics:

– Cyclic Coordinates Descent Algorithm (“CCD”)

• Analytical Solution:– Tripeptide Loop Closure

Page 26: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Who are the Players?Who are the Players?

Rigid Links connected by Joints (Joints = Degrees of Freedom)

Dihedral angles

Page 27: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Affixing a Coordinate System Affixing a Coordinate System (“Frame”) to Each Link(“Frame”) to Each Link

Page 28: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Positions, orientations and Positions, orientations and framesframes

• The position of a point p relative to a coordinate system A (Ap):

x

Ay

z

p

p p

p

ZA

X A

YA

A p

Page 29: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

We move from the frame (coordinates system) of link i to that of link i+1 using a linear transformation:Rotation + Translation

Mapping between FramsMapping between Frams

A A B AB BorgP R P P

ZA

X A

YA

A p B or g

B pA p ZB

X B YB

Page 30: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Examples of Rotation Examples of Rotation MatricesMatrices

Page 31: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

““Homogenous Homogenous Transform”: Transform”:

Translation + Rotation using a single 4x4 Translation + Rotation using a single 4x4 MatrixMatrix

1 0 0 0 1 1

A A A BB Borg

A A BB

P R P P

P T P

ZA

X A

YA

A p B or g

B pA p ZB

X B YB

Page 32: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Direct KinematicsDirect Kinematics

• Where will the robot head move when we change its degrees of freedom?

Go right !!!

???

Page 33: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Direct Kinematics = Direct Kinematics = Linear AlgebraLinear Algebra

We can move from the frame (coordinates system) of link i to that of link i+k using straightforward matrix multiplication

0 0 1 11 2

nn nT T T T

• Each transform can be written as a combination of a translation and a rotation

• The single transformation that relates frame {n} to frame {0}:

Page 34: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

2D Example with Revolute 2D Example with Revolute JointsJoints

Page 35: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Inverse Kinematics in Inverse Kinematics in RobotsRobots

What values of DOFs will bring the robot tool to the desired

position and orientation?

Analytical Solution to Inverse Kinematics = Solving a set of equations on a matrix multiplication system

0 0 1 11 2

nn nT T T T

Page 36: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

So what is the problem?So what is the problem?

Solving the set of equations is usually infeasible!

0 0 1 11 2

nn nT T T T

?

Page 37: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

OutlineOutline

• Introduction– The Loop Closure Problem in Proteins– Direct & Inverse Kinematics

• Brief Linear Algebra of a Kinematic Chain • Heuristics:

– Cyclic Coordinates Descent Algorithm (“CCD”)

• Analytical Solution:– Tripeptide Loop Closure

Page 38: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Cyclic Coordinate Descent Cyclic Coordinate Descent = =

Simple Greedy HeuristicsSimple Greedy Heuristics• Adjusting one link at a time

Tool’s currentposition

Goal’sposition

minimize

Joint tomove

Page 39: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Start from Last LinkStart from Last Link

Page 40: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Cyclic Coordinate Cyclic Coordinate DescentDescent

• starts at the last link, adjusting each joint along the way

repeat until “satisfied”

Page 41: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Summary of CCD Summary of CCD algorithmalgorithm

• While (“not satisfied”) and(# of cycles < maximum):

adjust one DOF at a time (iterative) to minimize tool’s distance to the goal, from last link backwards

Page 42: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Cyclic Coordinate Cyclic Coordinate DescentDescent

Advantages:– Allow constraints to be placed (at each step)

– Free of singularities

– Independent of DOFs # (degrees of freedom)

– Extremely fast !

– Simple to implement

• Disadvantage:– Heuristics

• Might not find a solution even if one exists

• Does not cover all solutions

Page 43: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

CCD for MHC-peptides CCD for MHC-peptides interactioninteraction

Page 44: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

OutlineOutline

• Introduction– The Loop Closure Problem in Proteins– Direct & Inverse Kinematics

• Brief Linear Algebra of a Kinematic Chain • Heuristics:

– Cyclic Coordinates Descent Algorithm (“CCD”)

• Analytical Solution:– Tripeptide Loop Closure– Generalization

Page 45: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

““A Kinematic View of A Kinematic View of Loop Closure”Loop Closure”

Evangelos A. Coutsias,Chaok Seok,

Matthew P. Jacobson,Ken A. Dill

Page 46: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

1nC

1nC

nC

N

C

'C

Bond vectorsfixed in space

Fixed distance

Tripeptide Loop ClosureTripeptide Loop ClosureWith the base andthe lengths of the two peptidevirtual bonds fixed, the vertex is constrained to lie ona circle.

11 nn CC

nC

Page 47: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Fixed Distance between CFixed Distance between Cαα AtomsAtoms

Page 48: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Tripeptide loop closureTripeptide loop closure

• The six-torsion loop closure problem in simplified representation:

fixed in space

variables: τi (i=1,2,3)constraints: θi (i=1,2,3)

τ1 τ2

τ3

θ1

θ2

θ3

Page 49: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Constraints & Variables Constraints & Variables Set of Solvable EquationsSet of Solvable Equations

We omit the details of the analytical solution but bottom line:

•Equations are quite complex

•They are solved using advanced techniques of linear algebra (“resultants”)

Page 50: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Solving the equationsSolving the equations

• We end up with a degree 16 polynomial

• Throretically, there might be up to 16 solutions to this polynomial 16 = Upper bound on number of solutions to each tripeptide loop closure problem

• In practice, at most 10 real solutions has been found in the article’s research

Page 51: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

SummarySummary

• Loop closure of peptides can help in key challenges of computational biology

• Analytical Solutions exist only for a very small number of DOFs (Degrees Of Freedom)

• Efficient heuristics are not guaranteed to find all solutions, or even a single solution– But they work well in practice

Page 52: “Inverse Kinematics” The Loop Closure Problem in Biology Barak Raveh Dan Halperin Course in Structural Bioinformatics Spring 2006

Thank-You !Thank-You !