i=1,…,n. \begin{aligned} & \underset{P', q', r', \tau}{\mathrm{minimize}} & & \mathop{\mathrm{det}} P' \\ & \text{subject to} & & \begin{bmatrix} P' & q\\ (q')^T & r' \end{bmatrix} \le \tau_i\begin{bmatrix} P_i & q_i\\ q_i^T & r_i \end{bmatrix}, \quad i = 1, \dots, n. \end{aligned} P′,q′,r′,τminimizesubject todetP′[P′(q′)Tqr′]≤τi[PiqiTqiri],i=1,…,n. The only problem here (which we can easily fix) is that the determinant is not a convex function. On the other hand, the log determinant is (for a proof, see the Convex book, section 3.1.5), so we can write,
P′,q′,r′,τminimizesubject tologdetP′[P′(q′)Tqr′]≤τi[PiqiTqiri],i=1,…,n. This is equivalent to the original problem since log(y) is an increasing function of y.
Of course, any convex function (such as, for example the trace) would do here as well.
Ok, now we know how to solve the problem where we have a bunch of ellipsoids and we want to find an ellipsoid which covers all of them. How about the problem where we want to find an ellipsoid which also covers the sets {Ni} for i=1,…,k, which are, themselves, intersections of ellipsoids?
In particular, if Ni is defined as
Ni=j∈Ii⋂Ej, for some index set Ii⊆{1,…,n} and some set of ellipsoids {Ej}, each of which are defined as before (Ej={x∣fj(x)≤0}), we can perform a similar trick to the one above!
More generally, if we have an ellipsoid E0={x∣f0(x)≤0}, then
Ni⊆E0⟺(fj(x)≤0 for j∈Ii⟹f0(x)≤0). (It's a worthwhile exercise to think about why, but it follows the same idea as before.) In other words, E0 is a superset of Ni only when a bunch of quadratic inequalities imply another. (Where have we seen this before...?)
In other words, we know that (by the first section), if there exist λ≥0 such that
f0(x)≤j∈Ii∑λjfj(x), then we immediately have that Ni⊆E0. Since the converse is not true, we are sadly not guaranteed to actually find the smallest bounding ellipsoid E0, but this is usually quite a good approximation (if it's not exact).
Following exactly the same steps as in the previous section and using the same definitions, we now get a new program for minimizing the volume for the union and intersection of ellipsoids:
P′,q′,r′,λminimizesubject tologdetP′[P′(q′)Tqr′]≤j∈Ii∑λij[PjqjTqjrj],i=1,…,kλij≥0,i=1,…,k, j∈Ii. As before, this program does not guarantee actually finding the minimal volume ellipsoid, but it is likely to be quite close! (That is, if it's not spot on, most of the time.)