Numerical Optimization: Write a numerical objective function

I have to minimize a numerical objective function of the form:
min Σ(x(i+1)-x(i))^2, i=1..10 and x(i) are the variables to be optimized
I tried using the symssum but doesn't give any results and I have not found anything else in the documentation. Does anyone have any idea how to write this? Thanks in advance.

 Accepted Answer

@(x) sum(diff(x).^2)

4 Comments

Thank you for your answer, but this returns always the derivative of x, so it is always 1.
It would only return the derivative if you are passing a symbolic variable to it; you should be passing a numeric vector to it.
For extra certainty you could code
@(x) sum( (x(2:end) - x(1:end-1)).^2 )
Thank you, this works perfectly!!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!