У меня есть некоторые данные формыКак найти квадратичную квадратичную верхнюю границу квадрата с квадратичной ошибкой?
x1[i], x2[i], x3[i], z[i]
,
где z[i]
неизвестная детерминированная функция x1[i], x2[i], and x3[i]
. Я хотел бы найти квадратичную функцию u(x1, x2, x3)= a11*x1^2 + a22*x2^2 + a33*x3^2 + a12*x1*x2 + ... + a0
, которая перечеркивает данные, то есть u(x1[i], x2[i], x3[i]) >= z[i]
для всех i
, и это минимизирует сумму квадратов ошибок, связанных с ограничениями.
Есть ли подход с эффективным вычислением в Python или Matlab?
Можете ли вы показать, что этот подход минимизирует сумму квадратов ошибок с ограничениями? – Arpi
Hello Andrey, Спасибо, что ответили, но этот подход не работает. Следующий сеанс IPython демонстрирует простой встречный пример: В [1]: x = array ([0, 1, 2, 3, 4]) В [2]: y = array ([0, 0, 1 , 0, 0]) В работе [3]: polyval (polyfit (х, у, 2), х) Из [3]: массив ([- 0,08571429, 0,34285714, 0,48571429, 0,34285714, -0,08571429]) Центральная точка - это та, которая требует наибольшей коррекции (1-0,4857 = 0,5143). Если мы смещаем всю кривую на эту величину, квадратичная область намного выше конечных точек. –