use a trust region method