Fix package names in MatlabInterface

This commit is contained in:
Fabian Becker 2014-10-22 16:21:08 +02:00
parent c93b3ae0ff
commit 117284ace5
5 changed files with 20 additions and 19 deletions

View File

@ -69,11 +69,11 @@ else
end
if (strcmp(datatype,'double'))
int.dataType=eva2.optimization.problems.MatlabProblemDataTypeEnum.typeDouble;
int.dataType=eva2.problems.MatlabProblemDataTypeEnum.typeDouble;
elseif strcmp(datatype, 'int')
int.dataType=eva2.optimization.problems.MatlabProblemDataTypeEnum.typeInteger;
int.dataType=eva2.problems.MatlabProblemDataTypeEnum.typeInteger;
elseif strcmp(datatype, 'binary')
int.dataType=eva2.optimization.problems.MatlabProblemDataTypeEnum.typeBinary;
int.dataType=eva2.problems.MatlabProblemDataTypeEnum.typeBinary;
else
error('Invalid data type, select double, int, or binary!');
end
@ -127,14 +127,14 @@ end
display(getOptions(int));
% finally create the java object
if (isempty(int.initialRange)) % binary case
int.mp = eva2.optimization.problems.MatlabProblem(int.dim, int.dataType, int.range);
int.mp = eva2.problems.MatlabProblem(int.dim, int.dataType, int.range);
else
% size(int.range);
% size(int.initialRange);
% eq(size(int.range), size(int.initialRange))
% disp('-------');
if (isempty(int.range) || (sum(eq(size(int.range), size(int.initialRange)))==2))
int.mp = eva2.optimization.problems.MatlabProblem(int.dim, int.dataType, int.range, int.initialRange);
int.mp = eva2.problems.MatlabProblem(int.dim, int.dataType, int.range, int.initialRange);
%int.mp.getIndividualTemplate().setMutationOperator( ...
% eva2.optimization.operators.mutation.MutateEAMixer(eva2.optimization.operators.mutation.MutateGASwapBits, eva2.optimization.operators.mutation.MutateGAUniform));
else

View File

@ -31,14 +31,14 @@ if ((nargin == 2) || (nargin == 3))
if (ischar(maxEvals)) ; maxEvals= str2num(maxEvals); end;
if (ischar(fTol)) ; fTol = str2num(fTol); end;
import eva2.optimization.operators.terminators.PhenotypeConvergenceTerminator;
import eva2.optimization.operators.terminators.FitnessConvergenceTerminator;
import eva2.optimization.operators.terminators.PopulationMeasureTerminator;
import eva2.optimization.operators.terminators.PopulationMeasureTerminator.*;
import eva2.optimization.operators.terminators.CombinedTerminator;
import eva2.optimization.operators.terminators.EvaluationTerminator;
import eva2.optimization.operator.terminators.PhenotypeConvergenceTerminator;
import eva2.optimization.operator.terminators.FitnessConvergenceTerminator;
import eva2.optimization.operator.terminators.PopulationMeasureTerminator;
import eva2.optimization.operator.terminators.PopulationMeasureTerminator.*;
import eva2.optimization.operator.terminators.CombinedTerminator;
import eva2.optimization.operator.terminators.EvaluationTerminator;
import eva2.OptimizerFactory;
import eva2.optimization.problems.MatlabProblem;
import eva2.problems.MatlabProblem;
% set some default values if theyre not given
% fminsearch, for example, always uses TolX and TolFun with default

View File

@ -22,7 +22,7 @@ end
% disp(sprintf('creating mediator'));
% set up a mediator and inform JE
int.mediator = eva2.optimization.problems.MatlabEvalMediator(int.opts.NiceSleepTime);
int.mediator = eva2.problems.MatlabEvalMediator(int.opts.NiceSleepTime);
int.mp.setMediator(int.mediator);
JEMediator=int.mediator;
createStopBox=int.opts.CreateStopBox;

View File

@ -2,7 +2,7 @@ function testEvalFunc(int)
% Test the fitness function output format.
wordwidth=32;
if (strcmp(int.dataType,eva2.optimization.problems.MatlabProblemDataTypeEnum.typeBinary))
if (strcmp(int.dataType,eva2.problems.MatlabProblemDataTypeEnum.typeBinary))
% binary problem
s=sprintf('Binary problem of bitwidth %d', int.dim);
disp(s);
@ -13,7 +13,7 @@ if (strcmp(int.dataType,eva2.optimization.problems.MatlabProblemDataTypeEnum.typ
%x(numInts)=bitshift(x(numInts),-overheadBits); % shift right by overhead
bs=eva2.tools.math.RNG.randomBitSet(0.5, int.dim);
x=convertUnsignedJE(int, bs);
elseif strcmp(int.dataType,eva2.optimization.problems.MatlabProblemDataTypeEnum.typeDouble)
elseif strcmp(int.dataType,eva2.problems.MatlabProblemDataTypeEnum.typeDouble)
% double problem
x=rand(1, int.dim);
s=sprintf('Real valued problem in %d dimensions and range %s ', int.dim, mat2str(int.range));
@ -21,7 +21,7 @@ elseif strcmp(int.dataType,eva2.optimization.problems.MatlabProblemDataTypeEnum.
for i=1:int.dim
x(i)=int.range(i,1)+x(i)*(int.range(i,2)-int.range(i,1));
end
elseif strcmp(int.dataType,eva2.optimization.problems.MatlabProblemDataTypeEnum.typeInteger)
elseif strcmp(int.dataType,eva2.problems.MatlabProblemDataTypeEnum.typeInteger)
% integer problem
s=sprintf('Real valued problem in %d dimensions and range %s ', int.dim, mat2str(int.range));
disp(s);
@ -38,6 +38,7 @@ else
msg=sprintf('\nTesting value: %s', num2str(x));
end
disp(msg);
disp(int.args);
try
if (isempty(int.args))

View File

@ -5,8 +5,8 @@
% adapt the path settings!
addpath '/home/user/workspace/MatlabInterface' % .. directory containing @JEInterface
javaaddpath '/home/user/workspace/EvA2Base.jar' % .. the EvA2 base package
% addpath 'C:\Dokumente und Einstellungen\user\workspace\MatlabInterface' % Windows will look differently
% javaaddpath 'C:\Dokumente und Einstellungen\user\workspace\EvA2Base.jar' % Windows will look differently
% addpath 'C:\Projects\eva2\resources\MatlabInterface' % Windows will look differently
% javaaddpath 'C:\Projects\eva2\out\artifacts\EvA2\EvA2.jar' % Windows will look differently
% real valued case
R=[-5 -5 -5; 5 5 5];
@ -19,7 +19,7 @@ finalPop=getMultipleResults(JI);
R=30;
JI=JEInterface(@testfun, 'binary', R, R, 4, 'Display', 'iter');
JI=setOutputAllStatsFields(JI, 0); % suppress output of additional statistics, spares runtime with large populations
JI=optimizeWith(JI, 3, 'population', eva2.optimization.populations.Population(1000);
JI=optimizeWith(JI, 3, 'population', eva2.optimization.populations.Population(1000));
[sol, fit]=getResult(JI);
finalPop=getMultipleResults(JI);