nonlinear programming Dimitri P.B solution