How can I optimize the following conditions using Genetic Algorithms.
1 view (last 30 days)
Show older comments
Dhanu Naik
on 31 Jan 2018
Commented: Walter Roberson
on 1 Feb 2018
I have a objective function
y=obj(x,N,phaseNoise)
Where
- x -> decision variable of length N.
- PhaseNoise -> a random variable.
And I have a constraint function
[C Ceq]=constraint (x,N)
Where x & N same as above.
I need to call GA using those two function.
But GA only assumes both Objective function and Constraints function should be depend on x of same length.
How can I achieve Generic Programming?
Accepted Answer
Walter Roberson
on 31 Jan 2018
N = ...
phaseNoise = ...
A = []; b = [];
Aeq = []; beq = [];
lb = []; ub = [];
nonlcon = @(x) constraint(x, N);
intcon = ...
options = ....
fun = @(x) obj(x, N, phaseNoise);
ga(fun, N, A, b, Aeq, beq, lb, ub, nonlcon, intcon, options)
9 Comments
Walter Roberson
on 1 Feb 2018
creatAnonymousFcn is not part of any of the more-than 50 toolboxes that I have installed, not as a major function and not as any internal method called by a function.
Walter Roberson
on 1 Feb 2018
You have
for n=0:N-1
m(n)=m(n)+x(n)*(-1)^(N-n-1)*x(N-n-1)*phase(n);
end
which starts n at 0 and then uses m(n), which is an attempt to index m at location 0, which is not permitted in MATLAB.
More Answers (1)
See Also
Categories
Find more on Genetic Algorithm in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!