Если сфера не может быть увеличена с помощью вашего метода «толкания и движения по бюджету», то она должна касаться, по крайней мере, 4 других сфер.
Для 4 сфер есть только одна сфера, которая касается всех из них.(положение и радиус - 4 неизвестных, определяемые 4 уравнениями расстояния до заданных сфер)
Итак, попробуйте все комбинации из 4 сфер.Для каждой комбинации найдите касательную сферу и посмотрите, пересекает ли она какие-либо другие.
Эта идея разбивает вашу проблему на конечное число возможностей.Простой алгоритм берет O (n ^ 5), что все еще долго, хотя, если у вас много сфер.Вы можете использовать трехмерную диаграмму Вороного, чтобы значительно ускорить это, как подсказывает @YvesDaoust.