Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/18/17 01:15:25 (7 years ago)
Author:
pkimmesw
Message:

#2665 BenchmarkSuite, all examples, partially tested, VectorExpressions added

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/DoubleLetters.cs

    r14727 r14875  
    1 //namespace HeuristicLab.BenchmarkSuite.Problems {
    2 //  using HeuristicLab.BenchmarkSuite.ProblemData;
     1namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
    33
    4 //  public class DoubleLetters : BenchmarkSuiteDataDescriptor<string, string> {
    5 //    private const string displayMame = "Double Letters";
    6 //    private const string description = "";
     4  public class DoubleLetters : BenchmarkSuiteDataDescriptor {
     5    private const string name = "Double Letters";
     6    private const string fileName = "DoubleLetters.csv";
     7    private const string description = "Given a string, print the string, doubling every letter character, and tripling every exclamation point.All other non-alphabetic and non-exclamation characters should be printed a single time each";
    78
    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; } }
     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; } }
    1214
    13 //    public override string ConvertInput(string[] input) {
    14 //      return input[0];
    15 //    }
     15    public override ProblemData CreateProblemData() {
     16      return new ProblemData {
     17        Name = Name,
     18        Description = Description,
     19        Examples = CloneExamples(),
     20        BestResult = 0,
     21        WorstResult = 100,
     22        InputArgumentTypes = new[] { ExampleArgumentType.String },
     23        OutputArgumentTypes = new[] { ExampleArgumentType.String },
     24        TrainingCount = 100,
     25        TestCount = 1000,
     26        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.Char,
     27        MaxSize = 800,
     28        EvalLimit = 1600,
     29        ErcOptions = {
     30          ErcProbability = 0.02,
     31          CharErcOptions = {
     32            IsEnabled = true,
     33            Constants = new [] { '!' }
     34          }
     35        }
     36      };
     37    }
    1638
    17 //    public override string ConvertOutput(string[] output) {
    18 //      return output[0];
    19 //    }
    20 
    21 //    public override IPushData CreatePushData(Example<string, string>[] training, Example<string, string>[] test) {
    22 //      return new DoubleLettersPushData(training, test);
    23 //    }
    24 //  }
    25 //}
     39    protected override Example ParseExample(string[] input, string[] output) {
     40      return new Example {
     41        InputArgs = input,
     42        OutputArgs = output,
     43        InputString = input,
     44        OutputString = output,
     45      };
     46    }
     47  }
     48}
Note: See TracChangeset for help on using the changeset viewer.