Changeset 15907 for branches/2886_SymRegGrammarEnumeration/Test
- Timestamp:
- 04/16/18 15:19:58 (6 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2886_SymRegGrammarEnumeration/Test/GrammarEnumerationTest.cs
r15883 r15907 304 304 xSymbol, ySymbol, mulSymbol, ySymbol, mulSymbol, constSymbol, mulSymbol, 305 305 ySymbol, ySymbol, mulSymbol, constSymbol, mulSymbol, addSymbol, constSymbol, addSymbol, invSymbol, 306 constSymbol, addSymbol 306 constSymbol, addSymbol 307 307 }); 308 308 … … 339 339 ySymbol, ySymbol, mulSymbol, constSymbol, mulSymbol, addSymbol, 340 340 ySymbol, constSymbol, mulSymbol, addSymbol, 341 constSymbol, addSymbol 341 constSymbol, addSymbol 342 342 }); 343 343 … … 362 362 363 363 alg.Start(); 364 364 365 365 TerminalSymbol constSymbol = alg.Grammar.Const; 366 366 TerminalSymbol xSymbol = alg.Grammar.VarTerminals.First(); … … 370 370 TerminalSymbol divSymbol = alg.Grammar.Inv; 371 371 372 372 373 373 // x x mul c mul y y mul c mul add const add inv const mul const add 374 374 SymbolString targetSolution = new SymbolString(new[] { 375 xSymbol, xSymbol, mulSymbol, constSymbol, mulSymbol, 375 xSymbol, xSymbol, mulSymbol, constSymbol, mulSymbol, 376 376 ySymbol, ySymbol, mulSymbol, constSymbol, mulSymbol, addSymbol, 377 377 constSymbol, addSymbol, divSymbol, … … 410 410 xSymbol, xSymbol, mulSymbol, xSymbol, mulSymbol, constSymbol, mulSymbol, 411 411 ySymbol, ySymbol, mulSymbol, ySymbol, mulSymbol, constSymbol, mulSymbol, addSymbol, 412 ySymbol, constSymbol, mulSymbol, addSymbol, 412 ySymbol, constSymbol, mulSymbol, addSymbol, 413 413 xSymbol, constSymbol, mulSymbol, addSymbol, 414 414 constSymbol, addSymbol … … 422 422 423 423 // Evaluate 424 EvaluateGrammarEnumeration(); 425 } 426 427 [TestMethod] 428 [TestProperty("Goal", "Poly-10 derivatives")] 429 public void MctsSymbReg_NoConstants_Poly10_Part1() { 430 alg.MaxComplexity = 12; 431 alg.OptimizeConstants = false; 432 var regProblem = new PolyTen(123).GenerateRegressionData(); 433 434 // Y = X1*X2 + X3*X4 + X5*X6 + X1*X7*X9 + X3*X6*X10 435 // Y' = X1*X2 + X3*X4 + X5*X6 436 // simplify problem by changing target 437 var ds = ((Dataset)regProblem.Dataset).ToModifiable(); 438 var ys = ds.GetDoubleValues("Y").ToArray(); 439 var x1 = ds.GetDoubleValues("X1").ToArray(); 440 var x2 = ds.GetDoubleValues("X2").ToArray(); 441 var x3 = ds.GetDoubleValues("X3").ToArray(); 442 var x4 = ds.GetDoubleValues("X4").ToArray(); 443 var x5 = ds.GetDoubleValues("X5").ToArray(); 444 var x6 = ds.GetDoubleValues("X6").ToArray(); 445 var x7 = ds.GetDoubleValues("X7").ToArray(); 446 var x8 = ds.GetDoubleValues("X8").ToArray(); 447 var x9 = ds.GetDoubleValues("X9").ToArray(); 448 var x10 = ds.GetDoubleValues("X10").ToArray(); 449 for (int i = 0; i < ys.Length; i++) { 450 //ys[i] -= x1[i] * x7[i] * x9[i]; 451 //ys[i] -= x3[i] * x6[i] * x10[i]; 452 } 453 ds.ReplaceVariable("Y", ys.ToList()); 454 455 alg.Problem.ProblemData = new RegressionProblemData(ds, regProblem.AllowedInputVariables, regProblem.TargetVariable); 456 457 alg.Start(); 458 424 459 EvaluateGrammarEnumeration(); 425 460 }
Note: See TracChangeset
for help on using the changeset viewer.