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.

 채택된 답변

Walter Roberson
Walter Roberson 2019년 1월 17일
@(x) sum(diff(x).^2)

댓글 수: 4

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!!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터 및 File Exchange에서 Problem-Based Optimization Setup에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by