Skip to main content
Log in

An algorithm for estimating non-convex volumes and other integrals in n dimensions

  • Published:
Computational and Applied Mathematics Aims and scope Submit manuscript

Abstract

The computational cost in evaluation of the volume of a body using numerical integration grows exponentially with dimension of the space n. The most generally applicable algorithms for estimating n-volumes and integrals are based on Markov Chain Monte Carlo (MCMC) methods. They have well-bounded rates of convergence for convex domains, but in general, are suited for domains with smooth boundaries. We analyze a less known alternate method for estimating n-dimensional volumes, that is agnostic to the roughness and non-convexity of the boundaries of the body. It results due to the possible decomposition of an arbitrary n-volume into an integral of statistically weighted volumes of n-spheres. We establish its dimensional scaling and extend it for evaluation of arbitrary integrals over non-convex domains. Our results also show that this method is more efficient than the MCMC approach even when restricted to the typical convex domains, for n \(\lesssim \) 100. An importance sampling may extend this advantage to larger n.

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

Similar content being viewed by others

Notes

  1. Start with a reference point in the domain to generate a unit random vector \(\hat{s}\). Move the reference point by \((R_1-R_2)\hat{s}\) where \(R_1\) and \(R_2\) are the extents of the domain in directions \(\hat{s}\) and -\(\hat{s}\). Repeat the process until the reference point converges to the nominal centroid. This method scales as O(n) for a given shape, though the front constant can be large for needles and pencils.

References

  • Acebrón JA (2020) A probabilistic linear solver based on a multilevel Monte Carlo method. J Sci Comput 82(3):65

    Article  MathSciNet  MATH  Google Scholar 

  • Allgower EL, Schmidt PH (1986) Computing volumes of polyhedra. Math Comput 46(173):171–174

    Article  MathSciNet  MATH  Google Scholar 

  • Arun I, Venkatapathi M (2021) An O(n) algorithm for generating uniform random vectors in n-dimensional cones. arXiv:2101.00936

  • Bernstein HJ (1984) An accelerated bisection method for the calculation of eigenvalues of a symmetric tridiagonal matrix. Numer Math 43(1):153–160

    Article  MathSciNet  MATH  Google Scholar 

  • Cousins B (2022) Volume and sampling. https://in.mathworks.com/matlabcentral/fileexchange/43596-volume-and-sampling

  • Del Moral P, Doucet A, Jasra A (2012) An adaptive sequential Monte Carlo method for approximate Bayesian computation. Stat Comput 22(5):1009–1020

    Article  MathSciNet  MATH  Google Scholar 

  • Dick J (2007) Explicit constructions of quasi-Monte Carlo rules for the numerical integration of high-dimensional periodic functions. SIAM J Numer Anal 45(5):2141–2176

    Article  MathSciNet  MATH  Google Scholar 

  • Dyer ME, Frieze AM (1988) On the complexity of computing the volume of a polyhedron. SIAM J Comput 17(5):967–974

    Article  MathSciNet  MATH  Google Scholar 

  • Dyer M, Frieze A (1991) Computing the volume of convex bodies: a case where randomness provably helps. Probabil Combin Appl 44:123–170

    MathSciNet  MATH  Google Scholar 

  • Fok D, Crevier D (1989) Volume estimation by Monte Carlo methods. J Stat Comput Simul 31(4):223–235

    Article  MathSciNet  MATH  Google Scholar 

  • Ge C, Ma F (2015) A fast and practical method to estimate volumes of convex polytopes. In: International Workshop on Frontiers in Algorithmics, Springer, New York, pp 52–65

  • Groh DJ, Marshall RA, Kunz AB, Givens CR (1991) An approximation method for eigenvectors of very large matrices. J Sci Comput 6(3):251–267

    Article  MathSciNet  MATH  Google Scholar 

  • Gunawan D, Tran M-N, Suzuki K, Dick J, Kohn R (2019) Computationally efficient Bayesian estimation of high-dimensional Archimedean copulas with discrete and mixed margins. Stat Comput 29(5):933–946

    Article  MathSciNet  MATH  Google Scholar 

  • Henrion D, Lasserre JB, Savorgnan C (2009) Approximate volume and integration for basic semi algebraic sets. SIAM Rev 51(4):722–743

    Article  MathSciNet  MATH  Google Scholar 

  • Jaekel U (2011) A Monte Carlo method for high-dimensional volume estimation and application to polytopes. In: ICCS, pp 1403–1411

  • Kannan R, Lovász L, Simonovits M (1997) Random walks and an o*(n5) volume algorithm for convex bodies. Random Struct Algorithms 11(1):1–50

    Article  MATH  Google Scholar 

  • Kearfott RB (1987) Some tests of generalized bisection. ACM Trans Math Softw 13(3):197–220

    Article  MathSciNet  MATH  Google Scholar 

  • Keshavarzzadeh V, Kirby RM, Narayan A (2018) Numerical integration in multiple dimensions with designed quadrature. SIAM J Sci Comput 40(4):A2033–A2061

    Article  MathSciNet  MATH  Google Scholar 

  • Lawrence J (1991) Polytope volume computation. Math Comput 57(195):259–271

    Article  MathSciNet  MATH  Google Scholar 

  • Lovász L, Vempala S (2003) Simulated annealing in convex bodies and an o*(n/sup 4/) volume algorithm. In: Foundations of Computer Science, 2003. Proceedings of 44th Annual IEEE Symposium on, IEEE, pp 650–659

  • Montenegro R, Tetali P et al (2006) Mathematical aspects of mixing times in Markov chains. Found Trends Theor Comput Sci 1(3):237–354

    Article  MathSciNet  MATH  Google Scholar 

  • Morgan A, Shapiro V (1987) Box-bisection for solving second-degree systems and the problem of clustering. ACM Trans Math Softw 13(2):152–167

    Article  MathSciNet  MATH  Google Scholar 

  • Pury PA (1990) Asymmetry and convergence in the central limit theorem: an approach for physicists. Am J Phys 58(1):62–67

    Article  Google Scholar 

  • Rademacher L, Vempala S (2008) Dispersion of mass and the complexity of randomized geometric algorithms. Adv Math 219(3):1037–1069

    Article  MathSciNet  MATH  Google Scholar 

  • Radivojević T, Akhmatskaya E (2020) Modified Hamiltonian Monte Carlo for Bayesian inference. Stat Comput 30(2):377–404

    Article  MathSciNet  MATH  Google Scholar 

  • Simonovits M (2003) How to compute the volume in high dimension? Math Program 97(1–2):337–374

    Article  MathSciNet  MATH  Google Scholar 

  • Speevak T (1986) An efficient algorithm for obtaining the volume of a special kind of pyramid and application to convex polyhedra. Math Comput 46(174):531–536

    Article  MathSciNet  MATH  Google Scholar 

  • Zappa E, Holmes-Cerfon M, Goodman J (2018) Monte Carlo on manifolds: sampling densities and integrating functions. Commun Pure Appl Math 71(12):2609–2647

    Article  MathSciNet  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Contributions

The authors have no relevant financial or non-financial interests to disclose. The authors acknowledge the support of the Science and Engineering Research Board (SERB) Grant MTR/2019/000712 in performing this research.

Corresponding author

Correspondence to Murugesan Venkatapathi.

Additional information

Communicated by Hector Cancela.

Publisher's Note

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

Appendix A. Multi-valued extent function

Appendix A. Multi-valued extent function

In case the extent function S is multi-valued (see 1b), the volume of a body, whether it is simply connected or not, is

$$\begin{aligned} V = \oint _{S^{n-1}} \left\{ \sum _{\text {odd }j}\int _{S^{j-1}(\hat{s})}^{S^j(\hat{s})} \rho ^{n-1}\textrm{d}\rho \right\} \textrm{d}\hat{s} \end{aligned}$$
(A.1)

with \(j = 1, 2, 3, \dotsc \), and the above can again be reduced to the statistical estimate of the volume as

$$\begin{aligned} V = \frac{1}{n} \oint _{S^{n-1}} r^n \textrm{d}\hat{s} = \left\{ \frac{1}{n} \oint _{S^{n-1}} \textrm{d}\hat{s}\right\} \left\{ \int _0^\infty r^n f_R(r) \textrm{d}r\right\} \end{aligned}$$
(A.2)

with the random extent R now generalized as

$$\begin{aligned} R^n = \sum _j (-1)^{j+1} R_j^n \end{aligned}$$
(A.3)

where \(R_1< R_2 < R_3\dots \) are the random extents representing multiple values \(S^j\) for a given direction \(\hat{s}\), and \(S^0\)=0 always. Note that the largest natural number j representing number of extents in a given direction, is always odd for a closed body defined by a bounding surface S around the origin of reference. In case, the origin is outside the closed body, the number of extents is even valued and this can be treated by a simple negation of signs in the above equation defining the generalized extents. Using bisection to determine the multiple extents in such cases may need more advanced methods that have been described elsewhere (Bernstein 1984; Kearfott 1987; Morgan and Shapiro 1987).

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Isaac, A., Jawlekar, A. & Venkatapathi, M. An algorithm for estimating non-convex volumes and other integrals in n dimensions. Comp. Appl. Math. 42, 242 (2023). https://doi.org/10.1007/s40314-023-02364-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s40314-023-02364-0

Keywords

Mathematics Subject Classification

Navigation