Smallest Enclosing Ball

Published: 23 November 2020| Version 1 | DOI: 10.17632/d8hds82d6s.1
Xiangyang Huang


Library to find the smallest enclosing ball of points in three algorithms based on QR-decompostion implemented by Martin Kutz <>, Kaspar Fischer <>. 1. Shrinking algorithm in shrink() in "Seb-inl.h". Authors: Martin Kutz <>, Kaspar Fischer <> 2. Dual algorithm in dual() in "Seb-inl.h". a variant of Cavaleivro and Alizadeh, which checks one facet in line search. Authors: X.Y. Huang <> 3. Hybrid algoritm in hybrid() in "Seb-inl.h". a dual algorithm that uses a shrinking method to solve subproblems. Authors: X.Y. Huang <> Additionally, Cavaleivro and Alizadeh's algorithm is available in dual2(), which checks at most two facets in line search. Authors: X.Y. Huang <>


Steps to reproduce

The implementation is based on ( On Linux (ubuntu) or MacOS, # Compile an example, which generates random points and computes their miniball g++ -I../main example.C -o example -O3 # Run it on one million points in 3D ./example 1000000 3 # or on almost-cospherical points ./example 10000 1000 boundary


Capital Normal University


Combinatorial Optimization, Convex Optimization