Mathematical programming via augmented lagrangians: An introduction with computer programs