Changeset 5208 for trunk/sources/HeuristicLab.Algorithms.NSGA2
- Timestamp:
- 01/04/11 06:17:50 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Algorithms.NSGA2/3.3/NSGA2MainLoop.cs
r5143 r5208 20 20 #endregion 21 21 22 using HeuristicLab.Common; 22 23 using HeuristicLab.Core; 23 24 using HeuristicLab.Data; … … 27 28 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 28 29 using HeuristicLab.Selection; 29 using HeuristicLab.Common;30 30 31 31 namespace HeuristicLab.Algorithms.NSGA2 { … … 97 97 Parameters.Add(new ValueLookupParameter<PercentValue>("MutationProbability", "The probability that the mutation operator is applied on a solution.")); 98 98 Parameters.Add(new ValueLookupParameter<IOperator>("Mutator", "The operator used to mutate solutions.")); 99 Parameters.Add(new ValueLookupParameter<IOperator>("Evaluator", "The operator used to evaluate solutions. "));99 Parameters.Add(new ValueLookupParameter<IOperator>("Evaluator", "The operator used to evaluate solutions. This operator is executed in parallel, if an engine is used which supports parallelization.")); 100 100 Parameters.Add(new ValueLookupParameter<IntValue>("MaximumGenerations", "The maximum number of generations which should be processed.")); 101 101 Parameters.Add(new ValueLookupParameter<VariableCollection>("Results", "The variable collection where results should be stored.")); … … 110 110 SubScopesProcessor subScopesProcessor1 = new SubScopesProcessor(); 111 111 ChildrenCreator childrenCreator = new ChildrenCreator(); 112 UniformSubScopesProcessor uniformSubScopesProcessor = new UniformSubScopesProcessor();112 UniformSubScopesProcessor uniformSubScopesProcessor1 = new UniformSubScopesProcessor(); 113 113 StochasticBranch crossoverStochasticBranch = new StochasticBranch(); 114 114 Placeholder crossover = new Placeholder(); … … 116 116 StochasticBranch mutationStochasticBranch = new StochasticBranch(); 117 117 Placeholder mutator = new Placeholder(); 118 SubScopesRemover subScopesRemover = new SubScopesRemover(); 119 UniformSubScopesProcessor uniformSubScopesProcessor2 = new UniformSubScopesProcessor(); 118 120 Placeholder evaluator = new Placeholder(); 119 SubScopesRemover subScopesRemover = new SubScopesRemover();120 121 MergingReducer mergingReducer = new MergingReducer(); 121 122 RankAndCrowdingSorter rankAndCrowdingSorter = new RankAndCrowdingSorter(); … … 156 157 mutator.OperatorParameter.ActualName = MutatorParameter.Name; 157 158 159 subScopesRemover.RemoveAllSubScopes = true; 160 161 uniformSubScopesProcessor2.Parallel.Value = true; 162 158 163 evaluator.Name = "Evaluator"; 159 164 evaluator.OperatorParameter.ActualName = EvaluatorParameter.Name; 160 161 subScopesRemover.RemoveAllSubScopes = true;162 165 163 166 rankAndCrowdingSorter.CrowdingDistanceParameter.ActualName = "CrowdingDistance"; … … 193 196 subScopesProcessor1.Operators.Add(childrenCreator); 194 197 subScopesProcessor1.Successor = mergingReducer; 195 childrenCreator.Successor = uniformSubScopesProcessor ;196 uniformSubScopesProcessor .Operator = crossoverStochasticBranch;197 uniformSubScopesProcessor .Successor = null;198 childrenCreator.Successor = uniformSubScopesProcessor1; 199 uniformSubScopesProcessor1.Operator = crossoverStochasticBranch; 200 uniformSubScopesProcessor1.Successor = uniformSubScopesProcessor2; 198 201 crossoverStochasticBranch.FirstBranch = crossover; 199 202 crossoverStochasticBranch.SecondBranch = noCrossover; … … 203 206 mutationStochasticBranch.FirstBranch = mutator; 204 207 mutationStochasticBranch.SecondBranch = null; 205 mutationStochasticBranch.Successor = evaluator;208 mutationStochasticBranch.Successor = subScopesRemover; 206 209 mutator.Successor = null; 207 evaluator.Successor = subScopesRemover;208 210 subScopesRemover.Successor = null; 211 uniformSubScopesProcessor2.Operator = evaluator; 212 uniformSubScopesProcessor2.Successor = null; 213 evaluator.Successor = null; 209 214 mergingReducer.Successor = rankAndCrowdingSorter; 210 215 rankAndCrowdingSorter.Successor = leftSelector;
Note: See TracChangeset
for help on using the changeset viewer.