Я хочу найти точку B на поверхности в R3 с алгебраическим c выражением
f (x, y) = x ^ 3 + y ^ 2,
заданной точки A, так что точка B находится ближе всего на евклидовом расстоянии и лежит на поверхности. [Обратите внимание, что поверхность на участке не x ^ 3 + y ^ 2, а только для иллюстративных целей].
I я не пользователь Matlab, но я вижу, что функция fmincon или fminsearch может быть способом к go, как предлагается в этой доступной онлайн газете от J BAEK, A. DEOPURKAR, K. REDFIELD (стр. 24, приложение). В качестве альтернативы я подумал о параметризации сферы по ее радиусу вокруг точки A и поиске ее первой точки касания к поверхности, но это породило бы еще много вопросов.
Для fmincon это кажется первым порядком вещей состоит в том, чтобы определить функцию, чтобы минимизировать, и это было бы математически Евклидово расстояние: так, если точка A находится в матрице и соответствует A (:, 1) и B определяется как (b1, b2, b3), формула свести к минимуму будет
(A (1,1) - b1) ^ 2 + (A (2,1) - b2) ^ 2 + (A (3,1) - b3) ^ 2
Как и в первом комментарии, поскольку B должен быть на поверхности, условие ограничения будет
b3 = b1 ^ 3 + b2 ^ 2.
Я не знать, как формализовать это в Matlab, и потребуется ли мне какая-то начальная точка для начала процесса, или A является допустимой начальной точкой.