Changeset 11553 for branches/ProgrammableProblem/HeuristicLab.Problems.Programmable/3.3/MultiObjectiveProgrammableProblem.cs
- Timestamp:
- 11/15/14 17:30:02 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/ProgrammableProblem/HeuristicLab.Problems.Programmable/3.3/MultiObjectiveProgrammableProblem.cs
r11550 r11553 176 176 177 177 protected virtual ISolutionCreator ConfigureCreator(IEncoding encoding) { 178 #region Configure RealVector Creator 179 var realEnc = encoding as RealEncoding; 180 if (realEnc != null) { 181 DynamicEncodingParameters.AddRange(realEnc.Parameters); 182 return realEnc.DefaultSolutionCreator; 183 } 184 #endregion 185 #region Configure BinaryVector Creator 186 var binEnc = encoding as BinaryEncoding; 187 if (binEnc != null) { 188 DynamicEncodingParameters.AddRange(binEnc.Parameters); 189 return binEnc.DefaultSolutionCreator; 190 } 191 #endregion 178 192 #region Configure MultiEncoding Creator 179 193 var multiEncoding = encoding as MultiEncoding; … … 184 198 creator.Operators.Add(ConfigureCreator(enc)); 185 199 } 186 return creator;187 }188 #endregion189 #region Configure BinaryVector Creator190 var binEnc = encoding as BinaryEncoding;191 if (binEnc != null) {192 var p = new ValueParameter<IntValue>(binEnc.Name + "Length", binEnc.Length);193 DynamicEncodingParameters.Add(p);194 195 var creator = new RandomBinaryVectorCreator();196 creator.BinaryVectorParameter.ActualName = binEnc.Name;197 creator.LengthParameter.ActualName = p.Name;198 200 return creator; 199 201 } … … 212 214 creator.BoundsParameter.ActualName = b.Name; 213 215 return creator; 214 }215 #endregion216 #region Configure RealVector Creator217 var realEnc = encoding as RealEncoding;218 if (realEnc != null) {219 DynamicEncodingParameters.AddRange(realEnc.Parameters);220 return realEnc.DefaultSolutionCreator;221 216 } 222 217 #endregion … … 784 779 var binConfig = (BinaryEncoding)config.Encodings[paramName]; 785 780 IBinaryVectorCrossover binXo; 786 if (binConfig.Length .Value> 3) binXo = new Encodings.BinaryVectorEncoding.SinglePointCrossover();781 if (binConfig.Length > 3) binXo = new Encodings.BinaryVectorEncoding.SinglePointCrossover(); 787 782 else binXo = new Encodings.BinaryVectorEncoding.UniformCrossover(); 788 783 binXo.ChildParameter.ActualName = paramName;
Note: See TracChangeset
for help on using the changeset viewer.