rubyneat 0.3.5.alpha.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (261) hide show
  1. checksums.yaml +7 -0
  2. data/.directory +4 -0
  3. data/.gitignore.orig +20 -0
  4. data/.idea/.name +1 -0
  5. data/.idea/.rakeTasks +7 -0
  6. data/.idea/dictionaries/trader.xml +3 -0
  7. data/.idea/encodings.xml +5 -0
  8. data/.idea/misc.xml +5 -0
  9. data/.idea/modules.xml +9 -0
  10. data/.idea/rubyneat.iml +197 -0
  11. data/.idea/runConfigurations/invpend_neat.xml +26 -0
  12. data/.idea/runConfigurations/sigdebug_neat.xml +24 -0
  13. data/.idea/runConfigurations/xor_neat.xml +26 -0
  14. data/.idea/runConfigurations/xordebug_neat.xml +24 -0
  15. data/.idea/runConfigurations/xorsin_neat.xml +24 -0
  16. data/.idea/scopes/scope_settings.xml +5 -0
  17. data/.idea/vcs.xml +7 -0
  18. data/.idea/workspace.xml +1124 -0
  19. data/.semver +5 -0
  20. data/.yardoc/checksums +11 -0
  21. data/.yardoc/object_types +0 -0
  22. data/.yardoc/objects/root.dat +0 -0
  23. data/.yardoc/proxy_types +0 -0
  24. data/Gemfile +32 -0
  25. data/Gemfile.lock +135 -0
  26. data/Gemfile.lock.orig +147 -0
  27. data/Guardfile +8 -0
  28. data/Rakefile +61 -0
  29. data/bin/neat +83 -0
  30. data/config/application.rb +5 -0
  31. data/doc/ControllerPoint.html +125 -0
  32. data/doc/CuteA.html +286 -0
  33. data/doc/CuteB.html +297 -0
  34. data/doc/DSL.html +883 -0
  35. data/doc/NEAT/BasicNeuronTypes/BiasNeuron.html +518 -0
  36. data/doc/NEAT/BasicNeuronTypes/CosineNeuron.html +274 -0
  37. data/doc/NEAT/BasicNeuronTypes/InputNeuron.html +366 -0
  38. data/doc/NEAT/BasicNeuronTypes/SigmoidNeuron.html +275 -0
  39. data/doc/NEAT/BasicNeuronTypes/SineNeuron.html +274 -0
  40. data/doc/NEAT/BasicNeuronTypes/TanhNeuron.html +274 -0
  41. data/doc/NEAT/BasicNeuronTypes.html +136 -0
  42. data/doc/NEAT/Controller/NeatSettings.html +3985 -0
  43. data/doc/NEAT/Controller.html +2490 -0
  44. data/doc/NEAT/Critter/Genotype/Gene.html +979 -0
  45. data/doc/NEAT/Critter/Genotype.html +1601 -0
  46. data/doc/NEAT/Critter/Phenotype.html +603 -0
  47. data/doc/NEAT/Critter.html +1037 -0
  48. data/doc/NEAT/DSL.html +1255 -0
  49. data/doc/NEAT/Evaluator.html +420 -0
  50. data/doc/NEAT/Evolver/CritterOp.html +551 -0
  51. data/doc/NEAT/Evolver.html +602 -0
  52. data/doc/NEAT/Expressor.html +327 -0
  53. data/doc/NEAT/Graph/DependencyResolver.html +478 -0
  54. data/doc/NEAT/Graph/GraphException.html +123 -0
  55. data/doc/NEAT/Graph.html +402 -0
  56. data/doc/NEAT/NeatException.html +123 -0
  57. data/doc/NEAT/NeatOb.html +567 -0
  58. data/doc/NEAT/Neuron.html +1067 -0
  59. data/doc/NEAT/Operator.html +162 -0
  60. data/doc/NEAT/Population.html +1961 -0
  61. data/doc/NEAT/Trait.html +169 -0
  62. data/doc/NEAT.html +588 -0
  63. data/doc/_index.html +373 -0
  64. data/doc/class_list.html +54 -0
  65. data/doc/css/common.css +1 -0
  66. data/doc/css/full_list.css +57 -0
  67. data/doc/css/style.css +339 -0
  68. data/doc/file_list.html +53 -0
  69. data/doc/frames.html +26 -0
  70. data/doc/index.html +373 -0
  71. data/doc/js/app.js +219 -0
  72. data/doc/js/full_list.js +178 -0
  73. data/doc/js/jquery.js +4 -0
  74. data/doc/method_list.html +1415 -0
  75. data/doc/top-level-namespace.html +164 -0
  76. data/foo/foo_aquarium_example.rb +38 -0
  77. data/foo/foo_gosu.rb +99 -0
  78. data/foo/foo_rubygoo.rb +104 -0
  79. data/foo/foo_sdl.rb +34 -0
  80. data/foo/icon.png +0 -0
  81. data/lib/rubyneat/critter.rb +374 -0
  82. data/lib/rubyneat/default_neat.rb +10 -0
  83. data/lib/rubyneat/dsl.rb +130 -0
  84. data/lib/rubyneat/evaluator.rb +51 -0
  85. data/lib/rubyneat/evolver.rb +315 -0
  86. data/lib/rubyneat/expressor.rb +110 -0
  87. data/lib/rubyneat/graph.rb +95 -0
  88. data/lib/rubyneat/neuron.rb +152 -0
  89. data/lib/rubyneat/population.rb +227 -0
  90. data/lib/rubyneat/rubyneat.rb +429 -0
  91. data/lib/rubyneat.rb +8 -0
  92. data/neater/invpend_neat.rb +150 -0
  93. data/neater/rnlib/inverted_pendulum.rb +380 -0
  94. data/neater/rnlib/xor.rb +10 -0
  95. data/neater/sigdebug_neat.rb +136 -0
  96. data/neater/xor_neat.rb +137 -0
  97. data/neater/xoranalog_neat.rb +138 -0
  98. data/neater/xorsin_neat.rb +143 -0
  99. data/projectFilesBackup/.idea/rubyneat.iml +180 -0
  100. data/public/.directory +4 -0
  101. data/public/background.png +0 -0
  102. data/public/background.xcf +0 -0
  103. data/public/cart.png +0 -0
  104. data/public/cart.xcf +0 -0
  105. data/public/metalpoles_molton_ball_l.jpg +0 -0
  106. data/public/old_background.png +0 -0
  107. data/public/pointer.png +0 -0
  108. data/public/pointer.xcf +0 -0
  109. data/public/pole.kra +0 -0
  110. data/public/pole.png +0 -0
  111. data/public/pole.xcf +0 -0
  112. data/public/wheel-of-year-stone-DD-131-WOYS.jpg +0 -0
  113. data/public/wheel.png +0 -0
  114. data/public/wheel.xcf +0 -0
  115. data/public/wood-planks-texture.jpg +0 -0
  116. data/rdoc/ControllerPoint.html +116 -0
  117. data/rdoc/CuteA.html +177 -0
  118. data/rdoc/CuteB.html +178 -0
  119. data/rdoc/DSLSetup.html +177 -0
  120. data/rdoc/GameTestWindow.html +242 -0
  121. data/rdoc/GameWindow.html +292 -0
  122. data/rdoc/Gemfile.html +215 -0
  123. data/rdoc/Gemfile_lock.html +327 -0
  124. data/rdoc/GraphTest.html +210 -0
  125. data/rdoc/Guardfile.html +198 -0
  126. data/rdoc/InvertedPendulum/Cart.html +668 -0
  127. data/rdoc/InvertedPendulum/DSL.html +259 -0
  128. data/rdoc/InvertedPendulum/InvPendWindow.html +402 -0
  129. data/rdoc/InvertedPendulum.html +198 -0
  130. data/rdoc/Logger.html +98 -0
  131. data/rdoc/NEAT/BasicNeuronTypes/BiasNeuron.html +265 -0
  132. data/rdoc/NEAT/BasicNeuronTypes/CosineNeuron.html +162 -0
  133. data/rdoc/NEAT/BasicNeuronTypes/InputNeuron.html +206 -0
  134. data/rdoc/NEAT/BasicNeuronTypes/SigmoidNeuron.html +162 -0
  135. data/rdoc/NEAT/BasicNeuronTypes/SineNeuron.html +162 -0
  136. data/rdoc/NEAT/BasicNeuronTypes/TanhNeuron.html +161 -0
  137. data/rdoc/NEAT/BasicNeuronTypes.html +107 -0
  138. data/rdoc/NEAT/Controller/NeatSettings.html +880 -0
  139. data/rdoc/NEAT/Controller.html +729 -0
  140. data/rdoc/NEAT/Critter/Genotype/Gene.html +457 -0
  141. data/rdoc/NEAT/Critter/Genotype.html +735 -0
  142. data/rdoc/NEAT/Critter/Phenotype.html +330 -0
  143. data/rdoc/NEAT/Critter.html +489 -0
  144. data/rdoc/NEAT/DSL.html +729 -0
  145. data/rdoc/NEAT/Evaluator.html +256 -0
  146. data/rdoc/NEAT/Evolver/CritterOp.html +349 -0
  147. data/rdoc/NEAT/Evolver.html +891 -0
  148. data/rdoc/NEAT/Expressor.html +402 -0
  149. data/rdoc/NEAT/Graph/DependencyResolver.html +291 -0
  150. data/rdoc/NEAT/Graph/GraphException.html +105 -0
  151. data/rdoc/NEAT/Graph.html +263 -0
  152. data/rdoc/NEAT/NeatException.html +105 -0
  153. data/rdoc/NEAT/NeatOb.html +325 -0
  154. data/rdoc/NEAT/Neuron.html +481 -0
  155. data/rdoc/NEAT/Operator.html +109 -0
  156. data/rdoc/NEAT/Population.html +935 -0
  157. data/rdoc/NEAT/Trait.html +117 -0
  158. data/rdoc/NEAT.html +422 -0
  159. data/rdoc/Object.html +384 -0
  160. data/rdoc/Phi.html +98 -0
  161. data/rdoc/Player.html +383 -0
  162. data/rdoc/Rakefile.html +254 -0
  163. data/rdoc/RubyNEAT/Application.html +105 -0
  164. data/rdoc/RubyNEAT.html +98 -0
  165. data/rdoc/SDL/Event2.html +98 -0
  166. data/rdoc/SDL.html +98 -0
  167. data/rdoc/Vector.html +195 -0
  168. data/rdoc/created.rid +125 -0
  169. data/rdoc/doc/ControllerPoint_html.html +299 -0
  170. data/rdoc/doc/CuteA_html.html +438 -0
  171. data/rdoc/doc/CuteB_html.html +436 -0
  172. data/rdoc/doc/DSL_html.html +992 -0
  173. data/rdoc/doc/NEAT/BasicNeuronTypes/BiasNeuron_html.html +617 -0
  174. data/rdoc/doc/NEAT/BasicNeuronTypes/CosineNeuron_html.html +413 -0
  175. data/rdoc/doc/NEAT/BasicNeuronTypes/InputNeuron_html.html +498 -0
  176. data/rdoc/doc/NEAT/BasicNeuronTypes/SigmoidNeuron_html.html +413 -0
  177. data/rdoc/doc/NEAT/BasicNeuronTypes/SineNeuron_html.html +413 -0
  178. data/rdoc/doc/NEAT/BasicNeuronTypes/TanhNeuron_html.html +412 -0
  179. data/rdoc/doc/NEAT/BasicNeuronTypes_html.html +310 -0
  180. data/rdoc/doc/NEAT/Controller/NeatSettings_html.html +3324 -0
  181. data/rdoc/doc/NEAT/Controller_html.html +2212 -0
  182. data/rdoc/doc/NEAT/Critter/Genotype/Gene_html.html +997 -0
  183. data/rdoc/doc/NEAT/Critter/Genotype_html.html +1556 -0
  184. data/rdoc/doc/NEAT/Critter/Phenotype_html.html +687 -0
  185. data/rdoc/doc/NEAT/Critter_html.html +1037 -0
  186. data/rdoc/doc/NEAT/DSL_html.html +1349 -0
  187. data/rdoc/doc/NEAT/Evaluator_html.html +556 -0
  188. data/rdoc/doc/NEAT/Evolver/CritterOp_html.html +690 -0
  189. data/rdoc/doc/NEAT/Evolver_html.html +677 -0
  190. data/rdoc/doc/NEAT/Expressor_html.html +468 -0
  191. data/rdoc/doc/NEAT/Graph/DependencyResolver_html.html +598 -0
  192. data/rdoc/doc/NEAT/Graph/GraphException_html.html +299 -0
  193. data/rdoc/doc/NEAT/Graph_html.html +527 -0
  194. data/rdoc/doc/NEAT/NeatException_html.html +299 -0
  195. data/rdoc/doc/NEAT/NeatOb_html.html +671 -0
  196. data/rdoc/doc/NEAT/Neuron_html.html +1095 -0
  197. data/rdoc/doc/NEAT/Operator_html.html +337 -0
  198. data/rdoc/doc/NEAT/Population_html.html +1795 -0
  199. data/rdoc/doc/NEAT/Trait_html.html +344 -0
  200. data/rdoc/doc/NEAT_html.html +736 -0
  201. data/rdoc/doc/_index_html.html +559 -0
  202. data/rdoc/doc/class_list_html.html +369 -0
  203. data/rdoc/doc/css/common_css.html +188 -0
  204. data/rdoc/doc/css/full_list_css.html +243 -0
  205. data/rdoc/doc/css/style_css.html +530 -0
  206. data/rdoc/doc/file_list_html.html +240 -0
  207. data/rdoc/doc/frames_html.html +217 -0
  208. data/rdoc/doc/index_html.html +559 -0
  209. data/rdoc/doc/js/app_js.html +423 -0
  210. data/rdoc/doc/js/full_list_js.html +372 -0
  211. data/rdoc/doc/js/jquery_js.html +1536 -0
  212. data/rdoc/doc/method_list_html.html +1375 -0
  213. data/rdoc/doc/top-level-namespace_html.html +317 -0
  214. data/rdoc/fonts/Lato-Light.ttf +0 -0
  215. data/rdoc/fonts/Lato-LightItalic.ttf +0 -0
  216. data/rdoc/fonts/Lato-Regular.ttf +0 -0
  217. data/rdoc/fonts/Lato-RegularItalic.ttf +0 -0
  218. data/rdoc/fonts/SourceCodePro-Bold.ttf +0 -0
  219. data/rdoc/fonts/SourceCodePro-Regular.ttf +0 -0
  220. data/rdoc/fonts.css +167 -0
  221. data/rdoc/images/add.png +0 -0
  222. data/rdoc/images/arrow_up.png +0 -0
  223. data/rdoc/images/brick.png +0 -0
  224. data/rdoc/images/brick_link.png +0 -0
  225. data/rdoc/images/bug.png +0 -0
  226. data/rdoc/images/bullet_black.png +0 -0
  227. data/rdoc/images/bullet_toggle_minus.png +0 -0
  228. data/rdoc/images/bullet_toggle_plus.png +0 -0
  229. data/rdoc/images/date.png +0 -0
  230. data/rdoc/images/delete.png +0 -0
  231. data/rdoc/images/find.png +0 -0
  232. data/rdoc/images/loadingAnimation.gif +0 -0
  233. data/rdoc/images/macFFBgHack.png +0 -0
  234. data/rdoc/images/package.png +0 -0
  235. data/rdoc/images/page_green.png +0 -0
  236. data/rdoc/images/page_white_text.png +0 -0
  237. data/rdoc/images/page_white_width.png +0 -0
  238. data/rdoc/images/plugin.png +0 -0
  239. data/rdoc/images/ruby.png +0 -0
  240. data/rdoc/images/tag_blue.png +0 -0
  241. data/rdoc/images/tag_green.png +0 -0
  242. data/rdoc/images/transparent.png +0 -0
  243. data/rdoc/images/wrench.png +0 -0
  244. data/rdoc/images/wrench_orange.png +0 -0
  245. data/rdoc/images/zoom.png +0 -0
  246. data/rdoc/index.html +282 -0
  247. data/rdoc/js/darkfish.js +140 -0
  248. data/rdoc/js/jquery.js +18 -0
  249. data/rdoc/js/navigation.js +142 -0
  250. data/rdoc/js/search.js +109 -0
  251. data/rdoc/js/search_index.js +1 -0
  252. data/rdoc/js/searcher.js +228 -0
  253. data/rdoc/rdoc.css +580 -0
  254. data/rdoc/rubyneat_gemspec.html +387 -0
  255. data/rdoc/table_of_contents.html +2502 -0
  256. data/rdoc/xordebug_log.html +170598 -0
  257. data/rdoc/xorsin_log.html +22569 -0
  258. data/rubyneat.gemspec +347 -0
  259. data/rubyneat.gemspec.orig +375 -0
  260. data/spec/lib/rubyneat/rubyneat_spec.rb +132 -0
  261. metadata +555 -0
@@ -0,0 +1,1795 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>Population.html - rubyneat 0.3.4</title>
8
+
9
+ <link href="../../fonts.css" rel="stylesheet">
10
+ <link href="../../rdoc.css" rel="stylesheet">
11
+
12
+ <script type="text/javascript">
13
+ var rdoc_rel_prefix = "../../";
14
+ </script>
15
+
16
+ <script src="../../js/jquery.js"></script>
17
+ <script src="../../js/navigation.js"></script>
18
+ <script src="../../js/search_index.js"></script>
19
+ <script src="../../js/search.js"></script>
20
+ <script src="../../js/searcher.js"></script>
21
+ <script src="../../js/darkfish.js"></script>
22
+
23
+
24
+ <body id="top" role="document" class="file">
25
+ <nav role="navigation">
26
+ <div id="project-navigation">
27
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
28
+ <h2>
29
+ <a href="../../index.html" rel="home">Home</a>
30
+ </h2>
31
+
32
+ <div id="table-of-contents-navigation">
33
+ <a href="../../table_of_contents.html#pages">Pages</a>
34
+ <a href="../../table_of_contents.html#classes">Classes</a>
35
+ <a href="../../table_of_contents.html#methods">Methods</a>
36
+ </div>
37
+ </div>
38
+
39
+ <div id="search-section" role="search" class="project-section initially-hidden">
40
+ <form action="#" method="get" accept-charset="utf-8">
41
+ <div id="search-field-wrapper">
42
+ <input id="search-field" role="combobox" aria-label="Search"
43
+ aria-autocomplete="list" aria-controls="search-results"
44
+ type="text" name="search" placeholder="Search" spellcheck="false"
45
+ title="Type to search, Up and Down to navigate, Enter to load">
46
+ </div>
47
+
48
+ <ul id="search-results" aria-label="Search Results"
49
+ aria-busy="false" aria-expanded="false"
50
+ aria-atomic="false" class="initially-hidden"></ul>
51
+ </form>
52
+ </div>
53
+
54
+ </div>
55
+
56
+
57
+
58
+ <div id="project-metadata">
59
+ <div id="fileindex-section" class="nav-section">
60
+ <h3>Pages</h3>
61
+
62
+ <ul class="link-list">
63
+
64
+ <li><a href="../../Gemfile.html">Gemfile</a>
65
+
66
+ <li><a href="../../Gemfile_lock.html">Gemfile.lock</a>
67
+
68
+ <li><a href="../../Guardfile.html">Guardfile</a>
69
+
70
+ <li><a href="../../Rakefile.html">Rakefile</a>
71
+
72
+ <li><a href="../../doc/ControllerPoint_html.html">ControllerPoint.html</a>
73
+
74
+ <li><a href="../../doc/CuteA_html.html">CuteA.html</a>
75
+
76
+ <li><a href="../../doc/CuteB_html.html">CuteB.html</a>
77
+
78
+ <li><a href="../../doc/DSL_html.html">DSL.html</a>
79
+
80
+ <li><a href="../../doc/NEAT_html.html">NEAT.html</a>
81
+
82
+ <li><a href="../../doc/NEAT/BasicNeuronTypes_html.html">BasicNeuronTypes.html</a>
83
+
84
+ <li><a href="../../doc/NEAT/BasicNeuronTypes/BiasNeuron_html.html">BiasNeuron.html</a>
85
+
86
+ <li><a href="../../doc/NEAT/BasicNeuronTypes/CosineNeuron_html.html">CosineNeuron.html</a>
87
+
88
+ <li><a href="../../doc/NEAT/BasicNeuronTypes/InputNeuron_html.html">InputNeuron.html</a>
89
+
90
+ <li><a href="../../doc/NEAT/BasicNeuronTypes/SigmoidNeuron_html.html">SigmoidNeuron.html</a>
91
+
92
+ <li><a href="../../doc/NEAT/BasicNeuronTypes/SineNeuron_html.html">SineNeuron.html</a>
93
+
94
+ <li><a href="../../doc/NEAT/BasicNeuronTypes/TanhNeuron_html.html">TanhNeuron.html</a>
95
+
96
+ <li><a href="../../doc/NEAT/Controller_html.html">Controller.html</a>
97
+
98
+ <li><a href="../../doc/NEAT/Controller/NeatSettings_html.html">NeatSettings.html</a>
99
+
100
+ <li><a href="../../doc/NEAT/Critter_html.html">Critter.html</a>
101
+
102
+ <li><a href="../../doc/NEAT/Critter/Genotype_html.html">Genotype.html</a>
103
+
104
+ <li><a href="../../doc/NEAT/Critter/Genotype/Gene_html.html">Gene.html</a>
105
+
106
+ <li><a href="../../doc/NEAT/Critter/Phenotype_html.html">Phenotype.html</a>
107
+
108
+ <li><a href="../../doc/NEAT/DSL_html.html">DSL.html</a>
109
+
110
+ <li><a href="../../doc/NEAT/Evaluator_html.html">Evaluator.html</a>
111
+
112
+ <li><a href="../../doc/NEAT/Evolver_html.html">Evolver.html</a>
113
+
114
+ <li><a href="../../doc/NEAT/Evolver/CritterOp_html.html">CritterOp.html</a>
115
+
116
+ <li><a href="../../doc/NEAT/Expressor_html.html">Expressor.html</a>
117
+
118
+ <li><a href="../../doc/NEAT/Graph_html.html">Graph.html</a>
119
+
120
+ <li><a href="../../doc/NEAT/Graph/DependencyResolver_html.html">DependencyResolver.html</a>
121
+
122
+ <li><a href="../../doc/NEAT/Graph/GraphException_html.html">GraphException.html</a>
123
+
124
+ <li><a href="../../doc/NEAT/NeatException_html.html">NeatException.html</a>
125
+
126
+ <li><a href="../../doc/NEAT/NeatOb_html.html">NeatOb.html</a>
127
+
128
+ <li><a href="../../doc/NEAT/Neuron_html.html">Neuron.html</a>
129
+
130
+ <li><a href="../../doc/NEAT/Operator_html.html">Operator.html</a>
131
+
132
+ <li><a href="../../doc/NEAT/Population_html.html">Population.html</a>
133
+
134
+ <li><a href="../../doc/NEAT/Trait_html.html">Trait.html</a>
135
+
136
+ <li><a href="../../doc/_index_html.html">_index.html</a>
137
+
138
+ <li><a href="../../doc/class_list_html.html">class_list.html</a>
139
+
140
+ <li><a href="../../doc/css/common_css.html">common.css</a>
141
+
142
+ <li><a href="../../doc/css/full_list_css.html">full_list.css</a>
143
+
144
+ <li><a href="../../doc/css/style_css.html">style.css</a>
145
+
146
+ <li><a href="../../doc/file_list_html.html">file_list.html</a>
147
+
148
+ <li><a href="../../doc/frames_html.html">frames.html</a>
149
+
150
+ <li><a href="../../doc/index_html.html">index.html</a>
151
+
152
+ <li><a href="../../doc/js/app_js.html">app.js</a>
153
+
154
+ <li><a href="../../doc/js/full_list_js.html">full_list.js</a>
155
+
156
+ <li><a href="../../doc/js/jquery_js.html">jquery.js</a>
157
+
158
+ <li><a href="../../doc/method_list_html.html">method_list.html</a>
159
+
160
+ <li><a href="../../doc/top-level-namespace_html.html">top-level-namespace.html</a>
161
+
162
+ <li><a href="../../foo_dump_log.html">foo.dump.log</a>
163
+
164
+ <li><a href="../../rubyneat_gemspec.html">rubyneat.gemspec</a>
165
+
166
+ <li><a href="../../xordebug_log.html">xordebug.log</a>
167
+
168
+ <li><a href="../../xorsin_log.html">xorsin.log</a>
169
+
170
+ </ul>
171
+ </div>
172
+
173
+ </div>
174
+ </nav>
175
+
176
+ <main role="main" aria-label="Page doc/NEAT/Population.html">
177
+
178
+ <p>&lt;!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”</p>
179
+
180
+ <pre>&quot;http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd&quot;&gt;</pre>
181
+
182
+ <p>&lt;html xmlns=“<a
183
+ href="http://www.w3.org/1999/xhtml">www.w3.org/1999/xhtml</a>”
184
+ xml:lang=“en” lang=“en”&gt;</p>
185
+
186
+ <pre>&lt;head&gt;
187
+ &lt;meta http-equiv=&quot;Content-Type&quot; content=&quot;text/html; charset=utf-8&quot; /&gt;</pre>
188
+
189
+ <p>&lt;title&gt;</p>
190
+
191
+ <pre>Class: NEAT::Population
192
+
193
+ &amp;mdash; Documentation by YARD 0.8.7.3</pre>
194
+
195
+ <p>&lt;/title&gt;</p>
196
+
197
+ <pre>&lt;link rel=&quot;stylesheet&quot; href=&quot;../css/style.css&quot; type=&quot;text/css&quot; charset=&quot;utf-8&quot; /&gt;
198
+
199
+ &lt;link rel=&quot;stylesheet&quot; href=&quot;../css/common.css&quot; type=&quot;text/css&quot; charset=&quot;utf-8&quot; /&gt;</pre>
200
+
201
+ <p>&lt;script type=“text/javascript” charset=“utf-8”&gt;</p>
202
+
203
+ <pre>hasFrames = window.top.frames.main ? true : false;
204
+ relpath = &#39;../&#39;;
205
+ framesUrl = &quot;../frames.html#!&quot; + escape(window.location.href);</pre>
206
+
207
+ <p>&lt;/script&gt;</p>
208
+
209
+ <pre>&lt;script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot; src=&quot;../js/jquery.js&quot;&gt;&lt;/script&gt;
210
+
211
+ &lt;script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot; src=&quot;../js/app.js&quot;&gt;&lt;/script&gt;
212
+
213
+ &lt;/head&gt;
214
+ &lt;body&gt;
215
+ &lt;div id=&quot;header&quot;&gt;
216
+ &lt;div id=&quot;menu&quot;&gt;
217
+
218
+ &lt;a href=&quot;../_index.html&quot;&gt;Index (P)&lt;/a&gt; &amp;raquo;
219
+ &lt;span class=&#39;title&#39;&gt;&lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;../NEAT.html&quot; title=&quot;NEAT (module)&quot;&gt;NEAT&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;
220
+ &amp;raquo;
221
+ &lt;span class=&quot;title&quot;&gt;Population&lt;/span&gt;
222
+
223
+ &lt;div class=&quot;noframes&quot;&gt;&lt;span class=&quot;title&quot;&gt;(&lt;/span&gt;&lt;a href=&quot;.&quot; target=&quot;_top&quot;&gt;no frames&lt;/a&gt;&lt;span class=&quot;title&quot;&gt;)&lt;/span&gt;&lt;/div&gt;</pre>
224
+
225
+ <p>&lt;/div&gt;</p>
226
+
227
+ <pre> &lt;div id=&quot;search&quot;&gt;
228
+
229
+ &lt;a class=&quot;full_list_link&quot; id=&quot;class_list_link&quot;
230
+ href=&quot;../class_list.html&quot;&gt;
231
+ Class List
232
+ &lt;/a&gt;
233
+
234
+ &lt;a class=&quot;full_list_link&quot; id=&quot;method_list_link&quot;
235
+ href=&quot;../method_list.html&quot;&gt;
236
+ Method List
237
+ &lt;/a&gt;
238
+
239
+ &lt;a class=&quot;full_list_link&quot; id=&quot;file_list_link&quot;
240
+ href=&quot;../file_list.html&quot;&gt;
241
+ File List
242
+ &lt;/a&gt;</pre>
243
+
244
+ <p>&lt;/div&gt;</p>
245
+
246
+ <pre> &lt;div class=&quot;clear&quot;&gt;&lt;/div&gt;
247
+ &lt;/div&gt;
248
+
249
+ &lt;iframe id=&quot;search_frame&quot;&gt;&lt;/iframe&gt;
250
+
251
+ &lt;div id=&quot;content&quot;&gt;&lt;h1&gt;Class: NEAT::Population</pre>
252
+
253
+ <p>&lt;/h1&gt;</p>
254
+
255
+ <p>&lt;dl class=“box”&gt;</p>
256
+
257
+ <pre>&lt;dt class=&quot;r1&quot;&gt;Inherits:&lt;/dt&gt;
258
+ &lt;dd class=&quot;r1&quot;&gt;
259
+ &lt;span class=&quot;inheritName&quot;&gt;&lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html&quot; title=&quot;NEAT::NeatOb (class)&quot;&gt;NeatOb&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;
260
+
261
+ &lt;ul class=&quot;fullTree&quot;&gt;
262
+ &lt;li&gt;Object&lt;/li&gt;
263
+
264
+ &lt;li class=&quot;next&quot;&gt;&lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html&quot; title=&quot;NEAT::NeatOb (class)&quot;&gt;NeatOb&lt;/a&gt;&lt;/span&gt;&lt;/li&gt;
265
+
266
+ &lt;li class=&quot;next&quot;&gt;NEAT::Population&lt;/li&gt;
267
+
268
+ &lt;/ul&gt;
269
+ &lt;a href=&quot;#&quot; class=&quot;inheritanceTree&quot;&gt;show all&lt;/a&gt;
270
+
271
+ &lt;/dd&gt;
272
+
273
+ &lt;dt class=&quot;r2 last&quot;&gt;Defined in:&lt;/dt&gt;
274
+ &lt;dd class=&quot;r2 last&quot;&gt;lib/rubyneat/population.rb&lt;/dd&gt;</pre>
275
+
276
+ <p>&lt;/dl&gt; &lt;div class=“clear”&gt;&lt;/div&gt;</p>
277
+
278
+ <p>&lt;h2&gt;Overview&lt;/h2&gt;&lt;div class=“docstring”&gt;</p>
279
+
280
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
281
+
282
+ <p>&lt;h1 id=“label-Population+of+NEAT+Critters.”&gt;Population of <a
283
+ href="../../NEAT.html">NEAT</a> Critters.&lt;/h1&gt;</p>
284
+
285
+ <p>&lt;p&gt;The Population In ourselves we have the pool of neurons the
286
+ critters all use. the pool of neurons are indirects, of course, as during
287
+ phenotype expression, all the phenotypes shall be created
288
+ individually.&lt;/p&gt;</p>
289
+
290
+ <pre>&lt;/div&gt;</pre>
291
+
292
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
293
+
294
+ <p>&lt;/div&gt;</p>
295
+
296
+ <pre>&lt;h2&gt;Instance Attribute Summary &lt;small&gt;(&lt;a href=&quot;#&quot; class=&quot;summary_toggle&quot;&gt;collapse&lt;/a&gt;)&lt;/small&gt;&lt;/h2&gt;
297
+ &lt;ul class=&quot;summary&quot;&gt;
298
+
299
+ &lt;li class=&quot;public &quot;&gt;
300
+ &lt;span class=&quot;summary_signature&quot;&gt;
301
+
302
+ &lt;a href=&quot;#critters-instance_method&quot; title=&quot;#critters (instance method)&quot;&gt;- (Object) &lt;strong&gt;critters&lt;/strong&gt; &lt;/a&gt;
303
+
304
+ &lt;/span&gt;
305
+
306
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
307
+
308
+ <p>&lt;p&gt;list of critter in this population.&lt;/p&gt;
309
+ &lt;/div&gt;&lt;/span&gt;</p>
310
+
311
+ <p>&lt;/li&gt;</p>
312
+
313
+ <pre> &lt;li class=&quot;public &quot;&gt;
314
+ &lt;span class=&quot;summary_signature&quot;&gt;
315
+
316
+ &lt;a href=&quot;#fitness-instance_method&quot; title=&quot;#fitness (instance method)&quot;&gt;- (Object) &lt;strong&gt;fitness&lt;/strong&gt; &lt;/a&gt;
317
+
318
+ &lt;/span&gt;
319
+
320
+ &lt;span class=&quot;note title readonly&quot;&gt;readonly&lt;/span&gt;
321
+
322
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
323
+
324
+ <p>&lt;p&gt;Overall population fitness and novelty.&lt;/p&gt;
325
+ &lt;/div&gt;&lt;/span&gt;</p>
326
+
327
+ <p>&lt;/li&gt;</p>
328
+
329
+ <pre> &lt;li class=&quot;public &quot;&gt;
330
+ &lt;span class=&quot;summary_signature&quot;&gt;
331
+
332
+ &lt;a href=&quot;#hidden_neurons-instance_method&quot; title=&quot;#hidden_neurons (instance method)&quot;&gt;- (Object) &lt;strong&gt;hidden_neurons&lt;/strong&gt; &lt;/a&gt;
333
+
334
+ &lt;/span&gt;
335
+
336
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
337
+
338
+ <p>&lt;p&gt;List of possible neuron classes for hidden neurons.&lt;/p&gt;
339
+ &lt;/div&gt;&lt;/span&gt;</p>
340
+
341
+ <p>&lt;/li&gt;</p>
342
+
343
+ <pre> &lt;li class=&quot;public &quot;&gt;
344
+ &lt;span class=&quot;summary_signature&quot;&gt;
345
+
346
+ &lt;a href=&quot;#input_neurons-instance_method&quot; title=&quot;#input_neurons (instance method)&quot;&gt;- (Object) &lt;strong&gt;input_neurons&lt;/strong&gt; &lt;/a&gt;
347
+
348
+ &lt;/span&gt;
349
+
350
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
351
+
352
+ <p>&lt;p&gt;Ordered list or hash of input neuron classes (all critters
353
+ generated here shall have this).&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
354
+
355
+ <p>&lt;/li&gt;</p>
356
+
357
+ <pre> &lt;li class=&quot;public &quot;&gt;
358
+ &lt;span class=&quot;summary_signature&quot;&gt;
359
+
360
+ &lt;a href=&quot;#novelty-instance_method&quot; title=&quot;#novelty (instance method)&quot;&gt;- (Object) &lt;strong&gt;novelty&lt;/strong&gt; &lt;/a&gt;
361
+
362
+ &lt;/span&gt;
363
+
364
+ &lt;span class=&quot;note title readonly&quot;&gt;readonly&lt;/span&gt;
365
+
366
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
367
+
368
+ <p>&lt;p&gt;Overall population fitness and novelty.&lt;/p&gt;
369
+ &lt;/div&gt;&lt;/span&gt;</p>
370
+
371
+ <p>&lt;/li&gt;</p>
372
+
373
+ <pre> &lt;li class=&quot;public &quot;&gt;
374
+ &lt;span class=&quot;summary_signature&quot;&gt;
375
+
376
+ &lt;a href=&quot;#output_neurons-instance_method&quot; title=&quot;#output_neurons (instance method)&quot;&gt;- (Object) &lt;strong&gt;output_neurons&lt;/strong&gt; &lt;/a&gt;
377
+
378
+ &lt;/span&gt;
379
+
380
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
381
+
382
+ <p>&lt;p&gt;Ordered list or hash of output neuron classes (all critters
383
+ generated here shall have this).&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
384
+
385
+ <p>&lt;/li&gt;</p>
386
+
387
+ <pre> &lt;li class=&quot;public &quot;&gt;
388
+ &lt;span class=&quot;summary_signature&quot;&gt;
389
+
390
+ &lt;a href=&quot;#species-instance_method&quot; title=&quot;#species (instance method)&quot;&gt;- (Object) &lt;strong&gt;species&lt;/strong&gt; &lt;/a&gt;
391
+
392
+ &lt;/span&gt;
393
+
394
+ &lt;span class=&quot;note title readonly&quot;&gt;readonly&lt;/span&gt;
395
+
396
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
397
+
398
+ <p>&lt;p&gt;Hash list of species lists.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
399
+
400
+ <p>&lt;/li&gt;</p>
401
+
402
+ <pre> &lt;li class=&quot;public &quot;&gt;
403
+ &lt;span class=&quot;summary_signature&quot;&gt;
404
+
405
+ &lt;a href=&quot;#traits-instance_method&quot; title=&quot;#traits (instance method)&quot;&gt;- (Object) &lt;strong&gt;traits&lt;/strong&gt; &lt;/a&gt;
406
+
407
+ &lt;/span&gt;
408
+
409
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
410
+
411
+ <p>&lt;p&gt;Returns the value of attribute traits.&lt;/p&gt;
412
+ &lt;/div&gt;&lt;/span&gt;</p>
413
+
414
+ <p>&lt;/li&gt;</p>
415
+
416
+ <pre class="ruby"><span class="ruby-operator">&lt;</span><span class="ruby-regexp">/ul&gt;
417
+
418
+ &lt;h3 class=&quot;inherited&quot;&gt;Attributes inherited from &lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html&quot; title=&quot;NEAT::NeatOb (class)&quot;&gt;NeatOb&lt;/</span><span class="ruby-identifier">a</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">&lt;</span><span class="ruby-regexp">/span&gt;&lt;/</span><span class="ruby-identifier">h3</span><span class="ruby-operator">&gt;</span>
419
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">p</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&quot;inherited&quot;</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">&lt;</span><span class="ruby-identifier">span</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&#39;object_link&#39;</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">&lt;</span><span class="ruby-identifier">a</span> <span class="ruby-identifier">href</span>=<span class="ruby-node">&quot;NeatOb.html#controller-instance_method&quot;</span> <span class="ruby-identifier">title</span>=<span class="ruby-node">&quot;NEAT::NeatOb#controller (method)&quot;</span><span class="ruby-operator">&gt;</span><span class="ruby-comment">#controller&lt;/a&gt;&lt;/span&gt;, &lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html#name-instance_method&quot; title=&quot;NEAT::NeatOb#name (method)&quot;&gt;#name&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;</span>
420
+
421
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">h2</span><span class="ruby-operator">&gt;</span>
422
+ <span class="ruby-constant">Class</span> <span class="ruby-constant">Method</span> <span class="ruby-constant">Summary</span>
423
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">small</span><span class="ruby-operator">&gt;</span>(<span class="ruby-operator">&lt;</span><span class="ruby-identifier">a</span> <span class="ruby-identifier">href</span>=<span class="ruby-node">&quot;#&quot;</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&quot;summary_toggle&quot;</span><span class="ruby-operator">&gt;</span><span class="ruby-identifier">collapse</span><span class="ruby-operator">&lt;</span><span class="ruby-regexp">/a&gt;)&lt;/sm</span><span class="ruby-identifier">all</span><span class="ruby-operator">&gt;</span>
424
+ <span class="ruby-operator">&lt;</span><span class="ruby-node">/h2&gt;
425
+
426
+ &lt;ul class=&quot;summary&quot;&gt;
427
+
428
+ &lt;li class=&quot;public &quot;&gt;
429
+ &lt;span class=&quot;summary_signature&quot;&gt;
430
+
431
+ &lt;a href=&quot;#compactify%21-class_method&quot; title=&quot;compactify! (class method)&quot;&gt;+ (Object) &lt;strong&gt;compactify!&lt;/s</span><span class="ruby-identifier">trong</span><span class="ruby-operator">&gt;</span>(<span class="ruby-identifier">parm</span>) <span class="ruby-operator">&lt;</span><span class="ruby-regexp">/a&gt;
432
+
433
+ &lt;/s</span><span class="ruby-identifier">pan</span><span class="ruby-operator">&gt;</span>
434
+
435
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">span</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&quot;summary_desc&quot;</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">&lt;</span><span class="ruby-identifier">div</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&#39;inline&#39;</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">&lt;</span><span class="ruby-regexp">/div&gt;&lt;/s</span><span class="ruby-identifier">pan</span><span class="ruby-operator">&gt;</span>
436
+ </pre>
437
+
438
+ <p>&lt;/li&gt;</p>
439
+
440
+ <pre class="ruby"> <span class="ruby-operator">&lt;</span><span class="ruby-identifier">li</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&quot;public &quot;</span><span class="ruby-operator">&gt;</span>
441
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">span</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&quot;summary_signature&quot;</span><span class="ruby-operator">&gt;</span>
442
+
443
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">a</span> <span class="ruby-identifier">href</span>=<span class="ruby-node">&quot;#evaluate%21-class_method&quot;</span> <span class="ruby-identifier">title</span>=<span class="ruby-string">&quot;evaluate! (class method)&quot;</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">+</span> (<span class="ruby-constant">Object</span>) <span class="ruby-operator">&lt;</span><span class="ruby-identifier">strong</span><span class="ruby-operator">&gt;</span><span class="ruby-identifier">evaluate!</span><span class="ruby-operator">&lt;</span><span class="ruby-regexp">/strong&gt; &lt;/</span><span class="ruby-identifier">a</span><span class="ruby-operator">&gt;</span>
444
+
445
+ <span class="ruby-operator">&lt;</span><span class="ruby-regexp">/span&gt;
446
+
447
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;&lt;/</span><span class="ruby-identifier">div</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">&lt;</span><span class="ruby-regexp">/span&gt;
448
+ </span></pre>
449
+
450
+ <p>&lt;/li&gt;</p>
451
+
452
+ <pre class="ruby"> <span class="ruby-operator">&lt;</span><span class="ruby-identifier">li</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&quot;public &quot;</span><span class="ruby-operator">&gt;</span>
453
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">span</span> <span class="ruby-identifier">class</span>=<span class="ruby-string">&quot;summary_signature&quot;</span><span class="ruby-operator">&gt;</span>
454
+
455
+ <span class="ruby-operator">&lt;</span><span class="ruby-identifier">a</span> <span class="ruby-identifier">href</span>=<span class="ruby-node">&quot;#member%3F-class_method&quot;</span> <span class="ruby-identifier">title</span>=<span class="ruby-string">&quot;member? (class method)&quot;</span><span class="ruby-operator">&gt;</span><span class="ruby-operator">+</span> (<span class="ruby-constant">Boolean</span>) <span class="ruby-operator">&lt;</span><span class="ruby-identifier">strong</span><span class="ruby-operator">&gt;</span><span class="ruby-identifier">member?</span><span class="ruby-operator">&lt;</span><span class="ruby-regexp">/strong&gt;(crit) &lt;/</span><span class="ruby-identifier">a</span><span class="ruby-operator">&gt;</span>
456
+
457
+ <span class="ruby-operator">&lt;</span><span class="ruby-regexp">/span&gt;
458
+
459
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;
460
+ </span></pre>
461
+
462
+ <p>&lt;p&gt;lists keyed by representative critter.&lt;/p&gt;
463
+ &lt;/div&gt;&lt;/span&gt;</p>
464
+
465
+ <p>&lt;/li&gt;</p>
466
+
467
+ <pre> &lt;/ul&gt;
468
+
469
+ &lt;h2&gt;
470
+ Instance Method Summary
471
+ &lt;small&gt;(&lt;a href=&quot;#&quot; class=&quot;summary_toggle&quot;&gt;collapse&lt;/a&gt;)&lt;/small&gt;
472
+ &lt;/h2&gt;
473
+
474
+ &lt;ul class=&quot;summary&quot;&gt;
475
+
476
+ &lt;li class=&quot;public &quot;&gt;
477
+ &lt;span class=&quot;summary_signature&quot;&gt;
478
+
479
+ &lt;a href=&quot;#analyze%21-instance_method&quot; title=&quot;#analyze! (instance method)&quot;&gt;- (Object) &lt;strong&gt;analyze!&lt;/strong&gt; &lt;/a&gt;
480
+
481
+ &lt;/span&gt;
482
+
483
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
484
+
485
+ <p>&lt;p&gt;Alalyze evaluation results.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
486
+
487
+ <p>&lt;/li&gt;</p>
488
+
489
+ <pre> &lt;li class=&quot;public &quot;&gt;
490
+ &lt;span class=&quot;summary_signature&quot;&gt;
491
+
492
+ &lt;a href=&quot;#best_critter-instance_method&quot; title=&quot;#best_critter (instance method)&quot;&gt;- (Object) &lt;strong&gt;best_critter&lt;/strong&gt; &lt;/a&gt;
493
+
494
+ &lt;/span&gt;
495
+
496
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
497
+
498
+ <p>&lt;p&gt;The “best critter” is the critter with the lowest (closet to zero)
499
+ fitness rating.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
500
+
501
+ <p>&lt;/li&gt;</p>
502
+
503
+ <pre> &lt;li class=&quot;public &quot;&gt;
504
+ &lt;span class=&quot;summary_signature&quot;&gt;
505
+
506
+ &lt;a href=&quot;#dump_s-instance_method&quot; title=&quot;#dump_s (instance method)&quot;&gt;- (Object) &lt;strong&gt;dump_s&lt;/strong&gt; &lt;/a&gt;
507
+
508
+ &lt;/span&gt;
509
+
510
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;&lt;/div&gt;&lt;/span&gt;</pre>
511
+
512
+ <p>&lt;/li&gt;</p>
513
+
514
+ <pre> &lt;li class=&quot;public &quot;&gt;
515
+ &lt;span class=&quot;summary_signature&quot;&gt;
516
+
517
+ &lt;a href=&quot;#evaluate%21-instance_method&quot; title=&quot;#evaluate! (instance method)&quot;&gt;- (Object) &lt;strong&gt;evaluate!&lt;/strong&gt; &lt;/a&gt;
518
+
519
+ &lt;/span&gt;
520
+
521
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
522
+
523
+ <p>&lt;p&gt;Called for each sequence.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
524
+
525
+ <p>&lt;/li&gt;</p>
526
+
527
+ <pre> &lt;li class=&quot;public &quot;&gt;
528
+ &lt;span class=&quot;summary_signature&quot;&gt;
529
+
530
+ &lt;a href=&quot;#evolve-instance_method&quot; title=&quot;#evolve (instance method)&quot;&gt;- (Object) &lt;strong&gt;evolve&lt;/strong&gt; &lt;/a&gt;
531
+
532
+ &lt;/span&gt;
533
+
534
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
535
+
536
+ <p>&lt;p&gt;Call this after evaluation.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
537
+
538
+ <p>&lt;/li&gt;</p>
539
+
540
+ <pre> &lt;li class=&quot;public &quot;&gt;
541
+ &lt;span class=&quot;summary_signature&quot;&gt;
542
+
543
+ &lt;a href=&quot;#express%21-instance_method&quot; title=&quot;#express! (instance method)&quot;&gt;- (Object) &lt;strong&gt;express!&lt;/strong&gt; &lt;/a&gt;
544
+
545
+ &lt;/span&gt;
546
+
547
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
548
+
549
+ <p>&lt;p&gt;Express the entire population.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
550
+
551
+ <p>&lt;/li&gt;</p>
552
+
553
+ <pre> &lt;li class=&quot;public &quot;&gt;
554
+ &lt;span class=&quot;summary_signature&quot;&gt;
555
+
556
+ &lt;a href=&quot;#initialize-instance_method&quot; title=&quot;#initialize (instance method)&quot;&gt;- (Population) &lt;strong&gt;initialize&lt;/strong&gt;(c, &amp;amp;block) &lt;/a&gt;
557
+
558
+ &lt;/span&gt;
559
+
560
+ &lt;span class=&quot;note title constructor&quot;&gt;constructor&lt;/span&gt;
561
+
562
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
563
+
564
+ <p>&lt;p&gt;Create initial (ramdom) population of critters.&lt;/p&gt;
565
+ &lt;/div&gt;&lt;/span&gt;</p>
566
+
567
+ <p>&lt;/li&gt;</p>
568
+
569
+ <pre> &lt;li class=&quot;public &quot;&gt;
570
+ &lt;span class=&quot;summary_signature&quot;&gt;
571
+
572
+ &lt;a href=&quot;#initialize_for_recurrence%21-instance_method&quot; title=&quot;#initialize_for_recurrence! (instance method)&quot;&gt;- (Object) &lt;strong&gt;initialize_for_recurrence!&lt;/strong&gt; &lt;/a&gt;
573
+
574
+ &lt;/span&gt;
575
+
576
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
577
+
578
+ <p>&lt;p&gt;Make sure all critters are reset and prepared for recurrent
579
+ network evaluation.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
580
+
581
+ <p>&lt;/li&gt;</p>
582
+
583
+ <pre> &lt;li class=&quot;public &quot;&gt;
584
+ &lt;span class=&quot;summary_signature&quot;&gt;
585
+
586
+ &lt;a href=&quot;#mutate%21-instance_method&quot; title=&quot;#mutate! (instance method)&quot;&gt;- (Object) &lt;strong&gt;mutate!&lt;/strong&gt; &lt;/a&gt;
587
+
588
+ &lt;/span&gt;
589
+
590
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
591
+
592
+ <p>&lt;p&gt;Mutate the genes and neurons.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
593
+
594
+ <p>&lt;/li&gt;</p>
595
+
596
+ <pre> &lt;li class=&quot;public &quot;&gt;
597
+ &lt;span class=&quot;summary_signature&quot;&gt;
598
+
599
+ &lt;a href=&quot;#report-instance_method&quot; title=&quot;#report (instance method)&quot;&gt;- (Object) &lt;strong&gt;report&lt;/strong&gt; &lt;/a&gt;
600
+
601
+ &lt;/span&gt;
602
+
603
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
604
+
605
+ <p>&lt;h2
606
+ id=“label-Generate+a+report+on+the+state+of+this+population.”&gt;Generate a
607
+ report on the state of this population.&lt;/h2&gt;
608
+ &lt;/div&gt;&lt;/span&gt;</p>
609
+
610
+ <p>&lt;/li&gt;</p>
611
+
612
+ <pre> &lt;li class=&quot;public &quot;&gt;
613
+ &lt;span class=&quot;summary_signature&quot;&gt;
614
+
615
+ &lt;a href=&quot;#speciate%21-instance_method&quot; title=&quot;#speciate! (instance method)&quot;&gt;- (Object) &lt;strong&gt;speciate!&lt;/strong&gt; &lt;/a&gt;
616
+
617
+ &lt;/span&gt;
618
+
619
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
620
+
621
+ <p>&lt;p&gt;Group critters into species Note that the @species objects have
622
+ useful singleton methods: * @species.member? – checks all of the lists for
623
+ membership, not just the hash * @&lt;a
624
+ href=“crit”&gt;species&lt;/a&gt;.fitness – fitness of the entire
625
+ species.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
626
+
627
+ <p>&lt;/li&gt;</p>
628
+
629
+ <pre> &lt;li class=&quot;public &quot;&gt;
630
+ &lt;span class=&quot;summary_signature&quot;&gt;
631
+
632
+ &lt;a href=&quot;#worst_critter-instance_method&quot; title=&quot;#worst_critter (instance method)&quot;&gt;- (Object) &lt;strong&gt;worst_critter&lt;/strong&gt; &lt;/a&gt;
633
+
634
+ &lt;/span&gt;
635
+
636
+ &lt;span class=&quot;summary_desc&quot;&gt;&lt;div class=&#39;inline&#39;&gt;</pre>
637
+
638
+ <p>&lt;p&gt;The “worst critter” is the critter with the highest (away from
639
+ zero) fitness rating.&lt;/p&gt; &lt;/div&gt;&lt;/span&gt;</p>
640
+
641
+ <p>&lt;/li&gt;</p>
642
+
643
+ <pre> &lt;/ul&gt;
644
+
645
+ &lt;h3 class=&quot;inherited&quot;&gt;Methods inherited from &lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html&quot; title=&quot;NEAT::NeatOb (class)&quot;&gt;NeatOb&lt;/a&gt;&lt;/span&gt;&lt;/h3&gt;
646
+ &lt;p class=&quot;inherited&quot;&gt;&lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html#log-instance_method&quot; title=&quot;NEAT::NeatOb#log (method)&quot;&gt;#log&lt;/a&gt;&lt;/span&gt;, &lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html#log-class_method&quot; title=&quot;NEAT::NeatOb.log (method)&quot;&gt;log&lt;/a&gt;&lt;/span&gt;, &lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;NeatOb.html#to_s-instance_method&quot; title=&quot;NEAT::NeatOb#to_s (method)&quot;&gt;#to_s&lt;/a&gt;&lt;/span&gt;&lt;/p&gt;
647
+
648
+ &lt;div id=&quot;constructor_details&quot; class=&quot;method_details_list&quot;&gt;
649
+ &lt;h2&gt;Constructor Details&lt;/h2&gt;
650
+
651
+ &lt;div class=&quot;method_details first&quot;&gt;
652
+ &lt;h3 class=&quot;signature first&quot; id=&quot;initialize-instance_method&quot;&gt;
653
+
654
+ - (&lt;tt&gt;&lt;span class=&#39;object_link&#39;&gt;&lt;a href=&quot;&quot; title=&quot;NEAT::Population (class)&quot;&gt;Population&lt;/a&gt;&lt;/span&gt;&lt;/tt&gt;) &lt;strong&gt;initialize&lt;/strong&gt;(c, &amp;amp;block)</pre>
655
+
656
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
657
+
658
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
659
+
660
+ <p>&lt;p&gt;Create initial (ramdom) population of critters&lt;/p&gt;</p>
661
+
662
+ <pre>&lt;/div&gt;</pre>
663
+
664
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
665
+
666
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
667
+
668
+ <pre>&lt;tr&gt;
669
+ &lt;td&gt;
670
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
671
+
672
+ <p>37 38 39 40 41 42 43 44 45 46 47 48 49 50&lt;/pre&gt;</p>
673
+
674
+ <pre>&lt;/td&gt;
675
+ &lt;td&gt;
676
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 37&lt;/span&gt;</pre>
677
+
678
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
679
+ identifier rubyid_initialize&#39;&gt;initialize&lt;/span&gt;&lt;span
680
+ class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier
681
+ rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span
682
+ class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span
683
+ class=&#39;op&#39;&gt;&amp;amp;&lt;/span&gt;&lt;span class=&#39;id
684
+ identifier rubyid_block&#39;&gt;block&lt;/span&gt;&lt;span
685
+ class=&#39;rparen&#39;&gt;)&lt;/span&gt;</p>
686
+
687
+ <pre>&lt;span class=&#39;kw&#39;&gt;super&lt;/span&gt;
688
+ &lt;span class=&#39;ivar&#39;&gt;@input_neurons&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_neural_inputs&#39;&gt;neural_inputs&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_clone&#39;&gt;clone&lt;/span&gt;
689
+ &lt;span class=&#39;ivar&#39;&gt;@output_neurons&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_neural_outputs&#39;&gt;neural_outputs&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_clone&#39;&gt;clone&lt;/span&gt;
690
+ &lt;span class=&#39;ivar&#39;&gt;@hidden_neurons&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;unless&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_neural_hidden&#39;&gt;neural_hidden&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_nil?&#39;&gt;nil?&lt;/span&gt;
691
+ &lt;span class=&#39;id identifier rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_neural_hidden&#39;&gt;neural_hidden&lt;/span&gt;
692
+ &lt;span class=&#39;kw&#39;&gt;else&lt;/span&gt;
693
+ &lt;span class=&#39;id identifier rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_neuron_catalog&#39;&gt;neuron_catalog&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_keep_if&#39;&gt;keep_if&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_n&#39;&gt;n&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;not&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_n&#39;&gt;n&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_input?&#39;&gt;input?&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;
694
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
695
+ &lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;int&#39;&gt;0&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;...&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_parms&#39;&gt;parms&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_start_population_size&#39;&gt;start_population_size&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;||&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_c&#39;&gt;c&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_parms&#39;&gt;parms&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_population_size&#39;&gt;population_size&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;do&lt;/span&gt;
696
+ &lt;span class=&#39;const&#39;&gt;Critter&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_new&#39;&gt;new&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt;
697
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
698
+ &lt;span class=&#39;id identifier rubyid_block&#39;&gt;block&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;unless&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_block&#39;&gt;block&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_nil?&#39;&gt;nil?&lt;/span&gt;</pre>
699
+
700
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
701
+
702
+ <pre> &lt;/td&gt;
703
+ &lt;/tr&gt;</pre>
704
+
705
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
706
+
707
+ <p>&lt;/div&gt;</p>
708
+
709
+ <pre>&lt;div id=&quot;instance_attr_details&quot; class=&quot;attr_details&quot;&gt;
710
+ &lt;h2&gt;Instance Attribute Details&lt;/h2&gt;
711
+
712
+ &lt;span id=&quot;critters=-instance_method&quot;&gt;&lt;/span&gt;
713
+ &lt;div class=&quot;method_details first&quot;&gt;
714
+ &lt;h3 class=&quot;signature first&quot; id=&quot;critters-instance_method&quot;&gt;
715
+
716
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;critters&lt;/strong&gt;</pre>
717
+
718
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
719
+
720
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
721
+
722
+ <p>&lt;p&gt;list of critter in this population&lt;/p&gt;</p>
723
+
724
+ <pre>&lt;/div&gt;</pre>
725
+
726
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
727
+
728
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
729
+
730
+ <pre>&lt;tr&gt;
731
+ &lt;td&gt;
732
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
733
+
734
+ <p>25 26 27&lt;/pre&gt;</p>
735
+
736
+ <pre>&lt;/td&gt;
737
+ &lt;td&gt;
738
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 25&lt;/span&gt;</pre>
739
+
740
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
741
+ identifier rubyid_critters&#39;&gt;critters&lt;/span&gt;</p>
742
+
743
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;</pre>
744
+
745
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
746
+
747
+ <pre> &lt;/td&gt;
748
+ &lt;/tr&gt;</pre>
749
+
750
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
751
+
752
+ <pre> &lt;span id=&quot;&quot;&gt;&lt;/span&gt;
753
+ &lt;div class=&quot;method_details &quot;&gt;
754
+ &lt;h3 class=&quot;signature &quot; id=&quot;fitness-instance_method&quot;&gt;
755
+
756
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;fitness&lt;/strong&gt; &lt;span class=&quot;extras&quot;&gt;(readonly)&lt;/span&gt;</pre>
757
+
758
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
759
+
760
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
761
+
762
+ <p>&lt;p&gt;Overall population fitness and novelty&lt;/p&gt;</p>
763
+
764
+ <pre>&lt;/div&gt;</pre>
765
+
766
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
767
+
768
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
769
+
770
+ <pre>&lt;tr&gt;
771
+ &lt;td&gt;
772
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
773
+
774
+ <p>28 29 30&lt;/pre&gt;</p>
775
+
776
+ <pre>&lt;/td&gt;
777
+ &lt;td&gt;
778
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 28&lt;/span&gt;</pre>
779
+
780
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
781
+ identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;</p>
782
+
783
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@fitness&lt;/span&gt;</pre>
784
+
785
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
786
+
787
+ <pre> &lt;/td&gt;
788
+ &lt;/tr&gt;</pre>
789
+
790
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
791
+
792
+ <pre> &lt;span id=&quot;hidden_neurons=-instance_method&quot;&gt;&lt;/span&gt;
793
+ &lt;div class=&quot;method_details &quot;&gt;
794
+ &lt;h3 class=&quot;signature &quot; id=&quot;hidden_neurons-instance_method&quot;&gt;
795
+
796
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;hidden_neurons&lt;/strong&gt;</pre>
797
+
798
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
799
+
800
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
801
+
802
+ <p>&lt;p&gt;List of possible neuron classes for hidden neurons.&lt;/p&gt;</p>
803
+
804
+ <pre>&lt;/div&gt;</pre>
805
+
806
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
807
+
808
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
809
+
810
+ <pre>&lt;tr&gt;
811
+ &lt;td&gt;
812
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
813
+
814
+ <p>16 17 18&lt;/pre&gt;</p>
815
+
816
+ <pre>&lt;/td&gt;
817
+ &lt;td&gt;
818
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 16&lt;/span&gt;</pre>
819
+
820
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
821
+ identifier rubyid_hidden_neurons&#39;&gt;hidden_neurons&lt;/span&gt;</p>
822
+
823
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@hidden_neurons&lt;/span&gt;</pre>
824
+
825
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
826
+
827
+ <pre> &lt;/td&gt;
828
+ &lt;/tr&gt;</pre>
829
+
830
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
831
+
832
+ <pre> &lt;span id=&quot;input_neurons=-instance_method&quot;&gt;&lt;/span&gt;
833
+ &lt;div class=&quot;method_details &quot;&gt;
834
+ &lt;h3 class=&quot;signature &quot; id=&quot;input_neurons-instance_method&quot;&gt;
835
+
836
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;input_neurons&lt;/strong&gt;</pre>
837
+
838
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
839
+
840
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
841
+
842
+ <p>&lt;p&gt;Ordered list or hash of input neuron classes (all critters
843
+ generated here shall have this)&lt;/p&gt;</p>
844
+
845
+ <pre>&lt;/div&gt;</pre>
846
+
847
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
848
+
849
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
850
+
851
+ <pre>&lt;tr&gt;
852
+ &lt;td&gt;
853
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
854
+
855
+ <p>13 14 15&lt;/pre&gt;</p>
856
+
857
+ <pre>&lt;/td&gt;
858
+ &lt;td&gt;
859
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 13&lt;/span&gt;</pre>
860
+
861
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
862
+ identifier rubyid_input_neurons&#39;&gt;input_neurons&lt;/span&gt;</p>
863
+
864
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@input_neurons&lt;/span&gt;</pre>
865
+
866
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
867
+
868
+ <pre> &lt;/td&gt;
869
+ &lt;/tr&gt;</pre>
870
+
871
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
872
+
873
+ <pre> &lt;span id=&quot;&quot;&gt;&lt;/span&gt;
874
+ &lt;div class=&quot;method_details &quot;&gt;
875
+ &lt;h3 class=&quot;signature &quot; id=&quot;novelty-instance_method&quot;&gt;
876
+
877
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;novelty&lt;/strong&gt; &lt;span class=&quot;extras&quot;&gt;(readonly)&lt;/span&gt;</pre>
878
+
879
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
880
+
881
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
882
+
883
+ <p>&lt;p&gt;Overall population fitness and novelty&lt;/p&gt;</p>
884
+
885
+ <pre>&lt;/div&gt;</pre>
886
+
887
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
888
+
889
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
890
+
891
+ <pre>&lt;tr&gt;
892
+ &lt;td&gt;
893
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
894
+
895
+ <p>28 29 30&lt;/pre&gt;</p>
896
+
897
+ <pre>&lt;/td&gt;
898
+ &lt;td&gt;
899
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 28&lt;/span&gt;</pre>
900
+
901
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
902
+ identifier rubyid_novelty&#39;&gt;novelty&lt;/span&gt;</p>
903
+
904
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@novelty&lt;/span&gt;</pre>
905
+
906
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
907
+
908
+ <pre> &lt;/td&gt;
909
+ &lt;/tr&gt;</pre>
910
+
911
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
912
+
913
+ <pre> &lt;span id=&quot;output_neurons=-instance_method&quot;&gt;&lt;/span&gt;
914
+ &lt;div class=&quot;method_details &quot;&gt;
915
+ &lt;h3 class=&quot;signature &quot; id=&quot;output_neurons-instance_method&quot;&gt;
916
+
917
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;output_neurons&lt;/strong&gt;</pre>
918
+
919
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
920
+
921
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
922
+
923
+ <p>&lt;p&gt;Ordered list or hash of output neuron classes (all critters
924
+ generated here shall have this)&lt;/p&gt;</p>
925
+
926
+ <pre>&lt;/div&gt;</pre>
927
+
928
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
929
+
930
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
931
+
932
+ <pre>&lt;tr&gt;
933
+ &lt;td&gt;
934
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
935
+
936
+ <p>20 21 22&lt;/pre&gt;</p>
937
+
938
+ <pre>&lt;/td&gt;
939
+ &lt;td&gt;
940
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 20&lt;/span&gt;</pre>
941
+
942
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
943
+ identifier rubyid_output_neurons&#39;&gt;output_neurons&lt;/span&gt;</p>
944
+
945
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@output_neurons&lt;/span&gt;</pre>
946
+
947
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
948
+
949
+ <pre> &lt;/td&gt;
950
+ &lt;/tr&gt;</pre>
951
+
952
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
953
+
954
+ <pre> &lt;span id=&quot;&quot;&gt;&lt;/span&gt;
955
+ &lt;div class=&quot;method_details &quot;&gt;
956
+ &lt;h3 class=&quot;signature &quot; id=&quot;species-instance_method&quot;&gt;
957
+
958
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;species&lt;/strong&gt; &lt;span class=&quot;extras&quot;&gt;(readonly)&lt;/span&gt;</pre>
959
+
960
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
961
+
962
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
963
+
964
+ <p>&lt;p&gt;Hash list of species lists&lt;/p&gt;</p>
965
+
966
+ <pre>&lt;/div&gt;</pre>
967
+
968
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
969
+
970
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
971
+
972
+ <pre>&lt;tr&gt;
973
+ &lt;td&gt;
974
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
975
+
976
+ <p>31 32 33&lt;/pre&gt;</p>
977
+
978
+ <pre>&lt;/td&gt;
979
+ &lt;td&gt;
980
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 31&lt;/span&gt;</pre>
981
+
982
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
983
+ identifier rubyid_species&#39;&gt;species&lt;/span&gt;</p>
984
+
985
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@species&lt;/span&gt;</pre>
986
+
987
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
988
+
989
+ <pre> &lt;/td&gt;
990
+ &lt;/tr&gt;</pre>
991
+
992
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
993
+
994
+ <pre> &lt;span id=&quot;traits=-instance_method&quot;&gt;&lt;/span&gt;
995
+ &lt;div class=&quot;method_details &quot;&gt;
996
+ &lt;h3 class=&quot;signature &quot; id=&quot;traits-instance_method&quot;&gt;
997
+
998
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;traits&lt;/strong&gt;</pre>
999
+
1000
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1001
+
1002
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1003
+
1004
+ <p>&lt;p&gt;Returns the value of attribute traits&lt;/p&gt;</p>
1005
+
1006
+ <pre>&lt;/div&gt;</pre>
1007
+
1008
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1009
+
1010
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1011
+
1012
+ <pre>&lt;tr&gt;
1013
+ &lt;td&gt;
1014
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1015
+
1016
+ <p>22 23 24&lt;/pre&gt;</p>
1017
+
1018
+ <pre>&lt;/td&gt;
1019
+ &lt;td&gt;
1020
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 22&lt;/span&gt;</pre>
1021
+
1022
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1023
+ identifier rubyid_traits&#39;&gt;traits&lt;/span&gt;</p>
1024
+
1025
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@traits&lt;/span&gt;</pre>
1026
+
1027
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1028
+
1029
+ <pre> &lt;/td&gt;
1030
+ &lt;/tr&gt;</pre>
1031
+
1032
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1033
+
1034
+ <pre>&lt;/div&gt;
1035
+
1036
+ &lt;div id=&quot;class_method_details&quot; class=&quot;method_details_list&quot;&gt;
1037
+ &lt;h2&gt;Class Method Details&lt;/h2&gt;
1038
+
1039
+ &lt;div class=&quot;method_details first&quot;&gt;
1040
+ &lt;h3 class=&quot;signature first&quot; id=&quot;compactify!-class_method&quot;&gt;
1041
+
1042
+ + (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;compactify!&lt;/strong&gt;(parm)</pre>
1043
+
1044
+ <p>&lt;/h3&gt;&lt;table class=“source_code”&gt;</p>
1045
+
1046
+ <pre>&lt;tr&gt;
1047
+ &lt;td&gt;
1048
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1049
+
1050
+ <p>102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
1051
+ 120&lt;/pre&gt;</p>
1052
+
1053
+ <pre>&lt;/td&gt;
1054
+ &lt;td&gt;
1055
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 102&lt;/span&gt;</pre>
1056
+
1057
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span
1058
+ class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span
1059
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1060
+ rubyid_compactify!&#39;&gt;compactify!&lt;/span&gt;&lt;span
1061
+ class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier
1062
+ rubyid_parm&#39;&gt;parm&lt;/span&gt;&lt;span
1063
+ class=&#39;rparen&#39;&gt;)&lt;/span&gt;</p>
1064
+
1065
+ <pre>&lt;span class=&#39;id identifier rubyid_mutt&#39;&gt;mutt&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;symbol&#39;&gt;:mutt&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_reject&#39;&gt;reject&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;
1066
+ &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_size&#39;&gt;size&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;&amp;gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_parm&#39;&gt;parm&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_smallest_species&#39;&gt;smallest_species&lt;/span&gt;
1067
+ &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;
1068
+ &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_delete&#39;&gt;delete&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;
1069
+ &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;
1070
+ &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_flatten&#39;&gt;flatten&lt;/span&gt;
1071
+
1072
+ &lt;span class=&#39;comment&#39;&gt;# FIXME this code is not dry!!!!</pre>
1073
+
1074
+ <p>&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span
1075
+ class=&#39;id identifier rubyid_mutt&#39;&gt;mutt&lt;/span&gt;&lt;span
1076
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1077
+ rubyid_fitness=&#39;&gt;fitness=&lt;/span&gt;&lt;span
1078
+ class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier
1079
+ rubyid_fit&#39;&gt;fit&lt;/span&gt;&lt;span
1080
+ class=&#39;rparen&#39;&gt;)&lt;/span&gt;</p>
1081
+
1082
+ <pre> &lt;span class=&#39;ivar&#39;&gt;@fitness&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_fit&#39;&gt;fit&lt;/span&gt;
1083
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1084
+
1085
+ &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_mutt&#39;&gt;mutt&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;
1086
+ &lt;span class=&#39;ivar&#39;&gt;@fitness&lt;/span&gt;
1087
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1088
+
1089
+ &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_delete&#39;&gt;delete&lt;/span&gt; &lt;span class=&#39;symbol&#39;&gt;:mutt&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;if&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;symbol&#39;&gt;:mutt&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_empty?&#39;&gt;empty?&lt;/span&gt;</pre>
1090
+
1091
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1092
+
1093
+ <pre> &lt;/td&gt;
1094
+ &lt;/tr&gt;</pre>
1095
+
1096
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1097
+
1098
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1099
+ &lt;h3 class=&quot;signature &quot; id=&quot;evaluate!-class_method&quot;&gt;
1100
+
1101
+ + (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;evaluate!&lt;/strong&gt;</pre>
1102
+
1103
+ <p>&lt;/h3&gt;&lt;table class=“source_code”&gt;</p>
1104
+
1105
+ <pre>&lt;tr&gt;
1106
+ &lt;td&gt;
1107
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1108
+
1109
+ <p>96 97 98 99 100&lt;/pre&gt;</p>
1110
+
1111
+ <pre>&lt;/td&gt;
1112
+ &lt;td&gt;
1113
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 96&lt;/span&gt;</pre>
1114
+
1115
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span
1116
+ class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span
1117
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1118
+ rubyid_evaluate!&#39;&gt;evaluate!&lt;/span&gt;</p>
1119
+
1120
+ <pre>&lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;do&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;
1121
+ &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_reduce&#39;&gt;reduce&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;+&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;/&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_size&#39;&gt;size&lt;/span&gt;
1122
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;</pre>
1123
+
1124
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1125
+
1126
+ <pre> &lt;/td&gt;
1127
+ &lt;/tr&gt;</pre>
1128
+
1129
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1130
+
1131
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1132
+ &lt;h3 class=&quot;signature &quot; id=&quot;member?-class_method&quot;&gt;
1133
+
1134
+ + (&lt;tt&gt;Boolean&lt;/tt&gt;) &lt;strong&gt;member?&lt;/strong&gt;(crit)</pre>
1135
+
1136
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1137
+
1138
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1139
+
1140
+ <p>&lt;p&gt;lists keyed by representative critter&lt;/p&gt;</p>
1141
+
1142
+ <pre>&lt;/div&gt;</pre>
1143
+
1144
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1145
+
1146
+ <p>&lt;p class=“tag_title”&gt;Returns:&lt;/p&gt; &lt;ul class=“return”&gt;</p>
1147
+
1148
+ <pre>&lt;li&gt;
1149
+
1150
+ &lt;span class=&#39;type&#39;&gt;(&lt;tt&gt;Boolean&lt;/tt&gt;)&lt;/span&gt;
1151
+
1152
+ &lt;/li&gt;</pre>
1153
+
1154
+ <p>&lt;/ul&gt;</p>
1155
+
1156
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1157
+
1158
+ <pre>&lt;tr&gt;
1159
+ &lt;td&gt;
1160
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1161
+
1162
+ <p>92 93 94&lt;/pre&gt;</p>
1163
+
1164
+ <pre>&lt;/td&gt;
1165
+ &lt;td&gt;
1166
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 92&lt;/span&gt;</pre>
1167
+
1168
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span
1169
+ class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span
1170
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1171
+ rubyid_member?&#39;&gt;member?&lt;/span&gt;&lt;span
1172
+ class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier
1173
+ rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span
1174
+ class=&#39;rparen&#39;&gt;)&lt;/span&gt;</p>
1175
+
1176
+ <pre>&lt;span class=&#39;kw&#39;&gt;super&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_member?&#39;&gt;member?&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;or&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_li&#39;&gt;li&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_li&#39;&gt;li&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_member?&#39;&gt;member?&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_reduce&#39;&gt;reduce&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_t1&#39;&gt;t1&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_t2&#39;&gt;t2&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_t1&#39;&gt;t1&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;or&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_t2&#39;&gt;t2&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;</pre>
1177
+
1178
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1179
+
1180
+ <pre> &lt;/td&gt;
1181
+ &lt;/tr&gt;</pre>
1182
+
1183
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1184
+
1185
+ <pre>&lt;/div&gt;
1186
+
1187
+ &lt;div id=&quot;instance_method_details&quot; class=&quot;method_details_list&quot;&gt;
1188
+ &lt;h2&gt;Instance Method Details&lt;/h2&gt;
1189
+
1190
+ &lt;div class=&quot;method_details first&quot;&gt;
1191
+ &lt;h3 class=&quot;signature first&quot; id=&quot;analyze!-instance_method&quot;&gt;
1192
+
1193
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;analyze!&lt;/strong&gt;</pre>
1194
+
1195
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1196
+
1197
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1198
+
1199
+ <p>&lt;p&gt;Alalyze evaluation results.&lt;/p&gt;</p>
1200
+
1201
+ <pre>&lt;/div&gt;</pre>
1202
+
1203
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1204
+
1205
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1206
+
1207
+ <pre>&lt;tr&gt;
1208
+ &lt;td&gt;
1209
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1210
+
1211
+ <p>74 75 76&lt;/pre&gt;</p>
1212
+
1213
+ <pre>&lt;/td&gt;
1214
+ &lt;td&gt;
1215
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 74&lt;/span&gt;</pre>
1216
+
1217
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1218
+ identifier rubyid_analyze!&#39;&gt;analyze!&lt;/span&gt;</p>
1219
+
1220
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_critter&#39;&gt;critter&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_evaluator&#39;&gt;evaluator&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_analyze_for_fitness!&#39;&gt;analyze_for_fitness!&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_critter&#39;&gt;critter&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;</pre>
1221
+
1222
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1223
+
1224
+ <pre> &lt;/td&gt;
1225
+ &lt;/tr&gt;</pre>
1226
+
1227
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1228
+
1229
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1230
+ &lt;h3 class=&quot;signature &quot; id=&quot;best_critter-instance_method&quot;&gt;
1231
+
1232
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;best_critter&lt;/strong&gt;</pre>
1233
+
1234
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1235
+
1236
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1237
+
1238
+ <p>&lt;p&gt;The “best critter” is the critter with the lowest (closet to zero)
1239
+ fitness rating.&lt;/p&gt;</p>
1240
+
1241
+ <pre>&lt;/div&gt;</pre>
1242
+
1243
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1244
+
1245
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1246
+
1247
+ <pre>&lt;tr&gt;
1248
+ &lt;td&gt;
1249
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1250
+
1251
+ <p>176 177 178 179 180 181 182&lt;/pre&gt;</p>
1252
+
1253
+ <pre>&lt;/td&gt;
1254
+ &lt;td&gt;
1255
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 176&lt;/span&gt;</pre>
1256
+
1257
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1258
+ identifier rubyid_best_critter&#39;&gt;best_critter&lt;/span&gt;</p>
1259
+
1260
+ <pre>&lt;span class=&#39;kw&#39;&gt;unless&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_compare_func&#39;&gt;compare_func&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_nil?&#39;&gt;nil?&lt;/span&gt;
1261
+ &lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_min&#39;&gt;min&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_compare_func&#39;&gt;compare_func&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;
1262
+ &lt;span class=&#39;kw&#39;&gt;else&lt;/span&gt;
1263
+ &lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_min&#39;&gt;min&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;&amp;lt;=&amp;gt;&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;
1264
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;</pre>
1265
+
1266
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1267
+
1268
+ <pre> &lt;/td&gt;
1269
+ &lt;/tr&gt;</pre>
1270
+
1271
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1272
+
1273
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1274
+ &lt;h3 class=&quot;signature &quot; id=&quot;dump_s-instance_method&quot;&gt;
1275
+
1276
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;dump_s&lt;/strong&gt;</pre>
1277
+
1278
+ <p>&lt;/h3&gt;&lt;table class=“source_code”&gt;</p>
1279
+
1280
+ <pre>&lt;tr&gt;
1281
+ &lt;td&gt;
1282
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1283
+
1284
+ <p>194 195 196&lt;/pre&gt;</p>
1285
+
1286
+ <pre>&lt;/td&gt;
1287
+ &lt;td&gt;
1288
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 194&lt;/span&gt;</pre>
1289
+
1290
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1291
+ identifier rubyid_dump_s&#39;&gt;dump_s&lt;/span&gt;</p>
1292
+
1293
+ <pre>&lt;span class=&#39;id identifier rubyid_to_s&#39;&gt;to_s&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;+&lt;/span&gt; &lt;span class=&#39;tstring&#39;&gt;&lt;span class=&#39;tstring_beg&#39;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&#39;tstring_content&#39;&gt;\npopulation:\n&lt;/span&gt;&lt;span class=&#39;tstring_end&#39;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;+&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_dump_s&#39;&gt;dump_s&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_join&#39;&gt;join&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;tstring&#39;&gt;&lt;span class=&#39;tstring_beg&#39;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&#39;tstring_content&#39;&gt;\n&lt;/span&gt;&lt;span class=&#39;tstring_end&#39;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt;</pre>
1294
+
1295
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1296
+
1297
+ <pre> &lt;/td&gt;
1298
+ &lt;/tr&gt;</pre>
1299
+
1300
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1301
+
1302
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1303
+ &lt;h3 class=&quot;signature &quot; id=&quot;evaluate!-instance_method&quot;&gt;
1304
+
1305
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;evaluate!&lt;/strong&gt;</pre>
1306
+
1307
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1308
+
1309
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1310
+
1311
+ <p>&lt;p&gt;Called for each sequence.&lt;/p&gt;</p>
1312
+
1313
+ <pre>&lt;/div&gt;</pre>
1314
+
1315
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1316
+
1317
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1318
+
1319
+ <pre>&lt;tr&gt;
1320
+ &lt;td&gt;
1321
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1322
+
1323
+ <p>69 70 71&lt;/pre&gt;</p>
1324
+
1325
+ <pre>&lt;/td&gt;
1326
+ &lt;td&gt;
1327
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 69&lt;/span&gt;</pre>
1328
+
1329
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1330
+ identifier rubyid_evaluate!&#39;&gt;evaluate!&lt;/span&gt;</p>
1331
+
1332
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_critter&#39;&gt;critter&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_critter&#39;&gt;critter&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_evaluate!&#39;&gt;evaluate!&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;</pre>
1333
+
1334
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1335
+
1336
+ <pre> &lt;/td&gt;
1337
+ &lt;/tr&gt;</pre>
1338
+
1339
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1340
+
1341
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1342
+ &lt;h3 class=&quot;signature &quot; id=&quot;evolve-instance_method&quot;&gt;
1343
+
1344
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;evolve&lt;/strong&gt;</pre>
1345
+
1346
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1347
+
1348
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1349
+
1350
+ <p>&lt;p&gt;Call this after evaluation. Returns a newly-evolved
1351
+ population.&lt;/p&gt;</p>
1352
+
1353
+ <pre>&lt;/div&gt;</pre>
1354
+
1355
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1356
+
1357
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1358
+
1359
+ <pre>&lt;tr&gt;
1360
+ &lt;td&gt;
1361
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1362
+
1363
+ <p>80 81 82&lt;/pre&gt;</p>
1364
+
1365
+ <pre>&lt;/td&gt;
1366
+ &lt;td&gt;
1367
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 80&lt;/span&gt;</pre>
1368
+
1369
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1370
+ identifier rubyid_evolve&#39;&gt;evolve&lt;/span&gt;</p>
1371
+
1372
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_evolver&#39;&gt;evolver&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_evolve&#39;&gt;evolve&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;</pre>
1373
+
1374
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1375
+
1376
+ <pre> &lt;/td&gt;
1377
+ &lt;/tr&gt;</pre>
1378
+
1379
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1380
+
1381
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1382
+ &lt;h3 class=&quot;signature &quot; id=&quot;express!-instance_method&quot;&gt;
1383
+
1384
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;express!&lt;/strong&gt;</pre>
1385
+
1386
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1387
+
1388
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1389
+
1390
+ <p>&lt;p&gt;Express the entire population.&lt;/p&gt;</p>
1391
+
1392
+ <pre>&lt;/div&gt;</pre>
1393
+
1394
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1395
+
1396
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1397
+
1398
+ <pre>&lt;tr&gt;
1399
+ &lt;td&gt;
1400
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1401
+
1402
+ <p>64 65 66&lt;/pre&gt;</p>
1403
+
1404
+ <pre>&lt;/td&gt;
1405
+ &lt;td&gt;
1406
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 64&lt;/span&gt;</pre>
1407
+
1408
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1409
+ identifier rubyid_express!&#39;&gt;express!&lt;/span&gt;</p>
1410
+
1411
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_critter&#39;&gt;critter&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_critter&#39;&gt;critter&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_express!&#39;&gt;express!&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;</pre>
1412
+
1413
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1414
+
1415
+ <pre> &lt;/td&gt;
1416
+ &lt;/tr&gt;</pre>
1417
+
1418
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1419
+
1420
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1421
+ &lt;h3 class=&quot;signature &quot; id=&quot;initialize_for_recurrence!-instance_method&quot;&gt;
1422
+
1423
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;initialize_for_recurrence!&lt;/strong&gt;</pre>
1424
+
1425
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1426
+
1427
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1428
+
1429
+ <p>&lt;p&gt;Make sure all critters are reset and prepared for recurrent
1430
+ network evaluation.&lt;/p&gt;</p>
1431
+
1432
+ <pre>&lt;/div&gt;</pre>
1433
+
1434
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1435
+
1436
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1437
+
1438
+ <pre>&lt;tr&gt;
1439
+ &lt;td&gt;
1440
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1441
+
1442
+ <p>54 55 56&lt;/pre&gt;</p>
1443
+
1444
+ <pre>&lt;/td&gt;
1445
+ &lt;td&gt;
1446
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 54&lt;/span&gt;</pre>
1447
+
1448
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1449
+ identifier
1450
+ rubyid_initialize_for_recurrence!&#39;&gt;initialize_for_recurrence!&lt;/span&gt;</p>
1451
+
1452
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_initialize_neurons!&#39;&gt;initialize_neurons!&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;</pre>
1453
+
1454
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1455
+
1456
+ <pre> &lt;/td&gt;
1457
+ &lt;/tr&gt;</pre>
1458
+
1459
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1460
+
1461
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1462
+ &lt;h3 class=&quot;signature &quot; id=&quot;mutate!-instance_method&quot;&gt;
1463
+
1464
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;mutate!&lt;/strong&gt;</pre>
1465
+
1466
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1467
+
1468
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1469
+
1470
+ <p>&lt;p&gt;Mutate the genes and neurons.&lt;/p&gt;</p>
1471
+
1472
+ <pre>&lt;/div&gt;</pre>
1473
+
1474
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1475
+
1476
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1477
+
1478
+ <pre>&lt;tr&gt;
1479
+ &lt;td&gt;
1480
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1481
+
1482
+ <p>59 60 61&lt;/pre&gt;</p>
1483
+
1484
+ <pre>&lt;/td&gt;
1485
+ &lt;td&gt;
1486
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 59&lt;/span&gt;</pre>
1487
+
1488
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1489
+ identifier rubyid_mutate!&#39;&gt;mutate!&lt;/span&gt;</p>
1490
+
1491
+ <pre>&lt;span class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_evolver&#39;&gt;evolver&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_mutate!&#39;&gt;mutate!&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;</pre>
1492
+
1493
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1494
+
1495
+ <pre> &lt;/td&gt;
1496
+ &lt;/tr&gt;</pre>
1497
+
1498
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1499
+
1500
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1501
+ &lt;h3 class=&quot;signature &quot; id=&quot;report-instance_method&quot;&gt;
1502
+
1503
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;report&lt;/strong&gt;</pre>
1504
+
1505
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1506
+
1507
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1508
+
1509
+ <p>&lt;h2
1510
+ id=“label-Generate+a+report+on+the+state+of+this+population.”&gt;Generate a
1511
+ report on the state of this population.&lt;/h2&gt;</p>
1512
+
1513
+ <pre>&lt;/div&gt;</pre>
1514
+
1515
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1516
+
1517
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1518
+
1519
+ <pre>&lt;tr&gt;
1520
+ &lt;td&gt;
1521
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1522
+
1523
+ <p>165 166 167 168 169 170 171 172&lt;/pre&gt;</p>
1524
+
1525
+ <pre>&lt;/td&gt;
1526
+ &lt;td&gt;
1527
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 165&lt;/span&gt;</pre>
1528
+
1529
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1530
+ identifier rubyid_report&#39;&gt;report&lt;/span&gt;</p>
1531
+
1532
+ <pre>&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;
1533
+ &lt;span class=&#39;label&#39;&gt;fitness:&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_report_fitness&#39;&gt;report_fitness&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt;
1534
+ &lt;span class=&#39;label&#39;&gt;fitness_species:&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_report_fitness_species&#39;&gt;report_fitness_species&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt;
1535
+ &lt;span class=&#39;label&#39;&gt;best_critter:&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_report_best_fit&#39;&gt;report_best_fit&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt;
1536
+ &lt;span class=&#39;label&#39;&gt;worst_critter:&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_report_worst_fit&#39;&gt;report_worst_fit&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt;
1537
+ &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;</pre>
1538
+
1539
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1540
+
1541
+ <pre> &lt;/td&gt;
1542
+ &lt;/tr&gt;</pre>
1543
+
1544
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1545
+
1546
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1547
+ &lt;h3 class=&quot;signature &quot; id=&quot;speciate!-instance_method&quot;&gt;
1548
+
1549
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;speciate!&lt;/strong&gt;</pre>
1550
+
1551
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1552
+
1553
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1554
+
1555
+ <p>&lt;p&gt;Group critters into species Note that the @species objects have
1556
+ useful singleton methods:&lt;/p&gt; &lt;ul&gt;&lt;li&gt;
1557
+ &lt;p&gt;@species.member? – checks all of the lists for membership, not
1558
+ just the hash&lt;/p&gt; &lt;/li&gt;&lt;li&gt; &lt;p&gt;@&lt;a
1559
+ href=“crit”&gt;species&lt;/a&gt;.fitness – fitness of the entire
1560
+ species&lt;/p&gt; &lt;/li&gt;&lt;/ul&gt;</p>
1561
+
1562
+ <pre>&lt;/div&gt;</pre>
1563
+
1564
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1565
+
1566
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1567
+
1568
+ <pre>&lt;tr&gt;
1569
+ &lt;td&gt;
1570
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1571
+
1572
+ <p>89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109
1573
+ 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128
1574
+ 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147
1575
+ 148 149 150 151 152 153 154 155 156 157 158 159 160 161&lt;/pre&gt;</p>
1576
+
1577
+ <pre>&lt;/td&gt;
1578
+ &lt;td&gt;
1579
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 89&lt;/span&gt;</pre>
1580
+
1581
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1582
+ identifier rubyid_speciate!&#39;&gt;speciate!&lt;/span&gt;</p>
1583
+
1584
+ <pre>&lt;span class=&#39;comment&#39;&gt;# We blow away existing species and create our own member? function</pre>
1585
+
1586
+ <p>&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@species&lt;/span&gt;
1587
+ &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span
1588
+ class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span
1589
+ class=&#39;rbrace&#39;&gt;}&lt;/span&gt; &lt;span
1590
+ class=&#39;comment&#39;&gt;# lists keyed by representative critter
1591
+ &lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span
1592
+ class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span
1593
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1594
+ rubyid_member?&#39;&gt;member?&lt;/span&gt;&lt;span
1595
+ class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier
1596
+ rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span
1597
+ class=&#39;rparen&#39;&gt;)&lt;/span&gt;</p>
1598
+
1599
+ <pre> &lt;span class=&#39;kw&#39;&gt;super&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_member?&#39;&gt;member?&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;or&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_li&#39;&gt;li&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_li&#39;&gt;li&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_member?&#39;&gt;member?&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_reduce&#39;&gt;reduce&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_t1&#39;&gt;t1&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_t2&#39;&gt;t2&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_t1&#39;&gt;t1&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;or&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_t2&#39;&gt;t2&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;
1600
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1601
+
1602
+ &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_evaluate!&#39;&gt;evaluate!&lt;/span&gt;
1603
+ &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;do&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;
1604
+ &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_reduce&#39;&gt;reduce&lt;/span&gt;&lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;+&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;/&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_size&#39;&gt;size&lt;/span&gt;
1605
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1606
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1607
+
1608
+ &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_compactify!&#39;&gt;compactify!&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_parm&#39;&gt;parm&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt;
1609
+ &lt;span class=&#39;id identifier rubyid_mutt&#39;&gt;mutt&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;symbol&#39;&gt;:mutt&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_reject&#39;&gt;reject&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;
1610
+ &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_size&#39;&gt;size&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;&amp;gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_parm&#39;&gt;parm&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_smallest_species&#39;&gt;smallest_species&lt;/span&gt;
1611
+ &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_map&#39;&gt;map&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;
1612
+ &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_delete&#39;&gt;delete&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;
1613
+ &lt;span class=&#39;id identifier rubyid_splist&#39;&gt;splist&lt;/span&gt;
1614
+ &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_flatten&#39;&gt;flatten&lt;/span&gt;
1615
+
1616
+ &lt;span class=&#39;comment&#39;&gt;# FIXME this code is not dry!!!!</pre>
1617
+
1618
+ <p>&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span
1619
+ class=&#39;id identifier rubyid_mutt&#39;&gt;mutt&lt;/span&gt;&lt;span
1620
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1621
+ rubyid_fitness=&#39;&gt;fitness=&lt;/span&gt;&lt;span
1622
+ class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier
1623
+ rubyid_fit&#39;&gt;fit&lt;/span&gt;&lt;span
1624
+ class=&#39;rparen&#39;&gt;)&lt;/span&gt;</p>
1625
+
1626
+ <pre> &lt;span class=&#39;ivar&#39;&gt;@fitness&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_fit&#39;&gt;fit&lt;/span&gt;
1627
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1628
+
1629
+ &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_mutt&#39;&gt;mutt&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;
1630
+ &lt;span class=&#39;ivar&#39;&gt;@fitness&lt;/span&gt;
1631
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1632
+
1633
+ &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_delete&#39;&gt;delete&lt;/span&gt; &lt;span class=&#39;symbol&#39;&gt;:mutt&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;if&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;self&lt;/span&gt;&lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;symbol&#39;&gt;:mutt&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_empty?&#39;&gt;empty?&lt;/span&gt;
1634
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1635
+
1636
+ &lt;span class=&#39;comment&#39;&gt;# Some convience parms</pre>
1637
+
1638
+ <p>&lt;/span&gt; &lt;span class=&#39;id identifier
1639
+ rubyid_parm&#39;&gt;parm&lt;/span&gt; &lt;span
1640
+ class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span
1641
+ class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span
1642
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1643
+ rubyid_parms&#39;&gt;parms&lt;/span&gt;</p>
1644
+
1645
+ <pre>&lt;span class=&#39;comment&#39;&gt;# And so now we iterate...</pre>
1646
+
1647
+ <p>&lt;/span&gt; &lt;span
1648
+ class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span
1649
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1650
+ rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span
1651
+ class=&#39;kw&#39;&gt;do&lt;/span&gt; &lt;span
1652
+ class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier
1653
+ rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span
1654
+ class=&#39;op&#39;&gt;|&lt;/span&gt;</p>
1655
+
1656
+ <pre>&lt;span class=&#39;id identifier rubyid_wearein&#39;&gt;wearein&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;false&lt;/span&gt;
1657
+ &lt;span class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;do&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_ck&#39;&gt;ck&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_list&#39;&gt;list&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;
1658
+ &lt;span class=&#39;id identifier rubyid_delta&#39;&gt;delta&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_compare&#39;&gt;compare&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_ck&#39;&gt;ck&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt;
1659
+ &lt;span class=&#39;comment&#39;&gt;#log.debug { &amp;quot;delta for #{crit} and #{ck} is #{delta}&amp;quot; }</pre>
1660
+
1661
+ <p>&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;if&lt;/span&gt; &lt;span
1662
+ class=&#39;id identifier rubyid_delta&#39;&gt;delta&lt;/span&gt; &lt;span
1663
+ class=&#39;op&#39;&gt;&amp;lt;&lt;/span&gt; &lt;span class=&#39;id
1664
+ identifier rubyid_parm&#39;&gt;parm&lt;/span&gt;&lt;span
1665
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1666
+ rubyid_compatibility_threshold&#39;&gt;compatibility_threshold&lt;/span&gt;</p>
1667
+
1668
+ <pre> &lt;span class=&#39;id identifier rubyid_list&#39;&gt;list&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;&amp;lt;&amp;lt;&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;
1669
+ &lt;span class=&#39;id identifier rubyid_wearein&#39;&gt;wearein&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;true&lt;/span&gt;
1670
+ &lt;span class=&#39;kw&#39;&gt;break&lt;/span&gt;
1671
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1672
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1673
+
1674
+ &lt;span class=&#39;comment&#39;&gt;# New species?</pre>
1675
+
1676
+ <p>&lt;/span&gt; &lt;span class=&#39;kw&#39;&gt;unless&lt;/span&gt;
1677
+ &lt;span class=&#39;id identifier
1678
+ rubyid_wearein&#39;&gt;wearein&lt;/span&gt;</p>
1679
+
1680
+ <pre> &lt;span class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_species&#39;&gt;species&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;lbracket&#39;&gt;[&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_crit&#39;&gt;crit&lt;/span&gt;&lt;span class=&#39;rbracket&#39;&gt;]&lt;/span&gt;
1681
+ &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_species&#39;&gt;species&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness=&#39;&gt;fitness=&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fit&#39;&gt;fit&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt;
1682
+ &lt;span class=&#39;ivar&#39;&gt;@fitness&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;=&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_fit&#39;&gt;fit&lt;/span&gt;
1683
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1684
+ &lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_species&#39;&gt;species&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;
1685
+ &lt;span class=&#39;ivar&#39;&gt;@fitness&lt;/span&gt;
1686
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1687
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1688
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;
1689
+
1690
+ &lt;span class=&#39;comment&#39;&gt;# Compactify the species if less than smallest_species</pre>
1691
+
1692
+ <p>&lt;/span&gt; &lt;span
1693
+ class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span
1694
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1695
+ rubyid_compactify!&#39;&gt;compactify!&lt;/span&gt; &lt;span class=&#39;id
1696
+ identifier rubyid_parm&#39;&gt;parm&lt;/span&gt;</p>
1697
+
1698
+ <pre>&lt;span class=&#39;comment&#39;&gt;# And now we evaluate all species for fitness...</pre>
1699
+
1700
+ <p>&lt;/span&gt; &lt;span
1701
+ class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span
1702
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1703
+ rubyid_evaluate!&#39;&gt;evaluate!&lt;/span&gt;</p>
1704
+
1705
+ <pre>&lt;span class=&#39;comment&#39;&gt;# Dump for debugging reasons</pre>
1706
+
1707
+ <p>&lt;/span&gt; &lt;span
1708
+ class=&#39;ivar&#39;&gt;@species&lt;/span&gt;&lt;span
1709
+ class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier
1710
+ rubyid_each&#39;&gt;each&lt;/span&gt; &lt;span
1711
+ class=&#39;kw&#39;&gt;do&lt;/span&gt; &lt;span
1712
+ class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier
1713
+ rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span
1714
+ class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier
1715
+ rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span
1716
+ class=&#39;op&#39;&gt;|&lt;/span&gt;</p>
1717
+
1718
+ <pre> &lt;span class=&#39;id identifier rubyid_log&#39;&gt;log&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_debug&#39;&gt;debug&lt;/span&gt; &lt;span class=&#39;tstring&#39;&gt;&lt;span class=&#39;tstring_beg&#39;&gt;&amp;quot;&lt;/span&gt;&lt;span class=&#39;tstring_content&#39;&gt;&amp;gt;&amp;gt; Species &lt;/span&gt;&lt;span class=&#39;embexpr_beg&#39;&gt;#{&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_k&#39;&gt;k&lt;/span&gt;&lt;span class=&#39;embexpr_end&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;tstring_content&#39;&gt; has &lt;/span&gt;&lt;span class=&#39;embexpr_beg&#39;&gt;#{&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_size&#39;&gt;size&lt;/span&gt;&lt;span class=&#39;embexpr_end&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;tstring_content&#39;&gt; members with a &lt;/span&gt;&lt;span class=&#39;embexpr_beg&#39;&gt;#{&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_sp&#39;&gt;sp&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;embexpr_end&#39;&gt;}&lt;/span&gt;&lt;span class=&#39;tstring_content&#39;&gt; fitness&lt;/span&gt;&lt;span class=&#39;tstring_end&#39;&gt;&amp;quot;&lt;/span&gt;&lt;/span&gt;
1719
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;</pre>
1720
+
1721
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1722
+
1723
+ <pre> &lt;/td&gt;
1724
+ &lt;/tr&gt;</pre>
1725
+
1726
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1727
+
1728
+ <pre> &lt;div class=&quot;method_details &quot;&gt;
1729
+ &lt;h3 class=&quot;signature &quot; id=&quot;worst_critter-instance_method&quot;&gt;
1730
+
1731
+ - (&lt;tt&gt;Object&lt;/tt&gt;) &lt;strong&gt;worst_critter&lt;/strong&gt;</pre>
1732
+
1733
+ <p>&lt;/h3&gt;&lt;div class=“docstring”&gt;</p>
1734
+
1735
+ <pre>&lt;div class=&quot;discussion&quot;&gt;</pre>
1736
+
1737
+ <p>&lt;p&gt;The “worst critter” is the critter with the highest (away from
1738
+ zero) fitness rating.&lt;/p&gt;</p>
1739
+
1740
+ <pre>&lt;/div&gt;</pre>
1741
+
1742
+ <p>&lt;/div&gt; &lt;div class=“tags”&gt;</p>
1743
+
1744
+ <p>&lt;/div&gt;&lt;table class=“source_code”&gt;</p>
1745
+
1746
+ <pre>&lt;tr&gt;
1747
+ &lt;td&gt;
1748
+ &lt;pre class=&quot;lines&quot;&gt;</pre>
1749
+
1750
+ <p>186 187 188 189 190 191 192&lt;/pre&gt;</p>
1751
+
1752
+ <pre>&lt;/td&gt;
1753
+ &lt;td&gt;
1754
+ &lt;pre class=&quot;code&quot;&gt;&lt;span class=&quot;info file&quot;&gt;# File &#39;lib/rubyneat/population.rb&#39;, line 186&lt;/span&gt;</pre>
1755
+
1756
+ <p>&lt;span class=&#39;kw&#39;&gt;def&lt;/span&gt; &lt;span class=&#39;id
1757
+ identifier rubyid_worst_critter&#39;&gt;worst_critter&lt;/span&gt;</p>
1758
+
1759
+ <pre>&lt;span class=&#39;kw&#39;&gt;unless&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_compare_func&#39;&gt;compare_func&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_nil?&#39;&gt;nil?&lt;/span&gt;
1760
+ &lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_max&#39;&gt;max&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;ivar&#39;&gt;@controller&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_compare_func&#39;&gt;compare_func&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;lparen&#39;&gt;(&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;rparen&#39;&gt;)&lt;/span&gt; &lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;
1761
+ &lt;span class=&#39;kw&#39;&gt;else&lt;/span&gt;
1762
+ &lt;span class=&#39;ivar&#39;&gt;@critters&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_max&#39;&gt;max&lt;/span&gt; &lt;span class=&#39;lbrace&#39;&gt;{&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;comma&#39;&gt;,&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;op&#39;&gt;|&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_a&#39;&gt;a&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt; &lt;span class=&#39;op&#39;&gt;&amp;lt;=&amp;gt;&lt;/span&gt; &lt;span class=&#39;id identifier rubyid_b&#39;&gt;b&lt;/span&gt;&lt;span class=&#39;period&#39;&gt;.&lt;/span&gt;&lt;span class=&#39;id identifier rubyid_fitness&#39;&gt;fitness&lt;/span&gt;&lt;span class=&#39;rbrace&#39;&gt;}&lt;/span&gt;
1763
+ &lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;</pre>
1764
+
1765
+ <p>&lt;span class=&#39;kw&#39;&gt;end&lt;/span&gt;&lt;/pre&gt;</p>
1766
+
1767
+ <pre> &lt;/td&gt;
1768
+ &lt;/tr&gt;</pre>
1769
+
1770
+ <p>&lt;/table&gt; &lt;/div&gt;</p>
1771
+
1772
+ <pre>&lt;/div&gt;</pre>
1773
+
1774
+ <p>&lt;/div&gt;</p>
1775
+
1776
+ <pre> &lt;div id=&quot;footer&quot;&gt;
1777
+ Generated on Sun Mar 16 16:36:52 2014 by
1778
+ &lt;a href=&quot;http://yardoc.org&quot; title=&quot;Yay! A Ruby Documentation Tool&quot; target=&quot;_parent&quot;&gt;yard&lt;/a&gt;
1779
+ 0.8.7.3 (ruby-2.1.1).</pre>
1780
+
1781
+ <p>&lt;/div&gt;</p>
1782
+
1783
+ <pre>&lt;/body&gt;</pre>
1784
+
1785
+ <p>&lt;/html&gt;</p>
1786
+ </main>
1787
+
1788
+
1789
+
1790
+ <footer id="validator-badges" role="contentinfo">
1791
+ <p><a href="http://validator.w3.org/check/referer">Validate</a>
1792
+ <p>Generated by <a href="http://rdoc.rubyforge.org">RDoc</a> 4.1.1.
1793
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
1794
+ </footer>
1795
+