www.gusucode.com > MATLAB——三维空间映射源码程序 > MATLAB——三维空间映射源码程序/spMODE/spMODEparam.m
%% spMODEparam % Generates the required parameters to run the spMODE optimization % algorithm. %% %% Beta version % Copyright 2006 - 2012 - CPOH % % Predictive Control and Heuristic Optimization Research Group % http://cpoh.upv.es % % ai2 Institute % http://www.ai2.upv.es % % Universitat Polit鑓nica de Val鑞cia - Spain. % http://www.upv.es % %% %% Author % Gilberto Reynoso-Meza % gilreyme@upv.es % http://cpoh.upv.es/en/gilberto-reynoso-meza.html % http://www.mathworks.es/matlabcentral/fileexchange/authors/289050 %% %% For new releases and bug fixing of this Tool Set please visit: % 1) http://cpoh.upv.es/en/research/software.html % 2) Matlab Central File Exchange %% %% Overall Description % This code implements a version of the multi-objective differential % evolution algorithm with spherical pruning described in: % % Gilberto Reynoso-Meza, Javier Sanchis, Xavier Blasco, Miguel Mart韓ez. % Design of Continuous Controllers Using a Multiobjective Differential % Evolution Algorithm with Spherical Pruning. Applications of Evolutionary % Computation. LNCS Volume 6024, 2010, pp 532-541. % %% %% Variables regarding the multi-objective problem spMODEDat.NOBJ = 3; % Number of objectives spMODEDat.NVAR = 20; % Number of decision variables spMODEDat.mop =... str2func('CostFunction'); % Cost Function spMODEDat.CostProblem = 'DTLZ2'; % Problem Instance spMODEDat.FieldD = ... [zeros(spMODEDat.NVAR,1) ... ones(spMODEDat.NVAR,1)]; % Optimization bounds spMODEDat.Initial = spMODEDat.FieldD;% Initialization bounds % %% %% Variables regarding the optimization algorithm (Differential Evolution) spMODEDat.Xpop = 4*spMODEDat.NVAR; % Population size spMODEDat.SubXpop=2*spMODEDat.NVAR; % SubPopulation size spMODEDat.ScalingFactor = 0.5; % Scaling factor spMODEDat.CRrate= 0.5; % Croosover Probability % %% %% Variables regarding spreading (spherical pruning) spMODEDat.Strategy='SphP'; % 'Push' for a basic Dominance-based % selection; 'SphP' for the spherical % pruning; spMODEDat.Alphas=10; % Number of Arcs (Strategy='SphP'). spMODEDat.Norma='manhattan'; % Norm to be used in Strategy='SphP'; % It could be 'eucliden', 'manhattan', % 'infinite'. spMODEDat.StopSize=15000; % Maximum Pareto optimal solutions % required. % %% %% Variables regarding convergence improving (elitism) spMODEDat.CarElite = ... % Solutions from the Approximated spMODEDat.SubXpop/2 - ... % Pareto front in a generation spMODEDat.NOBJ; % to be merged with the population % in the evolution process. % %% %% Variables regarding basic pertinency (Bounds on objectives) % spMODEDat.Pertinency=[]; % Bounds on objectives; implemented % in the CostFunction. A row for each % objective, minimum and maximum % values desired. If empty, the % Pareto front approximated will be % unbounded. Please, refer to: % G. Reynoso-Meza, J. Sanchis, X. Blasco, J.M. Herrero. Multiobjective % evolutionary algorithms for multivariable PI controller design. Expert % Systems with Applications Volume 39, Issue 9, July 2012, Pages 7895?907. % %% %% Regarding Constraint Handling (different for objectives bound) % % Constraints could be defined as additional objectives. For an example % please refer to: % % G. Reynoso-Meza, X. Blasco, J. Sanchis, M. Mart韓ez. Multiobjective % optimization algorithm for solving constrained single objective problems. % Evolutionary Computation (CEC), 2010 IEEE Congress on. 18-23 July 2010 % % In such case, we encourage to define a pertinency vector (above). % %% %% Execution Variables spMODEDat.MAXGEN =1e3; % Generation bound spMODEDat.MAXFUNEVALS = 2e4; % Function evaluations bound spMODEDat.PobInitial=[]; % Initial population (if any) spMODEDat.SaveResults='yes'; % Write 'yes' if you want to % save your results after the % optimization process; % otherwise, write 'no'; spMODEDat.Plotter='yes'; % 'yes' if you want to see some % a graph at each generation. spMODEDat.SeeProgress='no'; % 'yes' if you want to see some % information at each generation. % %% %% Initialization (don't modify) spMODEDat.CounterGEN=0; % Counter for generations. spMODEDat.CounterFES=0; % Counter for function evaluations. % %% %% Put here the variables required by your code (if any). % % % %% Release and bug report: % % November 2012: Initial release