I there a way to call variables from my workspace into the genetic algorithm tool? (Without calling them from the fitness function)
3 次查看(过去 30 天)
显示 更早的评论
I have a fitness function which has coeficients that I am importing from a .csv file. The problem is that when I run the GA tool (from its GUI, not from code) it imports the data every iteration (which is very time consuming). I have tried removing the line where I read the table, since "data" is already in my workspace, however the tool doesn't recognize variables that in my workspace. Is it possible to have variables in my fitness function (data.Die and data.DiePD in my case) that are in my worspace without having to create those in my function?
function Sum_Sqr=GA_(x)
data=readtable('test.csv');
x1=x(1);x2=x(2);
dT = (x1*data.DieA.^x2).*data.DiePD
Sum_Sqr = sumsqr ( sum(dT,2) - data.t1);
0 个评论
采纳的回答
Stephen23
2020-10-23
编辑:Stephen23
2020-10-23
"Is it possible to have variables in my fitness function (data.Die and data.DiePD in my case) that are in my worspace without having to create those in my function?"
Of course. You just need to parameterize your function, the MATLAB documentation explains how:
Basically you need to add those variables as inputs to the function, e.g.:
function Sum_Sqr=GA_(x,data)
and then in the workspace where the function is used you need something like this:
data = readtable('test.csv');
..
ga(@(x)GA_(x,data), .. )
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Genetic Algorithm 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!