Evolved Warriors and Benchmarks =============================== These tests were performed on June 21, 2000 by Terry Newton. File Name / aliases Wilkie Wilmoo ---- -------------- ------ ------ PUREPAP8 Red_Race 1/mypurepaper8.red 91.8 59.8 REDRACE1 red_race 1/wrapped around once 93.7 72.8 REDRACE6 redrace_6_08_00 128.6 102.7 AFFINITY w.red/affinity/bestwar1.red 100.6 97.2 V4_260 v4_260.red 125.0 105.2 EVOL1090 Evolver 1090 / Tt?? 105.6 100.1 EVOL538 Evolver 538 / TtMo 95.2 93.6 EVOL538 and EVOL1090 were posted to rec.games.corewar on June 1 and June 5, 2000 by Martin Ankerl. Made with RedMaker. Dave Hillis sent me REDRACE1 and PUREPAP8 via email in September of 1999, and V4_260, REDRACE6 and AFFINITY in June of 2000. Made with a modified version of GA_WAR. Quoted material at the beginning of warrior sections are comments from the evolver of the specimen. Command line used for testing: pmars -b -r 200 war1 war2 warrior1 is the benchmark warrior and warrior2 is the warrior being tested. Scoring is by pmars, adjusted to range up to 300 maximum for all wins. File/section/id names are just what I happened to name the files. ------------------------------------------------------- PUREPAP8 ;redcode-b verbose ;assert CORESIZE == 8000 ;name Red_Race 1 ;author Dave Hillis ;strat - Paper. Generated using a Genetic Algorithm. ; A "pure" paper: the strongest to date. 6/15/99 ;900th generation, population of 50. Hill size = 4 ;wilk = 91.8 ;aka mypurepaper8.red ;red_race/x1_48.red org S; S; sub.b { -1, } -1518 mov.i @ 82, < 4549 mov.i # 5910, # -1518 spl.b { 232, { 513 spl.f # 1116, @ 2480 spl.a > 2174, # 2164 mov.a * -66, # 5 mov.i < -8, < -1460 spl.i # 5772, } 2 mov.i } -11, } -4 mov.i > 728, { -255 djn.b < 578, { -3 mov.a > 551, { -8 end ; Opponent Scores Results Performance of Red_Race -------- ------ ------- ---------=---------=---------=---------= TimeScape (1.0) 248 179 2 25 173 *********** nobody special 282 159 0 41 159 ********** Paperone 263 170 1 32 167 *********** Marcia Trionfal 366 123 4 85 111 ******** Blue Funk 3 306 174 18 62 120 *********** Cannonade 274 175 8 41 151 *********** Tornado 194 386 122 58 20 ************************* Fire Storm v1.1 248 338 108 78 14 ********************** Rave 545 47 13 179 8 *** Iron Gate 437 131 33 135 32 ******** Porch Swing 418 166 50 134 16 *********** Thermite 1.0 411 156 41 126 33 ********** -------- ------ ------- ---------=---------=---------=---------= Wilkie Score: 91.8 Opponent Scores Results Performance of Red_Race -------- ------ ------- ---------=---------=---------=---------= Impfinity v4g1 290 164 6 48 146 ********** Newt 307 160 9 58 133 ********** The Fugitive 234 183 0 17 183 ************ unrequited love 288 159 2 45 153 ********** Blur 2 542 38 6 174 20 ** He Scans Alone 555 36 9 182 9 ** Electric Head 515 71 19 167 14 **** obvious to thos 363 171 35 99 66 *********** Jack in the box 395 113 7 101 92 ******* Scan Man 508 85 26 167 7 ***** Stepping Stone 452 131 38 145 17 ******** Torch t18 440 125 30 135 35 ******** -------- ------ ------- ---------=---------=---------=---------= Wilmoo Score: 59.8 ------------------------------------------------------- REDRACE1 Comments from Dave Hillis: " The population continues to progress after more than 1300 generations. They're all papers, but they vary the proportion of replications, core clears, imps, djn-streams, and the constants that they use. The higher Wilkies scorers tend to be heavier on the djn-streaming. The Wilkies scores are still creeping up. This one gets about 95. " ;redcode-94 ;assert CORESIZE == 8000 ;name red_race 1 ;wrapped around once ;wilk = 95.1 org S; S; mov.a } -499, > 8262 seq.i < -2781, > 11909 cmp.i @ 546, < 3885 sub.i > 10896, { 0 spl.i # 147, * -3 spl.b > 3251, } -1369 mov.i } 1611, < -1137 mov.i < -6, < 1306 spl.i # 2951, } 2 mov.i } -11, } -4 mov.i > 739, { -133 mov.i * -10, } -7 mov.i $ -2, { -4 djn.i > 2319, { 4178 end ; Opponent Scores Results Performance of red_race -------- ------ ------- ---------=---------=---------=---------= TimeScape (1.0) 272 167 2 37 161 *********** nobody special 282 162 2 42 156 ********** Paperone 301 157 5 53 142 ********** Marcia Trionfal 383 116 5 94 101 ******* Blue Funk 3 314 173 20 67 113 *********** Cannonade 269 194 19 44 137 ************ Tornado 93 501 165 29 6 ********************************* Fire Storm v1.1 263 326 105 84 11 ********************* Rave 499 94 29 164 7 ****** Iron Gate 482 95 24 153 23 ****** Porch Swing 454 133 40 147 13 ******** Thermite 1.0 451 133 39 145 16 ******** -------- ------ ------- ---------=---------=---------=---------= Wilkie Score: 93.7 Opponent Scores Results Performance of red_race -------- ------ ------- ---------=---------=---------=---------= Impfinity v4g1 271 172 5 38 157 *********** Newt 310 160 10 60 130 ********** The Fugitive 246 177 0 23 177 *********** unrequited love 306 153 4 55 141 ********** Blur 2 478 103 28 153 19 ****** He Scans Alone 554 38 10 182 8 ** Electric Head 486 102 30 158 12 ****** obvious to thos 338 179 32 85 83 *********** Jack in the box 412 112 12 112 76 ******* Scan Man 381 198 59 120 21 ************* Stepping Stone 393 201 65 129 6 ************* Torch t18 420 153 42 131 27 ********** -------- ------ ------- ---------=---------=---------=---------= Wilmoo Score: 72.8 ------------------------------------------------------- REDRACE6 "Here's another stone-imp thing. It gets a wilkies benchmark of 128, which is misleading because the population was actually trained against some of the warriors in the benchmark for several generations." ;redcode-b verbose ;assert CORESIZE == 8000 ;name redrace_6_08_00 ;author Dave Hillis ;strat - Created using RedRace.c. ;strat - An evolving population playing KOTH. ;wilk10 = 128 ;wilmoo10 = 102 spl.ba # -3737, @ 8 spl.i # 3823, { -2469 add.i # -3748, @ 1 mov.i # -2082, } 1 spl.i $ -4, * 1 jmp.x * -1, < -5 end 4 Opponent Scores Results Performance of redrace_6_08_00 -------- ------ ------- ---------=---------=---------=---------= TimeScape (1.0) 216 192 0 8 192 ************ nobody special 226 187 0 13 187 ************ Paperone 204 198 0 2 198 ************* Marcia Trionfal 256 172 0 28 172 *********** Blue Funk 3 261 177 5 33 162 *********** Cannonade 220 190 0 10 190 ************ Tornado 197 395 129 63 8 ************************** Fire Storm v1.1 98 491 160 29 11 ******************************** Rave 238 259 52 45 103 ***************** Iron Gate 217 277 57 37 106 ****************** Porch Swing 272 278 76 74 50 ****************** Thermite 1.0 239 272 61 50 89 ****************** -------- ------ ------- ---------=---------=---------=---------= Wilkie Score: 128.6 Opponent Scores Results Performance of redrace_6_08_00 -------- ------ ------- ---------=---------=---------=---------= Impfinity v4g1 364 118 0 82 118 ******* Newt 283 160 1 42 157 ********** The Fugitive 200 200 0 0 200 ************* unrequited love 248 176 0 24 176 *********** Blur 2 338 197 44 91 65 ************* He Scans Alone 329 242 71 100 29 **************** Electric Head 278 233 48 63 89 *************** obvious to thos 338 134 2 70 128 ******** Jack in the box 256 175 2 29 169 *********** Scan Man 211 343 99 55 46 ********************** Stepping Stone 331 217 55 93 52 ************** Torch t18 249 270 63 56 81 ****************** -------- ------ ------- ---------=---------=---------=---------= Wilmoo Score: 102.7 ------------------------------------------------------- AFFINITY "And here's a D-clear ish thing." ;redcode-b verbose ;assert CORESIZE == 8000 ;name w.red ;affinity/bestwar1.red ;author Dave Hillis ;strat - Created using RedRace.c. ;strat - An evolving population playing KOTH. ;strat - Configured for the Beginner hill. ; This warrior evolved in 3 days using affinities and melee/fraticide ;wilies = 99 ;wilmoo = 100 mov.i $ 47, < -2849 spl.i $ 2817, $ 2327 spl.i # -3681, { 1 mov.i } 2325, } -2 djn.i $ -1, } -3 dat.b @ -2657, $ 2 ;the rest of the lines don't matter sub.f * 318, # 0 spl.b * 1376, $ 1376 mov.x # 1373, * 1374 mov.i $ -9, $ -8 mul.ba $ 1372, * -7 mov.b * -3673, $ 1 spl.i # 1380, { -10 end 0 Opponent Scores Results Performance of w.red -------- ------ ------- ---------=---------=---------=---------= TimeScape (1.0) 538 34 2 170 28 ** nobody special 560 20 0 180 20 * Paperone 539 32 1 170 29 ** Marcia Trionfal 582 9 0 191 9 Blue Funk 3 313 166 15 64 121 *********** Cannonade 239 263 55 47 98 ***************** Tornado 177 423 141 59 0 **************************** Fire Storm v1.1 166 430 142 54 4 **************************** Rave 418 181 60 139 1 ************ Iron Gate 366 234 78 122 0 *************** Porch Swing 244 328 100 72 28 ********************* Thermite 1.0 290 296 94 92 14 ******************* -------- ------ ------- ---------=---------=---------=---------= Wilkie Score: 100.6 Opponent Scores Results Performance of w.red -------- ------ ------- ---------=---------=---------=---------= Impfinity v4g1 336 135 2 69 129 ********* Newt 299 191 27 63 110 ************ The Fugitive 470 65 0 135 65 **** unrequited love 547 28 1 174 25 * Blur 2 495 105 35 165 0 ******* He Scans Alone 160 424 136 48 16 **************************** Electric Head 276 288 84 80 36 ******************* obvious to thos 538 49 12 175 13 *** Jack in the box 575 17 3 189 8 * Scan Man 149 440 143 46 11 ***************************** Stepping Stone 246 339 108 77 15 ********************** Torch t18 317 254 75 96 29 **************** -------- ------ ------- ---------=---------=---------=---------= Wilmoo Score: 97.2 ------------------------------------------------------- V4_260 "It's a pure evolved, but it has been trained against both handwritten and other evolved warriors. It has a wilkies benchmark of 123 or so and a Wilmoo of 104. It lays out swaths of imps at step intervals of 165, and pumps a few processes into each swath. Its ancestors included some replication and DJN-streaming, but that got trimmed off when the population had to compete against a lot of handwritten warriors." ;redcode-b verbose ;assert CORESIZE == 8000 ;name v4_260.red ;author Dave Hillis ;strat - Created using RedRace.c. (Pre-release version) ;strat - An evolving population playing KOTH. ;wilmoo = 104.4 ;wilk = about 123 spl.i # 3798, @ 8 spl.i # -209, { -2469 add.i # 165, @ 1 mov.i # -3803, } 1 spl.i $ -4, * -2 jmp.x * -1, < -4 end 4 Opponent Scores Results Performance of v4_260.red -------- ------ ------- ---------=---------=---------=---------= TimeScape (1.0) 210 195 0 5 195 ************* nobody special 220 190 0 10 190 ************ Paperone 204 198 0 2 198 ************* Marcia Trionfal 274 163 0 37 163 ********** Blue Funk 3 291 156 1 46 153 ********** Cannonade 232 184 0 16 184 ************ Tornado 271 322 105 88 7 ********************* Fire Storm v1.1 121 460 147 34 19 ****************************** Rave 234 267 56 45 99 ***************** Iron Gate 209 287 61 35 104 ******************* Porch Swing 291 273 79 85 36 ****************** Thermite 1.0 200 305 70 35 95 ******************** -------- ------ ------- ---------=---------=---------=---------= Wilkie Score: 125 Opponent Scores Results Performance of v4_260.red -------- ------ ------- ---------=---------=---------=---------= Impfinity v4g1 362 119 0 81 119 ******* Newt 298 157 4 51 145 ********** The Fugitive 204 198 0 2 198 ************* unrequited love 262 169 0 31 169 *********** Blur 2 343 184 37 90 73 ************ He Scans Alone 298 265 76 87 37 ***************** Electric Head 233 272 59 46 95 ****************** obvious to thos 324 141 2 63 135 ********* Jack in the box 248 182 4 26 170 ************ Scan Man 194 359 104 49 47 *********************** Stepping Stone 311 215 47 79 74 ************** Torch t18 266 266 66 66 68 ***************** -------- ------ ------- ---------=---------=---------=---------= Wilmoo Score: 105.2 ------------------------------------------------------- EVOL1090 Posted to rec.games.corewar on June 5, 2000 by Martin Ankerl Subject: purely evolved warrior got on the redcode experimental hill :-) Excerpt... "it reached the 18th place on the experimental hill, and it got a score of 106.8 on the redcode-94nop hill where it didnt enter (both on koth). It came out after 1090000 iterations. If the warriors keep getting better like they do now, I think that in some days (or weeks?) it will evolve a warrior which can get on the 94-nop hill :-) " ;RedMaker Warrior ;name TtAa ;assert 1 spl.a # 1992, { 1 mov.i } 7875, }-1 djn.a $-1 , }-2 end ;Program "Evolver 1090" (length 3) by "Martin Ankerl" ;this sample includes an arbitrarily-named RedMaker header. Opponent Scores Results Performance of TtAa -------- ------ ------- ---------=---------=---------=---------= TimeScape (1.0) 574 13 0 187 13 nobody special 566 17 0 183 17 * Paperone 564 18 0 182 18 * Marcia Trionfal 590 5 0 195 5 Blue Funk 3 372 123 6 89 105 ******** Cannonade 291 222 45 68 87 ************** Tornado 246 354 118 82 0 *********************** Fire Storm v1.1 187 412 137 62 1 *************************** Rave 213 387 129 71 0 ************************* Iron Gate 253 346 115 84 1 *********************** Porch Swing 283 316 105 94 1 ********************* Thermite 1.0 266 323 104 85 11 ********************* -------- ------ ------- ---------=---------=---------=---------= Wilkie Score: 105.6 Opponent Scores Results Performance of TtAa -------- ------ ------- ---------=---------=---------=---------= Impfinity v4g1 501 51 1 151 48 *** Newt 363 192 49 106 45 ************ The Fugitive 593 5 1 197 2 unrequited love 579 12 1 190 9 Blur 2 343 253 83 113 4 **************** He Scans Alone 12 588 196 4 0 *************************************** Electric Head 271 298 89 80 31 ******************* obvious to thos 573 21 5 189 6 * Jack in the box 579 18 5 192 3 * Scan Man 210 387 128 69 3 ************************* Stepping Stone 244 349 114 79 7 *********************** Torch t18 349 229 69 109 22 *************** -------- ------ ------- ---------=---------=---------=---------= Wilmoo Score: 100.1 ------------------------------------------------------- EVOL538 Posted to rec.games.corewar on June 1, 2000 by Martin Ankerl Subject: pure GA tournament would be a good idea Excerpt... "here is one funny warrior I have evolved. It's only 3 lines, and scored good in the wilkies and wilmoos benchmark. It took about 538000 Iterations: " ;RedMaker Warrior ;name TtMo ;assert 1 spl.x # 5 , } 1985 mov.i { 1510, }-1 djn.i $-1 , }-2 end This one made it onto pizza beginner hill, last I checked it was beating up on Dave Hillis' evolved entries although all were at the bottom of the list. A bit more info can be gleened from an ICWS submission response... posted May 31, 2000 to rec.games.corewar by "pizza": > A challenger has arrived on the ICWS '94 Draft hill! Vital statistics: > Program "Evolver 538" (length 3) by "Martin Ankerl" > .... > ;strategy only 3 lines of code! > ;strategy spl.x # 5 , } 1985 > ;strategy mov.i { 1510, }-1 > ;strategy djn.i $-1 , }-2 ...from which I determined this specimen's real name. Other traffic on rec.games.corewar indicated that it is a sort-of D-clear. Opponent Scores Results Performance of TtMo -------- ------ ------- ---------=---------=---------=---------= TimeScape (1.0) 571 16 1 186 13 * nobody special 565 19 1 183 16 * Paperone 556 22 0 178 22 * Marcia Trionfal 578 11 0 189 11 Blue Funk 3 329 149 9 69 122 ********* Cannonade 284 164 4 44 152 ********** Tornado 210 390 130 70 0 ************************** Fire Storm v1.1 202 394 130 66 4 ************************** Rave 408 192 64 136 0 ************ Iron Gate 355 244 81 118 1 **************** Porch Swing 231 369 123 77 0 ************************ Thermite 1.0 277 316 103 90 7 ********************* -------- ------ ------- ---------=---------=---------=---------= Wilkie Score: 95.2 Opponent Scores Results Performance of TtMo -------- ------ ------- ---------=---------=---------=---------= Impfinity v4g1 396 111 6 101 93 ******* Newt 361 142 15 88 97 ********* The Fugitive 594 3 0 197 3 unrequited love 577 13 1 189 10 Blur 2 245 347 113 79 8 *********************** He Scans Alone 221 326 91 56 53 ********************* Electric Head 320 251 74 97 29 **************** obvious to thos 517 55 9 163 28 *** Jack in the box 579 15 3 191 6 * Scan Man 152 395 114 33 53 ************************** Stepping Stone 292 304 100 96 4 ******************** Torch t18 300 285 90 95 15 ******************* -------- ------ ------- ---------=---------=---------=---------= Wilmoo Score: 93.6 ------------------------------------------------------- For the curious, instruction statistics... dat 1 nop 0 mov 23 spl 19 jmp 2 jmn 0 jmz 0 djn 5 add 2 sub 3 cmp 1 seq 1 sne 0 slt 0 mod 0 mul 1 div 0 ldp 0 stp 0 (none) 0 .a 6 .b 7 .ab 0 .ba 2 .f 2 .x 4 .i 37 # 22 $ 15 @ 8 * 12 < 12 > 9 { 16 } 22 Total warriors examined 7 Average length 17.28 No attempt was made to seperate the A and B field addressing modes, that might yield significant results. By comparison, here are reports for the Wilkie and Wilmoo benchmark warriors... Note: Ommisions of the addressing mode (equivalent to $) are NOT detected, this doesn't matter with the evolved analysis but makes the $ count indeterminable unless actually specified. The program I used to collect this data is very crude and can only count the number of occurences of each string. Instruction statistics for directory c:\wilkies dat 61 nop 0 mov 123 spl 97 jmp 46 jmn 15 jmz 17 djn 12 add 11 sub 6 cmp 2 seq 4 sne 5 slt 2 mod 0 mul 0 div 0 ldp 0 stp 0 (none) 310 .a 6 .b 6 .ab 7 .ba 1 .f 23 .x 0 .i 48 # 103 $ 0 @ 51 * 55 < 127 > 57 { 9 } 32 Total warriors examined 12 Average length 66.66 Instruction statistics for directory c:\wilmoo dat 97 nop 0 mov 41 spl 17 jmp 20 jmn 0 jmz 2 djn 13 add 10 sub 1 cmp 0 seq 21 sne 3 slt 0 mod 0 mul 0 div 7 ldp 0 stp 0 (none) 148 .a 3 .b 11 .ab 1 .ba 1 .f 27 .x 0 .i 41 # 40 $ 16 @ 12 * 67 < 39 > 30 { 23 } 13 Total warriors examined 12 Average length 37.58 The biggest difference I see is with the DAT instruction, humans are able to intelligently use it without inducing self-destruction :) -------------------------------------------------------