Задача:
Задано параболу

и набор

точек

.
Минимизыровать сумму квадратов расстояний от точек до параболы,
то есть найти такое смещение параболы

, чтобы сумма

была минимальной (

- расстояние от точки

до сдвинутой параболы).
Для упрощения можно считать, что расстояние до параболы считается как разница

(как в регрессионной модели), но хотелось бы использовать реальное расстояние.
При аналитическом решении получаются кубические уравнения (можно решыть через ф-лы Кардано). Поскольку задачу надо решыть на С++ (реальный проект, не учебный), возможно имеет смысл использовать какой либо алгоритм оптимизации (парабола уже является упрощением, в общем случае кривая задана как набор точек, поэтому не сильно хочется завязываться на параболу).
Буду очень благодарен за любую помощь.