Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
04/28/17 22:52:08 (7 years ago)
Author:
pkimmesw
Message:

#2665 Dynamic ErcValues, Separate Push from BenchmarkSuite Push

Location:
branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems
Files:
29 edited

Legend:

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

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4
    25  public class Checksum : BenchmarkSuiteDataDescriptor {
    36    private const string name = "Checksum";
     
    2225        TrainingCount = 100,
    2326        TestCount = 1000,
    24         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String,
     27        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.Print,
    2528        MaxSize = 800,
    2629        EvalLimit = 1500,
    2730        ErcOptions = {
    2831          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Constants = new [] { 64 },
    32             Start = -128,
    33             End = 128
    34           },
    35           CharErcOptions = {
    36             IsEnabled = true,
    37             Constants = new [] { ' ' },
    38             Start = 0x20,
    39             End = 0x7e
    40           }
     32          IntegerErcOptions = new IntegerErcOptions(
     33            new IntegerConstantErcValue(64),
     34            new IntegerRangeErcValue(-128, 128)),
     35          CharErcOptions = new CharErcOptions(
     36            new IntegerConstantErcValue(' '),
     37            new IntegerRangeErcValue(0x20, 0x7e))
    4138        }
    4239      };
     
    4845        OutputArgs = output,
    4946        InputString = input,
    50         OutputChar = output[0].ToCharArray(),
     47        OutputPrint = output[0],
    5148      };
    5249    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/CollatzNumbers.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2 
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
    33
    44  public class CollatzNumbers : BenchmarkSuiteDataDescriptor {
     
    2929        ErcOptions = {
    3030          ErcProbability = 0.05,
    31           IntegerErcOptions = {
    32             IsEnabled = true,
    33             Constants = new [] { 0, 1 },
    34             Start = -100,
    35             End = 100
    36           }
     31          IntegerErcOptions = new IntegerErcOptions(
     32            new IntegerConstantErcValue(0, 1),
     33            new IntegerRangeErcValue(-100, 100))
    3734        }
    3835      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/CompareStringLengths.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Boolean;
    33
    44  public class CompareStringLengths : BenchmarkSuiteDataDescriptor {
     
    2929        ErcOptions = {
    3030          ErcProbability = 0.05,
    31           BooleanErcOptions = {
    32             IsEnabled = true,
    33             AllowTrue = true,
    34             AllowFalse = true
     31          BooleanErcOptions = new BooleanErcOptions {
     32            new BooleanRandomErcValue {
     33              AllowTrue = true,
     34              AllowFalse = true
     35            }
    3536          }
    3637        }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/CountOdds.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
    33
    44  public class CountOdds : BenchmarkSuiteDataDescriptor {
     
    2929        ErcOptions = {
    3030          ErcProbability = 0.05,
    31           IntegerErcOptions = {
    32             IsEnabled = true,
    33             Constants = new [] { 0, 1, 2},
    34             Start = -1000,
    35             End = 1000
    36           }
     31          IntegerErcOptions = new IntegerErcOptions(
     32            new IntegerConstantErcValue(0, 1, 2),
     33            new IntegerRangeErcValue(-1000, 1000)),
    3734        }
    3835      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/Digits.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4
    25  public class Digits : BenchmarkSuiteDataDescriptor {
    36    private const string name = "Digits";
     
    2225        TrainingCount = 100,
    2326        TestCount = 1000,
    24         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String,
     27        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.Print,
    2528        MaxSize = 300,
    2629        EvalLimit = 600,
    2730        ErcOptions = {
    2831          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Start = -10,
    32             End = 10
    33           },
    34           CharErcOptions = {
    35             IsEnabled = true,
    36             Constants = new [] { '\r' },
    37           }
     32          IntegerErcOptions = new IntegerErcOptions(
     33            new IntegerRangeErcValue(-10, 10)),
     34          CharErcOptions = new CharErcOptions(
     35            new IntegerConstantErcValue('\r'))
    3836        }
    3937      };
     
    4543        OutputArgs = output,
    4644        InputInteger = ExampleArgumentConverter.ConvertIntegers(input[0]),
    47         OutputString = output,
     45        OutputPrint = output[0],
    4846      };
    4947    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/DoubleLetters.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
    34
    45  public class DoubleLetters : BenchmarkSuiteDataDescriptor {
     
    2425        TrainingCount = 100,
    2526        TestCount = 1000,
    26         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.Char,
     27        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.Char | DataTypes.Print,
    2728        MaxSize = 800,
    2829        EvalLimit = 1600,
    2930        ErcOptions = {
    3031          ErcProbability = 0.02,
    31           CharErcOptions = {
    32             IsEnabled = true,
    33             Constants = new [] { '!' }
    34           }
     32          CharErcOptions = new CharErcOptions(
     33            new IntegerConstantErcValue('!'))
    3534        }
    3635      };
     
    4241        OutputArgs = output,
    4342        InputString = input,
    44         OutputString = output,
     43        OutputPrint = output[0],
    4544      };
    4645    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/EvenSquares.cs

    r14875 r14897  
    2222        TrainingCount = 100,
    2323        TestCount = 1000,
    24         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean,
     24        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Print,
    2525        MaxSize = 400,
    2626        EvalLimit = 2000,
     
    3333        OutputArgs = output,
    3434        InputInteger = ExampleArgumentConverter.ConvertIntegers(input),
    35         OutputString = output,
     35        OutputPrint = output[0],
    3636      };
    3737    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/ForLoopIndex.cs

    r14875 r14897  
    2323        WorstResult = 1000,
    2424        InputArgumentTypes = new[] { ExampleArgumentType.Integer, ExampleArgumentType.Integer, ExampleArgumentType.Integer },
    25         OutputArgumentTypes = new[] { ExampleArgumentType.IntegerVector },
     25        OutputArgumentTypes = new[] { ExampleArgumentType.String },
    2626        TrainingCount = 100,
    2727        TestCount = 1000,
    28         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.IntegerVector,
     28        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.Print,
    2929        MaxSize = 300,
    3030        EvalLimit = 600,
     
    3737        OutputArgs = output,
    3838        InputInteger = ExampleArgumentConverter.ConvertIntegers(input),
    39         OutputIntegerVector = new[] { ExampleArgumentConverter.ConvertIntegers(output[0]) }
     39        OutputPrint = output[0]
    4040      };
    4141    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/Grades.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.String;
     4
    25  public class Grades : BenchmarkSuiteDataDescriptor {
    36    private const string name = "Grades";
     
    2225        TrainingCount = 200,
    2326        TestCount = 2000,
    24         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String,
     27        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.Print,
    2528        MaxSize = 400,
    2629        EvalLimit = 800,
    2730        ErcOptions = {
    2831          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Start = 0,
    32             End = 100
    33           },
    34           StringErcOptions = {
    35             IsEnabled = true,
    36             Constants = new [] { "Student has a ", " grade", "A", "B", "C", "D", "F" },
    37           }
     32          IntegerErcOptions = new IntegerErcOptions(
     33            new IntegerRangeErcValue(0, 100)),
     34          StringErcOptions = new StringErcOptions(
     35            new StringConstantErcValue("Student has a ", " grade", "A", "B", "C", "D", "F"))
    3836        }
    3937      };
     
    4543        OutputArgs = output,
    4644        InputInteger = ExampleArgumentConverter.ConvertIntegers(input),
    47         OutputString = output,
     45        OutputPrint = output[0],
    4846      };
    4947    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/LastIndexOfZero.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
    33
    44  public class LastIndexOfZero : BenchmarkSuiteDataDescriptor {
     
    2929        ErcOptions = {
    3030          ErcProbability = 0.05,
    31           IntegerErcOptions = {
    32             IsEnabled = true,
    33             Constants = new [] { 0 },
    34             Start = -50,
    35             End = 50
     31          IntegerErcOptions = new IntegerErcOptions(
     32            new IntegerConstantErcValue(0),
     33            new IntegerRangeErcValue(-50, 50))
    3634          }
    37         }
    3835      };
    3936    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/Median.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     3
    24  public class Median : BenchmarkSuiteDataDescriptor {
    35    private const string name = "Median";
     
    2729        ErcOptions = {
    2830          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Start = -100,
    32             End = 100
    33           }
     31          IntegerErcOptions = new IntegerErcOptions(
     32            new IntegerConstantErcValue(0),
     33            new IntegerRangeErcValue(-1000, 100))
    3434        }
    3535      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/MirrorImage.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Boolean;
    23
    34  public class MirrorImage : BenchmarkSuiteDataDescriptor {
     
    2829        ErcOptions = {
    2930          ErcProbability = 0.05,
    30           BooleanErcOptions = {
    31             IsEnabled = true,
    32             AllowFalse = true,
    33             AllowTrue = true
    34           }
     31          BooleanErcOptions = new BooleanErcOptions(
     32            new BooleanRandomErcValue {
     33              AllowFalse = true,
     34              AllowTrue = true
     35            })
    3536        }
    3637      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/NegativeToZero.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.IntegerVector;
     4
    25  public class NegativeToZero : BenchmarkSuiteDataDescriptor {
    36    private const string name = "Negative to Zero";
     
    2730        ErcOptions = {
    2831          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Constants = new [] { 0 }
    32           },
    33           IntegerVectorErcOptions = {
    34             IsEnabled = true,
    35             Constants = new [] { new int[0] }
    36           }
     32          IntegerErcOptions = new IntegerErcOptions(
     33            new IntegerConstantErcValue(0)),
     34          IntegerVectorErcOptions = new IntegerVectorErcOptions(
     35            new IntegerVectorConstantsErcValue(new int[0]))
    3736        }
    3837      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/NumberIo.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Float;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
    34
    45  public class NumberIO : BenchmarkSuiteDataDescriptor {
     
    2829        MaxSize = 200,
    2930        ErcOptions = {
    30           ErcProbability = 0.05,
    31           IntegerErcOptions = {
    32             IsEnabled = true,
    33             Start = -100,
    34             End = 100
    35           },
    36           FloatErcOptions = {
    37             IsEnabled = true,
    38             Start = -100.0,
    39             End = 100.0
    40           }
     31          ErcProbability = 0.01,
     32          IntegerErcOptions = new IntegerErcOptions(
     33            new IntegerRangeErcValue(-100, 100)),
     34          FloatErcOptions = new FloatErcOptions(
     35            new FloatRangeErcValue(-100, 100))
    4136        }
    4237      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/PigLatin.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.String;
     5
    26  public class PigLatin : BenchmarkSuiteDataDescriptor {
    37    private const string name = "Pig Latin";
     
    2226        TrainingCount = 200,
    2327        TestCount = 1000,
    24         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String,
     28        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.Print,
    2529        MaxSize = 1000,
    2630        EvalLimit = 2000,
    2731        ErcOptions = {
    2832          ErcProbability = 0.05,
    29           CharErcOptions = {
    30             IsEnabled = true,
    31             Constants = new [] { ' ', 'a', 'e', 'i', 'o', 'u' },
    32             Start = 0x20,
    33             End = 0x7e
    34           },
    35           StringErcOptions = {
    36             IsEnabled = true,
    37             Constants = new [] { "ay", "aeiou" },
    38             AllowLowercaseLetters = true,
    39             AllowUppercaseLetters = false,
    40             AllowSpace = true,
    41             SpaceProbability = 0.2,
    42           }
     33          CharErcOptions = new CharErcOptions(
     34            new IntegerConstantErcValue(' ', 'a', 'e', 'i', 'o', 'u'),
     35            new IntegerRangeErcValue(0x20, 0x7e)),
     36          StringErcOptions = new StringErcOptions(
     37            new StringConstantErcValue("ay", "aeiou"),
     38            new StringRandomErcValue {
     39              IsEnabled = true,
     40              AllowLowercaseLetters = true,
     41              AllowUppercaseLetters = false,
     42              AllowSpace = true,
     43              SpaceProbability = 0.2,
     44          })
    4345        }
    4446      };
     
    5052        OutputArgs = output,
    5153        InputString = input,
    52         OutputString = output,
     54        OutputPrint = output[0],
    5355      };
    5456    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/ProblemData.cs

    r14875 r14897  
    44  using Core;
    55  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     6
    67  using Persistence.Default.CompositeSerializers.Storable;
    78
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/ReplaceSpaceWithNewline.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.String;
    35
    46  public class ReplaceSpaceWithNewline : BenchmarkSuiteDataDescriptor {
     
    2426        TrainingCount = 100,
    2527        TestCount = 1000,
    26         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String,
     28        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.Print,
    2729        MaxSize = 800,
    2830        EvalLimit = 1600,
    2931        ErcOptions = {
    3032          ErcProbability = 0.05,
    31           CharErcOptions = {
    32             IsEnabled = true,
    33             Constants = new [] { ' ', '\r' },
    34             Start = 0x20,
    35             End = 0x7e
    36           },
    37           StringErcOptions = {
    38             IsEnabled = true,
    39             AllowLowercaseLetters = true,
    40             AllowUppercaseLetters = false,
    41             AllowSpace = true,
    42             SpaceProbability = 0.2
    43           }
     33          CharErcOptions = new CharErcOptions(
     34            new IntegerConstantErcValue(' ', '\r'),
     35            new IntegerRangeErcValue(0x20, 0x7e)),
     36          StringErcOptions = new StringErcOptions(
     37            new StringRandomErcValue {
     38              IsEnabled = true,
     39              AllowLowercaseLetters = true,
     40              AllowUppercaseLetters = false,
     41              AllowSpace = true,
     42              SpaceProbability = 0.2
     43            })
    4444        }
    4545      };
     
    5151        OutputArgs = output,
    5252        InputString = input,
    53         OutputString = new[] { output[0] },
     53        OutputPrint = output[0],
    5454        OutputInteger = ExampleArgumentConverter.ConvertIntegers(output[1]),
    5555      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/ScrabbleScore.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.IntegerVector;
    25
    36  public class ScrabbleScore : BenchmarkSuiteDataDescriptor {
     
    5861        ErcOptions = {
    5962          ErcProbability = 0.05,
    60           IntegerErcOptions = {
    61             IsEnabled = true,
    62             Constants = ScrabbleValues
    63           },
    64           IntegerVectorErcOptions = {
    65             IsEnabled = true,
    66             Constants = new [] { ScrabbleValues }
    67           }
     63          IntegerErcOptions = new IntegerErcOptions(
     64            new IntegerConstantErcValue(ScrabbleValues)),
     65          IntegerVectorErcOptions = new IntegerVectorErcOptions(
     66            new IntegerVectorConstantsErcValue(ScrabbleValues))
    6867        }
    6968      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/SmallOrLarge.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.String;
     4
    25  public class SmallOrLarge : BenchmarkSuiteDataDescriptor {
    36    private const string name = "Small or Large";
     
    2326        TrainingCount = 100,
    2427        TestCount = 1000,
    25         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String,
     28        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.Print,
    2629        MaxSize = 200,
    2730        EvalLimit = 300,
    2831        ErcOptions = {
    2932          ErcProbability = 0.05,
    30           IntegerErcOptions = {
    31             IsEnabled = true,
    32             Start = -10000,
    33             End = 10000
    34           },
    35           StringErcOptions = {
    36             IsEnabled = true,
    37             Constants = new [] { "small", "large" }
    38           }
     33          IntegerErcOptions = new IntegerErcOptions(
     34            new IntegerRangeErcValue(-10000, 10000)),
     35          StringErcOptions = new StringErcOptions(
     36            new StringConstantErcValue("small", "large"))
    3937        }
    4038      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/Smallest.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     3
    24  public class Smallest : BenchmarkSuiteDataDescriptor {
    35    private const string name = "Smallest";
     
    2729        ErcOptions = {
    2830          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Start = -100,
    32             End = 100
    33           }
     31          IntegerErcOptions = new IntegerErcOptions(
     32            new IntegerRangeErcValue(-100, 100)),
    3433        }
    3534      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/StringDifferences.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
    34
    45  public class StringDifferences : BenchmarkSuiteDataDescriptor {
     
    2425        TrainingCount = 200,
    2526        TestCount = 2000,
    26         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String,
     27        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.Print,
    2728        MaxSize = 1000,
    2829        EvalLimit = 2000,
    2930        ErcOptions = {
    3031          ErcProbability = 0.05,
    31           CharErcOptions = {
    32             IsEnabled = true,
    33             Constants = new [] { ' ', '\r' },
    34           },
    35           IntegerErcOptions = {
    36             IsEnabled = true,
    37             Start = -10,
    38             End = 10
    39           }
     32          CharErcOptions = new CharErcOptions(
     33            new IntegerConstantErcValue(' ', '\r')),
     34          IntegerErcOptions = new IntegerErcOptions(
     35            new IntegerRangeErcValue(-10, 10))
    4036        }
    4137      };
     
    4743        OutputArgs = output,
    4844        InputString = input,
    49         OutputString = output,
     45        OutputPrint = output[0],
    5046      };
    5147    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/StringLengthsBackwards.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
    2   using HeuristicLab.Problems.ProgramSynthesis.Base.Erc;
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
    33
    44  public class StringLengthsBackwards : BenchmarkSuiteDataDescriptor {
    55    private const string name = "String Length Backwards";
    6     private const string fileName = "StringLengthBackwards.csv";
     6    private const string fileName = "StringLengthsBackwards.csv";
    77    private const string description = "Given a vector of strings, print the length of each string in the vector starting with the last and ending with the first.";
    88
     
    2424        TrainingCount = 100,
    2525        TestCount = 1000,
    26         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.StringVector,
     26        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.String | DataTypes.StringVector | DataTypes.Print,
    2727        MaxSize = 300,
    2828        EvalLimit = 600,
    2929        ErcOptions = {
    3030          ErcProbability = 0.05,
    31           IntegerErcOptions = {
    32             IsEnabled = true,
    33             Start = -100,
    34             End = 100
    35           }
     31          IntegerErcOptions = new IntegerErcOptions(
     32            new IntegerRangeErcValue(-100, 100))
    3633        }
    3734      };
     
    4340        OutputArgs = output,
    4441        InputStringVector = new[] { ExampleArgumentConverter.ConvertStringVector(input[0]) },
    45         OutputString = output,
     42        OutputPrint = output[0],
    4643      };
    4744    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/SumOfSquares.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     3
    24  public class SumOfSquares : BenchmarkSuiteDataDescriptor {
    35    private const string name = "Sum of Squares";
     
    2729        ErcOptions = {
    2830          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Start = -100,
    32             End = 100
    33           }
     31          IntegerErcOptions = new IntegerErcOptions(
     32            new IntegerRangeErcValue(-100, 100))
    3433        }
    3534      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/SuperAnagrams.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Boolean;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     4  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     5
    26  public class SuperAnagrams : BenchmarkSuiteDataDescriptor {
    37    private const string name = "Super Anagrams";
     
    2731        ErcOptions = {
    2832          ErcProbability = 0.05,
    29           BooleanErcOptions = {
    30             IsEnabled = true,
    31             AllowFalse = true,
    32             AllowTrue = true
    33           },
    34           IntegerErcOptions = {
    35             IsEnabled = true,
    36             Start = -1000,
    37             End = 1000
    38           },
    39           CharErcOptions = {
    40             IsEnabled = true,
    41             Start = 0x20,
    42             End = 0x7e
    43           }
     33          BooleanErcOptions = new BooleanErcOptions(
     34            new BooleanRandomErcValue {
     35              IsEnabled = true,
     36              AllowFalse = true,
     37              AllowTrue = true
     38            }),
     39          IntegerErcOptions = new IntegerErcOptions(
     40            new IntegerRangeErcValue(-1000, 1000)),
     41          CharErcOptions = new CharErcOptions(
     42            new IntegerRangeErcValue(0x20, 0x7e))
    4443        }
    4544      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/Syllables.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.String;
     5
    26  public class Syllables : BenchmarkSuiteDataDescriptor {
    37    private const string name = "Syllables";
     
    2731        ErcOptions = {
    2832          ErcProbability = 0.05,
    29           StringErcOptions = {
    30             IsEnabled = true,
    31             Constants = new [] { "The number of syllables is ", "aeiouy" },
    32             AllowLowercaseLetters = true,
    33             AllowUppercaseLetters = false,
    34             AllowDigits = true,
    35             AllowSymbols = true,
    36             AllowSpace = true,
    37             SpaceProbability = 0.2,
    38             VowelProbability = 0.2
    39           },
    40           CharErcOptions = {
    41             IsEnabled = true,
    42             Constants = new [] { 'a', 'e', 'i', 'o', 'u' },
    43             Start = 0x20,
    44             End = 0x7e
    45           }
     33          StringErcOptions = new StringErcOptions(
     34            new StringConstantErcValue("The number of syllables is ", "aeiouy" ),
     35            new StringRandomErcValue {
     36              AllowLowercaseLetters = true,
     37              AllowUppercaseLetters = false,
     38              AllowDigits = true,
     39              AllowSymbols = true,
     40              AllowSpace = true,
     41              SpaceProbability = 0.2,
     42              VowelProbability = 0.2
     43            }),
     44          CharErcOptions = new CharErcOptions (
     45            new IntegerConstantErcValue('a', 'e', 'i', 'o', 'u'),
     46            new IntegerRangeErcValue(0x20, 0x7e))
    4647        }
    4748      };
     
    5354        OutputArgs = output,
    5455        InputString = input,
    55         OutputInteger = ExampleArgumentConverter.ConvertIntegers(output[0]),
     56        OutputPrint = output[0],
    5657      };
    5758    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/VectorSummed.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.IntegerVector;
     4
    25  public class VectorSummed : BenchmarkSuiteDataDescriptor {
    36    private const string name = "Vector Summed";
     
    2730        ErcOptions = {
    2831          ErcProbability = 0.05,
    29           IntegerVectorErcOptions = {
    30             IsEnabled = true,
    31             Constants = new [] { new int[0] }
    32           },
    33           IntegerErcOptions = {
    34             IsEnabled = true,
    35             Start = -1000,
    36             End = 1000
    37           }
     32          IntegerVectorErcOptions = new IntegerVectorErcOptions(
     33            new IntegerVectorConstantsErcValue(new int[0])),
     34          IntegerErcOptions = new IntegerErcOptions(
     35            new IntegerRangeErcValue(-1000, 1000))
    3836        }
    3937      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/WallisPi.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Float;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4
    25  public class WallisPi : BenchmarkSuiteDataDescriptor {
    36    private const string name = "Wallis Pi";
     
    2730        ErcOptions = {
    2831          ErcProbability = 0.05,
    29           FloatErcOptions = {
    30             IsEnabled = true,
    31             Start = -500,
    32             End = 500,
    33           },
    34           IntegerErcOptions = {
    35             IsEnabled = true,
    36             Start = -500,
    37             End = 500
    38           }
     32          FloatErcOptions = new FloatErcOptions(
     33            new FloatRangeErcValue(-500, 500)),
     34          IntegerErcOptions = new IntegerErcOptions(
     35            new IntegerRangeErcValue(-500, 500))
    3936        }
    4037      };
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/WordStats.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.IntegerVector;
     5  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.String;
     6
    27  public class WordStats : BenchmarkSuiteDataDescriptor {
    38    private const string name = "Word Stats";
     
    2227        TrainingCount = 100,
    2328        TestCount = 1000,
    24         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Float | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.IntegerVector | DataTypes.FloatVector | DataTypes.StringVector,
     29        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Float | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.IntegerVector | DataTypes.FloatVector | DataTypes.StringVector | DataTypes.Print,
    2530        MaxSize = 1000,
    2631        EvalLimit = 6000,
    2732        ErcOptions = {
    2833          ErcProbability = 0.05,
    29           IntegerErcOptions = {
    30             IsEnabled = true,
    31             Start = 100,
    32             End = 100
    33           },
    34           IntegerVectorErcOptions = {
    35             IsEnabled = true,
    36             Constants = new [] { new int[0] }
    37           },
    38           CharErcOptions = {
    39             IsEnabled = true,
    40             Constants = new [] { '.', '?', '!', ' ', '\t', '\r', ':' }
    41           },
    42           StringErcOptions = {
    43             IsEnabled = true,
    44             Constants = new [] { "words of length ", ": ", "number of sentences: ", "average sentence length: " }
    45           }
     34          IntegerErcOptions = new IntegerErcOptions(
     35            new IntegerRangeErcValue(-100, 100)),
     36          IntegerVectorErcOptions = new IntegerVectorErcOptions(
     37            new IntegerVectorConstantsErcValue(new int[0])),
     38          CharErcOptions = new CharErcOptions(
     39            new IntegerConstantErcValue('.', '?', '!', ' ', '\t', '\r', ':')),
     40          StringErcOptions = new StringErcOptions(
     41            new StringConstantErcValue("words of length ", ": ", "number of sentences: ", "average sentence length: "))
    4642        }
    4743      };
     
    5349        OutputArgs = output,
    5450        InputString = input,
    55         OutputString = output,
     51        OutputPrint = output[0]
    5652      };
    5753    }
  • branches/PushGP/HeuristicLab.PushGP/HeuristicLab.Problem.ProgramSynthesis.BenchmarkSuite/Problems/XWordLines.cs

    r14875 r14897  
    11namespace HeuristicLab.BenchmarkSuite.Problems {
     2  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Char;
     3  using HeuristicLab.Problems.ProgramSynthesis.Base.Erc.Integer;
     4
    25  public class XWordLines : BenchmarkSuiteDataDescriptor {
    36    private const string name = "X-Word Lines";
     
    2225        TrainingCount = 150,
    2326        TestCount = 2000,
    24         EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String,
     27        EnabledDataTypes = DataTypes.Exec | DataTypes.Integer | DataTypes.Boolean | DataTypes.Char | DataTypes.String | DataTypes.Print,
    2528        MaxSize = 800,
    2629        EvalLimit = 1600,
    2730        ErcOptions = {
    2831          ErcProbability = 0.05,
    29           CharErcOptions = {
    30             IsEnabled = true,
    31             Constants = new [] { ' ', '\r' }
    32           }
     32          CharErcOptions = new CharErcOptions(
     33            new IntegerConstantErcValue(' ', '\r')),
    3334        }
    3435      };
     
    3940        InputArgs = input,
    4041        OutputArgs = output,
    41         InputInteger = ExampleArgumentConverter.ConvertIntegers(input[0]),
    42         InputString = new[] { input[1] },
    43         OutputString = output,
     42        InputInteger = ExampleArgumentConverter.ConvertIntegers(input[1]),
     43        InputString = new[] { input[0] },
     44        OutputPrint = output[0],
    4445      };
    4546    }
Note: See TracChangeset for help on using the changeset viewer.