Changeset 14875 for branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/CollatzNumbers.cs
- Timestamp:
- 04/18/17 01:15:25 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/CollatzNumbers.cs
r14727 r14875 1 //namespace HeuristicLab.BenchmarkSuite.Problems { 2 // using System; 1 namespace HeuristicLab.BenchmarkSuite.Problems { 3 2 4 // public class CollatzNumbers : BenchmarkSuiteDataDescriptor<long[], long[]> {5 // private const string displayMame = "Collatz Numbers";6 // private const string description = "";7 3 8 // public override string Name { get { return displayMame; } } 9 // public override string Description { get { return description; } } 10 // protected override int InputArgumentCount { get { return 1; } } 11 // protected override int OutputArgumentCount { get { return 1; } } 4 public class CollatzNumbers : BenchmarkSuiteDataDescriptor { 5 private const string name = "Collatz Numbers"; 6 private const string fileName = "CollatzNumbers.csv"; 7 private const string description = "Given an integer, find the number of terms in the Collatz(hailstone) sequence starting from that integer."; 12 8 13 // public override long[] ConvertInput(string[] input) { 14 // return Array.ConvertAll(input, ConvertInteger); 15 // } 9 protected override string FileName { get { return fileName; } } 10 public override string Name { get { return name; } } 11 public override string Description { get { return description; } } 12 protected override int InputArgumentCount { get { return 1; } } 13 protected override int OutputArgumentCount { get { return 1; } } 16 14 17 // public override long[] ConvertOutput(string[] output) { 18 // return Array.ConvertAll(output, ConvertInteger); 19 // } 15 public override ProblemData CreateProblemData() { 16 return new ProblemData { 17 Name = Name, 18 Description = Description, 19 Examples = CloneExamples(), 20 BestResult = 0, 21 WorstResult = 300, 22 InputArgumentTypes = new[] { ExampleArgumentType.Integer }, 23 OutputArgumentTypes = new[] { ExampleArgumentType.Integer }, 24 TrainingCount = 200, 25 TestCount = 2000, 26 EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Float | DataTypes.Boolean, 27 MaxSize = 600, 28 EvalLimit = 15000, 29 ErcOptions = { 30 ErcProbability = 0.05, 31 IntegerErcOptions = { 32 IsEnabled = true, 33 Constants = new [] { 0, 1 }, 34 Start = -100, 35 End = 100 36 } 37 } 38 }; 39 } 20 40 21 // public override Data CreateData() {22 // var input = this.GetInput(); 23 // var output = this.GetOutput(); 24 25 // return new Data(0, double.MaxValue, 0, 0,26 // inputInt: input,27 // outputInt: output);28 //}29 //}30 //}41 protected override Example ParseExample(string[] input, string[] output) { 42 return new Example { 43 InputArgs = input, 44 OutputArgs = output, 45 InputInteger = ExampleArgumentConverter.ConvertIntegers(input[0]), 46 OutputInteger = ExampleArgumentConverter.ConvertIntegers(output[0]), 47 }; 48 } 49 } 50 }
Note: See TracChangeset
for help on using the changeset viewer.