From d9cc88e60db5ed23dada2bf99a2964e6b79077bc Mon Sep 17 00:00:00 2001 From: Fabian Becker Date: Sun, 19 Oct 2014 12:37:35 +0200 Subject: [PATCH] Major code cleanup. --- src/eva2/OptimizerFactory.java | 12 +++--- src/eva2/OptimizerRunnable.java | 4 +- src/eva2/examples/TestingCbnPostProc.java | 1 - src/eva2/examples/TestingGAB1.java | 1 - src/eva2/examples/TestingPlusCmaEs.java | 1 - src/eva2/gui/BeanInspector.java | 21 ++++------ src/eva2/gui/EvAModuleButtonPanelMaker.java | 3 +- src/eva2/gui/HtmlDemo.java | 6 +-- src/eva2/gui/JEFrameRegister.java | 2 +- src/eva2/gui/JParaPanel.java | 11 +---- src/eva2/gui/JTextEditorInternalFrame.java | 2 +- src/eva2/gui/Main.java | 2 +- src/eva2/gui/OptimizationEditorPanel.java | 4 +- src/eva2/gui/PropertyDoubleArray.java | 2 +- src/eva2/gui/PropertyEpsilonConstraint.java | 2 +- src/eva2/gui/PropertyEpsilonThreshold.java | 2 +- src/eva2/gui/PropertyFilePath.java | 2 +- src/eva2/gui/PropertyIntArray.java | 2 +- .../gui/PropertyOptimizationObjectives.java | 2 +- ...opertyOptimizationObjectivesWithParam.java | 2 +- src/eva2/gui/PropertySelectableList.java | 2 +- src/eva2/gui/PropertySheetPanel.java | 6 +-- src/eva2/gui/PropertySheetPanelStat.java | 18 +------- .../gui/PropertyWeightedLPTchebycheff.java | 2 +- src/eva2/gui/editor/BigStringEditor.java | 2 - src/eva2/gui/editor/EnumEditor.java | 2 +- src/eva2/gui/editor/GenericAreaEditor.java | 4 +- src/eva2/gui/editor/GenericArrayEditor.java | 4 +- .../gui/editor/GenericDoubleArrayEditor.java | 3 +- src/eva2/gui/editor/GenericObjectEditor.java | 4 +- src/eva2/gui/plot/DPointSetMultiIcon.java | 6 +-- src/eva2/gui/plot/FunctionArea.java | 32 +++++++-------- src/eva2/gui/plot/GraphPointSet.java | 2 +- src/eva2/gui/plot/GraphWindow.java | 4 +- src/eva2/optimization/ModuleServer.java | 4 +- .../enums/ESMutationInitialSigma.java | 2 +- .../enums/MutateESCrossoverTypeEnum.java | 2 +- .../optimization/enums/PostProcessMethod.java | 2 +- src/eva2/optimization/go/MOCCOStandalone.java | 2 +- .../go/StandaloneOptimization.java | 4 +- .../individuals/ESIndividualBinaryData.java | 4 +- .../individuals/ESIndividualDoubleData.java | 4 +- .../individuals/ESIndividualIntegerData.java | 4 +- .../ESIndividualPermutationData.java | 4 +- .../GAESIndividualBinaryDoubleData.java | 4 +- .../individuals/GAIndividualBinaryData.java | 4 +- .../individuals/GAIndividualDoubleData.java | 4 +- .../individuals/GAIndividualIntegerData.java | 4 +- .../individuals/GAPIndividualProgramData.java | 4 +- .../individuals/GEIndividualProgramData.java | 4 +- .../individuals/GIIndividualIntegerData.java | 4 +- ...IOBGAIndividualIntegerPermutationData.java | 4 +- .../individuals/GPIndividualProgramData.java | 8 ++-- .../codings/gp/AbstractGPNode.java | 14 +------ .../individuals/codings/gp/GPArea.java | 12 +++--- .../individuals/codings/gp/GPNodeAbs.java | 2 +- .../individuals/codings/gp/GPNodeAdd.java | 2 +- .../individuals/codings/gp/GPNodeCos.java | 2 +- .../individuals/codings/gp/GPNodeDiv.java | 2 +- .../individuals/codings/gp/GPNodeExp.java | 2 +- .../codings/gp/GPNodeFlowExec2.java | 2 +- .../codings/gp/GPNodeFlowExec3.java | 2 +- .../individuals/codings/gp/GPNodeInput.java | 7 +--- .../individuals/codings/gp/GPNodeMult.java | 2 +- .../individuals/codings/gp/GPNodeNeg.java | 2 +- .../individuals/codings/gp/GPNodeOne.java | 2 +- .../individuals/codings/gp/GPNodeOutput.java | 7 +--- .../individuals/codings/gp/GPNodePi.java | 2 +- .../individuals/codings/gp/GPNodePow2.java | 2 +- .../individuals/codings/gp/GPNodePow3.java | 2 +- .../individuals/codings/gp/GPNodeProd.java | 2 +- .../individuals/codings/gp/GPNodeSin.java | 2 +- .../individuals/codings/gp/GPNodeSqrt.java | 2 +- .../individuals/codings/gp/GPNodeSub.java | 2 +- .../individuals/codings/gp/GPNodeSum.java | 2 +- .../mocco/MOCCOProblemInitialization.java | 2 +- .../optimization/modules/DEParameters.java | 4 +- .../optimization/modules/EPParameters.java | 4 +- .../optimization/modules/GAParameters.java | 4 +- .../modules/GenericModuleAdapter.java | 4 +- .../optimization/modules/HCParameters.java | 4 +- .../optimization/modules/MCParameters.java | 4 +- .../optimization/modules/MOEAParameters.java | 14 +++---- .../optimization/modules/PBILParameters.java | 4 +- .../optimization/modules/PSOParameters.java | 4 +- src/eva2/optimization/modules/Processor.java | 12 +++--- .../optimization/modules/SAParameters.java | 4 +- .../optimization/modules/SSGAParameters.java | 4 +- .../operator/archiving/AbstractArchiving.java | 6 +-- .../archiving/ArchivingAllDominating.java | 2 +- .../operator/archiving/ArchivingMaxiMin.java | 2 +- .../operator/archiving/ArchivingNSGA.java | 2 +- .../operator/archiving/ArchivingNSGAII.java | 2 +- .../operator/archiving/ArchivingPESAII.java | 2 +- .../operator/archiving/ArchivingSPEAII.java | 2 +- .../InformationRetrievalInserting.java | 2 +- .../archiving/InformationRetrievalNone.java | 2 +- .../InformationRetrievalReplacing.java | 2 +- ...oveSurplusIndividualsDynamicHyperCube.java | 2 +- .../RemoveSurplusIndividualsSMetric.java | 2 +- ...moveSurplusIndividualsStaticHyperCube.java | 2 +- .../ClassificationSelfOrganizingMaps.java | 10 +---- .../cluster/ClusteringDensityBased.java | 14 ++----- .../cluster/ClusteringDynPeakIdent.java | 28 +------------ .../operator/cluster/ClusteringKMeans.java | 2 +- .../cluster/ClusteringNearestBetter.java | 2 +- .../operator/cluster/ClusteringXMeans.java | 2 +- .../ConstBelongsToDifferentClass.java | 4 +- ...tObjectivesInEqualityBiggerThanLinear.java | 2 +- ...ObjectivesInEqualityBiggerThanSurface.java | 2 +- ...tObjectivesInEqualityLesserThanLinear.java | 2 +- ...bjectivesInEqualitySmallerThanSurface.java | 2 +- .../constraint/ConstraintHandlingEnum.java | 2 +- .../constraint/ConstraintRelationEnum.java | 2 +- .../operator/crossover/CrossoverEAMixer.java | 6 +-- .../crossover/CrossoverESArithmetical.java | 6 +-- .../crossover/CrossoverESBLXAlpha.java | 5 +-- .../crossover/CrossoverESDefault.java | 6 +-- .../operator/crossover/CrossoverESFlat.java | 6 +-- .../crossover/CrossoverESIntermediate.java | 6 +-- .../crossover/CrossoverESNPointDiscrete.java | 5 +-- .../CrossoverESNPointDiscreteDislocation.java | 5 +-- .../operator/crossover/CrossoverESPCX.java | 11 +---- .../operator/crossover/CrossoverESSBX.java | 5 +-- .../operator/crossover/CrossoverESSPX.java | 6 +-- .../operator/crossover/CrossoverESUNDX.java | 6 +-- .../crossover/CrossoverESUniformDiscrete.java | 6 +-- .../crossover/CrossoverGABitSimulated.java | 6 +-- .../crossover/CrossoverGADefault.java | 12 +----- .../crossover/CrossoverGAGINPoint.java | 5 +-- .../crossover/CrossoverGAUniform.java | 6 +-- .../crossover/CrossoverGIDefault.java | 6 +-- .../operator/crossover/CrossoverGINPoint.java | 5 +-- .../crossover/CrossoverGINPointVL.java | 5 +-- .../crossover/CrossoverGIUniform.java | 6 +-- .../crossover/CrossoverGPDefault.java | 6 +-- .../operator/crossover/CrossoverOBGAPMX.java | 4 +- .../crossover/CrossoverOBGAPMXUniform.java | 4 +- .../operator/crossover/NoCrossover.java | 6 +-- .../crossover/PropertyCrossoverMixer.java | 2 +- .../PropertyCrossoverMixerEditor.java | 2 +- .../operator/crossover/TestESCrossover.java | 6 +-- .../distancemetric/EuclideanMetric.java | 2 +- .../distancemetric/GenotypeMetricBitSet.java | 2 +- .../distancemetric/ObjectiveSpaceMetric.java | 2 +- .../distancemetric/PhenotypeMetric.java | 4 +- .../SigmaSingleMetricGlobalMutation.java | 2 +- .../migration/MOClusteringSeparation.java | 2 +- .../operator/migration/MOConeSeparation.java | 4 +- .../migration/MOXMeansSeparation.java | 2 +- .../moso/MOSODynamicallyWeightedFitness.java | 2 +- .../operator/moso/MOSOEpsilonConstraint.java | 2 +- .../operator/moso/MOSOEpsilonThreshold.java | 2 +- .../operator/moso/MOSOGoalProgramming.java | 4 +- .../operator/moso/MOSOLpMetric.java | 2 +- .../operator/moso/MOSOMOGARankBased.java | 2 +- .../operator/moso/MOSOMaxiMin.java | 2 +- .../operator/moso/MOSONoConvert.java | 2 +- .../operator/moso/MOSORandomChoice.java | 2 +- .../operator/moso/MOSORandomWeight.java | 2 +- .../operator/moso/MOSORankbased.java | 2 +- .../operator/moso/MOSOUtilityFunction.java | 2 +- .../operator/moso/MOSOWeightedFitness.java | 4 +- .../moso/MOSOWeightedLPTchebycheff.java | 2 +- .../operator/mutation/MutateDefault.java | 8 +--- .../operator/mutation/MutateEAMixer.java | 8 ++-- .../operator/mutation/MutateESCorrVector.java | 7 +--- .../MutateESCovarianceMatrixAdaption.java | 12 +++--- .../mutation/MutateESFixedStepSize.java | 5 +-- .../operator/mutation/MutateESGlobal.java | 7 +--- .../mutation/MutateESMainVectorAdaption.java | 10 ++--- .../MutateESMutativeStepSizeControl.java | 5 +-- .../mutation/MutateESPathLengthAdaption.java | 4 +- .../operator/mutation/MutateESPolynomial.java | 5 +-- .../mutation/MutateESSuccessRule.java | 5 +-- .../operator/mutation/MutateGAAdaptive.java | 5 +-- .../operator/mutation/MutateGAGISwapBits.java | 5 +-- .../MutateGAGISwapBitsSegmentwise.java | 2 +- .../operator/mutation/MutateGAInvertBits.java | 7 +--- .../operator/mutation/MutateGANBit.java | 6 +-- .../mutation/MutateGAShiftSubstring.java | 7 +--- .../mutation/MutateGASwapBitsSegmentwise.java | 7 +--- .../mutation/MutateGIInsertDelete.java | 5 +-- .../operator/mutation/MutateGIInvert.java | 7 +--- .../operator/mutation/MutateGINominal.java | 5 +-- .../operator/mutation/MutateGIOrdinal.java | 6 +-- .../mutation/MutateGITranslocate.java | 5 +-- .../operator/mutation/MutateGPAdaptive.java | 7 +--- .../operator/mutation/MutateGPSingleNode.java | 6 +-- .../operator/mutation/MutateOBGAFlip.java | 6 +-- .../mutation/MutateOBGAInversion.java | 8 +--- .../operator/mutation/NoMutation.java | 6 +-- .../mutation/PropertyMutationMixer.java | 2 +- .../mutation/PropertyMutationMixerEditor.java | 2 +- .../ConsiderPBestAbsorptionStrategy.java | 10 +---- .../EuclideanDiversityAbsorptionStrategy.java | 11 +---- .../StandardAbsorptionStrategy.java | 2 +- .../DummyDeactivationStrategy.java | 2 +- .../ImprovementDeactivationStrategy.java | 2 +- .../StandardDeactivationStrategy.java | 2 +- .../merging/StandardMergingStrategy.java | 2 +- .../DummySubswarmCreationStrategy.java | 2 +- .../StandardSubswarmCreationStrategy.java | 2 +- .../AbstractParameterControl.java | 1 - .../CbpsoFitnessThresholdBasedAdaption.java | 6 +-- .../paramcontrol/ConstraintBasedAdaption.java | 2 - .../PSOActivityFeedbackControl.java | 2 - .../paramcontrol/ParameterControlManager.java | 1 - .../MetricD1ApproxParetoFront.java | 2 +- .../MetricD1TrueParetoFront.java | 2 +- .../paretofrontmetrics/MetricErrorRatio.java | 2 +- .../MetricMaximumParetoFrontError.java | 2 +- .../MetricOverallNonDominatedVectors.java | 2 +- .../operator/paretofrontmetrics/MetricS.java | 2 +- .../MetricSWithReference.java | 2 +- .../operator/postprocess/PostProcess.java | 4 +- .../postprocess/SolutionHistogram.java | 6 +-- .../operator/selection/SelectAll.java | 2 +- .../selection/SelectBestIndividuals.java | 2 +- .../operator/selection/SelectBestSingle.java | 2 +- .../selection/SelectEPTournaments.java | 2 +- .../selection/SelectHomologousMate.java | 2 +- .../SelectMOMAIIDominanceCounter.java | 2 +- .../operator/selection/SelectMOMaxiMin.java | 2 +- .../SelectMONSGAIICrowedTournament.java | 2 +- .../selection/SelectMONonDominated.java | 2 +- .../operator/selection/SelectMOPESA.java | 2 +- .../operator/selection/SelectMOPESAII.java | 2 +- .../operator/selection/SelectMOSPEAII.java | 2 +- .../selection/SelectParticleWheel.java | 2 +- .../operator/selection/SelectRandom.java | 2 +- .../operator/selection/SelectTournament.java | 2 +- .../selection/SelectXProbRouletteWheel.java | 2 +- .../probability/AbstractSelProb.java | 8 ++-- .../probability/SelProbBoltzman.java | 2 +- .../probability/SelProbFitnessSharing.java | 4 +- .../probability/SelProbInvertByMax.java | 2 +- .../probability/SelProbLinearRanking.java | 2 +- .../probability/SelProbNonLinearRanking.java | 2 +- .../selection/probability/SelProbRanking.java | 2 +- .../probability/SelProbStandard.java | 2 +- .../probability/SelProbStandardScaling.java | 2 +- .../ReplaceDeterministicCrowding.java | 2 +- .../replacement/ReplacementCrowding.java | 2 +- .../terminators/DiversityTerminator.java | 1 - .../terminators/FitnessValueTerminator.java | 2 +- .../PopulationMeasureTerminator.java | 6 --- .../optimization/population/Population.java | 22 ++++------ .../population/PopulationInitMethod.java | 2 +- .../optimization/stat/AbstractStatistics.java | 11 ++--- .../optimization/stat/GenericStatistics.java | 4 +- src/eva2/optimization/stat/MovingAverage.java | 2 +- .../optimization/stat/OptimizationJob.java | 41 +++---------------- .../stat/OptimizationJobList.java | 8 ++-- .../optimization/stat/StatisticsWithGUI.java | 2 +- src/eva2/optimization/strategies/ANPSO.java | 22 +++++----- .../CHCAdaptiveSearchAlgorithm.java | 2 +- .../strategies/ClusterBasedNichingEA.java | 39 ++++++++---------- .../strategies/ClusteringHillClimbing.java | 2 +- .../strategies/DifferentialEvolution.java | 10 ++--- .../DynamicParticleSwarmOptimization.java | 4 +- .../optimization/strategies/EsDpiNiching.java | 2 +- .../strategies/EvolutionStrategies.java | 8 +--- .../strategies/EvolutionStrategyIPOP.java | 2 +- .../strategies/EvolutionaryProgramming.java | 4 +- .../strategies/FloodAlgorithm.java | 2 +- .../strategies/GeneticAlgorithm.java | 6 +-- .../optimization/strategies/HillClimbing.java | 2 +- .../strategies/IslandModelEA.java | 4 +- .../strategies/MemeticAlgorithm.java | 4 +- .../strategies/MonteCarloSearch.java | 2 +- .../strategies/MultiObjectiveEA.java | 2 +- .../strategies/NelderMeadSimplex.java | 4 +- .../optimization/strategies/NicheGraph.java | 2 +- .../optimization/strategies/NichePSO.java | 20 ++++----- .../ParticleFilterOptimization.java | 4 +- .../ParticleSubSwarmOptimization.java | 8 ++-- .../strategies/ParticleSwarmOptimization.java | 12 ++---- .../ParticleSwarmOptimizationGCPSO.java | 4 +- .../PopulationBasedIncrementalLearning.java | 2 +- .../strategies/ScatterSearch.java | 6 +-- .../strategies/SimulatedAnnealing.java | 2 +- .../strategies/SteadyStateGA.java | 2 +- .../strategies/ThresholdAlgorithm.java | 2 +- .../strategies/WingedMultiObjectiveEA.java | 2 +- .../strategies/tribes/TribesPosition.java | 5 +-- .../tools/AbstractObjectEditor.java | 2 +- .../GeneralGenericObjectEditorPanel.java | 6 +-- .../tools/ImpactOfDimensionOnMOEAs.java | 4 +- src/eva2/optimization/tools/TestingDArea.java | 1 - .../problems/AbstractDynTransProblem.java | 2 +- .../AbstractMultiModalProblemKnown.java | 6 +-- .../problems/AbstractOptimizationProblem.java | 8 ++-- src/eva2/problems/AbstractProblemInteger.java | 4 +- src/eva2/problems/B1Problem.java | 2 +- src/eva2/problems/BKnapsackProblem.java | 2 +- src/eva2/problems/ExternalRuntimeProblem.java | 6 +-- src/eva2/problems/F10Problem.java | 2 +- src/eva2/problems/F11Problem.java | 2 +- src/eva2/problems/F12Problem.java | 2 +- src/eva2/problems/F13Problem.java | 2 +- src/eva2/problems/F14Problem.java | 2 +- src/eva2/problems/F2Problem.java | 4 +- src/eva2/problems/F3Problem.java | 2 +- src/eva2/problems/F4Problem.java | 2 +- src/eva2/problems/F5Problem.java | 2 +- src/eva2/problems/F6Problem.java | 4 +- src/eva2/problems/F7Problem.java | 2 +- src/eva2/problems/F8Problem.java | 2 +- src/eva2/problems/F9Problem.java | 2 +- src/eva2/problems/FLensProblem.java | 8 ++-- src/eva2/problems/FM0Problem.java | 2 +- src/eva2/problems/I1Problem.java | 2 +- src/eva2/problems/MatlabEvalMediator.java | 1 - src/eva2/problems/MatlabProblem.java | 4 +- .../problems/MatlabProblemDataTypeEnum.java | 2 +- src/eva2/problems/PSymbolicRegression.java | 6 +-- src/eva2/problems/TF1Problem.java | 4 +- .../problems/regression/RFKoza_GPI_10_1.java | 2 +- .../problems/regression/RFKoza_GPI_10_2.java | 2 +- .../problems/regression/RFKoza_GPI_7_3.java | 2 +- .../regression/RFKoza_GPI_7_3_extended.java | 2 +- src/eva2/problems/regression/RFRaidl_F1.java | 2 +- src/eva2/problems/regression/RFRaidl_F2.java | 2 +- src/eva2/problems/regression/RFRaidl_F3.java | 2 +- src/eva2/tools/BasicResourceLoader.java | 16 ++++---- src/eva2/tools/EVAHELP.java | 4 +- src/eva2/tools/JarResources.java | 6 +-- src/eva2/tools/KMEANSJAVA.java | 2 +- src/eva2/tools/MultirunRefiner.java | 4 +- src/eva2/tools/PairComparator.java | 8 ++-- src/eva2/tools/ReflectPackage.java | 6 +-- src/eva2/tools/SelectedTag.java | 2 +- src/eva2/tools/Serializer.java | 4 +- src/eva2/tools/TXTFileFilter.java | 8 +--- src/eva2/tools/ToolBoxGui.java | 2 +- .../chart2d/Chart2DDPointIconContent.java | 1 - src/eva2/tools/chart2d/DContainer.java | 14 +++---- src/eva2/tools/chart2d/DMeasures.java | 4 +- src/eva2/tools/chart2d/DRectangle.java | 26 +++--------- src/eva2/tools/chart2d/ScaledBorder.java | 6 +-- src/eva2/tools/chart2d/SlimRect.java | 6 +-- src/eva2/tools/math/BayNet.java | 2 +- src/eva2/tools/math/Mathematics.java | 12 ++---- src/eva2/tools/math/RNG.java | 2 +- src/eva2/tools/math/StatisticUtils.java | 20 ++++----- .../math/interpolation/PolyInterpolation.java | 35 ++-------------- src/eva2/tools/matlab/JMatLink.java | 8 ++-- 348 files changed, 594 insertions(+), 1033 deletions(-) diff --git a/src/eva2/OptimizerFactory.java b/src/eva2/OptimizerFactory.java index 3e9817c0..7bcf27be 100644 --- a/src/eva2/OptimizerFactory.java +++ b/src/eva2/OptimizerFactory.java @@ -94,7 +94,7 @@ public class OptimizerFactory { * @param listener * @return An optimization algorithm that performs differential evolution. */ - public static final DifferentialEvolution createDifferentialEvolution( + public static DifferentialEvolution createDifferentialEvolution( AbstractOptimizationProblem problem, int popsize, double f, double lambda, double CR, InterfacePopulationChangedEventListener listener) { @@ -136,7 +136,7 @@ public class OptimizerFactory { * @param listener * @return An optimization algorithm that employs an evolution strategy. */ - public static final EvolutionStrategies createEvolutionStrategy(int mu, + public static EvolutionStrategies createEvolutionStrategy(int mu, int lambda, boolean plus, InterfaceMutation mutationoperator, double pm, InterfaceCrossover crossoveroperator, double pc, InterfaceSelection selection, AbstractOptimizationProblem problem, @@ -164,7 +164,7 @@ public class OptimizerFactory { * @param listener * @return An optimization algorithm that employs an IPOP-ES. */ - public static final EvolutionStrategyIPOP createEvolutionStrategyIPOP(int mu, + public static EvolutionStrategyIPOP createEvolutionStrategyIPOP(int mu, int lambda, boolean plus, InterfaceMutation mutationoperator, double pm, InterfaceCrossover crossoveroperator, double pc, double incPopSizeFact, double stagThresh, AbstractOptimizationProblem problem, InterfacePopulationChangedEventListener listener) { @@ -175,7 +175,7 @@ public class OptimizerFactory { return esIPOP; } - private static final EvolutionStrategies createES(EvolutionStrategies theES, InterfaceMutation mutationoperator, + private static EvolutionStrategies createES(EvolutionStrategies theES, InterfaceMutation mutationoperator, double pm, InterfaceCrossover crossoveroperator, double pc, InterfaceSelection selection, AbstractOptimizationProblem problem, InterfacePopulationChangedEventListener listener) { @@ -526,7 +526,7 @@ public class OptimizerFactory { * * @return the default number of fitness call done before termination */ - public static final int getDefaultFitCalls() { + public static int getDefaultFitCalls() { return defaultFitCalls; } @@ -1423,7 +1423,7 @@ public class OptimizerFactory { es.setForceOrigPopSize(false); ((EvolutionStrategyIPOP) es).setIncPopSizeFact(incLambdaFact); // Set CMA operator for mutation - AbstractEAIndividual indy = (AbstractEAIndividual) indyTemplate; + AbstractEAIndividual indy = indyTemplate; MutateESRankMuCMA cmaMut = new MutateESRankMuCMA(); AbstractEAIndividual.setOperators(indy, cmaMut, 1., new CrossoverESDefault(), 0.); } else { diff --git a/src/eva2/OptimizerRunnable.java b/src/eva2/OptimizerRunnable.java index be116aad..c04b85ad 100644 --- a/src/eva2/OptimizerRunnable.java +++ b/src/eva2/OptimizerRunnable.java @@ -278,7 +278,7 @@ public class OptimizerRunnable implements Runnable { * @param multis */ public void setMultiRuns(int multis) { - ((AbstractStatistics) proc.getStatistics()).getStatisticsParameter().setMultiRuns(multis); + proc.getStatistics().getStatisticsParameter().setMultiRuns(multis); } /** @@ -287,6 +287,6 @@ public class OptimizerRunnable implements Runnable { * @param addInfo */ public void setOutputFullStatsToText(boolean addInfo) { - ((AbstractStatistics) proc.getStatistics()).getStatisticsParameter().setOutputAllFieldsAsText(addInfo); + proc.getStatistics().getStatisticsParameter().setOutputAllFieldsAsText(addInfo); } } \ No newline at end of file diff --git a/src/eva2/examples/TestingCbnPostProc.java b/src/eva2/examples/TestingCbnPostProc.java index d7861b13..dbcc2428 100644 --- a/src/eva2/examples/TestingCbnPostProc.java +++ b/src/eva2/examples/TestingCbnPostProc.java @@ -39,5 +39,4 @@ public class TestingCbnPostProc { } } - ; } \ No newline at end of file diff --git a/src/eva2/examples/TestingGAB1.java b/src/eva2/examples/TestingGAB1.java index 0090f3a2..d4ffe773 100644 --- a/src/eva2/examples/TestingGAB1.java +++ b/src/eva2/examples/TestingGAB1.java @@ -36,6 +36,5 @@ public class TestingGAB1 { System.out.println(); } - ; } diff --git a/src/eva2/examples/TestingPlusCmaEs.java b/src/eva2/examples/TestingPlusCmaEs.java index 9d939c2c..c5ad65c1 100644 --- a/src/eva2/examples/TestingPlusCmaEs.java +++ b/src/eva2/examples/TestingPlusCmaEs.java @@ -40,5 +40,4 @@ public class TestingPlusCmaEs { + AbstractEAIndividual.getDefaultDataString(bestIndy)); } - ; } \ No newline at end of file diff --git a/src/eva2/gui/BeanInspector.java b/src/eva2/gui/BeanInspector.java index 7571761c..cf8b5a2e 100644 --- a/src/eva2/gui/BeanInspector.java +++ b/src/eva2/gui/BeanInspector.java @@ -34,7 +34,7 @@ public class BeanInspector { return false; } System.out.println("equalProperties: " + obj1.getClass().getName() + " " + obj2.getClass().getName()); - if (obj1.getClass().getName().equals(obj2.getClass().getName()) == false) { + if (!obj1.getClass().getName().equals(obj2.getClass().getName())) { System.out.println(""); return false; } @@ -76,14 +76,14 @@ public class BeanInspector { Object value_1 = getter_1.invoke(obj1, args_1); Object value_2 = getter_2.invoke(obj2, args_2); BeansInside = true; - if (BeanInspector.equalProperties(value_1, value_2) == false) { + if (!BeanInspector.equalProperties(value_1, value_2)) { BeansEqual = false; } } catch (Exception e) { System.out.println(" BeanTest.equalProperties " + e.getMessage()); } } - if (BeansInside == true) { + if (BeansInside) { return BeansEqual; } // here we have Integer or Double ... @@ -154,7 +154,7 @@ public class BeanInspector { if (obj instanceof String) { return (String) obj; } // directly return a string object - Class type = obj.getClass(); + Class type = obj.getClass(); if (type.isArray()) { // handle the array case StringBuffer sbuf = new StringBuffer(); @@ -524,11 +524,7 @@ public class BeanInspector { */ private static boolean isBoxableFrom(Class clz1, Class clz2) { Class box = getBoxedType(clz1); - if (box != null && (clz2.isAssignableFrom(box))) { - return true; - } else { - return false; - } + return box != null && (clz2.isAssignableFrom(box)); } /** @@ -852,11 +848,8 @@ public class BeanInspector { if (cls.isPrimitive()) { return true; } - if ((cls == Double.class) || (cls == Integer.class) || (cls == Boolean.class) || (cls == Character.class) || (cls == Void.class) - || (cls == Byte.class) || (cls == Short.class) || (cls == Long.class) || (cls == Float.class)) { - return true; - } - return false; + return (cls == Double.class) || (cls == Integer.class) || (cls == Boolean.class) || (cls == Character.class) || (cls == Void.class) + || (cls == Byte.class) || (cls == Short.class) || (cls == Long.class) || (cls == Float.class); } /** diff --git a/src/eva2/gui/EvAModuleButtonPanelMaker.java b/src/eva2/gui/EvAModuleButtonPanelMaker.java index b9fd8f6b..e2f4e962 100644 --- a/src/eva2/gui/EvAModuleButtonPanelMaker.java +++ b/src/eva2/gui/EvAModuleButtonPanelMaker.java @@ -44,7 +44,7 @@ public class EvAModuleButtonPanelMaker implements OptimizationStateListener, Ser toolBar = new JToolBar(); toolBar.setFloatable(false); - moduleAdapter.addOptimizationStateListener((OptimizationStateListener) (this)); + moduleAdapter.addOptimizationStateListener(this); ////////////////////////////////////////////////////////////// @@ -104,7 +104,6 @@ public class EvAModuleButtonPanelMaker implements OptimizationStateListener, Ser scheduleButton = ToolBoxGui.createIconifiedButton("images/Server24.gif", "Schedule", true); scheduleButton.setToolTipText("Schedule the currently configured optimization as a job."); - //scheduleButton.setBorderPainted(false); scheduleButton.addActionListener(new ActionListener() { @Override diff --git a/src/eva2/gui/HtmlDemo.java b/src/eva2/gui/HtmlDemo.java index 7815313f..4fc565bf 100644 --- a/src/eva2/gui/HtmlDemo.java +++ b/src/eva2/gui/HtmlDemo.java @@ -57,16 +57,14 @@ public class HtmlDemo { */ public void show() { try { - URL url = null; - url = this.getClass().getClassLoader().getSystemResource("html/" + name); + URL url = ClassLoader.getSystemResource("html/" + name); try { htmlEditorPane = new JEditorPane(url); } catch (java.io.IOException ioe) { - url = this.getClass().getClassLoader().getSystemResource("html/Default.html"); + url = ClassLoader.getSystemResource("html/Default.html"); htmlEditorPane = new JEditorPane(url); } - //htmlEditorPane = new JEditorPane(htmlDescription); htmlEditorPane.setEditable(false); htmlEditorPane.addHyperlinkListener(createHyperLinkListener()); diff --git a/src/eva2/gui/JEFrameRegister.java b/src/eva2/gui/JEFrameRegister.java index f38c2ad2..be1c0d55 100644 --- a/src/eva2/gui/JEFrameRegister.java +++ b/src/eva2/gui/JEFrameRegister.java @@ -70,7 +70,7 @@ public final class JEFrameRegister { public void setFocusToNext(JEFrame jeFrame) { int idx = frameList.indexOf(jeFrame); idx = (idx + 1) % frameList.size(); - JEFrame toset = ((JEFrame) frameList.get(idx)); + JEFrame toset = frameList.get(idx); toset.toFront(); } diff --git a/src/eva2/gui/JParaPanel.java b/src/eva2/gui/JParaPanel.java index b384a4fa..587deb53 100644 --- a/src/eva2/gui/JParaPanel.java +++ b/src/eva2/gui/JParaPanel.java @@ -1,13 +1,5 @@ package eva2.gui; -/* - * Title: EvA2 - * Description: - * Copyright: Copyright (c) 2003 - * Company: University of Tuebingen, Computer Architecture - * @author Holger Ulmer, Felix Streichert, Hannes Planatscher - */ - import eva2.gui.editor.GenericObjectEditor; import eva2.optimization.stat.OptimizationJobList; @@ -20,7 +12,6 @@ public class JParaPanel implements Serializable, PanelMaker { protected String name = "undefined"; protected Object localParameter; - protected Object proxyParameter; protected PropertyEditor propertyEditor; /** @@ -50,7 +41,7 @@ public class JParaPanel implements Serializable, PanelMaker { } else { propertyEditor = new GenericObjectEditor(); ((GenericObjectEditor) (propertyEditor)).setClassType(localParameter.getClass()); - ((GenericObjectEditor) (propertyEditor)).setValue(localParameter); + propertyEditor.setValue(localParameter); ((GenericObjectEditor) (propertyEditor)).disableOKCancel(); } diff --git a/src/eva2/gui/JTextEditorInternalFrame.java b/src/eva2/gui/JTextEditorInternalFrame.java index d29ddd94..6f1e21d8 100644 --- a/src/eva2/gui/JTextEditorInternalFrame.java +++ b/src/eva2/gui/JTextEditorInternalFrame.java @@ -156,7 +156,7 @@ public class JTextEditorInternalFrame extends JDocFrame { Action[] actions = textArea.getActions(); for (int i = 0; i < actions.length; i++) { - hashActions.put((String) actions[i].getValue(Action.NAME), actions[i]); + hashActions.put(actions[i].getValue(Action.NAME), actions[i]); } mnuEdit = new JExtMenu("&Bearbeiten"); diff --git a/src/eva2/gui/Main.java b/src/eva2/gui/Main.java index 2dbce2fa..6b7edbc1 100644 --- a/src/eva2/gui/Main.java +++ b/src/eva2/gui/Main.java @@ -369,7 +369,7 @@ public class Main extends JFrame implements OptimizationStateListener { setSize(800, 600); Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); - setLocation((int) ((screenSize.width - this.getWidth()) / 2), (int) ((screenSize.height - this.getHeight()) / 2.5)); + setLocation((screenSize.width - this.getWidth()) / 2, (int) ((screenSize.height - this.getHeight()) / 2.5)); /* Create a new ConfigurationPanel (left side) */ configurationPane = new JPanel(new GridBagLayout()); diff --git a/src/eva2/gui/OptimizationEditorPanel.java b/src/eva2/gui/OptimizationEditorPanel.java index 3738f8c6..bc3b1862 100644 --- a/src/eva2/gui/OptimizationEditorPanel.java +++ b/src/eva2/gui/OptimizationEditorPanel.java @@ -376,7 +376,7 @@ public class OptimizationEditorPanel extends JPanel implements ItemListener { */ (genericObjectEditor.getValue().getClass().getName()); boolean found = false; for (int i = 0; i < comboBoxModel.getSize(); i++) { - if (objectName.equals((String) comboBoxModel.getElementAt(i))) { + if (objectName.equals(comboBoxModel.getElementAt(i))) { found = true; break; } @@ -408,7 +408,7 @@ public class OptimizationEditorPanel extends JPanel implements ItemListener { if ((e.getSource() == objectChooser) && (e.getStateChange() == ItemEvent.SELECTED)) { className = (String) objectChooser.getSelectedItem(); try { - Object n = (Object) Class.forName(className).newInstance(); + Object n = Class.forName(className).newInstance(); genericObjectEditor.setValue(n); // TODO ? setObject(n); } catch (Exception ex) { diff --git a/src/eva2/gui/PropertyDoubleArray.java b/src/eva2/gui/PropertyDoubleArray.java index cf39277e..aad466c2 100644 --- a/src/eva2/gui/PropertyDoubleArray.java +++ b/src/eva2/gui/PropertyDoubleArray.java @@ -50,7 +50,7 @@ public class PropertyDoubleArray implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyDoubleArray(this); + return new PropertyDoubleArray(this); } /** diff --git a/src/eva2/gui/PropertyEpsilonConstraint.java b/src/eva2/gui/PropertyEpsilonConstraint.java index e1cc17ed..f10a41dd 100644 --- a/src/eva2/gui/PropertyEpsilonConstraint.java +++ b/src/eva2/gui/PropertyEpsilonConstraint.java @@ -25,6 +25,6 @@ public class PropertyEpsilonConstraint implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyEpsilonConstraint(this); + return new PropertyEpsilonConstraint(this); } } diff --git a/src/eva2/gui/PropertyEpsilonThreshold.java b/src/eva2/gui/PropertyEpsilonThreshold.java index cb354d15..2d9cbaf3 100644 --- a/src/eva2/gui/PropertyEpsilonThreshold.java +++ b/src/eva2/gui/PropertyEpsilonThreshold.java @@ -30,6 +30,6 @@ public class PropertyEpsilonThreshold implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyEpsilonThreshold(this); + return new PropertyEpsilonThreshold(this); } } diff --git a/src/eva2/gui/PropertyFilePath.java b/src/eva2/gui/PropertyFilePath.java index 5743ae31..716c8228 100644 --- a/src/eva2/gui/PropertyFilePath.java +++ b/src/eva2/gui/PropertyFilePath.java @@ -53,7 +53,7 @@ public class PropertyFilePath implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyFilePath(this); + return new PropertyFilePath(this); } /** diff --git a/src/eva2/gui/PropertyIntArray.java b/src/eva2/gui/PropertyIntArray.java index aa226489..ecff955f 100644 --- a/src/eva2/gui/PropertyIntArray.java +++ b/src/eva2/gui/PropertyIntArray.java @@ -21,7 +21,7 @@ public class PropertyIntArray implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyIntArray(this); + return new PropertyIntArray(this); } /** diff --git a/src/eva2/gui/PropertyOptimizationObjectives.java b/src/eva2/gui/PropertyOptimizationObjectives.java index 30806eba..82e3b832 100644 --- a/src/eva2/gui/PropertyOptimizationObjectives.java +++ b/src/eva2/gui/PropertyOptimizationObjectives.java @@ -27,7 +27,7 @@ public class PropertyOptimizationObjectives implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyOptimizationObjectives(this); + return new PropertyOptimizationObjectives(this); } /** diff --git a/src/eva2/gui/PropertyOptimizationObjectivesWithParam.java b/src/eva2/gui/PropertyOptimizationObjectivesWithParam.java index 751e3839..bf9b954a 100644 --- a/src/eva2/gui/PropertyOptimizationObjectivesWithParam.java +++ b/src/eva2/gui/PropertyOptimizationObjectivesWithParam.java @@ -39,7 +39,7 @@ public class PropertyOptimizationObjectivesWithParam implements java.io.Serializ @Override public Object clone() { - return (Object) new PropertyOptimizationObjectivesWithParam(this); + return new PropertyOptimizationObjectivesWithParam(this); } /** diff --git a/src/eva2/gui/PropertySelectableList.java b/src/eva2/gui/PropertySelectableList.java index 090942fb..1ab75142 100644 --- a/src/eva2/gui/PropertySelectableList.java +++ b/src/eva2/gui/PropertySelectableList.java @@ -36,7 +36,7 @@ public class PropertySelectableList implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertySelectableList(this); + return new PropertySelectableList(this); } public void setObjects(T[] o) { diff --git a/src/eva2/gui/PropertySheetPanel.java b/src/eva2/gui/PropertySheetPanel.java index 9f58cd15..a26baf14 100644 --- a/src/eva2/gui/PropertySheetPanel.java +++ b/src/eva2/gui/PropertySheetPanel.java @@ -5,7 +5,6 @@ import eva2.tools.EVAHELP; import eva2.util.annotation.Description; import javax.swing.*; -import javax.swing.border.Border; import javax.swing.table.DefaultTableModel; import javax.swing.table.TableCellEditor; import javax.swing.table.TableCellRenderer; @@ -1119,10 +1118,7 @@ class PropertyCellEditor extends AbstractCellEditor implements TableCellEditor { int selectedColumn = sourceTable.getSelectedColumn(); String columnName = sourceTable.getColumnName(selectedColumn); /* If the columnName equals Key it holds the keys */ - if ("Key".equals(columnName)) { - return false; - } - return true; + return !"Key".equals(columnName); } diff --git a/src/eva2/gui/PropertySheetPanelStat.java b/src/eva2/gui/PropertySheetPanelStat.java index 04391cc1..0017958a 100644 --- a/src/eva2/gui/PropertySheetPanelStat.java +++ b/src/eva2/gui/PropertySheetPanelStat.java @@ -1,17 +1,4 @@ package eva2.gui; -/* - * Title: EvA2 - * Description: - * Copyright: Copyright (c) 2003 - * Company: University of Tuebingen, Computer Architecture - * @author Holger Ulmer, Felix Streichert, Hannes Planatscher - * @version: $Revision: 10 $ - * $Date: 2006-01-18 11:02:22 +0100 (Wed, 18 Jan 2006) $ - * $Author: streiche $ - */ -/*==========================================================================* - * IMPORTS - *==========================================================================*/ import javax.swing.*; import java.awt.*; @@ -35,7 +22,6 @@ public class PropertySheetPanelStat extends JPanel implements Serializable { * Creates the property sheet panel. */ public PropertySheetPanelStat() { - // setBorder(BorderFactory.createLineBorder(Color.red)); setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 0)); } @@ -113,10 +99,10 @@ class JCheckBoxFlag extends JCheckBox { @Override public void itemStateChanged(ItemEvent evt) { - if (evt.getStateChange() == evt.SELECTED) { + if (evt.getStateChange() == ItemEvent.SELECTED) { JCheckBoxFlag.this.flag = true; } - if (evt.getStateChange() == evt.DESELECTED) { + if (evt.getStateChange() == ItemEvent.DESELECTED) { JCheckBoxFlag.this.flag = false; } } diff --git a/src/eva2/gui/PropertyWeightedLPTchebycheff.java b/src/eva2/gui/PropertyWeightedLPTchebycheff.java index 5eaaf057..567e325d 100644 --- a/src/eva2/gui/PropertyWeightedLPTchebycheff.java +++ b/src/eva2/gui/PropertyWeightedLPTchebycheff.java @@ -30,6 +30,6 @@ public class PropertyWeightedLPTchebycheff implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyWeightedLPTchebycheff(this); + return new PropertyWeightedLPTchebycheff(this); } } diff --git a/src/eva2/gui/editor/BigStringEditor.java b/src/eva2/gui/editor/BigStringEditor.java index f41ccf6d..34fc8557 100644 --- a/src/eva2/gui/editor/BigStringEditor.java +++ b/src/eva2/gui/editor/BigStringEditor.java @@ -6,8 +6,6 @@ import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; -import java.awt.event.WindowEvent; -import java.awt.event.WindowListener; import java.beans.PropertyChangeListener; import java.beans.PropertyChangeSupport; import java.beans.PropertyEditor; diff --git a/src/eva2/gui/editor/EnumEditor.java b/src/eva2/gui/editor/EnumEditor.java index dadbbd1b..eca63f2b 100644 --- a/src/eva2/gui/editor/EnumEditor.java +++ b/src/eva2/gui/editor/EnumEditor.java @@ -44,7 +44,7 @@ public class EnumEditor extends PropertyEditorSupport { public void setAsText(String text) throws IllegalArgumentException { for (int i = 0; i < enumConstants.length; i++) { if (text.equals(enumConstants[i].toString())) { - setValue((Enum) enumConstants[i]); + setValue(enumConstants[i]); return; } } diff --git a/src/eva2/gui/editor/GenericAreaEditor.java b/src/eva2/gui/editor/GenericAreaEditor.java index 090d7559..9d284f86 100644 --- a/src/eva2/gui/editor/GenericAreaEditor.java +++ b/src/eva2/gui/editor/GenericAreaEditor.java @@ -27,13 +27,13 @@ public class GenericAreaEditor extends AbstractListSelectionEditor { @Override protected String getElementName(int i) { - AbstractGPNode an = (AbstractGPNode) areaObject.getCompleteList().get(i); + AbstractGPNode an = areaObject.getCompleteList().get(i); return an.getName(); } @Override protected boolean isElementSelected(int i) { - return ((Boolean) areaObject.getBlackList().get(i)).booleanValue(); + return areaObject.getBlackList().get(i).booleanValue(); } @Override diff --git a/src/eva2/gui/editor/GenericArrayEditor.java b/src/eva2/gui/editor/GenericArrayEditor.java index eb0b269e..56d009bc 100644 --- a/src/eva2/gui/editor/GenericArrayEditor.java +++ b/src/eva2/gui/editor/GenericArrayEditor.java @@ -352,7 +352,6 @@ public class GenericArrayEditor extends JPanel implements PropertyEditor { ListCellRenderer lcr = new DefaultListCellRenderer(); if (editor != null) { if (editor instanceof GenericObjectEditor) { -// ((GenericObjectEditor) editor).getCustomEditor(); ((GenericObjectEditor) editor).setClassType(elementClass); } if (editor.isPaintable() && editor.supportsCustomEditor()) { @@ -416,6 +415,7 @@ public class GenericArrayEditor extends JPanel implements PropertyEditor { // Upper Button Panel JPanel combiUpperPanel = new JPanel(getButtonLayout(1, upperButtonList)); + // ToDo Figure out how to now show this on Job Pane combiUpperPanel.add(view); for (JButton but : upperButtonList) { @@ -692,7 +692,7 @@ public class GenericArrayEditor extends JPanel implements PropertyEditor { rep = listModel.getSize() + " of " + EVAHELP.cutClassName(elementClass.getName()); Object maybeName = BeanInspector.callIfAvailable(listModel.get(0), "getName", new Object[]{}); if (maybeName != null) { - rep = rep + " (" + (String) maybeName + "...)"; + rep = rep + " (" + maybeName + "...)"; } } gfx.drawString(rep, 2, fm.getHeight() + vpad - 3); diff --git a/src/eva2/gui/editor/GenericDoubleArrayEditor.java b/src/eva2/gui/editor/GenericDoubleArrayEditor.java index ce23151a..1a5c3c05 100644 --- a/src/eva2/gui/editor/GenericDoubleArrayEditor.java +++ b/src/eva2/gui/editor/GenericDoubleArrayEditor.java @@ -40,8 +40,7 @@ class MyFocusListener implements FocusListener { arrEditor.notifyFocusID(myID); } - ; -}; +} /** diff --git a/src/eva2/gui/editor/GenericObjectEditor.java b/src/eva2/gui/editor/GenericObjectEditor.java index ca564150..aa9dd5a8 100644 --- a/src/eva2/gui/editor/GenericObjectEditor.java +++ b/src/eva2/gui/editor/GenericObjectEditor.java @@ -79,7 +79,7 @@ public class GenericObjectEditor implements PropertyEditor { try { // a field allowing a class to indicate it doesnt want to be displayed Field f = clazz.getDeclaredField("hideFromGOE"); - if (f.getBoolean(clazz) == true) { + if (f.getBoolean(clazz)) { LOGGER.log(Level.FINEST, "Class {0} wants to be hidden from GOE.", clazz); continue; } @@ -275,7 +275,7 @@ public class GenericObjectEditor implements PropertyEditor { try { if (v.size() > 0) { - setObject((Object) Class.forName((String) v.get(0)).newInstance()); + setObject(Class.forName((String) v.get(0)).newInstance()); } } catch (Exception ex) { System.err.println("Exception in setDefaultValue !!!" + ex.getMessage()); diff --git a/src/eva2/gui/plot/DPointSetMultiIcon.java b/src/eva2/gui/plot/DPointSetMultiIcon.java index 2883f3ba..11bcc3cd 100644 --- a/src/eva2/gui/plot/DPointSetMultiIcon.java +++ b/src/eva2/gui/plot/DPointSetMultiIcon.java @@ -167,7 +167,7 @@ public class DPointSetMultiIcon extends DComponent { } else { DPoint result = new DPoint(xMI.getImage(minIndex), yMI.getImage(minIndex)); - result.setIcon((DPointIcon) this.iconsMI.get(minIndex)); + result.setIcon(this.iconsMI.get(minIndex)); return result; } @@ -256,7 +256,7 @@ public class DPointSetMultiIcon extends DComponent { if ((i < this.iconsMI.size()) && (this.iconsMI.get(i) != null)) { g.setStroke(new BasicStroke()); g.translate(p2.x, p2.y); - ((DPointIcon) this.iconsMI.get(i)).paint(g); + this.iconsMI.get(i).paint(g); g.translate(-p2.x, -p2.y); g.setStroke(strokeMI); } else { @@ -287,7 +287,7 @@ public class DPointSetMultiIcon extends DComponent { if (this.iconsMI.get(i) != null) { g.setStroke(new BasicStroke()); g.translate(p.x, p.y); - ((DPointIcon) this.iconsMI.get(i)).paint(g); + this.iconsMI.get(i).paint(g); g.translate(-p.x, -p.y); g.setStroke(strokeMI); } else { diff --git a/src/eva2/gui/plot/FunctionArea.java b/src/eva2/gui/plot/FunctionArea.java index a9e3ade3..b377621e 100644 --- a/src/eva2/gui/plot/FunctionArea.java +++ b/src/eva2/gui/plot/FunctionArea.java @@ -122,7 +122,7 @@ public class FunctionArea extends DArea implements Serializable { if (isShowGraphToolTips()) { int gIndex = getNearestGraphIndex(event.getX(), event.getY()); if (gIndex >= 0) { - DPoint pt = ((GraphPointSet) (pointSetContainer.get(gIndex))).getMedPoint(); + DPoint pt = pointSetContainer.get(gIndex).getMedPoint(); Point pt2 = getDMeasures().getPoint(pt.x, pt.y); pt2.x += (5 * (gIndex % 7)); // slight shift depending on index // - easier distinction of very @@ -395,7 +395,7 @@ public class FunctionArea extends DArea implements Serializable { if (index == -1) { return; } - int GraphLabel = ((GraphPointSet) (this.pointSetContainer.get(index))).getGraphLabel(); + int GraphLabel = this.pointSetContainer.get(index).getGraphLabel(); changeColorGraph(GraphLabel); updateLegend(); } @@ -406,7 +406,7 @@ public class FunctionArea extends DArea implements Serializable { public void recolorAllGraphsByIndex() { int index = 0; for (int i = 0; i < pointSetContainer.size(); i++) { - GraphPointSet gps = ((GraphPointSet) (this.pointSetContainer.get(i))); + GraphPointSet gps = this.pointSetContainer.get(i); if (gps.getPointCount() > 0) { gps.setColorByIndex(index); index++; @@ -466,7 +466,7 @@ public class FunctionArea extends DArea implements Serializable { public void clearAll() { this.removeAllDElements(); for (int i = 0; i < pointSetContainer.size(); i++) { - ((GraphPointSet) (pointSetContainer.get(i))).removeAllPoints(); + pointSetContainer.get(i).removeAllPoints(); } pointSetContainer.clear(); if (getYScale() instanceof Exp) { @@ -496,7 +496,7 @@ public class FunctionArea extends DArea implements Serializable { if (index == -1) { return; } - int GraphLabel = ((GraphPointSet) (this.pointSetContainer.get(index))).getGraphLabel(); + int GraphLabel = this.pointSetContainer.get(index).getGraphLabel(); clearGraph(GraphLabel); updateLegend(); } @@ -658,7 +658,7 @@ public class FunctionArea extends DArea implements Serializable { } for (int i = 0; i < pointSetContainer.size(); i++) { if (pointSetContainer.get(i) instanceof GraphPointSet) { - GraphPointSet set = (GraphPointSet) pointSetContainer.get(i); + GraphPointSet set = pointSetContainer.get(i); DPointSet pset = set.getConnectedPointSet(); // add column names s[0] = s[0] + " t " + cleanBlanks(set.getInfoString(), '_'); @@ -737,7 +737,7 @@ public class FunctionArea extends DArea implements Serializable { } int minindex = getNearestGraphIndex(x, y); if (minindex >= 0) { - return ((GraphPointSet) (pointSetContainer.get(minindex))).getInfoString(); + return pointSetContainer.get(minindex).getInfoString(); } else { return "none"; } @@ -750,7 +750,7 @@ public class FunctionArea extends DArea implements Serializable { } if (graphIndex >= 0 && (graphIndex < pointSetContainer.size())) { - return ((GraphPointSet) (pointSetContainer.get(graphIndex))).getInfoString(); + return pointSetContainer.get(graphIndex).getInfoString(); } else { return "none"; } @@ -771,7 +771,7 @@ public class FunctionArea extends DArea implements Serializable { private GraphPointSet getGraphPointSet(int GraphLabel) { for (int i = 0; i < pointSetContainer.size(); i++) { if (pointSetContainer.get(i) instanceof GraphPointSet) { - GraphPointSet xx = (GraphPointSet) (pointSetContainer.get(i)); + GraphPointSet xx = pointSetContainer.get(i); // System.out.println("looking at "+xx.getGraphLabel()); if (xx.getGraphLabel() == GraphLabel) { // System.out.println("match!"); @@ -799,7 +799,7 @@ public class FunctionArea extends DArea implements Serializable { double dist = 0; for (int i = 0; i < pointSetContainer.size(); i++) { if (pointSetContainer.get(i) instanceof GraphPointSet) { - GraphPointSet pointset = (GraphPointSet) (pointSetContainer.get(i)); + GraphPointSet pointset = pointSetContainer.get(i); point2 = pointset.getNearestDPoint(point1); if (point2 == null) { continue; @@ -883,7 +883,7 @@ public class FunctionArea extends DArea implements Serializable { return ret; } int minindex = getNearestGraphIndex(x, y); - ret = ((GraphPointSet) (pointSetContainer.get(minindex))).isStatisticsGraph(); + ret = pointSetContainer.get(minindex).isStatisticsGraph(); return ret; } @@ -893,7 +893,7 @@ public class FunctionArea extends DArea implements Serializable { */ public void jump() { for (int i = 0; i < pointSetContainer.size(); i++) { - ((GraphPointSet) (pointSetContainer.get(i))).jump(); + pointSetContainer.get(i).jump(); } } @@ -914,7 +914,7 @@ public class FunctionArea extends DArea implements Serializable { System.out.println(""); System.out.println("GraphPointSet No " + i); - ret[i] = ((GraphPointSet) pointSetContainer.get(i)).printPoints(); + ret[i] = pointSetContainer.get(i).printPoints(); } return ret; @@ -928,7 +928,7 @@ public class FunctionArea extends DArea implements Serializable { System.out.println(""); System.out.println("GraphPointSet No " + i); - return ((GraphPointSet) pointSetContainer.get(i)).printPoints(); + return pointSetContainer.get(i).printPoints(); // } } @@ -942,7 +942,7 @@ public class FunctionArea extends DArea implements Serializable { if (index == -1 || point == null) { return; } - GraphPointSet pointset = (GraphPointSet) (this.pointSetContainer.get(index)); + GraphPointSet pointset = this.pointSetContainer.get(index); pointset.removePoint(point); } @@ -1080,7 +1080,7 @@ public class FunctionArea extends DArea implements Serializable { } if (graphIndex >= 0 && (graphIndex < pointSetContainer.size())) { - GraphPointSet gps = ((GraphPointSet) (pointSetContainer.get(graphIndex))); + GraphPointSet gps = pointSetContainer.get(graphIndex); gps.setInfoString(newName); updateLegend(); return true; diff --git a/src/eva2/gui/plot/GraphPointSet.java b/src/eva2/gui/plot/GraphPointSet.java index 21cd8af0..f3751484 100644 --- a/src/eva2/gui/plot/GraphPointSet.java +++ b/src/eva2/gui/plot/GraphPointSet.java @@ -194,7 +194,7 @@ public class GraphPointSet { int[] index = new int[pointSetContainer.size()]; int[] GraphSize = new int[pointSetContainer.size()]; for (int i = 0; i < pointSetContainer.size(); i++) { - GraphSize[i] = ((PointSet) pointSetContainer.get(i)).getSize(); + GraphSize[i] = pointSetContainer.get(i).getSize(); if (GraphSize[i] <= 0) { System.err.println("Warning: invalid graph size of " + GraphSize[i] + " at " + i diff --git a/src/eva2/gui/plot/GraphWindow.java b/src/eva2/gui/plot/GraphWindow.java index c098449b..5e59fb00 100644 --- a/src/eva2/gui/plot/GraphWindow.java +++ b/src/eva2/gui/plot/GraphWindow.java @@ -97,7 +97,7 @@ class PlotContainer extends ArrayList { public boolean containsName(String name) { GraphWindow temp; for (int i = 0; i < size(); i++) { - temp = (GraphWindow) (get(i)); + temp = get(i); if (name.equals(temp.getName())) { return true; } @@ -123,7 +123,7 @@ class PlotContainer extends ArrayList { } GraphWindow temp; for (int i = 0; i < size(); i++) { - temp = (GraphWindow) (get(i)); + temp = get(i); if (name.equals(temp.getName())) { actualPlot = temp; return actualPlot; diff --git a/src/eva2/optimization/ModuleServer.java b/src/eva2/optimization/ModuleServer.java index 75d1ca17..480509f0 100644 --- a/src/eva2/optimization/ModuleServer.java +++ b/src/eva2/optimization/ModuleServer.java @@ -69,7 +69,7 @@ public class ModuleServer { Method[] methods = module.getDeclaredMethods(); for (Method method : methods) { if (method.getName().equals("getName")) { - String name = (String) method.invoke((Object[]) null, (Object[]) null); + String name = (String) method.invoke(null, (Object[]) null); if (name != null) { moduleNameList.add(name); } else { @@ -107,7 +107,7 @@ public class ModuleServer { for (Method method : methods) { if (method.getName().equals("getName")) { - moduleName = (String) method.invoke((Object[]) null, (Object[]) null); + moduleName = (String) method.invoke(null, (Object[]) null); } } } catch (Exception ex) { diff --git a/src/eva2/optimization/enums/ESMutationInitialSigma.java b/src/eva2/optimization/enums/ESMutationInitialSigma.java index ce176f5e..2a205b14 100644 --- a/src/eva2/optimization/enums/ESMutationInitialSigma.java +++ b/src/eva2/optimization/enums/ESMutationInitialSigma.java @@ -1,5 +1,5 @@ package eva2.optimization.enums; public enum ESMutationInitialSigma { - halfRange, quarterRange, avgInitialDistance, userDefined; + halfRange, quarterRange, avgInitialDistance, userDefined } diff --git a/src/eva2/optimization/enums/MutateESCrossoverTypeEnum.java b/src/eva2/optimization/enums/MutateESCrossoverTypeEnum.java index 6a82a4c8..13ada67e 100644 --- a/src/eva2/optimization/enums/MutateESCrossoverTypeEnum.java +++ b/src/eva2/optimization/enums/MutateESCrossoverTypeEnum.java @@ -1,5 +1,5 @@ package eva2.optimization.enums; public enum MutateESCrossoverTypeEnum { - none, intermediate, discrete; + none, intermediate, discrete } diff --git a/src/eva2/optimization/enums/PostProcessMethod.java b/src/eva2/optimization/enums/PostProcessMethod.java index 4d810231..6e93993d 100644 --- a/src/eva2/optimization/enums/PostProcessMethod.java +++ b/src/eva2/optimization/enums/PostProcessMethod.java @@ -1,5 +1,5 @@ package eva2.optimization.enums; public enum PostProcessMethod { - hillClimber, nelderMead, cmaES; + hillClimber, nelderMead, cmaES } \ No newline at end of file diff --git a/src/eva2/optimization/go/MOCCOStandalone.java b/src/eva2/optimization/go/MOCCOStandalone.java index 92b2913c..2efa2795 100644 --- a/src/eva2/optimization/go/MOCCOStandalone.java +++ b/src/eva2/optimization/go/MOCCOStandalone.java @@ -575,7 +575,7 @@ public class MOCCOStandalone implements InterfaceStandaloneOptimization, Interfa double y = x / (double) ((EvaluationTerminator) this.state.terminator).getFitnessCalls(); currentProgress = (int) (population.getFunctionCalls() * y); } else { - currentProgress = (int) (0); + currentProgress = 0; } updateStatus("Optimizing...", currentProgress); } else { diff --git a/src/eva2/optimization/go/StandaloneOptimization.java b/src/eva2/optimization/go/StandaloneOptimization.java index e43caafc..8b06d3d6 100644 --- a/src/eva2/optimization/go/StandaloneOptimization.java +++ b/src/eva2/optimization/go/StandaloneOptimization.java @@ -308,7 +308,7 @@ public class StandaloneOptimization implements InterfaceStandaloneOptimization, ((GAIndividualDoubleData) tmpIndy).setCrossoverOperator(new CrossoverGAGINPoint()); ((GAIndividualDoubleData) tmpIndy).setCrossoverProbability(1.0); ((GAIndividualDoubleData) tmpIndy).setMutationProbability(1.0); - ((F1Problem) problem).setEAIndividual(tmpIndy); + problem.setEAIndividual(tmpIndy); //((FGRNInferringProblem)this.problem).setStructreSkelInterval(1); this.optimizationParameters.getOptimizer().setProblem(problem); this.optimizationParameters.getOptimizer().addPopulationChangedEventListener(this); @@ -324,7 +324,7 @@ public class StandaloneOptimization implements InterfaceStandaloneOptimization, F1Problem problem = new F1Problem(); tmpIndy = new ESIndividualDoubleData(); ((AbstractEAIndividual) tmpIndy).setMutationOperator(new MutateESLocal()); - ((F1Problem) problem).setEAIndividual(tmpIndy); + problem.setEAIndividual(tmpIndy); //((FGRNInferringProblem)this.problem).setUseHEigenMatrix(true); //((FGRNInferringProblem)this.problem).setUseOnlyPositiveNumbers(true); this.optimizationParameters.getOptimizer().setProblem(problem); diff --git a/src/eva2/optimization/individuals/ESIndividualBinaryData.java b/src/eva2/optimization/individuals/ESIndividualBinaryData.java index 93e83bb8..b568ca35 100644 --- a/src/eva2/optimization/individuals/ESIndividualBinaryData.java +++ b/src/eva2/optimization/individuals/ESIndividualBinaryData.java @@ -60,12 +60,12 @@ public class ESIndividualBinaryData extends AbstractEAIndividual implements Inte for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new ESIndividualBinaryData(this); + return new ESIndividualBinaryData(this); } /** diff --git a/src/eva2/optimization/individuals/ESIndividualDoubleData.java b/src/eva2/optimization/individuals/ESIndividualDoubleData.java index 652befeb..9bab8cdc 100644 --- a/src/eva2/optimization/individuals/ESIndividualDoubleData.java +++ b/src/eva2/optimization/individuals/ESIndividualDoubleData.java @@ -61,12 +61,12 @@ public class ESIndividualDoubleData extends AbstractEAIndividual implements Inte for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new ESIndividualDoubleData(this); + return new ESIndividualDoubleData(this); } /** diff --git a/src/eva2/optimization/individuals/ESIndividualIntegerData.java b/src/eva2/optimization/individuals/ESIndividualIntegerData.java index 93382418..6e7a1108 100644 --- a/src/eva2/optimization/individuals/ESIndividualIntegerData.java +++ b/src/eva2/optimization/individuals/ESIndividualIntegerData.java @@ -56,12 +56,12 @@ public class ESIndividualIntegerData extends AbstractEAIndividual implements Int for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new ESIndividualIntegerData(this); + return new ESIndividualIntegerData(this); } /** diff --git a/src/eva2/optimization/individuals/ESIndividualPermutationData.java b/src/eva2/optimization/individuals/ESIndividualPermutationData.java index f65f5946..d5fe6910 100644 --- a/src/eva2/optimization/individuals/ESIndividualPermutationData.java +++ b/src/eva2/optimization/individuals/ESIndividualPermutationData.java @@ -72,13 +72,13 @@ public class ESIndividualPermutationData extends AbstractEAIndividual implements for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new ESIndividualPermutationData(this); + return new ESIndividualPermutationData(this); } /** diff --git a/src/eva2/optimization/individuals/GAESIndividualBinaryDoubleData.java b/src/eva2/optimization/individuals/GAESIndividualBinaryDoubleData.java index 6c9e7a45..271b6bd3 100644 --- a/src/eva2/optimization/individuals/GAESIndividualBinaryDoubleData.java +++ b/src/eva2/optimization/individuals/GAESIndividualBinaryDoubleData.java @@ -43,12 +43,12 @@ public class GAESIndividualBinaryDoubleData extends AbstractEAIndividual impleme for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GAESIndividualBinaryDoubleData(this); + return new GAESIndividualBinaryDoubleData(this); } /** diff --git a/src/eva2/optimization/individuals/GAIndividualBinaryData.java b/src/eva2/optimization/individuals/GAIndividualBinaryData.java index 040ef213..9da0d4a4 100644 --- a/src/eva2/optimization/individuals/GAIndividualBinaryData.java +++ b/src/eva2/optimization/individuals/GAIndividualBinaryData.java @@ -58,12 +58,12 @@ public class GAIndividualBinaryData extends AbstractEAIndividual implements Inte for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GAIndividualBinaryData(this); + return new GAIndividualBinaryData(this); } /** diff --git a/src/eva2/optimization/individuals/GAIndividualDoubleData.java b/src/eva2/optimization/individuals/GAIndividualDoubleData.java index 4b07713c..f8165e5e 100644 --- a/src/eva2/optimization/individuals/GAIndividualDoubleData.java +++ b/src/eva2/optimization/individuals/GAIndividualDoubleData.java @@ -68,12 +68,12 @@ public class GAIndividualDoubleData extends AbstractEAIndividual implements Inte for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GAIndividualDoubleData(this); + return new GAIndividualDoubleData(this); } /** diff --git a/src/eva2/optimization/individuals/GAIndividualIntegerData.java b/src/eva2/optimization/individuals/GAIndividualIntegerData.java index 2a705fff..ff0470c2 100644 --- a/src/eva2/optimization/individuals/GAIndividualIntegerData.java +++ b/src/eva2/optimization/individuals/GAIndividualIntegerData.java @@ -67,12 +67,12 @@ public class GAIndividualIntegerData extends AbstractEAIndividual implements Int for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GAIndividualIntegerData(this); + return new GAIndividualIntegerData(this); } diff --git a/src/eva2/optimization/individuals/GAPIndividualProgramData.java b/src/eva2/optimization/individuals/GAPIndividualProgramData.java index 45fba4fc..903a5909 100644 --- a/src/eva2/optimization/individuals/GAPIndividualProgramData.java +++ b/src/eva2/optimization/individuals/GAPIndividualProgramData.java @@ -40,12 +40,12 @@ public class GAPIndividualProgramData extends AbstractEAIndividual implements In for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GAPIndividualProgramData(this); + return new GAPIndividualProgramData(this); } /** diff --git a/src/eva2/optimization/individuals/GEIndividualProgramData.java b/src/eva2/optimization/individuals/GEIndividualProgramData.java index 4ea14ce8..fa3e1685 100644 --- a/src/eva2/optimization/individuals/GEIndividualProgramData.java +++ b/src/eva2/optimization/individuals/GEIndividualProgramData.java @@ -104,12 +104,12 @@ public class GEIndividualProgramData extends AbstractEAIndividual implements Int for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GEIndividualProgramData(this); + return new GEIndividualProgramData(this); } /** diff --git a/src/eva2/optimization/individuals/GIIndividualIntegerData.java b/src/eva2/optimization/individuals/GIIndividualIntegerData.java index 12dd6a1b..ca83899e 100644 --- a/src/eva2/optimization/individuals/GIIndividualIntegerData.java +++ b/src/eva2/optimization/individuals/GIIndividualIntegerData.java @@ -66,12 +66,12 @@ public class GIIndividualIntegerData extends AbstractEAIndividual implements Int for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GIIndividualIntegerData(this); + return new GIIndividualIntegerData(this); } diff --git a/src/eva2/optimization/individuals/GIOBGAIndividualIntegerPermutationData.java b/src/eva2/optimization/individuals/GIOBGAIndividualIntegerPermutationData.java index c0b9fd26..ad1f292e 100644 --- a/src/eva2/optimization/individuals/GIOBGAIndividualIntegerPermutationData.java +++ b/src/eva2/optimization/individuals/GIOBGAIndividualIntegerPermutationData.java @@ -40,12 +40,12 @@ public class GIOBGAIndividualIntegerPermutationData extends AbstractEAIndividual for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GIOBGAIndividualIntegerPermutationData(this); + return new GIOBGAIndividualIntegerPermutationData(this); } /** diff --git a/src/eva2/optimization/individuals/GPIndividualProgramData.java b/src/eva2/optimization/individuals/GPIndividualProgramData.java index 19570c0d..a4c6cb80 100644 --- a/src/eva2/optimization/individuals/GPIndividualProgramData.java +++ b/src/eva2/optimization/individuals/GPIndividualProgramData.java @@ -75,12 +75,12 @@ public class GPIndividualProgramData extends AbstractEAIndividual implements Int for (int i = 0; i < this.fitness.length; i++) { this.fitness[i] = individual.fitness[i]; } - cloneAEAObjects((AbstractEAIndividual) individual); + cloneAEAObjects(individual); } @Override public Object clone() { - return (Object) new GPIndividualProgramData(this); + return new GPIndividualProgramData(this); } /** @@ -328,11 +328,11 @@ public class GPIndividualProgramData extends AbstractEAIndividual implements Int } else { AbstractGPNode parent = nodeToMutate.getParent(); if (checkMaxDepth && (nodeToMutate.getDepth() == maxAllowedDepth)) { // mutate with a constant - AbstractGPNode newNode = (AbstractGPNode) (((AbstractGPNode) this.gpArea[i].getRandomNodeWithArity(0).clone())); + AbstractGPNode newNode = ((AbstractGPNode) this.gpArea[i].getRandomNodeWithArity(0).clone()); newNode.setDepth(nodeToMutate.getDepth()); parent.setNode(newNode, nodeToMutate); } else { - AbstractGPNode newNode = (AbstractGPNode) (((AbstractGPNode) this.gpArea[i].getRandomNode().clone())); + AbstractGPNode newNode = ((AbstractGPNode) this.gpArea[i].getRandomNode().clone()); newNode.setDepth(nodeToMutate.getDepth()); newNode.initGrow(this.gpArea[i], this.maxAllowedDepth); parent.setNode(newNode, nodeToMutate); diff --git a/src/eva2/optimization/individuals/codings/gp/AbstractGPNode.java b/src/eva2/optimization/individuals/codings/gp/AbstractGPNode.java index 0a5fa9eb..e43b8e5f 100644 --- a/src/eva2/optimization/individuals/codings/gp/AbstractGPNode.java +++ b/src/eva2/optimization/individuals/codings/gp/AbstractGPNode.java @@ -592,19 +592,7 @@ public abstract class AbstractGPNode implements InterfaceProgram, java.io.Serial * @return True if MaxDepth is violated */ public boolean isMaxDepthViolated(int maxDepth) { - if (maxDepth < this.getMaxDepth()) { - return true; - } else { - return false; - } -// if (depth > this.depth) return false; -// else { -// boolean result = true; -// for (int i = 0; i < this.nodes.length; i++) { -// result = result & this.nodes[i].isMaxDepthViolated(depth); -// } -// return result; -// } + return maxDepth < this.getMaxDepth(); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPArea.java b/src/eva2/optimization/individuals/codings/gp/GPArea.java index 1321c2c6..7b0fa4bb 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPArea.java +++ b/src/eva2/optimization/individuals/codings/gp/GPArea.java @@ -126,7 +126,7 @@ public class GPArea implements java.io.Serializable { public void compileReducedList() { this.reducedList = new ArrayList(); for (int i = 0; i < this.completeList.size(); i++) { - if (((Boolean) (this.blackList.get(i))).booleanValue()) { + if (this.blackList.get(i).booleanValue()) { this.reducedList.add(this.completeList.get(i)); } } @@ -141,14 +141,14 @@ public class GPArea implements java.io.Serializable { public AbstractGPNode getRandomNodeWithArity(int targetarity) { ArrayList tmpArray = new ArrayList(); for (int i = 0; i < this.reducedList.size(); i++) { - if (((AbstractGPNode) this.reducedList.get(i)).getArity() == targetarity) { + if (this.reducedList.get(i).getArity() == targetarity) { tmpArray.add(this.reducedList.get(i)); } } if (tmpArray.size() == 0) { return null; } else { - return (AbstractGPNode) tmpArray.get(RNG.randomInt(0, tmpArray.size() - 1)); + return tmpArray.get(RNG.randomInt(0, tmpArray.size() - 1)); } } @@ -159,7 +159,7 @@ public class GPArea implements java.io.Serializable { if (this.reducedList.size() == 0) { return null; } else { - return (AbstractGPNode) this.reducedList.get(RNG.randomInt(0, this.reducedList.size() - 1)); + return this.reducedList.get(RNG.randomInt(0, this.reducedList.size() - 1)); } } @@ -169,14 +169,14 @@ public class GPArea implements java.io.Serializable { public AbstractGPNode getRandomNonTerminal() { ArrayList tmpArray = new ArrayList(); for (int i = 0; i < this.reducedList.size(); i++) { - if (((AbstractGPNode) this.reducedList.get(i)).getArity() > 0) { + if (this.reducedList.get(i).getArity() > 0) { tmpArray.add(this.reducedList.get(i)); } } if (tmpArray.size() == 0) { return null; } else { - return (AbstractGPNode) tmpArray.get(RNG.randomInt(0, tmpArray.size() - 1)); + return tmpArray.get(RNG.randomInt(0, tmpArray.size() - 1)); } } diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeAbs.java b/src/eva2/optimization/individuals/codings/gp/GPNodeAbs.java index 96c5f692..c9c5a152 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeAbs.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeAbs.java @@ -32,7 +32,7 @@ public class GPNodeAbs extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeAbs(this); + return new GPNodeAbs(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeAdd.java b/src/eva2/optimization/individuals/codings/gp/GPNodeAdd.java index 0dcb17f8..d8fadd37 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeAdd.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeAdd.java @@ -37,7 +37,7 @@ public class GPNodeAdd extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeAdd(this); + return new GPNodeAdd(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeCos.java b/src/eva2/optimization/individuals/codings/gp/GPNodeCos.java index 1fe0064a..3936b2fd 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeCos.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeCos.java @@ -36,7 +36,7 @@ public class GPNodeCos extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeCos(this); + return new GPNodeCos(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeDiv.java b/src/eva2/optimization/individuals/codings/gp/GPNodeDiv.java index 27a397f7..6f9797dc 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeDiv.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeDiv.java @@ -38,7 +38,7 @@ public class GPNodeDiv extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeDiv(this); + return new GPNodeDiv(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeExp.java b/src/eva2/optimization/individuals/codings/gp/GPNodeExp.java index 9c0ccebd..1c5e0680 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeExp.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeExp.java @@ -36,7 +36,7 @@ public class GPNodeExp extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeExp(this); + return new GPNodeExp(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec2.java b/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec2.java index 072a0b15..6d7179e6 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec2.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec2.java @@ -37,7 +37,7 @@ public class GPNodeFlowExec2 extends AbstractGPNode implements java.io.Serializa */ @Override public Object clone() { - return (Object) new GPNodeFlowExec2(this); + return new GPNodeFlowExec2(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec3.java b/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec3.java index 05ee6e94..6231eba1 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec3.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeFlowExec3.java @@ -37,7 +37,7 @@ public class GPNodeFlowExec3 extends AbstractGPNode implements java.io.Serializa */ @Override public Object clone() { - return (Object) new GPNodeFlowExec3(this); + return new GPNodeFlowExec3(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeInput.java b/src/eva2/optimization/individuals/codings/gp/GPNodeInput.java index b6d0c717..4c6e9fac 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeInput.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeInput.java @@ -38,10 +38,7 @@ public class GPNodeInput extends AbstractGPNode implements java.io.Serializable public boolean equals(Object obj) { if (obj instanceof GPNodeInput) { GPNodeInput node = (GPNodeInput) obj; - if (!this.identifier.equalsIgnoreCase(node.identifier)) { - return false; - } - return true; + return this.identifier.equalsIgnoreCase(node.identifier); } else { return false; } @@ -64,7 +61,7 @@ public class GPNodeInput extends AbstractGPNode implements java.io.Serializable */ @Override public Object clone() { - return (Object) new GPNodeInput(this); + return new GPNodeInput(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeMult.java b/src/eva2/optimization/individuals/codings/gp/GPNodeMult.java index 2b9bcbb9..19d927e9 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeMult.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeMult.java @@ -37,7 +37,7 @@ public class GPNodeMult extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeMult(this); + return new GPNodeMult(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeNeg.java b/src/eva2/optimization/individuals/codings/gp/GPNodeNeg.java index 58e2fdcd..3150cb3f 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeNeg.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeNeg.java @@ -37,7 +37,7 @@ public class GPNodeNeg extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeNeg(this); + return new GPNodeNeg(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeOne.java b/src/eva2/optimization/individuals/codings/gp/GPNodeOne.java index 02ad9979..a343f249 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeOne.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeOne.java @@ -20,6 +20,6 @@ public class GPNodeOne extends GPNodeConst implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeOne(this); + return new GPNodeOne(this); } } diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeOutput.java b/src/eva2/optimization/individuals/codings/gp/GPNodeOutput.java index 2739c017..3e19f826 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeOutput.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeOutput.java @@ -39,10 +39,7 @@ public class GPNodeOutput extends AbstractGPNode implements java.io.Serializable public boolean equals(Object obj) { if (obj instanceof GPNodeOutput) { GPNodeOutput node = (GPNodeOutput) obj; - if (!this.identifier.equalsIgnoreCase(node.identifier)) { - return false; - } - return true; + return this.identifier.equalsIgnoreCase(node.identifier); } else { return false; } @@ -65,7 +62,7 @@ public class GPNodeOutput extends AbstractGPNode implements java.io.Serializable */ @Override public Object clone() { - return (Object) new GPNodeOutput(this); + return new GPNodeOutput(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodePi.java b/src/eva2/optimization/individuals/codings/gp/GPNodePi.java index 5e85b163..5b404ce2 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodePi.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodePi.java @@ -20,7 +20,7 @@ public class GPNodePi extends GPNodeConst implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodePi(this); + return new GPNodePi(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodePow2.java b/src/eva2/optimization/individuals/codings/gp/GPNodePow2.java index 45f2bbbf..2570f165 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodePow2.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodePow2.java @@ -36,7 +36,7 @@ public class GPNodePow2 extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodePow2(this); + return new GPNodePow2(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodePow3.java b/src/eva2/optimization/individuals/codings/gp/GPNodePow3.java index d1d2d2c6..95b0ea8e 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodePow3.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodePow3.java @@ -36,7 +36,7 @@ public class GPNodePow3 extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodePow3(this); + return new GPNodePow3(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeProd.java b/src/eva2/optimization/individuals/codings/gp/GPNodeProd.java index 8365dc62..dd3403c4 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeProd.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeProd.java @@ -28,7 +28,7 @@ public class GPNodeProd extends AbstractGPNode implements java.io.Serializable { @Override public Object clone() { - return (Object) new GPNodeProd(this); + return new GPNodeProd(this); } @Override diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeSin.java b/src/eva2/optimization/individuals/codings/gp/GPNodeSin.java index 66919b22..2441fadc 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeSin.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeSin.java @@ -36,7 +36,7 @@ public class GPNodeSin extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeSin(this); + return new GPNodeSin(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeSqrt.java b/src/eva2/optimization/individuals/codings/gp/GPNodeSqrt.java index 50c9bc78..aefcd7fd 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeSqrt.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeSqrt.java @@ -37,7 +37,7 @@ public class GPNodeSqrt extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeSqrt(this); + return new GPNodeSqrt(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeSub.java b/src/eva2/optimization/individuals/codings/gp/GPNodeSub.java index ede7631f..d6052c8a 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeSub.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeSub.java @@ -37,7 +37,7 @@ public class GPNodeSub extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeSub(this); + return new GPNodeSub(this); } /** diff --git a/src/eva2/optimization/individuals/codings/gp/GPNodeSum.java b/src/eva2/optimization/individuals/codings/gp/GPNodeSum.java index dd2c788a..5e4f8221 100644 --- a/src/eva2/optimization/individuals/codings/gp/GPNodeSum.java +++ b/src/eva2/optimization/individuals/codings/gp/GPNodeSum.java @@ -33,7 +33,7 @@ public class GPNodeSum extends AbstractGPNode implements java.io.Serializable { */ @Override public Object clone() { - return (Object) new GPNodeSum(this); + return new GPNodeSum(this); } /** diff --git a/src/eva2/optimization/mocco/MOCCOProblemInitialization.java b/src/eva2/optimization/mocco/MOCCOProblemInitialization.java index a2fd508a..a995c3ec 100644 --- a/src/eva2/optimization/mocco/MOCCOProblemInitialization.java +++ b/src/eva2/optimization/mocco/MOCCOProblemInitialization.java @@ -97,7 +97,7 @@ public class MOCCOProblemInitialization extends MOCCOPhase implements InterfaceP mocco.parameterPanel.removeAll(); Object n = null; try { - n = (Object) Class.forName(className).newInstance(); + n = Class.forName(className).newInstance(); } catch (Exception ex) { } mocco.state.originalProblem = (InterfaceOptimizationProblem) n; diff --git a/src/eva2/optimization/modules/DEParameters.java b/src/eva2/optimization/modules/DEParameters.java index 20a81bb0..89d96b21 100644 --- a/src/eva2/optimization/modules/DEParameters.java +++ b/src/eva2/optimization/modules/DEParameters.java @@ -90,11 +90,11 @@ public class DEParameters extends AbstractOptimizationParameters implements Inte * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((DifferentialEvolution) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((DifferentialEvolution) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/EPParameters.java b/src/eva2/optimization/modules/EPParameters.java index 8c54f625..d49d95ba 100644 --- a/src/eva2/optimization/modules/EPParameters.java +++ b/src/eva2/optimization/modules/EPParameters.java @@ -95,11 +95,11 @@ public class EPParameters extends AbstractOptimizationParameters implements Inte * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((EvolutionaryProgramming) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((EvolutionaryProgramming) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/GAParameters.java b/src/eva2/optimization/modules/GAParameters.java index c6b01e1a..31e06e4e 100644 --- a/src/eva2/optimization/modules/GAParameters.java +++ b/src/eva2/optimization/modules/GAParameters.java @@ -93,11 +93,11 @@ public class GAParameters extends AbstractOptimizationParameters implements Inte * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((GeneticAlgorithm) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((GeneticAlgorithm) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/GenericModuleAdapter.java b/src/eva2/optimization/modules/GenericModuleAdapter.java index a3b57575..0230ba64 100644 --- a/src/eva2/optimization/modules/GenericModuleAdapter.java +++ b/src/eva2/optimization/modules/GenericModuleAdapter.java @@ -83,7 +83,7 @@ public class GenericModuleAdapter extends AbstractModuleAdapter implements Seria } EvATabbedFrameMaker frmMkr = new EvATabbedFrameMaker(); - InterfaceStatisticsParameter Stat = ((StatisticsWithGUI) statisticsModule).getStatisticsParameter(); + InterfaceStatisticsParameter Stat = statisticsModule.getStatisticsParameter(); EvAModuleButtonPanelMaker ButtonPanel = new EvAModuleButtonPanelMaker(remoteModuleAdapter, ((Processor) processor).isOptimizationRunning()); ButtonPanel.setHelperFilename(helperFilename); frmMkr.addPanelMaker(ButtonPanel); @@ -110,7 +110,7 @@ public class GenericModuleAdapter extends AbstractModuleAdapter implements Seria public void performedStart(String infoString) { super.performedStart(infoString); OptimizationJob job = scheduleJob(); - ((AbstractStatistics) (((Processor) processor).getStatistics())).addDataListener(job); + ((Processor) processor).getStatistics().addDataListener(job); } @Override diff --git a/src/eva2/optimization/modules/HCParameters.java b/src/eva2/optimization/modules/HCParameters.java index 64170da6..8b5b0faf 100644 --- a/src/eva2/optimization/modules/HCParameters.java +++ b/src/eva2/optimization/modules/HCParameters.java @@ -90,11 +90,11 @@ public class HCParameters extends AbstractOptimizationParameters implements Inte * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((HillClimbing) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((HillClimbing) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/MCParameters.java b/src/eva2/optimization/modules/MCParameters.java index f63d99f0..edfd09f2 100644 --- a/src/eva2/optimization/modules/MCParameters.java +++ b/src/eva2/optimization/modules/MCParameters.java @@ -86,11 +86,11 @@ public class MCParameters extends AbstractOptimizationParameters implements Inte * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((MonteCarloSearch) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((MonteCarloSearch) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/MOEAParameters.java b/src/eva2/optimization/modules/MOEAParameters.java index aaebf52c..20458e34 100644 --- a/src/eva2/optimization/modules/MOEAParameters.java +++ b/src/eva2/optimization/modules/MOEAParameters.java @@ -76,11 +76,11 @@ public class MOEAParameters extends AbstractOptimizationParameters implements In * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((MultiObjectiveEA) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((MultiObjectiveEA) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { @@ -146,21 +146,21 @@ public class MOEAParameters extends AbstractOptimizationParameters implements In * @return The current optimizing method */ public int getArchiveSize() { - Population archive = ((MultiObjectiveEA) this.optimizer).getPopulation().getArchive(); + Population archive = this.optimizer.getPopulation().getArchive(); if (archive == null) { archive = new Population(); - ((MultiObjectiveEA) this.optimizer).getPopulation().SetArchive(archive); + this.optimizer.getPopulation().SetArchive(archive); } return ((MultiObjectiveEA) this.optimizer).getArchiveSize(); } public void setArchiveSize(int b) { - Population archive = ((MultiObjectiveEA) this.optimizer).getPopulation().getArchive(); + Population archive = this.optimizer.getPopulation().getArchive(); if (archive == null) { archive = new Population(); - ((MultiObjectiveEA) this.optimizer).getPopulation().SetArchive(archive); + this.optimizer.getPopulation().SetArchive(archive); } - ((MultiObjectiveEA) this.optimizer).getPopulation().getArchive().setTargetSize(b); + this.optimizer.getPopulation().getArchive().setTargetSize(b); } public String archiveSizeTipText() { diff --git a/src/eva2/optimization/modules/PBILParameters.java b/src/eva2/optimization/modules/PBILParameters.java index 40d5f9b8..77dbba2e 100644 --- a/src/eva2/optimization/modules/PBILParameters.java +++ b/src/eva2/optimization/modules/PBILParameters.java @@ -81,11 +81,11 @@ public class PBILParameters extends AbstractOptimizationParameters implements In * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((PopulationBasedIncrementalLearning) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((PopulationBasedIncrementalLearning) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/PSOParameters.java b/src/eva2/optimization/modules/PSOParameters.java index 90404b65..2226756f 100644 --- a/src/eva2/optimization/modules/PSOParameters.java +++ b/src/eva2/optimization/modules/PSOParameters.java @@ -81,11 +81,11 @@ public class PSOParameters extends AbstractOptimizationParameters implements Int * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((ParticleSwarmOptimization) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((ParticleSwarmOptimization) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/Processor.java b/src/eva2/optimization/modules/Processor.java index 2b047b80..74ea6d59 100644 --- a/src/eva2/optimization/modules/Processor.java +++ b/src/eva2/optimization/modules/Processor.java @@ -303,8 +303,8 @@ public class Processor extends Thread implements InterfaceProcessor, InterfacePo // is called recursively. if (controllerOrSubControllable instanceof InterfaceParameterControl) { args[0] = instance; - if (!((InterfaceParameterControl) controllerOrSubControllable instanceof ConstantParameters)) { - BeanInspector.callIfAvailable((InterfaceParameterControl) controllerOrSubControllable, methodName, args); + if (!(controllerOrSubControllable instanceof ConstantParameters)) { + BeanInspector.callIfAvailable(controllerOrSubControllable, methodName, args); } } else { args[0] = controllerOrSubControllable; @@ -312,8 +312,8 @@ public class Processor extends Thread implements InterfaceProcessor, InterfacePo } } } else if (paramCtrlReturn instanceof InterfaceParameterControl) { - if (!((InterfaceParameterControl) paramCtrlReturn instanceof ConstantParameters)) { - BeanInspector.callIfAvailable((InterfaceParameterControl) paramCtrlReturn, methodName, args); + if (!(paramCtrlReturn instanceof ConstantParameters)) { + BeanInspector.callIfAvailable(paramCtrlReturn, methodName, args); } } } @@ -384,7 +384,7 @@ public class Processor extends Thread implements InterfaceProcessor, InterfacePo public void registerPopulationStateChanged(Object source, String name) { if (name.equals(Population.NEXT_GENERATION_PERFORMED)) { statistics.createNextGenerationPerformed( - (PopulationInterface) this.optimizationParameters.getOptimizer().getPopulation(), + this.optimizationParameters.getOptimizer().getPopulation(), this.optimizationParameters.getOptimizer(), getInformerList()); if (optimizationStateListener != null) { @@ -474,7 +474,7 @@ public class Processor extends Thread implements InterfaceProcessor, InterfacePo } PostProcess.checkAccuracy((AbstractOptimizationProblem) optimizationParameters.getProblem(), resultPop, ppp.getAccuracies(), ppp.getAccAssumeConv(), - -1, ppp.getAccMaxEval(), (SolutionHistogram[]) null, true, listener); + -1, ppp.getAccMaxEval(), null, true, listener); resultPop = PostProcess.postProcess(ppp, resultPop, (AbstractOptimizationProblem) optimizationParameters.getProblem(), listener); resultPopulation = resultPop; diff --git a/src/eva2/optimization/modules/SAParameters.java b/src/eva2/optimization/modules/SAParameters.java index abe2ccd1..3152758d 100644 --- a/src/eva2/optimization/modules/SAParameters.java +++ b/src/eva2/optimization/modules/SAParameters.java @@ -83,11 +83,11 @@ public class SAParameters extends AbstractOptimizationParameters implements Seri * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((SimulatedAnnealing) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((SimulatedAnnealing) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/modules/SSGAParameters.java b/src/eva2/optimization/modules/SSGAParameters.java index 4d9727ad..523acbfc 100644 --- a/src/eva2/optimization/modules/SSGAParameters.java +++ b/src/eva2/optimization/modules/SSGAParameters.java @@ -84,11 +84,11 @@ public class SSGAParameters extends AbstractOptimizationParameters implements In * @return The population of current solutions to a given problem. */ public Population getPopulation() { - return ((SteadyStateGA) this.optimizer).getPopulation(); + return this.optimizer.getPopulation(); } public void setPopulation(Population pop) { - ((SteadyStateGA) this.optimizer).setPopulation(pop); + this.optimizer.setPopulation(pop); } public String populationTipText() { diff --git a/src/eva2/optimization/operator/archiving/AbstractArchiving.java b/src/eva2/optimization/operator/archiving/AbstractArchiving.java index 35c574c3..b7a1b8b8 100644 --- a/src/eva2/optimization/operator/archiving/AbstractArchiving.java +++ b/src/eva2/optimization/operator/archiving/AbstractArchiving.java @@ -68,11 +68,7 @@ public abstract class AbstractArchiving implements InterfaceArchiving, java.io.S tmpFitness = ((AbstractEAIndividual) archive.get(i)).getFitness(); try { for (int j = 0; j < indyFitness.length; j++) { - if (indyFitness[j] <= tmpFitness[j]) { - isDominating &= true; - } else { - isDominating &= false; - } + isDominating &= indyFitness[j] <= tmpFitness[j]; } } catch (java.lang.ArrayIndexOutOfBoundsException e) { //System.out.println("-------addIndividualToArchive-------("+indyFitness.length+"/"+tmpFitness.length+")"); diff --git a/src/eva2/optimization/operator/archiving/ArchivingAllDominating.java b/src/eva2/optimization/operator/archiving/ArchivingAllDominating.java index 7a8b11f4..df79d2bb 100644 --- a/src/eva2/optimization/operator/archiving/ArchivingAllDominating.java +++ b/src/eva2/optimization/operator/archiving/ArchivingAllDominating.java @@ -20,7 +20,7 @@ public class ArchivingAllDominating extends AbstractArchiving implements java.io @Override public Object clone() { - return (Object) new ArchivingAllDominating(this); + return new ArchivingAllDominating(this); } /** diff --git a/src/eva2/optimization/operator/archiving/ArchivingMaxiMin.java b/src/eva2/optimization/operator/archiving/ArchivingMaxiMin.java index d94712d0..0926c27d 100644 --- a/src/eva2/optimization/operator/archiving/ArchivingMaxiMin.java +++ b/src/eva2/optimization/operator/archiving/ArchivingMaxiMin.java @@ -35,7 +35,7 @@ public class ArchivingMaxiMin implements InterfaceArchiving, java.io.Serializabl @Override public Object clone() { - return (Object) new ArchivingMaxiMin(this); + return new ArchivingMaxiMin(this); } /** diff --git a/src/eva2/optimization/operator/archiving/ArchivingNSGA.java b/src/eva2/optimization/operator/archiving/ArchivingNSGA.java index 0ba5be25..0d9ebf2a 100644 --- a/src/eva2/optimization/operator/archiving/ArchivingNSGA.java +++ b/src/eva2/optimization/operator/archiving/ArchivingNSGA.java @@ -20,7 +20,7 @@ public class ArchivingNSGA extends AbstractArchiving implements java.io.Serializ @Override public Object clone() { - return (Object) new ArchivingNSGA(this); + return new ArchivingNSGA(this); } /** diff --git a/src/eva2/optimization/operator/archiving/ArchivingNSGAII.java b/src/eva2/optimization/operator/archiving/ArchivingNSGAII.java index ea334238..e02a33e1 100644 --- a/src/eva2/optimization/operator/archiving/ArchivingNSGAII.java +++ b/src/eva2/optimization/operator/archiving/ArchivingNSGAII.java @@ -26,7 +26,7 @@ public class ArchivingNSGAII extends ArchivingNSGA implements java.io.Serializab @Override public Object clone() { - return (Object) new ArchivingNSGAII(this); + return new ArchivingNSGAII(this); } /** diff --git a/src/eva2/optimization/operator/archiving/ArchivingPESAII.java b/src/eva2/optimization/operator/archiving/ArchivingPESAII.java index db4a2f68..5fb1df59 100644 --- a/src/eva2/optimization/operator/archiving/ArchivingPESAII.java +++ b/src/eva2/optimization/operator/archiving/ArchivingPESAII.java @@ -28,7 +28,7 @@ public class ArchivingPESAII extends AbstractArchiving implements java.io.Serial @Override public Object clone() { - return (Object) new ArchivingPESAII(this); + return new ArchivingPESAII(this); } /** diff --git a/src/eva2/optimization/operator/archiving/ArchivingSPEAII.java b/src/eva2/optimization/operator/archiving/ArchivingSPEAII.java index 75fd4fcb..aebe6001 100644 --- a/src/eva2/optimization/operator/archiving/ArchivingSPEAII.java +++ b/src/eva2/optimization/operator/archiving/ArchivingSPEAII.java @@ -29,7 +29,7 @@ public class ArchivingSPEAII extends AbstractArchiving implements java.io.Serial @Override public Object clone() { - return (Object) new ArchivingSPEAII(this); + return new ArchivingSPEAII(this); } /** diff --git a/src/eva2/optimization/operator/archiving/InformationRetrievalInserting.java b/src/eva2/optimization/operator/archiving/InformationRetrievalInserting.java index 1ac5df57..9deb5d1b 100644 --- a/src/eva2/optimization/operator/archiving/InformationRetrievalInserting.java +++ b/src/eva2/optimization/operator/archiving/InformationRetrievalInserting.java @@ -17,7 +17,7 @@ public class InformationRetrievalInserting implements InterfaceInformationRetrie @Override public Object clone() { - return (Object) new InformationRetrievalInserting(this); + return new InformationRetrievalInserting(this); } /** diff --git a/src/eva2/optimization/operator/archiving/InformationRetrievalNone.java b/src/eva2/optimization/operator/archiving/InformationRetrievalNone.java index 632c3b92..36368289 100644 --- a/src/eva2/optimization/operator/archiving/InformationRetrievalNone.java +++ b/src/eva2/optimization/operator/archiving/InformationRetrievalNone.java @@ -21,7 +21,7 @@ public class InformationRetrievalNone implements InterfaceInformationRetrieval, @Override public Object clone() { - return (Object) new InformationRetrievalNone(this); + return new InformationRetrievalNone(this); } /** diff --git a/src/eva2/optimization/operator/archiving/InformationRetrievalReplacing.java b/src/eva2/optimization/operator/archiving/InformationRetrievalReplacing.java index 8e352866..09aa658a 100644 --- a/src/eva2/optimization/operator/archiving/InformationRetrievalReplacing.java +++ b/src/eva2/optimization/operator/archiving/InformationRetrievalReplacing.java @@ -17,7 +17,7 @@ public class InformationRetrievalReplacing implements InterfaceInformationRetrie @Override public Object clone() { - return (Object) new InformationRetrievalReplacing(this); + return new InformationRetrievalReplacing(this); } /** diff --git a/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsDynamicHyperCube.java b/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsDynamicHyperCube.java index 3520012e..7e5e424a 100644 --- a/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsDynamicHyperCube.java +++ b/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsDynamicHyperCube.java @@ -21,7 +21,7 @@ public class RemoveSurplusIndividualsDynamicHyperCube implements InterfaceRemove @Override public Object clone() { - return (Object) new RemoveSurplusIndividualsDynamicHyperCube(this); + return new RemoveSurplusIndividualsDynamicHyperCube(this); } /** diff --git a/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsSMetric.java b/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsSMetric.java index 75f933f5..844c64da 100644 --- a/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsSMetric.java +++ b/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsSMetric.java @@ -21,7 +21,7 @@ public class RemoveSurplusIndividualsSMetric implements InterfaceRemoveSurplusIn @Override public Object clone() { - return (Object) new RemoveSurplusIndividualsSMetric(this); + return new RemoveSurplusIndividualsSMetric(this); } /** diff --git a/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsStaticHyperCube.java b/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsStaticHyperCube.java index eb3c0605..512e08a0 100644 --- a/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsStaticHyperCube.java +++ b/src/eva2/optimization/operator/archiving/RemoveSurplusIndividualsStaticHyperCube.java @@ -21,7 +21,7 @@ public class RemoveSurplusIndividualsStaticHyperCube extends RemoveSurplusIndivi @Override public Object clone() { - return (Object) new RemoveSurplusIndividualsStaticHyperCube(this); + return new RemoveSurplusIndividualsStaticHyperCube(this); } /** diff --git a/src/eva2/optimization/operator/classification/ClassificationSelfOrganizingMaps.java b/src/eva2/optimization/operator/classification/ClassificationSelfOrganizingMaps.java index 75a90053..4bcb343f 100644 --- a/src/eva2/optimization/operator/classification/ClassificationSelfOrganizingMaps.java +++ b/src/eva2/optimization/operator/classification/ClassificationSelfOrganizingMaps.java @@ -80,7 +80,7 @@ public class ClassificationSelfOrganizingMaps implements java.io.Serializable, I */ @Override public Object clone() { - return (Object) new ClassificationSelfOrganizingMaps(this); + return new ClassificationSelfOrganizingMaps(this); } /** @@ -378,12 +378,6 @@ public class ClassificationSelfOrganizingMaps implements java.io.Serializable, I } } DPoint tmpP; -// for (int i = 0; i < data.length; i++) { -// tmpP = new DPoint(data[i][0], data[i][1]); -// tmpP.setIcon(new Chart2DDPointIconCross()); -// tmpP.setColor(Color.RED); -// area.addDElement(tmpP); -// } for (int i = 0; i < data.length; i++) { tmpP = new DPoint((data[i][0] - this.range[0][2]) / (1 + this.range[0][3]), (data[i][1] - this.range[1][2]) / (1 + this.range[1][3])); tmpP.setIcon(new Chart2DDPointIconCross()); @@ -393,7 +387,7 @@ public class ClassificationSelfOrganizingMaps implements java.io.Serializable, I panel.add(area, BorderLayout.CENTER); frame.getContentPane().add(panel); frame.validate(); - frame.show(); + frame.setVisible(true); } /** diff --git a/src/eva2/optimization/operator/cluster/ClusteringDensityBased.java b/src/eva2/optimization/operator/cluster/ClusteringDensityBased.java index ef09c15c..ae0b0d14 100644 --- a/src/eva2/optimization/operator/cluster/ClusteringDensityBased.java +++ b/src/eva2/optimization/operator/cluster/ClusteringDensityBased.java @@ -65,22 +65,14 @@ public class ClusteringDensityBased implements InterfaceClusteringDistanceParam, if (a.clustered != null) { this.clustered = new boolean[a.clustered.length]; for (int i = 0; i < this.clustered.length; i++) { - if (a.clustered[i]) { - this.clustered[i] = true; - } else { - this.clustered[i] = false; - } + this.clustered[i] = a.clustered[i]; } } if (a.connectionMatrix != null) { this.connectionMatrix = new boolean[a.connectionMatrix.length][a.connectionMatrix[0].length]; for (int i = 0; i < this.connectionMatrix.length; i++) { for (int j = 0; j < this.connectionMatrix[i].length; j++) { - if (a.connectionMatrix[i][j]) { - this.connectionMatrix[i][j] = true; - } else { - this.connectionMatrix[i][j] = false; - } + this.connectionMatrix[i][j] = a.connectionMatrix[i][j]; } } } @@ -94,7 +86,7 @@ public class ClusteringDensityBased implements InterfaceClusteringDistanceParam, */ @Override public Object clone() { - return (Object) new ClusteringDensityBased(this); + return new ClusteringDensityBased(this); } @Override diff --git a/src/eva2/optimization/operator/cluster/ClusteringDynPeakIdent.java b/src/eva2/optimization/operator/cluster/ClusteringDynPeakIdent.java index 5641703f..3899b97a 100644 --- a/src/eva2/optimization/operator/cluster/ClusteringDynPeakIdent.java +++ b/src/eva2/optimization/operator/cluster/ClusteringDynPeakIdent.java @@ -1,6 +1,5 @@ package eva2.optimization.operator.cluster; -import eva2.gui.BeanInspector; import eva2.optimization.individuals.AbstractEAIndividual; import eva2.optimization.individuals.AbstractEAIndividualComparator; import eva2.optimization.individuals.IndividualDistanceComparator; @@ -23,11 +22,8 @@ import java.util.ArrayList; * have a distance smaller than the niche radius to that peak. * The number of expected peaks (clusters) must be predefined. * Note that the returned number of clusters may be smaller than q. - * - * @author mkron */ public class ClusteringDynPeakIdent implements InterfaceClustering, java.io.Serializable { - private static final boolean TRACE = false; private int numNiches; private double nicheRadius; private int maxNicheCount; // maximum number of individuals per peak @@ -103,14 +99,9 @@ public class ClusteringDynPeakIdent implements InterfaceClustering, java.io.Seri @Override public Population[] cluster(Population pop, Population referenceSet) { -// boolean TRACE_METH=false; -// if (TRACE_METH) System.out.println("A1 " + System.currentTimeMillis()); AbstractEAIndividualComparator eaComparator = new AbstractEAIndividualComparator(-1); Population sorted = pop.getSortedBestFirst(eaComparator); -// if (TRACE_METH) System.out.println("A2 " + System.currentTimeMillis()); Population peaks = performDynPeakIdent(metric, sorted, numNiches, nicheRadius); -// System.out.println("peak measures: " + BeanInspector.toString(peaks.getPopulationMeasures())); -// if (TRACE_METH) System.out.println("A3 " + System.currentTimeMillis()); Population[] clusters = new Population[peaks.size() + 1]; for (int i = 0; i < clusters.length; i++) { clusters[i] = referenceSet.cloneWithoutInds(); @@ -118,9 +109,7 @@ public class ClusteringDynPeakIdent implements InterfaceClustering, java.io.Seri clusters[i].add(peaks.getEAIndividual(i - 1)); } // add peaks to clusters! } -// if (TRACE_METH) System.out.println("A4 " + System.currentTimeMillis()); Population rest = pop.filter(peaks); -// if (TRACE_METH) System.out.println("A4a " + System.currentTimeMillis()); if (pop.getRedundancyCount() > 0) { // happens e.g. on the bounds of the domain System.err.println("warning, found redundant indies: " + pop.getRedundancyCount()); @@ -130,7 +119,6 @@ public class ClusteringDynPeakIdent implements InterfaceClustering, java.io.Seri System.err.println("Warning, inconsistent filtering in ClusteringDynPeakIdent! Redundant: " + pop.getRedundancyCount()); } int[] assoc = assignLeaders(rest, peaks); -// if (TRACE_METH) System.out.println("A5 " + System.currentTimeMillis()); for (int i = 0; i < assoc.length; i++) { if (assoc[i] >= 0) { // it can be assigned to a peak @@ -139,7 +127,6 @@ public class ClusteringDynPeakIdent implements InterfaceClustering, java.io.Seri clusters[0].add(rest.getEAIndividual(i)); } } -// if (TRACE_METH) System.out.println("A6 " + System.currentTimeMillis()); int cnt = clusters[0].size(); for (int i = 1; i < clusters.length; i++) { cnt += clusters[i].size(); @@ -153,16 +140,14 @@ public class ClusteringDynPeakIdent implements InterfaceClustering, java.io.Seri if (maxNicheCount > 0) { // check for too large species for (int i = 1; i < clusters.length; i++) { if (clusters[i].size() > maxNicheCount) { -// Population overhead = clusters[i].getSortedNIndividuals(clusters[i].size()-maxNicheCount, false); ArrayList overhd = clusters[i].getSorted(new IndividualDistanceComparator(peaks.getEAIndividual(i - 1), new EuclideanMetric(), true)); Population overhead = new Population(); - overhead.addAll(overhead.toTail(clusters[i].size() - maxNicheCount, overhd)); // add only the front maxNicheCount individuals + overhead.addAll(Population.toTail(clusters[i].size() - maxNicheCount, overhd)); // add only the front maxNicheCount individuals clusters[i].removeMembers(overhead, true); clusters[0].addPopulation(overhead); } } } -// if (TRACE_METH) System.out.println("-- " + System.currentTimeMillis()); return clusters; } @@ -192,23 +177,12 @@ public class ClusteringDynPeakIdent implements InterfaceClustering, java.io.Seri public static Population performDynPeakIdent(InterfaceDistanceMetric metric, Population sortedPop, int q, double rho) { int i = 0; Population peaks = new Population(q); - if (TRACE) { - System.out.print("Adding peaks: "); - } while (i < sortedPop.size() && (peaks.size() < q)) { if ((peaks.size() == 0) || (!peaks.isWithinPopDist((AbstractEAIndividual) sortedPop.get(i), rho, metric))) { peaks.add(sortedPop.get(i)); - if (TRACE) { - System.out.print(" " + sortedPop.getEAIndividual(i).getFitness(0)); - } } i++; } - if (TRACE) { - System.out.println("\nFound " + peaks.size() + " peaks, "); -// for (int k=0; k= 0.000000000000000001; } /** @@ -195,11 +192,7 @@ public class CrossoverESPCX implements InterfaceCrossover, java.io.Serializable */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverESUNDX) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverESUNDX; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverESSBX.java b/src/eva2/optimization/operator/crossover/CrossoverESSBX.java index 162c218f..00e2862a 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverESSBX.java +++ b/src/eva2/optimization/operator/crossover/CrossoverESSBX.java @@ -103,10 +103,7 @@ public class CrossoverESSBX implements InterfaceCrossover, java.io.Serializable public boolean equals(Object crossover) { if (crossover instanceof CrossoverESSBX) { CrossoverESSBX cross = (CrossoverESSBX) crossover; - if (this.eta != cross.eta) { - return false; - } - return true; + return this.eta == cross.eta; } else { return false; } diff --git a/src/eva2/optimization/operator/crossover/CrossoverESSPX.java b/src/eva2/optimization/operator/crossover/CrossoverESSPX.java index 792a123f..199c047d 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverESSPX.java +++ b/src/eva2/optimization/operator/crossover/CrossoverESSPX.java @@ -113,11 +113,7 @@ public class CrossoverESSPX implements InterfaceCrossover, java.io.Serializable */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverESSPX) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverESSPX; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverESUNDX.java b/src/eva2/optimization/operator/crossover/CrossoverESUNDX.java index 2cbe2772..dc47e749 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverESUNDX.java +++ b/src/eva2/optimization/operator/crossover/CrossoverESUNDX.java @@ -201,11 +201,7 @@ public class CrossoverESUNDX implements InterfaceCrossover, java.io.Serializable */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverESUNDX) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverESUNDX; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverESUniformDiscrete.java b/src/eva2/optimization/operator/crossover/CrossoverESUniformDiscrete.java index 7d09bde5..facc5c44 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverESUniformDiscrete.java +++ b/src/eva2/optimization/operator/crossover/CrossoverESUniformDiscrete.java @@ -91,11 +91,7 @@ public class CrossoverESUniformDiscrete implements InterfaceCrossover, java.io.S */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverESUniformDiscrete) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverESUniformDiscrete; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverGABitSimulated.java b/src/eva2/optimization/operator/crossover/CrossoverGABitSimulated.java index 873c18dc..58c77e43 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGABitSimulated.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGABitSimulated.java @@ -102,11 +102,7 @@ public class CrossoverGABitSimulated implements InterfaceCrossover, java.io.Seri */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverGABitSimulated) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverGABitSimulated; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverGADefault.java b/src/eva2/optimization/operator/crossover/CrossoverGADefault.java index 4a5d5779..3379a1e5 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGADefault.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGADefault.java @@ -67,11 +67,7 @@ public class CrossoverGADefault implements InterfaceCrossover, tmpBitSets[1] = ((InterfaceGAIndividual) result[1]).getBGenotype(); for (int i = crossoverpoint; i < ((InterfaceGAIndividual) result[0]) .getGenotypeLength(); i++) { - if (tmpBitSets[0].get(i)) { - tmpValue = true; - } else { - tmpValue = false; - } + tmpValue = tmpBitSets[0].get(i); if (tmpBitSets[1].get(i)) { tmpBitSets[0].set(i); } else { @@ -105,11 +101,7 @@ public class CrossoverGADefault implements InterfaceCrossover, */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverGADefault) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverGADefault; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverGAGINPoint.java b/src/eva2/optimization/operator/crossover/CrossoverGAGINPoint.java index bcf63477..dfd515f7 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGAGINPoint.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGAGINPoint.java @@ -228,10 +228,7 @@ public class CrossoverGAGINPoint implements InterfaceCrossover, java.io.Serializ public boolean equals(Object crossover) { if (crossover instanceof CrossoverGAGINPoint) { CrossoverGAGINPoint cross = (CrossoverGAGINPoint) crossover; - if (this.numberOfCrossovers != cross.numberOfCrossovers) { - return false; - } - return true; + return this.numberOfCrossovers == cross.numberOfCrossovers; } else { return false; } diff --git a/src/eva2/optimization/operator/crossover/CrossoverGAUniform.java b/src/eva2/optimization/operator/crossover/CrossoverGAUniform.java index 29057eeb..e23bfaad 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGAUniform.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGAUniform.java @@ -100,11 +100,7 @@ public class CrossoverGAUniform implements InterfaceCrossover, java.io.Serializa */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverGAUniform) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverGAUniform; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverGIDefault.java b/src/eva2/optimization/operator/crossover/CrossoverGIDefault.java index df36de8b..b06fde5c 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGIDefault.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGIDefault.java @@ -102,11 +102,7 @@ public class CrossoverGIDefault implements InterfaceCrossover, java.io.Serializa */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverESDefault) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverESDefault; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverGINPoint.java b/src/eva2/optimization/operator/crossover/CrossoverGINPoint.java index 29df0214..bc25678a 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGINPoint.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGINPoint.java @@ -110,10 +110,7 @@ public class CrossoverGINPoint implements InterfaceCrossover, java.io.Serializab public boolean equals(Object crossover) { if (crossover instanceof CrossoverGINPoint) { CrossoverGINPoint cross = (CrossoverGINPoint) crossover; - if (this.numberOfCrossovers != cross.numberOfCrossovers) { - return false; - } - return true; + return this.numberOfCrossovers == cross.numberOfCrossovers; } else { return false; } diff --git a/src/eva2/optimization/operator/crossover/CrossoverGINPointVL.java b/src/eva2/optimization/operator/crossover/CrossoverGINPointVL.java index 2995199e..49417c0b 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGINPointVL.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGINPointVL.java @@ -165,10 +165,7 @@ public class CrossoverGINPointVL implements InterfaceCrossover, java.io.Serializ public boolean equals(Object crossover) { if (crossover instanceof CrossoverGINPointVL) { CrossoverGINPointVL cross = (CrossoverGINPointVL) crossover; - if (this.numberOfCrossovers != cross.numberOfCrossovers) { - return false; - } - return true; + return this.numberOfCrossovers == cross.numberOfCrossovers; } else { return false; } diff --git a/src/eva2/optimization/operator/crossover/CrossoverGIUniform.java b/src/eva2/optimization/operator/crossover/CrossoverGIUniform.java index e46c05af..1c462ba9 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGIUniform.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGIUniform.java @@ -99,11 +99,7 @@ public class CrossoverGIUniform implements InterfaceCrossover, java.io.Serializa */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverGIUniform) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverGIUniform; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverGPDefault.java b/src/eva2/optimization/operator/crossover/CrossoverGPDefault.java index c1b1ba43..60acd602 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverGPDefault.java +++ b/src/eva2/optimization/operator/crossover/CrossoverGPDefault.java @@ -139,11 +139,7 @@ public class CrossoverGPDefault implements InterfaceCrossover, java.io.Serializa */ @Override public boolean equals(Object crossover) { - if (crossover instanceof CrossoverGPDefault) { - return true; - } else { - return false; - } + return crossover instanceof CrossoverGPDefault; } /** diff --git a/src/eva2/optimization/operator/crossover/CrossoverOBGAPMX.java b/src/eva2/optimization/operator/crossover/CrossoverOBGAPMX.java index 5b7536ea..f61a6263 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverOBGAPMX.java +++ b/src/eva2/optimization/operator/crossover/CrossoverOBGAPMX.java @@ -52,8 +52,8 @@ public class CrossoverOBGAPMX implements InterfaceCrossover, java.io.Serializabl for (int i = 0; i < ((InterfaceOBGAIndividual) result[0]).getOBGenotype().length; i++) { - int[] perm1 = (int[]) ((InterfaceOBGAIndividual) result[0]).getOBGenotype()[i].clone(); - int[] perm2 = (int[]) ((InterfaceOBGAIndividual) result[1]).getOBGenotype()[i].clone(); + int[] perm1 = ((InterfaceOBGAIndividual) result[0]).getOBGenotype()[i].clone(); + int[] perm2 = ((InterfaceOBGAIndividual) result[1]).getOBGenotype()[i].clone(); int begin = RNG.randomInt(0, perm1.length - 2); int end = RNG.randomInt(begin, perm1.length - 1); for (int pos = begin; pos <= end; pos++) { diff --git a/src/eva2/optimization/operator/crossover/CrossoverOBGAPMXUniform.java b/src/eva2/optimization/operator/crossover/CrossoverOBGAPMXUniform.java index 738c2ad2..07a9d616 100644 --- a/src/eva2/optimization/operator/crossover/CrossoverOBGAPMXUniform.java +++ b/src/eva2/optimization/operator/crossover/CrossoverOBGAPMXUniform.java @@ -52,8 +52,8 @@ public class CrossoverOBGAPMXUniform implements InterfaceCrossover, java.io.Seri pperm2 = new int[((InterfaceOBGAIndividual) result[1]).getOBGenotype().length][]; for (int i = 0; i < ((InterfaceOBGAIndividual) result[0]).getOBGenotype().length; i++) { - int[] perm1 = (int[]) ((InterfaceOBGAIndividual) result[0]).getOBGenotype()[i].clone(); - int[] perm2 = (int[]) ((InterfaceOBGAIndividual) result[1]).getOBGenotype()[i].clone(); + int[] perm1 = ((InterfaceOBGAIndividual) result[0]).getOBGenotype()[i].clone(); + int[] perm2 = ((InterfaceOBGAIndividual) result[1]).getOBGenotype()[i].clone(); int crossnumber = RNG.randomInt(1, perm1.length); diff --git a/src/eva2/optimization/operator/crossover/NoCrossover.java b/src/eva2/optimization/operator/crossover/NoCrossover.java index a742c2fb..5242e844 100644 --- a/src/eva2/optimization/operator/crossover/NoCrossover.java +++ b/src/eva2/optimization/operator/crossover/NoCrossover.java @@ -57,11 +57,7 @@ public class NoCrossover implements InterfaceCrossover, java.io.Serializable { */ @Override public boolean equals(Object crossover) { - if (crossover instanceof NoCrossover) { - return true; - } else { - return false; - } + return crossover instanceof NoCrossover; } /** diff --git a/src/eva2/optimization/operator/crossover/PropertyCrossoverMixer.java b/src/eva2/optimization/operator/crossover/PropertyCrossoverMixer.java index 744a236f..5893516d 100644 --- a/src/eva2/optimization/operator/crossover/PropertyCrossoverMixer.java +++ b/src/eva2/optimization/operator/crossover/PropertyCrossoverMixer.java @@ -42,7 +42,7 @@ public class PropertyCrossoverMixer implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyCrossoverMixer(this); + return new PropertyCrossoverMixer(this); } /** diff --git a/src/eva2/optimization/operator/crossover/PropertyCrossoverMixerEditor.java b/src/eva2/optimization/operator/crossover/PropertyCrossoverMixerEditor.java index 876cf712..3aef5417 100644 --- a/src/eva2/optimization/operator/crossover/PropertyCrossoverMixerEditor.java +++ b/src/eva2/optimization/operator/crossover/PropertyCrossoverMixerEditor.java @@ -445,7 +445,7 @@ public class PropertyCrossoverMixerEditor extends JPanel implements PropertyEdit public Component getCustomEditor() { if (this.component == null) { this.initCustomEditor(); - this.component = new GeneralGEOFaker((PropertyEditor) this, (JPanel) this.editor); + this.component = new GeneralGEOFaker(this, (JPanel) this.editor); } return this.component; } diff --git a/src/eva2/optimization/operator/crossover/TestESCrossover.java b/src/eva2/optimization/operator/crossover/TestESCrossover.java index 634afc73..b4ec62c8 100644 --- a/src/eva2/optimization/operator/crossover/TestESCrossover.java +++ b/src/eva2/optimization/operator/crossover/TestESCrossover.java @@ -156,7 +156,7 @@ public class TestESCrossover implements java.io.Serializable { tmpD = new double[2]; tmpD[0] = -1; tmpD[1] = -1; - ((AbstractEAIndividual) tmpIndyEA).initByValue(tmpD, optimizationProblem); + tmpIndyEA.initByValue(tmpD, optimizationProblem); partners.addIndividual(tmpIndyEA); daddy = (AbstractEAIndividual) ((AbstractEAIndividual) tmpIndyD).clone(); @@ -200,13 +200,13 @@ public class TestESCrossover implements java.io.Serializable { tmpD = new double[2]; tmpD[0] = 0.1; tmpD[1] = -0.65; - ((AbstractEAIndividual) tmpIndyEA).initByValue(tmpD, optimizationProblem); + tmpIndyEA.initByValue(tmpD, optimizationProblem); partners.addIndividual(tmpIndyEA); tmpIndyEA = (AbstractEAIndividual) ((AbstractEAIndividual) tmpIndyD).clone(); tmpD = new double[2]; tmpD[0] = -0.85; tmpD[1] = 0.3; - ((AbstractEAIndividual) tmpIndyEA).initByValue(tmpD, optimizationProblem); + tmpIndyEA.initByValue(tmpD, optimizationProblem); partners.addIndividual(tmpIndyEA); daddy = (AbstractEAIndividual) ((AbstractEAIndividual) tmpIndyD).clone(); diff --git a/src/eva2/optimization/operator/distancemetric/EuclideanMetric.java b/src/eva2/optimization/operator/distancemetric/EuclideanMetric.java index e687ff13..8058e200 100644 --- a/src/eva2/optimization/operator/distancemetric/EuclideanMetric.java +++ b/src/eva2/optimization/operator/distancemetric/EuclideanMetric.java @@ -17,7 +17,7 @@ public class EuclideanMetric implements InterfaceDistanceMetric, Serializable { @Override public Object clone() { - return (Object) new EuclideanMetric(this); + return new EuclideanMetric(this); } public EuclideanMetric(EuclideanMetric a) { diff --git a/src/eva2/optimization/operator/distancemetric/GenotypeMetricBitSet.java b/src/eva2/optimization/operator/distancemetric/GenotypeMetricBitSet.java index f37da77a..fd591fca 100644 --- a/src/eva2/optimization/operator/distancemetric/GenotypeMetricBitSet.java +++ b/src/eva2/optimization/operator/distancemetric/GenotypeMetricBitSet.java @@ -24,7 +24,7 @@ public class GenotypeMetricBitSet implements InterfaceDistanceMetric, java.io.Se @Override public Object clone() { - return (Object) new GenotypeMetricBitSet(this); + return new GenotypeMetricBitSet(this); } /** diff --git a/src/eva2/optimization/operator/distancemetric/ObjectiveSpaceMetric.java b/src/eva2/optimization/operator/distancemetric/ObjectiveSpaceMetric.java index 2a78a2d0..dc9e38f4 100644 --- a/src/eva2/optimization/operator/distancemetric/ObjectiveSpaceMetric.java +++ b/src/eva2/optimization/operator/distancemetric/ObjectiveSpaceMetric.java @@ -20,7 +20,7 @@ public class ObjectiveSpaceMetric implements InterfaceDistanceMetric, java.io.Se @Override public Object clone() { - return (Object) new ObjectiveSpaceMetric(this); + return new ObjectiveSpaceMetric(this); } /** diff --git a/src/eva2/optimization/operator/distancemetric/PhenotypeMetric.java b/src/eva2/optimization/operator/distancemetric/PhenotypeMetric.java index 1a004f1a..47fef5b0 100644 --- a/src/eva2/optimization/operator/distancemetric/PhenotypeMetric.java +++ b/src/eva2/optimization/operator/distancemetric/PhenotypeMetric.java @@ -24,7 +24,7 @@ public class PhenotypeMetric implements InterfaceDistanceMetric, java.io.Seriali @Override public Object clone() { - return (Object) new PhenotypeMetric(this); + return new PhenotypeMetric(this); } private static int min(int a, int b, int c) { @@ -176,7 +176,7 @@ public class PhenotypeMetric implements InterfaceDistanceMetric, java.io.Seriali public static double norm(AbstractEAIndividual indy) { double result = 0; if (indy instanceof InterfaceDataTypeBinary) { - BitSet bs = (BitSet) ((InterfaceDataTypeBinary) indy).getBinaryData(); + BitSet bs = ((InterfaceDataTypeBinary) indy).getBinaryData(); for (int i = 0; (i < ((InterfaceDataTypeBinary) indy).size()); i++) { if (bs.get(i)) { result += 1; diff --git a/src/eva2/optimization/operator/distancemetric/SigmaSingleMetricGlobalMutation.java b/src/eva2/optimization/operator/distancemetric/SigmaSingleMetricGlobalMutation.java index ed6ff897..c9c25953 100644 --- a/src/eva2/optimization/operator/distancemetric/SigmaSingleMetricGlobalMutation.java +++ b/src/eva2/optimization/operator/distancemetric/SigmaSingleMetricGlobalMutation.java @@ -26,7 +26,7 @@ public class SigmaSingleMetricGlobalMutation implements InterfaceDistanceMetric, @Override public Object clone() { - return (Object) new SigmaSingleMetricGlobalMutation(this); + return new SigmaSingleMetricGlobalMutation(this); } /** diff --git a/src/eva2/optimization/operator/migration/MOClusteringSeparation.java b/src/eva2/optimization/operator/migration/MOClusteringSeparation.java index 2cb3384f..d44bfcc9 100644 --- a/src/eva2/optimization/operator/migration/MOClusteringSeparation.java +++ b/src/eva2/optimization/operator/migration/MOClusteringSeparation.java @@ -177,7 +177,7 @@ public class MOClusteringSeparation implements InterfaceMigration, java.io.Seria // i should set the constraints to the optimizers InterfaceOptimizationProblem prob; for (int i = 0; i < islands.length; i++) { - prob = (InterfaceOptimizationProblem) islands[i].getProblem(); + prob = islands[i].getProblem(); if (prob instanceof AbstractMultiObjectiveOptimizationProblem) { // set the boundaries to perform the constrained // domain principle introduced by Deb et al. diff --git a/src/eva2/optimization/operator/migration/MOConeSeparation.java b/src/eva2/optimization/operator/migration/MOConeSeparation.java index 984c1956..ecb84b8f 100644 --- a/src/eva2/optimization/operator/migration/MOConeSeparation.java +++ b/src/eva2/optimization/operator/migration/MOConeSeparation.java @@ -263,7 +263,7 @@ public class MOConeSeparation implements InterfaceMigration, java.io.Serializabl // i should set the constraints to the optimizers InterfaceOptimizationProblem prob; for (int i = 0; i < islands.length; i++) { - prob = (InterfaceOptimizationProblem) islands[i].getProblem(); + prob = islands[i].getProblem(); if (prob instanceof AbstractMultiObjectiveOptimizationProblem) { // set the boundaries to perform the constrained // domain principle introduced by Deb et al. @@ -371,7 +371,7 @@ public class MOConeSeparation implements InterfaceMigration, java.io.Serializabl } } if (this.useConstraints) { - prob = (InterfaceOptimizationProblem) islands[i].getProblem(); + prob = islands[i].getProblem(); if (prob instanceof AbstractMultiObjectiveOptimizationProblem) { // set the boundaries to perform the constrained // domain principle introduced by Deb et al. diff --git a/src/eva2/optimization/operator/migration/MOXMeansSeparation.java b/src/eva2/optimization/operator/migration/MOXMeansSeparation.java index 17181d0c..cf603527 100644 --- a/src/eva2/optimization/operator/migration/MOXMeansSeparation.java +++ b/src/eva2/optimization/operator/migration/MOXMeansSeparation.java @@ -179,7 +179,7 @@ public class MOXMeansSeparation implements InterfaceMigration, java.io.Serializa InterfaceOptimizationProblem prob; for (int i = 0; (i < islands.length) && (i < c.length); i++) { - prob = (InterfaceOptimizationProblem) islands[i].getProblem(); + prob = islands[i].getProblem(); if (prob instanceof AbstractMultiObjectiveOptimizationProblem) { // set the boundaries to perform the constrained // domain principle introduced by Deb et al. diff --git a/src/eva2/optimization/operator/moso/MOSODynamicallyWeightedFitness.java b/src/eva2/optimization/operator/moso/MOSODynamicallyWeightedFitness.java index b3d144dc..07453857 100644 --- a/src/eva2/optimization/operator/moso/MOSODynamicallyWeightedFitness.java +++ b/src/eva2/optimization/operator/moso/MOSODynamicallyWeightedFitness.java @@ -23,7 +23,7 @@ public class MOSODynamicallyWeightedFitness implements InterfaceMOSOConverter, j @Override public Object clone() { - return (Object) new MOSODynamicallyWeightedFitness(this); + return new MOSODynamicallyWeightedFitness(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOEpsilonConstraint.java b/src/eva2/optimization/operator/moso/MOSOEpsilonConstraint.java index dba51f78..b5177636 100644 --- a/src/eva2/optimization/operator/moso/MOSOEpsilonConstraint.java +++ b/src/eva2/optimization/operator/moso/MOSOEpsilonConstraint.java @@ -33,7 +33,7 @@ public class MOSOEpsilonConstraint implements InterfaceMOSOConverter, java.io.Se @Override public Object clone() { - return (Object) new MOSOEpsilonConstraint(this); + return new MOSOEpsilonConstraint(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOEpsilonThreshold.java b/src/eva2/optimization/operator/moso/MOSOEpsilonThreshold.java index 1badedc3..7bc75a61 100644 --- a/src/eva2/optimization/operator/moso/MOSOEpsilonThreshold.java +++ b/src/eva2/optimization/operator/moso/MOSOEpsilonThreshold.java @@ -34,7 +34,7 @@ public class MOSOEpsilonThreshold implements InterfaceMOSOConverter, java.io.Ser @Override public Object clone() { - return (Object) new MOSOEpsilonThreshold(this); + return new MOSOEpsilonThreshold(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOGoalProgramming.java b/src/eva2/optimization/operator/moso/MOSOGoalProgramming.java index b8916f19..c1093878 100644 --- a/src/eva2/optimization/operator/moso/MOSOGoalProgramming.java +++ b/src/eva2/optimization/operator/moso/MOSOGoalProgramming.java @@ -21,13 +21,13 @@ public class MOSOGoalProgramming implements InterfaceMOSOConverter, java.io.Seri public MOSOGoalProgramming(MOSOGoalProgramming b) { if (b.goals != null) { - this.goals = (PropertyDoubleArray) b.goals; + this.goals = b.goals; } } @Override public Object clone() { - return (Object) new MOSOGoalProgramming(this); + return new MOSOGoalProgramming(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOLpMetric.java b/src/eva2/optimization/operator/moso/MOSOLpMetric.java index 470ddc87..ce1fe48f 100644 --- a/src/eva2/optimization/operator/moso/MOSOLpMetric.java +++ b/src/eva2/optimization/operator/moso/MOSOLpMetric.java @@ -29,7 +29,7 @@ public class MOSOLpMetric implements InterfaceMOSOConverter, java.io.Serializabl @Override public Object clone() { - return (Object) new MOSOLpMetric(this); + return new MOSOLpMetric(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOMOGARankBased.java b/src/eva2/optimization/operator/moso/MOSOMOGARankBased.java index f68bcaca..d0fcd964 100644 --- a/src/eva2/optimization/operator/moso/MOSOMOGARankBased.java +++ b/src/eva2/optimization/operator/moso/MOSOMOGARankBased.java @@ -20,7 +20,7 @@ public class MOSOMOGARankBased implements InterfaceMOSOConverter, java.io.Serial @Override public Object clone() { - return (Object) new MOSOMOGARankBased(this); + return new MOSOMOGARankBased(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOMaxiMin.java b/src/eva2/optimization/operator/moso/MOSOMaxiMin.java index 7dc4811f..2e917769 100644 --- a/src/eva2/optimization/operator/moso/MOSOMaxiMin.java +++ b/src/eva2/optimization/operator/moso/MOSOMaxiMin.java @@ -20,7 +20,7 @@ public class MOSOMaxiMin implements InterfaceMOSOConverter, java.io.Serializable @Override public Object clone() { - return (Object) new MOSOMaxiMin(this); + return new MOSOMaxiMin(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSONoConvert.java b/src/eva2/optimization/operator/moso/MOSONoConvert.java index e42ab572..e85108df 100644 --- a/src/eva2/optimization/operator/moso/MOSONoConvert.java +++ b/src/eva2/optimization/operator/moso/MOSONoConvert.java @@ -20,7 +20,7 @@ public class MOSONoConvert implements InterfaceMOSOConverter, java.io.Serializab @Override public Object clone() { - return (Object) new MOSONoConvert(this); + return new MOSONoConvert(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSORandomChoice.java b/src/eva2/optimization/operator/moso/MOSORandomChoice.java index c3a4db64..6fb313b5 100644 --- a/src/eva2/optimization/operator/moso/MOSORandomChoice.java +++ b/src/eva2/optimization/operator/moso/MOSORandomChoice.java @@ -20,7 +20,7 @@ public class MOSORandomChoice implements InterfaceMOSOConverter, java.io.Seriali @Override public Object clone() { - return (Object) new MOSORandomChoice(this); + return new MOSORandomChoice(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSORandomWeight.java b/src/eva2/optimization/operator/moso/MOSORandomWeight.java index 0ea234ca..4fd1fc20 100644 --- a/src/eva2/optimization/operator/moso/MOSORandomWeight.java +++ b/src/eva2/optimization/operator/moso/MOSORandomWeight.java @@ -21,7 +21,7 @@ public class MOSORandomWeight implements InterfaceMOSOConverter, java.io.Seriali @Override public Object clone() { - return (Object) new MOSORandomWeight(this); + return new MOSORandomWeight(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSORankbased.java b/src/eva2/optimization/operator/moso/MOSORankbased.java index 798abd64..e67037f2 100644 --- a/src/eva2/optimization/operator/moso/MOSORankbased.java +++ b/src/eva2/optimization/operator/moso/MOSORankbased.java @@ -21,7 +21,7 @@ public class MOSORankbased implements InterfaceMOSOConverter, java.io.Serializab @Override public Object clone() { - return (Object) new MOSORankbased(this); + return new MOSORankbased(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOUtilityFunction.java b/src/eva2/optimization/operator/moso/MOSOUtilityFunction.java index 52804e7a..db689065 100644 --- a/src/eva2/optimization/operator/moso/MOSOUtilityFunction.java +++ b/src/eva2/optimization/operator/moso/MOSOUtilityFunction.java @@ -21,7 +21,7 @@ public class MOSOUtilityFunction implements InterfaceMOSOConverter, java.io.Seri @Override public Object clone() { - return (Object) new MOSOUtilityFunction(this); + return new MOSOUtilityFunction(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOWeightedFitness.java b/src/eva2/optimization/operator/moso/MOSOWeightedFitness.java index ddafecf8..11ed86bf 100644 --- a/src/eva2/optimization/operator/moso/MOSOWeightedFitness.java +++ b/src/eva2/optimization/operator/moso/MOSOWeightedFitness.java @@ -29,13 +29,13 @@ public class MOSOWeightedFitness implements InterfaceMOSOConverter, java.io.Seri public MOSOWeightedFitness(MOSOWeightedFitness b) { if (b.weights != null) { - this.weights = (PropertyDoubleArray) b.weights; + this.weights = b.weights; } } @Override public Object clone() { - return (Object) new MOSOWeightedFitness(this); + return new MOSOWeightedFitness(this); } /** diff --git a/src/eva2/optimization/operator/moso/MOSOWeightedLPTchebycheff.java b/src/eva2/optimization/operator/moso/MOSOWeightedLPTchebycheff.java index 2b581ddf..627f4462 100644 --- a/src/eva2/optimization/operator/moso/MOSOWeightedLPTchebycheff.java +++ b/src/eva2/optimization/operator/moso/MOSOWeightedLPTchebycheff.java @@ -34,7 +34,7 @@ public class MOSOWeightedLPTchebycheff implements InterfaceMOSOConverter, java.i @Override public Object clone() { - return (Object) new MOSOWeightedLPTchebycheff(this); + return new MOSOWeightedLPTchebycheff(this); } /** diff --git a/src/eva2/optimization/operator/mutation/MutateDefault.java b/src/eva2/optimization/operator/mutation/MutateDefault.java index 684ff9c8..b6ac0461 100644 --- a/src/eva2/optimization/operator/mutation/MutateDefault.java +++ b/src/eva2/optimization/operator/mutation/MutateDefault.java @@ -29,11 +29,7 @@ public class MutateDefault implements InterfaceMutation, java.io.Serializable { */ @Override public boolean equals(Object mutator) { - if (mutator instanceof MutateDefault) { - return true; - } else { - return false; - } + return mutator instanceof MutateDefault; } /** @@ -56,7 +52,7 @@ public class MutateDefault implements InterfaceMutation, java.io.Serializable { @Override public void mutate(AbstractEAIndividual individual) { if (individual instanceof IndividualInterface) { - ((IndividualInterface) individual).defaultMutate(); + individual.defaultMutate(); } } diff --git a/src/eva2/optimization/operator/mutation/MutateEAMixer.java b/src/eva2/optimization/operator/mutation/MutateEAMixer.java index 407797d2..17b7d0f1 100644 --- a/src/eva2/optimization/operator/mutation/MutateEAMixer.java +++ b/src/eva2/optimization/operator/mutation/MutateEAMixer.java @@ -24,17 +24,17 @@ public class MutateEAMixer implements InterfaceMutation, java.io.Serializable { ArrayList mutators = GenericObjectEditor.getClassesFromProperties(InterfaceMutation.class.getCanonicalName(), null); tmpList = new InterfaceMutation[mutators.size()]; for (int i = 0; i < mutators.size(); i++) { - if (((String) mutators.get(i)).equals(this.getClass().getName())) { + if (mutators.get(i).equals(this.getClass().getName())) { continue; } try { tmpList[i] = (InterfaceMutation) Class.forName((String) mutators.get(i)).newInstance(); } catch (java.lang.ClassNotFoundException e) { - System.out.println("Could not find class for " + (String) mutators.get(i)); + System.out.println("Could not find class for " + mutators.get(i)); } catch (java.lang.InstantiationException k) { - System.out.println("Instantiation exception for " + (String) mutators.get(i)); + System.out.println("Instantiation exception for " + mutators.get(i)); } catch (java.lang.IllegalAccessException a) { - System.out.println("Illegal access exception for " + (String) mutators.get(i)); + System.out.println("Illegal access exception for " + mutators.get(i)); } } this.mutationMixer = new PropertyMutationMixer(tmpList, false); diff --git a/src/eva2/optimization/operator/mutation/MutateESCorrVector.java b/src/eva2/optimization/operator/mutation/MutateESCorrVector.java index 280a565f..7bb673f3 100644 --- a/src/eva2/optimization/operator/mutation/MutateESCorrVector.java +++ b/src/eva2/optimization/operator/mutation/MutateESCorrVector.java @@ -83,10 +83,7 @@ public class MutateESCorrVector implements InterfaceMutation, java.io.Serializab if (this.initialVelocity != initialVelocity) { return false; } - if (this.lowerLimitStepSize != mut.lowerLimitStepSize) { - return false; - } - return true; + return this.lowerLimitStepSize == mut.lowerLimitStepSize; } else { return false; } @@ -204,7 +201,7 @@ public class MutateESCorrVector implements InterfaceMutation, java.io.Serializab } double[] list = new double[tmpList.size()]; for (int i = 0; i < tmpList.size(); i++) { - list[i] = ((Double) tmpList.get(i)).doubleValue(); + list[i] = tmpList.get(i).doubleValue(); } if (list.length <= 1) { return; diff --git a/src/eva2/optimization/operator/mutation/MutateESCovarianceMatrixAdaption.java b/src/eva2/optimization/operator/mutation/MutateESCovarianceMatrixAdaption.java index 167dafad..374ff470 100644 --- a/src/eva2/optimization/operator/mutation/MutateESCovarianceMatrixAdaption.java +++ b/src/eva2/optimization/operator/mutation/MutateESCovarianceMatrixAdaption.java @@ -57,13 +57,13 @@ public class MutateESCovarianceMatrixAdaption implements InterfaceMutation, java this.Beta = mutator.Beta; this.xi_dach = mutator.xi_dach; if (mutator.s_N != null) { - this.s_N = (double[]) mutator.s_N.clone(); + this.s_N = mutator.s_N.clone(); } if (mutator.pathS != null) { - this.pathS = (double[]) mutator.pathS.clone(); + this.pathS = mutator.pathS.clone(); } if (mutator.Bz != null) { - this.Bz = (double[]) mutator.Bz.clone(); + this.Bz = mutator.Bz.clone(); } if (mutator.C != null) { this.C = (Matrix) mutator.C.clone(); @@ -72,10 +72,10 @@ public class MutateESCovarianceMatrixAdaption implements InterfaceMutation, java this.B = (Matrix) mutator.B.clone(); } if (mutator.Z != null) { - this.Z = (double[]) mutator.Z.clone(); + this.Z = mutator.Z.clone(); } if (mutator.eigenValues != null) { - this.eigenValues = (double[]) mutator.eigenValues.clone(); + this.eigenValues = mutator.eigenValues.clone(); } } @@ -249,7 +249,7 @@ public class MutateESCovarianceMatrixAdaption implements InterfaceMutation, java } protected void evaluateNewObjectX(double[] x, double[][] range) { - double[] oldX = (double[]) x.clone(); + double[] oldX = x.clone(); for (int i = 0; i < this.D; i++) { this.Z[i] = RNG.gaussianDouble(1.0); diff --git a/src/eva2/optimization/operator/mutation/MutateESFixedStepSize.java b/src/eva2/optimization/operator/mutation/MutateESFixedStepSize.java index ea2173ef..097b3461 100644 --- a/src/eva2/optimization/operator/mutation/MutateESFixedStepSize.java +++ b/src/eva2/optimization/operator/mutation/MutateESFixedStepSize.java @@ -47,10 +47,7 @@ public class MutateESFixedStepSize implements InterfaceMutation, java.io.Seriali public boolean equals(Object mutator) { if (mutator instanceof MutateESFixedStepSize) { MutateESFixedStepSize mut = (MutateESFixedStepSize) mutator; - if (this.sigma != mut.sigma) { - return false; - } - return true; + return this.sigma == mut.sigma; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateESGlobal.java b/src/eva2/optimization/operator/mutation/MutateESGlobal.java index 6a8d7b48..1cf3f3be 100644 --- a/src/eva2/optimization/operator/mutation/MutateESGlobal.java +++ b/src/eva2/optimization/operator/mutation/MutateESGlobal.java @@ -76,10 +76,7 @@ public class MutateESGlobal implements InterfaceMutation, java.io.Serializable, if (this.tau1 != mut.tau1) { return false; } - if (this.lowerLimitStepSize != mut.lowerLimitStepSize) { - return false; - } - return true; + return this.lowerLimitStepSize == mut.lowerLimitStepSize; } else { return false; } @@ -148,7 +145,7 @@ public class MutateESGlobal implements InterfaceMutation, java.io.Serializable, } double[] list = new double[tmpList.size()]; for (int i = 0; i < tmpList.size(); i++) { - list[i] = ((Double) tmpList.get(i)).doubleValue(); + list[i] = tmpList.get(i).doubleValue(); } if (list.length <= 1) { return; diff --git a/src/eva2/optimization/operator/mutation/MutateESMainVectorAdaption.java b/src/eva2/optimization/operator/mutation/MutateESMainVectorAdaption.java index a63eb50f..9c8938ef 100644 --- a/src/eva2/optimization/operator/mutation/MutateESMainVectorAdaption.java +++ b/src/eva2/optimization/operator/mutation/MutateESMainVectorAdaption.java @@ -43,16 +43,16 @@ public class MutateESMainVectorAdaption implements InterfaceMutation, java.io.Se this.Z1 = mutator.Z1; this.w_v = mutator.w_v; if (mutator.mainV != null) { - this.mainV = (double[]) mutator.mainV.clone(); + this.mainV = mutator.mainV.clone(); } if (mutator.Z != null) { - this.Z = (double[]) mutator.Z.clone(); + this.Z = mutator.Z.clone(); } if (mutator.sN != null) { - this.sN = (double[]) mutator.sN.clone(); + this.sN = mutator.sN.clone(); } if (mutator.dN != null) { - this.dN = (double[]) mutator.dN.clone(); + this.dN = mutator.dN.clone(); } } @@ -212,7 +212,7 @@ public class MutateESMainVectorAdaption implements InterfaceMutation, java.io.Se // } // } // } - double[] v = (double[]) this.mainV.clone(); + double[] v = this.mainV.clone(); double[] grad = new double[x.length]; double vl = 0; double gradl = 0; diff --git a/src/eva2/optimization/operator/mutation/MutateESMutativeStepSizeControl.java b/src/eva2/optimization/operator/mutation/MutateESMutativeStepSizeControl.java index 49d4ad33..f944fddd 100644 --- a/src/eva2/optimization/operator/mutation/MutateESMutativeStepSizeControl.java +++ b/src/eva2/optimization/operator/mutation/MutateESMutativeStepSizeControl.java @@ -70,10 +70,7 @@ public class MutateESMutativeStepSizeControl implements InterfaceMutation, java. if (this.lowerLimitStepSize != mut.lowerLimitStepSize) { return false; } - if (this.upperLimitStepSize != mut.upperLimitStepSize) { - return false; - } - return true; + return this.upperLimitStepSize == mut.upperLimitStepSize; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateESPathLengthAdaption.java b/src/eva2/optimization/operator/mutation/MutateESPathLengthAdaption.java index 34b712a1..728991d5 100644 --- a/src/eva2/optimization/operator/mutation/MutateESPathLengthAdaption.java +++ b/src/eva2/optimization/operator/mutation/MutateESPathLengthAdaption.java @@ -38,10 +38,10 @@ public class MutateESPathLengthAdaption implements InterfaceMutation, java.io.Se this.expectedPathLen = mutator.expectedPathLen; this.cu = mutator.cu; if (mutator.randZ != null) { - this.randZ = (double[]) mutator.randZ.clone(); + this.randZ = mutator.randZ.clone(); } if (mutator.path != null) { - this.path = (double[]) mutator.path.clone(); + this.path = mutator.path.clone(); } } diff --git a/src/eva2/optimization/operator/mutation/MutateESPolynomial.java b/src/eva2/optimization/operator/mutation/MutateESPolynomial.java index 253094cc..9e06bd41 100644 --- a/src/eva2/optimization/operator/mutation/MutateESPolynomial.java +++ b/src/eva2/optimization/operator/mutation/MutateESPolynomial.java @@ -43,10 +43,7 @@ public class MutateESPolynomial implements InterfaceMutation, java.io.Serializab public boolean equals(Object mutator) { if (mutator instanceof MutateESPolynomial) { MutateESPolynomial mut = (MutateESPolynomial) mutator; - if (this.eta != mut.eta) { - return false; - } - return true; + return this.eta == mut.eta; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateESSuccessRule.java b/src/eva2/optimization/operator/mutation/MutateESSuccessRule.java index 4238a31f..4f7a2d27 100644 --- a/src/eva2/optimization/operator/mutation/MutateESSuccessRule.java +++ b/src/eva2/optimization/operator/mutation/MutateESSuccessRule.java @@ -45,10 +45,7 @@ public class MutateESSuccessRule extends MutateESFixedStepSize implements Interf if (this.successRate != mut.successRate) { return false; } - if (this.alpha != mut.alpha) { - return false; - } - return true; + return this.alpha == mut.alpha; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateGAAdaptive.java b/src/eva2/optimization/operator/mutation/MutateGAAdaptive.java index b6a459a6..9f68ba32 100644 --- a/src/eva2/optimization/operator/mutation/MutateGAAdaptive.java +++ b/src/eva2/optimization/operator/mutation/MutateGAAdaptive.java @@ -55,10 +55,7 @@ public class MutateGAAdaptive implements InterfaceMutation, java.io.Serializable if (this.tau1 != mut.tau1) { return false; } - if (this.lowerLimitStepSize != mut.lowerLimitStepSize) { - return false; - } - return true; + return this.lowerLimitStepSize == mut.lowerLimitStepSize; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateGAGISwapBits.java b/src/eva2/optimization/operator/mutation/MutateGAGISwapBits.java index 61ba57a2..d55c023c 100644 --- a/src/eva2/optimization/operator/mutation/MutateGAGISwapBits.java +++ b/src/eva2/optimization/operator/mutation/MutateGAGISwapBits.java @@ -64,10 +64,7 @@ public class MutateGAGISwapBits implements InterfaceMutation, java.io.Serializab if (this.minNumMutations != mut.minNumMutations) { return false; } - if (this.maxNumMutations != mut.maxNumMutations) { - return false; - } - return true; + return this.maxNumMutations == mut.maxNumMutations; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateGAGISwapBitsSegmentwise.java b/src/eva2/optimization/operator/mutation/MutateGAGISwapBitsSegmentwise.java index 0e47947d..fc1a4d21 100644 --- a/src/eva2/optimization/operator/mutation/MutateGAGISwapBitsSegmentwise.java +++ b/src/eva2/optimization/operator/mutation/MutateGAGISwapBitsSegmentwise.java @@ -53,7 +53,7 @@ public class MutateGAGISwapBitsSegmentwise extends MutateGAGISwapBits implements int iMin = 0, iMax = genoLen - 1; // default bounds if (lastIndex >= 0) { // select same segment - iMin = segmentLength * ((int) (lastIndex / segmentLength)); + iMin = segmentLength * lastIndex / segmentLength; iMax = iMin + segmentLength - 1; if (iMax >= genoLen) { EVAERROR.errorMsgOnce("Warning, the last segment exceeds the genotype length (so it is not a multiple of the genotype length"); diff --git a/src/eva2/optimization/operator/mutation/MutateGAInvertBits.java b/src/eva2/optimization/operator/mutation/MutateGAInvertBits.java index 04459634..790c2f33 100644 --- a/src/eva2/optimization/operator/mutation/MutateGAInvertBits.java +++ b/src/eva2/optimization/operator/mutation/MutateGAInvertBits.java @@ -47,10 +47,7 @@ public class MutateGAInvertBits implements InterfaceMutation, java.io.Serializab if (this.numberOfMutations != mut.numberOfMutations) { return false; } - if (this.maxInveredBits != mut.maxInveredBits) { - return false; - } - return true; + return this.maxInveredBits == mut.maxInveredBits; } else { return false; } @@ -79,9 +76,7 @@ public class MutateGAInvertBits implements InterfaceMutation, java.io.Serializab int[][] mutationIndices = new int[this.numberOfMutations][2]; for (int i = 0; i < mutationIndices.length; i++) { mutationIndices[i][0] = RNG.randomInt(0, ((InterfaceGAIndividual) individual).getGenotypeLength()); - ; mutationIndices[i][1] = RNG.randomInt(0, this.maxInveredBits); - ; } // ToDo: double instances of mutationIndices could be checked here... *sigh* for (int i = 0; i < mutationIndices.length; i++) { diff --git a/src/eva2/optimization/operator/mutation/MutateGANBit.java b/src/eva2/optimization/operator/mutation/MutateGANBit.java index c085664d..928568ac 100644 --- a/src/eva2/optimization/operator/mutation/MutateGANBit.java +++ b/src/eva2/optimization/operator/mutation/MutateGANBit.java @@ -42,10 +42,7 @@ public class MutateGANBit implements InterfaceMutation, java.io.Serializable { public boolean equals(Object mutator) { if (mutator instanceof MutateGANBit) { MutateGANBit mut = (MutateGANBit) mutator; - if (this.numberOfMutations != mut.numberOfMutations) { - return false; - } - return true; + return this.numberOfMutations == mut.numberOfMutations; } else { return false; } @@ -76,7 +73,6 @@ public class MutateGANBit implements InterfaceMutation, java.io.Serializable { for (int i = 0; i < mutationIndices.length; i++) { mutationIndices[i] = RNG.randomInt(0, ((InterfaceGAIndividual) individual).getGenotypeLength()); } - ; // double instances of mutationIndices could be checked here... *sigh* for (int i = 0; i < mutationIndices.length; i++) { tmpBitSet.flip(mutationIndices[i]); diff --git a/src/eva2/optimization/operator/mutation/MutateGAShiftSubstring.java b/src/eva2/optimization/operator/mutation/MutateGAShiftSubstring.java index 0bd2ea20..cbd75176 100644 --- a/src/eva2/optimization/operator/mutation/MutateGAShiftSubstring.java +++ b/src/eva2/optimization/operator/mutation/MutateGAShiftSubstring.java @@ -52,10 +52,7 @@ public class MutateGAShiftSubstring implements InterfaceMutation, java.io.Serial if (this.subStringLength != mut.subStringLength) { return false; } - if (this.shiftDistance != mut.shiftDistance) { - return false; - } - return true; + return this.shiftDistance == mut.shiftDistance; } else { return false; } @@ -94,7 +91,7 @@ public class MutateGAShiftSubstring implements InterfaceMutation, java.io.Serial // System.out.println("Indices: " + (len+a-d+i)%len + "<-" + (len+a+i)%len ); tmpBitSet.set((len + a - d + i) % len, tmpBitSet.get((len + a + i) % len)); } - BitSet origBitSet = (BitSet) ((InterfaceGAIndividual) individual).getBGenotype(); + BitSet origBitSet = ((InterfaceGAIndividual) individual).getBGenotype(); for (int i = 0; i < d; i++) { // System.out.println("Indices: " + (len+b-d+i+1)%len + "<-" + ((len+a-d+i)%len)); tmpBitSet.set((len + b - d + i + 1) % len, origBitSet.get((len + a - d + i) % len)); diff --git a/src/eva2/optimization/operator/mutation/MutateGASwapBitsSegmentwise.java b/src/eva2/optimization/operator/mutation/MutateGASwapBitsSegmentwise.java index 803db54b..cf92d0c7 100644 --- a/src/eva2/optimization/operator/mutation/MutateGASwapBitsSegmentwise.java +++ b/src/eva2/optimization/operator/mutation/MutateGASwapBitsSegmentwise.java @@ -86,10 +86,7 @@ public class MutateGASwapBitsSegmentwise implements InterfaceMutation, java.io.S if (this.multiplesPerSegment != mut.multiplesPerSegment) { return false; } - if (this.preferPairs != mut.preferPairs) { - return false; - } - return true; + return this.preferPairs == mut.preferPairs; } else { return false; } @@ -173,7 +170,7 @@ public class MutateGASwapBitsSegmentwise implements InterfaceMutation, java.io.S int maxTries = (1 + len) / 2; while (!(maybePrefered == bs.get(k)) && (maxTries >= 0)) { k = RNG.randomInt(offset, offset + len - 1); - ; // try next random position + // try next random position maxTries--; } } diff --git a/src/eva2/optimization/operator/mutation/MutateGIInsertDelete.java b/src/eva2/optimization/operator/mutation/MutateGIInsertDelete.java index 3aba2398..d517c5e5 100644 --- a/src/eva2/optimization/operator/mutation/MutateGIInsertDelete.java +++ b/src/eva2/optimization/operator/mutation/MutateGIInsertDelete.java @@ -45,10 +45,7 @@ public class MutateGIInsertDelete implements InterfaceMutation, java.io.Serializ public boolean equals(Object mutator) { if (mutator instanceof MutateGIInsertDelete) { MutateGIInsertDelete mut = (MutateGIInsertDelete) mutator; - if (this.maxLengthOfInsDel != mut.maxLengthOfInsDel) { - return false; - } - return true; + return this.maxLengthOfInsDel == mut.maxLengthOfInsDel; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateGIInvert.java b/src/eva2/optimization/operator/mutation/MutateGIInvert.java index 1e13eb48..ebf8694a 100644 --- a/src/eva2/optimization/operator/mutation/MutateGIInvert.java +++ b/src/eva2/optimization/operator/mutation/MutateGIInvert.java @@ -45,10 +45,7 @@ public class MutateGIInvert implements InterfaceMutation, java.io.Serializable { public boolean equals(Object mutator) { if (mutator instanceof MutateGIInvert) { MutateGIInvert mut = (MutateGIInvert) mutator; - if (this.maxLengthOfInvert != mut.maxLengthOfInvert) { - return false; - } - return true; + return this.maxLengthOfInvert == mut.maxLengthOfInvert; } else { return false; } @@ -81,7 +78,7 @@ public class MutateGIInvert implements InterfaceMutation, java.io.Serializable { if (2 * range >= x.length) { return; } - center = RNG.randomInt(0 + range, x.length - 1 - range); + center = RNG.randomInt(range, x.length - 1 - range); //System.out.println("Range: " + range + " Center: " + center); int[] tmp = new int[x.length]; System.arraycopy(x, 0, tmp, 0, x.length); diff --git a/src/eva2/optimization/operator/mutation/MutateGINominal.java b/src/eva2/optimization/operator/mutation/MutateGINominal.java index 81987a4e..154847ef 100644 --- a/src/eva2/optimization/operator/mutation/MutateGINominal.java +++ b/src/eva2/optimization/operator/mutation/MutateGINominal.java @@ -45,10 +45,7 @@ public class MutateGINominal implements InterfaceMutation, java.io.Serializable public boolean equals(Object mutator) { if (mutator instanceof MutateGINominal) { MutateGINominal mut = (MutateGINominal) mutator; - if (this.numberOfMutations != mut.numberOfMutations) { - return false; - } - return true; + return this.numberOfMutations == mut.numberOfMutations; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateGIOrdinal.java b/src/eva2/optimization/operator/mutation/MutateGIOrdinal.java index f04eda6d..1582d36f 100644 --- a/src/eva2/optimization/operator/mutation/MutateGIOrdinal.java +++ b/src/eva2/optimization/operator/mutation/MutateGIOrdinal.java @@ -50,10 +50,7 @@ public class MutateGIOrdinal implements InterfaceMutation, java.io.Serializable if (this.stepSize != mut.stepSize) { return false; } - if (this.numberOfMutations != mut.numberOfMutations) { - return false; - } - return true; + return this.numberOfMutations == mut.numberOfMutations; } else { return false; } @@ -86,6 +83,7 @@ public class MutateGIOrdinal implements InterfaceMutation, java.io.Serializable for (int k = 0; k < this.numberOfMutations; k++) { mutInd = RNG.randomInt(0, x.length - 1); mutate = RNG.gaussianDouble(this.stepSize); + // ToDo: WTF? mutate *= (range[mutInd][1] - range[mutInd][1]); mut = (int) Math.round(mutate); if (mut == 0) { diff --git a/src/eva2/optimization/operator/mutation/MutateGITranslocate.java b/src/eva2/optimization/operator/mutation/MutateGITranslocate.java index 5f9ca287..a30a9d98 100644 --- a/src/eva2/optimization/operator/mutation/MutateGITranslocate.java +++ b/src/eva2/optimization/operator/mutation/MutateGITranslocate.java @@ -57,10 +57,7 @@ public class MutateGITranslocate implements InterfaceMutation, java.io.Serializa public boolean equals(Object mutator) { if (mutator instanceof MutateGITranslocate) { MutateGITranslocate mut = (MutateGITranslocate) mutator; - if (this.maxLengthOfTranslocate != mut.maxLengthOfTranslocate) { - return false; - } - return true; + return this.maxLengthOfTranslocate == mut.maxLengthOfTranslocate; } else { return false; } diff --git a/src/eva2/optimization/operator/mutation/MutateGPAdaptive.java b/src/eva2/optimization/operator/mutation/MutateGPAdaptive.java index 4a283749..b8509fc3 100644 --- a/src/eva2/optimization/operator/mutation/MutateGPAdaptive.java +++ b/src/eva2/optimization/operator/mutation/MutateGPAdaptive.java @@ -61,10 +61,7 @@ public class MutateGPAdaptive implements InterfaceMutation, java.io.Serializable if (this.tau2 != mut.tau2) { return false; } - if (this.lowerLimitStepSize != mut.lowerLimitStepSize) { - return false; - } - return true; + return this.lowerLimitStepSize == mut.lowerLimitStepSize; } else { return false; } @@ -99,7 +96,7 @@ public class MutateGPAdaptive implements InterfaceMutation, java.io.Serializable this.mutationStep = 1; } if (RNG.flipCoin(this.mutationStep)) { - ((IndividualInterface) individual).defaultMutate(); + individual.defaultMutate(); } } //System.out.println("After Mutate: " +((GAIndividual)individual).getSolutionRepresentationFor()); diff --git a/src/eva2/optimization/operator/mutation/MutateGPSingleNode.java b/src/eva2/optimization/operator/mutation/MutateGPSingleNode.java index 2e56d186..8bb80804 100644 --- a/src/eva2/optimization/operator/mutation/MutateGPSingleNode.java +++ b/src/eva2/optimization/operator/mutation/MutateGPSingleNode.java @@ -38,11 +38,7 @@ public class MutateGPSingleNode implements InterfaceMutation, java.io.Serializab */ @Override public boolean equals(Object mutator) { - if (mutator instanceof MutateGPSingleNode) { - return true; - } else { - return false; - } + return mutator instanceof MutateGPSingleNode; } /** diff --git a/src/eva2/optimization/operator/mutation/MutateOBGAFlip.java b/src/eva2/optimization/operator/mutation/MutateOBGAFlip.java index 41363509..5dc40e54 100644 --- a/src/eva2/optimization/operator/mutation/MutateOBGAFlip.java +++ b/src/eva2/optimization/operator/mutation/MutateOBGAFlip.java @@ -43,11 +43,7 @@ public class MutateOBGAFlip implements InterfaceMutation, java.io.Serializable { */ @Override public boolean equals(Object mutator) { - if (mutator instanceof MutateOBGAFlip) { - return true; - } else { - return false; - } + return mutator instanceof MutateOBGAFlip; } @Override diff --git a/src/eva2/optimization/operator/mutation/MutateOBGAInversion.java b/src/eva2/optimization/operator/mutation/MutateOBGAInversion.java index b8ae4e03..45db255c 100644 --- a/src/eva2/optimization/operator/mutation/MutateOBGAInversion.java +++ b/src/eva2/optimization/operator/mutation/MutateOBGAInversion.java @@ -43,11 +43,7 @@ public class MutateOBGAInversion implements java.io.Serializable, InterfaceMutat */ @Override public boolean equals(Object mutator) { - if (mutator instanceof MutateOBGAInversion) { - return true; - } else { - return false; - } + return mutator instanceof MutateOBGAInversion; } @Override @@ -57,7 +53,7 @@ public class MutateOBGAInversion implements java.io.Serializable, InterfaceMutat @Override public void mutate(AbstractEAIndividual individual) { - int[][] permnew = (int[][]) ((InterfaceOBGAIndividual) individual).getOBGenotype().clone(); + int[][] permnew = ((InterfaceOBGAIndividual) individual).getOBGenotype().clone(); int[][] perm = ((InterfaceDataTypePermutation) individual).getPermutationData(); for (int p = 0; p < perm.length; p++) { int p1 = RNG.randomInt(0, perm[p].length - 1); diff --git a/src/eva2/optimization/operator/mutation/NoMutation.java b/src/eva2/optimization/operator/mutation/NoMutation.java index 60e70cc1..2e0cdb7f 100644 --- a/src/eva2/optimization/operator/mutation/NoMutation.java +++ b/src/eva2/optimization/operator/mutation/NoMutation.java @@ -32,11 +32,7 @@ public class NoMutation implements InterfaceMutation, java.io.Serializable { */ @Override public boolean equals(Object mutator) { - if (mutator instanceof NoMutation) { - return true; - } else { - return false; - } + return mutator instanceof NoMutation; } /** diff --git a/src/eva2/optimization/operator/mutation/PropertyMutationMixer.java b/src/eva2/optimization/operator/mutation/PropertyMutationMixer.java index 5b85b95f..68722a5b 100644 --- a/src/eva2/optimization/operator/mutation/PropertyMutationMixer.java +++ b/src/eva2/optimization/operator/mutation/PropertyMutationMixer.java @@ -46,7 +46,7 @@ public class PropertyMutationMixer implements java.io.Serializable { @Override public Object clone() { - return (Object) new PropertyMutationMixer(this); + return new PropertyMutationMixer(this); } /** diff --git a/src/eva2/optimization/operator/mutation/PropertyMutationMixerEditor.java b/src/eva2/optimization/operator/mutation/PropertyMutationMixerEditor.java index f083c92c..8c0e8456 100644 --- a/src/eva2/optimization/operator/mutation/PropertyMutationMixerEditor.java +++ b/src/eva2/optimization/operator/mutation/PropertyMutationMixerEditor.java @@ -447,7 +447,7 @@ public class PropertyMutationMixerEditor extends JPanel implements PropertyEdito public Component getCustomEditor() { if (this.component == null) { this.initCustomEditor(); - this.component = new GeneralGEOFaker((PropertyEditor) this, (JPanel) this.editorComponent); + this.component = new GeneralGEOFaker(this, (JPanel) this.editorComponent); } return this.component; } diff --git a/src/eva2/optimization/operator/nichepso/absorption/ConsiderPBestAbsorptionStrategy.java b/src/eva2/optimization/operator/nichepso/absorption/ConsiderPBestAbsorptionStrategy.java index 67d0bcf8..9102ae7a 100644 --- a/src/eva2/optimization/operator/nichepso/absorption/ConsiderPBestAbsorptionStrategy.java +++ b/src/eva2/optimization/operator/nichepso/absorption/ConsiderPBestAbsorptionStrategy.java @@ -23,10 +23,7 @@ public class ConsiderPBestAbsorptionStrategy extends StandardAbsorptionStrategy if (!super.shouldAbsorbParticleIntoSubswarm(indy, subswarm, mainswarm)) { return false; } - if (absorbtionConstraintViolation(indy, subswarm)) { - return false; - } - return true; + return !absorbtionConstraintViolation(indy, subswarm); } /** @@ -38,9 +35,6 @@ public class ConsiderPBestAbsorptionStrategy extends StandardAbsorptionStrategy private boolean absorbtionConstraintViolation(AbstractEAIndividual indy, ParticleSubSwarmOptimization subswarm) { AbstractEAIndividual indysPBest = (AbstractEAIndividual) indy.getData("PersonalBestKey"); AbstractEAIndividual subswarmsGBest = subswarm.getGBestIndividual(); - if (indysPBest.isDominating(subswarmsGBest)) { - return true; - } - return false; + return indysPBest.isDominating(subswarmsGBest); } } diff --git a/src/eva2/optimization/operator/nichepso/absorption/EuclideanDiversityAbsorptionStrategy.java b/src/eva2/optimization/operator/nichepso/absorption/EuclideanDiversityAbsorptionStrategy.java index 18417b09..6833fb13 100644 --- a/src/eva2/optimization/operator/nichepso/absorption/EuclideanDiversityAbsorptionStrategy.java +++ b/src/eva2/optimization/operator/nichepso/absorption/EuclideanDiversityAbsorptionStrategy.java @@ -50,19 +50,12 @@ public class EuclideanDiversityAbsorptionStrategy extends StandardAbsorptionStra if (!super.shouldAbsorbParticleIntoSubswarm(indy, subswarm, mainswarm)) { return false; // } - if (!diversityIsBelowThreshold(subswarm)) { - return false; - } - return true; + return diversityIsBelowThreshold(subswarm); } private boolean diversityIsBelowThreshold(ParticleSubSwarmOptimization subswarm) { double meanDistanceFromGBestPos = subswarm.getEuclideanDiversity(); - if (meanDistanceFromGBestPos < getEpsilon()) { - return true; - } else { - return false; - } + return meanDistanceFromGBestPos < getEpsilon(); } /** diff --git a/src/eva2/optimization/operator/nichepso/absorption/StandardAbsorptionStrategy.java b/src/eva2/optimization/operator/nichepso/absorption/StandardAbsorptionStrategy.java index 25a398fd..b03d1c91 100644 --- a/src/eva2/optimization/operator/nichepso/absorption/StandardAbsorptionStrategy.java +++ b/src/eva2/optimization/operator/nichepso/absorption/StandardAbsorptionStrategy.java @@ -20,7 +20,7 @@ public class StandardAbsorptionStrategy implements InterfaceAbsorptionStrategy, */ @Override public Object clone() { - return (Object) new StandardAbsorptionStrategy(); + return new StandardAbsorptionStrategy(); } public String globalInfo() { diff --git a/src/eva2/optimization/operator/nichepso/deactivation/DummyDeactivationStrategy.java b/src/eva2/optimization/operator/nichepso/deactivation/DummyDeactivationStrategy.java index 27a5afb9..8af840f7 100644 --- a/src/eva2/optimization/operator/nichepso/deactivation/DummyDeactivationStrategy.java +++ b/src/eva2/optimization/operator/nichepso/deactivation/DummyDeactivationStrategy.java @@ -9,7 +9,7 @@ public class DummyDeactivationStrategy implements InterfaceDeactivationStrategy, @Override public Object clone() { - return (Object) new DummyDeactivationStrategy(); + return new DummyDeactivationStrategy(); } @Override diff --git a/src/eva2/optimization/operator/nichepso/deactivation/ImprovementDeactivationStrategy.java b/src/eva2/optimization/operator/nichepso/deactivation/ImprovementDeactivationStrategy.java index 80da31d3..d2ce9957 100644 --- a/src/eva2/optimization/operator/nichepso/deactivation/ImprovementDeactivationStrategy.java +++ b/src/eva2/optimization/operator/nichepso/deactivation/ImprovementDeactivationStrategy.java @@ -43,7 +43,7 @@ public class ImprovementDeactivationStrategy implements InterfaceDeactivationStr @Override public Object clone() { - return (Object) new ImprovementDeactivationStrategy(this); + return new ImprovementDeactivationStrategy(this); } public String globalInfo() { diff --git a/src/eva2/optimization/operator/nichepso/deactivation/StandardDeactivationStrategy.java b/src/eva2/optimization/operator/nichepso/deactivation/StandardDeactivationStrategy.java index ac3403be..40fd86b1 100644 --- a/src/eva2/optimization/operator/nichepso/deactivation/StandardDeactivationStrategy.java +++ b/src/eva2/optimization/operator/nichepso/deactivation/StandardDeactivationStrategy.java @@ -43,7 +43,7 @@ public class StandardDeactivationStrategy implements InterfaceDeactivationStrate @Override public Object clone() { - return (Object) new StandardDeactivationStrategy(this); + return new StandardDeactivationStrategy(this); } public String globalInfo() { diff --git a/src/eva2/optimization/operator/nichepso/merging/StandardMergingStrategy.java b/src/eva2/optimization/operator/nichepso/merging/StandardMergingStrategy.java index cb6315c6..63bbd623 100644 --- a/src/eva2/optimization/operator/nichepso/merging/StandardMergingStrategy.java +++ b/src/eva2/optimization/operator/nichepso/merging/StandardMergingStrategy.java @@ -43,7 +43,7 @@ public class StandardMergingStrategy implements InterfaceMergingStrategy, java.i @Override public Object clone() { - return (Object) new StandardMergingStrategy(this); + return new StandardMergingStrategy(this); } /********************************************************************************************************************** diff --git a/src/eva2/optimization/operator/nichepso/subswarmcreation/DummySubswarmCreationStrategy.java b/src/eva2/optimization/operator/nichepso/subswarmcreation/DummySubswarmCreationStrategy.java index e5eca994..1af91740 100644 --- a/src/eva2/optimization/operator/nichepso/subswarmcreation/DummySubswarmCreationStrategy.java +++ b/src/eva2/optimization/operator/nichepso/subswarmcreation/DummySubswarmCreationStrategy.java @@ -7,7 +7,7 @@ public class DummySubswarmCreationStrategy implements InterfaceSubswarmCreationS @Override public Object clone() { - return (Object) new DummySubswarmCreationStrategy(); + return new DummySubswarmCreationStrategy(); } @Override diff --git a/src/eva2/optimization/operator/nichepso/subswarmcreation/StandardSubswarmCreationStrategy.java b/src/eva2/optimization/operator/nichepso/subswarmcreation/StandardSubswarmCreationStrategy.java index a74bba43..85b2c09c 100644 --- a/src/eva2/optimization/operator/nichepso/subswarmcreation/StandardSubswarmCreationStrategy.java +++ b/src/eva2/optimization/operator/nichepso/subswarmcreation/StandardSubswarmCreationStrategy.java @@ -29,7 +29,7 @@ public class StandardSubswarmCreationStrategy implements InterfaceSubswarmCreati @Override public Object clone() { - return (Object) new StandardSubswarmCreationStrategy(delta); + return new StandardSubswarmCreationStrategy(delta); } public String globalInfo() { diff --git a/src/eva2/optimization/operator/paramcontrol/AbstractParameterControl.java b/src/eva2/optimization/operator/paramcontrol/AbstractParameterControl.java index 00a9ffae..fa01f1d6 100644 --- a/src/eva2/optimization/operator/paramcontrol/AbstractParameterControl.java +++ b/src/eva2/optimization/operator/paramcontrol/AbstractParameterControl.java @@ -56,7 +56,6 @@ public abstract class AbstractParameterControl implements InterfaceParameterCont for (int i = 0; i < params.length; i++) { if (!BeanInspector.setMem(obj, params[i], vals[i])) { System.err.println("Error: failed to set parameter from parameter control " + this.getClass().getName()); - ; System.err.println(" Tried to set name/val: " + params[i] + " / " + BeanInspector.toString(vals[i])); } else { if (TRACE) { diff --git a/src/eva2/optimization/operator/paramcontrol/CbpsoFitnessThresholdBasedAdaption.java b/src/eva2/optimization/operator/paramcontrol/CbpsoFitnessThresholdBasedAdaption.java index 2fb02577..db3d841d 100644 --- a/src/eva2/optimization/operator/paramcontrol/CbpsoFitnessThresholdBasedAdaption.java +++ b/src/eva2/optimization/operator/paramcontrol/CbpsoFitnessThresholdBasedAdaption.java @@ -117,11 +117,7 @@ public class CbpsoFitnessThresholdBasedAdaption implements ParamAdaption, Generi } private boolean isPossibleAdaptionTime(Population pop) { - if (lastAdaption + adptIntervalGenerations > pop.getGeneration()) { - return false; - } else { - return true; - } + return lastAdaption + adptIntervalGenerations <= pop.getGeneration(); } /* diff --git a/src/eva2/optimization/operator/paramcontrol/ConstraintBasedAdaption.java b/src/eva2/optimization/operator/paramcontrol/ConstraintBasedAdaption.java index 964e9a6a..308bbc61 100644 --- a/src/eva2/optimization/operator/paramcontrol/ConstraintBasedAdaption.java +++ b/src/eva2/optimization/operator/paramcontrol/ConstraintBasedAdaption.java @@ -39,8 +39,6 @@ public class ConstraintBasedAdaption implements ParamAdaption, Serializable { public ConstraintBasedAdaption() { } - ; - public ConstraintBasedAdaption( ConstraintBasedAdaption o) { betaInc = o.betaInc; diff --git a/src/eva2/optimization/operator/paramcontrol/PSOActivityFeedbackControl.java b/src/eva2/optimization/operator/paramcontrol/PSOActivityFeedbackControl.java index ef04a1eb..d9b5553e 100644 --- a/src/eva2/optimization/operator/paramcontrol/PSOActivityFeedbackControl.java +++ b/src/eva2/optimization/operator/paramcontrol/PSOActivityFeedbackControl.java @@ -35,8 +35,6 @@ public class PSOActivityFeedbackControl implements ParamAdaption, Serializable { public PSOActivityFeedbackControl() { } - ; - public PSOActivityFeedbackControl( PSOActivityFeedbackControl o) { minInert = o.minInert; diff --git a/src/eva2/optimization/operator/paramcontrol/ParameterControlManager.java b/src/eva2/optimization/operator/paramcontrol/ParameterControlManager.java index c05f3dc8..7a5a669c 100644 --- a/src/eva2/optimization/operator/paramcontrol/ParameterControlManager.java +++ b/src/eva2/optimization/operator/paramcontrol/ParameterControlManager.java @@ -110,7 +110,6 @@ public class ParameterControlManager implements InterfaceParameterControl, Seria } if (!BeanInspector.setMem(obj, params[i], vals[i])) { System.err.println("Error: failed to set parameter from parameter control " + this.getClass().getName()); - ; System.err.println(" Tried to set name/val: " + params[i] + " / " + BeanInspector.toString(vals[i])); } else { if (TRACE) { diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java index c98998cd..05e2a116 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1ApproxParetoFront.java @@ -48,7 +48,7 @@ public class MetricD1ApproxParetoFront implements eva2.optimization.operator.par */ @Override public Object clone() { - return (Object) new MetricD1ApproxParetoFront(this); + return new MetricD1ApproxParetoFront(this); } /** diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java index 9d70dc08..dd0d4b2c 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricD1TrueParetoFront.java @@ -49,7 +49,7 @@ public class MetricD1TrueParetoFront implements eva2.optimization.operator.paret */ @Override public Object clone() { - return (Object) new MetricD1TrueParetoFront(this); + return new MetricD1TrueParetoFront(this); } /** diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java index b26be58e..dafc034b 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricErrorRatio.java @@ -58,7 +58,7 @@ public class MetricErrorRatio implements eva2.optimization.operator.paretofrontm */ @Override public Object clone() { - return (Object) new MetricErrorRatio(this); + return new MetricErrorRatio(this); } /** diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java index 47374592..3616395e 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricMaximumParetoFrontError.java @@ -47,7 +47,7 @@ public class MetricMaximumParetoFrontError implements eva2.optimization.operator */ @Override public Object clone() { - return (Object) new MetricMaximumParetoFrontError(this); + return new MetricMaximumParetoFrontError(this); } /** diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricOverallNonDominatedVectors.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricOverallNonDominatedVectors.java index a6c8e5bb..c1c66bfe 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricOverallNonDominatedVectors.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricOverallNonDominatedVectors.java @@ -27,7 +27,7 @@ public class MetricOverallNonDominatedVectors implements InterfaceParetoFrontMet */ @Override public Object clone() { - return (Object) new MetricOverallNonDominatedVectors(this); + return new MetricOverallNonDominatedVectors(this); } /** diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricS.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricS.java index 9229a7d6..acce0cf2 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricS.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricS.java @@ -36,7 +36,7 @@ public class MetricS implements InterfaceParetoFrontMetric, java.io.Serializable */ @Override public Object clone() { - return (Object) new MetricS(this); + return new MetricS(this); } public void setObjectiveSpaceRange(double[][] range) { diff --git a/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java b/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java index a55539c8..ff0c64e1 100644 --- a/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java +++ b/src/eva2/optimization/operator/paretofrontmetrics/MetricSWithReference.java @@ -55,7 +55,7 @@ public class MetricSWithReference implements InterfaceParetoFrontMetric, java.io */ @Override public Object clone() { - return (Object) new MetricSWithReference(this); + return new MetricSWithReference(this); } /** diff --git a/src/eva2/optimization/operator/postprocess/PostProcess.java b/src/eva2/optimization/operator/postprocess/PostProcess.java index e2d4b650..7133ab3e 100644 --- a/src/eva2/optimization/operator/postprocess/PostProcess.java +++ b/src/eva2/optimization/operator/postprocess/PostProcess.java @@ -200,13 +200,13 @@ public class PostProcess { } } if (returnQuota >= 1) { - result.addAll((Collection) clusters[j]); + result.addAll(clusters[j]); } // easy case else { int n = Math.max(1, (int) (returnQuota * clusters[j].size())); // return at least one per cluster! switch (takeOverMode) { case BEST_ONLY: // another easy case - result.addAll((Collection) (clusters[j].getBestNIndividuals(n, -1))); + result.addAll(clusters[j].getBestNIndividuals(n, -1)); break; case BEST_RAND: Population exclude = new Population(); diff --git a/src/eva2/optimization/operator/postprocess/SolutionHistogram.java b/src/eva2/optimization/operator/postprocess/SolutionHistogram.java index 141fa9b7..14b3aa8d 100644 --- a/src/eva2/optimization/operator/postprocess/SolutionHistogram.java +++ b/src/eva2/optimization/operator/postprocess/SolutionHistogram.java @@ -63,11 +63,7 @@ public class SolutionHistogram { } public boolean isCompatible(SolutionHistogram o) { - if (lBound == o.getLowerBound() && (uBound == o.getUpperBound()) && (numBins == o.getNumBins())) { - return true; - } else { - return false; - } + return lBound == o.getLowerBound() && (uBound == o.getUpperBound()) && (numBins == o.getNumBins()); } /** diff --git a/src/eva2/optimization/operator/selection/SelectAll.java b/src/eva2/optimization/operator/selection/SelectAll.java index b4162422..394b985d 100644 --- a/src/eva2/optimization/operator/selection/SelectAll.java +++ b/src/eva2/optimization/operator/selection/SelectAll.java @@ -21,7 +21,7 @@ public class SelectAll implements InterfaceSelection, java.io.Serializable { @Override public Object clone() { - return (Object) new SelectAll(this); + return new SelectAll(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectBestIndividuals.java b/src/eva2/optimization/operator/selection/SelectBestIndividuals.java index 246647a7..769db9d1 100644 --- a/src/eva2/optimization/operator/selection/SelectBestIndividuals.java +++ b/src/eva2/optimization/operator/selection/SelectBestIndividuals.java @@ -25,7 +25,7 @@ public class SelectBestIndividuals implements InterfaceSelection, java.io.Serial @Override public Object clone() { - return (Object) new SelectBestIndividuals(this); + return new SelectBestIndividuals(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectBestSingle.java b/src/eva2/optimization/operator/selection/SelectBestSingle.java index 1c7cfbfa..e4185c74 100644 --- a/src/eva2/optimization/operator/selection/SelectBestSingle.java +++ b/src/eva2/optimization/operator/selection/SelectBestSingle.java @@ -28,7 +28,7 @@ public class SelectBestSingle implements InterfaceSelection, java.io.Serializabl @Override public Object clone() { - return (Object) new SelectBestSingle(this); + return new SelectBestSingle(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectEPTournaments.java b/src/eva2/optimization/operator/selection/SelectEPTournaments.java index b8a51ae1..d72b51e9 100644 --- a/src/eva2/optimization/operator/selection/SelectEPTournaments.java +++ b/src/eva2/optimization/operator/selection/SelectEPTournaments.java @@ -30,7 +30,7 @@ public class SelectEPTournaments implements InterfaceSelection, java.io.Serializ @Override public Object clone() { - return (Object) new SelectEPTournaments(this); + return new SelectEPTournaments(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectHomologousMate.java b/src/eva2/optimization/operator/selection/SelectHomologousMate.java index 8282aeb5..2a87a1db 100644 --- a/src/eva2/optimization/operator/selection/SelectHomologousMate.java +++ b/src/eva2/optimization/operator/selection/SelectHomologousMate.java @@ -24,7 +24,7 @@ public class SelectHomologousMate extends SelectTournament implements java.io.Se @Override public Object clone() { - return (Object) new SelectHomologousMate(this); + return new SelectHomologousMate(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectMOMAIIDominanceCounter.java b/src/eva2/optimization/operator/selection/SelectMOMAIIDominanceCounter.java index 55e7df65..473ad2f5 100644 --- a/src/eva2/optimization/operator/selection/SelectMOMAIIDominanceCounter.java +++ b/src/eva2/optimization/operator/selection/SelectMOMAIIDominanceCounter.java @@ -23,7 +23,7 @@ public class SelectMOMAIIDominanceCounter implements InterfaceSelection, java.io @Override public Object clone() { - return (Object) new SelectMOMAIIDominanceCounter(this); + return new SelectMOMAIIDominanceCounter(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectMOMaxiMin.java b/src/eva2/optimization/operator/selection/SelectMOMaxiMin.java index 4d3db396..a8ecabab 100644 --- a/src/eva2/optimization/operator/selection/SelectMOMaxiMin.java +++ b/src/eva2/optimization/operator/selection/SelectMOMaxiMin.java @@ -25,7 +25,7 @@ public class SelectMOMaxiMin implements InterfaceSelection, java.io.Serializable @Override public Object clone() { - return (Object) new SelectMOMaxiMin(this); + return new SelectMOMaxiMin(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectMONSGAIICrowedTournament.java b/src/eva2/optimization/operator/selection/SelectMONSGAIICrowedTournament.java index 34ca4c86..8650547c 100644 --- a/src/eva2/optimization/operator/selection/SelectMONSGAIICrowedTournament.java +++ b/src/eva2/optimization/operator/selection/SelectMONSGAIICrowedTournament.java @@ -28,7 +28,7 @@ public class SelectMONSGAIICrowedTournament implements InterfaceSelection, java. @Override public Object clone() { - return (Object) new SelectMONSGAIICrowedTournament(this); + return new SelectMONSGAIICrowedTournament(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectMONonDominated.java b/src/eva2/optimization/operator/selection/SelectMONonDominated.java index d1baad8c..b4ca7353 100644 --- a/src/eva2/optimization/operator/selection/SelectMONonDominated.java +++ b/src/eva2/optimization/operator/selection/SelectMONonDominated.java @@ -22,7 +22,7 @@ public class SelectMONonDominated implements InterfaceSelection, java.io.Seriali @Override public Object clone() { - return (Object) new SelectMONonDominated(this); + return new SelectMONonDominated(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectMOPESA.java b/src/eva2/optimization/operator/selection/SelectMOPESA.java index 1cae37be..2a767d2b 100644 --- a/src/eva2/optimization/operator/selection/SelectMOPESA.java +++ b/src/eva2/optimization/operator/selection/SelectMOPESA.java @@ -26,7 +26,7 @@ public class SelectMOPESA implements InterfaceSelection, java.io.Serializable { @Override public Object clone() { - return (Object) new SelectMOPESA(this); + return new SelectMOPESA(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectMOPESAII.java b/src/eva2/optimization/operator/selection/SelectMOPESAII.java index be68cdb3..831dec95 100644 --- a/src/eva2/optimization/operator/selection/SelectMOPESAII.java +++ b/src/eva2/optimization/operator/selection/SelectMOPESAII.java @@ -33,7 +33,7 @@ public class SelectMOPESAII implements InterfaceSelection, java.io.Serializable @Override public Object clone() { - return (Object) new SelectMOPESAII(this); + return new SelectMOPESAII(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectMOSPEAII.java b/src/eva2/optimization/operator/selection/SelectMOSPEAII.java index 7ab0c4c4..5c052124 100644 --- a/src/eva2/optimization/operator/selection/SelectMOSPEAII.java +++ b/src/eva2/optimization/operator/selection/SelectMOSPEAII.java @@ -31,7 +31,7 @@ public class SelectMOSPEAII implements InterfaceSelection, java.io.Serializable @Override public Object clone() { - return (Object) new SelectMOSPEAII(this); + return new SelectMOSPEAII(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectParticleWheel.java b/src/eva2/optimization/operator/selection/SelectParticleWheel.java index a7873bd3..f553f015 100644 --- a/src/eva2/optimization/operator/selection/SelectParticleWheel.java +++ b/src/eva2/optimization/operator/selection/SelectParticleWheel.java @@ -41,7 +41,7 @@ public class SelectParticleWheel implements InterfaceSelection, java.io.Serializ @Override public Object clone() { - return (Object) new SelectParticleWheel(this); + return new SelectParticleWheel(this); } @Override diff --git a/src/eva2/optimization/operator/selection/SelectRandom.java b/src/eva2/optimization/operator/selection/SelectRandom.java index 611eae55..42de32f7 100644 --- a/src/eva2/optimization/operator/selection/SelectRandom.java +++ b/src/eva2/optimization/operator/selection/SelectRandom.java @@ -30,7 +30,7 @@ public class SelectRandom implements InterfaceSelection, java.io.Serializable { @Override public Object clone() { - return (Object) new SelectRandom(this); + return new SelectRandom(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectTournament.java b/src/eva2/optimization/operator/selection/SelectTournament.java index 324aa746..1ddef4e9 100644 --- a/src/eva2/optimization/operator/selection/SelectTournament.java +++ b/src/eva2/optimization/operator/selection/SelectTournament.java @@ -35,7 +35,7 @@ public class SelectTournament implements InterfaceSelection, java.io.Serializabl @Override public Object clone() { - return (Object) new SelectTournament(this); + return new SelectTournament(this); } /** diff --git a/src/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java b/src/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java index 641cedf5..39d25956 100644 --- a/src/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java +++ b/src/eva2/optimization/operator/selection/SelectXProbRouletteWheel.java @@ -219,7 +219,7 @@ class TreeElement implements java.io.Serializable { //System.out.println("This: "+high); this.index = high; } else { - int midPoint = (int) ((high + low) / 2); + int midPoint = (high + low) / 2; this.separator = d[midPoint - 1][list]; //System.out.println("Branching: "+midPoint + " : " + this.separator); this.leftElement = new TreeElement(d, list, low, midPoint); diff --git a/src/eva2/optimization/operator/selection/probability/AbstractSelProb.java b/src/eva2/optimization/operator/selection/probability/AbstractSelProb.java index 118427c8..cd390570 100644 --- a/src/eva2/optimization/operator/selection/probability/AbstractSelProb.java +++ b/src/eva2/optimization/operator/selection/probability/AbstractSelProb.java @@ -96,7 +96,7 @@ public abstract class AbstractSelProb implements InterfaceSelectionProbability, continue; } if (obj instanceof Double) { - tmpList.add((Double) obj); + tmpList.add(obj); continue; } if (obj instanceof float[]) { @@ -106,7 +106,7 @@ public abstract class AbstractSelProb implements InterfaceSelectionProbability, continue; } if (obj instanceof Float) { - tmpList.add((Float) obj); + tmpList.add(obj); continue; } if (obj instanceof long[]) { @@ -116,7 +116,7 @@ public abstract class AbstractSelProb implements InterfaceSelectionProbability, continue; } if (obj instanceof Long) { - tmpList.add((Long) obj); + tmpList.add(obj); continue; } if (obj instanceof int[]) { @@ -126,7 +126,7 @@ public abstract class AbstractSelProb implements InterfaceSelectionProbability, continue; } if (obj instanceof Integer) { - tmpList.add((Integer) obj); + tmpList.add(obj); } } // now we got a complete ArrayList diff --git a/src/eva2/optimization/operator/selection/probability/SelProbBoltzman.java b/src/eva2/optimization/operator/selection/probability/SelProbBoltzman.java index e144b2d2..357e944c 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbBoltzman.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbBoltzman.java @@ -25,7 +25,7 @@ public class SelProbBoltzman extends AbstractSelProb implements java.io.Serializ @Override public Object clone() { - return (Object) new SelProbBoltzman(this); + return new SelProbBoltzman(this); } /** diff --git a/src/eva2/optimization/operator/selection/probability/SelProbFitnessSharing.java b/src/eva2/optimization/operator/selection/probability/SelProbFitnessSharing.java index 1577a87b..887e6f53 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbFitnessSharing.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbFitnessSharing.java @@ -22,14 +22,14 @@ public class SelProbFitnessSharing extends AbstractSelProb implements java.io.Se this.basicNormationMethod = (InterfaceSelectionProbability) a.basicNormationMethod.clone(); } if (a.distanceMetric != null) { - this.distanceMetric = (InterfaceDistanceMetric) a.distanceMetric; + this.distanceMetric = a.distanceMetric; } this.sharingDistance = a.sharingDistance; } @Override public Object clone() { - return (Object) new SelProbFitnessSharing(this); + return new SelProbFitnessSharing(this); } /** diff --git a/src/eva2/optimization/operator/selection/probability/SelProbInvertByMax.java b/src/eva2/optimization/operator/selection/probability/SelProbInvertByMax.java index 55c031ac..db25f0e3 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbInvertByMax.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbInvertByMax.java @@ -29,7 +29,7 @@ public class SelProbInvertByMax extends AbstractSelProb { @Override public Object clone() { - return (Object) new SelProbInvertByMax(this); + return new SelProbInvertByMax(this); } /** diff --git a/src/eva2/optimization/operator/selection/probability/SelProbLinearRanking.java b/src/eva2/optimization/operator/selection/probability/SelProbLinearRanking.java index 5ed5aaa0..89a5ae98 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbLinearRanking.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbLinearRanking.java @@ -26,7 +26,7 @@ public class SelProbLinearRanking extends AbstractSelProb implements java.io.Ser @Override public Object clone() { - return (Object) new SelProbLinearRanking(this); + return new SelProbLinearRanking(this); } /** diff --git a/src/eva2/optimization/operator/selection/probability/SelProbNonLinearRanking.java b/src/eva2/optimization/operator/selection/probability/SelProbNonLinearRanking.java index b9e3509d..309e6f30 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbNonLinearRanking.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbNonLinearRanking.java @@ -24,7 +24,7 @@ public class SelProbNonLinearRanking extends AbstractSelProb implements java.io. @Override public Object clone() { - return (Object) new SelProbNonLinearRanking(this); + return new SelProbNonLinearRanking(this); } /** diff --git a/src/eva2/optimization/operator/selection/probability/SelProbRanking.java b/src/eva2/optimization/operator/selection/probability/SelProbRanking.java index e2b69550..ea57a14d 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbRanking.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbRanking.java @@ -22,7 +22,7 @@ public class SelProbRanking extends AbstractSelProb implements java.io.Serializa @Override public Object clone() { - return (Object) new SelProbRanking(this); + return new SelProbRanking(this); } /** diff --git a/src/eva2/optimization/operator/selection/probability/SelProbStandard.java b/src/eva2/optimization/operator/selection/probability/SelProbStandard.java index 44ba98cf..eb7d61ef 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbStandard.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbStandard.java @@ -18,7 +18,7 @@ public class SelProbStandard extends AbstractSelProb implements java.io.Serializ @Override public Object clone() { - return (Object) new SelProbStandard(this); + return new SelProbStandard(this); } /** diff --git a/src/eva2/optimization/operator/selection/probability/SelProbStandardScaling.java b/src/eva2/optimization/operator/selection/probability/SelProbStandardScaling.java index 3764503a..bfce282b 100644 --- a/src/eva2/optimization/operator/selection/probability/SelProbStandardScaling.java +++ b/src/eva2/optimization/operator/selection/probability/SelProbStandardScaling.java @@ -23,7 +23,7 @@ public class SelProbStandardScaling extends AbstractSelProb implements java.io.S @Override public Object clone() { - return (Object) new SelProbStandardScaling(this); + return new SelProbStandardScaling(this); } /** diff --git a/src/eva2/optimization/operator/selection/replacement/ReplaceDeterministicCrowding.java b/src/eva2/optimization/operator/selection/replacement/ReplaceDeterministicCrowding.java index 490e6943..1506457a 100644 --- a/src/eva2/optimization/operator/selection/replacement/ReplaceDeterministicCrowding.java +++ b/src/eva2/optimization/operator/selection/replacement/ReplaceDeterministicCrowding.java @@ -46,7 +46,7 @@ public class ReplaceDeterministicCrowding implements InterfaceReplacement, java. } } if (indy.isDominatingDebConstraints((AbstractEAIndividual) sub.get(index))) { - if (pop.remove((AbstractEAIndividual) sub.get(index))) { + if (pop.remove(sub.get(index))) { pop.addIndividual(indy); } } diff --git a/src/eva2/optimization/operator/selection/replacement/ReplacementCrowding.java b/src/eva2/optimization/operator/selection/replacement/ReplacementCrowding.java index 2484abb4..c3262e5f 100644 --- a/src/eva2/optimization/operator/selection/replacement/ReplacementCrowding.java +++ b/src/eva2/optimization/operator/selection/replacement/ReplacementCrowding.java @@ -58,7 +58,7 @@ public class ReplacementCrowding implements InterfaceReplacement, java.io.Serial } } if (indy.isDominatingDebConstraints((AbstractEAIndividual) tmp.get(index))) { - if (pop.remove((AbstractEAIndividual) tmp.get(index))) { + if (pop.remove(tmp.get(index))) { pop.addIndividual(indy); } } diff --git a/src/eva2/optimization/operator/terminators/DiversityTerminator.java b/src/eva2/optimization/operator/terminators/DiversityTerminator.java index e09ec3b5..e3562518 100644 --- a/src/eva2/optimization/operator/terminators/DiversityTerminator.java +++ b/src/eva2/optimization/operator/terminators/DiversityTerminator.java @@ -20,7 +20,6 @@ import java.io.Serializable; public class DiversityTerminator extends PopulationMeasureTerminator implements InterfaceTerminator, Serializable { public enum DiversityCriterion {averageDistance, minimumDistance, maximumDistance} - ; // private double distanceLimit = 0.001; private InterfaceDistanceMetric metric = new PhenotypeMetric(); // leave the string order for this SelectedTag! (analogy to Population.getPopulationMeasures) diff --git a/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java b/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java index a09f2f4e..315cd694 100644 --- a/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java +++ b/src/eva2/optimization/operator/terminators/FitnessValueTerminator.java @@ -38,7 +38,7 @@ public class FitnessValueTerminator implements InterfaceTerminator, * */ public FitnessValueTerminator(double[] v) { - fitnessValue = (double[]) v.clone(); + fitnessValue = v.clone(); } @Override diff --git a/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java b/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java index d0144fa9..4e1790d6 100644 --- a/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java +++ b/src/eva2/optimization/operator/terminators/PopulationMeasureTerminator.java @@ -26,16 +26,10 @@ public abstract class PopulationMeasureTerminator implements InterfaceTerminator Serializable { public enum ChangeTypeEnum {relativeChange, absoluteChange, absoluteValue} - ; - public enum DirectionTypeEnum {decrease, bidirectional} - ; - public enum StagnationTypeEnum {fitnessCallBased, generationBased} - ; - protected static boolean TRACE = false; private double convThresh = 0.01; //, convThreshLower=0.02; private double oldMeasure = -1; diff --git a/src/eva2/optimization/population/Population.java b/src/eva2/optimization/population/Population.java index 1e718d59..a7e533cd 100644 --- a/src/eva2/optimization/population/Population.java +++ b/src/eva2/optimization/population/Population.java @@ -825,11 +825,7 @@ public class Population extends ArrayList implements PopulationInterface, Clonea } i++; } - if (size() == upTo) { - return true; - } else { - return false; - } + return size() == upTo; } } @@ -1470,7 +1466,7 @@ public class Population extends ArrayList implements PopulationInterface, Clonea public void removeRedundantIndies() { for (int i = 0; i < this.size(); i++) { for (int j = i + 1; j < this.size(); j++) { - if (((AbstractEAIndividual) this.get(i)).equals(this.get(j))) { + if (this.get(i).equals(this.get(j))) { this.remove(j); j--; } @@ -1683,7 +1679,7 @@ public class Population extends ArrayList implements PopulationInterface, Clonea EVAERROR.errorMsgOnce("Warning: tried to add null as individual, skipping add... (Population.add(IndividualInterface)), possibly multiple cases."); return false; } else { - return addIndividual((IndividualInterface) o); + return addIndividual(o); } } @@ -1783,12 +1779,12 @@ public class Population extends ArrayList implements PopulationInterface, Clonea @Override public IndividualInterface getBestIndividual() { - return (IndividualInterface) this.getBestEAIndividual(); + return this.getBestEAIndividual(); } @Override public IndividualInterface getWorstIndividual() { - return (IndividualInterface) this.getWorstEAIndividual(); + return this.getWorstEAIndividual(); } @Override @@ -1908,7 +1904,7 @@ public class Population extends ArrayList implements PopulationInterface, Clonea d = PhenotypeMetric.dist(pop.get(i), pop.get(j)); } } else { - d = metric.distance((AbstractEAIndividual) pop.get(i), (AbstractEAIndividual) pop.get(j)); + d = metric.distance(pop.get(i), pop.get(j)); } } catch (Exception e) { EVAERROR.errorMsgOnce("Exception when calculating population measures ... possibly no double position available?"); @@ -2101,11 +2097,7 @@ public class Population extends ArrayList implements PopulationInterface, Clonea */ public boolean isWithinPopDist(AbstractEAIndividual indy, double d, InterfaceDistanceMetric metric) { Pair closest = Population.getClosestFarthestIndy(indy, this, metric, true); - if (closest.tail() <= d) { - return true; - } else { - return false; - } + return closest.tail() <= d; } /** diff --git a/src/eva2/optimization/population/PopulationInitMethod.java b/src/eva2/optimization/population/PopulationInitMethod.java index bd0b6c1d..4231c3e8 100644 --- a/src/eva2/optimization/population/PopulationInitMethod.java +++ b/src/eva2/optimization/population/PopulationInitMethod.java @@ -1,5 +1,5 @@ package eva2.optimization.population; public enum PopulationInitMethod { - individualDefault, randomLatinHypercube, aroundSeed, binCardinality, aroundRandomSeed; + individualDefault, randomLatinHypercube, aroundSeed, binCardinality, aroundRandomSeed } diff --git a/src/eva2/optimization/stat/AbstractStatistics.java b/src/eva2/optimization/stat/AbstractStatistics.java index 6c14c986..1809d7e3 100644 --- a/src/eva2/optimization/stat/AbstractStatistics.java +++ b/src/eva2/optimization/stat/AbstractStatistics.java @@ -372,13 +372,10 @@ public abstract class AbstractStatistics implements InterfaceTextListener, Inter } } if (printRunStoppedVerbosity()) { - printToTextListener(" Solution correlations (min,max,avg,med,var): " + BeanInspector.toString(((Population) lastSols).getCorrelations((Population) lastSols)) + "\n"); + printToTextListener(" Solution correlations (min,max,avg,med,var): " + BeanInspector.toString(Population.getCorrelations((Population) lastSols)) + "\n"); } if (bestOfRunFeasibleIndy != null) { runBestFeasibleList.add(bestOfRunFeasibleIndy); -// if (meanBestFeasibleFit==null) { -// meanBestFeasibleFit=bestRunFeasibleIndy.getFitness().clone(); -// } else addSecond(meanBestFeasibleFit, bestRunFeasibleIndy.getFitness()); if (printRunStoppedVerbosity()) { if ((bestOfRunFeasibleIndy instanceof AbstractEAIndividual) && ((AbstractEAIndividual) bestOfRunFeasibleIndy).equalGenotypes((AbstractEAIndividual) bestOfRunIndy)) { printToTextListener("* Run best feasible individual equals best individual.\n"); @@ -1096,7 +1093,7 @@ public abstract class AbstractStatistics implements InterfaceTextListener, Inter if (curBestFeasible != null) { // a feasible ind. was found! if (currentBestFeasibleFit == null) { // feasible indy found for the first time numOfRunsFeasibleFound++; - feasibleFoundAfter = ((Population) pop).getFunctionCalls(); + feasibleFoundAfter = pop.getFunctionCalls(); if (feasibleFoundAfterSum < 0) { feasibleFoundAfterSum = 0.; } // initial signaling value was -1. @@ -1131,7 +1128,7 @@ public abstract class AbstractStatistics implements InterfaceTextListener, Inter if (lastIsShowFull || GraphSelectionEnum.doPlotAvgEucDist(lastFieldSelection) || GraphSelectionEnum.doPlotMaxEucDist(lastFieldSelection)) { - double[] measures = ((Population) pop).getPopulationMeasures((InterfaceDistanceMetric) null); + double[] measures = ((Population) pop).getPopulationMeasures(null); if (measures != null) { currentAvgEucDistInPop = measures[0]; currentMaxEucDistInPop = measures[2]; @@ -1140,7 +1137,7 @@ public abstract class AbstractStatistics implements InterfaceTextListener, Inter if (lastIsShowFull || GraphSelectionEnum.doPlotAvgPopMetricDist(lastFieldSelection) || GraphSelectionEnum.doPlotMaxPopMetricDist(lastFieldSelection)) { - double[] measures = ((Population) pop).getPopulationMeasures(); + double[] measures = pop.getPopulationMeasures(); if (measures != null) { currentAvgPopDistMetric = measures[0]; currentMaxPopDistMetric = measures[2]; diff --git a/src/eva2/optimization/stat/GenericStatistics.java b/src/eva2/optimization/stat/GenericStatistics.java index f05a42cd..07aac83f 100644 --- a/src/eva2/optimization/stat/GenericStatistics.java +++ b/src/eva2/optimization/stat/GenericStatistics.java @@ -135,7 +135,7 @@ public class GenericStatistics implements Serializable { public void statechanged(Object target) { int len = 0; for (int i = 0; i < states.length; i++) { - if (states[i] == true) { + if (states[i]) { len++; } } @@ -155,7 +155,7 @@ public class GenericStatistics implements Serializable { int index = 0; for (int i = 0; i < fields.length; i++) { for (int n = 0; n < propertyNames.length; n++) { - if (this.states[n] == false) { + if (!this.states[n]) { continue; } if (fields[i].getName().equals(propertyNames[n])) { diff --git a/src/eva2/optimization/stat/MovingAverage.java b/src/eva2/optimization/stat/MovingAverage.java index 59afc23d..75f487ce 100644 --- a/src/eva2/optimization/stat/MovingAverage.java +++ b/src/eva2/optimization/stat/MovingAverage.java @@ -26,7 +26,7 @@ public class MovingAverage { size = Source.size; index = Source.index; average = Source.average; - array = (double[]) Source.array.clone(); + array = Source.array.clone(); overflow = Source.overflow; } diff --git a/src/eva2/optimization/stat/OptimizationJob.java b/src/eva2/optimization/stat/OptimizationJob.java index 661b8619..c3d93483 100644 --- a/src/eva2/optimization/stat/OptimizationJob.java +++ b/src/eva2/optimization/stat/OptimizationJob.java @@ -17,7 +17,6 @@ import java.util.List; * @author mkron */ public class OptimizationJob implements Serializable, InterfaceStatisticsListener { - private static final boolean TRACE = false; private InterfaceOptimizationParameters params = null; private String[] fieldHeaders = null; @@ -25,14 +24,11 @@ public class OptimizationJob implements Serializable, InterfaceStatisticsListene private int jobID = 0; private static int jobIDCounter = 0; private int numRuns = 0; - private boolean lastRunIncompl = false; - // private boolean jobFinished = false; + private boolean lastRunIncomplete = false; private StateEnum state = StateEnum.idle; private enum StateEnum {running, idle, complete, incomplete} - ; - public OptimizationJob() { jobID = jobIDCounter; jobIDCounter++; @@ -54,8 +50,7 @@ public class OptimizationJob implements Serializable, InterfaceStatisticsListene public void resetJob() { numRuns = 0; state = StateEnum.idle; - lastRunIncompl = false; -// jobFinished=false; + lastRunIncomplete = false; fieldHeaders = null; multiRunFinalObjectData = null; } @@ -86,13 +81,10 @@ public class OptimizationJob implements Serializable, InterfaceStatisticsListene String name = getStateTag(); name = name + " Job (" + jobID + "), "; // +params.getName(); name = name + params.getOptimizer().getName() + "/" + params.getProblem().getName(); -// name=name+( (onlineData==null) ? ", empty" : (onlineData.size()+" records")); name += (", " + numRuns + " runs"); if (fieldHeaders != null) { name += (", " + fieldHeaders.length + " fields"); } -// if (jobFinished) name=name+", finished"; -// if (lastRunIncompl) name=name+", incomplete"; return name; } } @@ -116,14 +108,6 @@ public class OptimizationJob implements Serializable, InterfaceStatisticsListene tag = tag + numRuns + " "; return tag; -// if (isFinishedAndComplete()) return "*"; -// else if (jobFinished && !lastRunIncompl) return "?"; -// else if (!jobFinished && lastRunIncompl) return "-"; -// else if (!jobFinished && !lastRunIncompl) return "O"; -// else { -// System.err.println("Invalid state of job " + this.toString()); -// return "?"; -// } } public String globalInfo() { @@ -131,8 +115,7 @@ public class OptimizationJob implements Serializable, InterfaceStatisticsListene } public boolean isFinishedAndComplete() { -// return (jobFinished && !lastRunIncompl); - return (state == StateEnum.complete) && !lastRunIncompl; + return (state == StateEnum.complete) && !lastRunIncomplete; } public String[] getFieldHeaders() { @@ -148,8 +131,7 @@ public class OptimizationJob implements Serializable, InterfaceStatisticsListene } @Override - public void finalMultiRunResults(String[] header, - List multiRunFinalObjDat) { + public void finalMultiRunResults(String[] header, List multiRunFinalObjDat) { fieldHeaders = header; multiRunFinalObjectData = multiRunFinalObjDat; } @@ -161,40 +143,29 @@ public class OptimizationJob implements Serializable, InterfaceStatisticsListene if (state != StateEnum.running) { throw new RuntimeException("Sent data to job with invalid state!"); } -// if (onlineData==null) onlineData = new ArrayList(10); -// onlineData.add(statObjects); } @Override public void notifyRunStarted(int runNumber, int plannedMultiRuns, String[] header, String[] metaInfo) { state = StateEnum.running; -// onlineData = null; -// multiRunFinalObjectData = null; } @Override public void notifyRunStopped(int runsPerformed, boolean completedLastRun) { numRuns = runsPerformed; - lastRunIncompl = !completedLastRun; - if (TRACE) { - System.out.println("OptimizationJob.notifyRunStopped, " + runsPerformed + " " + completedLastRun); - } + lastRunIncomplete = !completedLastRun; } @Override public boolean notifyMultiRunFinished(String[] header, List multiRunFinalObjDat) { fieldHeaders = header; multiRunFinalObjectData = multiRunFinalObjDat; - if (lastRunIncompl) { + if (lastRunIncomplete) { state = StateEnum.incomplete; } else { state = StateEnum.complete; } -// jobFinished=true; - if (TRACE) { - System.out.println("multi run finished!"); - } return true; } diff --git a/src/eva2/optimization/stat/OptimizationJobList.java b/src/eva2/optimization/stat/OptimizationJobList.java index 235e0eb6..1bfa4973 100644 --- a/src/eva2/optimization/stat/OptimizationJobList.java +++ b/src/eva2/optimization/stat/OptimizationJobList.java @@ -55,8 +55,8 @@ public class OptimizationJobList extends PropertySelectableList private void addJob(OptimizationJob j, boolean selected) { OptimizationJob[] curArr = getObjects(); - OptimizationJob[] newArr = null; - boolean[] newSelection = null; + OptimizationJob[] newArr; + boolean[] newSelection; if (curArr != null && curArr.length > 0) { newArr = new OptimizationJob[curArr.length + 1]; newSelection = new boolean[newArr.length]; @@ -92,7 +92,7 @@ public class OptimizationJobList extends PropertySelectableList */ public ArrayList getSelectedJobs() { OptimizationJob[] selected = getSelectedObjects(); - ArrayList l = new ArrayList(); + ArrayList l = new ArrayList<>(); for (OptimizationJob j : selected) { if (j != null) { l.add(j); @@ -160,7 +160,7 @@ public class OptimizationJobList extends PropertySelectableList @Override public void actionPerformed(ActionEvent e) { - EvAStatisticalEvaluation.evaluate((InterfaceTextListener) jobList, jobList.getObjects(), genericArrayEditor.getSelectedIndices(), + EvAStatisticalEvaluation.evaluate(jobList, jobList.getObjects(), genericArrayEditor.getSelectedIndices(), (StatsOnSingleDataSetEnum[]) EvAStatisticalEvaluation.statsParams.getOneSampledStats().getSelectedEnum(StatsOnSingleDataSetEnum.values()), (StatsOnTwoSampledDataEnum[]) EvAStatisticalEvaluation.statsParams.getTwoSampledStats().getSelectedEnum(StatsOnTwoSampledDataEnum.values())); } diff --git a/src/eva2/optimization/stat/StatisticsWithGUI.java b/src/eva2/optimization/stat/StatisticsWithGUI.java index dd9821dc..bc212b0a 100644 --- a/src/eva2/optimization/stat/StatisticsWithGUI.java +++ b/src/eva2/optimization/stat/StatisticsWithGUI.java @@ -144,7 +144,7 @@ public class StatisticsWithGUI extends AbstractStatistics implements Serializabl } } if (statisticsParameter.getMultiRuns() > 1 - && statisticsParameter.getUseStatPlot() == true) { + && statisticsParameter.getUseStatPlot()) { statGraph = new Graph[windowCount][]; for (int i = 0; i < statGraph.length; i++) { statGraph[i] = new Graph[graphCount]; diff --git a/src/eva2/optimization/strategies/ANPSO.java b/src/eva2/optimization/strategies/ANPSO.java index d524b288..6ccc2428 100644 --- a/src/eva2/optimization/strategies/ANPSO.java +++ b/src/eva2/optimization/strategies/ANPSO.java @@ -201,7 +201,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi @Override public Object clone() { - return (Object) new ANPSO(this); + return new ANPSO(this); } /** @@ -801,11 +801,11 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi // } // } for (int i = 0; i < getSubSwarms().size(); ++i) { - AbstractEAIndividual bestSS = ((ParticleSubSwarmOptimization) getSubSwarms().get(i)).getBestIndividual(); - elitePop.addIndividual((AbstractEAIndividual) ((ParticleSubSwarmOptimization) getSubSwarms().get(i)).bestIndividual.clone()); + AbstractEAIndividual bestSS = getSubSwarms().get(i).getBestIndividual(); + elitePop.addIndividual((AbstractEAIndividual) getSubSwarms().get(i).bestIndividual.clone()); } for (int i = 0; i < inactiveSubSwarms.size(); ++i) { - elitePop.addIndividual((AbstractEAIndividual) ((ParticleSubSwarmOptimization) inactiveSubSwarms.get(i)).bestIndividual.clone()); + elitePop.addIndividual((AbstractEAIndividual) inactiveSubSwarms.get(i).bestIndividual.clone()); } return elitePop; } @@ -846,7 +846,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi // for all SubSwarms... for (int i = 0; i < this.getSubSwarms().size(); i++) { ParticleSubSwarmOptimization currentsubswarm = this.getSubSwarms().get(i); - Population currentsubswarmpop = (Population) currentsubswarm.getPopulation(); + Population currentsubswarmpop = currentsubswarm.getPopulation(); //InterfaceDataTypeDouble best = (InterfaceDataTypeDouble)currentsubswarmpop.getBestIndividual(); InterfaceDataTypeDouble best = (InterfaceDataTypeDouble) currentsubswarm.bestIndividual; DPointSet popRep = new DPointSet(); @@ -952,7 +952,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi return "sets the range of the neighborhood topology for the main swarm"; } - public static final OptimizationParameters aNichePSO(AbstractOptimizationProblem problem, long randSeed, InterfaceTerminator term) { + public static OptimizationParameters aNichePSO(AbstractOptimizationProblem problem, long randSeed, InterfaceTerminator term) { ANPSO anpso = new ANPSO(); anpso.setMainSwarmSize(75); @@ -967,7 +967,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi * @param evalCnt * @return */ - public static final OptimizationParameters stdANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters stdANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { ANPSO anpso = new ANPSO(); NichePSO.stdNPSO(anpso, problem, randSeed, evalCnt); @@ -986,7 +986,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi return OptimizerFactory.makeParams(anpso, anpso.getMainSwarmSize(), problem, randSeed, new EvaluationTerminator(evalCnt)); } - public static final OptimizationParameters starANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters starANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { ANPSO anpso = new ANPSO(); NichePSO.starNPSO(anpso, problem, randSeed, evalCnt); @@ -1007,7 +1007,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi return OptimizerFactory.makeParams(anpso, anpso.getMainSwarmSize(), problem, randSeed, new EvaluationTerminator(evalCnt)); } - public static final OptimizationParameters gmakANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters gmakANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { ANPSO anpso = new ANPSO(); NichePSO.starNPSO(anpso, problem, randSeed, evalCnt); @@ -1038,7 +1038,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi * @param evalCnt * @return */ - public static final OptimizationParameters sgANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters sgANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { return starTopoANPSO(problem, randSeed, evalCnt, 1, 2); } @@ -1052,7 +1052,7 @@ public class ANPSO extends NichePSO implements InterfaceOptimizer, InterfaceAddi * @param topologyRange * @return */ - public static final OptimizationParameters starTopoANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt, int topology, int topologyRange) { + public static OptimizationParameters starTopoANPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt, int topology, int topologyRange) { OptimizationParameters params = starANPSO(problem, randSeed, evalCnt); ((ANPSO) params.getOptimizer()).SetMainSwarmTopologyTag(topology); ((ANPSO) params.getOptimizer()).setMainSwarmTopologyRange(topologyRange); diff --git a/src/eva2/optimization/strategies/CHCAdaptiveSearchAlgorithm.java b/src/eva2/optimization/strategies/CHCAdaptiveSearchAlgorithm.java index ba5babc8..49d9173b 100644 --- a/src/eva2/optimization/strategies/CHCAdaptiveSearchAlgorithm.java +++ b/src/eva2/optimization/strategies/CHCAdaptiveSearchAlgorithm.java @@ -57,7 +57,7 @@ public class CHCAdaptiveSearchAlgorithm implements InterfaceOptimizer, java.io.S @Override public Object clone() { - return (Object) new CHCAdaptiveSearchAlgorithm(this); + return new CHCAdaptiveSearchAlgorithm(this); } @Override diff --git a/src/eva2/optimization/strategies/ClusterBasedNichingEA.java b/src/eva2/optimization/strategies/ClusterBasedNichingEA.java index ab0161f5..b8fb3003 100644 --- a/src/eva2/optimization/strategies/ClusterBasedNichingEA.java +++ b/src/eva2/optimization/strategies/ClusterBasedNichingEA.java @@ -151,7 +151,7 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis @Override public Object clone() { - return (Object) new ClusterBasedNichingEA(this); + return new ClusterBasedNichingEA(this); } @Override @@ -259,7 +259,7 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis for (int i = 0; i < this.species.size(); i++) { mySet = new GraphPointSet(10 + i, plot.getFunctionArea()); mySet.setConnectedMode(false); - Population pop = (Population) this.species.get(i); + Population pop = this.species.get(i); // ArchivingAllDomiating arch = new ArchivingAllDomiating(); // arch.plotParetoFront(pop, plot); for (int j = 0; j < pop.size(); j++) { @@ -289,7 +289,7 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis this.topologyPlot.getFunctionArea().addDElement(popRep); //draw the species for (int i = 0; i < this.species.size(); i++) { - pop = (Population) this.species.get(i); + pop = this.species.get(i); plotPopConnected(topologyPlot, pop); } if (!useDistraction) { @@ -405,12 +405,8 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis // System.err.println("ALTERNATIVE BREAK, FORBIDDING CONVERGENCE! sig=" + getClusterDiffDist() + " / avD="+ specMeas[0]); InterfaceTerminator convTerm2 = new HistoryConvergenceTerminator(2 * haltingWindow, epsilonBound, 0, false); term = convTerm2.isTerminated(pop); - if (term) { -// System.out.println("Twice the halting window passed without improvement and still no phenotypic convergence!!!"); - return true; - } else { - return false; - } + // System.out.println("Twice the halting window passed without improvement and still no phenotypic convergence!!!"); + return term; } } @@ -537,7 +533,6 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis if (TRACE) { System.out.println("NumIndies: " + countIndies); } - ; if (this.showCycle > 0) { if (undifferentiatedPopulation.getGeneration() <= 1) { plot(undifferentiatedPopulation.getGeneration()); @@ -566,9 +561,9 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis // optimize the clustered species for (int i = this.species.size() - 1; i >= 0; i--) { if (TRACE) { - System.out.println("-Deme " + i + " size: " + ((Population) this.species.get(i)).size()); + System.out.println("-Deme " + i + " size: " + this.species.get(i).size()); } - curSpecies = ((Population) this.species.get(i)); + curSpecies = this.species.get(i); curSpecies.setFunctionCalls(0); curSpecies.synchSize(); // if (isActive(curSpecies)) { // Lets have only active species... @@ -597,12 +592,10 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis best = (AbstractEAIndividual) curSpecies.getBestEAIndividual().getClone(); } int toReinit = 0; - if (true) { - populationArchive.add(best); + populationArchive.add(best); // System.out.println((""+ population.getFunctionCalls() + " " + (BeanInspector.toString(best.getDoublePosition())).replaceAll(";|\\[|\\]", ""))); - species.remove(i); // remove the converged Species - toReinit = curSpecies.size(); - } + species.remove(i); // remove the converged Species + toReinit = curSpecies.size(); // those will not be optimized anymore, so we dont need to doom them, but can directly add them to undiff! undifferentiatedPopulation.addPopulation(initializeIndividuals(toReinit)); undifferentiatedPopulation.incrFunctionCallsBy(toReinit); @@ -611,7 +604,7 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis curSpecies.putData(InterfaceSpeciesAware.populationTagKey, InterfaceSpeciesAware.localPopTag); Population optimizedSpec = optimizeSpecies(curSpecies, true); this.species.set(i, optimizedSpec); - curSpecies = ((Population) this.species.get(i)); // reset to expected population, just to be sure + curSpecies = this.species.get(i); // reset to expected population, just to be sure } // } // This is necessary to keep track of the function calls needed @@ -626,7 +619,7 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis this.population = (Population) this.undifferentiatedPopulation.clone(); population.setUseHistory(true); for (int i = 0; i < this.species.size(); i++) { - this.population.addPopulation((Population) this.species.get(i)); + this.population.addPopulation(this.species.get(i)); } if (doomedPopulation.size() > 0) { population.addPopulation(reinitPop); @@ -741,7 +734,7 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis for (int i = populationArchive.size() - 1; i >= 0; i--) { if (assocSpec[i] >= 0) { AbstractEAIndividual aIndy = populationArchive.getEAIndividual(i); - spec1 = (Population) this.species.get(assocSpec[i]); + spec1 = this.species.get(assocSpec[i]); // archived solution corresponds to an existing species if (!specToRemove.contains(assocSpec[i])) { // the species has not yet been deactivated @@ -778,9 +771,9 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis } // Now test if species should be merged among each other for (int i1 = 0; i1 < this.species.size(); i1++) { - spec1 = (Population) this.species.get(i1); + spec1 = this.species.get(i1); for (int i2 = i1 + 1; i2 < this.species.size(); i2++) { - spec2 = (Population) this.species.get(i2); + spec2 = this.species.get(i2); if (this.caForSpeciesMerging.mergingSpecies(spec1, spec2, population)) { if (TRACE_EVTS || TRACE) { @@ -836,7 +829,7 @@ public class ClusterBasedNichingEA implements InterfacePopulationChangedEventLis this.population = (Population) this.undifferentiatedPopulation.clone(); population.setUseHistory(true); for (int i = 0; i < this.species.size(); i++) { - this.population.addPopulation((Population) this.species.get(i)); + this.population.addPopulation(this.species.get(i)); } if (doomedPopulation.size() > 0) { population.addPopulation(doomedPopulation); diff --git a/src/eva2/optimization/strategies/ClusteringHillClimbing.java b/src/eva2/optimization/strategies/ClusteringHillClimbing.java index 88eb4806..13e780fc 100644 --- a/src/eva2/optimization/strategies/ClusteringHillClimbing.java +++ b/src/eva2/optimization/strategies/ClusteringHillClimbing.java @@ -89,7 +89,7 @@ public class ClusteringHillClimbing implements InterfacePopulationChangedEventLi @Override public Object clone() { - return (Object) new ClusteringHillClimbing(this); + return new ClusteringHillClimbing(this); } /** diff --git a/src/eva2/optimization/strategies/DifferentialEvolution.java b/src/eva2/optimization/strategies/DifferentialEvolution.java index b3954c47..06768547 100644 --- a/src/eva2/optimization/strategies/DifferentialEvolution.java +++ b/src/eva2/optimization/strategies/DifferentialEvolution.java @@ -107,7 +107,7 @@ public class DifferentialEvolution implements InterfaceOptimizer, java.io.Serial @Override public Object clone() { - return (Object) new DifferentialEvolution(this); + return new DifferentialEvolution(this); } @Override @@ -685,11 +685,7 @@ public class DifferentialEvolution implements InterfaceOptimizer, java.io.Serial @Override public boolean removePopulationChangedEventListener( InterfacePopulationChangedEventListener ea) { - if (populationChangedEventListeners != null && populationChangedEventListeners.removeElement(ea)) { - return true; - } else { - return false; - } + return populationChangedEventListeners != null && populationChangedEventListeners.removeElement(ea); } /** @@ -717,7 +713,7 @@ public class DifferentialEvolution implements InterfaceOptimizer, java.io.Serial @Override public InterfaceOptimizationProblem getProblem() { - return (InterfaceOptimizationProblem) this.optimizationProblem; + return this.optimizationProblem; } /** diff --git a/src/eva2/optimization/strategies/DynamicParticleSwarmOptimization.java b/src/eva2/optimization/strategies/DynamicParticleSwarmOptimization.java index 809fadcb..2a68ded2 100644 --- a/src/eva2/optimization/strategies/DynamicParticleSwarmOptimization.java +++ b/src/eva2/optimization/strategies/DynamicParticleSwarmOptimization.java @@ -80,7 +80,7 @@ public class DynamicParticleSwarmOptimization extends ParticleSwarmOptimization @Override public Object clone() { - return (Object) new DynamicParticleSwarmOptimization(this); + return new DynamicParticleSwarmOptimization(this); } /** @@ -306,7 +306,7 @@ public class DynamicParticleSwarmOptimization extends ParticleSwarmOptimization */ @Override protected double getSpeedLimit(int index) { - if (index >= ((double) (population.size() * highEnergyRatio))) { + if (index >= population.size() * highEnergyRatio) { return speedLimit; } else { if (highEnergyRaise == 0.) { diff --git a/src/eva2/optimization/strategies/EsDpiNiching.java b/src/eva2/optimization/strategies/EsDpiNiching.java index 3f28476f..37b9e08e 100644 --- a/src/eva2/optimization/strategies/EsDpiNiching.java +++ b/src/eva2/optimization/strategies/EsDpiNiching.java @@ -482,7 +482,7 @@ public class EsDpiNiching implements InterfaceOptimizer, Serializable, Interface } else if (curSpecies.size() == 0) { System.err.println("Warning, empty niche population in EsDpiNiching!"); } - peakOpts[clustIndex - 1].setPop((Population) curSpecies); // -1 because clustering delivers first cluster at index 1 + peakOpts[clustIndex - 1].setPop(curSpecies); // -1 because clustering delivers first cluster at index 1 // check for deactivation of that niche if (getHaltingWindow() > 0) { diff --git a/src/eva2/optimization/strategies/EvolutionStrategies.java b/src/eva2/optimization/strategies/EvolutionStrategies.java index 3055e290..601d4b7a 100644 --- a/src/eva2/optimization/strategies/EvolutionStrategies.java +++ b/src/eva2/optimization/strategies/EvolutionStrategies.java @@ -93,7 +93,7 @@ public class EvolutionStrategies implements InterfaceOptimizer, java.io.Serializ @Override public Object clone() { - return (Object) new EvolutionStrategies(this); + return new EvolutionStrategies(this); } @Override @@ -259,11 +259,7 @@ public class EvolutionStrategies implements InterfaceOptimizer, java.io.Serializ @Override public boolean removePopulationChangedEventListener( InterfacePopulationChangedEventListener ea) { - if (changeListener != null && changeListener.removeElement(ea)) { - return true; - } else { - return false; - } + return changeListener != null && changeListener.removeElement(ea); } /** diff --git a/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java b/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java index 6c1bc322..d41a9980 100644 --- a/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java +++ b/src/eva2/optimization/strategies/EvolutionStrategyIPOP.java @@ -418,6 +418,6 @@ public class EvolutionStrategyIPOP extends EvolutionStrategies implements Interf */ @Override public Object[] getAdditionalDataValue(PopulationInterface pop) { - return new Object[]{(bestList == null) ? ((int) 0) : bestList.size(), (getMeanArchivedDist()), getLambda()}; + return new Object[]{(bestList == null) ? 0 : bestList.size(), (getMeanArchivedDist()), getLambda()}; } } diff --git a/src/eva2/optimization/strategies/EvolutionaryProgramming.java b/src/eva2/optimization/strategies/EvolutionaryProgramming.java index 3a936855..42f76b66 100644 --- a/src/eva2/optimization/strategies/EvolutionaryProgramming.java +++ b/src/eva2/optimization/strategies/EvolutionaryProgramming.java @@ -42,7 +42,7 @@ public class EvolutionaryProgramming implements InterfaceOptimizer, java.io.Seri @Override public Object clone() { - return (Object) new EvolutionaryProgramming(this); + return new EvolutionaryProgramming(this); } @Override @@ -83,7 +83,7 @@ public class EvolutionaryProgramming implements InterfaceOptimizer, java.io.Seri * population of evaluated individuals. */ private Population generateChildren() { - Population result = (Population) this.population.cloneWithoutInds(); + Population result = this.population.cloneWithoutInds(); AbstractEAIndividual mutant; result.clear(); diff --git a/src/eva2/optimization/strategies/FloodAlgorithm.java b/src/eva2/optimization/strategies/FloodAlgorithm.java index 16ed3c35..2e386483 100644 --- a/src/eva2/optimization/strategies/FloodAlgorithm.java +++ b/src/eva2/optimization/strategies/FloodAlgorithm.java @@ -49,7 +49,7 @@ public class FloodAlgorithm implements InterfaceOptimizer, java.io.Serializable @Override public Object clone() { - return (Object) new FloodAlgorithm(this); + return new FloodAlgorithm(this); } /** diff --git a/src/eva2/optimization/strategies/GeneticAlgorithm.java b/src/eva2/optimization/strategies/GeneticAlgorithm.java index c2592afd..d3631c53 100644 --- a/src/eva2/optimization/strategies/GeneticAlgorithm.java +++ b/src/eva2/optimization/strategies/GeneticAlgorithm.java @@ -174,11 +174,7 @@ public class GeneticAlgorithm implements InterfaceOptimizer, java.io.Serializabl @Override public boolean removePopulationChangedEventListener( InterfacePopulationChangedEventListener ea) { - if (changeListener != null && changeListener.removeElement(ea)) { - return true; - } else { - return false; - } + return changeListener != null && changeListener.removeElement(ea); } /** diff --git a/src/eva2/optimization/strategies/HillClimbing.java b/src/eva2/optimization/strategies/HillClimbing.java index 8c43e9f9..05abd46a 100644 --- a/src/eva2/optimization/strategies/HillClimbing.java +++ b/src/eva2/optimization/strategies/HillClimbing.java @@ -38,7 +38,7 @@ public class HillClimbing implements InterfaceOptimizer, java.io.Serializable { @Override public Object clone() { - return (Object) new HillClimbing(this); + return new HillClimbing(this); } /** diff --git a/src/eva2/optimization/strategies/IslandModelEA.java b/src/eva2/optimization/strategies/IslandModelEA.java index 9e5a5bdd..1f980a0f 100644 --- a/src/eva2/optimization/strategies/IslandModelEA.java +++ b/src/eva2/optimization/strategies/IslandModelEA.java @@ -68,7 +68,7 @@ public class IslandModelEA implements InterfacePopulationChangedEventListener, I @Override public Object clone() { - return (Object) new IslandModelEA(this); + return new IslandModelEA(this); } @Override @@ -359,7 +359,7 @@ public class IslandModelEA implements InterfacePopulationChangedEventListener, I if (false) { imea.optimizer = new MultiObjectiveEA(); ((MultiObjectiveEA) imea.optimizer).setArchiveSize(25); - ((MultiObjectiveEA) imea.optimizer).getPopulation().setTargetSize(50); + imea.optimizer.getPopulation().setTargetSize(50); imea.optimizationProblem = new TF1Problem(); ((TF1Problem) imea.optimizationProblem).setEAIndividual(new ESIndividualDoubleData()); // ((TF1Problem)imea.problem).setEAIndividual(new ESIndividualDoubleData()); diff --git a/src/eva2/optimization/strategies/MemeticAlgorithm.java b/src/eva2/optimization/strategies/MemeticAlgorithm.java index 43d6897a..428d36e5 100644 --- a/src/eva2/optimization/strategies/MemeticAlgorithm.java +++ b/src/eva2/optimization/strategies/MemeticAlgorithm.java @@ -49,8 +49,8 @@ public class MemeticAlgorithm implements InterfaceOptimizer, public MemeticAlgorithm(MemeticAlgorithm a) { // this.population = (Population)a.population.clone(); this.optimizationProblem = (InterfaceLocalSearchable) a.optimizationProblem.clone(); - this.globalOptimizer = (InterfaceOptimizer) a.globalOptimizer; - this.selectorPlug = (InterfaceSelection) a.selectorPlug; + this.globalOptimizer = a.globalOptimizer; + this.selectorPlug = a.selectorPlug; this.identifier = a.identifier; this.localSearchSteps = a.localSearchSteps; this.subsetsize = a.subsetsize; diff --git a/src/eva2/optimization/strategies/MonteCarloSearch.java b/src/eva2/optimization/strategies/MonteCarloSearch.java index 9311e1d9..685803a1 100644 --- a/src/eva2/optimization/strategies/MonteCarloSearch.java +++ b/src/eva2/optimization/strategies/MonteCarloSearch.java @@ -46,7 +46,7 @@ public class MonteCarloSearch implements InterfaceOptimizer, java.io.Serializabl @Override public Object clone() { - return (Object) new MonteCarloSearch(this); + return new MonteCarloSearch(this); } /** diff --git a/src/eva2/optimization/strategies/MultiObjectiveEA.java b/src/eva2/optimization/strategies/MultiObjectiveEA.java index 55f81c70..30a32089 100644 --- a/src/eva2/optimization/strategies/MultiObjectiveEA.java +++ b/src/eva2/optimization/strategies/MultiObjectiveEA.java @@ -61,7 +61,7 @@ public class MultiObjectiveEA implements InterfaceOptimizer, java.io.Serializabl @Override public Object clone() { - return (Object) new MultiObjectiveEA(this); + return new MultiObjectiveEA(this); } @Override diff --git a/src/eva2/optimization/strategies/NelderMeadSimplex.java b/src/eva2/optimization/strategies/NelderMeadSimplex.java index 49937dba..aee16c8d 100644 --- a/src/eva2/optimization/strategies/NelderMeadSimplex.java +++ b/src/eva2/optimization/strategies/NelderMeadSimplex.java @@ -365,7 +365,7 @@ public class NelderMeadSimplex implements InterfaceOptimizer, Serializable, Inte * @param listener * @return An optimization procedure that performs nelder mead optimization. */ - public static final NelderMeadSimplex createNelderMeadSimplex(AbstractOptimizationProblem problem, + public static NelderMeadSimplex createNelderMeadSimplex(AbstractOptimizationProblem problem, InterfacePopulationChangedEventListener listener) { problem.initializeProblem(); @@ -397,7 +397,7 @@ public class NelderMeadSimplex implements InterfaceOptimizer, Serializable, Inte * @param listener * @return An optimization procedure that performs nelder mead optimization. */ - public static final NelderMeadSimplex createNelderMeadSimplexLocal(AbstractOptimizationProblem problem, + public static NelderMeadSimplex createNelderMeadSimplexLocal(AbstractOptimizationProblem problem, AbstractEAIndividual candidate, double perturbationRatio, InterfacePopulationChangedEventListener listener) { diff --git a/src/eva2/optimization/strategies/NicheGraph.java b/src/eva2/optimization/strategies/NicheGraph.java index c359b7cc..ed3ae101 100644 --- a/src/eva2/optimization/strategies/NicheGraph.java +++ b/src/eva2/optimization/strategies/NicheGraph.java @@ -36,7 +36,7 @@ public class NicheGraph implements java.io.Serializable { @Override public Object clone() { - return (Object) new NicheGraph(this); + return new NicheGraph(this); } /********************************************************************************************************************** * vertices and edges diff --git a/src/eva2/optimization/strategies/NichePSO.java b/src/eva2/optimization/strategies/NichePSO.java index 3d8a7b4a..337ab718 100644 --- a/src/eva2/optimization/strategies/NichePSO.java +++ b/src/eva2/optimization/strategies/NichePSO.java @@ -225,7 +225,7 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac */ @Override public Object clone() { - return (Object) new NichePSO(this); + return new NichePSO(this); } /** @@ -797,7 +797,7 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac public Population getPopulation() { boolean activeOnly = true; // true makes problems if all subswarms are deactivated at the same time! // construct a metapop with clones from the mainswarm and all subswarms - Population metapop = (Population) getMainSwarm().getPopulation().cloneWithoutInds(); + Population metapop = getMainSwarm().getPopulation().cloneWithoutInds(); metapop.ensureCapacity(getMainSwarmSize()); metapop.addPopulation(getMainSwarm().getPopulation()); int activeCnt = 0; @@ -1829,7 +1829,7 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac protected void plotSwarmToMerge(ParticleSubSwarmOptimization swarm, int index) { InterfaceDataTypeDouble tmpIndy1; - Population swarmpop = (Population) swarm.getPopulation(); + Population swarmpop = swarm.getPopulation(); InterfaceDataTypeDouble best = (InterfaceDataTypeDouble) swarm.bestIndividual; DPointSet popRep = new DPointSet(); @@ -1874,7 +1874,7 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac // for all SubSwarms... for (int i = 0; i < this.getSubSwarms().size(); i++) { ParticleSubSwarmOptimization currentsubswarm = this.getSubSwarms().get(i); - Population currentsubswarmpop = (Population) currentsubswarm.getPopulation(); + Population currentsubswarmpop = currentsubswarm.getPopulation(); //InterfaceDataTypeDouble best = (InterfaceDataTypeDouble)currentsubswarmpop.getBestIndividual(); InterfaceDataTypeDouble best = (InterfaceDataTypeDouble) currentsubswarm.bestIndividual; DPointSet popRep = new DPointSet(); @@ -2094,7 +2094,7 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac return date; } - public static final OptimizationParameters nichePSO(AbstractOptimizationProblem problem, long randSeed, InterfaceTerminator term) { + public static OptimizationParameters nichePSO(AbstractOptimizationProblem problem, long randSeed, InterfaceTerminator term) { NichePSO npso = new NichePSO(); npso.setMainSwarmSize(75); @@ -2117,11 +2117,11 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac * @param evalCnt * @return */ - public static final OptimizationParameters stdNPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters stdNPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { return stdNPSO(null, problem, randSeed, evalCnt); } - public static final OptimizationParameters starNPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters starNPSO(AbstractOptimizationProblem problem, long randSeed, int evalCnt) { return starNPSO(null, problem, randSeed, evalCnt); } @@ -2137,7 +2137,7 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac * @return * @see #stdNPSO(AbstractOptimizationProblem, long, int) */ - public static final OptimizationParameters stdNPSO(NichePSO npso, AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters stdNPSO(NichePSO npso, AbstractOptimizationProblem problem, long randSeed, int evalCnt) { if (npso == null) { npso = new NichePSO(); } @@ -2187,12 +2187,12 @@ public class NichePSO implements InterfaceAdditionalPopulationInformer, Interfac * @return * @see #stdNPSO(AbstractOptimizationProblem, long, int) */ - public static final OptimizationParameters starNPSO(NichePSO npso, AbstractOptimizationProblem problem, long randSeed, int evalCnt) { + public static OptimizationParameters starNPSO(NichePSO npso, AbstractOptimizationProblem problem, long randSeed, int evalCnt) { starNPSO(npso, evalCnt); return OptimizerFactory.makeParams(npso, npso.getMainSwarmSize(), problem, randSeed, new EvaluationTerminator(evalCnt)); } - public static final NichePSO starNPSO(NichePSO npso, int evalCnt) { + public static NichePSO starNPSO(NichePSO npso, int evalCnt) { if (npso == null) { npso = new NichePSO(); } diff --git a/src/eva2/optimization/strategies/ParticleFilterOptimization.java b/src/eva2/optimization/strategies/ParticleFilterOptimization.java index 0cd65a9d..54299c17 100644 --- a/src/eva2/optimization/strategies/ParticleFilterOptimization.java +++ b/src/eva2/optimization/strategies/ParticleFilterOptimization.java @@ -82,7 +82,7 @@ public class ParticleFilterOptimization implements InterfaceOptimizer, java.io.S @Override public Object clone() { - return (Object) new ParticleFilterOptimization(this); + return new ParticleFilterOptimization(this); } @Override @@ -187,7 +187,7 @@ public class ParticleFilterOptimization implements InterfaceOptimizer, java.io.S drawPop(pop, 0, false); } for (int i = 0; i < pop.getTargetSize(); i++) { - applyMotionModel((AbstractEAIndividual) ((AbstractEAIndividual) pop.get(i)), 0.); + applyMotionModel((AbstractEAIndividual) pop.get(i), 0.); indCount++; } if (withShow) { diff --git a/src/eva2/optimization/strategies/ParticleSubSwarmOptimization.java b/src/eva2/optimization/strategies/ParticleSubSwarmOptimization.java index 98807f62..83be23e2 100644 --- a/src/eva2/optimization/strategies/ParticleSubSwarmOptimization.java +++ b/src/eva2/optimization/strategies/ParticleSubSwarmOptimization.java @@ -71,7 +71,7 @@ public class ParticleSubSwarmOptimization extends ParticleSwarmOptimizationGCPSO */ @Override public Object clone() { - return (Object) new ParticleSubSwarmOptimization(this); + return new ParticleSubSwarmOptimization(this); } @@ -115,7 +115,7 @@ public class ParticleSubSwarmOptimization extends ParticleSwarmOptimizationGCPSO */ protected void initIndividuals() { for (int i = 0; i < population.size(); ++i) { - AbstractEAIndividual indy = (AbstractEAIndividual) (population.getEAIndividual(i)); + AbstractEAIndividual indy = population.getEAIndividual(i); initSubSwarmDefaultsOf(indy); } } @@ -284,7 +284,7 @@ public class ParticleSubSwarmOptimization extends ParticleSwarmOptimizationGCPSO public void updateFitnessArchives() { //int lim = 3; // maximal number of fitnessvalues remembered from former iterations for (int i = 0; i < population.size(); ++i) { - AbstractEAIndividual indy = (AbstractEAIndividual) population.getEAIndividual(i); + AbstractEAIndividual indy = population.getEAIndividual(i); Vector fitArchive_old = (Vector) (indy.getData(NichePSO.fitArchiveKey)); double scalarFitness = sum(indy.getFitness()); // if multiobjective, use the sum of all fitnessvalues (dont use the norm because fitnessvalues may be negative) Double fitness = new Double(scalarFitness); @@ -486,7 +486,7 @@ public class ParticleSubSwarmOptimization extends ParticleSwarmOptimizationGCPSO AbstractEAIndividual tmpIndy; for (int i = 0; i < tmp.getTargetSize(); i++) { - tmpIndy = (AbstractEAIndividual) ((AbstractEAIndividual) template).clone(); + tmpIndy = (AbstractEAIndividual) template.clone(); tmpIndy.init(prob); tmp.add(tmpIndy); } diff --git a/src/eva2/optimization/strategies/ParticleSwarmOptimization.java b/src/eva2/optimization/strategies/ParticleSwarmOptimization.java index 0d1821b7..de09b635 100644 --- a/src/eva2/optimization/strategies/ParticleSwarmOptimization.java +++ b/src/eva2/optimization/strategies/ParticleSwarmOptimization.java @@ -157,7 +157,7 @@ public class ParticleSwarmOptimization implements InterfaceOptimizer, java.io.Se @Override public Object clone() { - return (Object) new ParticleSwarmOptimization(this); + return new ParticleSwarmOptimization(this); } /** @@ -967,8 +967,8 @@ public class ParticleSwarmOptimization implements InterfaceOptimizer, java.io.Se k = getParentIndex(topologyRange, index, pop.size()); // compareAndSet(localBestFitness, localBestPosition, (AbstractEAIndividual)pop.get(k), useHistoric); indy = (AbstractEAIndividual) pop.get(k); - System.arraycopy((double[]) indy.getData(partBestFitKey), 0, localBestFitness, 0, localBestFitness.length); - System.arraycopy((double[]) indy.getData(partBestPosKey), 0, localBestPosition, 0, localBestPosition.length); + System.arraycopy(indy.getData(partBestFitKey), 0, localBestFitness, 0, localBestFitness.length); + System.arraycopy(indy.getData(partBestPosKey), 0, localBestPosition, 0, localBestPosition.length); } break; @@ -1486,11 +1486,7 @@ public class ParticleSwarmOptimization implements InterfaceOptimizer, java.io.Se @Override public boolean removePopulationChangedEventListener( InterfacePopulationChangedEventListener ea) { - if (changeListener != null && changeListener.removeElement(ea)) { - return true; - } else { - return false; - } + return changeListener != null && changeListener.removeElement(ea); } /** diff --git a/src/eva2/optimization/strategies/ParticleSwarmOptimizationGCPSO.java b/src/eva2/optimization/strategies/ParticleSwarmOptimizationGCPSO.java index b435a63c..23dfa2f4 100644 --- a/src/eva2/optimization/strategies/ParticleSwarmOptimizationGCPSO.java +++ b/src/eva2/optimization/strategies/ParticleSwarmOptimizationGCPSO.java @@ -180,12 +180,12 @@ public class ParticleSwarmOptimizationGCPSO extends ParticleSwarmOptimization { /** numOfSuccesses,numOfFailures */ // check if the gbestParticle improved over the last iteration if (gbestParticle == null) { // no previous gbest on first call available - AbstractEAIndividual gbestParticleCurrent = (AbstractEAIndividual) getPopulation().getEAIndividual(gbestParticleIndex); + AbstractEAIndividual gbestParticleCurrent = getPopulation().getEAIndividual(gbestParticleIndex); gbestParticle = (AbstractEAIndividual) gbestParticleCurrent.clone(); } AbstractEAIndividual gbestParticleOld = gbestParticle; double[] gbestParticleFitnessOld = (double[]) gbestParticleOld.getData(partBestFitKey); - AbstractEAIndividual gbestParticleCurrent = (AbstractEAIndividual) getPopulation().getEAIndividual(gbestParticleIndex); + AbstractEAIndividual gbestParticleCurrent = getPopulation().getEAIndividual(gbestParticleIndex); double[] gbestParticleFitnessCurrent = (double[]) gbestParticleCurrent.getData(partBestFitKey); // if (gbestParticleHasChanged && false){ // reset rho on change? diff --git a/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java b/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java index bb25f646..1a08385e 100644 --- a/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java +++ b/src/eva2/optimization/strategies/PopulationBasedIncrementalLearning.java @@ -56,7 +56,7 @@ public class PopulationBasedIncrementalLearning implements InterfaceOptimizer, j @Override public Object clone() { - return (Object) new PopulationBasedIncrementalLearning(this); + return new PopulationBasedIncrementalLearning(this); } @Override diff --git a/src/eva2/optimization/strategies/ScatterSearch.java b/src/eva2/optimization/strategies/ScatterSearch.java index d5ddca0d..8609f8b2 100644 --- a/src/eva2/optimization/strategies/ScatterSearch.java +++ b/src/eva2/optimization/strategies/ScatterSearch.java @@ -865,7 +865,7 @@ public class ScatterSearch implements InterfaceOptimizer, java.io.Serializable, /** * This method performs a scatter search runnable. */ - public static final OptimizerRunnable createScatterSearch( + public static OptimizerRunnable createScatterSearch( int localSearchSteps, double localSearchFitnessFilter, double nmInitPerturb, boolean relativeFitCrit, int refSetSize, @@ -880,12 +880,12 @@ public class ScatterSearch implements InterfaceOptimizer, java.io.Serializable, return rnbl; } - public static final OptimizationParameters standardSS( + public static OptimizationParameters standardSS( AbstractOptimizationProblem problem) { return specialSS(0, 0, 0.1, true, 10, problem, new EvaluationTerminator(10000)); } - public static final OptimizationParameters specialSS( + public static OptimizationParameters specialSS( int localSearchSteps, double localSearchFitnessFilter, double nmInitPerturb, boolean relativeFitCrit, int refSetSize, diff --git a/src/eva2/optimization/strategies/SimulatedAnnealing.java b/src/eva2/optimization/strategies/SimulatedAnnealing.java index 4099efaf..177feb91 100644 --- a/src/eva2/optimization/strategies/SimulatedAnnealing.java +++ b/src/eva2/optimization/strategies/SimulatedAnnealing.java @@ -48,7 +48,7 @@ public class SimulatedAnnealing implements InterfaceOptimizer, java.io.Serializa @Override public Object clone() { - return (Object) new SimulatedAnnealing(this); + return new SimulatedAnnealing(this); } /** diff --git a/src/eva2/optimization/strategies/SteadyStateGA.java b/src/eva2/optimization/strategies/SteadyStateGA.java index 5ecc15a4..e7fbb984 100644 --- a/src/eva2/optimization/strategies/SteadyStateGA.java +++ b/src/eva2/optimization/strategies/SteadyStateGA.java @@ -46,7 +46,7 @@ public class SteadyStateGA implements InterfaceOptimizer, java.io.Serializable { @Override public Object clone() { - return (Object) new SteadyStateGA(this); + return new SteadyStateGA(this); } @Override diff --git a/src/eva2/optimization/strategies/ThresholdAlgorithm.java b/src/eva2/optimization/strategies/ThresholdAlgorithm.java index 2f7fee79..599b11d4 100644 --- a/src/eva2/optimization/strategies/ThresholdAlgorithm.java +++ b/src/eva2/optimization/strategies/ThresholdAlgorithm.java @@ -45,7 +45,7 @@ public class ThresholdAlgorithm implements InterfaceOptimizer, java.io.Serializa @Override public Object clone() { - return (Object) new ThresholdAlgorithm(this); + return new ThresholdAlgorithm(this); } /** diff --git a/src/eva2/optimization/strategies/WingedMultiObjectiveEA.java b/src/eva2/optimization/strategies/WingedMultiObjectiveEA.java index b9fff8cd..2edf4d32 100644 --- a/src/eva2/optimization/strategies/WingedMultiObjectiveEA.java +++ b/src/eva2/optimization/strategies/WingedMultiObjectiveEA.java @@ -51,7 +51,7 @@ public class WingedMultiObjectiveEA implements InterfaceOptimizer, java.io.Seria @Override public Object clone() { - return (Object) new WingedMultiObjectiveEA(this); + return new WingedMultiObjectiveEA(this); } @Override diff --git a/src/eva2/optimization/strategies/tribes/TribesPosition.java b/src/eva2/optimization/strategies/tribes/TribesPosition.java index 24581385..d9685413 100644 --- a/src/eva2/optimization/strategies/tribes/TribesPosition.java +++ b/src/eva2/optimization/strategies/tribes/TribesPosition.java @@ -859,10 +859,7 @@ public class TribesPosition implements java.io.Serializable { } return true; } else { // Total error approach - if (calcTotalError(f1) < calcTotalError(f2)) { - return true; - } - return false; + return calcTotalError(f1) < calcTotalError(f2); } } diff --git a/src/eva2/optimization/tools/AbstractObjectEditor.java b/src/eva2/optimization/tools/AbstractObjectEditor.java index 53a72ceb..83a4ff1e 100644 --- a/src/eva2/optimization/tools/AbstractObjectEditor.java +++ b/src/eva2/optimization/tools/AbstractObjectEditor.java @@ -283,7 +283,7 @@ public abstract class AbstractObjectEditor implements PropertyEditor, java.beans result.editor.setValue(result.value); result.editor.addPropertyChangeListener(this); - this.findViewFor(result); + AbstractObjectEditor.findViewFor(result); if (result.view != null) { result.view.repaint(); } diff --git a/src/eva2/optimization/tools/GeneralGenericObjectEditorPanel.java b/src/eva2/optimization/tools/GeneralGenericObjectEditorPanel.java index 76869a9f..32aa18a4 100644 --- a/src/eva2/optimization/tools/GeneralGenericObjectEditorPanel.java +++ b/src/eva2/optimization/tools/GeneralGenericObjectEditorPanel.java @@ -143,7 +143,7 @@ public class GeneralGenericObjectEditorPanel extends JPanel implements ItemListe setLayout(new BorderLayout()); add(objectChooser, BorderLayout.NORTH); // important propertyPanelWrapper.add(propertyPanel); - add((JComponent) propertyPanelWrapper, BorderLayout.CENTER); + add(propertyPanelWrapper, BorderLayout.CENTER); JPanel okcButs = new JPanel(); okcButs.setBorder(BorderFactory.createEmptyBorder()); @@ -283,7 +283,7 @@ public class GeneralGenericObjectEditorPanel extends JPanel implements ItemListe String objectName = /*EVAHELP.cutClassName*/ (this.objectEditor.getValue().getClass().getName()); boolean found = false; for (int i = 0; i < objectNames.getSize(); i++) { - if (objectName.equals((String) objectNames.getElementAt(i))) { + if (objectName.equals(objectNames.getElementAt(i))) { found = true; break; } @@ -322,7 +322,7 @@ public class GeneralGenericObjectEditorPanel extends JPanel implements ItemListe className = (String) objectChooser.getSelectedItem(); try { System.out.println(className); - Object n = (Object) Class.forName(className).newInstance(); + Object n = Class.forName(className).newInstance(); this.objectEditor.setValue(n); } catch (Exception ex) { System.out.println("Exeption in itemStateChanged" + ex.getMessage()); diff --git a/src/eva2/optimization/tools/ImpactOfDimensionOnMOEAs.java b/src/eva2/optimization/tools/ImpactOfDimensionOnMOEAs.java index c206ce68..ac5ae9fc 100644 --- a/src/eva2/optimization/tools/ImpactOfDimensionOnMOEAs.java +++ b/src/eva2/optimization/tools/ImpactOfDimensionOnMOEAs.java @@ -124,9 +124,9 @@ public class ImpactOfDimensionOnMOEAs { } } if (j < x.length) { - fitness[j] = 1 / ((double) fitness[j]) + x[j]; + fitness[j] = 1 / fitness[j] + x[j]; } else { - fitness[j] = 1 / ((double) fitness[j]) + x[j % objectives] + x[(j + 1) % objectives]; + fitness[j] = 1 / fitness[j] + x[j % objectives] + x[(j + 1) % objectives]; } } ((AbstractEAIndividual) pop.get(i)).setFitness(fitness); diff --git a/src/eva2/optimization/tools/TestingDArea.java b/src/eva2/optimization/tools/TestingDArea.java index 9078de13..3f65e446 100644 --- a/src/eva2/optimization/tools/TestingDArea.java +++ b/src/eva2/optimization/tools/TestingDArea.java @@ -49,7 +49,6 @@ public class TestingDArea { frame.pack(); frame.validate(); frame.setVisible(true); - frame.show(); } public static void main(String[] args) { diff --git a/src/eva2/problems/AbstractDynTransProblem.java b/src/eva2/problems/AbstractDynTransProblem.java index b1d42f34..a275739a 100644 --- a/src/eva2/problems/AbstractDynTransProblem.java +++ b/src/eva2/problems/AbstractDynTransProblem.java @@ -59,7 +59,7 @@ public abstract class AbstractDynTransProblem extends AbstractSynchronousOptimiz @Override public void evaluatePopulationEnd(Population population) { double delta = transLength(getCurrentProblemTime()); - if (isExtraPlot() == true) { + if (isExtraPlot()) { if (myplot != null) { // myplot.addGraph(0, 1); myplot.jump(); diff --git a/src/eva2/problems/AbstractMultiModalProblemKnown.java b/src/eva2/problems/AbstractMultiModalProblemKnown.java index d38a7dc7..d56d38bc 100644 --- a/src/eva2/problems/AbstractMultiModalProblemKnown.java +++ b/src/eva2/problems/AbstractMultiModalProblemKnown.java @@ -32,7 +32,7 @@ public abstract class AbstractMultiModalProblemKnown extends AbstractProblemDoub protected void cloneObjects(AbstractMultiModalProblemKnown b) { super.cloneObjects(b); if (b.listOfOptima != null) { - this.listOfOptima = (Population) ((Population) b.listOfOptima).clone(); + this.listOfOptima = (Population) b.listOfOptima.clone(); } ; this.globalOptimum = b.globalOptimum; @@ -57,7 +57,7 @@ public abstract class AbstractMultiModalProblemKnown extends AbstractProblemDoub ((InterfaceDataTypeDouble) this.template).setDoubleDataLength(this.problemDimension); ((InterfaceDataTypeDouble) this.template).setDoubleRange(makeRange()); for (int i = 0; i < population.getTargetSize(); i++) { - tmpIndy = (AbstractEAIndividual) ((AbstractEAIndividual) this.template).clone(); + tmpIndy = (AbstractEAIndividual) this.template.clone(); tmpIndy.init(this); population.add(tmpIndy); } @@ -147,7 +147,7 @@ public abstract class AbstractMultiModalProblemKnown extends AbstractProblemDoub */ protected void addOptimum(double[] point) { InterfaceDataTypeDouble tmpIndy; - tmpIndy = (InterfaceDataTypeDouble) ((AbstractEAIndividual) this.template).clone(); + tmpIndy = (InterfaceDataTypeDouble) this.template.clone(); tmpIndy.setDoubleGenotype(point); ((AbstractEAIndividual) tmpIndy).setFitness(evalUnnormalized(point)); if (((AbstractEAIndividual) tmpIndy).getFitness(0) >= globalOptimum) { diff --git a/src/eva2/problems/AbstractOptimizationProblem.java b/src/eva2/problems/AbstractOptimizationProblem.java index 2645cbb0..c5f18d7c 100644 --- a/src/eva2/problems/AbstractOptimizationProblem.java +++ b/src/eva2/problems/AbstractOptimizationProblem.java @@ -196,7 +196,7 @@ public abstract class AbstractOptimizationProblem implements InterfaceOptimizati population.clear(); for (int i = 0; i < population.getTargetSize(); i++) { - tmpIndy = (AbstractEAIndividual) ((AbstractEAIndividual) template).clone(); + tmpIndy = (AbstractEAIndividual) template.clone(); tmpIndy.init(prob); population.add(tmpIndy); } @@ -266,9 +266,9 @@ public abstract class AbstractOptimizationProblem implements InterfaceOptimizati if (o instanceof InterfaceAdditionalPopulationInformer) { switch (type) { case 0: // header - return ToolBox.appendArrays((String[]) dat, (String[]) ((InterfaceAdditionalPopulationInformer) o).getAdditionalDataHeader()); + return ToolBox.appendArrays((String[]) dat, ((InterfaceAdditionalPopulationInformer) o).getAdditionalDataHeader()); case 1: // info - return ToolBox.appendArrays((String[]) dat, (String[]) ((InterfaceAdditionalPopulationInformer) o).getAdditionalDataInfo()); + return ToolBox.appendArrays((String[]) dat, ((InterfaceAdditionalPopulationInformer) o).getAdditionalDataInfo()); case 2: // value return ToolBox.appendArrays(dat, ((InterfaceAdditionalPopulationInformer) o).getAdditionalDataValue(pop)); default: @@ -321,7 +321,7 @@ public abstract class AbstractOptimizationProblem implements InterfaceOptimizati if (pop.size() > 100) { // for efficiency reasons... maybeFiltered = maybeFiltered.filterByFitness(hist.getUpperBound(), fitCrit); } - Population sols = PostProcess.clusterBestUpdateHistogram((Population) maybeFiltered, this, hist, fitCrit, getDefaultAccuracy()); + Population sols = PostProcess.clusterBestUpdateHistogram(maybeFiltered, this, hist, fitCrit, getDefaultAccuracy()); } vals = new Object[]{solStr, hist, hist.getScore()}; } else { diff --git a/src/eva2/problems/AbstractProblemInteger.java b/src/eva2/problems/AbstractProblemInteger.java index 7eb5695a..63416f90 100644 --- a/src/eva2/problems/AbstractProblemInteger.java +++ b/src/eva2/problems/AbstractProblemInteger.java @@ -32,7 +32,7 @@ public abstract class AbstractProblemInteger extends AbstractOptimizationProblem template = (AbstractEAIndividual) o.template.clone(); } if (o.bestIndividuum != null) { - bestIndividuum = (AbstractEAIndividual) ((AbstractEAIndividual) o.bestIndividuum).clone(); + bestIndividuum = (AbstractEAIndividual) o.bestIndividuum.clone(); } this.problemDimension = o.problemDimension; } @@ -137,6 +137,6 @@ public abstract class AbstractProblemInteger extends AbstractOptimizationProblem * @param indy The EAIndividual type */ public void setIndividualTemplate(AbstractEAIndividual indy) { - this.template = (AbstractEAIndividual) indy; + this.template = indy; } } \ No newline at end of file diff --git a/src/eva2/problems/B1Problem.java b/src/eva2/problems/B1Problem.java index a616cc86..1e3c8cbe 100644 --- a/src/eva2/problems/B1Problem.java +++ b/src/eva2/problems/B1Problem.java @@ -36,7 +36,7 @@ public class B1Problem extends AbstractProblemBinary implements java.io.Serializ */ @Override public Object clone() { - return (Object) new B1Problem(this); + return new B1Problem(this); } /** diff --git a/src/eva2/problems/BKnapsackProblem.java b/src/eva2/problems/BKnapsackProblem.java index f3e7a630..f29ff100 100644 --- a/src/eva2/problems/BKnapsackProblem.java +++ b/src/eva2/problems/BKnapsackProblem.java @@ -148,7 +148,7 @@ public class BKnapsackProblem extends AbstractProblemBinary implements java.io.S */ @Override public Object clone() { - return (Object) new BKnapsackProblem(this); + return new BKnapsackProblem(this); } /** diff --git a/src/eva2/problems/ExternalRuntimeProblem.java b/src/eva2/problems/ExternalRuntimeProblem.java index a79a3605..c4721773 100644 --- a/src/eva2/problems/ExternalRuntimeProblem.java +++ b/src/eva2/problems/ExternalRuntimeProblem.java @@ -77,11 +77,11 @@ public class ExternalRuntimeProblem extends AbstractOptimizationProblem public ExternalRuntimeProblem(ExternalRuntimeProblem b) { //AbstractOptimizationProblem if (b.template != null) { - this.template = (AbstractEAIndividual) ((AbstractEAIndividual) b.template).clone(); + this.template = (AbstractEAIndividual) b.template.clone(); } //ExternalRuntimeProblem if (b.bestIndividuum != null) { - this.bestIndividuum = (AbstractEAIndividual) ((AbstractEAIndividual) b.bestIndividuum).clone(); + this.bestIndividuum = (AbstractEAIndividual) b.bestIndividuum.clone(); } this.problemDimension = b.problemDimension; this.command = b.command; @@ -110,7 +110,7 @@ public class ExternalRuntimeProblem extends AbstractOptimizationProblem */ @Override public Object clone() { - return (Object) new ExternalRuntimeProblem(this); + return new ExternalRuntimeProblem(this); } /** diff --git a/src/eva2/problems/F10Problem.java b/src/eva2/problems/F10Problem.java index 0d1e4a23..2a06429f 100644 --- a/src/eva2/problems/F10Problem.java +++ b/src/eva2/problems/F10Problem.java @@ -31,7 +31,7 @@ public class F10Problem extends AbstractProblemDoubleOffset implements Interface */ @Override public Object clone() { - return (Object) new F10Problem(this); + return new F10Problem(this); } /** diff --git a/src/eva2/problems/F11Problem.java b/src/eva2/problems/F11Problem.java index 55f3064e..80ef994c 100644 --- a/src/eva2/problems/F11Problem.java +++ b/src/eva2/problems/F11Problem.java @@ -29,7 +29,7 @@ public class F11Problem extends AbstractProblemDoubleOffset implements Interface */ @Override public Object clone() { - return (Object) new F11Problem(this); + return new F11Problem(this); } /** diff --git a/src/eva2/problems/F12Problem.java b/src/eva2/problems/F12Problem.java index 13327ad6..79c38cb2 100644 --- a/src/eva2/problems/F12Problem.java +++ b/src/eva2/problems/F12Problem.java @@ -26,7 +26,7 @@ public class F12Problem extends AbstractProblemDoubleOffset implements Serializa */ @Override public Object clone() { - return (Object) new F12Problem(this); + return new F12Problem(this); } /** diff --git a/src/eva2/problems/F13Problem.java b/src/eva2/problems/F13Problem.java index f9963cf9..5b7a3ef4 100644 --- a/src/eva2/problems/F13Problem.java +++ b/src/eva2/problems/F13Problem.java @@ -33,7 +33,7 @@ public class F13Problem extends AbstractProblemDoubleOffset implements Interface */ @Override public Object clone() { - return (Object) new F13Problem(this); + return new F13Problem(this); } @Override diff --git a/src/eva2/problems/F14Problem.java b/src/eva2/problems/F14Problem.java index b40b8404..6e48cd24 100644 --- a/src/eva2/problems/F14Problem.java +++ b/src/eva2/problems/F14Problem.java @@ -28,7 +28,7 @@ public class F14Problem extends AbstractProblemDoubleOffset implements Interface */ @Override public Object clone() { - return (Object) new F14Problem(this); + return new F14Problem(this); } @Override diff --git a/src/eva2/problems/F2Problem.java b/src/eva2/problems/F2Problem.java index dccb3595..115956e4 100644 --- a/src/eva2/problems/F2Problem.java +++ b/src/eva2/problems/F2Problem.java @@ -31,7 +31,7 @@ public class F2Problem extends AbstractProblemDoubleOffset implements InterfaceL */ @Override public Object clone() { - return (Object) new F2Problem(this); + return new F2Problem(this); } /** @@ -122,7 +122,7 @@ public class F2Problem extends AbstractProblemDoubleOffset implements InterfaceL public double getLocalSearchStepFunctionCallEquivalent() { double cost = 1; if (this.localSearchOptimizer instanceof GradientDescentAlgorithm) { - cost = ((GradientDescentAlgorithm) localSearchOptimizer).getIterations(); + cost = localSearchOptimizer.getIterations(); } return cost; } diff --git a/src/eva2/problems/F3Problem.java b/src/eva2/problems/F3Problem.java index dc77822c..06a9c1dd 100644 --- a/src/eva2/problems/F3Problem.java +++ b/src/eva2/problems/F3Problem.java @@ -24,7 +24,7 @@ public class F3Problem extends AbstractProblemDoubleOffset implements java.io.Se */ @Override public Object clone() { - return (Object) new F3Problem(this); + return new F3Problem(this); } /** diff --git a/src/eva2/problems/F4Problem.java b/src/eva2/problems/F4Problem.java index 51f4fee9..b4009d33 100644 --- a/src/eva2/problems/F4Problem.java +++ b/src/eva2/problems/F4Problem.java @@ -27,7 +27,7 @@ public class F4Problem extends AbstractProblemDoubleOffset implements Serializab */ @Override public Object clone() { - return (Object) new F4Problem(this); + return new F4Problem(this); } /** diff --git a/src/eva2/problems/F5Problem.java b/src/eva2/problems/F5Problem.java index 24a93879..fff37b6b 100644 --- a/src/eva2/problems/F5Problem.java +++ b/src/eva2/problems/F5Problem.java @@ -26,7 +26,7 @@ public class F5Problem extends AbstractProblemDoubleOffset implements Serializab */ @Override public Object clone() { - return (Object) new F5Problem(this); + return new F5Problem(this); } /** diff --git a/src/eva2/problems/F6Problem.java b/src/eva2/problems/F6Problem.java index 44c307f0..a3cb68a7 100644 --- a/src/eva2/problems/F6Problem.java +++ b/src/eva2/problems/F6Problem.java @@ -39,7 +39,7 @@ public class F6Problem extends AbstractProblemDoubleOffset */ @Override public Object clone() { - return (Object) new F6Problem(this); + return new F6Problem(this); } /** @@ -170,7 +170,7 @@ public class F6Problem extends AbstractProblemDoubleOffset public double getLocalSearchStepFunctionCallEquivalent() { double cost = 1; if (this.localSearchOptimizer instanceof GradientDescentAlgorithm) { - cost = ((GradientDescentAlgorithm) localSearchOptimizer).getIterations(); + cost = localSearchOptimizer.getIterations(); } return cost; } diff --git a/src/eva2/problems/F7Problem.java b/src/eva2/problems/F7Problem.java index bdb9d172..d22033f8 100644 --- a/src/eva2/problems/F7Problem.java +++ b/src/eva2/problems/F7Problem.java @@ -42,7 +42,7 @@ public class F7Problem extends AbstractProblemDoubleOffset implements Serializab */ @Override public Object clone() { - return (Object) new F7Problem(this); + return new F7Problem(this); } /** diff --git a/src/eva2/problems/F8Problem.java b/src/eva2/problems/F8Problem.java index ffc60888..027c2e1b 100644 --- a/src/eva2/problems/F8Problem.java +++ b/src/eva2/problems/F8Problem.java @@ -52,7 +52,7 @@ public class F8Problem extends AbstractProblemDoubleOffset */ @Override public Object clone() { - return (Object) new F8Problem(this); + return new F8Problem(this); } /** diff --git a/src/eva2/problems/F9Problem.java b/src/eva2/problems/F9Problem.java index 1fbc900c..7c015655 100644 --- a/src/eva2/problems/F9Problem.java +++ b/src/eva2/problems/F9Problem.java @@ -24,7 +24,7 @@ public class F9Problem extends AbstractProblemDoubleOffset implements java.io.Se */ @Override public Object clone() { - return (Object) new F9Problem(this); + return new F9Problem(this); } /** diff --git a/src/eva2/problems/FLensProblem.java b/src/eva2/problems/FLensProblem.java index 0434e476..1f8c1c35 100644 --- a/src/eva2/problems/FLensProblem.java +++ b/src/eva2/problems/FLensProblem.java @@ -198,11 +198,11 @@ public class FLensProblem extends AbstractOptimizationProblem public FLensProblem(FLensProblem b) { //AbstractOptimizationProblem if (b.template != null) { - this.template = (AbstractEAIndividual) ((AbstractEAIndividual) b.template).clone(); + this.template = (AbstractEAIndividual) b.template.clone(); } //FLensProblem if (b.overallBest != null) { - this.overallBest = (AbstractEAIndividual) ((AbstractEAIndividual) b.overallBest).clone(); + this.overallBest = (AbstractEAIndividual) b.overallBest.clone(); } this.problemDimension = b.problemDimension; this.noise = b.noise; @@ -216,7 +216,7 @@ public class FLensProblem extends AbstractOptimizationProblem @Override public Object clone() { - return (Object) new FLensProblem(this); + return new FLensProblem(this); } /** @@ -351,7 +351,7 @@ public class FLensProblem extends AbstractOptimizationProblem // Here the thickness of the middle segment of the lens is added to the fitness // to permit the optimization to reduce the overall thickness of the lens if (this.useMaterialConst) { - fitness += x[(int) (x.length / 2)]; + fitness += x[(x.length / 2)]; } ret[0] = fitness; diff --git a/src/eva2/problems/FM0Problem.java b/src/eva2/problems/FM0Problem.java index 45857843..b7ff5553 100644 --- a/src/eva2/problems/FM0Problem.java +++ b/src/eva2/problems/FM0Problem.java @@ -41,7 +41,7 @@ public class FM0Problem extends AbstractMultiModalProblemKnown implements Interf */ @Override public Object clone() { - return (Object) new FM0Problem(this); + return new FM0Problem(this); } /** diff --git a/src/eva2/problems/I1Problem.java b/src/eva2/problems/I1Problem.java index 1b1bc235..aad09162 100644 --- a/src/eva2/problems/I1Problem.java +++ b/src/eva2/problems/I1Problem.java @@ -24,7 +24,7 @@ public class I1Problem extends AbstractProblemInteger implements java.io.Seriali */ @Override public Object clone() { - return (Object) new I1Problem(this); + return new I1Problem(this); } /** diff --git a/src/eva2/problems/MatlabEvalMediator.java b/src/eva2/problems/MatlabEvalMediator.java index 5e3c80ab..5e98b93e 100644 --- a/src/eva2/problems/MatlabEvalMediator.java +++ b/src/eva2/problems/MatlabEvalMediator.java @@ -149,7 +149,6 @@ public class MatlabEvalMediator { } catch (Exception e) { } } - ; k++; if ((k % mod) == 0) { logMPOrSysOut("MEM waiting for JE to ask... (" + mod + ") " + getState()); diff --git a/src/eva2/problems/MatlabProblem.java b/src/eva2/problems/MatlabProblem.java index 8c021c35..ee9e7d65 100644 --- a/src/eva2/problems/MatlabProblem.java +++ b/src/eva2/problems/MatlabProblem.java @@ -281,7 +281,7 @@ public class MatlabProblem extends AbstractOptimizationProblem implements Interf public void log(String str) { if (dos != null) { - dos.print((String) str); + dos.print(str); dos.flush(); } } @@ -362,7 +362,7 @@ public class MatlabProblem extends AbstractOptimizationProblem implements Interf } else { handler.setMatlabProblem(this); handler.setFinished(false); - runnable = OptimizerFactory.getOptRunnable(optType, (AbstractOptimizationProblem) this, outputFilePrefix); + runnable = OptimizerFactory.getOptRunnable(optType, this, outputFilePrefix); log("in MP optimize B\n"); log("Setting text listener, verbo " + verbosityLevel + "\n"); runnable.setTextListener(this); diff --git a/src/eva2/problems/MatlabProblemDataTypeEnum.java b/src/eva2/problems/MatlabProblemDataTypeEnum.java index 08678a24..d24b7aeb 100644 --- a/src/eva2/problems/MatlabProblemDataTypeEnum.java +++ b/src/eva2/problems/MatlabProblemDataTypeEnum.java @@ -1,5 +1,5 @@ package eva2.problems; public enum MatlabProblemDataTypeEnum { - typeDouble, typeBinary, typeInteger; + typeDouble, typeBinary, typeInteger } diff --git a/src/eva2/problems/PSymbolicRegression.java b/src/eva2/problems/PSymbolicRegression.java index e0b3b38a..7b1bab2d 100644 --- a/src/eva2/problems/PSymbolicRegression.java +++ b/src/eva2/problems/PSymbolicRegression.java @@ -46,11 +46,11 @@ public class PSymbolicRegression extends AbstractOptimizationProblem implements public PSymbolicRegression(PSymbolicRegression b) { //AbstractOptimizationProblem if (b.template != null) { - this.template = (AbstractEAIndividual) ((AbstractEAIndividual) b.template).clone(); + this.template = (AbstractEAIndividual) b.template.clone(); } //F1Problem if (b.overallBestIndividuum != null) { - this.overallBestIndividuum = (AbstractEAIndividual) ((AbstractEAIndividual) b.overallBestIndividuum).clone(); + this.overallBestIndividuum = (AbstractEAIndividual) b.overallBestIndividuum.clone(); } if (b.gpArea != null) { this.gpArea = (GPArea) b.gpArea.clone(); @@ -87,7 +87,7 @@ public class PSymbolicRegression extends AbstractOptimizationProblem implements */ @Override public Object clone() { - return (Object) new PSymbolicRegression(this); + return new PSymbolicRegression(this); } /** diff --git a/src/eva2/problems/TF1Problem.java b/src/eva2/problems/TF1Problem.java index da334a3c..970ed57d 100644 --- a/src/eva2/problems/TF1Problem.java +++ b/src/eva2/problems/TF1Problem.java @@ -40,7 +40,7 @@ public class TF1Problem extends AbstractMultiObjectiveOptimizationProblem implem public TF1Problem(TF1Problem b) { //AbstractOptimizationProblem if (b.template != null) { - this.template = (AbstractEAIndividual) ((AbstractEAIndividual) b.template).clone(); + this.template = (AbstractEAIndividual) b.template.clone(); } //AbstractMultiObjectiveOptimizationProblem if (b.mosoConverter != null) { @@ -81,7 +81,7 @@ public class TF1Problem extends AbstractMultiObjectiveOptimizationProblem implem */ @Override public Object clone() { - return (Object) new TF1Problem(this); + return new TF1Problem(this); } /** diff --git a/src/eva2/problems/regression/RFKoza_GPI_10_1.java b/src/eva2/problems/regression/RFKoza_GPI_10_1.java index 646a3467..956b37d6 100644 --- a/src/eva2/problems/regression/RFKoza_GPI_10_1.java +++ b/src/eva2/problems/regression/RFKoza_GPI_10_1.java @@ -19,7 +19,7 @@ public class RFKoza_GPI_10_1 implements InterfaceRegressionFunction, java.io.Ser @Override public Object clone() { - return (Object) new RFKoza_GPI_10_1(this); + return new RFKoza_GPI_10_1(this); } /** diff --git a/src/eva2/problems/regression/RFKoza_GPI_10_2.java b/src/eva2/problems/regression/RFKoza_GPI_10_2.java index c09813cb..9698a5c2 100644 --- a/src/eva2/problems/regression/RFKoza_GPI_10_2.java +++ b/src/eva2/problems/regression/RFKoza_GPI_10_2.java @@ -19,7 +19,7 @@ public class RFKoza_GPI_10_2 implements InterfaceRegressionFunction, java.io.Ser @Override public Object clone() { - return (Object) new RFKoza_GPI_10_2(this); + return new RFKoza_GPI_10_2(this); } /** diff --git a/src/eva2/problems/regression/RFKoza_GPI_7_3.java b/src/eva2/problems/regression/RFKoza_GPI_7_3.java index 50e980d9..29e7b1bb 100644 --- a/src/eva2/problems/regression/RFKoza_GPI_7_3.java +++ b/src/eva2/problems/regression/RFKoza_GPI_7_3.java @@ -19,7 +19,7 @@ public class RFKoza_GPI_7_3 implements InterfaceRegressionFunction, java.io.Seri @Override public Object clone() { - return (Object) new RFKoza_GPI_7_3(this); + return new RFKoza_GPI_7_3(this); } /** diff --git a/src/eva2/problems/regression/RFKoza_GPI_7_3_extended.java b/src/eva2/problems/regression/RFKoza_GPI_7_3_extended.java index b7b7da48..547f1f16 100644 --- a/src/eva2/problems/regression/RFKoza_GPI_7_3_extended.java +++ b/src/eva2/problems/regression/RFKoza_GPI_7_3_extended.java @@ -19,7 +19,7 @@ public class RFKoza_GPI_7_3_extended implements InterfaceRegressionFunction, jav @Override public Object clone() { - return (Object) new RFKoza_GPI_7_3_extended(this); + return new RFKoza_GPI_7_3_extended(this); } /** diff --git a/src/eva2/problems/regression/RFRaidl_F1.java b/src/eva2/problems/regression/RFRaidl_F1.java index c58f1145..48244e53 100644 --- a/src/eva2/problems/regression/RFRaidl_F1.java +++ b/src/eva2/problems/regression/RFRaidl_F1.java @@ -19,7 +19,7 @@ public class RFRaidl_F1 implements InterfaceRegressionFunction, java.io.Serializ @Override public Object clone() { - return (Object) new RFRaidl_F1(this); + return new RFRaidl_F1(this); } /** diff --git a/src/eva2/problems/regression/RFRaidl_F2.java b/src/eva2/problems/regression/RFRaidl_F2.java index 1a7b86e4..b366c015 100644 --- a/src/eva2/problems/regression/RFRaidl_F2.java +++ b/src/eva2/problems/regression/RFRaidl_F2.java @@ -19,7 +19,7 @@ public class RFRaidl_F2 implements InterfaceRegressionFunction, java.io.Serializ @Override public Object clone() { - return (Object) new RFRaidl_F2(this); + return new RFRaidl_F2(this); } /** diff --git a/src/eva2/problems/regression/RFRaidl_F3.java b/src/eva2/problems/regression/RFRaidl_F3.java index b1b2bf3d..69b8a7d2 100644 --- a/src/eva2/problems/regression/RFRaidl_F3.java +++ b/src/eva2/problems/regression/RFRaidl_F3.java @@ -19,7 +19,7 @@ public class RFRaidl_F3 implements InterfaceRegressionFunction, java.io.Serializ @Override public Object clone() { - return (Object) new RFRaidl_F3(this); + return new RFRaidl_F3(this); } /** diff --git a/src/eva2/tools/BasicResourceLoader.java b/src/eva2/tools/BasicResourceLoader.java index b8ce3700..a07c728b 100644 --- a/src/eva2/tools/BasicResourceLoader.java +++ b/src/eva2/tools/BasicResourceLoader.java @@ -461,13 +461,13 @@ public class BasicResourceLoader implements ResourceLoader { while ((ze = zis.getNextEntry()) != null) { if (ze.getName().equals(internalArchivePath)) { - b = new byte[(int) size]; + b = new byte[size]; int rb = 0; int chunk = 0; - while (((int) size - rb) > 0) { - chunk = zis.read(b, rb, (int) size - rb); + while ((size - rb) > 0) { + chunk = zis.read(b, rb, size - rb); if (chunk == -1) { break; @@ -535,8 +535,8 @@ public class BasicResourceLoader implements ResourceLoader { int chunk = 0; try { - while (((int) size - rb) > 0) { - chunk = bis.read(b, rb, (int) size - rb); + while ((size - rb) > 0) { + chunk = bis.read(b, rb, size - rb); if (chunk == -1) { break; @@ -567,13 +567,13 @@ public class BasicResourceLoader implements ResourceLoader { BufferedInputStream bis = new BufferedInputStream(stream); try { - int size = (int) bis.available(); + int size = bis.available(); byte[] b = new byte[size]; int rb = 0; int chunk = 0; - while (((int) size - rb) > 0) { - chunk = bis.read(b, rb, (int) size - rb); + while ((size - rb) > 0) { + chunk = bis.read(b, rb, size - rb); if (chunk == -1) { break; diff --git a/src/eva2/tools/EVAHELP.java b/src/eva2/tools/EVAHELP.java index 8aea7946..4b89c86e 100644 --- a/src/eva2/tools/EVAHELP.java +++ b/src/eva2/tools/EVAHELP.java @@ -108,12 +108,12 @@ public class EVAHELP { public static void freeMemory() { Runtime currR = Runtime.getRuntime(); long freeM = currR.freeMemory(); - freeM = (long) (freeM / 1024); + freeM = freeM / 1024; //System.out.println("Available memory : "+freeM+" Kbytes"); System.gc(); currR = Runtime.getRuntime(); freeM = currR.freeMemory(); - freeM = (long) (freeM / 1024); + freeM = freeM / 1024; //System.out.println("after gc:Available memory : "+freeM+" bytes"); } diff --git a/src/eva2/tools/JarResources.java b/src/eva2/tools/JarResources.java index 682e498a..3bba8361 100644 --- a/src/eva2/tools/JarResources.java +++ b/src/eva2/tools/JarResources.java @@ -96,11 +96,11 @@ public final class JarResources { if (size == -1) { size = ((Integer) htSizes.get(ze.getName())).intValue(); } - byte[] b = new byte[(int) size]; + byte[] b = new byte[size]; int rb = 0; int chunk = 0; - while (((int) size - rb) > 0) { - chunk = zis.read(b, rb, (int) size - rb); + while ((size - rb) > 0) { + chunk = zis.read(b, rb, size - rb); if (chunk == -1) { break; } diff --git a/src/eva2/tools/KMEANSJAVA.java b/src/eva2/tools/KMEANSJAVA.java index 07760c6a..b24234cf 100644 --- a/src/eva2/tools/KMEANSJAVA.java +++ b/src/eva2/tools/KMEANSJAVA.java @@ -51,7 +51,7 @@ public class KMEANSJAVA { int counter = 0; c = new double[K][]; for (int i = 0; i < K; i++) { - c[i] = (double[]) samples[i].clone(); + c[i] = samples[i].clone(); } indices = new int[samples.length]; while (counter++ < iterations) { diff --git a/src/eva2/tools/MultirunRefiner.java b/src/eva2/tools/MultirunRefiner.java index a1cbcb5d..0fea521d 100644 --- a/src/eva2/tools/MultirunRefiner.java +++ b/src/eva2/tools/MultirunRefiner.java @@ -284,7 +284,7 @@ public class MultirunRefiner { System.out.println(lineCnt + " lines parsed. " + numExp + " experiments with " + result.size() + " events each."); for (int i = 0; i < result.size(); i++) { - mean = ((double[]) (result.get(i))); + mean = result.get(i); for (int k = 0; k < mean.length; k++) { mean[k] /= numExp; } @@ -300,7 +300,7 @@ public class MultirunRefiner { StringBuffer sbuf = new StringBuffer("Event\tBest\tMean\tWorst\n"); for (int i = 0; i < result.size(); i++) { - mean = ((double[]) (result.get(i))); + mean = result.get(i); sbuf.append(i + "\t" + mean[0] + "\t" + mean[1] + "\t" + mean[2] + "\n"); } return sbuf.toString(); diff --git a/src/eva2/tools/PairComparator.java b/src/eva2/tools/PairComparator.java index b469cbf3..9eb47e47 100644 --- a/src/eva2/tools/PairComparator.java +++ b/src/eva2/tools/PairComparator.java @@ -12,7 +12,7 @@ public class PairComparator implements Comparator> { * based on the tail. */ public PairComparator(boolean useHd) { - useHead = useHead; + useHead = useHd; } /** @@ -23,14 +23,14 @@ public class PairComparator implements Comparator> { */ @Override public int compare(Pair o1, Pair o2) { - Pair p1 = (Pair) o1; - Pair p2 = (Pair) o2; + Pair p1 = o1; + Pair p2 = o2; double d1, d2; try { d1 = BeanInspector.toDouble(useHead ? p1.head() : p1.tail()); d2 = BeanInspector.toDouble(useHead ? p2.head() : p2.tail()); } catch (IllegalArgumentException e) { - System.err.println("Error, mismatching types, thus uncomparable Pairs: " + p1.toString() + " / " + p2.toString()); + System.err.println("Error, mismatching types, thus non-comparable Pairs: " + p1.toString() + " / " + p2.toString()); return 0; } diff --git a/src/eva2/tools/ReflectPackage.java b/src/eva2/tools/ReflectPackage.java index ac2ba42d..e3ae0c44 100644 --- a/src/eva2/tools/ReflectPackage.java +++ b/src/eva2/tools/ReflectPackage.java @@ -189,11 +189,7 @@ public class ReflectPackage { // subpackages are hit here as well! if (!includeSubs) { // check if the class belongs to a subpackage int lastDash = jarEntryName.lastIndexOf('/'); - if (lastDash > packageName.length() + 1) { - isInSubPackage = true; - } else { - isInSubPackage = false; - } + isInSubPackage = lastDash > packageName.length() + 1; } if (includeSubs || !isInSubPackage) { // take the right ones String clsName = jarEntryName.replace("/", "."); diff --git a/src/eva2/tools/SelectedTag.java b/src/eva2/tools/SelectedTag.java index c2f3f155..3c07ccbf 100644 --- a/src/eva2/tools/SelectedTag.java +++ b/src/eva2/tools/SelectedTag.java @@ -12,7 +12,7 @@ public class SelectedTag implements java.io.Serializable { @Override public Object clone() { SelectedTag result = new SelectedTag(this.selectedId, this.tags); - return (Object) result; + return result; } /** diff --git a/src/eva2/tools/Serializer.java b/src/eva2/tools/Serializer.java index 12d361f7..d50ecf9d 100644 --- a/src/eva2/tools/Serializer.java +++ b/src/eva2/tools/Serializer.java @@ -41,7 +41,7 @@ public class Serializer { try { Object objToStore = o; if (serializeInMem) { - objToStore = new SerializedObject((Object) o); + objToStore = new SerializedObject(o); } // I don't care! } catch (java.io.NotSerializableException ex) { @@ -166,7 +166,7 @@ public class Serializer { Object serializedObject = null; try { - serializedObject = (Object) load(inputStream); + serializedObject = load(inputStream); } catch (InvalidClassException ex) { LOGGER.log(Level.WARNING, "Could not load object file.", ex); } catch (ClassNotFoundException ex) { diff --git a/src/eva2/tools/TXTFileFilter.java b/src/eva2/tools/TXTFileFilter.java index a7dcb3ad..aa2f6ffa 100644 --- a/src/eva2/tools/TXTFileFilter.java +++ b/src/eva2/tools/TXTFileFilter.java @@ -35,12 +35,8 @@ public class TXTFileFilter extends FileFilter { return true; } String fileName = file.getName(); - if ((fileName.substring(fileName.lastIndexOf('.') + 1, fileName.length()).equals("TXT")) || - (fileName.substring(fileName.lastIndexOf('.') + 1, fileName.length()).equals("txt"))) { - return true; - } else { - return false; - } + return (fileName.substring(fileName.lastIndexOf('.') + 1, fileName.length()).equals("TXT")) || + (fileName.substring(fileName.lastIndexOf('.') + 1, fileName.length()).equals("txt")); } @Override diff --git a/src/eva2/tools/ToolBoxGui.java b/src/eva2/tools/ToolBoxGui.java index 0ba416ef..500c480a 100644 --- a/src/eva2/tools/ToolBoxGui.java +++ b/src/eva2/tools/ToolBoxGui.java @@ -39,7 +39,7 @@ public class ToolBoxGui { * @see JOptionPane */ public static String getInputPaneInitialVal(Component parent, String title, String message, String initialVal, int msgType, int optType) { - JOptionPane jop = new JOptionPane(message, msgType, optType, (Icon) null); + JOptionPane jop = new JOptionPane(message, msgType, optType, null); jop.setWantsInput(true); // its a mess with these initial values jop.setInputValue(initialVal); // this I expected to work diff --git a/src/eva2/tools/chart2d/Chart2DDPointIconContent.java b/src/eva2/tools/chart2d/Chart2DDPointIconContent.java index a30ea84b..737b182a 100644 --- a/src/eva2/tools/chart2d/Chart2DDPointIconContent.java +++ b/src/eva2/tools/chart2d/Chart2DDPointIconContent.java @@ -96,6 +96,5 @@ public class Chart2DDPointIconContent implements InterfaceDPointWithContent, DPo newFrame.pack(); newFrame.validate(); newFrame.setVisible(true); - newFrame.show(); } } \ No newline at end of file diff --git a/src/eva2/tools/chart2d/DContainer.java b/src/eva2/tools/chart2d/DContainer.java index 4e2b995e..7350b66d 100644 --- a/src/eva2/tools/chart2d/DContainer.java +++ b/src/eva2/tools/chart2d/DContainer.java @@ -76,7 +76,7 @@ public class DContainer extends DComponent implements DParent { return; } if (e instanceof DParent) { - DParent he = (DParent) e, me = (DParent) this; + DParent he = (DParent) e, me = this; if (he == me) { throw new IllegalArgumentException("Adding DParent to itself"); @@ -157,11 +157,11 @@ public class DContainer extends DComponent implements DParent { public DElement getDElement(String key) { int index = -1; for (int i = 0; index == -1 && i < keys.size(); i++) { - if (((String) keys.get(i)).equals(key)) { + if (keys.get(i).equals(key)) { index = i; } } - return (index < keys.size()) ? (DElement) elements.get(index) : (DElement) null; + return (index < keys.size()) ? elements.get(index) : null; } // implementing DComponent: @@ -176,7 +176,7 @@ public class DContainer extends DComponent implements DParent { public void paint(DMeasures m) { DElement e; for (int i = 0; i < elements.size(); i++) { - e = (DElement) elements.elementAt(i); + e = elements.elementAt(i); if (e.isVisible() && !m.getSlimRectangle().hasEmptyIntersection(e.getRectangle())) { m.g.setColor(DEFAULT_COLOR); e.paint(m); @@ -203,7 +203,7 @@ public class DContainer extends DComponent implements DParent { @Override public void setColor(Color c) { for (int i = 0; i < elements.size(); i++) { - ((DElement) elements.get(i)).setColor(c); + elements.get(i).setColor(c); } super.setColor(c); } @@ -226,7 +226,7 @@ public class DContainer extends DComponent implements DParent { public void restoreBorder() { DBorder b = new DBorder(); for (int i = 0; i < elements.size(); i++) { - b.insert(((DElement) elements.get(i)).getDBorder()); + b.insert(elements.get(i).getDBorder()); } setDBorder(b); } @@ -241,7 +241,7 @@ public class DContainer extends DComponent implements DParent { rectangle = DRectangle.getEmpty(); setDBorder(new DBorder()); for (int i = 0; i < elements.size(); i++) { - DElement elt = (DElement) elements.elementAt(i); + DElement elt = elements.elementAt(i); rectangle.insert(elt.getRectangle()); addDBorder(elt.getDBorder()); } diff --git a/src/eva2/tools/chart2d/DMeasures.java b/src/eva2/tools/chart2d/DMeasures.java index b5d55ab7..9f0b95a0 100644 --- a/src/eva2/tools/chart2d/DMeasures.java +++ b/src/eva2/tools/chart2d/DMeasures.java @@ -67,8 +67,8 @@ public class DMeasures implements Serializable { Point dp = new Point(); Dimension dim = getInner(); Insets insets = getInsets(); - dp.x = (int) (dim.width * (x - rect.x) / (double) rect.width) + insets.left; - dp.y = (int) (dim.height * (1 - (y - rect.y) / (double) rect.height)) + insets.top; + dp.x = (int) (dim.width * (x - rect.x) / rect.width) + insets.left; + dp.y = (int) (dim.height * (1 - (y - rect.y) / rect.height)) + insets.top; return dp; } diff --git a/src/eva2/tools/chart2d/DRectangle.java b/src/eva2/tools/chart2d/DRectangle.java index 8058cbc5..67035fff 100644 --- a/src/eva2/tools/chart2d/DRectangle.java +++ b/src/eva2/tools/chart2d/DRectangle.java @@ -99,10 +99,7 @@ public class DRectangle extends DComponent { if (p.x > x + width) { return false; } - if (p.y > y + height) { - return false; - } - return true; + return p.y <= y + height; } public double getHeight() { @@ -161,11 +158,7 @@ public class DRectangle extends DComponent { * @return */ private boolean contains(double ox, double oy) { - if ((ox < x) || (oy < y) || (ox > x + width) || (oy > y + height)) { - return false; - } else { - return true; - } + return !((ox < x) || (oy < y) || (ox > x + width) || (oy > y + height)); } public boolean contains(DRectangle rect) { @@ -178,10 +171,7 @@ public class DRectangle extends DComponent { if (!contains(rect.x, rect.y)) { return false; } - if (!contains(rect.x + rect.width, rect.y + rect.height)) { - return false; - } - return true; + return contains(rect.x + rect.width, rect.y + rect.height); } public boolean contains(double ox, double oy, double width, double heigth) { @@ -194,10 +184,7 @@ public class DRectangle extends DComponent { if (!contains(ox, oy)) { return false; } - if (!contains(ox + width, oy + height)) { - return false; - } - return true; + return contains(ox + width, oy + height); } public DRectangle getIntersection(DRectangle r) { @@ -340,10 +327,7 @@ public class DRectangle extends DComponent { if (r.width != width) { return false; } - if (r.height != height) { - return false; - } - return true; + return r.height == height; } public void setFillColor(Color fill_color) { diff --git a/src/eva2/tools/chart2d/ScaledBorder.java b/src/eva2/tools/chart2d/ScaledBorder.java index e180efc4..b109506e 100644 --- a/src/eva2/tools/chart2d/ScaledBorder.java +++ b/src/eva2/tools/chart2d/ScaledBorder.java @@ -468,11 +468,7 @@ public class ScaledBorder implements Border { } first = false; } - if (!suits) { - ok = false; - } else { - ok = true; - } + ok = suits; } if (src_dX < minimal_increment) { src_dX = minimal_increment; diff --git a/src/eva2/tools/chart2d/SlimRect.java b/src/eva2/tools/chart2d/SlimRect.java index ede181d2..62b0983c 100644 --- a/src/eva2/tools/chart2d/SlimRect.java +++ b/src/eva2/tools/chart2d/SlimRect.java @@ -31,11 +31,7 @@ public class SlimRect { * @return true if the given point lies within the rectangle, else false */ public boolean contains(double ox, double oy) { - if ((ox < x) || (oy < y) || (ox > x + width) || (oy > y + height)) { - return false; - } else { - return true; - } + return !((ox < x) || (oy < y) || (ox > x + width) || (oy > y + height)); } /** diff --git a/src/eva2/tools/math/BayNet.java b/src/eva2/tools/math/BayNet.java index c38da5ad..c32f6be0 100644 --- a/src/eva2/tools/math/BayNet.java +++ b/src/eva2/tools/math/BayNet.java @@ -770,7 +770,7 @@ public class BayNet { double result = 0.0; double Nijk = numberSetCorrectly(pop2, k, currentNode.getId()); if (Nijk > 0) { - result = (double) Nijk * Math.log((double) Nijk); + result = Nijk * Math.log(Nijk); } if (k == 1) { double prob = Nijk / (double) pop2.size(); diff --git a/src/eva2/tools/math/Mathematics.java b/src/eva2/tools/math/Mathematics.java index 4beeb5ba..b4fe44e8 100644 --- a/src/eva2/tools/math/Mathematics.java +++ b/src/eva2/tools/math/Mathematics.java @@ -428,10 +428,7 @@ public class Mathematics { * @return true if the vector lies within the range, else false */ public static boolean isInRange(double v, double lower, double upper) { - if (v < lower || (v > upper)) { - return false; - } - return true; + return !(v < lower || (v > upper)); } /** @@ -484,10 +481,7 @@ public class Mathematics { if (Double.isNaN(sum)) { return false; } - if (Math.abs(sum) < 0.000000000000000001) { - return false; - } - return true; + return Math.abs(sum) >= 0.000000000000000001; } /** @@ -569,7 +563,7 @@ public class Mathematics { public static double median(double[] x, boolean cloneX) { double[] in; if (cloneX) { - in = (double[]) x.clone(); + in = x.clone(); } else { in = x; } diff --git a/src/eva2/tools/math/RNG.java b/src/eva2/tools/math/RNG.java index aad048a4..aaff37e9 100644 --- a/src/eva2/tools/math/RNG.java +++ b/src/eva2/tools/math/RNG.java @@ -336,7 +336,7 @@ public class RNG { */ public static boolean flipCoin(double p) { // counter++; - return (randomDouble() < p ? true : false); + return (randomDouble() < p); } /** diff --git a/src/eva2/tools/math/StatisticUtils.java b/src/eva2/tools/math/StatisticUtils.java index 619057db..e2243a46 100644 --- a/src/eva2/tools/math/StatisticUtils.java +++ b/src/eva2/tools/math/StatisticUtils.java @@ -27,7 +27,7 @@ public class StatisticUtils { * @param y2 double vector 2 * @return the correlation coefficient */ - public final static double correlation(double y1[], double y2[]) { + public static double correlation(double y1[], double y2[]) { int i; double av1 = 0.0, av2 = 0.0, y11 = 0.0, y22 = 0.0, y12 = 0.0, c; @@ -124,7 +124,7 @@ public class StatisticUtils { * * @param a a double */ - public static final double log2(double a) { + public static double log2(double a) { return Math.log(a) / log2; } @@ -257,7 +257,7 @@ public class StatisticUtils { * @param c an integer value * @return c*log2(c) (but is careful to return 0 if c is 0) */ - public static final double xlogx(int c) { + public static double xlogx(int c) { if (c == 0) { return 0.0; @@ -271,7 +271,7 @@ public class StatisticUtils { * @param c an integer value * @return c*log2(c) (but is careful to return 0 if c is 0) */ - public static final double xlogx(double c) { + public static double xlogx(double c) { if (c == 0) { return 0.0; @@ -285,7 +285,7 @@ public class StatisticUtils { * @param a a double * @param b a double */ - public static final boolean eq(double a, double b) { + public static boolean eq(double a, double b) { return (a - b < SMALL) && (b - a < SMALL); } @@ -296,7 +296,7 @@ public class StatisticUtils { * @param a a double * @param b a double */ - public static final boolean smOrEq(double a, double b) { + public static boolean smOrEq(double a, double b) { return (a - b < SMALL); } @@ -307,7 +307,7 @@ public class StatisticUtils { * @param a a double * @param b a double */ - public static final boolean grOrEq(double a, double b) { + public static boolean grOrEq(double a, double b) { return (b - a < SMALL); } @@ -318,7 +318,7 @@ public class StatisticUtils { * @param a a double * @param b a double */ - public static final boolean sm(double a, double b) { + public static boolean sm(double a, double b) { return (b - a > SMALL); } @@ -329,7 +329,7 @@ public class StatisticUtils { * @param a a double * @param b a double */ - public static final boolean gr(double a, double b) { + public static boolean gr(double a, double b) { return (a - b > SMALL); } @@ -337,7 +337,7 @@ public class StatisticUtils { /** * returns root mean square error. */ - public static final double rmsError(double array1[], double array2[]) { + public static double rmsError(double array1[], double array2[]) { if ((array1 == null) || (array2 == null)) { return -1.0; } diff --git a/src/eva2/tools/math/interpolation/PolyInterpolation.java b/src/eva2/tools/math/interpolation/PolyInterpolation.java index 94087a46..cd823490 100644 --- a/src/eva2/tools/math/interpolation/PolyInterpolation.java +++ b/src/eva2/tools/math/interpolation/PolyInterpolation.java @@ -1,23 +1,5 @@ -/////////////////////////////////////////////////////////////////////////////// -// Filename: $RCSfile: PolyInterpolation.java,v $ -// Purpose: Some interpolation stuff. -// Language: Java -// Compiler: JDK 1.4 -// Authors: Joerg K. Wegner -// Version: $Revision: 1.1 $ -// $Date: 2003/07/22 19:25:30 $ -// $Author: wegnerj $ -// -// Copyright (c) Dept. Computer Architecture, University of Tuebingen, Germany -// -/////////////////////////////////////////////////////////////////////////////// - package eva2.tools.math.interpolation; -/*==========================================================================* - * IMPORTS - *==========================================================================*/ - /** * Defines the routines for the interpolation of data. */ @@ -26,10 +8,6 @@ public class PolyInterpolation { boolean sloppy = true; double[] polynomialCoefficients = null; - /*------------------------------------------------------------------------* - * constructor - *------------------------------------------------------------------------*/ - /** * Initializes this class. */ @@ -272,7 +250,7 @@ public class PolyInterpolation { PolynomialInterpolationResult result = new PolynomialInterpolationResult(); - dif = Math.abs(x - xa[1 - 1]); + dif = Math.abs(x - xa[01 - 1]); for (i = 1; i <= xa.length; i++) { if ((dift = Math.abs(x - xa[i - 1])) < dif) { ns = i; @@ -280,10 +258,8 @@ public class PolyInterpolation { } c[i] = ya[i - 1]; d[i] = ya[i - 1]; - //System.out.println("x"+xa[i-1]+" y"+ya[i-1]); } result.y = ya[ns - 1]; - //System.out.println("y="+result.y+" ns="+ns); ns--; for (m = 1; m < xa.length; m++) { for (i = 1; i <= xa.length - m; i++) { @@ -292,8 +268,7 @@ public class PolyInterpolation { w = c[i + 1] - d[i]; if ((den = ho - hp) == 0.0) { if (sloppy) { - System.out.println( - "Two identical x values. The values must be distinct."); + System.out.println("Two identical x values. The values must be distinct."); den = 1.0; } else { throw new InterpolationException("Two identical x values."); @@ -427,8 +402,4 @@ public class PolyInterpolation { } return cof; } -} - -/**************************************************************************** - * END OF FILE - ****************************************************************************/ \ No newline at end of file +} \ No newline at end of file diff --git a/src/eva2/tools/matlab/JMatLink.java b/src/eva2/tools/matlab/JMatLink.java index 568d15c1..ccc06ac0 100644 --- a/src/eva2/tools/matlab/JMatLink.java +++ b/src/eva2/tools/matlab/JMatLink.java @@ -1639,7 +1639,7 @@ public class JMatLink extends Thread { lockThreadB = true; - while (lockThreadB == true) { + while (lockThreadB) { synchronized (this) { @@ -1656,7 +1656,7 @@ public class JMatLink extends Thread { // System.out.println("JMatLink: thread awoke and passed lock"); - if (destroyJMatLinkB == true) { + if (destroyJMatLinkB) { break; } @@ -1682,7 +1682,7 @@ public class JMatLink extends Thread { synchronized (this) { - while (lockEngineB == true) { + while (lockEngineB) { try { // System.out.println("lockEngineLock locked"); @@ -1755,7 +1755,7 @@ public class JMatLink extends Thread { synchronized (this) { - while (lockWaitForValueB == true) { + while (lockWaitForValueB) { try { // System.out.println("lockWaitForValue locked");