File Exchange

image thumbnail

Steepest descent method

version 1.1 (3.25 KB) by

It solves an optimization problem by steepest descent method.



View License

The script steepestdescent.m optimizes a general multi variable real valued function using steepest descent method. During the iterations if optimum step length is not possible then it takes a fixed step length as 0.001. For the theory any good book on optimization techniques can be consulted. This script is also useful in checking whether a given function is convex or concave and hence globally optimizable.

Comments and Ratings (5)


i try the program but it gives an error:

Error using mupadengine/feval (line 157)
MuPAD error: Error: A variable to solve for is required. [solve]

Error in solve (line 170)
sol = eng.feval('symobj::solvefull',eqns,vars);

Error in steepestdescent (line 102)


Jacob (view profile)

I am new to MatLab and was wondering how would I enter the following function in "proper format" since I try with no avail. I could appreciate some idea on how to do that. The functions itself is:

PE(x1,x2) = .5*K1*[sqrt(x1^2+(L1-x2)^2)]^2+.5*K2*[sqrt(x1^2+(L2+x2)^2)]^2-P1*x1-P2*x2

Where, K1, K2, P1, and P2 are constant. Thank you.


Kedar (view profile)

Not a function, so it pollutes the Command Window workspace. Prompts the user for all input including the function to be optimized! Does not require symbolic math toolbox as stated. Has at least one triple nested For loop. Does not appear to use any vectorization.

Why not write this as an m file? I'm not sure what the symbolic toolbox buys you. 3 stars only because you used a toolbox I have no need for and no intention of buying.



A small error has been rectified.

MATLAB Release
MATLAB 7 (R14)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Win prizes and improve your MATLAB skills

Play today