Optimization Theory and Methods: Nonlinear Programming