Finding Global minimum of a function by using Powell's Method

조회 수: 12 (최근 30일)
Korhan Bayseç
Korhan Bayseç 2020년 12월 25일
답변: Star Strider 2020년 12월 25일
Hello all,
I want to find the global minimum of the function below, by using Powell's Method. Can you help me to create the code? Thanks!
f(x)= (36.5*x1^2)+(30*x1*x2)+(6.5*x2^2)-(89*x1)-(36*x2)
P.S= x1 and x2 in the function are unknown variables

답변 (1개)

Star Strider
Star Strider 2020년 12월 25일
According to the Wikipedia article, Powell’s method is a derivative-free approach to finding the local miniimum of a function. As with any other nonlinear parameter estimation algorithm, I suspect is is extremely sensitive to the initial parameter estimates. Likely the closest you can get to that using core MATLAB functions is the Nelder-Mead algorithm implimetation in the fminsearch function.
To find the global minimum. it is necessary to search the entire parameter space, and the most efficient algorithm for that (in my opinion, at least) is to use the Global Optiomization Toolbox ga (genetic algorithm) function. If your problelm is well-posed, ga will find the best parameter estimates, although with difficult problems, it may require a few runs with different random initial populations to converge on them.

카테고리

Help CenterFile Exchange에서 Develop Apps Using App Designer에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by