Showing posts with label result. Show all posts
Showing posts with label result. Show all posts

Monday, October 22, 2012

Results of Breeding

Changing some parameters of the base configuration, and running sessions on that configurations, led to the following results.

Meaning of the columns in the following table:

1. Configuration
2. Session ID
3. Qualification
4 - 11. Generation of the session

The configurations mean:
base: The base configuration
crossoverProb05: Set crossover probability to 5%
crossoverProb09: Set crossover probability to 9%
decMutationProb10: Decreased mutation probablity to 10%
evaluateElite: Use elite selection strategy
grammarRuleFourRules: Generate always 4 rules
grammarRuleThreeRules: Generte always 3 rules
grammarRuleTwoRules: Generate akways 2 rules
incMaxWrapTo5: Increase max wrap to 5
incMutationProb10: Increase mutation probability to 10%
maxDepth15: Set max depth to 15
nodal: Use a nodal mutation strategy
nodalMaxDerivationTreeDepth1: Use a nodal mutation strategy with derivation tree depth of 1
nodalMaxDerivationTreeDepth10: Use a nodal mutation strategy with derivation tree depth of 10
nodalMaxDerivationTreeDepth2: Use a nodal mutation strategy with derivation tree depth of 2
populationSize40: Popuöation size 40

base20120619-19451292,3 31,5 4,1 3,61102550100200500
20120612-21062397,3 46,8 6,5 5,81102550100200500
20120615-19252529,9 29,9 7,0 7,0110255010020050010003000
20120613-10422147,3 24,4 8,9 7,01102550100200
20120615-21045348,4 19,4 12,3 8,9110255010020050010003000
20120611-10270739,7 18,3 11,9 8,911025501002005001000
20120611-18495645,0 23,5 18,7 9,61102550100200500
20120613-18531193,7 47,5 13,9 9,811025501002005001000
20120612-09394648,2 19,4 13,9 9,81102550100200500
20120610-23362732,7 19,3 12,2 10,71102550100200500
20120614-10332232,5 14,1 11,0 11,01102550100200
20120614-19573023,3 18,3 - 11,91102550100
20120611-190036395,5 24,4 16,3 12,1110255010020050010003000
20120610-09425790,4 23,5 13,8 12,21102550100200500
20120609-10273889,9 32,6 12,2 12,211025501002005001000
20120615-174629226,5 38,7 16,2 12,311025501002005001000
20120609-171239276,8 30,9 15,6 13,51102550100200500
20120608-2333504446,2 97,3 15,9 13,711025501002005001000
20120610-00264047,8 24,1 19,4 13,911025501002005001000
20120610-175412248,6 32,6 14,0 14,01102550100200
20120609-23465923,8 16,1 - 16,11102550100
20120608-1925181195,5 46,5 19,4 16,21102550100200
20120613-08423197,2 76,4 29,7 28,91102550100200500
crossoverProb0520120717-11270115,8 12,1 8,2 7,011025501002005001000
20120713-10422130,5 30,2 15,7 13,511025501002005001000
crossoverProb0920120713-104225191,6 23,6 10,9 8,911025501002005001000
20120717-112706987,1 91,4 18,6 15,311025501002005001000
decMutationProb1020120615-2104532340,6 807,8 8,9 5,2110255010020050010003000
20120615-174629236,9 14,0 9,0 6,611025501002005001000
20120615-19252532,3 16,1 9,8 7,5110255010020050010003000
20120705-2224111585,1 42,0 18,9 7,511025501002005001000
20120703-22115447,9 16,2 12,2 7,611025501002005001000
20120702-08132924,2 19,6 12,3 9,011025501002005001000
20120614-19573097,2 23,1 - 9,81102550100
20120613-18531146,5 24,2 13,9 9,811025501002005001000
20120705-232615216,7 69,1 14,0 10,911025501002005001000
20120614-19504031,3 23,2 13,6 12,01102550100200
20120620-03540645,4 22,9 15,8 13,611025501002005001000
20120630-15135475,2 75,2 18,6 13,611025501002005001000
20120702-19105632,6 24,4 18,6 13,811025501002005001000
20120703-20032346,9 24,1 16,5 14,111025501002005001000
20120614-1033221595,1 42,5 23,3 18,41102550100200
20120619-19451249,0 43,9 18,8 18,81102550100200500
evaluateElite20120713-10424423,7 13,8 9,8 9,811025501002005001000
20120717-11272243,1 10,9 10,9 10,911025501002005001000
grammarRuleFourRules20120721-10043524,0 18,9 12,3 7,5110255010020050010003000
grammarRuleThreeRules20120725-11035742,6 39,5 4,0 2,7110255010020050010003000
20120721-100429617,1 19,5 12,3 7,1110255010020050010003000
grammarRuleTwoRules20120721-10042416,3 14,0 8,2 6,1110255010020050010003000
incMaxWrapTo520120703-22115430,0 16,4 2,7 2,611025501002005001000
20120630-15135494,7 31,1 7,1 5,211025501002005001000
20120702-08132995,5 10,9 9,7 7,011025501002005001000
20120614-18024749,1 19,7 7,1 7,1110255010020050010003000
20120705-232615191,7 68,5 18,7 7,611025501002005001000
20120620-03540675,3 65,4 16,3 9,011025501002005001000
20120702-19105632,1 24,1 15,9 10,711025501002005001000
20120705-222411696,9 22,7 18,4 13,511025501002005001000
20120703-20032341,3 23,2 15,6 15,61102550100200500
incMutationProb1020120614-10332244,1 22,8 3,8 3,3110255010020050010003000
20120610-09423631,4 29,6 4,9 3,91102550100200500
20120614-122812343,1 32,8 4,7 4,7110255010020050010003000
20120612-21062392,3 39,8 12,1 6,211025501002005001000
20120620-03540632,1 19,6 12,2 6,2110255010020050010003000
20120611-18495624,7 16,4 7,0 6,51102550100200500
20120611-10274118,3 18,3 10,9 7,011025501002005001000
20120612-093946698,3 19,6 9,0 7,11102550100200500
20120613-1853111069,1 24,2 12,2 9,811025501002005001000
20120611-19003629,8 18,6 13,9 12,1110255010020050010003000
20120613-10422131,8 16,1 14,0 12,11102550100200500
20120613-08423172,0 45,3 13,8 12,211025501002005001000
20120610-2342094481,0 44,0 19,3 13,811025501002005001000
20120610-17542780,1 23,1 14,1 14,01102550100200
20120611-11373380,4 77,9 22,8 18,51102550100200500
maxDepth1520120717-11273297,4 48,9 6,2 5,811025501002005001000
20120713-10424540,6 22,6 15,6 13,411025501002005001000
nodal20120824-163537221,9 193,6 177,1 152,9110255010020050010003000
20120824-163449392,5 310,1 190,0 171,6110255010020050010003000
20120827-190453353,4 295,8 188,7 186,11102550100200500
20120827-190432556,5 258,8 199,0 194,21102550100200500
nodalMaxDerivationTreeDepth120120809-19465318,4 13,5 13,4 9,6110255010020050010003000
20120814-18165279,3 30,2 15,9 15,711025501002005001000
nodalMaxDerivationTreeDepth1020120809-19470547,9 14,1 6,1 4,5110255010020050010003000
20120814-18170432,2 16,3 12,2 9,011025501002005001000
nodalMaxDerivationTreeDepth220120809-19465876,9 13,6 6,6 3,8110255010020050010003000
20120814-1816581360,4 48,4 12,3 8,911025501002005001000
populationSize4020120713-10423446,0 29,9 9,6 4,111025501002005001000
20120717-11271391,1 47,5 10,9 9,811025501002005001000

Thursday, January 12, 2012

First Results in Rule Optimizing

Using the geva library from the natural computing research and application group leads to the first results.
Using geva you must invert the fitness value. Low value means high fitness. A value of 9000 means that the opponent is almost immedately thrown out of the arena. So we can see the breeding was really very successful.
This are the rules that where breeded.

RULEBLOCK GENERATED
 OR : MAX ; 
 ACCU : MAX;
 RULE 1 : IF  opponentDir IS invisible THEN leftVelo IS backward , rightVelo IS forward  ;
END_RULEBLOCK

 
The only generated rule focuses only on the opponent, and means turn around as long as you do not see the opponent. Otherwise use the default behaviour, which is go straight ahead if no rule matches. Very simple but effective.

The opponent was the manually desined fuzzy controlled robot using the following rules.

RULEBLOCK No1
    AND : MIN;
    ACT : MIN;
    ACCU : MAX;

    RULE 1 : IF opponentDir IS invisible
                    AND frontBorderDist IS near
                    AND leftBorderDist IS near
                    AND rightBorderDist IS near 
                THEN
                    rightVelo IS fastBackward,
                    leftVelo IS fastforward;

    RULE 3 : IF opponentDir IS invisible
                    AND (leftBorderDist IS medium OR leftBorderDist IS far)
                    AND rightBorderDist IS near
                THEN
                    leftVelo IS standstill,
                    rightVelo IS forward;

    RULE 2 : IF opponentDir IS invisible
                    AND leftBorderDist IS near
                    AND (rightBorderDist IS medium OR rightBorderDist IS far)
                THEN
                    rightVelo IS standstill,
                    leftVelo IS forward;

    RULE 4 : IF opponentDir IS left
                THEN
                    leftVelo IS fastforward,
                    rightVelo IS forward;

    RULE 5 : IF opponentDir IS right
                THEN
                    leftVelo IS forward,
                    rightVelo IS fastforward;

    RULE 6 : IF opponentDir IS center
                THEN
                    leftVelo IS fastforward,
                    rightVelo IS fastforward;

END_RULEBLOCK


You can see that robot, fighing against a clone of itself using the follwing link: Manual vs Manual



Wednesday, December 14, 2011

Another low variance long running session

This will probably be the last parameter optimizing session, as parameter optimizing does not bring the expected results.
The average fitness never exceeds 1000. After 1000 generations there is an improvement in the maximum values, but the no further advancements.
Have a look at the robots after 0, 300, 1000 and 2216 generations.

A long running low variance breeding session

This breeding session generated the absolute maximum average (and max) fitness. Relatively fast it rises to more than 10000 in average. That means that more than half of the individuals of a population could win their matches against the reference robot.
Why could there no further improvement? No idea.
See the robots in action after:
0, 1000, 2000 and 2384 generations

Thursday, December 8, 2011

Low variance initial generation

As the performace of the results of parameter optimizing did never get even near the results of the manually designed fuzzy controllers, I tryed to make the inital generation almost equal to the manually choosen parameters (low variance). The GA sould not find a better solutioion somewhere in the waste area of parameters, but find an optimized solution staring at a almost optimal solution.
Here are the results of that.

The fitness rises immediately to a much higher average and maximum than in the sessions with random initial generation (see the results in older posts).
Here are some of the best performers of their generations. The violet sumo is the 'breeded' one.

Another long running breeding session

See the behaviour after several generations.

A long running breeding session

I let a session run for several days (on my not very fast computer) to see what happens after several thousand generations.
The result of that session shows that a minimum improvement can be achieved after a view hundred generations.
Check the behaviour of the fittest individual in that phase.
The pink sumo robot contains the 'breeded' controller whereas the blue one is controlled by a manually designed fuzzy controller. Obviously the breeded robot does not have a chance towin against the manually designed one. Even not after more than 1900 generations.
Here are some more breeded robots after the increase of fitness at about 3500 generations.