Kinematic movement algorithms