С учетом функции:
градиент просто:
Проверка это для дальнейших деталей.
Следовательно, ваша реализация MATLAB:
g = A'*(A*x-b);
где g - градиент вашей функции для данного x.
Обратите внимание, что A, b и x являются числовыми, а не символическими.
Доказательство
Символический подход
Вы можете использовать следующий код:
N = 3;
A = [1 0 1;
2 1 -1;
3 1 0];
b = [1;
2;
3];
x = sym('x', [N, 1]);
f = 0.5*norm(A*x-b)^2;
g = sym('g', [N, 1]); % g is the gradient of f
for i=1:N
g(i) = diff(f,x(i));
end