Skip to main content
Log in

Is a Finite Intersection of Balls Covered by a Finite Union of Balls in Euclidean Spaces?

  • Published:
Journal of Optimization Theory and Applications Aims and scope Submit manuscript

Abstract

Considering a finite intersection of balls and a finite union of other balls in an Euclidean space, we propose an exact method to test whether the intersection is covered by the union. We reformulate this problem into quadratic programming problems. For each problem, we study the intersection between a sphere and a Voronoi-like polyhedron. That way, we get information about a possible overlap between the frontier of the union and the intersection of balls. If the polyhedra are non-degenerate, the initial nonconvex geometric problem, which is NP-hard in general, is tractable in polynomial time by convex optimization tools and vertex enumeration. Under some mild conditions, the vertex enumeration can be skipped. Simulations highlight the accuracy and efficiency of our approach compared with competing algorithms in Python for nonconvex quadratically constrained quadratic programming. This work is motivated by an application in statistics to the problem of multidimensional changepoint detection using pruned dynamic programming algorithms.

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

Similar content being viewed by others

Notes

  1. The Python code is available on my github ’vrunge’ in repository called ’QP_vs_QCQP’ https://github.com/vrunge/QP_vs_QCQP/blob/master/simulations.ipynb.

  2. website of the Python package http://pycddlib.readthedocs.io/en/latest/.

  3. It would also work for (non-penalized) segment neighborhood method [24].

References

  1. Baker, M.J.C.: A spherical helly-type theorem. Pac. J. Math. 23(1), 1–3 (1967)

    Article  MathSciNet  Google Scholar 

  2. Maehara, H.: Helly-type theorems for spheres. Discrete Comput. Geom. 4(3), 279–285 (1989). https://doi.org/10.1007/BF02187730

    Article  MathSciNet  MATH  Google Scholar 

  3. Avis, D., Bhattacharya, B.K., Imai, H.: Computing the volume of the union of spheres. Vis. Comput. 3(6), 323–328 (1988). https://doi.org/10.1007/BF01901190

    Article  MATH  Google Scholar 

  4. Cazals, F., Kanhere, H., Loriot, S.: Computing the volume of a union of balls: a certified algorithm. ACM Trans. Math. Softw. 38(1), 3:1–3:20 (2011). https://doi.org/10.1145/2049662.2049665

    Article  MathSciNet  MATH  Google Scholar 

  5. Chkhartishvili, L.S.: Volume of the intersection of three spheres. Math. Notes 69(3), 421–428 (2001). https://doi.org/10.1023/A:1010295711303

    Article  MathSciNet  MATH  Google Scholar 

  6. Böröczky, K.: Finite Packing and Covering, vol. 154. Cambridge University Press, Cambridge (2004)

    Book  Google Scholar 

  7. Glazyrin, A.: Covering a ball by smaller balls. Discrete Comput. Geom. (2018). https://doi.org/10.1007/s00454-018-0010-4

    Article  MathSciNet  MATH  Google Scholar 

  8. Verger-Gaugry, J.L.: Covering a ball with smaller equal balls in n. Discrete Comput. Geom. 33(1), 143–155 (2005). https://doi.org/10.1007/s00454-004-2916-2

    Article  MathSciNet  MATH  Google Scholar 

  9. Nguyen, T., Boissonnat, J., Falzon, F., Knauer, C.: A disk-covering problem with application in optical interferometry. CoRR arXiv:abs/cs/0612026 (2006). URL http://arxiv.org/abs/cs/0612026

  10. Gershman, A.B., Sidiropoulos, N.D., Shahbazpanahi, S., Bengtsson, M., Ottersten, B.: Convex optimization-based beamforming. IEEE Signal Process. Mag. 27(3), 62–75 (2010)

    Article  Google Scholar 

  11. Huang, Y., Palomar, D.P.: Randomized algorithms for optimal solutions of double-sided qcqp with applications in signal processing. IEEE Trans. Signal Process. 62(5), 1093–1108 (2014). https://doi.org/10.1109/TSP.2013.2297683

    Article  MathSciNet  MATH  Google Scholar 

  12. Park, J., Boyd, S.: General heuristics for nonconvex quadratically constrained quadratic programming. ArXiv e-prints (2017)

  13. Luo, Q.Z., Ma, K.W., So, C.A.M., Ye, Y., Zhang, S.: Semidefinite relaxation of quadratic optimization problems. IEEE Signal Process. Mag. 27(3), 20–34 (2010). https://doi.org/10.1109/MSP.2010.936019

    Article  Google Scholar 

  14. Anstreicher, M.: On convex relaxations for quadratically constrained quadratic programming. Math. Program. 136(2), 233–251 (2012). https://doi.org/10.1007/s10107-012-0602-3

    Article  MathSciNet  MATH  Google Scholar 

  15. Mehanna, O., Huang, K., Gopalakrishnan, B., Konar, A., Sidiropoulos, N.D.: Feasible point pursuit and successive approximation of non-convex qcqps. IEEE Signal Process. Lett. 22(7), 804–808 (2015). https://doi.org/10.1109/LSP.2014.2370033

    Article  Google Scholar 

  16. Scutari, G., Facchinei, F., Lampariello, L.: Parallel and distributed methods for constrained nonconvex optimization. part i: theory. IEEE Trans. Signal Process. 65(8), 1929–1944 (2017). https://doi.org/10.1109/TSP.2016.2637317

    Article  MathSciNet  MATH  Google Scholar 

  17. Kozlov, M., Tarasov, S., Khachiyan, L.: The polynomial solvability of convex quadratic programming. USSR Comput. Math. Math. Phys. 20(5), 223–228 (1980). https://doi.org/10.1007/s10107-012-0602-3

    Article  MathSciNet  MATH  Google Scholar 

  18. Ye, Y., Tse, E.: An extension of karmarkar’s projective algorithm for convex quadratic programming. Math. Programm. 44(1), 157–179 (1989). https://doi.org/10.1007/BF01587086

    Article  MathSciNet  MATH  Google Scholar 

  19. Avis, D., Fukuda, K.: A pivoting algorithm for convex hulls and vertex enumeration of arrangements and polyhedra. Discrete Comput. Geom. 8(3), 295–313 (1992). https://doi.org/10.1007/BF02293050

    Article  MathSciNet  MATH  Google Scholar 

  20. Freund, R.M., Orlin, J.B.: On the complexity of four polyhedral set containment problems. Math. Program. 33(2), 139–145 (1985). https://doi.org/10.1007/BF01582241

    Article  MathSciNet  MATH  Google Scholar 

  21. Diamond, S., Boyd, S.: CVXPY: a Python-embedded modeling language for convex optimization. J. Mach. Learn. Res. 17(83), 1–5 (2016)

    MathSciNet  MATH  Google Scholar 

  22. Boyd, S., Parikh, N., Chu, E., Peleato, B., Eckstein, J.: Distributed optimization and statistical learning via the alternating direction method of multipliers. Found. Trends Mach. Learn. 3(1), 1–122 (2011). https://doi.org/10.1561/2200000016

    Article  MATH  Google Scholar 

  23. Fukuda, K., Prodon, A.: Double description method revisited. In: Deza, M., Euler, R., Manoussakis, I. (eds.) Combinatorics and Computer Science, pp. 91–111. Springer, Berlin (1996)

    Chapter  Google Scholar 

  24. Auger, I.E., Lawrence, C.E.: Algorithms for the optimal identification of segment neighborhoods. Bull. Math. Biol. 51(1), 39–54 (1989). https://doi.org/10.1007/BF02458835

    Article  MathSciNet  MATH  Google Scholar 

  25. Fearnhead, P., Rigaill, G.: Changepoint detection in the presence of outliers. J. Am. Stat. Assoc. (2017). https://doi.org/10.1080/01621459.2017.1385466

    Article  MATH  Google Scholar 

  26. Maidstone, R., Hocking, T., Rigaill, G., Fearnhead, P.: On optimal multiple changepoint algorithms for large data. Stat. Comput. 27(2), 519–533 (2017). https://doi.org/10.1007/s11222-016-9636-3

    Article  MathSciNet  MATH  Google Scholar 

  27. Rigaill, G.: A pruned dynamic programming algorithm to recover the best segmentations with 1 to kmax change-points. J. Soc. Franc. Stat. 156(4), 180–205 (2015)

    MathSciNet  MATH  Google Scholar 

Download references

Acknowledgements

I would like to thank my colleagues Guillem Rigaill (Université Paris-Saclay IPS2, INRAE, Univ Evry), Michel Koskas and Julien Chiquet (Université Paris-Saclay INRAE, AgroParisTech) for relevant comments and for their encouraging attitude regarding this work. This work was supported by an ATIGE grant from Genopole.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Vincent Runge.

Additional information

Communicated by Juan-Enrique Martinez Legaz.

Publisher's Note

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

Appendices

Appendices

Motivation

Our covering problem has a direct application for the implementation of the pruned penalizedFootnote 3 dynamic programming algorithm for changepoint detection in a multidimensional setting [25,26,27]. This problem consists in finding the optimal changepoint within the set \({\mathbb {S}}_m = \{\tau =(\tau _1,\ldots ,\tau _k) \in {\mathbb {N}}^k \,|\, 1 = \tau _0< \tau _1< \cdots< \tau _k < m+1 = \tau _{k+1}\}\) such that we minimize a quadratic (for Gaussian modelization) penalized cost (by \(\beta >0\)):

$$\begin{aligned} Q_m= & {} \min _{\tau \in {\mathbb {S}}_m}\left[ \sum _{i=0}^{k}\lbrace {\mathcal {C}}(y_{\tau _i:\tau _{i+1}-1}) + \beta \rbrace \right] \,,\\ \hbox {with}\quad {\mathcal {C}}(y_{\tau _i:\tau _{i+1}-1})= & {} \min _{x \in {\mathbb {R}}^n} \sum _{j=\tau _i}^{\tau _{i+1}-1} \sum _{k=1}^{n}(x_k- y_{jk})^2\,, \end{aligned}$$

and \((y_1,\ldots ,y_m)^T \in ({\mathbb {R}}^n)^m\) the data to segment. Using a dynamic programming procedure, we build the recursion \(Q_{t+1}(x) = \min \lbrace Q_{t}(x),\, m_{t}+\beta \rbrace + \sum _{k=1}^{n}(x_k- y_{(t+1)k})^2\) with \(m_t = \min _{x} Q_t(x)\) and the initialization \(Q_0(x) = 0\). We solve this recursion iteratively from \(t=0\) to \(t=m-1\).

At each t, the recursive function \(Q_t(\cdot )\) is a piecewise quadratic function defined on t non-overlapping regions \(R^1_t,\ldots ,R^t_t \subset {\mathbb {R}}^n\), for which each quadratics is active on a set \(R^i_t\) of type “\({\mathcal {I}}\setminus {\mathcal {U}}\)”. Precisely,

$$\begin{aligned} \begin{aligned}&R_t^1 = \cap _{i=1}^t B_i^1\,, \\&R_t^2 = \cap _{i=2}^t B_i^2 \setminus B_1^1\,, \\&R_t^3 = \cap _{i=3}^t B_i^3 \setminus (B_2^1 \cup B_2^2)\,, \\&\quad \quad \vdots \\&R_t^t = R_t^t \setminus (\cup _{j=1}^{t-1}B_{t-1}^j)\,.\\ \end{aligned} \end{aligned}$$

where all the “\(B_l^k\)” sets designate balls determined by the data \((y_k,\ldots ,y_l)\). At the next iteration \(t+1\), each \(R_t^i\) is intersected by a new ball (that is, we add a ball in each \({\mathcal {I}}\)) and the set \(R_{t+1}^{t+1}\) is created.

In order to get the global minimum \(m_t\), we compare the minima of all present quadratics. To speed-up the procedure, it is worthwhile to search for vanishing sets, that is to detect efficiently the emptiness of sets \(R_t^1,\ldots ,R_t^t\). In fact, once a set is proved to be empty, we do not need to consider its minimum anymore at any further iteration. This method is called pruning in the changepoint detection literature.

In a paper in preparation, we will compare this exact method to heuristic approaches in order to build a fast algorithm for an application to genomic data. Moreover, our methods can be extended to other distributions of the natural exponential family.

An Alternative Method

In some applications, as for example in “Appendix A,” we need to test sequentially the covering. This means that we add at each iteration a new ball in the intersection \({\mathcal {I}}\). For large q, it could be expensive to solve q QP problems at each iteration for minimum and maximum. Another approach consists in detecting an intersection between \({\mathcal {I}}\setminus {\mathcal {U}}\) and \({\mathbb {S}}\) (as soon as \(\#{\mathcal {I}} >0\)), where \({\mathbb {S}}\) is the frontier of the new ball \({\mathbb {B}}\) (with center c and radius R) to add in \({\mathcal {I}}\). The problem is now centered on the “newest” ball of set \(\varLambda \) rather than the successive balls of V. Thus, a unique QP problem centered on the ball \({\mathbb {B}}\) is built and we get a result similar to Theorem 3.1:

Theorem B.1

If \(V_n(\varPi )>0\), we have the following results.

  1. (a)

    If there exists \((x^-, x^+)\in \varPi \times \varPi \) such that \(\Vert x^--c\Vert ^2< R^2 < \Vert x^+-c\Vert ^2\),

    then \(({\mathbb {B}} \cap {\mathcal {I}}) \setminus {\mathcal {U}} \ne ~\emptyset \) and \(V_n(({\mathbb {B}} \cap {\mathcal {I}}) \setminus {\mathcal {U}}) > 0\);

  2. (b)

    if \(R^2 \le \Vert x^*_{min}-c\Vert ^2\) or \(\Vert x^*_{max}-c\Vert ^2 \le R^2\), then \({\mathbb {S}}\cap ({\mathcal {I}}\setminus {\mathcal {U}}) = \emptyset \).

In case (b), we can conclude knowing a point \({\tilde{x}}_k\) for each connected component \(C_k\) \((k=1,\ldots ,K)\) of \({\mathcal {I}}\setminus {\mathcal {U}}\) and testing \({\tilde{x}}_k \in {\mathbb {B}}\). If always false, we get \(({\mathbb {B}} \cap {\mathcal {I}}) \setminus {\mathcal {U}} = \emptyset \). The drawback of this approach is the necessity to know the number of connected components in \({\mathcal {I}}\setminus {\mathcal {U}}\). However, with the conditions of Theorem 4.1 the set \({\mathcal {I}}\setminus {\mathcal {U}}\) is connected (see the proof) and a unique point in \({\mathcal {I}}\setminus {\mathcal {U}}\) is required \((K = 1)\).

Proposition 3.2 remains the same with \({\mathbb {B}}\) instead of \({\mathbf {B}}\). The detection of the inclusion \({\mathcal {I}} \subset {\mathbb {B}}\) is now made possible and is important for sequential problems, since in this case, the ball \({\mathbb {B}}\) is not added to the set \(\varLambda \).

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Runge, V. Is a Finite Intersection of Balls Covered by a Finite Union of Balls in Euclidean Spaces?. J Optim Theory Appl 187, 431–447 (2020). https://doi.org/10.1007/s10957-020-01762-2

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10957-020-01762-2

Keywords

Mathematics Subject Classification

Navigation