Code covered by the BSD License
-
...
This is like "soft" boundaries, except that some kind of penalty value
-
...
-
...
Particle swarm optimization for binary genomes.
-
...
-
...
Find the minimum of a function using Particle Swarm Optimization.
-
ackleysfcn(x)
Ackley's Function.
-
binarytestfcn(x)
-
dejongsfcn(x)
-
dropwavefcn(x)
-
evolutioncomplete(options,sta...
Plays a notification when genetic algorithm finishes. Requires a
-
griewangksfcn(x)
Template for writing custom test/demonstration functions for psodemo.
-
langermannsfcn(x)
-
nonlinearconstrdemo(x)
Nonlinear constraints demo with Rosenbrock's function.
-
psoboundsabsorb(state,Aineq,b...
-
psodemo(DemoMode)
Runs the PSO on a few demonstration functions, which should be located
-
psoiterate(options,state,flag...
Updates swarm positions and velocities. Called to iterate the swarm from
-
psooptimset(varargin)
Creates an options structure for pso.
-
psoplotbestf(options,state,fl...
Plots the best, mean, and worst scores of particle swarm.
-
psoplotscores(options,state,f...
Plots the best and mean scores of particle swarm.
-
psoplotswarm(options,state,fl...
Plots the positions of particle swarm.
-
psoplotswarmsurf(options,stat...
Shows the evolution of a 2-variable population over a known surface. This
-
rastriginsfcn(x)
Takes row inputs. If not row, will attempt to correct it.
-
rosenbrocksfcn(x)
Takes row inputs. If input is not row, will attempt to correct it.
-
schwefelsfcn(x)
Schwefel's function.
-
templatefcn(x)
Template for writing custom test/demonstration functions for psodemo.
-
testfcn1(x)
-
View all files
from
Another Particle Swarm Toolbox
by Sam
Implementation of a PSO algorithm with the same syntax as the Genetic Algorithm Toolbox.
|
| schwefelsfcn(x)
|
function f = schwefelsfcn(x)
% Schwefel's function.
if strcmp(x,'init')
f.Aineq = [] ;
f.bineq = [] ;
f.Aeq = [] ;
f.beq = [] ;
f.LB = -500*ones(1,2) ; f.UB = 500*ones(1,2) ;
f.nonlcon = [] ;
f.options.PopulationSize = 500 ;
f.options.PopInitRange = [-500; 500] ;
f.options.ConstrBoundary = 'absorb' ;
f.options.KnownMin = 420.9687*ones(1,2) ;
else
x = reshape(x,1,[]) ;
f = sum(-x.*sin(sqrt(abs(x))),2) ;
end
|
|
Contact us at files@mathworks.com