-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathga_uav.m
More file actions
30 lines (28 loc) · 1.47 KB
/
ga_uav.m
File metadata and controls
30 lines (28 loc) · 1.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
clc
clear all
num_vars = 1;
Fitnessfunc = @uav_error_function_yaw;%@uav_error_function;%@uav_error_function_lin;
upper = 1e11*ones(1,num_vars);
lower = 0*ones(1,num_vars);
options = gaoptimset;
%options = gaoptimset(options,'MutationFcn', @mutationgaussian);
options = gaoptimset(options,'Display', 'off');
options = gaoptimset(options,'TolFun',1e-15);
options = gaoptimset(options,'PopInitRange',[lower ;upper]);
options = gaoptimset(options,'Generations',100);
options = gaoptimset(options,'PopulationSize',1000);
options = gaoptimset(options,'UseParallel', 'always');
%options = gaoptimset(options,'SelectionFcn',{@selectionroulette});
%options = gaoptimset(options,'MutationFcn',{@mutationuniform, 0.1});
%options = gaoptimset(options,'CrossoverFcn', {@crossoversinglepoint});
options = gaoptimset(options,'EliteCount',5);
options = gaoptimset(options,'StallGenLimit',100);
options = gaoptimset(options,'PlotFcns',{@gaplotbestf, @gaplotbestindiv, @gaplotexpectation, @gaplotgenealogy});
%options = gaoptimset(options,'UseParallel', true);
options = gaoptimset(options,'Vectorized', 'off');
options = gaoptimset(options,'Display', 'iter');
%options = gaoptimset(options,'OutputFcn',@gaoutfun);
IntCon = 1;
%%
[x,fval,exitflag,output,population,score] = ...
ga(Fitnessfunc,num_vars,[],[],[],[],lower, upper,[],IntCon,options);