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.
|
| griewangksfcn(x)
|
function f = griewangksfcn(x)
% Template for writing custom test/demonstration functions for psodemo.
% Change the function name and save as a different file to preserve this
% template for future use.
if strcmp(x,'init')
% f.PopInitRange = [-600; 600] ;
f.PopInitRange = [-2; 2] ;
f.KnownMin = [0,0] ;
f.Vectorized = 'on' ;
else
% x = reshape(x,1,[]) ;
idx = repmat(1:size(x,2),size(x,1),1) ;
f = 1/4000*sum(x.*x,2) - prod(cos(x./idx),2) + 1 ;
end
|
|
Contact us at files@mathworks.com