diff --git a/ea/Ub5/EvA2_Symbolic_Regression_problem+GA_Mon_2015.06.22_at_21.41.14.txt b/ea/Ub5/EvA2_Symbolic_Regression_problem+GA_Mon_2015.06.22_at_21.41.14.txt new file mode 100644 index 0000000..09c8305 --- /dev/null +++ b/ea/Ub5/EvA2_Symbolic_Regression_problem+GA_Mon_2015.06.22_at_21.41.14.txt @@ -0,0 +1,142 @@ +StartDate:Mon_2015.06.22_at_21.41.14 +On Host:localhost + +****** Multirun 0 +Module parameters: + eva2.server.modules.GOParameters{ + optimizer= + eva2.server.go.strategies.GeneticAlgorithm{ + elitism= true; + numberOfPartners= 1; + parentSelection= + eva2.server.go.operators.selection.SelectBestIndividuals{ + obeyDebsConstViolationPrinciple= true; }; + partnerSelection= + eva2.server.go.operators.selection.SelectBestIndividuals{ + obeyDebsConstViolationPrinciple= true; }; + population= + eva2.server.go.populations.Population{ + initAround= 0.1; + initMethod= individualDefault; + initPos=[ + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 + 0.0 ]; + popMetric= + eva2.server.go.operators.distancemetric.PhenotypeMetric{}; + seedCardinality= (5,1); + targetSize= 5; }; }; + postProcessParams= + eva2.server.go.operators.postprocess.PostProcessParams{ + PPMethod= nelderMead; + accAssumeConv= 1.0E-8; + accMaxEval= -1; + accuracies=[ + 0.01 ]; + doPostProcessing= false; + postProcessClusterSigma= 0.05; + postProcessSteps= 5000; + printNBest= 10; + withPlot= false; }; + problem= + eva2.server.go.problems.PSymbolicRegression{ + GPIndividual= + eva2.server.go.individuals.GPIndividualProgramData{ + checkMaxDepth= true; + crossoverOperator= + eva2.server.go.operators.crossover.CrossoverGPDefault{}; + crossoverProbability= 1.0; + initDepth= 4; + initFullGrowRatio= 0.5; + initOperator= + eva2.server.go.operators.initialization.DefaultInitialization{}; + maxAllowedDepth= 8; + mutationOperator= + eva2.server.go.operators.mutation.MutateDefault{}; + mutationProbability= 0.2; }; + area= + eva2.server.go.individuals.codings.gp.GPArea{}; + defaultAccuracy= 0.001; + lowerBound= -1.0; + noise= 0.0; + numberOfCheckPoints= 20; + numberOfConstants= 3; + parallelThreads= 1; + showResult= false; + targetFunction= + eva2.server.go.problems.regression.RFKoza_GPI_7_3{}; + upperBound= 1.0; + useInnerConst= false; + useLocalHillClimbing= false; }; + seed= 500; + terminator= EvaluationTerminator,calls=50; } +Statistics parameters: +StatParameter (eva2.server.stat.StatsParameter@5d4bebf2): +m_MultiRuns=25, m_Textoutput=0, verbosity= Final results +To Both file and text-window, [ currentBest meanFit currentWorst runBest currentBestFeasible runBestFeasible avgEucPopDistance maxEucPopDistance avgPopMetricDist maxPopMetricDist bestIndySize avgIndySize avgMaxIndyDepth solution ] +......................... +******* + Runs performed: 25, reached target 0 times with threshold 0.001, rate 0.0 + Average function calls: 50 + Feasible solution found in 25 of 25 runs + Average evaluations until feasible ind. was found in 25 runs: 5.0 evaluations + Averaged sum of run statistical data: (25 runs): 275.0 8.400622756773501 Infinity Infinity 8.400622756773501 8.360749160571213 8.351795085633176 6.609306749047762 8.941275280968748 6.609306749047762 8.941275280968748 69.28 81.59200000000004 30.28800000000002 + Averaged last statistical data (25 runs): 50.0 0.6855228285681008 Infinity 6.153062138700972E52 0.6855228285681008 0.6855228285681008 0.6855228285681008 0.6394906253532291 0.895327423841355 0.6394906253532291 0.895327423841355 7.8 8.816 3.032000000000001 +* Overall best ind.: eva2.server.go.individuals.GPIndividualProgramData{checkMaxDepth=true; crossoverOperator=eva2.server.go.operators.crossover.CrossoverGPDefault{}; crossoverProbability=1.0; initDepth=4; initFullGrowRatio=0.5; initOperator=eva2.server.go.operators.initialization.DefaultInitialization{}; maxAllowedDepth=8; mutationOperator=eva2.server.go.operators.mutation.MutateDefault{}; mutationProbability=0.2; } + solution data : {*(exp(*(exp(*(+(*(cos(pi), /(X0, X0)), exp(cos(pi))), cos(exp(cos(X0))))), /(X0, exp(1.0)))), /(X0, 1.0))} + solution fit : [ 0.2990970182485838 ] +Overall best statistical data: FunctionCalls currentBest meanFit currentWorst runBest currentBestFeasible runBestFeasible avgEucPopDistance maxEucPopDistance avgPopMetricDist maxPopMetricDist bestIndySize avgIndySize avgMaxIndyDepth solution +50 0.7550460726670315 1.1419887756849643 1.6104768934863931 0.7550460726670315 0.7550460726670315 0.7550460726670315 0.5733333333333334 0.8 0.5733333333333334 0.8 26 26.0 8.0 {*(exp(*(exp(*(+(*(cos(pi), /(X0, X0)), exp(cos(pi))), cos(exp(cos(X0))))), /(X0, exp(1.0)))), /(X0, 1.0))} + MultiRun stats: Mean best fitness: [ 0.6855228285681008 ] + MultiRun stats: Variance/Std.Dev.: [ 0.03724707215824555 0.19299500552668597 ] + MultiRun stats: Median best fitn.: [ 0.6882283083722263 ] +* Overall best feasible ind.: eva2.server.go.individuals.GPIndividualProgramData{checkMaxDepth=true; crossoverOperator=eva2.server.go.operators.crossover.CrossoverGPDefault{}; crossoverProbability=1.0; initDepth=4; initFullGrowRatio=0.5; initOperator=eva2.server.go.operators.initialization.DefaultInitialization{}; maxAllowedDepth=8; mutationOperator=eva2.server.go.operators.mutation.MutateDefault{}; mutationProbability=0.2; } + solution data : {*(exp(*(exp(*(+(*(cos(pi), /(X0, X0)), exp(cos(pi))), cos(exp(cos(X0))))), /(X0, exp(1.0)))), /(X0, 1.0))} + solution fit : [ 0.2990970182485838 ] + MultiRun stats: Mean best feasible fitness (25 runs): [ 0.6855228285681008 ] + MultiRun stats: Variance/Std.Dev.: [ 0.03724707215824555 0.19299500552668597 ] + MultiRun stats: Median best feasible fitn. (: 25 runs): [ 0.6882283083722263 ] + Averaged performance: +Iteration FunctionCalls currentBest meanFit currentWorst runBest currentBestFeasible runBestFeasible avgEucPopDistance maxEucPopDistance avgPopMetricDist maxPopMetricDist bestIndySize avgIndySize avgMaxIndyDepth solution +1 5.0 1.2795816187535172 Infinity Infinity 1.2795816187535172 1.2397080225512314 1.2397080225512314 0.6903165524689627 0.8440965651536605 0.6903165524689627 0.8440965651536605 5.04 6.368 2.44 null +2 10.0 1.063303788413066 Infinity 8.6448698282437714E18 1.063303788413066 1.063303788413066 1.0543497134750286 0.6627100833601157 0.8661611016927353 0.6627100833601157 0.8661611016927353 5.16 6.400000000000001 2.5920000000000005 null +4 20.0 0.8091207454979861 Infinity 1.19330549446887008E17 0.8091207454979861 0.8091207454979861 0.8091207454979861 0.6595147964758281 0.8990485732182661 0.6595147964758281 0.8990485732182661 7.12 8.472000000000001 3.248 null +5 25.0 0.7866911871039517 Infinity 3.3298289896083443E44 0.7866911871039517 0.7866911871039517 0.7866911871039517 0.6894611955530965 0.9261016612706624 0.6894611955530965 0.9261016612706624 7.04 8.463999999999999 3.0720000000000005 null +6 30.0 0.7379298303569312 2.3164752873104317E49 1.158237643655216E50 0.7379298303569312 0.7379298303569312 0.7379298303569312 0.6454089145206032 0.9043429050489746 0.6454089145206032 0.9043429050489746 7.48 8.064 3.0879999999999996 null +7 35.0 0.7325527789441466 1.968272036263038E159 9.841360181315191E159 0.7325527789441466 0.7325527789441466 0.7325527789441466 0.6569655500823934 0.9191179222969389 0.6569655500823934 0.9191179222969389 7.24 9.264 3.4239999999999986 null +9 45.0 0.6855228285681008 1.0126711343471039E50 5.06335567173552E50 0.6855228285681008 0.6855228285681008 0.6855228285681008 0.6300223170055239 0.8858683221020018 0.6300223170055239 0.8858683221020018 7.8 9.175999999999998 3.200000000000001 null +10 50.0 0.6855228285681008 Infinity 6.153062138700972E52 0.6855228285681008 0.6855228285681008 0.6855228285681008 0.6394906253532291 0.895327423841355 0.6394906253532291 0.895327423841355 7.8 8.816 3.032000000000001 null + Last data line of 25 multi-runs: +[ 50 0.40629024192837954 140.6119466321498 683.6589376996856 0.40629024192837954 0.40629024192837954 0.40629024192837954 0.6187161843752111 0.8663366336633663 0.6187161843752111 0.8663366336633663 40 31.8 6.6 {+(/(-(exp(1.0), *(exp(exp(X0)), 1.0)), +(sin(pi), *(-(-(cos(sin(1.0)), 1.0), +(sin(sin(pi)), +(exp(1.0), cos(X0)))), +(+(sin(exp(pi)), 1.0), -(pi, sin(X0)))))), X0)} ] +[ 50 0.4094143718644114 1.6566192189280708 4.463387904275842 0.4094143718644114 0.4094143718644114 0.4094143718644114 0.6193939393939394 0.9 0.6193939393939394 0.9 6 4.4 2.0 {*(+(1.0, cos(X0)), X0)} ] +[ 50 0.8481327769932886 3.739912251983024 14.90157754766671 0.8481327769932886 0.8481327769932886 0.8481327769932886 0.6895555920872376 0.9113924050632911 0.6895555920872376 0.9113924050632911 6 7.4 3.0 {+(sin(X0), /(X0, 1.0))} ] +[ 50 0.3534769916246338 2437.9284079424656 12187.201141710293 0.3534769916246338 0.3534769916246338 0.3534769916246338 0.7026030569708199 0.984251968503937 0.7026030569708199 0.984251968503937 5 9.0 2.6 {*(X0, +(X0, 1.0))} ] +[ 50 0.978897946117972 9.456832583796524 42.73232599315627 0.978897946117972 0.978897946117972 0.978897946117972 0.6489951489951491 0.9819819819819819 0.6489951489951491 0.9819819819819819 1 7.6 2.2 {X0} ] +[ 50 0.7829751334608502 1.844258485437728 2.5944761324768697 0.7829751334608502 0.7829751334608502 0.7829751334608502 0.4510844917677216 0.6326530612244898 0.4510844917677216 0.6326530612244898 11 13.0 7.6 {-(X0, cos(sin(sin(sin(-(exp(pi), sin(X0)))))))} ] +[ 50 0.8457004401293784 1.733294316328553 4.770745027565671 0.8457004401293784 0.8457004401293784 0.8457004401293784 0.7358209030641117 0.9583333333333334 0.7358209030641117 0.9583333333333334 5 5.6 2.2 {+(cos(X0), cos(X0))} ] +[ 50 0.6882283083722263 2.678099543425216 10.34691484589143 0.6882283083722263 0.6882283083722263 0.6882283083722263 0.5673469387755101 0.9591836734693877 0.5673469387755101 0.9591836734693877 2 3.8 1.8 {exp(X0)} ] +[ 50 0.7550460726670315 1.0787630969055617 1.6104768934863931 0.7550460726670315 0.7550460726670315 0.7550460726670315 0.4116841491841491 0.625 0.4116841491841491 0.625 7 4.6 1.8 {*(1.0, +(*(1.0, X0), 1.0))} ] +[ 50 0.8603092305617682 0.9077447167842496 0.978897946117972 0.8603092305617682 0.8603092305617682 0.8603092305617682 0.4666666666666667 0.7777777777777778 0.4666666666666667 0.7777777777777778 3 2.2 0.6 {+(X0, X0)} ] +[ 50 0.6344120730044255 2.3954453578281596 5.768347201398037 0.6344120730044255 0.6344120730044255 0.6344120730044255 0.779374718848403 0.9829059829059829 0.779374718848403 0.9829059829059829 5 9.6 3.2 {+(exp(cos(X0)), X0)} ] +[ 50 0.978897946117972 3.185593173760388E14 1.5927965868801475E15 0.978897946117972 0.978897946117972 0.978897946117972 0.636031746031746 0.8666666666666667 0.636031746031746 0.8666666666666667 1 2.6 1.0 {X0} ] +[ 50 0.5107848758622829 1826.6637986519204 9127.58693986167 0.5107848758622829 0.5107848758622829 0.5107848758622829 0.728402756967336 0.925531914893617 0.728402756967336 0.925531914893617 17 10.4 4.2 {*(*(/(cos(1.0), exp(sin(/(sin(cos(pi)), X0)))), exp(sin(X0))), sin(X0))} ] +[ 50 0.2990970182485838 48.651286320426344 238.75826882296525 0.2990970182485838 0.2990970182485838 0.2990970182485838 0.8002830026359439 0.9809523809523809 0.8002830026359439 0.9809523809523809 26 11.0 4.0 {*(exp(*(exp(*(+(*(cos(pi), /(X0, X0)), exp(cos(pi))), cos(exp(cos(X0))))), /(X0, exp(1.0)))), /(X0, 1.0))} ] +[ 50 0.608867448005736 14.322639187128516 66.22795082697021 0.608867448005736 0.608867448005736 0.608867448005736 0.5863441734417345 0.8166666666666667 0.5863441734417345 0.8166666666666667 6 7.8 3.6 {+(sin(sin(cos(1.0))), X0)} ] +[ 50 0.6882283083722263 6.941351294953128 31.663173603530993 0.6882283083722263 0.6882283083722263 0.6882283083722263 0.6012175324675324 0.9886363636363636 0.6012175324675324 0.9886363636363636 2 10.4 2.2 {exp(X0)} ] +[ 50 0.8369373077871817 1.115682941522143 1.7939087699990828 0.8369373077871817 0.8369373077871817 0.8369373077871817 0.6555950715950716 0.978021978021978 0.6555950715950716 0.978021978021978 6 8.6 4.2 {exp(cos(sin(/(X0, 1.0))))} ] +[ 50 0.6197601416485382 3.0765310693504856E53 1.538265534675243E54 0.6197601416485382 0.6197601416485382 0.6197601416485382 0.744633192528546 0.9496402877697842 0.744633192528546 0.9496402877697842 6 14.8 4.4 {+(exp(X0), cos(sin(X0)))} ] +[ 50 0.8603092305617682 2.283871506595834 5.174650717161607 0.8603092305617682 0.8603092305617682 0.8603092305617682 0.6155555555555556 0.9459459459459459 0.6155555555555556 0.9459459459459459 11 8.0 2.6 {+(-(X0, X0), +(-(X0, X0), +(X0, X0)))} ] +[ 50 0.4511578881644988 2.610873086313289E15 1.3054365431566434E16 0.4511578881644988 0.4511578881644988 0.4511578881644988 0.6640154960355544 0.8617021276595744 0.6640154960355544 0.8617021276595744 9 22.0 5.8 {*(*(X0, sin(-(pi, X0))), exp(X0))} ] +[ 50 0.6882283083722263 5.061865021492222 21.97507259848071 0.6882283083722263 0.6882283083722263 0.6882283083722263 0.646583850931677 0.9565217391304348 0.646583850931677 0.9565217391304348 2 3.4 1.2 {exp(X0)} ] +[ 50 0.6882283083722263 Infinity 2.647619652262746 0.6882283083722263 0.6882283083722263 0.6882283083722263 0.5929971988795518 0.8095238095238095 0.5929971988795518 0.8095238095238095 2 3.6 2.2 {exp(X0)} ] +[ 50 0.6107463271799114 2.592165218844859 7.040513266102282 0.6107463271799114 0.6107463271799114 0.6107463271799114 0.7009614781353912 0.9761904761904762 0.7009614781353912 0.9761904761904762 12 11.8 4.2 {+(/(exp(X0), /(X0, sin(/(X0, 1.0)))), cos(X0))} ] +[ 50 0.978897946117972 2.2231095600048763 5.433954301427349 0.978897946117972 0.978897946117972 0.978897946117972 0.7500694551628339 0.9473684210526315 0.7500694551628339 0.9473684210526315 1 5.2 2.2 {X0} ] +[ 50 0.7550460726670315 1.1419887756849643 1.6104768934863931 0.7550460726670315 0.7550460726670315 0.7550460726670315 0.5733333333333334 0.8 0.5733333333333334 0.8 3 1.8 0.4 {+(1.0, X0)} ] +StopDate:Mon_2015.06.22_at_21.41.14 diff --git a/ea/Ub5/GOParameters.ser b/ea/Ub5/GOParameters.ser index 2422490..6e233bc 100644 --- a/ea/Ub5/GOParameters.ser +++ b/ea/Ub5/GOParameters.ser Binary files differ diff --git a/ea/Ub5/Statistics.ser b/ea/Ub5/Statistics.ser index 4661123..175b000 100644 --- a/ea/Ub5/Statistics.ser +++ b/ea/Ub5/Statistics.ser Binary files differ diff --git a/ea/ub8/framework/gp/RegrIndividual.java b/ea/ub8/framework/gp/RegrIndividual.java index 04f7ef9..aa6cd3d 100644 --- a/ea/ub8/framework/gp/RegrIndividual.java +++ b/ea/ub8/framework/gp/RegrIndividual.java @@ -7,7 +7,7 @@ public class RegrIndividual extends GPTree implements InterfaceIndividual { static String term[] = { "1", "x", "pi" }; static String unary[] = { "exp", "sin", "cos" }; - static String binary[] = { "+", "-", "*", "/" }; + static String binary[] = { "+", "-", "*" }; static int maxHeight = 5; static int initHeight = 3; @@ -93,7 +93,7 @@ height = left.height + 1; break; case 2: - type = ran.nextInt(4); + type = ran.nextInt(3); left = new RegrIndividual(this, h - 1, mode); left.up = this; right = new RegrIndividual(this, h - 1, mode); @@ -189,8 +189,6 @@ return l.getF(x) - r.getF(x); case "*": return l.getF(x) * r.getF(x); - case "/": - return l.getF(x) / r.getF(x); } break; diff --git a/mr/ub8/mr8.pdf b/mr/ub8/mr8.pdf index 86a8443..1df49b1 100644 --- a/mr/ub8/mr8.pdf +++ b/mr/ub8/mr8.pdf Binary files differ diff --git a/mr/ub8/mr8.tex b/mr/ub8/mr8.tex index 4e9291a..32f0b08 100644 --- a/mr/ub8/mr8.tex +++ b/mr/ub8/mr8.tex @@ -130,6 +130,21 @@ \sigma_z=|c|\sigma_{x,t} $ \end{enumerate} +\Aufgabe{GP-Bäume}{8} +siehe code +\Aufgabe{Symbolische Regression mit GP}{6} +\begin{enumerate}[(a)] + \item siehe code + \item + Die Approximationsqualität ist in den ersten 15 Läufen sehr gut (Fitnessprünge von 0.05), nimmt dann aber ab. + \\Runs performed: 25, reached target 0. times with threshold 0.001.\\ + Feasible solution found in 25 of 25 runs. + \\ + solution data : {*(exp(*(exp(*(+(*(cos(pi), /(X0, X0)), exp(cos(pi))), cos(exp(cos(X0))))), /(X0, exp(1.0)))), /(X0, 1.0))} + $= e^{(e^{(cos(\pi)+e^{cos(pi)}\cdot cos( e^{cos(x)}))}\cdot\frac{x}{e})}\cdot x \\=e^{(e^{(-1+e^{-1}\cdot cos( e^{cos(x)}))}\cdot\frac{x}{e})}\cdot x$\\ + solution fit : [ 0.2990970182485838 ] + +\end{enumerate} \end{document}