Inverse optimal control