rubyneat 0.3.5.alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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
+