Changeset 16899 for branches/2988_ModelsOfModels2/HeuristicLab.Algorithms.EMM/EMMMultyPointsMutatorNodeTypeSaving.cs
- Timestamp:
- 05/06/19 14:20:06 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2988_ModelsOfModels2/HeuristicLab.Algorithms.EMM/EMMMultyPointsMutatorNodeTypeSaving.cs
r16760 r16899 35 35 [StorableType("8A24C715-BEFD-4396-9264-31F949330B1A")] 36 36 public sealed class EMMMultyPointsMutatorNodeTypeSaving : SymbolicExpressionTreeManipulator { 37 private const string ModelSetParameterName = "Models"; 38 private const string ClusterNumberParameterName = "ClusterNumber"; 37 39 38 private const string MapParameterName = "Map"; 40 39 private const string MutationProbabilityParameterName = "MutationProbability"; 41 public ILookupParameter< ItemList<ISymbolicExpressionTree>> ModelSetParameter {42 get { return (ILookupParameter< ItemList<ISymbolicExpressionTree>>)Parameters[ModelSetParameterName]; }40 public ILookupParameter<EMMMapBase<ISymbolicExpressionTree>> MapParameter { 41 get { return (ILookupParameter<EMMMapBase<ISymbolicExpressionTree>>)Parameters[MapParameterName]; } 43 42 } 44 public ILookupParameter<ItemList<IntValue>> ClusterNumberParameter {45 get { return (ILookupParameter<ItemList<IntValue>>)Parameters[ClusterNumberParameterName]; }46 }43 public List<ISymbolicExpressionTree> ModelSet => MapParameter.ActualValue.ModelSet; 44 public List<int> ClusterNumber => MapParameter.ActualValue.ClusterNumber; 45 public List<List<int>> Map => MapParameter.ActualValue.Map; 47 46 48 public ILookupParameter<ItemList<ItemList<IntValue>>> MapParameter {49 get { return (ILookupParameter<ItemList<ItemList<IntValue>>>)Parameters[MapParameterName]; }50 }51 47 public ILookupParameter<PercentValue> MutationProbabilityParameter { 52 48 get { return (ILookupParameter<PercentValue>)Parameters[MutationProbabilityParameterName]; } 53 49 } 54 public ItemList<ISymbolicExpressionTree> ModelSet => ModelSetParameter.ActualValue; 55 public ItemList<IntValue> ClusterNumber => ClusterNumberParameter.ActualValue; 56 public ItemList<ItemList<IntValue>> Map => MapParameter.ActualValue; 50 57 51 public PercentValue MutationProbability => MutationProbabilityParameter.ActualValue; 58 52 … … 61 55 private EMMMultyPointsMutatorNodeTypeSaving(EMMMultyPointsMutatorNodeTypeSaving original, Cloner cloner) : base(original, cloner) { } 62 56 public EMMMultyPointsMutatorNodeTypeSaving() : base() { 63 Parameters.Add(new LookupParameter<ItemList<ISymbolicExpressionTree>>(ModelSetParameterName)); 64 Parameters.Add(new LookupParameter<ItemList<IntValue>>(ClusterNumberParameterName)); 65 Parameters.Add(new LookupParameter<ItemList<ItemList<IntValue>>>(MapParameterName)); 57 Parameters.Add(new LookupParameter<EMMMapBase<ISymbolicExpressionTree>>(MapParameterName)); 66 58 Parameters.Add(new LookupParameter<PercentValue>(MutationProbabilityParameterName)); 67 59 } … … 81 73 return false; 82 74 } 83 public static void EMMOnePointMutatorPart(IRandom random, ISymbolicExpressionTree symbolicExpressionTree, ItemList<ISymbolicExpressionTree> modelSet, ItemList<IntValue> clusterNumber, ItemList<ItemList<IntValue>> map, PercentValue mutationProbability) {75 public static void EMMOnePointMutatorPart(IRandom random, ISymbolicExpressionTree symbolicExpressionTree, List<ISymbolicExpressionTree> modelSet, List<int> clusterNumber, List<List<int>> map, PercentValue mutationProbability) { 84 76 85 77 List<ISymbol> allowedSymbols = new List<ISymbol>(); … … 113 105 114 106 if (node is TreeModelTreeNode treeNode2) { // make rigth mutation for tree model 115 treeNode2.TreeNumber = map[pTemp].SampleRandom(random) .Value;107 treeNode2.TreeNumber = map[pTemp].SampleRandom(random); 116 108 treeNode2.Tree = (ISymbolicExpressionTree)modelSet[treeNode2.TreeNumber].Clone(); 117 109 treeNode2.ClusterNumer = pTemp;
Note: See TracChangeset
for help on using the changeset viewer.