Please note that the content of this book primarily consists of articles available from Wikipedia or other free sources online. Convex optimization, a subfield of mathematical optimization, studies the problem of minimizing convex functions. Convex minimization has applications in a wide range of disciplines, such as automatic control systems, estimation and signal processing, communications and networks, electronic circuit design, data analysis and modeling, statistics, and finance. With recent improvements in computing and in optimization theory, convex minimization is nearly as straightforward as linear programming. These results are used by the theory of convex minimization along with geometric notions from functional analysis such as the Hilbert projection theorem, the separating hyperplane theorem, and Farkas' lemma.