我正在使用MATLAB优化工具进行遗传算法优化。
我要打开一个名为“m_0a4”的新脚本
FitnessFunction = @m_0b4;
NumberOfVariables = 1;
[x,fval] = ga(FitnessFunction, numberOfVariables);%Here I minimize the difference y
我要打开第二个新脚本,命名为“m_0b4”
function y = m_0b4(x)
prompt = 'write it down';
i = input(prompt) %the input value
y = x - i
我有一个可执行的fortran代码,我想从MATLAB运行。
我尝试使用以下两个选项,但得到了错误:
!/home/atrac/code case172.jcl
error:- ls: cannot access ./id: No such file or directory
ls: cannot access ./id: No such file or directory
!gnome-terminal --command "./home/myhome/code case12.jcl"
error: There was an error creating child pro
我刚刚开始使用DEAP。在此之前,我使用了基于Matlab的遗传算法,即经过交叉和变异后,选择具有指定大小的个体,然后对种群进行更新。但是,我很难理解为什么在DEAP中,在交叉和变异过程之后,需要对身体健康无效的个体进行评估:
invalid_ind = [ind for ind in offspring if not ind.fitness.valid]
fitnesses = map(toolbox.evaluate, invalid_ind)
for ind, fit in zip(invalid_ind, fitnesses):
ind.fitness.values = fit
我对R比较陌生,需要建立一个遗传算法来找到一个方程,它会产生一定数量的素数。
install.packages("GA")
install.packages("matlab")
library(GA)
library(matlab)
f <- function(x)
{
#initialize fitness score
score <- 0
#set test values for k
k <- seq(from = 1, to = 100,by = 1)
#test if the result of the form
我使用ga MATLAB优化工具来最小化目标函数。
我在同一个脚本main.m中创建了两个函数。如果我不使用变量a,那么遗传算法工作得很好。当我引入变量a,在main.m中的每个迭代a = fcn( a );中调用它时,就会得到一个错误,输入参数不够。(第5行)
%% main function
function [x,fval,a] = main()
nvars = 1; a = 0; % assign the number of values and the variable a
a = fcn( a,t ); % call the fitness fcn
[x,fval] = g
我想具体说明MATLAB的优化工具箱的遗传算法生成的种群范围:
function y= fitness_fct(x,L,R,score_initial)
y=sqrt(power(((power(L,x(1)) +power(R,x(2))) -score_initial),2));
x(1) %here i see that the values are sometimes negative
end
for i=1:22
FitnessFunction =@(x) fitness_fct(x,L(i) ,R(i),score_initial(i));