Scaling problems have a rich and diverse history, and thereby have found numerous
applications in several fields of science and engineering. For instance, the matrix scaling problem
has had applications ranging from theoretical computer science to telephone forecasting,
economics, statistics, optimization, among many other fields. Recently, a generalization of matrix
scaling known as operator scaling has found applications in non-commutative algebra, invariant
theory, combinatorics and algebraic complexity; and a further generalization (tensor scaling)
has found more applications in quantum information theory, geometric complexity theory and
invariant theory.
In this survey, we will describe in detail the scaling problems mentioned above, showing how
alternating minimization algorithms naturally arise in this setting, and we shall present a general
framework to rigorously analyze such algorithms. These simple problems and algorithms are
not just applicable to diverse mathematical and CS areas, but also serve to bring out deep
connections between them. As this framework makes extensive use of concepts from invariant
theory, we also provide a very gentle introduction to basic concepts of invariant theory and how
they are used to analyze alternating minimization algorithms for the scaling problems.
This survey is intended for a general computer science audience, and the only background
required is basic knowledge of calculus and linear algebra, thereby making it accessible to
graduate students and even to advanced undergraduates