You are not authenticated, login.
text: sort by
tags: modified
type: chronology
hide / / print
ref: -2012 tags: Emo Todorov contact invariant animation optimization complex motor behavior date: 05-04-2016 17:34 gmt revision:3 [2] [1] [0] [head]

* Watch the [http://homes.cs.washington.edu/~todorov/index.php?video=MordatchSIGGRAPH12&paper=Mordatch,%20SIGGRAPH%202012 movies! Discovery of complex behaviors through contact-invariant optimization]

  • Complex movements tend to have phases within which the set of active contacts (hands, feet) remains invariant (hence can exert forces on the objects they are contacting, or vice versa).
  • Discovering suitable contact sets is the central goal of optimization in our approach.
    • Once this is done, optimizing the remaining aspects of the movement tends to be relatively straightforward.
    • They do this through axillary scalar variables which indicate whether the a contact is active or not, hence whether to enable contact forces.
      • Allows the optimizer to 'realize' that movements should have phases.
      • Also "shapes the energy landscape to be smoother and better behaved"
  • Initial attempts to make these contact axillary variables discrete -- when and where -- which was easy for humans to specify, but made optimization intractable.
    • Motion between contacts was modeled as a continuous feedback system.
  • Instead, the contact variables c ic_i have to be continuous.
  • Contact forces are active only when c ic_i is 'large'.
    • Hence all potential contacts have to be enumerated in advance.
  • Then, parameterize the end effector (position) and use inverse kinematics to figure out joint angles.
  • Optimization:
    • Break the movement up into a predefined number of phases, equal duration.
    • Interpolate end-effector with splines
    • Physics constraints are 'soft' -- helps the optimizer : 'powerful continuation methods'
      • That is, weight different terms differently in phases of the optimization process.
      • Likewise, appendages are allowed to stretch and intersect, with a smooth cost.
    • Contact-invariant cost penalizes distortion and slip (difference between endpoint and surface, measured normal, and velocity relative to contact point)
      • Contact point is also 'soft' and smooth via distance-normalized weighting.
    • All contact forces are merged into a f 6f \in \mathbb{R}^6 vector, which includes both forces and torques. Hence contact force origin can move within the contact patch, which again makes the optimization smoother.
    • Set τ(q,q˙,q¨)=J(q) Tf+Bu\tau(q, \dot{q}, \ddot{q}) = J(q)^T f + B u where J(q) T J(q)^T maps generalize (endpoint) velocities to contact-point velocities, and f above are the contact-forces. BB is to map control forces uu to the full space.
    • τ(q,q˙,q¨)=M(q)q˙+C(q,q˙)q˙+G(q)\tau(q, \dot{q}, \ddot{q}) = M(q)\dot{q} + C(q, \dot{q})\dot{q} + G(q) -- M is inertia matrix, C is Coriolis matrix, g is gravity.
      • This means: forces need to add to zero. (friction ff + control uu = inertia + coriolis + gravity)
    • Hence need to optimize ff and uu .
      • Use friction-cone approximation for non-grab (feet) contact forces.
    • These are optimized within a quadratic programming framework.
      • LBFGS algo.
      • Squared terms for friction and control, squared penalization for penetrating and slipping on a surface.
    • Phases of optimization (continuation method):
      • L(s)=L CI(s)+L physics(s)+L task(s)+L hint(s)L(s) = L_{CI}(s) + L_{physics}(s) + L_{task}(s) + L_{hint}(s)
      • task term only: wishful thinking.
      • all 4 terms, physcics lessened -- gradually add constraints.
      • all terms, no hint, full physics.
  • Total time to simulate 2-10 minutes per clip (only!)
  • The equations of the paper seem incomplete -- not clear how QP eq fits in with the L(s)L(s) , and how c ic_i fits in with J(q) Tf+BuJ(q)^T f + B u

hide / / print
ref: -0 tags: Georgoplous todorov M1 controversy square root bias PV date: 12-22-2011 22:52 gmt revision:2 [1] [0] [head]

PMID-11017158 One motor cortex, two different views

  • ref {950}, {952}, {953}
  • Georgopoulos re-analyzed their data without squareroot transformation and without smothing -- using only binned rates -- and found that it did not substantially change the porportions of tuned cells
  • In return, Todorov {955} responds that classifying cells based on maximal R^2 is stupid -- many cells lie on the decision boundaries in this manifold.

hide / / print
ref: -0 tags: todorov R2 M1 PV tuning bias decision boundaries controversy date: 12-22-2011 22:52 gmt revision:1 [0] [head]

PMID-11017160 Reply to One motor cortex, two different views

hide / / print
ref: -0 tags: todorov PV M1 controversy Scott date: 12-22-2011 22:22 gmt revision:1 [0] [head]

PMID-10725914 Population vectors and motor cortex: neural coding or epiphenomenon?

  • Basic friendly editorial of {950}.
  • On the PV method: "These correlations have been interpreted as suggesting that the motor cortex controls higher-level features of hand movements, rather than the lower-level features related to the individual joints and muscles that bring about those movements"
  • Implies that conversion of the relatively abstract representation to the concrete muscle activations would be done by the spinal cord.
    • This in turn implies that the spinal cord is capable of organizatonal-level learning, or that gross properties are genetically / developmentally encoded.
  • On Schwartz's drawing experiments: [The variable latency for the correlation of the PV tuning and arm motion] was interpreted that motor cortex is involved in controlling movements with high curvature, but not relatively straight movements.
  • Nice: "Engineers have to understand the plant before they can figure out how to control it. Why should it be any different when examining biological control?"

hide / / print
ref: -0 tags: Moran Schwartz Todorov controversy PV M1 motor control date: 12-22-2011 22:04 gmt revision:0 [head]

PMID-11017157 One motor cortex, two different views.

  • Commentary on {950}
  • Refutes Todorov's stiff -muscle perturbation analysis, saying that it grossly misapproximates what the monkey is actually doing (drawing on a touchscreen vertical in front of it), as the model of the arm in this case would be held stiffly in front of the monkey, rather than realistically falling to the animal's side.
  • They also claim that any acceleration term would cause the PV tuning to lead with higher curvature, which is not what they saw (?)

hide / / print
ref: -0 tags: Todorov motor control models 2000 date: 12-22-2011 21:18 gmt revision:3 [2] [1] [0] [head]

PMID-10725930 Direct cortical control of muscle activation in voluntary arm movements: a model.

  • Argues that the observed high-level control of parameters (movement direction) is inconsistent with demonstrated low-level control (control of individual muscles / muscle groups, as revealed by STA [5] or force production [3]), but this inconsistency is false: the principle of low level control is correct, and high level control appears due to properties of the musculoskeletal system.
  • "Yet the same cells that encode hand velocity in movement tasks can also encode the forces exerted against external objects in both movement and isometric tasks [9,10].
  • The following other correlations have been observed:
    • arm position [11]
    • acceleration [12]
    • movement preparation [13]
    • target position [14]
    • distance to target [15]
    • overall trajectory [16]
    • muscle coactivation [17]
    • serial order [18]
    • visual target position [19]
    • joint configuration [20]
    • instantaneous movement curvature [7]
    • time from movement onset [15]
  • although these models can fit the data well, they leave a crucial question unanswered, namely, how such a mixed signal can be useful for generating motor behavior.
    • What? No! The diversity of voices gives rise to robust, dynamic computation. I think this is what Miguel has written about, will need to find a reference.
  • Anyway, all the motor parameters are related by the laws of physics -- the actual dimensionality of real reaches is relatively low.
  • His model: muscle activity simply reflects M1 PTN activity.
  • If you include real muscle parameters, a lot of the observed correlations make sense: muscle force depends not only on activation, but also on muscle length and rate of change of length.
  • In this scientific problem, the output (motor behavior) specified by the motor task is easily measured, and the input (M1 firing) must be explained.
    • Due to the many-to-one mapping, there is a large null-space of the inverse transform, so individual neurons cannot be predicted. Hence focus on population vector average.
  • Cosine tuning is the only activation pattern that minimizes neuromotor noise (derived in methods, Parseval's theorem)). Hence he uses force, velocity, and displacement tuning for his M1 cells.
  • Activity of M1 cells is constrained in endpoint space, hence depends only on behavioral parameters.
    • The muscles were "integrated out".
  • Using his equation, it is clear that for an isometric task, M1 activity is cosine tuned to force direction and magnitude -- x(t) is constant.
  • For hand kinematics in the physiological range with an experimentally measured inertia-to-damping ratio, the damping compensation signal dominates the acceleration signal.
    • Hence population x˙(t)\propto \dot x(t)
    • Muscle damping is asymmetric: predominant during shortening.
  • The population vector ... is equal not to the movement direction or velocity, but instead to the particular sum of position, velocity, acceleration, and force signals in eq. 1
  • PV reconstruction fails when movement and force direction are varied independently. [28]
  • Fig 4. Schwartz' drawing task -- {951} -- and shows how curvature, naturalistic velocity profiles, the resultant accelerations, and leading neuronal firing interact to distort the decoded PV.
    • Explains why, when assuming PV tuning, there seems to be variable M1-to-movement delay. At high curvature PV tuning can apprently lag movement. Impossible!
  • Fig 5 reproduces [21]
    • Mean firing rate (mfr, used to derive the poisson process spike times) and r^2 based classification remarkably different -- smoothing + square root biases toward finding direction-tuned cells.
    • Plus, as P, V, and A are all linearly related, a sum of the 3 is closer to D than any of the three.
    • "Such biases raise the important question of how one can determine what an individual neuron controls"
  • PV reversals occur when the force/acceleration term exceeds the velocity scaling term -- which is 'equivalent' to the triphasic burst pattern observed in EMG. Ergo monkeys should be trained to make faster movements.
  • The structure of your model -- for example firingrate=b 0+b xX+b yY+b mMfiringrate = b_0 + b_x X + b_y Y + b_m M biases analysis for direction, not magnitude; correct model is firingrate=b 0+b xmXM+b ymYM firingrate = b_0 + b_{xm}XM + b_{ym}YM -- multiplicative.
  • "Most of these puzzling phenomena arise from the feedforward control of muscle viscoelasticity."
  • Implicit assumption is that for the simple, overtrained, unperturbed movements typically studied, feedforward neural control is quite accurate. When you get spinal reflexes involved things may change. Likewise for projections from the red nucleus.

hide / / print
ref: bookmark-0 tags: machine_learning todorov motor_control date: 0-0-2007 0:0 revision:0 [head]

Iterative Linear Quadratic regulator design for nonlinear biological movement systems

  • paper for an international conference on informatics in control/automation/robotics