- Timestamp:
- 05/18/20 18:55:08 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2521_ProblemRefactoring/HeuristicLab.Problems.ExternalEvaluation/3.4/ExternalEvaluationProblemInstances.cs
r16874 r17544 41 41 [StorableType("4ea0ded8-4451-4011-b88e-4d0680721b01")] 42 42 public sealed class SingleObjectiveBinaryVectorExternalEvaluationProblem : ExternalEvaluationProblem<BinaryVectorEncoding, BinaryVector> { 43 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 44 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 45 46 public int Dimension { 47 get => Encoding.Length; 48 set => Encoding.Length = value; 49 } 43 50 44 51 [StorableConstructor] 45 52 private SingleObjectiveBinaryVectorExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 46 private SingleObjectiveBinaryVectorExternalEvaluationProblem(SingleObjectiveBinaryVectorExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 53 private SingleObjectiveBinaryVectorExternalEvaluationProblem(SingleObjectiveBinaryVectorExternalEvaluationProblem original, Cloner cloner) 54 : base(original, cloner) { 55 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 56 } 47 57 48 58 public SingleObjectiveBinaryVectorExternalEvaluationProblem() 49 59 : base(new BinaryVectorEncoding()) { 50 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 51 Parameters.Add(lengthParameter); 52 Encoding.LengthParameter = lengthParameter; 60 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 61 DimensionRefParameter.ForceValue(new IntValue(Dimension, @readonly: false)); 53 62 // TODO: Add and parameterize additional operators, 54 63 } … … 64 73 [StorableType("46465e8c-11d8-4d02-8c45-de41a08db7fa")] 65 74 public sealed class SingleObjectiveIntegerVectorExternalEvaluationProblem : ExternalEvaluationProblem<IntegerVectorEncoding, IntegerVector> { 75 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 76 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 77 [Storable] private ReferenceParameter<IntMatrix> BoundsRefParameter; 78 public IValueParameter<IntMatrix> BoundsParameter => BoundsRefParameter; 79 80 public int Dimension { 81 get => DimensionRefParameter.Value.Value; 82 set => DimensionRefParameter.Value.Value = value; 83 } 84 85 public IntMatrix Bounds { 86 get => BoundsRefParameter.Value; 87 set => BoundsRefParameter.Value = value; 88 } 66 89 67 90 [StorableConstructor] 68 91 private SingleObjectiveIntegerVectorExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 69 private SingleObjectiveIntegerVectorExternalEvaluationProblem(SingleObjectiveIntegerVectorExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 92 private SingleObjectiveIntegerVectorExternalEvaluationProblem(SingleObjectiveIntegerVectorExternalEvaluationProblem original, Cloner cloner) 93 : base(original, cloner) { 94 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 95 BoundsRefParameter = cloner.Clone(original.BoundsRefParameter); 96 } 70 97 71 98 public SingleObjectiveIntegerVectorExternalEvaluationProblem() 72 99 : base(new IntegerVectorEncoding()) { 73 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 74 Parameters.Add(lengthParameter); 75 Encoding.LengthParameter = lengthParameter; 100 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 101 Parameters.Add(BoundsRefParameter = new ReferenceParameter<IntMatrix>("Bounds", "The bounding box and step size of the elements.", Encoding.BoundsParameter)); 76 102 // TODO: Add and parameterize additional operators, 77 103 } … … 87 113 [StorableType("637f091f-6601-494e-bafb-2a8ea474210c")] 88 114 public sealed class SingleObjectiveRealVectorExternalEvaluationProblem : ExternalEvaluationProblem<RealVectorEncoding, RealVector> { 115 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 116 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 117 [Storable] private ReferenceParameter<DoubleMatrix> BoundsRefParameter; 118 public IValueParameter<DoubleMatrix> BoundsParameter => BoundsRefParameter; 119 120 public int Dimension { 121 get => DimensionRefParameter.Value.Value; 122 set => DimensionRefParameter.Value.Value = value; 123 } 124 125 public DoubleMatrix Bounds { 126 get => BoundsRefParameter.Value; 127 set => BoundsRefParameter.Value = value; 128 } 89 129 90 130 [StorableConstructor] 91 131 private SingleObjectiveRealVectorExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 92 private SingleObjectiveRealVectorExternalEvaluationProblem(SingleObjectiveRealVectorExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 132 private SingleObjectiveRealVectorExternalEvaluationProblem(SingleObjectiveRealVectorExternalEvaluationProblem original, Cloner cloner) 133 : base(original, cloner) { 134 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 135 BoundsRefParameter = cloner.Clone(original.BoundsRefParameter); 136 } 93 137 94 138 public SingleObjectiveRealVectorExternalEvaluationProblem() 95 139 : base(new RealVectorEncoding()) { 96 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 97 Parameters.Add(lengthParameter); 98 Encoding.LengthParameter = lengthParameter; 140 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 141 Parameters.Add(BoundsRefParameter = new ReferenceParameter<DoubleMatrix>("Bounds", "The bounding box of the elements.", Encoding.BoundsParameter)); 99 142 // TODO: Add and parameterize additional operators, 100 143 } … … 110 153 [StorableType("ad9d45f8-b97e-49a7-b3d2-487d9a2cbdf9")] 111 154 public sealed class SingleObjectivePermutationExternalEvaluationProblem : ExternalEvaluationProblem<PermutationEncoding, Permutation> { 155 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 156 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 157 158 public int Dimension { 159 get => DimensionRefParameter.Value.Value; 160 set => DimensionRefParameter.Value.Value = value; 161 } 112 162 113 163 [StorableConstructor] 114 164 private SingleObjectivePermutationExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 115 private SingleObjectivePermutationExternalEvaluationProblem(SingleObjectivePermutationExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 165 private SingleObjectivePermutationExternalEvaluationProblem(SingleObjectivePermutationExternalEvaluationProblem original, Cloner cloner) 166 : base(original, cloner) { 167 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 168 } 116 169 117 170 public SingleObjectivePermutationExternalEvaluationProblem() 118 171 : base(new PermutationEncoding()) { 119 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the permutation.", new IntValue(10)); 120 Parameters.Add(lengthParameter); 121 Encoding.LengthParameter = lengthParameter; 172 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 122 173 // TODO: Add and parameterize additional operators, 123 174 } … … 140 191 public SingleObjectiveSymbolicExpressionTreeExternalEvaluationProblem() 141 192 : base(new SymbolicExpressionTreeEncoding()) { 193 // TODO: Change to ReferenceParameter 142 194 var lengthParameter = new FixedValueParameter<IntValue>("TreeLength", "The total amount of nodes.", new IntValue(50)); 143 195 Parameters.Add(lengthParameter); … … 159 211 [StorableType("945a35d9-89a8-4423-9ea0-21829ac68887")] 160 212 public sealed class SingleObjectiveLinearLinkageExternalEvaluationProblem : ExternalEvaluationProblem<LinearLinkageEncoding, LinearLinkage> { 213 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 214 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 215 216 public int Dimension { 217 get => DimensionRefParameter.Value.Value; 218 set => DimensionRefParameter.Value.Value = value; 219 } 161 220 162 221 [StorableConstructor] 163 222 private SingleObjectiveLinearLinkageExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 164 private SingleObjectiveLinearLinkageExternalEvaluationProblem(SingleObjectiveLinearLinkageExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 223 private SingleObjectiveLinearLinkageExternalEvaluationProblem(SingleObjectiveLinearLinkageExternalEvaluationProblem original, Cloner cloner) 224 : base(original, cloner) { 225 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 226 } 165 227 166 228 public SingleObjectiveLinearLinkageExternalEvaluationProblem() 167 229 : base(new LinearLinkageEncoding()) { 168 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 169 Parameters.Add(lengthParameter); 170 Encoding.LengthParameter = lengthParameter; 230 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 171 231 // TODO: Add and parameterize additional operators, 172 232 } … … 199 259 [StorableType("f14c7e88-b74d-4cad-ae55-83daf7b4c288")] 200 260 public sealed class MultiObjectiveBinaryVectorExternalEvaluationProblem : MultiObjectiveExternalEvaluationProblem<BinaryVectorEncoding, BinaryVector> { 261 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 262 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 263 264 public int Dimension { 265 get => Encoding.Length; 266 set => Encoding.Length = value; 267 } 201 268 202 269 [StorableConstructor] 203 270 private MultiObjectiveBinaryVectorExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 204 private MultiObjectiveBinaryVectorExternalEvaluationProblem(MultiObjectiveBinaryVectorExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 271 private MultiObjectiveBinaryVectorExternalEvaluationProblem(MultiObjectiveBinaryVectorExternalEvaluationProblem original, Cloner cloner) 272 : base(original, cloner) { 273 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 274 } 205 275 206 276 public MultiObjectiveBinaryVectorExternalEvaluationProblem() 207 277 : base(new BinaryVectorEncoding()) { 208 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 209 Parameters.Add(lengthParameter); 210 Encoding.LengthParameter = lengthParameter; 278 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 279 DimensionRefParameter.ForceValue(new IntValue(Dimension, @readonly: false)); 211 280 // TODO: Add and parameterize additional operators, 212 281 } … … 222 291 [StorableType("90a82c2f-6c37-4ffd-8495-bee278c583d3")] 223 292 public sealed class MultiObjectiveIntegerVectorExternalEvaluationProblem : MultiObjectiveExternalEvaluationProblem<IntegerVectorEncoding, IntegerVector> { 293 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 294 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 295 [Storable] private ReferenceParameter<IntMatrix> BoundsRefParameter; 296 public IValueParameter<IntMatrix> BoundsParameter => BoundsRefParameter; 297 298 public int Dimension { 299 get => DimensionRefParameter.Value.Value; 300 set => DimensionRefParameter.Value.Value = value; 301 } 302 303 public IntMatrix Bounds { 304 get => BoundsRefParameter.Value; 305 set => BoundsRefParameter.Value = value; 306 } 224 307 225 308 [StorableConstructor] 226 309 private MultiObjectiveIntegerVectorExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 227 private MultiObjectiveIntegerVectorExternalEvaluationProblem(MultiObjectiveIntegerVectorExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 310 private MultiObjectiveIntegerVectorExternalEvaluationProblem(MultiObjectiveIntegerVectorExternalEvaluationProblem original, Cloner cloner) 311 : base(original, cloner) { 312 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 313 BoundsRefParameter = cloner.Clone(original.BoundsRefParameter); 314 } 228 315 229 316 public MultiObjectiveIntegerVectorExternalEvaluationProblem() 230 317 : base(new IntegerVectorEncoding()) { 231 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 232 Parameters.Add(lengthParameter); 233 Encoding.LengthParameter = lengthParameter; 318 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 319 Parameters.Add(BoundsRefParameter = new ReferenceParameter<IntMatrix>("Bounds", "The bounding box and step size of the elements.", Encoding.BoundsParameter)); 234 320 // TODO: Add and parameterize additional operators, 235 321 } … … 245 331 [StorableType("38e1d068-d569-48c5-bad6-cbdd685b7c6b")] 246 332 public sealed class MultiObjectiveRealVectorExternalEvaluationProblem : MultiObjectiveExternalEvaluationProblem<RealVectorEncoding, RealVector> { 333 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 334 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 335 [Storable] private ReferenceParameter<DoubleMatrix> BoundsRefParameter; 336 public IValueParameter<DoubleMatrix> BoundsParameter => BoundsRefParameter; 337 338 public int Dimension { 339 get => DimensionRefParameter.Value.Value; 340 set => DimensionRefParameter.Value.Value = value; 341 } 342 343 public DoubleMatrix Bounds { 344 get => BoundsRefParameter.Value; 345 set => BoundsRefParameter.Value = value; 346 } 247 347 248 348 [StorableConstructor] 249 349 private MultiObjectiveRealVectorExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 250 private MultiObjectiveRealVectorExternalEvaluationProblem(MultiObjectiveRealVectorExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 350 private MultiObjectiveRealVectorExternalEvaluationProblem(MultiObjectiveRealVectorExternalEvaluationProblem original, Cloner cloner) 351 : base(original, cloner) { 352 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 353 BoundsRefParameter = cloner.Clone(original.BoundsRefParameter); 354 } 251 355 252 356 public MultiObjectiveRealVectorExternalEvaluationProblem() 253 357 : base(new RealVectorEncoding()) { 254 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 255 Parameters.Add(lengthParameter); 256 Encoding.LengthParameter = lengthParameter; 358 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 359 Parameters.Add(BoundsRefParameter = new ReferenceParameter<DoubleMatrix>("Bounds", "The bounding box of the elements.", Encoding.BoundsParameter)); 257 360 // TODO: Add and parameterize additional operators, 258 361 } … … 268 371 [StorableType("f1b265b0-ac7c-4c36-b346-5b3f2c37694b")] 269 372 public sealed class MultiObjectivePermutationExternalEvaluationProblem : MultiObjectiveExternalEvaluationProblem<PermutationEncoding, Permutation> { 373 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 374 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 375 376 public int Dimension { 377 get => DimensionRefParameter.Value.Value; 378 set => DimensionRefParameter.Value.Value = value; 379 } 270 380 271 381 [StorableConstructor] 272 382 private MultiObjectivePermutationExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 273 private MultiObjectivePermutationExternalEvaluationProblem(MultiObjectivePermutationExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 383 private MultiObjectivePermutationExternalEvaluationProblem(MultiObjectivePermutationExternalEvaluationProblem original, Cloner cloner) 384 : base(original, cloner) { 385 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 386 } 274 387 275 388 public MultiObjectivePermutationExternalEvaluationProblem() 276 389 : base(new PermutationEncoding()) { 277 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the permutation.", new IntValue(10)); 278 Parameters.Add(lengthParameter); 279 Encoding.LengthParameter = lengthParameter; 390 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 280 391 // TODO: Add and parameterize additional operators, 281 392 } … … 298 409 public MultiObjectiveSymbolicExpressionTreeExternalEvaluationProblem() 299 410 : base(new SymbolicExpressionTreeEncoding()) { 411 // TODO: Change to ReferenceParameter 300 412 var lengthParameter = new FixedValueParameter<IntValue>("TreeLength", "The total amount of nodes.", new IntValue(50)); 301 413 Parameters.Add(lengthParameter); … … 317 429 [StorableType("ed0c1129-651d-465f-87b0-f412f3e3b3d1")] 318 430 public sealed class MultiObjectiveLinearLinkageExternalEvaluationProblem : MultiObjectiveExternalEvaluationProblem<LinearLinkageEncoding, LinearLinkage> { 431 [Storable] private ReferenceParameter<IntValue> DimensionRefParameter; 432 public IValueParameter<IntValue> DimensionParameter => DimensionRefParameter; 433 434 public int Dimension { 435 get => DimensionRefParameter.Value.Value; 436 set => DimensionRefParameter.Value.Value = value; 437 } 319 438 320 439 [StorableConstructor] 321 440 private MultiObjectiveLinearLinkageExternalEvaluationProblem(StorableConstructorFlag _) : base(_) { } 322 private MultiObjectiveLinearLinkageExternalEvaluationProblem(MultiObjectiveLinearLinkageExternalEvaluationProblem original, Cloner cloner) : base(original, cloner) { } 441 private MultiObjectiveLinearLinkageExternalEvaluationProblem(MultiObjectiveLinearLinkageExternalEvaluationProblem original, Cloner cloner) 442 : base(original, cloner) { 443 DimensionRefParameter = cloner.Clone(original.DimensionRefParameter); 444 } 323 445 324 446 public MultiObjectiveLinearLinkageExternalEvaluationProblem() 325 447 : base(new LinearLinkageEncoding()) { 326 var lengthParameter = new FixedValueParameter<IntValue>("Length", "The length of the vector.", new IntValue(10)); 327 Parameters.Add(lengthParameter); 328 Encoding.LengthParameter = lengthParameter; 448 Parameters.Add(DimensionRefParameter = new ReferenceParameter<IntValue>("Dimension", "The dimension of the vector.", Encoding.LengthParameter)); 329 449 // TODO: Add and parameterize additional operators, 330 450 }
Note: See TracChangeset
for help on using the changeset viewer.