Skip to main content
Log in

Exploiting Sparsity for Semi-Algebraic Set Volume Computation

  • Published:
Foundations of Computational Mathematics Aims and scope Submit manuscript

Abstract

We provide a systematic deterministic numerical scheme to approximate the volume (i.e., the Lebesgue measure) of a basic semi-algebraic set whose description follows a correlative sparsity pattern. As in previous works (without sparsity), the underlying strategy is to consider an infinite-dimensional linear program on measures whose optimal value is the volume of the set. This is a particular instance of a generalized moment problem which in turn can be approximated as closely as desired by solving a hierarchy of semidefinite relaxations of increasing size. The novelty with respect to previous work is that by exploiting the sparsity pattern we can provide a sparse formulation for which the associated semidefinite relaxations are of much smaller size. In addition, we can decompose the sparse relaxations into completely decoupled subproblems of smaller size, and in some cases computations can be done in parallel. To the best of our knowledge, it is the first contribution that exploits correlative sparsity for volume computation of semi-algebraic sets which are possibly high-dimensional and/or non-convex and/or non-connected.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

Notes

  1. The Gibbs effect appears at a jump discontinuity when one approximates a piecewise continuously differentiable function with a continuous function, e.g., by its Fourier series.

  2. If two measures share some variables then the consistency condition requires that their respective marginals coincide.

  3. A semidefinite program is a convex conic optimization problem that can be solved numerically efficiently, e.g., by using interior point methods.

  4. The only exception would be cliques forming a triangle and is tackled in detail in section 6.5.

  5. This is necessary since the support of a measure is a closed set by definition.

  6. We provide a quick introduction in Appendix B.

  7. The CIP always holds, up to a chordal extension. In particular, cyclic graphs can be handled with empty interactions between well-chosen variables.

References

  1. C. Belisle, Slow hit-and-run sampling, Statist. Probab. Lett. 47 (2000), 33–43.

    Article  MathSciNet  Google Scholar 

  2. C. Belisle, E. Romeijn, and R. L. Smith, Hit-and-run algorithms for generating multivariate distributions, Math. Oper. Res. 18 (1993), 255–266.

    Article  MathSciNet  Google Scholar 

  3. J. R. S. Blair, B. Peyton, An introduction to chordal graphs and clique trees, in Graph Theory and Sparse Matrix Computation (A. George, J. R. Gilbert and J. W. H. Liu, eds.), Springer, 1993, pp 1–29.

  4. B. Bollobás, Volume estimates and rapid mixing, in Flavors of geometry (MSRI Publ. 31), Cambridge University Press, 1997, pp. 151–180.

  5. B. Büeler, A. Enge and K. Fukuda, Exact volume computation for polytopes: a practical study, in Polytopes: combinatorics and computation (G. Kalai and G. M. Ziegler eds.), Birkhäuser, 2000, pp. 131–154.

  6. D. Cifuentes and A. Parrilo, Exploiting Chordal Structure in Polynomial Ideals: A Gröbner Bases Approach, SIAM J. Discrete Math. 30 issue 3 (2016),1534–1570.

    Article  MathSciNet  Google Scholar 

  7. B. Cousins and S. Vempala, A practical volume algorithm, Math. Program. Comput. 8 (2016), 133–160.

    Article  MathSciNet  Google Scholar 

  8. M. E. Dyer and A. M. Frieze, On the complexity of computing the volume of a polyhedron, SIAM J. Comput. 17 (1988), 967–974.

    Article  MathSciNet  Google Scholar 

  9. M. E. Dyer, A. M. Frieze and R. Kannan, A random polynomial-time algorithm for approximating the volume of convex bodies, J. ACM 38 (1992), 1–17.

    Article  MathSciNet  Google Scholar 

  10. G. Elekes, A geometric inequality and the complexity of measuring the volume, Discrete Comput. Geom. 1 (1986), 289–292.

    Article  MathSciNet  Google Scholar 

  11. D. Henrion, J. B. Lasserre and J. Loefberg, GloptiPoly 3: moments, optimization and semidefinite programming, Optimization Methods and Software 24 issues 4-5 (2009), 761-779.

  12. D. Henrion, J.B. Lasserre and C. Savorgnan, Approximate volume and integration for basic semialgebraic sets, SIAM Review 51 issue 4 (2009), 722–743.

    Article  MathSciNet  Google Scholar 

  13. D. Henrion and M. Korda, Convex computation of the region of attraction of polynomial control systems, IEEE Trans. Autom. Control 59 issue 2 (2014), 297-312.

    Article  MathSciNet  Google Scholar 

  14. J. H. Hubbard and B. Burke Hubbard, Vector calculus, linear algebra, and differential forms - A unified approach. 2nd Ed., Prentice Hall, 2002.

  15. C. Josz and D. Henrion, Strong duality in Lasserre’s hierarchy for polynomial optimization, Optim. Lett. 10 (2016), 3-10.

    Article  MathSciNet  Google Scholar 

  16. C. Josz, D.K. Molzahn, M. Tacchi and S. Sojoudi, Transient stability analysis of power systems via occupation measures, Innovative Smart Grid Technologies (2019) https://doi.org/10.1109/ISGT.2019.8791570

  17. J.B. Lasserre, Convergent SDP relaxations in polynomial optimization with sparsity, SIAM J. Optim. 17 (2006), 822–84.

    Article  MathSciNet  Google Scholar 

  18. J. B. Lasserre, Moments, positive polynomials and their applications, Imperial College Press, 2010.

  19. J.B. Lasserre, Computing Gaussian and exponential measures of semi-algebraic sets, Adv. Appl. Math. 91 ’2017), 137–163.

  20. J. B. Lasserre, Representation of chance-constraints with strong asymptotic guarantees, IEEE Control Systems Letters 1 issue 1 (2017), 50–55.

    Article  MathSciNet  Google Scholar 

  21. R. L. Smith, Efficient Monte Carlo procedures for generating points uniformly distributed over bounded regions, Oper. Res. 32 (1984), 1296–1308.

    Article  MathSciNet  Google Scholar 

  22. R. Stanley, I. G. Macdonald and R. B. Nelsen, Solution of elementary problem E2701, The American Mathematical Monthly 86 issue 5 (1979),396.

    Article  MathSciNet  Google Scholar 

  23. H. Waki, S. Kim, M. Kojima and M. Muramatsu, Sums of Squares and Semidefinite Program Relaxations for Polynomial Optimization Problems with Structured Sparsity, SIAM J. Optim. 17 issue 1 (2006), 218–242.

    Article  MathSciNet  Google Scholar 

Download references

Acknowledgements

We are grateful to an anonymous Reviewer for a deep insight that helped us significantly improve the initial version of this paper. The authors would like to thank an anonymous referee for relevant remarks and observations that were very helpful to improve the initial version of the manuscript.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Matteo Tacchi.

Additional information

Communicated by Felipe Cucker.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

This work was partly funded by the RTE company and by the ERC Advanced Grant Taming.

Appendices

Disjoint Intersection Property

Definition 7

Let \(G = (V,E)\) be a graph with vertices set V and edges set \(E \subset V^2\). The following definitions can be found in [3]:

  • The degree \(\deg v\) of \(v \in V\) is the cardial of the set \(\{w \in V : (v,w) \in E\}\) i.e., the number of vertices connected to v.

  • A clique of G is a subset of vertices \(C \subset V\) such that \(u,v \in C\) implies \((u,v) \in E\).

  • A graph G is chordal if every cycle of length greater than 3 has a chord, i.e., an edge connecting two nonconsecutive vertices on the cycle.

  • A tree \(T=({\mathcal {K}},{\mathcal {E}})\) is a graph without cycle.

  • The treewidth of a chordal graph is the size of its biggest clique minus 1. Thus the treewidth of a tree is 1 and the treewidth of a complete graph (\(E = V^2\)) of size n is \(n-1\).

  • A rooted tree is a tree in which one vertex has been designated the root.

  • In a rooted tree, the parent of a vertex v is the vertex w connected to it on the path to the root; v is then called a child of w; two vertices that have the same parent are called siblings; a descendant of a vertex v is any vertex which is either the child of v or is (recursively) the descendant of any of the children of v; v is then called an ancestor of itself and any of its descendants.

  • The vertices of a rooted tree can be partitioned between the root, the leaves (the vertices that have parents but no children) and the branches (that have children and parents).

  • Let \({\mathcal {K}}\) be the set of maximal cliques of G. A clique tree \(T = ({\mathcal {K}},{\mathcal {E}})\) of G is a tree whose vertices are the maximal cliques of G.

  • A clique tree satisfies the clique intersection property (CIP) if for every pair of distinct cliques \(C,C'\in {\mathcal {K}}\), the set \(C \cap C'\) is contained in every clique on the path connecting C and \(C'\) in the tree. We denote by \({\mathcal {T}}^{ct}\) the set of clique trees of G that satisfy the CIP.

  • The ordering \({\mathcal {K}}= \{C_1,\ldots ,C_N\}\) satisfies the Running Intersection Property (RIP) if \(\forall i \in \{2,\ldots ,N\}\), \(\exists \; k_i \in \{1,\ldots ,i-1\}\) such that \(C_i \cap \bigcup \limits _{j=1}^{i-1}C_j \subset C_{k_i}.\)

  • Let \(A \subset V\). Then, the subgraph of G generated by A is given by \( \langle A \rangle _G := (A,E \cap A^2)\).

Theorem 4

A connected graph G is chordal if and only if \({\mathcal {T}}^{ct} \ne \varnothing \) if and only if \({\mathcal {K}}\) admits an ordering that satisfies the RIP.

Definition 8

Let \(G = (V,E)\) be chordal and connected. Let \(T = ({\mathcal {K}},{\mathcal {E}}) \in {\mathcal {T}}^{ct}\) be a clique tree rooted in \(C_1 \in {\mathcal {K}}\). T satisfies the Disjoint Intersection Property (DIP) if \(\forall C,C',C'' \in {\mathcal {K}}\), if \((C,C') \in {\mathcal {E}}\) and \((C,C'') \in {\mathcal {E}}\) then \(C' = C''\) or \(C' \cap C'' = \varnothing \). In words, each clique has an empty intersection with all its siblings.

We are now going to give a systematic way to enforce Assumption 3 and generate the associated clique trees. Let \(({\mathbf {g}}_1,\dots ,{\mathbf {g}}_m)\) be a correlatively sparse family of polynomial vectors with a connected chordal correlation graph \(G = (V,E)\). Let \({\mathcal {K}}\) be the set of maximal cliques of G. We construct the clique graph \(G_{\mathcal {K}}= ({\mathcal {K}},{\mathcal {F}})\) such that \((C,C') \in {\mathcal {F}}\) iff \(C \cap C' \ne \varnothing \). One can in turn define cliques (called meta-cliques) for this new graph, and its correlative sparsity \(CS_{\mathcal {K}}\) is the size of its biggest maximal meta-clique minus 1. One can note that any clique tree is a subtree of \(G_{\mathcal {K}}\) including all its vertices.

Remark 8

If \(G_{\mathcal {K}}\) itself is a tree (as in section 6.3), then it trivially satisfies the DIP and CIP, and Assumption 3 automatically holds.

Lemma 1

Let \(T = ({\mathcal {K}},{\mathcal {E}})\) be a clique tree satisfying Assumption 3.

  1. 1)

    Let \(C,C' \in {\mathcal {K}}\) such that \(C \ne C'\) and \(C \cap C' \ne \varnothing \). Then, up to permuting them, C is a descendant of \(C'\).

  2. 2)

    Let K be a meta-clique. Then, \(\langle K \rangle _{T}\) is an oriented path of T: the elements of K are ancestor to one another and each \(C \in K\) has its parent in K except one of them.

Proof

  1. 1)

    Let \(C''\) be the last common ancestor of C and \(C'\), meaning that \(C''\) is an ancestor of both C and \(C'\) but any child of \(C''\) is the ancestor of at most one of them. Such ancestor exists since the root \(C_1\) is a common ancestor to C and \(C'\). Then, \(C''\) is on the path between C and \(C'\). Since \(C \ne C'\), up to permuting them, we can suppose that \(C \ne C''\).

    By contradiction, we suppose that \(C' \ne C''\). Then, let \({\hat{C}}\) be the child of \(C''\) that is also the ancestor of C, and \({\tilde{C}}\) the child of \(C''\) that is also the ancestor of \(C'\). Both exist since \(C''\) is an ancestor of C and \(C'\) and \(C \ne C' \ne C''\). \(C''\) being the latest common ancestor of C and \(C'\), we deduce that \({\hat{C}} \ne {\tilde{C}}\) so that \({\hat{C}}\) and \({\tilde{C}}\) are siblings. Then, the DIP ensures that \({\hat{C}} \cap {\tilde{C}} = \varnothing \). However, \({\hat{C}}\) and \({\tilde{C}}\) are on the path between C and \(C'\), so according to the CIP they both contain \(C \cap C'\) which is nonempty. This is a contradiction.

  2. 2)

    According to point 1), all elements of K are descendants of one another, so that they are all on the same path in T. We only have to show that any C between two elements \(C',C''\) of K on this path is also an element of K. Indeed, let \(C''' \in K\). Then, up to a permutation on \(\{C',C'',C'''\}\) we can suppose that the unoriented path includes in this order: \((C',C,C'',C''')\). Then, C is on the path between \(C'\) and \(C'''\), so the CIP implies that \(C \supset C' \cap C'''\) is nonempty (since \(C'\) and \(C'''\) belong to the same clique K), and then C has a nonempty intersection with \(C'''\). This shows that C has a nonempty intersection with any element of K, which by maximality of K is the definition of \(C \in K\).\(\square \)

Corollary 3

If \(G_{\mathcal {K}}\) is a complete graph (all pairs of maximal cliques have nonempty intersection as in section 6.4), then the only candidates for our clique tree are linear clique trees. In such case, Assumption 3 is equivalent to the existence of a reordering of \(({\mathbf {g}}_1,\dots ,{\mathbf {g}}_m)\) such that Assumption 2 holds.

We now give an alogrithm to generate a clique tree \(T = ({\mathcal {K}},{\mathcal {E}})\) that satisfies the DIP and the CIP. In case Assumption 3 does not hold, this algorithm automatically adds edges to E until it finds an appropriate clique tree (see Algorithm 1).

figure a

Remark 9

Algorithm 1 deserves some explanations:

  • Minimizing \(\deg C_1\) is a way to ensure Stokes constraints will be fully implementable, in contrast to the 2 step implementation in section 6.3.

  • Index i denotes a clique that has already been added to the tree; the algorithm adds to the tree every clique that shares vertices with \(C_i\), and then increments i.

  • Index j denotes the meta-clique in which we are working; according to Lemma 1, in such meta-clique the cliques should be added in line.

  • Index k denotes the number of elements that have already been added to the tree; when k is equal to the number of cliques, our clique tree is complete.

  • Index l denotes the lates clique of the meta-clique \(K_j\) that has been added to the tree; according to Lemma 1, \(C_l\) should then be the parent of \(C_{k+1}\).

  • At line 5 we maximize \(|K_j|\) to favor linear configurations as they are the most compatible with Stokes constraints.

  • The if loop at line 8 checks whether it is possible to add the remaining cliques of \(K_j\) to our tree without destroying the CIP.

  • The if loop at line 17 checks whether the clique we want to add destroys the DIP or not.

  • At line 15 we maximize \(|C_{k+1} \cap C_l|\) so that it is less likely to pose problems with CIP and DIP in the future iterations.

  • The if loops at lines 9 and 18 are meant to minimize the correlative sparsity of the new graph \(G = (V,E)\), since it is the limiting factor for the tractability of our algorithm.

Theorem 5

Any clique tree returned by Algorithm 1 satisfies the DIP and the CIP.

Proof

We are going to show by induction that at any step k, the graph \(T_k := ({\mathcal {P}}_k,{\mathcal {E}}_k)\) is a tree that satisfies the CIP and the DIP. First, it is trivial that \(T_1 = (\{C_1\},\varnothing )\) is a tree and satisfies the CIP and the DIP. Next, we suppose that we have constructed a tree \(T_k\) satisfying CIP and DIP through iterations of our algorithm, and that the next iteration leads us to define a \(T_{k+1} := ({\mathcal {P}}_k \cup \{C_{k+1}\}, {\mathcal {E}}_k \cup \{(C_l,C_{k+1}\})\). Since the only edge we added connected \(C_l\) to a new vertex that was not in \(T_k\), it did not introduce any cycle, thus \(T_{k+1}\) is still a tree. We are now going to check the CIP and DIP.

  • Let \(C,C''\in {\mathcal {P}}_{k+1} ; C \cap C'' \ne \varnothing \). Let \(C' \in {\mathcal {P}}_k\) be on the path between C and \(C''\) in \(T_{k+1}\) (\(C' \ne C_{k+1}\) because \(C_{k+1}\) is on no path in \(T_{k+1}\)).

    • If \(C,C'' \in {\mathcal {P}}_k\) then by our induction hypothesis \(C \cap C'' \subset C'\).

    • Else, without loss of generality we have \(C'' = C_{k+1}\) and \(C \in {\mathcal {P}}_k\).

      • Since we successfully passed through the if loop of line 8, we have \(C \cap C_{k+1} \subset C_l\).

      • By our induction assumption (\(T_k\) satisfies the CIP), we have \(C \cap C_l \subset C'\) (because either \(C' = C_l\) or \(C'\) is on the path between C and \(C_l\), the parent of \(C_{k+1}\)).

      This yields \(C' \supset C \cap C_l \supset C \cap (C \cap C_{k+1}) = C \cap C_{k+1} = C \cap C''\).

    Then, \(T_{k+1}\) satisfies the CIP.

  • Let \(C \in {\mathcal {P}}_k,C',C''\in {\mathcal {P}}_{k+1}\) such that \((C,C'),(C,C'')\in {\mathcal {E}}_{k+1}\).

    • If \(C',C'' \in {\mathcal {P}}_k\) then by our induction hypothesis \(C' \cap C'' = \varnothing \).

    • Else, without loss of generality we have \(C'' = C_{k+1}, C=C_l\), and since we successfully passed through the if loop of line 17, we have \(C' \cap C'' = C' \cap C_{k+1} = \varnothing \).

    Then, \(T_{k+1}\) satisfies the DIP.\(\square \)

Finally, we conjecture that if Assumption 3 holds, then Algorithm 1 will directly return a clique tree satisfying the CIP and the DIP without adding any edge to G.

On Monte Carlo simulations

We describe the very basic Monte Carlo approach used in section 5.4. Let \(\xi _1,\ldots ,\xi _N\) be i.i.d. samples from some law \(\mu \). In our case \(\mu \) is the uniform distribution on \([0,1]^n\). Further let f be a function from the probability space into \(\{0,1\}\). Again, in our case, f would return 1 if the sample \(\xi _i\) is in the set \({\mathbf {K}}\), and 0 else. By the strong law of large numbers

$$\begin{aligned} X_N:= \frac{1}{N}\sum _{i=1}^N f(\xi _i) \rightarrow \int f d \mu \text { for } N \rightarrow \infty . \end{aligned}$$

This makes \(X_N\) a reasonable guess if N is large. However, \(X_N\) is still a guess, and it might happen that \(X_N\) is actually far away from the approximated quantity.

As a consequence of the Central Limit Theorem, the difference \(X_N-\int f d \mu \) behaves (almost) like a normal distributed random variable with zero mean and variance \(\sigma ^2/N\) where \(\sigma ^2 = \int (f -\int f d \mu )^2 d \mu \). Note that the variance \(\sigma ^2\) can also be estimated based on the i.i.d. samples \(\xi _1,\ldots ,\xi _N\):

$$\begin{aligned} S_N^2 := \frac{1}{N-1}\sum _{i=1}^N(\xi _i - X_N)^2. \end{aligned}$$

This allows to define a confidence interval for the approximated volume. Indeed, say we are interested in a 99%-confidence interval. Then for G a standard normal distributed random variable, we have \(P(|G|< 2.58) \approx 0.99\) and consequently,

$$\begin{aligned} P\left( X_N -\frac{2.58 S_N}{\sqrt{N}} \le \int f d \mu \le X_N +\frac{2.58 S_N}{\sqrt{N}}\right) \approx 0.99. \end{aligned}$$

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Tacchi, M., Weisser, T., Lasserre, J.B. et al. Exploiting Sparsity for Semi-Algebraic Set Volume Computation. Found Comput Math 22, 161–209 (2022). https://doi.org/10.1007/s10208-021-09508-w

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10208-021-09508-w

Keywords

Mathematics Subject Classification

Navigation