I am trying to minimize a non-linear vector-valued objective (cost) function in MATLAB wherein one component of the solution vector is widely separated in scale.
As a test case for my code, I tried to minimize a function whose solution I know apriori.The apriori known solution vector is x_min = [175, 164, 854, 3.7e5, 6000]. As you can see, the 4th solution component (3.7e5) has a wide difference in scale with the rest of the solution vector. As a result, despite changing tolerances, algorithms etc., the best that MATLAB can find for my x(4) solution is 5.2e5.
I understand that using a diagonal (or close to diagonal) scaling matrix for the objective function can help in finding the minimizing solution , i.e. ideally one must scale the solutions such that the Hessian of the objective function becomes the identity matrix at/near the solution.
But the problem is that the Hessian of a vector-valued function is a higher-dimensional Tensor and not a 2D-matrix. Is there a solution, or any other method for handling this problem ?