#matlab #gradient #mathematical-optimization #hessian-matrix
#matlab #градиент #математическая оптимизация #матрица мешанины
Вопрос:
Как вычислить градиент и матрицу гессиана, когда уравнение не может быть решено численно?
Мое уравнение минимизации:
c=c[(x/y/(1-x)^2)^0.6 (1-(x/y)/(1-y)^2)^0.6 6/y^0
Я попробовал использовать функцию MATLAB «diff» для вычисления градиента и мешанины. Но вычисления намного длиннее, чем можно обработать. Как написать код для вычисления коэффициента мешковины или градиента?
Комментарии:
1. Здесь вам может повезти больше: math.stackexchange.com
2. Не могли бы вы добавить изображение функции для минимизации? Спасибо.
Ответ №1:
Почему вы говорите, что уравнение не может быть решено численно? Вы имеете в виду, что это не может быть решено аналитически? Похоже, что в вашем описании функции c, которую вы хотите оптимизировать, допущена опечатка. Когда вы ссылаетесь на использование вами функции Matlab diff(), имеете ли вы в виду, что вы оценили свою функцию в сетке, а затем разнесли ее? Или вы говорите о передаче дескриптора функции в символьную библиотеку Matlab?