rubyneat 0.3.5.alpha.3 → 0.3.5.alpha.5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (252) hide show
  1. checksums.yaml +4 -4
  2. data/.semver +1 -1
  3. data/Gemfile +19 -19
  4. data/Gemfile.lock +39 -33
  5. data/README.md +66 -0
  6. data/Rakefile +19 -2
  7. data/bin/neat +4 -60
  8. data/lib/rubyneat/cli.rb +5 -0
  9. data/lib/rubyneat/cli/generate.rb +131 -0
  10. data/lib/rubyneat/cli/main.rb +54 -0
  11. data/lib/rubyneat/cli/templates/generate/Gemfile.tt +17 -0
  12. data/lib/rubyneat/cli/templates/generate/README.md.tt +1 -0
  13. data/lib/rubyneat/cli/templates/generate/bin/neat.tt +14 -0
  14. data/{neater/xor_neat.rb → lib/rubyneat/cli/templates/generate/neater.tt} +7 -22
  15. data/rubyneat.gemspec +73 -297
  16. data/rubyneat.gemspec.orig +384 -0
  17. metadata +76 -292
  18. data/.idea/.name +0 -1
  19. data/.idea/.rakeTasks +0 -7
  20. data/.idea/dictionaries/trader.xml +0 -3
  21. data/.idea/encodings.xml +0 -5
  22. data/.idea/misc.xml +0 -5
  23. data/.idea/modules.xml +0 -9
  24. data/.idea/rubyneat.iml +0 -198
  25. data/.idea/runConfigurations/invpend_neat.xml +0 -26
  26. data/.idea/runConfigurations/sigdebug_neat.xml +0 -24
  27. data/.idea/runConfigurations/xor_neat.xml +0 -26
  28. data/.idea/runConfigurations/xordebug_neat.xml +0 -24
  29. data/.idea/runConfigurations/xorsin_neat.xml +0 -24
  30. data/.idea/scopes/scope_settings.xml +0 -5
  31. data/.idea/vcs.xml +0 -7
  32. data/.idea/workspace.xml +0 -1151
  33. data/.yardoc/checksums +0 -11
  34. data/.yardoc/object_types +0 -0
  35. data/.yardoc/objects/root.dat +0 -0
  36. data/.yardoc/proxy_types +0 -0
  37. data/Guardfile +0 -8
  38. data/doc/ControllerPoint.html +0 -125
  39. data/doc/CuteA.html +0 -286
  40. data/doc/CuteB.html +0 -297
  41. data/doc/DSL.html +0 -883
  42. data/doc/NEAT.html +0 -588
  43. data/doc/NEAT/BasicNeuronTypes.html +0 -136
  44. data/doc/NEAT/BasicNeuronTypes/BiasNeuron.html +0 -518
  45. data/doc/NEAT/BasicNeuronTypes/CosineNeuron.html +0 -274
  46. data/doc/NEAT/BasicNeuronTypes/InputNeuron.html +0 -366
  47. data/doc/NEAT/BasicNeuronTypes/SigmoidNeuron.html +0 -275
  48. data/doc/NEAT/BasicNeuronTypes/SineNeuron.html +0 -274
  49. data/doc/NEAT/BasicNeuronTypes/TanhNeuron.html +0 -274
  50. data/doc/NEAT/Controller.html +0 -2490
  51. data/doc/NEAT/Controller/NeatSettings.html +0 -3985
  52. data/doc/NEAT/Critter.html +0 -1037
  53. data/doc/NEAT/Critter/Genotype.html +0 -1601
  54. data/doc/NEAT/Critter/Genotype/Gene.html +0 -979
  55. data/doc/NEAT/Critter/Phenotype.html +0 -603
  56. data/doc/NEAT/DSL.html +0 -1255
  57. data/doc/NEAT/Evaluator.html +0 -420
  58. data/doc/NEAT/Evolver.html +0 -602
  59. data/doc/NEAT/Evolver/CritterOp.html +0 -551
  60. data/doc/NEAT/Expressor.html +0 -327
  61. data/doc/NEAT/Graph.html +0 -402
  62. data/doc/NEAT/Graph/DependencyResolver.html +0 -478
  63. data/doc/NEAT/Graph/GraphException.html +0 -123
  64. data/doc/NEAT/NeatException.html +0 -123
  65. data/doc/NEAT/NeatOb.html +0 -567
  66. data/doc/NEAT/Neuron.html +0 -1067
  67. data/doc/NEAT/Operator.html +0 -162
  68. data/doc/NEAT/Population.html +0 -1961
  69. data/doc/NEAT/Trait.html +0 -169
  70. data/doc/_index.html +0 -373
  71. data/doc/class_list.html +0 -54
  72. data/doc/css/common.css +0 -1
  73. data/doc/css/full_list.css +0 -57
  74. data/doc/css/style.css +0 -339
  75. data/doc/file_list.html +0 -53
  76. data/doc/frames.html +0 -26
  77. data/doc/index.html +0 -373
  78. data/doc/js/app.js +0 -219
  79. data/doc/js/full_list.js +0 -178
  80. data/doc/js/jquery.js +0 -4
  81. data/doc/method_list.html +0 -1415
  82. data/doc/top-level-namespace.html +0 -164
  83. data/foo/foo_aquarium_example.rb +0 -38
  84. data/foo/foo_gosu.rb +0 -99
  85. data/foo/foo_rubygoo.rb +0 -104
  86. data/foo/foo_sdl.rb +0 -34
  87. data/foo/icon.png +0 -0
  88. data/neater/invpend_neat.rb +0 -150
  89. data/neater/rnlib/inverted_pendulum.rb +0 -380
  90. data/neater/rnlib/xor.rb +0 -10
  91. data/neater/sigdebug_neat.rb +0 -136
  92. data/neater/xoranalog_neat.rb +0 -138
  93. data/neater/xorsin_neat.rb +0 -143
  94. data/projectFilesBackup/.idea/rubyneat.iml +0 -180
  95. data/public/.directory +0 -4
  96. data/public/background.png +0 -0
  97. data/public/background.xcf +0 -0
  98. data/public/cart.png +0 -0
  99. data/public/cart.xcf +0 -0
  100. data/public/metalpoles_molton_ball_l.jpg +0 -0
  101. data/public/old_background.png +0 -0
  102. data/public/pointer.png +0 -0
  103. data/public/pointer.xcf +0 -0
  104. data/public/pole.kra +0 -0
  105. data/public/pole.png +0 -0
  106. data/public/pole.xcf +0 -0
  107. data/public/wheel-of-year-stone-DD-131-WOYS.jpg +0 -0
  108. data/public/wheel.png +0 -0
  109. data/public/wheel.xcf +0 -0
  110. data/public/wood-planks-texture.jpg +0 -0
  111. data/rdoc/ControllerPoint.html +0 -116
  112. data/rdoc/CuteA.html +0 -177
  113. data/rdoc/CuteB.html +0 -178
  114. data/rdoc/DSLSetup.html +0 -177
  115. data/rdoc/GameTestWindow.html +0 -242
  116. data/rdoc/GameWindow.html +0 -292
  117. data/rdoc/Gemfile.html +0 -215
  118. data/rdoc/Gemfile_lock.html +0 -327
  119. data/rdoc/GraphTest.html +0 -210
  120. data/rdoc/Guardfile.html +0 -198
  121. data/rdoc/InvertedPendulum.html +0 -198
  122. data/rdoc/InvertedPendulum/Cart.html +0 -668
  123. data/rdoc/InvertedPendulum/DSL.html +0 -259
  124. data/rdoc/InvertedPendulum/InvPendWindow.html +0 -402
  125. data/rdoc/Logger.html +0 -98
  126. data/rdoc/NEAT.html +0 -422
  127. data/rdoc/NEAT/BasicNeuronTypes.html +0 -107
  128. data/rdoc/NEAT/BasicNeuronTypes/BiasNeuron.html +0 -265
  129. data/rdoc/NEAT/BasicNeuronTypes/CosineNeuron.html +0 -162
  130. data/rdoc/NEAT/BasicNeuronTypes/InputNeuron.html +0 -206
  131. data/rdoc/NEAT/BasicNeuronTypes/SigmoidNeuron.html +0 -162
  132. data/rdoc/NEAT/BasicNeuronTypes/SineNeuron.html +0 -162
  133. data/rdoc/NEAT/BasicNeuronTypes/TanhNeuron.html +0 -161
  134. data/rdoc/NEAT/Controller.html +0 -729
  135. data/rdoc/NEAT/Controller/NeatSettings.html +0 -880
  136. data/rdoc/NEAT/Critter.html +0 -489
  137. data/rdoc/NEAT/Critter/Genotype.html +0 -735
  138. data/rdoc/NEAT/Critter/Genotype/Gene.html +0 -457
  139. data/rdoc/NEAT/Critter/Phenotype.html +0 -330
  140. data/rdoc/NEAT/DSL.html +0 -729
  141. data/rdoc/NEAT/Evaluator.html +0 -256
  142. data/rdoc/NEAT/Evolver.html +0 -891
  143. data/rdoc/NEAT/Evolver/CritterOp.html +0 -349
  144. data/rdoc/NEAT/Expressor.html +0 -402
  145. data/rdoc/NEAT/Graph.html +0 -263
  146. data/rdoc/NEAT/Graph/DependencyResolver.html +0 -291
  147. data/rdoc/NEAT/Graph/GraphException.html +0 -105
  148. data/rdoc/NEAT/NeatException.html +0 -105
  149. data/rdoc/NEAT/NeatOb.html +0 -325
  150. data/rdoc/NEAT/Neuron.html +0 -481
  151. data/rdoc/NEAT/Operator.html +0 -109
  152. data/rdoc/NEAT/Population.html +0 -935
  153. data/rdoc/NEAT/Trait.html +0 -117
  154. data/rdoc/Object.html +0 -384
  155. data/rdoc/Phi.html +0 -98
  156. data/rdoc/Player.html +0 -383
  157. data/rdoc/Rakefile.html +0 -254
  158. data/rdoc/RubyNEAT.html +0 -98
  159. data/rdoc/RubyNEAT/Application.html +0 -105
  160. data/rdoc/SDL.html +0 -98
  161. data/rdoc/SDL/Event2.html +0 -98
  162. data/rdoc/Vector.html +0 -195
  163. data/rdoc/created.rid +0 -125
  164. data/rdoc/doc/ControllerPoint_html.html +0 -299
  165. data/rdoc/doc/CuteA_html.html +0 -438
  166. data/rdoc/doc/CuteB_html.html +0 -436
  167. data/rdoc/doc/DSL_html.html +0 -992
  168. data/rdoc/doc/NEAT/BasicNeuronTypes/BiasNeuron_html.html +0 -617
  169. data/rdoc/doc/NEAT/BasicNeuronTypes/CosineNeuron_html.html +0 -413
  170. data/rdoc/doc/NEAT/BasicNeuronTypes/InputNeuron_html.html +0 -498
  171. data/rdoc/doc/NEAT/BasicNeuronTypes/SigmoidNeuron_html.html +0 -413
  172. data/rdoc/doc/NEAT/BasicNeuronTypes/SineNeuron_html.html +0 -413
  173. data/rdoc/doc/NEAT/BasicNeuronTypes/TanhNeuron_html.html +0 -412
  174. data/rdoc/doc/NEAT/BasicNeuronTypes_html.html +0 -310
  175. data/rdoc/doc/NEAT/Controller/NeatSettings_html.html +0 -3324
  176. data/rdoc/doc/NEAT/Controller_html.html +0 -2212
  177. data/rdoc/doc/NEAT/Critter/Genotype/Gene_html.html +0 -997
  178. data/rdoc/doc/NEAT/Critter/Genotype_html.html +0 -1556
  179. data/rdoc/doc/NEAT/Critter/Phenotype_html.html +0 -687
  180. data/rdoc/doc/NEAT/Critter_html.html +0 -1037
  181. data/rdoc/doc/NEAT/DSL_html.html +0 -1349
  182. data/rdoc/doc/NEAT/Evaluator_html.html +0 -556
  183. data/rdoc/doc/NEAT/Evolver/CritterOp_html.html +0 -690
  184. data/rdoc/doc/NEAT/Evolver_html.html +0 -677
  185. data/rdoc/doc/NEAT/Expressor_html.html +0 -468
  186. data/rdoc/doc/NEAT/Graph/DependencyResolver_html.html +0 -598
  187. data/rdoc/doc/NEAT/Graph/GraphException_html.html +0 -299
  188. data/rdoc/doc/NEAT/Graph_html.html +0 -527
  189. data/rdoc/doc/NEAT/NeatException_html.html +0 -299
  190. data/rdoc/doc/NEAT/NeatOb_html.html +0 -671
  191. data/rdoc/doc/NEAT/Neuron_html.html +0 -1095
  192. data/rdoc/doc/NEAT/Operator_html.html +0 -337
  193. data/rdoc/doc/NEAT/Population_html.html +0 -1795
  194. data/rdoc/doc/NEAT/Trait_html.html +0 -344
  195. data/rdoc/doc/NEAT_html.html +0 -736
  196. data/rdoc/doc/_index_html.html +0 -559
  197. data/rdoc/doc/class_list_html.html +0 -369
  198. data/rdoc/doc/css/common_css.html +0 -188
  199. data/rdoc/doc/css/full_list_css.html +0 -243
  200. data/rdoc/doc/css/style_css.html +0 -530
  201. data/rdoc/doc/file_list_html.html +0 -240
  202. data/rdoc/doc/frames_html.html +0 -217
  203. data/rdoc/doc/index_html.html +0 -559
  204. data/rdoc/doc/js/app_js.html +0 -423
  205. data/rdoc/doc/js/full_list_js.html +0 -372
  206. data/rdoc/doc/js/jquery_js.html +0 -1536
  207. data/rdoc/doc/method_list_html.html +0 -1375
  208. data/rdoc/doc/top-level-namespace_html.html +0 -317
  209. data/rdoc/fonts.css +0 -167
  210. data/rdoc/fonts/Lato-Light.ttf +0 -0
  211. data/rdoc/fonts/Lato-LightItalic.ttf +0 -0
  212. data/rdoc/fonts/Lato-Regular.ttf +0 -0
  213. data/rdoc/fonts/Lato-RegularItalic.ttf +0 -0
  214. data/rdoc/fonts/SourceCodePro-Bold.ttf +0 -0
  215. data/rdoc/fonts/SourceCodePro-Regular.ttf +0 -0
  216. data/rdoc/images/add.png +0 -0
  217. data/rdoc/images/arrow_up.png +0 -0
  218. data/rdoc/images/brick.png +0 -0
  219. data/rdoc/images/brick_link.png +0 -0
  220. data/rdoc/images/bug.png +0 -0
  221. data/rdoc/images/bullet_black.png +0 -0
  222. data/rdoc/images/bullet_toggle_minus.png +0 -0
  223. data/rdoc/images/bullet_toggle_plus.png +0 -0
  224. data/rdoc/images/date.png +0 -0
  225. data/rdoc/images/delete.png +0 -0
  226. data/rdoc/images/find.png +0 -0
  227. data/rdoc/images/loadingAnimation.gif +0 -0
  228. data/rdoc/images/macFFBgHack.png +0 -0
  229. data/rdoc/images/package.png +0 -0
  230. data/rdoc/images/page_green.png +0 -0
  231. data/rdoc/images/page_white_text.png +0 -0
  232. data/rdoc/images/page_white_width.png +0 -0
  233. data/rdoc/images/plugin.png +0 -0
  234. data/rdoc/images/ruby.png +0 -0
  235. data/rdoc/images/tag_blue.png +0 -0
  236. data/rdoc/images/tag_green.png +0 -0
  237. data/rdoc/images/transparent.png +0 -0
  238. data/rdoc/images/wrench.png +0 -0
  239. data/rdoc/images/wrench_orange.png +0 -0
  240. data/rdoc/images/zoom.png +0 -0
  241. data/rdoc/index.html +0 -282
  242. data/rdoc/js/darkfish.js +0 -140
  243. data/rdoc/js/jquery.js +0 -18
  244. data/rdoc/js/navigation.js +0 -142
  245. data/rdoc/js/search.js +0 -109
  246. data/rdoc/js/search_index.js +0 -1
  247. data/rdoc/js/searcher.js +0 -228
  248. data/rdoc/rdoc.css +0 -580
  249. data/rdoc/rubyneat_gemspec.html +0 -387
  250. data/rdoc/table_of_contents.html +0 -2502
  251. data/rdoc/xordebug_log.html +0 -170598
  252. data/rdoc/xorsin_log.html +0 -22569
@@ -1,164 +0,0 @@
1
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
2
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4
- <head>
5
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
6
- <title>
7
- Top Level Namespace
8
-
9
- &mdash; Documentation by YARD 0.8.7.4
10
-
11
- </title>
12
-
13
- <link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
14
-
15
- <link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
16
-
17
- <script type="text/javascript" charset="utf-8">
18
- hasFrames = window.top.frames.main ? true : false;
19
- relpath = '';
20
- framesUrl = "frames.html#!top-level-namespace.html";
21
- </script>
22
-
23
-
24
- <script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
25
-
26
- <script type="text/javascript" charset="utf-8" src="js/app.js"></script>
27
-
28
-
29
- </head>
30
- <body>
31
- <div id="header">
32
- <div id="menu">
33
-
34
- <a href="_index.html">Index</a> &raquo;
35
-
36
-
37
- <span class="title">Top Level Namespace</span>
38
-
39
-
40
- <div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
41
- </div>
42
-
43
- <div id="search">
44
-
45
- <a class="full_list_link" id="class_list_link"
46
- href="class_list.html">
47
- Class List
48
- </a>
49
-
50
- <a class="full_list_link" id="method_list_link"
51
- href="method_list.html">
52
- Method List
53
- </a>
54
-
55
- <a class="full_list_link" id="file_list_link"
56
- href="file_list.html">
57
- File List
58
- </a>
59
-
60
- </div>
61
- <div class="clear"></div>
62
- </div>
63
-
64
- <iframe id="search_frame"></iframe>
65
-
66
- <div id="content"><h1>Top Level Namespace
67
-
68
-
69
-
70
- </h1>
71
-
72
- <dl class="box">
73
-
74
-
75
-
76
-
77
-
78
- <dt class="r1">Includes:</dt>
79
- <dd class="r1"><span class='object_link'><a href="NEAT/DSL.html" title="NEAT::DSL (module)">NEAT::DSL</a></span></dd>
80
-
81
-
82
-
83
-
84
-
85
- </dl>
86
- <div class="clear"></div>
87
-
88
- <h2>Defined Under Namespace</h2>
89
- <p class="children">
90
-
91
-
92
- <strong class="modules">Modules:</strong> <span class='object_link'><a href="NEAT.html" title="NEAT (module)">NEAT</a></span>
93
-
94
-
95
-
96
-
97
- </p>
98
-
99
- <h2>Constant Summary</h2>
100
-
101
-
102
-
103
-
104
- <h2>Constant Summary</h2>
105
-
106
- <h3 class="inherited">Constants included
107
- from <span class='object_link'><a href="NEAT.html" title="NEAT (module)">NEAT</a></span></h3>
108
- <p class="inherited"><span class='object_link'><a href="NEAT.html#STIMULUS-constant" title="NEAT::STIMULUS (constant)">NEAT::STIMULUS</a></span></p>
109
-
110
-
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
-
120
-
121
- <h2>Method Summary</h2>
122
-
123
- <h3 class="inherited">Methods included from <span class='object_link'><a href="NEAT/DSL.html" title="NEAT::DSL (module)">NEAT::DSL</a></span></h3>
124
- <p class="inherited"><span class='object_link'><a href="NEAT/DSL.html#compare-instance_method" title="NEAT::DSL#compare (method)">#compare</a></span>, <span class='object_link'><a href="NEAT/DSL.html#condition_boolean_vector-instance_method" title="NEAT::DSL#condition_boolean_vector (method)">#condition_boolean_vector</a></span>, <span class='object_link'><a href="NEAT/DSL.html#cost-instance_method" title="NEAT::DSL#cost (method)">#cost</a></span>, <span class='object_link'><a href="NEAT/DSL.html#define-instance_method" title="NEAT::DSL#define (method)">#define</a></span>, <span class='object_link'><a href="NEAT/DSL.html#evolve-instance_method" title="NEAT::DSL#evolve (method)">#evolve</a></span>, <span class='object_link'><a href="NEAT/DSL.html#fitness-instance_method" title="NEAT::DSL#fitness (method)">#fitness</a></span>, <span class='object_link'><a href="NEAT/DSL.html#method_missing-instance_method" title="NEAT::DSL#method_missing (method)">#method_missing</a></span>, <span class='object_link'><a href="NEAT/DSL.html#query-instance_method" title="NEAT::DSL#query (method)">#query</a></span>, <span class='object_link'><a href="NEAT/DSL.html#recurrence-instance_method" title="NEAT::DSL#recurrence (method)">#recurrence</a></span>, <span class='object_link'><a href="NEAT/DSL.html#report-instance_method" title="NEAT::DSL#report (method)">#report</a></span>, <span class='object_link'><a href="NEAT/DSL.html#run_engine-instance_method" title="NEAT::DSL#run_engine (method)">#run_engine</a></span>, <span class='object_link'><a href="NEAT/DSL.html#simple_fitness_error-instance_method" title="NEAT::DSL#simple_fitness_error (method)">#simple_fitness_error</a></span>, <span class='object_link'><a href="NEAT/DSL.html#stop_on_fitness-instance_method" title="NEAT::DSL#stop_on_fitness (method)">#stop_on_fitness</a></span>, <span class='object_link'><a href="NEAT/DSL.html#uncondition_boolean_vector-instance_method" title="NEAT::DSL#uncondition_boolean_vector (method)">#uncondition_boolean_vector</a></span></p>
125
-
126
-
127
-
128
-
129
-
130
-
131
-
132
-
133
-
134
-
135
-
136
-
137
-
138
-
139
-
140
-
141
- <h3 class="inherited">Methods included from <span class='object_link'><a href="NEAT.html" title="NEAT (module)">NEAT</a></span></h3>
142
- <p class="inherited"><span class='object_link'><a href="NEAT.html#controller-class_method" title="NEAT.controller (method)">controller</a></span>, <span class='object_link'><a href="NEAT.html#controller%3D-class_method" title="NEAT.controller= (method)">controller=</a></span>, <span class='object_link'><a href="NEAT.html#create_controller-class_method" title="NEAT.create_controller (method)">create_controller</a></span>, <span class='object_link'><a href="NEAT.html#dpp-class_method" title="NEAT.dpp (method)">dpp</a></span>, <span class='object_link'><a href="NEAT.html#gaussian-class_method" title="NEAT.gaussian (method)">gaussian</a></span>, <span class='object_link'><a href="NEAT.html#new_innovation-class_method" title="NEAT.new_innovation (method)">new_innovation</a></span>, <span class='object_link'><a href="NEAT.html#random_name_generator-class_method" title="NEAT.random_name_generator (method)">random_name_generator</a></span></p>
143
- <div id="method_missing_details" class="method_details_list">
144
- <h2>Dynamic Method Handling</h2>
145
- <p class="notice super">
146
- This class handles dynamic methods through the <tt>method_missing</tt> method
147
-
148
- in the class <span class='object_link'><a href="NEAT/DSL.html#method_missing-instance_method" title="NEAT::DSL#method_missing (method)">NEAT::DSL</a></span>
149
-
150
- </p>
151
-
152
- </div>
153
-
154
-
155
- </div>
156
-
157
- <div id="footer">
158
- Generated on Sun Apr 13 15:54:01 2014 by
159
- <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
160
- 0.8.7.4 (ruby-2.1.1).
161
- </div>
162
-
163
- </body>
164
- </html>
@@ -1,38 +0,0 @@
1
- require 'aquarium'
2
-
3
- class ControllerPoint
4
-
5
- include Aquarium::DSL
6
- end
7
-
8
- class CuteA
9
- attr_accessor :cp
10
-
11
- def initialize
12
- puts "A initialized"
13
- end
14
- end
15
-
16
- class CuteB < CuteA
17
- attr_accessor :acp
18
- def initialize
19
- puts "B initialized"
20
- @acp = CuteA.new
21
- end
22
- end
23
-
24
- include Aquarium::Aspects
25
-
26
- @cp = ControllerPoint.new
27
- Aspect.new :before, :invocations_of => :initialize, :for_types => /Cute.*$/,
28
- :restricting_methods_to => :private_methods do |jp, ob, args|
29
- puts "jp: #{jp.class} ob: #{ob.cp}"
30
- ob.cp = @cp
31
- end
32
-
33
-
34
- ca = CuteA.new
35
- cb = CuteB.new
36
-
37
- puts ca.cp
38
- puts cb.cp
data/foo/foo_gosu.rb DELETED
@@ -1,99 +0,0 @@
1
- require 'gosu'
2
-
3
- IM1 = "/home/trader/Pictures/Screenshot-inf-walle.mkv-19.png"
4
-
5
- class GameTestWindow < Gosu::Window
6
- def initialize
7
- super(640, 480, false)
8
- self.caption = "Gosu Tutorial Game"
9
-
10
- @background_image = Gosu::Image.new(self, IM1, true)
11
- end
12
-
13
- def update
14
- end
15
-
16
- def draw
17
- puts "draw called"
18
- @background_image.draw(0, 0, 0)
19
- end
20
- end
21
-
22
-
23
- class Player
24
- def initialize(window)
25
- @image = Gosu::Image.new(window, IM1, false)
26
- @x = @y = @vel_x = @vel_y = @angle = 0.0
27
- @score = 0
28
- end
29
-
30
- def warp(x, y)
31
- @x, @y = x, y
32
- end
33
-
34
- def turn_left
35
- @angle -= 4.5
36
- end
37
-
38
- def turn_right
39
- @angle += 4.5
40
- end
41
-
42
- def accelerate
43
- @vel_x += Gosu::offset_x(@angle, 0.5)
44
- @vel_y += Gosu::offset_y(@angle, 0.5)
45
- end
46
-
47
- def move
48
- @x += @vel_x
49
- @y += @vel_y
50
- @x %= 640
51
- @y %= 480
52
-
53
- @vel_x *= 0.95
54
- @vel_y *= 0.95
55
- end
56
-
57
- def draw
58
- @image.draw_rot(@x, @y, 1, @angle)
59
- end
60
- end
61
-
62
- class GameWindow < Gosu::Window
63
- def initialize
64
- super(640, 480, false)
65
- self.caption = "Gosu Tutorial Game"
66
-
67
- @background_image = Gosu::Image.new(self, IM1, true)
68
-
69
- @player = Player.new(self)
70
- @player.warp(320, 240)
71
- end
72
-
73
- def update
74
- if button_down? Gosu::KbLeft or button_down? Gosu::GpLeft then
75
- @player.turn_left
76
- end
77
- if button_down? Gosu::KbRight or button_down? Gosu::GpRight then
78
- @player.turn_right
79
- end
80
- if button_down? Gosu::KbUp or button_down? Gosu::GpButton0 then
81
- @player.accelerate
82
- end
83
- @player.move
84
- end
85
-
86
- def draw
87
- @player.draw
88
- @background_image.draw(0, 0, 0);
89
- end
90
-
91
- def button_down(id)
92
- if id == Gosu::KbEscape
93
- close
94
- end
95
- end
96
- end
97
-
98
- gw = GameWindow.new
99
- gw.show
data/foo/foo_rubygoo.rb DELETED
@@ -1,104 +0,0 @@
1
- require 'rubygoo'
2
- require 'rubygame'
3
- include Rubygame
4
- include Rubygoo
5
-
6
- if $0 == __FILE__
7
-
8
- screen = Screen.new [600,480]
9
- screen.show_cursor = false
10
-
11
- factory = AdapterFactory.new
12
- render_adapter = factory.renderer_for :rubygame, screen
13
- icon = Surface.load File.dirname(__FILE__) + "/icon.png"
14
-
15
- app = App.new :renderer => renderer
16
-
17
- label = Label.new "click the button to set the time", :x=>20, :y=>30
18
-
19
- button = Button.new "Click Me!", :x=>70, :y=>80, :x_pad=>20, :y_pad=>20, :icon => icon
20
- button.on :pressed do |*opts|
21
- label.set_text(Time.now.to_s)
22
- end
23
-
24
- check = CheckBox.new :x=>370, :y=>70, :w=>20, :h=>20
25
- check.on :checked do
26
- label.set_text("CHECKED [#{check.checked?}]")
27
- end
28
-
29
- text_field = TextField.new "initial text", :x => 70, :y => 170, :max_length => 20, :min_length => 6
30
-
31
- text_field.on_key K_RETURN, K_KP_ENTER do |evt|
32
- puts "BOO-YAH"
33
- end
34
-
35
- modal_button = Button.new "Modal dialogs", :x=>270, :y=>280, :x_pad=>20, :y_pad=>20
36
- modal_button.on :pressed do |*opts|
37
- modal = Dialog.new :modal => app, :x=>60, :y=>110, :w=>250, :h=>250
38
-
39
- modal.add Label.new("Message Here", :x=>20, :y=>70, :x_pad=>20, :y_pad=>20, :relative=>true)
40
-
41
- ok_butt = Button.new("OK", :x=>70, :y=>180, :x_pad=>20, :y_pad=>20,:relative=>true)
42
- ok_butt.on :pressed do |*opts|
43
- app.remove_modal(modal)
44
- end
45
- modal.add ok_butt
46
-
47
- modal.show
48
- end
49
-
50
- grp = RadioGroup.new :x=>10, :y=>380, :x_pad=>20, :y_pad=>20, :w=> 500, :h=>80
51
- grp_label = Label.new "RadioGroups are fun!", :x=>40, :y=>10, :w=>20, :h=>20, :relative=>true
52
- grp_radio_one = RadioButton.new :x=>40, :y=>40, :w=>20, :h=>20, :relative=>true
53
- grp_radio_two = RadioButton.new :x=>90, :y=>40, :w=>20, :h=>20, :relative=>true
54
- grp_radio_three = RadioButton.new :x=>140, :y=>40, :w=>20, :h=>20, :relative=>true
55
-
56
- grp.add grp_label, grp_radio_one, grp_radio_two, grp_radio_three
57
-
58
- # implicit tab ordering based on order of addition, can
59
- # specify if you want on widget creation
60
-
61
- # can add many or one at a time
62
- app.add text_field, label, button, modal_button, grp
63
- app.add check
64
-
65
- # pulldown = Pulldown.new {:x=>70, :y=>80}
66
- # pulldown.on :changed do |*opts|
67
- # label.set_text(opts.first)
68
- # end
69
- #
70
- # app.add pulldown
71
-
72
- app_adapter = factory.app_for :rubygame, app
73
-
74
- # rubygame standard stuff below here
75
- queue = EventQueue.new
76
- queue.ignore = [
77
- ActiveEvent, JoyAxisEvent, JoyBallEvent, JoyDownEvent,
78
- JoyHatEvent, JoyUpEvent, ResizeEvent
79
- ]
80
- clock = Clock.new
81
- clock.target_framerate = 20
82
-
83
- catch(:rubygame_quit) do
84
- loop do
85
- queue.each do |event|
86
- case event
87
- when KeyDownEvent
88
- case event.key
89
- when K_ESCAPE
90
- throw :rubygame_quit
91
- end
92
- when QuitEvent
93
- throw :rubygame_quit
94
- end
95
-
96
- # pass on our events to the GUI
97
- app_adapter.on_event event
98
- end
99
-
100
- app_adapter.update clock.tick
101
- app_adapter.draw render_adapter
102
- end
103
- end
104
- end
data/foo/foo_sdl.rb DELETED
@@ -1,34 +0,0 @@
1
- # from http://moriq.tdiary.net/20051006.html
2
- # Apollo with Ruby/SDL
3
- require 'phi'
4
- require 'sdl'
5
-
6
- # Create form
7
- form = Phi::Form.new
8
- $terminated = false
9
- form.on_close{ $terminated = true }
10
- form.caption = "Ruby/SDL on Phi::Form"
11
- # Create a panel on new form
12
- panel = Phi::Panel.new(form)
13
- panel.align = Phi::AL_LEFT
14
-
15
- # Put SDL window on panel with WINDOWID hack
16
- SDL.putenv("SDL_VIDEODRIVER=windib")
17
- SDL.putenv("SDL_WINDOWID=#{panel.handle}")
18
- form.show
19
-
20
- # initialize SDL
21
- SDL.init(SDL::INIT_VIDEO)
22
- screen = SDL.setVideoMode(640, 480, 16, SDL::SWSURFACE)
23
-
24
- # main loop
25
- unless $terminated
26
- while event = SDL::Event2.poll
27
- case event
28
- when SDL::Event2::KeyDown, SDL::Event2::Quit
29
- exit
30
- end
31
- end
32
-
33
- sleep 0.05
34
- end
data/foo/icon.png DELETED
Binary file
@@ -1,150 +0,0 @@
1
- #!/usr/bin/env neat
2
- require 'rubyneat/dsl'
3
- require 'inverted_pendulum'
4
-
5
- include NEAT::DSL
6
- include InvertedPendulum::DSL
7
-
8
- =begin rdoc
9
- =Inverted Pendulum
10
- =end
11
-
12
-
13
- invpend do |ipwin|
14
- puts "Inverted Pendulum -- use the mouse wheel to bang the cart yourself."
15
-
16
- c = cart do
17
- {
18
- scale: 0.20,
19
- ang: 80,
20
- xpos: 600.0,
21
- cartmass: 200.0, #kg
22
- polemass: 100.10, #kg, knobby end only
23
- bang: 10.0, # acceleration on a bang event
24
- thrust_decay: 2.0, # thrust decay percentage per second
25
- window_pix_width: 1280,
26
- naked: true # Naked cart, not attached to a window.
27
- }
28
- end
29
-
30
- show cart: c
31
- end
32
-
33
- define "InvPend System" do
34
- #-----------------------------------------------------
35
- #= Neuron Specifications
36
- inputs(
37
- in_cart_velocity: InputNeuron,
38
- in_cart_position: InputNeuron,
39
- in_pole_velocity: InputNeuron,
40
- in_pole_angle: InputNeuron,
41
- bias: BiasNeuron
42
- )
43
-
44
- outputs out_bang_left: TanhNeuron, out_bang_right: TanhNeuron
45
-
46
- hidden tan: TanhNeuron
47
-
48
- #-----------------------------------------------------
49
- #= Settings
50
- # General
51
- hash_on_fitness false
52
- start_population_size 30
53
- population_size 30
54
- max_generations 10000
55
- max_population_history 10
56
-
57
- #-----------------------------------------------------
58
- #= Evolver probabilities and SDs
59
- # Perturbations
60
- mutate_perturb_gene_weights_prob 0.10
61
- mutate_perturb_gene_weights_sd 0.25
62
-
63
- # Complete Change of weight
64
- mutate_change_gene_weights_prob 0.10
65
- mutate_change_gene_weights_sd 1.00
66
-
67
- # Adding new neurons and genes
68
- mutate_add_neuron_prob 0.05
69
- mutate_add_gene_prob 0.20
70
-
71
- # Switching genes on and off
72
- mutate_gene_disable_prob 0.01
73
- mutate_gene_reenable_prob 0.01
74
-
75
- interspecies_mate_rate 0.03
76
- mate_only_prob 0.10 #0.7
77
-
78
- # Mating
79
- survival_threshold 0.20 # top % allowed to mate in a species.
80
- survival_mininum_per_species 4 # for small populations, we need SOMETHING to go on.
81
-
82
- # Fitness costs
83
- fitness_cost_per_neuron 0#.00001
84
- fitness_cost_per_gene 0#.00001
85
-
86
- # Speciation
87
- compatibility_threshold 2.5
88
- disjoint_coefficient 0.6
89
- excess_coefficient 0.6
90
- weight_coefficient 0.2
91
- max_species 20
92
- dropoff_age 15
93
- smallest_species 5
94
-
95
- # Sequencing
96
- start_sequence_at 0
97
- end_sequence_at 200
98
- end
99
-
100
- evolve do
101
- # Each sequence query represents a time instant
102
- # for evaluating the inverse pendulum.
103
- #
104
- # For this, we use a named vector (just a Hash, really),
105
- # so we can ensure that the input parameters are lined up with
106
- # the appropriate input neurons. When using named vectors,
107
- # any non-matches are ignored, allowing you to play around
108
- # with changes in input neurons with ease.
109
- query { |seq|
110
- # TODO: do an interation with the cart and return results.
111
- # FIXME: how do we know this is a new sequence? I suppose we can
112
- # FIXME: tell that the start number has been hit again.
113
- {
114
- in_cart_velocity: 0,
115
- in_cart_position: 0,
116
- in_pole_velocity: 0,
117
- in_pole_angle: 0
118
- }
119
- }
120
-
121
- # Compare the fitness of two critters.
122
- # We may choose a different ordering here.
123
- compare {|f1, f2| f2 <=> f1 }
124
-
125
- # Here we integrate the cost with the fitness.
126
- cost { |fitvec, cost|
127
- #fit = XOR_STATES - fitvec.reduce {|a,r| a+r} - cost
128
- #$log.debug ">>>>>>> fitvec #{fitvec} => #{fit}, cost #{cost}"
129
- #fit
130
- }
131
-
132
- fitness { |vin, vout, seq|
133
- }
134
-
135
- stop_on_fitness {|fitness, c|
136
- puts "*** Generation Run #{c.generation_num}, best is #{fitness[:best]} ***\n\n"
137
- fitness[:best] >= ALMOST_FIT
138
- }
139
- end
140
-
141
- report do |rept|
142
- $log.info "REPORT #{rept.to_yaml}"
143
- end
144
-
145
- # The block here is called upon the completion of each generation
146
- run_engine do |c|
147
- $log.info "******** Run of generation %s completed, history count %d ********" %
148
- [c.generation_num, c.population_history.size]
149
- end
150
-