Over the past two decades there have been significant advances in the field of optimization. In particular, convex optimization has emerged as a powerful signal processing tool, and the variety of applications continues to grow rapidly. This book, written by a team of leading experts, sets out the theoretical underpinnings of the subject and provides tutorials on a wide range of convex optimization applications. Emphasis throughout is on cutting-edge research and on formulating problems in convex form, making this an ideal textbook for advanced graduate courses and a useful self-study guide. Topics covered range from automatic code generation, graphical models, and gradient-based algorithms for signal recovery, to semidefinite programming (SDP) relaxation and radar waveform design via SDP. It also includes blind source separation for image processing, robust broadband beamforming, distributed multi-agent optimization for networked systems, cognitive radio systems via game theory, and the variational inequality approach for Nash equilibrium solutions.