Changeset 5367 for trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/SubroutineCreaterTest.cs
- Timestamp:
- 01/24/11 19:04:27 (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Encodings.SymbolicExpressionTreeEncoding/3.3/Tests/SubroutineCreaterTest.cs
r4068 r5367 54 54 var grammar = Grammars.CreateArithmeticAndAdfGrammar(); 55 55 var random = new MersenneTwister(31415); 56 int failedEvents = 0;57 56 for (int i = 0; i < POPULATION_SIZE; i++) { 58 var tree = ProbabilisticTreeCreator.Create(random, grammar, MAX_TREE_SIZE, MAX_TREE_HEIGHT, 3, 3); 59 if (!SubroutineCreater.CreateSubroutine(random, tree, grammar, MAX_TREE_SIZE, MAX_TREE_HEIGHT, 3, 3)) 60 failedEvents++; 57 SymbolicExpressionTree tree = null; 58 do { 59 tree = ProbabilisticTreeCreator.Create(random, grammar, MAX_TREE_SIZE, MAX_TREE_HEIGHT, 3, 3); 60 } while ( !OneMoreAdfAllowed(tree)); 61 var success = SubroutineCreater.CreateSubroutine(random, tree, grammar, MAX_TREE_SIZE, MAX_TREE_HEIGHT, 3, 3); 62 Assert.IsTrue(success); 61 63 Util.IsValid(tree); 62 64 trees.Add(tree); 63 65 } 64 Assert.Inconclusive("SubroutineCreator: " + Environment.NewLine + 65 "Failed events: " + failedEvents / (double)POPULATION_SIZE * 100 + " %" + Environment.NewLine + 66 Console.WriteLine("SubroutineCreator: " + Environment.NewLine + 66 67 Util.GetSizeDistributionString(trees, 105, 5) + Environment.NewLine + 67 68 Util.GetFunctionDistributionString(trees) + Environment.NewLine + … … 70 71 ); 71 72 } 73 74 private bool OneMoreAdfAllowed(SymbolicExpressionTree tree) { 75 return tree.Size < 80 && tree.Root.SubTrees.Count < 4; 76 } 72 77 } 73 78 }
Note: See TracChangeset
for help on using the changeset viewer.