Convex Optimization, Stephen Boyd and Lieven Vandenberghe, Cambridge University Press, 2004 (available on the web at http://www.stanford.edu/ boyd/cvxbook.html)