Geometric adaptive control