Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
02/03/11 13:47:16 (14 years ago)
Author:
gkronber
Message:

Improved test cases for symbolic expression tree encoding and fixed minor bugs. #1336

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/ArgumentCreaterTest.cs

    r5367 r5411  
    5656      var grammar = Grammars.CreateArithmeticAndAdfGrammar();
    5757      var random = new MersenneTwister(31415);
     58      int failedOps = 0;
    5859      for (int i = 0; i < POPULATION_SIZE; i++) {
    5960        SymbolicExpressionTree tree;
     
    6162          tree = ProbabilisticTreeCreator.Create(random, grammar, MAX_TREE_SIZE, MAX_TREE_HEIGHT, 3, 3);
    6263        } while (!TreeHasAdfWithParameter(tree, 3));
    63         var success = ArgumentCreater.CreateNewArgument(random, tree, grammar, 10000, 100, 3, 3);
    64         Assert.IsTrue(success);
     64        var success = ArgumentCreater.CreateNewArgument(random, tree, grammar, 60000, 100, 3, 3);
     65        if (!success) failedOps++;
    6566        Util.IsValid(tree);
    6667        trees.Add(tree);
    6768      }
     69      // difficult to make sure that create argument operations succeed because trees are macro-expanded can potentially become very big
     70      // => just test if only a small proportion fails
     71      Assert.IsTrue(failedOps < POPULATION_SIZE * 0.01 ); // only 1% may fail
    6872      Console.WriteLine("ArgumentCreator: " + Environment.NewLine +
     73        "Failed operations: " + failedOps * 100.0 / POPULATION_SIZE + " %" + Environment.NewLine +
    6974        Util.GetSizeDistributionString(trees, 200, 20) + Environment.NewLine +
    7075        Util.GetFunctionDistributionString(trees) + Environment.NewLine +
Note: See TracChangeset for help on using the changeset viewer.