RSS 2.0 Feed

» Welcome Guest Log In :: Register

Pages: (13) < [1] 2 3 4 5 6 ... >   
  Topic: Evolutionary Computation, Stuff that drives AEs nuts< Next Oldest | Next Newest >  
Wesley R. Elsberry



Posts: 4491
Joined: May 2002

(Permalink) Posted: Mar. 18 2009,13:19   

More "weasel" math:

Probability of a candidate changing a parent's correct base to an incorrect base = PCandidate_C2I =

(1 - (1 - (u * (K - 1) / K))C)

Probability that a population will have at least one candidate that preserves all the correct bases from the parent of the previous generation = PPopulation_C2C =

1 - (PCandidate_C2I )N

Checked via Monte Carlo methods, and using the N=50 and u=0.05 values that (IIRC) ROb was often using:

Code Sample

1000 runs, 00 correct : p_c2c calc = 1.00000, MC = 1.00000; p_c2i calc = 0.00000, MC = 0.00000

1000 runs, N=50, u=0.05000, K=27, C=0, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.00000

1000 runs, 01 correct : p_c2c calc = 0.95185, MC = 0.93800; p_c2i calc = 0.04815, MC = 0.06200

1000 runs, N=50, u=0.05000, K=27, C=1, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.04726

1000 runs, 02 correct : p_c2c calc = 0.90602, MC = 0.90400; p_c2i calc = 0.09398, MC = 0.09600

1000 runs, N=50, u=0.05000, K=27, C=2, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.09476

1000 runs, 03 correct : p_c2c calc = 0.86240, MC = 0.85900; p_c2i calc = 0.13760, MC = 0.14100

1000 runs, N=50, u=0.05000, K=27, C=3, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.13592

1000 runs, 04 correct : p_c2c calc = 0.82088, MC = 0.82400; p_c2i calc = 0.17912, MC = 0.17600

1000 runs, N=50, u=0.05000, K=27, C=4, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.17810

1000 runs, 05 correct : p_c2c calc = 0.78135, MC = 0.80400; p_c2i calc = 0.21865, MC = 0.19600

1000 runs, N=50, u=0.05000, K=27, C=5, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.21618

1000 runs, 06 correct : p_c2c calc = 0.74373, MC = 0.75900; p_c2i calc = 0.25627, MC = 0.24100

1000 runs, N=50, u=0.05000, K=27, C=6, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.25848

1000 runs, 07 correct : p_c2c calc = 0.70792, MC = 0.74400; p_c2i calc = 0.29208, MC = 0.25600

1000 runs, N=50, u=0.05000, K=27, C=7, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.29226

1000 runs, 08 correct : p_c2c calc = 0.67384, MC = 0.67200; p_c2i calc = 0.32616, MC = 0.32800

1000 runs, N=50, u=0.05000, K=27, C=8, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.32460

1000 runs, 09 correct : p_c2c calc = 0.64139, MC = 0.62100; p_c2i calc = 0.35861, MC = 0.37900

1000 runs, N=50, u=0.05000, K=27, C=9, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.36086

1000 runs, 10 correct : p_c2c calc = 0.61051, MC = 0.61000; p_c2i calc = 0.38949, MC = 0.39000

1000 runs, N=50, u=0.05000, K=27, C=10, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.38966

1000 runs, 11 correct : p_c2c calc = 0.58112, MC = 0.59500; p_c2i calc = 0.41888, MC = 0.40500

1000 runs, N=50, u=0.05000, K=27, C=11, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.42060

1000 runs, 12 correct : p_c2c calc = 0.55314, MC = 0.54600; p_c2i calc = 0.44686, MC = 0.45400

1000 runs, N=50, u=0.05000, K=27, C=12, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.44794

1000 runs, 13 correct : p_c2c calc = 0.52650, MC = 0.52000; p_c2i calc = 0.47350, MC = 0.48000

1000 runs, N=50, u=0.05000, K=27, C=13, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.47050

1000 runs, 14 correct : p_c2c calc = 0.50115, MC = 0.50900; p_c2i calc = 0.49885, MC = 0.49100

1000 runs, N=50, u=0.05000, K=27, C=14, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.50130

1000 runs, 15 correct : p_c2c calc = 0.47702, MC = 0.45800; p_c2i calc = 0.52298, MC = 0.54200

1000 runs, N=50, u=0.05000, K=27, C=15, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.51658

1000 runs, 16 correct : p_c2c calc = 0.45406, MC = 0.48200; p_c2i calc = 0.54594, MC = 0.51800

1000 runs, N=50, u=0.05000, K=27, C=16, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.54270

1000 runs, 17 correct : p_c2c calc = 0.43219, MC = 0.41800; p_c2i calc = 0.56781, MC = 0.58200

1000 runs, N=50, u=0.05000, K=27, C=17, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.56708

1000 runs, 18 correct : p_c2c calc = 0.41139, MC = 0.41200; p_c2i calc = 0.58861, MC = 0.58800

1000 runs, N=50, u=0.05000, K=27, C=18, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.59218

1000 runs, 19 correct : p_c2c calc = 0.39158, MC = 0.35000; p_c2i calc = 0.60842, MC = 0.65000

1000 runs, N=50, u=0.05000, K=27, C=19, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.61070

1000 runs, 20 correct : p_c2c calc = 0.37272, MC = 0.37200; p_c2i calc = 0.62728, MC = 0.62800

1000 runs, N=50, u=0.05000, K=27, C=20, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.62762

1000 runs, 21 correct : p_c2c calc = 0.35478, MC = 0.33300; p_c2i calc = 0.64522, MC = 0.66700

1000 runs, N=50, u=0.05000, K=27, C=21, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.64048

1000 runs, 22 correct : p_c2c calc = 0.33770, MC = 0.32200; p_c2i calc = 0.66230, MC = 0.67800

1000 runs, N=50, u=0.05000, K=27, C=22, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.66146

1000 runs, 23 correct : p_c2c calc = 0.32144, MC = 0.31500; p_c2i calc = 0.67856, MC = 0.68500

1000 runs, N=50, u=0.05000, K=27, C=23, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.67854

1000 runs, 24 correct : p_c2c calc = 0.30596, MC = 0.28900; p_c2i calc = 0.69404, MC = 0.71100

1000 runs, N=50, u=0.05000, K=27, C=24, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.69380

1000 runs, 25 correct : p_c2c calc = 0.29123, MC = 0.28000; p_c2i calc = 0.70877, MC = 0.72000

1000 runs, N=50, u=0.05000, K=27, C=25, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.70792

1000 runs, 26 correct : p_c2c calc = 0.27721, MC = 0.27700; p_c2i calc = 0.72279, MC = 0.72300

1000 runs, N=50, u=0.05000, K=27, C=26, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.72154

1000 runs, 27 correct : p_c2c calc = 0.26386, MC = 0.23500; p_c2i calc = 0.73614, MC = 0.76500

1000 runs, N=50, u=0.05000, K=27, C=27, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.73644

1000 runs, 28 correct : p_c2c calc = 0.25116, MC = 0.24500; p_c2i calc = 0.74884, MC = 0.75500

1000 runs, N=50, u=0.05000, K=27, C=28, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.74932


The above completely explains why a list showing the best candidate from each generation is highly unlikely to show any change in a correct character when a candidate bearing it was selected as best in a previous generation. The proportion of candidates that had a change of a correct character to an incorrect one nonetheless rises to almost three-quarters of each generation when almost all characters are correct.

Now doing the Monte Carlo methods on the situation with N=12 and u=0.18, where I picked N and u in order to get a range of values for the population that went down to a relatively small probability.

Code Sample

1000 runs, 00 correct : p_c2c calc = 1.00000, MC = 1.00000; p_c2i calc = 0.00000, MC = 0.00000

1000 runs, N=12, u=0.18000, K=27, C=0, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.00000

1000 runs, 01 correct : p_c2c calc = 0.82667, MC = 0.82700; p_c2i calc = 0.17333, MC = 0.17300

1000 runs, N=12, u=0.18000, K=27, C=1, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.17058

1000 runs, 02 correct : p_c2c calc = 0.68338, MC = 0.69300; p_c2i calc = 0.31662, MC = 0.30700

1000 runs, N=12, u=0.18000, K=27, C=2, p_pop_c2c calc = 1.00000, MC = 1.00000
Proportion of candidates w/C2I bases = 0.32233

1000 runs, 03 correct : p_c2c calc = 0.56493, MC = 0.56600; p_c2i calc = 0.43507, MC = 0.43400

1000 runs, N=12, u=0.18000, K=27, C=3, p_pop_c2c calc = 0.99995, MC = 1.00000
Proportion of candidates w/C2I bases = 0.44117

1000 runs, 04 correct : p_c2c calc = 0.46701, MC = 0.48600; p_c2i calc = 0.53299, MC = 0.51400

1000 runs, N=12, u=0.18000, K=27, C=4, p_pop_c2c calc = 0.99947, MC = 1.00000
Proportion of candidates w/C2I bases = 0.53508

1000 runs, 05 correct : p_c2c calc = 0.38606, MC = 0.39800; p_c2i calc = 0.61394, MC = 0.60200

1000 runs, N=12, u=0.18000, K=27, C=5, p_pop_c2c calc = 0.99713, MC = 0.99700
Proportion of candidates w/C2I bases = 0.61167

1000 runs, 06 correct : p_c2c calc = 0.31914, MC = 0.32100; p_c2i calc = 0.68086, MC = 0.67900

1000 runs, N=12, u=0.18000, K=27, C=6, p_pop_c2c calc = 0.99008, MC = 0.99200
Proportion of candidates w/C2I bases = 0.67967

1000 runs, 07 correct : p_c2c calc = 0.26382, MC = 0.25100; p_c2i calc = 0.73618, MC = 0.74900

1000 runs, N=12, u=0.18000, K=27, C=7, p_pop_c2c calc = 0.97466, MC = 0.97200
Proportion of candidates w/C2I bases = 0.73475

1000 runs, 08 correct : p_c2c calc = 0.21809, MC = 0.23600; p_c2i calc = 0.78191, MC = 0.76400

1000 runs, N=12, u=0.18000, K=27, C=8, p_pop_c2c calc = 0.94778, MC = 0.95500
Proportion of candidates w/C2I bases = 0.78383

1000 runs, 09 correct : p_c2c calc = 0.18029, MC = 0.19100; p_c2i calc = 0.81971, MC = 0.80900

1000 runs, N=12, u=0.18000, K=27, C=9, p_pop_c2c calc = 0.90797, MC = 0.91400
Proportion of candidates w/C2I bases = 0.81492

1000 runs, 10 correct : p_c2c calc = 0.14904, MC = 0.16000; p_c2i calc = 0.85096, MC = 0.84000

1000 runs, N=12, u=0.18000, K=27, C=10, p_pop_c2c calc = 0.85582, MC = 0.85600
Proportion of candidates w/C2I bases = 0.85667

1000 runs, 11 correct : p_c2c calc = 0.12321, MC = 0.12900; p_c2i calc = 0.87679, MC = 0.87100

1000 runs, N=12, u=0.18000, K=27, C=11, p_pop_c2c calc = 0.79357, MC = 0.78600
Proportion of candidates w/C2I bases = 0.88083

1000 runs, 12 correct : p_c2c calc = 0.10185, MC = 0.09800; p_c2i calc = 0.89815, MC = 0.90200

1000 runs, N=12, u=0.18000, K=27, C=12, p_pop_c2c calc = 0.72446, MC = 0.72100
Proportion of candidates w/C2I bases = 0.89900

1000 runs, 13 correct : p_c2c calc = 0.08420, MC = 0.08100; p_c2i calc = 0.91580, MC = 0.91900

1000 runs, N=12, u=0.18000, K=27, C=13, p_pop_c2c calc = 0.65196, MC = 0.66100
Proportion of candidates w/C2I bases = 0.91458

1000 runs, 14 correct : p_c2c calc = 0.06960, MC = 0.07600; p_c2i calc = 0.93040, MC = 0.92400

1000 runs, N=12, u=0.18000, K=27, C=14, p_pop_c2c calc = 0.57925, MC = 0.55400
Proportion of candidates w/C2I bases = 0.93192

1000 runs, 15 correct : p_c2c calc = 0.05754, MC = 0.06100; p_c2i calc = 0.94246, MC = 0.93900

1000 runs, N=12, u=0.18000, K=27, C=15, p_pop_c2c calc = 0.50891, MC = 0.50000
Proportion of candidates w/C2I bases = 0.94333

1000 runs, 16 correct : p_c2c calc = 0.04756, MC = 0.03900; p_c2i calc = 0.95244, MC = 0.96100

1000 runs, N=12, u=0.18000, K=27, C=16, p_pop_c2c calc = 0.44278, MC = 0.45400
Proportion of candidates w/C2I bases = 0.95083

1000 runs, 17 correct : p_c2c calc = 0.03932, MC = 0.03800; p_c2i calc = 0.96068, MC = 0.96200

1000 runs, N=12, u=0.18000, K=27, C=17, p_pop_c2c calc = 0.38206, MC = 0.38200
Proportion of candidates w/C2I bases = 0.96183

1000 runs, 18 correct : p_c2c calc = 0.03250, MC = 0.03600; p_c2i calc = 0.96750, MC = 0.96400

1000 runs, N=12, u=0.18000, K=27, C=18, p_pop_c2c calc = 0.32736, MC = 0.32200
Proportion of candidates w/C2I bases = 0.96875

1000 runs, 19 correct : p_c2c calc = 0.02687, MC = 0.03200; p_c2i calc = 0.97313, MC = 0.96800

1000 runs, N=12, u=0.18000, K=27, C=19, p_pop_c2c calc = 0.27881, MC = 0.25300
Proportion of candidates w/C2I bases = 0.97600

1000 runs, 20 correct : p_c2c calc = 0.02221, MC = 0.02000; p_c2i calc = 0.97779, MC = 0.98000

1000 runs, N=12, u=0.18000, K=27, C=20, p_pop_c2c calc = 0.23629, MC = 0.23400
Proportion of candidates w/C2I bases = 0.97817

1000 runs, 21 correct : p_c2c calc = 0.01836, MC = 0.01800; p_c2i calc = 0.98164, MC = 0.98200

1000 runs, N=12, u=0.18000, K=27, C=21, p_pop_c2c calc = 0.19941, MC = 0.19100
Proportion of candidates w/C2I bases = 0.98308

1000 runs, 22 correct : p_c2c calc = 0.01518, MC = 0.01600; p_c2i calc = 0.98482, MC = 0.98400

1000 runs, N=12, u=0.18000, K=27, C=22, p_pop_c2c calc = 0.16769, MC = 0.17300
Proportion of candidates w/C2I bases = 0.98458

1000 runs, 23 correct : p_c2c calc = 0.01255, MC = 0.00600; p_c2i calc = 0.98745, MC = 0.99400

1000 runs, N=12, u=0.18000, K=27, C=23, p_pop_c2c calc = 0.14061, MC = 0.15400
Proportion of candidates w/C2I bases = 0.98617

1000 runs, 24 correct : p_c2c calc = 0.01037, MC = 0.01400; p_c2i calc = 0.98963, MC = 0.98600

1000 runs, N=12, u=0.18000, K=27, C=24, p_pop_c2c calc = 0.11762, MC = 0.11200
Proportion of candidates w/C2I bases = 0.99042

1000 runs, 25 correct : p_c2c calc = 0.00858, MC = 0.00600; p_c2i calc = 0.99142, MC = 0.99400

1000 runs, N=12, u=0.18000, K=27, C=25, p_pop_c2c calc = 0.09819, MC = 0.10400
Proportion of candidates w/C2I bases = 0.99075

1000 runs, 26 correct : p_c2c calc = 0.00709, MC = 0.01200; p_c2i calc = 0.99291, MC = 0.98800

1000 runs, N=12, u=0.18000, K=27, C=26, p_pop_c2c calc = 0.08183, MC = 0.08000
Proportion of candidates w/C2I bases = 0.99283

1000 runs, 27 correct : p_c2c calc = 0.00586, MC = 0.00700; p_c2i calc = 0.99414, MC = 0.99300

1000 runs, N=12, u=0.18000, K=27, C=27, p_pop_c2c calc = 0.06810, MC = 0.07400
Proportion of candidates w/C2I bases = 0.99358

1000 runs, 28 correct : p_c2c calc = 0.00484, MC = 0.00600; p_c2i calc = 0.99516, MC = 0.99400

1000 runs, N=12, u=0.18000, K=27, C=28, p_pop_c2c calc = 0.05661, MC = 0.04400
Proportion of candidates w/C2I bases = 0.99617


The above shows that in order to have low probabilities that the best candidate in a generation will retain all the characters that were correct in the parent, one must have small N and relatively high u values.

--------------
"You can't teach an old dogma new tricks." - Dorothy Parker

    
  360 replies since Mar. 17 2009,11:00 < Next Oldest | Next Newest >  

Pages: (13) < [1] 2 3 4 5 6 ... >   


Track this topic Email this topic Print this topic

[ Read the Board Rules ] | [Useful Links] | [Evolving Designs]