image thumbnail

PartSwamOpt(fun, funCInEq, funCEq, lb, ub, penalty, popsize, maxiter, maxrun)

version 3.1.0.0 (7.18 KB) by Lateef Adewale Kareem
Function for searching for minimizer of a function

220 Downloads

Updated 19 Aug 2017

View License

% This minimizes the function fun, subject to the inequality constraints
% funCInEq and Equality constrants funCEq within the hyperbox between lb
% and ub
% fun = function handle for the function to be minimized
% funCInEq = function handle for the inequality condition (set to
% empty matrix when there is no inequality condition)
% funCEq = function handle for the equality condition (set to
% empty matrix when there is no equality condition)
% lb = vector of lower bounds
% ub = vector of upper bounds
% penalty = scale violation of constrain conditions (usually between 10
% and 100)
% popsize = population size (usually 30 to 50)
% maxiter = maximum iteration(less than 500)
% maxrun = maximum number of runs( 10 or less)
%% %%%%%%%%%%%%%%%% Examples %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 1.
% Roosenbrook = @(x) (1 - x(1))^2 + 100*(x(2) - x(1)^2)^2;
% PartSwamOpt(Roosenbrook, [], [], [-2;-1], [2;3], 0, 30, 500, 10);
% 2.
% Adjiman = @(x) cos(x(1))*sin(x(2)) – x(1)/(x(2)^2 + 1);
% PartSwamOpt(Adjiman, [], [], [-1;-1], [2;1], 0, 30, 500, 10);
% 3.
% Beale = @(x) (1.5-x(1) + x(1)*x(2))^2 + (2.25-x(1) + x(1)*x(2)^2)^2 + (2.625-x(1) + x(1)*x(2)^3)^2;
% PartSwamOpt(Beale, [], [], [-1;-1], [2;1], 0, 30, 500, 10);

Cite As

Lateef Adewale Kareem (2022). PartSwamOpt(fun, funCInEq, funCEq, lb, ub, penalty, popsize, maxiter, maxrun) (https://www.mathworks.com/matlabcentral/fileexchange/58034-partswamopt-fun-funcineq-funceq-lb-ub-penalty-popsize-maxiter-maxrun), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2012b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

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

Start Hunting!