Changeset 1238 for branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification/OffspringSelectionGP.cs
- Timestamp:
- 03/02/09 17:23:05 (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/CEDMA-Refactoring-Ticket419/HeuristicLab.GP.StructureIdentification/OffspringSelectionGP.cs
r1236 r1238 179 179 } 180 180 181 internal override IOperator CreateLoopCondition(IOperator loop) { 182 SequentialProcessor seq = new SequentialProcessor(); 183 seq.Name = "Loop Condition"; 184 LessThanComparator generationsComparator = new LessThanComparator(); 185 generationsComparator.GetVariableInfo("LeftSide").ActualName = "Generations"; 186 generationsComparator.GetVariableInfo("RightSide").ActualName = "MaxGenerations"; 187 generationsComparator.GetVariableInfo("Result").ActualName = "GenerationsCondition"; 188 189 LessThanComparator selPresComparator = new LessThanComparator(); 190 selPresComparator.GetVariableInfo("LeftSide").ActualName = "SelectionPressure"; 191 selPresComparator.GetVariableInfo("RightSide").ActualName = "SelectionPressureLimit"; 192 selPresComparator.GetVariableInfo("Result").ActualName = "SelectionPressureCondition"; 193 194 ConditionalBranch generationsCond = new ConditionalBranch(); 195 generationsCond.GetVariableInfo("Condition").ActualName = "GenerationsCondition"; 196 197 ConditionalBranch selPresCond = new ConditionalBranch(); 198 selPresCond.GetVariableInfo("Condition").ActualName = "SelectionPressureCondition"; 199 200 seq.AddSubOperator(generationsComparator); 201 seq.AddSubOperator(selPresComparator); 202 seq.AddSubOperator(generationsCond); 203 generationsCond.AddSubOperator(selPresCond); 204 selPresCond.AddSubOperator(loop); 205 206 return seq; 207 } 208 209 internal override IOperator CreateLoggingOperator() { 210 CombinedOperator loggingOperator = new CombinedOperator(); 211 loggingOperator.Name = "Logging"; 212 SequentialProcessor seq = new SequentialProcessor(); 213 214 DataCollector collector = new DataCollector(); 215 ItemList<StringData> names = collector.GetVariable("VariableNames").GetValue<ItemList<StringData>>(); 216 names.Add(new StringData("BestQuality")); 217 names.Add(new StringData("AverageQuality")); 218 names.Add(new StringData("WorstQuality")); 219 names.Add(new StringData("BestValidationQuality")); 220 names.Add(new StringData("AverageValidationQuality")); 221 names.Add(new StringData("WorstValidationQuality")); 222 names.Add(new StringData("EvaluatedSolutions")); 223 names.Add(new StringData("SelectionPressure")); 224 QualityLogger qualityLogger = new QualityLogger(); 225 QualityLogger validationQualityLogger = new QualityLogger(); 226 validationQualityLogger.Name = "ValidationQualityLogger"; 227 validationQualityLogger.GetVariableInfo("Quality").ActualName = "ValidationQuality"; 228 validationQualityLogger.GetVariableInfo("QualityLog").ActualName = "ValidationQualityLog"; 229 230 seq.AddSubOperator(collector); 231 seq.AddSubOperator(qualityLogger); 232 seq.AddSubOperator(validationQualityLogger); 233 234 loggingOperator.OperatorGraph.AddOperator(seq); 235 loggingOperator.OperatorGraph.InitialOperator = seq; 236 return loggingOperator; 237 } 238 239 181 240 public override IEditor CreateEditor() { 182 241 return new OffspringSelectionGpEditor(this);
Note: See TracChangeset
for help on using the changeset viewer.