bn4r 0.1.2 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (432) hide show
  1. data/CHANGELOG +15 -1
  2. data/README +9 -2
  3. data/doc/classes/BNTPGFromPositiveNegativeRelations.html +184 -171
  4. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000031.html +20 -20
  5. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000032.html +15 -15
  6. data/doc/classes/BayesNet.html +986 -560
  7. data/doc/classes/BayesNet.src/M000003.html +19 -17
  8. data/doc/classes/BayesNet.src/M000004.html +34 -16
  9. data/doc/classes/BayesNet.src/M000005.html +24 -17
  10. data/doc/classes/BayesNet.src/M000006.html +18 -18
  11. data/doc/classes/BayesNet.src/M000007.html +21 -17
  12. data/doc/classes/BayesNet.src/M000008.html +17 -19
  13. data/doc/classes/BayesNet.src/M000009.html +17 -18
  14. data/doc/classes/BayesNet.src/M000010.html +18 -17
  15. data/doc/classes/BayesNet.src/M000011.html +17 -22
  16. data/doc/classes/BayesNet.src/M000012.html +17 -24
  17. data/doc/classes/BayesNet.src/M000013.html +17 -26
  18. data/doc/classes/BayesNet.src/M000014.html +20 -42
  19. data/doc/classes/BayesNet.src/M000015.html +18 -33
  20. data/doc/classes/BayesNet.src/M000016.html +17 -38
  21. data/doc/classes/BayesNet.src/M000017.html +17 -37
  22. data/doc/classes/BayesNet.src/M000018.html +19 -32
  23. data/doc/classes/BayesNet.src/M000019.html +18 -19
  24. data/doc/classes/BayesNet.src/M000020.html +17 -35
  25. data/doc/classes/BayesNet.src/M000021.html +22 -52
  26. data/doc/classes/BayesNet.src/M000022.html +22 -16
  27. data/doc/classes/BayesNet.src/M000023.html +24 -17
  28. data/doc/classes/BayesNet.src/M000024.html +30 -16
  29. data/doc/classes/BayesNet.src/M000025.html +42 -18
  30. data/doc/classes/BayesNet.src/M000026.html +32 -16
  31. data/doc/classes/BayesNet.src/M000027.html +38 -19
  32. data/doc/classes/BayesNet.src/M000028.html +42 -18
  33. data/doc/classes/BayesNet.src/M000029.html +32 -17
  34. data/doc/classes/BayesNet.src/M000030.html +52 -22
  35. data/doc/classes/BayesNetNode.html +604 -476
  36. data/doc/classes/BayesNetNode.src/M000033.html +21 -17
  37. data/doc/classes/BayesNetNode.src/M000034.html +17 -17
  38. data/doc/classes/BayesNetNode.src/M000035.html +20 -25
  39. data/doc/classes/BayesNetNode.src/M000036.html +17 -17
  40. data/doc/classes/BayesNetNode.src/M000037.html +17 -19
  41. data/doc/classes/BayesNetNode.src/M000038.html +17 -17
  42. data/doc/classes/BayesNetNode.src/M000039.html +17 -22
  43. data/doc/classes/BayesNetNode.src/M000040.html +17 -51
  44. data/doc/classes/BayesNetNode.src/M000041.html +21 -18
  45. data/doc/classes/BayesNetNode.src/M000042.html +18 -17
  46. data/doc/classes/BayesNetNode.src/M000043.html +17 -17
  47. data/doc/classes/BayesNetNode.src/M000044.html +17 -25
  48. data/doc/classes/BayesNetNode.src/M000045.html +24 -16
  49. data/doc/classes/BayesNetNode.src/M000046.html +17 -19
  50. data/doc/classes/BayesNetNode.src/M000047.html +19 -17
  51. data/doc/classes/BayesNetNode.src/M000048.html +17 -22
  52. data/doc/classes/BayesNetNode.src/M000049.html +23 -51
  53. data/doc/classes/BayesNetNode.src/M000050.html +51 -21
  54. data/doc/classes/BnTableProbabilitiesGenerator.html +122 -142
  55. data/doc/classes/BnTableProbabilitiesGenerator.src/{M000036.html → M000051.html} +15 -15
  56. data/doc/created.rid +1 -1
  57. data/doc/files/README.html +267 -264
  58. data/doc/files/README_es.html +271 -0
  59. data/doc/files/lib/bn4r/bn_algorithms_rb.html +125 -130
  60. data/doc/files/lib/bn4r/bn_export_rb.html +119 -124
  61. data/doc/files/lib/bn4r/bn_import_rb.html +133 -144
  62. data/doc/files/lib/bn4r/bn_rb.html +124 -134
  63. data/doc/files/lib/bn4r/bn_table_probabilities_rb.html +165 -140
  64. data/doc/files/lib/bn4r/bn_table_probabilities_rb.src/M000001.html +15 -15
  65. data/doc/files/lib/bn4r/bn_table_probabilities_rb.src/M000002.html +26 -0
  66. data/doc/files/lib/bn4r/version_rb.html +97 -100
  67. data/doc/files/lib/bn4r_rb.html +108 -113
  68. data/doc/fr_class_index.html +49 -30
  69. data/doc/fr_file_index.html +54 -34
  70. data/doc/fr_method_index.html +96 -67
  71. data/doc/index.html +25 -23
  72. data/doc/rdoc-style.css +175 -208
  73. data/lib/bn4r/bn.rb +76 -5
  74. data/lib/bn4r/bn_algorithms.rb +13 -3
  75. data/lib/bn4r/bn_export.rb +29 -15
  76. data/lib/bn4r/bn_table_probabilities.rb +10 -0
  77. data/lib/bn4r/version.rb +2 -2
  78. data/test/bn4r_test.rb +104 -0
  79. data/test/test_helper.rb +1 -0
  80. metadata +15 -393
  81. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000018.html +0 -41
  82. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000019.html +0 -23
  83. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000021.html +0 -41
  84. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000022.html +0 -41
  85. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000023.html +0 -23
  86. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000143.html +0 -41
  87. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000144.html +0 -23
  88. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000145.html +0 -41
  89. data/doc/classes/BNTPGFromPositiveNegativeRelations.src/M000146.html +0 -23
  90. data/doc/classes/BayesNet.src/M000001.html +0 -22
  91. data/doc/classes/BayesNet.src/M000002.html +0 -25
  92. data/doc/classes/BayesNet.src/M000091.html +0 -25
  93. data/doc/classes/BayesNet.src/M000092.html +0 -18
  94. data/doc/classes/BayesNet.src/M000093.html +0 -18
  95. data/doc/classes/BayesNet.src/M000094.html +0 -18
  96. data/doc/classes/BayesNet.src/M000095.html +0 -19
  97. data/doc/classes/BayesNet.src/M000096.html +0 -18
  98. data/doc/classes/BayesNet.src/M000097.html +0 -20
  99. data/doc/classes/BayesNet.src/M000098.html +0 -19
  100. data/doc/classes/BayesNet.src/M000099.html +0 -18
  101. data/doc/classes/BayesNet.src/M000100.html +0 -23
  102. data/doc/classes/BayesNet.src/M000101.html +0 -25
  103. data/doc/classes/BayesNet.src/M000102.html +0 -27
  104. data/doc/classes/BayesNet.src/M000103.html +0 -43
  105. data/doc/classes/BayesNet.src/M000104.html +0 -34
  106. data/doc/classes/BayesNet.src/M000105.html +0 -39
  107. data/doc/classes/BayesNet.src/M000106.html +0 -38
  108. data/doc/classes/BayesNet.src/M000107.html +0 -33
  109. data/doc/classes/BayesNet.src/M000108.html +0 -18
  110. data/doc/classes/BayesNet.src/M000109.html +0 -35
  111. data/doc/classes/BayesNet.src/M000110.html +0 -22
  112. data/doc/classes/BayesNet.src/M000111.html +0 -18
  113. data/doc/classes/BayesNet.src/M000112.html +0 -18
  114. data/doc/classes/BayesNet.src/M000113.html +0 -18
  115. data/doc/classes/BayesNet.src/M000114.html +0 -19
  116. data/doc/classes/BayesNet.src/M000115.html +0 -18
  117. data/doc/classes/BayesNet.src/M000116.html +0 -20
  118. data/doc/classes/BayesNet.src/M000117.html +0 -19
  119. data/doc/classes/BayesNet.src/M000118.html +0 -18
  120. data/doc/classes/BayesNet.src/M000119.html +0 -23
  121. data/doc/classes/BayesNet.src/M000120.html +0 -25
  122. data/doc/classes/BayesNet.src/M000121.html +0 -27
  123. data/doc/classes/BayesNet.src/M000122.html +0 -43
  124. data/doc/classes/BayesNet.src/M000123.html +0 -33
  125. data/doc/classes/BayesNet.src/M000124.html +0 -39
  126. data/doc/classes/BayesNet.src/M000125.html +0 -38
  127. data/doc/classes/BayesNet.src/M000126.html +0 -33
  128. data/doc/classes/BayesNetNode.src/M000020.html +0 -22
  129. data/doc/classes/BayesNetNode.src/M000021.html +0 -21
  130. data/doc/classes/BayesNetNode.src/M000022.html +0 -18
  131. data/doc/classes/BayesNetNode.src/M000023.html +0 -22
  132. data/doc/classes/BayesNetNode.src/M000024.html +0 -22
  133. data/doc/classes/BayesNetNode.src/M000025.html +0 -21
  134. data/doc/classes/BayesNetNode.src/M000026.html +0 -18
  135. data/doc/classes/BayesNetNode.src/M000027.html +0 -18
  136. data/doc/classes/BayesNetNode.src/M000028.html +0 -18
  137. data/doc/classes/BayesNetNode.src/M000029.html +0 -18
  138. data/doc/classes/BayesNetNode.src/M000030.html +0 -18
  139. data/doc/classes/BayesNetNode.src/M000031.html +0 -19
  140. data/doc/classes/BayesNetNode.src/M000032.html +0 -19
  141. data/doc/classes/BayesNetNode.src/M000051.html +0 -21
  142. data/doc/classes/BayesNetNode.src/M000052.html +0 -18
  143. data/doc/classes/BayesNetNode.src/M000053.html +0 -18
  144. data/doc/classes/BayesNetNode.src/M000054.html +0 -18
  145. data/doc/classes/BayesNetNode.src/M000055.html +0 -18
  146. data/doc/classes/BayesNetNode.src/M000056.html +0 -18
  147. data/doc/classes/BayesNetNode.src/M000057.html +0 -19
  148. data/doc/classes/BayesNetNode.src/M000058.html +0 -19
  149. data/doc/classes/BayesNetNode.src/M000059.html +0 -18
  150. data/doc/classes/BayesNetNode.src/M000060.html +0 -18
  151. data/doc/classes/BayesNetNode.src/M000061.html +0 -26
  152. data/doc/classes/BayesNetNode.src/M000062.html +0 -18
  153. data/doc/classes/BayesNetNode.src/M000063.html +0 -20
  154. data/doc/classes/BayesNetNode.src/M000064.html +0 -18
  155. data/doc/classes/BayesNetNode.src/M000065.html +0 -23
  156. data/doc/classes/BayesNetNode.src/M000066.html +0 -52
  157. data/doc/classes/BayesNetNode.src/M000147.html +0 -22
  158. data/doc/classes/BayesNetNode.src/M000148.html +0 -21
  159. data/doc/classes/BayesNetNode.src/M000149.html +0 -18
  160. data/doc/classes/BayesNetNode.src/M000150.html +0 -18
  161. data/doc/classes/BayesNetNode.src/M000151.html +0 -18
  162. data/doc/classes/BayesNetNode.src/M000152.html +0 -18
  163. data/doc/classes/BayesNetNode.src/M000153.html +0 -18
  164. data/doc/classes/BayesNetNode.src/M000154.html +0 -19
  165. data/doc/classes/BayesNetNode.src/M000155.html +0 -19
  166. data/doc/classes/BayesNetNode.src/M000156.html +0 -18
  167. data/doc/classes/BayesNetNode.src/M000157.html +0 -18
  168. data/doc/classes/BayesNetNode.src/M000158.html +0 -26
  169. data/doc/classes/BayesNetNode.src/M000159.html +0 -18
  170. data/doc/classes/BayesNetNode.src/M000160.html +0 -20
  171. data/doc/classes/BayesNetNode.src/M000161.html +0 -18
  172. data/doc/classes/BayesNetNode.src/M000162.html +0 -23
  173. data/doc/classes/BayesNetNode.src/M000163.html +0 -52
  174. data/doc/classes/BayesNetNode.src/M000164.html +0 -22
  175. data/doc/classes/BayesNetNode.src/M000165.html +0 -21
  176. data/doc/classes/BayesNetNode.src/M000166.html +0 -18
  177. data/doc/classes/BayesNetNode.src/M000167.html +0 -18
  178. data/doc/classes/BayesNetNode.src/M000168.html +0 -18
  179. data/doc/classes/BayesNetNode.src/M000169.html +0 -18
  180. data/doc/classes/BayesNetNode.src/M000170.html +0 -18
  181. data/doc/classes/BayesNetNode.src/M000171.html +0 -19
  182. data/doc/classes/BayesNetNode.src/M000172.html +0 -18
  183. data/doc/classes/BayesNetNode.src/M000173.html +0 -18
  184. data/doc/classes/BayesNetNode.src/M000174.html +0 -26
  185. data/doc/classes/BayesNetNode.src/M000175.html +0 -18
  186. data/doc/classes/BayesNetNode.src/M000176.html +0 -20
  187. data/doc/classes/BayesNetNode.src/M000177.html +0 -18
  188. data/doc/classes/BayesNetNode.src/M000178.html +0 -23
  189. data/doc/classes/BayesNetNode.src/M000179.html +0 -52
  190. data/doc/classes/Bn4rTest.html +0 -549
  191. data/doc/classes/Bn4rTest.src/M000180.html +0 -17
  192. data/doc/classes/Bn4rTest.src/M000181.html +0 -21
  193. data/doc/classes/Bn4rTest.src/M000182.html +0 -21
  194. data/doc/classes/Bn4rTest.src/M000183.html +0 -34
  195. data/doc/classes/Bn4rTest.src/M000184.html +0 -27
  196. data/doc/classes/Bn4rTest.src/M000185.html +0 -23
  197. data/doc/classes/Bn4rTest.src/M000186.html +0 -42
  198. data/doc/classes/Bn4rTest.src/M000187.html +0 -39
  199. data/doc/classes/Bn4rTest.src/M000188.html +0 -25
  200. data/doc/classes/Bn4rTest.src/M000189.html +0 -45
  201. data/doc/classes/Bn4rTest.src/M000190.html +0 -32
  202. data/doc/classes/Bn4rTest.src/M000191.html +0 -32
  203. data/doc/classes/Bn4rTest.src/M000192.html +0 -45
  204. data/doc/classes/Bn4rTest.src/M000193.html +0 -41
  205. data/doc/classes/Bn4rTest.src/M000194.html +0 -42
  206. data/doc/classes/Bn4rTest.src/M000195.html +0 -17
  207. data/doc/classes/Bn4rTest.src/M000196.html +0 -21
  208. data/doc/classes/Bn4rTest.src/M000197.html +0 -21
  209. data/doc/classes/Bn4rTest.src/M000198.html +0 -34
  210. data/doc/classes/Bn4rTest.src/M000199.html +0 -27
  211. data/doc/classes/Bn4rTest.src/M000200.html +0 -23
  212. data/doc/classes/Bn4rTest.src/M000201.html +0 -42
  213. data/doc/classes/Bn4rTest.src/M000202.html +0 -39
  214. data/doc/classes/Bn4rTest.src/M000203.html +0 -25
  215. data/doc/classes/Bn4rTest.src/M000204.html +0 -45
  216. data/doc/classes/Bn4rTest.src/M000205.html +0 -32
  217. data/doc/classes/Bn4rTest.src/M000206.html +0 -32
  218. data/doc/classes/BnTableProbabilitiesGenerator.src/M000040.html +0 -18
  219. data/doc/classes/BnTableProbabilitiesGenerator.src/M000041.html +0 -18
  220. data/doc/classes/BnTableProbabilitiesGenerator.src/M000067.html +0 -18
  221. data/doc/classes/BnTableProbabilitiesGenerator.src/M000207.html +0 -18
  222. data/doc/classes/BnTableProbabilitiesGenerator.src/M000208.html +0 -18
  223. data/doc/classes/ConfigTable.html +0 -500
  224. data/doc/classes/ConfigTable.src/M000007.html +0 -25
  225. data/doc/classes/ConfigTable.src/M000008.html +0 -18
  226. data/doc/classes/ConfigTable.src/M000009.html +0 -18
  227. data/doc/classes/ConfigTable.src/M000010.html +0 -18
  228. data/doc/classes/ConfigTable.src/M000011.html +0 -18
  229. data/doc/classes/ConfigTable.src/M000012.html +0 -18
  230. data/doc/classes/ConfigTable.src/M000013.html +0 -18
  231. data/doc/classes/ConfigTable.src/M000014.html +0 -18
  232. data/doc/classes/ConfigTable.src/M000015.html +0 -18
  233. data/doc/classes/ConfigTable.src/M000016.html +0 -19
  234. data/doc/classes/ConfigTable.src/M000017.html +0 -21
  235. data/doc/classes/ConfigTable.src/M000018.html +0 -20
  236. data/doc/classes/ConfigTable.src/M000019.html +0 -18
  237. data/doc/classes/ConfigTable.src/M000020.html +0 -25
  238. data/doc/classes/ConfigTable.src/M000021.html +0 -23
  239. data/doc/classes/ConfigTable.src/M000022.html +0 -20
  240. data/doc/classes/ConfigTable.src/M000023.html +0 -20
  241. data/doc/classes/ConfigTable.src/M000024.html +0 -23
  242. data/doc/classes/ConfigTable.src/M000025.html +0 -19
  243. data/doc/classes/ConfigTable.src/M000026.html +0 -18
  244. data/doc/classes/ConfigTable.src/M000027.html +0 -18
  245. data/doc/classes/ConfigTable/BoolItem.html +0 -154
  246. data/doc/classes/ConfigTable/BoolItem.src/M000028.html +0 -18
  247. data/doc/classes/ConfigTable/BoolItem.src/M000029.html +0 -18
  248. data/doc/classes/ConfigTable/ExecItem.html +0 -201
  249. data/doc/classes/ConfigTable/ExecItem.src/M000047.html +0 -20
  250. data/doc/classes/ConfigTable/ExecItem.src/M000048.html +0 -18
  251. data/doc/classes/ConfigTable/ExecItem.src/M000049.html +0 -18
  252. data/doc/classes/ConfigTable/ExecItem.src/M000050.html +0 -18
  253. data/doc/classes/ConfigTable/ExecItem.src/M000051.html +0 -22
  254. data/doc/classes/ConfigTable/Item.html +0 -250
  255. data/doc/classes/ConfigTable/Item.src/M000054.html +0 -22
  256. data/doc/classes/ConfigTable/Item.src/M000055.html +0 -18
  257. data/doc/classes/ConfigTable/Item.src/M000056.html +0 -18
  258. data/doc/classes/ConfigTable/Item.src/M000057.html +0 -18
  259. data/doc/classes/ConfigTable/Item.src/M000058.html +0 -18
  260. data/doc/classes/ConfigTable/Item.src/M000059.html +0 -18
  261. data/doc/classes/ConfigTable/MetaConfigEnvironment.html +0 -325
  262. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000034.html +0 -19
  263. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000035.html +0 -18
  264. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000036.html +0 -18
  265. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000037.html +0 -18
  266. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000038.html +0 -18
  267. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000039.html +0 -18
  268. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000040.html +0 -18
  269. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000041.html +0 -18
  270. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000042.html +0 -18
  271. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000043.html +0 -18
  272. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000044.html +0 -18
  273. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000045.html +0 -19
  274. data/doc/classes/ConfigTable/MetaConfigEnvironment.src/M000046.html +0 -19
  275. data/doc/classes/ConfigTable/PackageSelectionItem.html +0 -169
  276. data/doc/classes/ConfigTable/PackageSelectionItem.src/M000032.html +0 -19
  277. data/doc/classes/ConfigTable/PackageSelectionItem.src/M000033.html +0 -18
  278. data/doc/classes/ConfigTable/PathItem.html +0 -139
  279. data/doc/classes/ConfigTable/PathItem.src/M000031.html +0 -18
  280. data/doc/classes/ConfigTable/ProgramItem.html +0 -139
  281. data/doc/classes/ConfigTable/ProgramItem.src/M000030.html +0 -18
  282. data/doc/classes/ConfigTable/SelectItem.html +0 -156
  283. data/doc/classes/ConfigTable/SelectItem.src/M000052.html +0 -19
  284. data/doc/classes/ConfigTable/SelectItem.src/M000053.html +0 -18
  285. data/doc/classes/Enumerable.html +0 -118
  286. data/doc/classes/Errno.html +0 -111
  287. data/doc/classes/Errno/ENOTEMPTY.html +0 -111
  288. data/doc/classes/File.html +0 -166
  289. data/doc/classes/File.src/M000276.html +0 -20
  290. data/doc/classes/File.src/M000277.html +0 -20
  291. data/doc/classes/File.src/M000278.html +0 -18
  292. data/doc/classes/FileOperations.html +0 -375
  293. data/doc/classes/FileOperations.src/M000291.html +0 -31
  294. data/doc/classes/FileOperations.src/M000292.html +0 -20
  295. data/doc/classes/FileOperations.src/M000293.html +0 -20
  296. data/doc/classes/FileOperations.src/M000294.html +0 -24
  297. data/doc/classes/FileOperations.src/M000295.html +0 -34
  298. data/doc/classes/FileOperations.src/M000296.html +0 -27
  299. data/doc/classes/FileOperations.src/M000297.html +0 -21
  300. data/doc/classes/FileOperations.src/M000298.html +0 -19
  301. data/doc/classes/FileOperations.src/M000299.html +0 -40
  302. data/doc/classes/FileOperations.src/M000300.html +0 -19
  303. data/doc/classes/FileOperations.src/M000301.html +0 -20
  304. data/doc/classes/FileOperations.src/M000302.html +0 -18
  305. data/doc/classes/FileOperations.src/M000303.html +0 -18
  306. data/doc/classes/FileOperations.src/M000304.html +0 -18
  307. data/doc/classes/FileOperations.src/M000305.html +0 -20
  308. data/doc/classes/FileOperations.src/M000306.html +0 -20
  309. data/doc/classes/HookScriptAPI.html +0 -308
  310. data/doc/classes/HookScriptAPI.src/M000279.html +0 -18
  311. data/doc/classes/HookScriptAPI.src/M000281.html +0 -18
  312. data/doc/classes/HookScriptAPI.src/M000282.html +0 -18
  313. data/doc/classes/HookScriptAPI.src/M000283.html +0 -18
  314. data/doc/classes/HookScriptAPI.src/M000284.html +0 -18
  315. data/doc/classes/HookScriptAPI.src/M000285.html +0 -18
  316. data/doc/classes/HookScriptAPI.src/M000286.html +0 -18
  317. data/doc/classes/HookScriptAPI.src/M000287.html +0 -18
  318. data/doc/classes/HookScriptAPI.src/M000288.html +0 -20
  319. data/doc/classes/HookScriptAPI.src/M000289.html +0 -20
  320. data/doc/classes/HookScriptAPI.src/M000290.html +0 -20
  321. data/doc/classes/Installer.html +0 -1148
  322. data/doc/classes/Installer.src/M000209.html +0 -21
  323. data/doc/classes/Installer.src/M000210.html +0 -18
  324. data/doc/classes/Installer.src/M000211.html +0 -17
  325. data/doc/classes/Installer.src/M000212.html +0 -18
  326. data/doc/classes/Installer.src/M000213.html +0 -18
  327. data/doc/classes/Installer.src/M000214.html +0 -18
  328. data/doc/classes/Installer.src/M000215.html +0 -18
  329. data/doc/classes/Installer.src/M000216.html +0 -18
  330. data/doc/classes/Installer.src/M000217.html +0 -23
  331. data/doc/classes/Installer.src/M000218.html +0 -18
  332. data/doc/classes/Installer.src/M000221.html +0 -18
  333. data/doc/classes/Installer.src/M000225.html +0 -18
  334. data/doc/classes/Installer.src/M000226.html +0 -18
  335. data/doc/classes/Installer.src/M000227.html +0 -20
  336. data/doc/classes/Installer.src/M000229.html +0 -18
  337. data/doc/classes/Installer.src/M000233.html +0 -36
  338. data/doc/classes/Installer.src/M000234.html +0 -25
  339. data/doc/classes/Installer.src/M000235.html +0 -24
  340. data/doc/classes/Installer.src/M000236.html +0 -19
  341. data/doc/classes/Installer.src/M000237.html +0 -18
  342. data/doc/classes/Installer.src/M000238.html +0 -18
  343. data/doc/classes/Installer.src/M000239.html +0 -21
  344. data/doc/classes/Installer.src/M000240.html +0 -18
  345. data/doc/classes/Installer.src/M000241.html +0 -20
  346. data/doc/classes/Installer.src/M000242.html +0 -18
  347. data/doc/classes/Installer.src/M000243.html +0 -21
  348. data/doc/classes/Installer.src/M000244.html +0 -18
  349. data/doc/classes/Installer.src/M000245.html +0 -22
  350. data/doc/classes/Installer.src/M000246.html +0 -18
  351. data/doc/classes/Installer.src/M000247.html +0 -23
  352. data/doc/classes/Installer.src/M000248.html +0 -18
  353. data/doc/classes/Installer.src/M000249.html +0 -20
  354. data/doc/classes/Installer.src/M000250.html +0 -19
  355. data/doc/classes/Installer.src/M000251.html +0 -19
  356. data/doc/classes/Installer.src/M000252.html +0 -20
  357. data/doc/classes/Installer.src/M000253.html +0 -30
  358. data/doc/classes/Installer.src/M000254.html +0 -20
  359. data/doc/classes/Installer.src/M000260.html +0 -19
  360. data/doc/classes/Installer.src/M000261.html +0 -20
  361. data/doc/classes/Installer.src/M000264.html +0 -19
  362. data/doc/classes/Installer.src/M000268.html +0 -26
  363. data/doc/classes/Installer.src/M000269.html +0 -25
  364. data/doc/classes/Installer.src/M000270.html +0 -29
  365. data/doc/classes/Installer.src/M000271.html +0 -26
  366. data/doc/classes/Installer/Shebang.html +0 -202
  367. data/doc/classes/Installer/Shebang.src/M000272.html +0 -23
  368. data/doc/classes/Installer/Shebang.src/M000273.html +0 -19
  369. data/doc/classes/Installer/Shebang.src/M000274.html +0 -19
  370. data/doc/classes/Installer/Shebang.src/M000275.html +0 -18
  371. data/doc/classes/SetupError.html +0 -111
  372. data/doc/classes/ToplevelInstaller.html +0 -621
  373. data/doc/classes/ToplevelInstaller.src/M000060.html +0 -23
  374. data/doc/classes/ToplevelInstaller.src/M000061.html +0 -18
  375. data/doc/classes/ToplevelInstaller.src/M000062.html +0 -25
  376. data/doc/classes/ToplevelInstaller.src/M000063.html +0 -21
  377. data/doc/classes/ToplevelInstaller.src/M000064.html +0 -18
  378. data/doc/classes/ToplevelInstaller.src/M000065.html +0 -18
  379. data/doc/classes/ToplevelInstaller.src/M000066.html +0 -38
  380. data/doc/classes/ToplevelInstaller.src/M000067.html +0 -18
  381. data/doc/classes/ToplevelInstaller.src/M000068.html +0 -18
  382. data/doc/classes/ToplevelInstaller.src/M000069.html +0 -18
  383. data/doc/classes/ToplevelInstaller.src/M000070.html +0 -18
  384. data/doc/classes/ToplevelInstaller.src/M000071.html +0 -18
  385. data/doc/classes/ToplevelInstaller.src/M000072.html +0 -40
  386. data/doc/classes/ToplevelInstaller.src/M000073.html +0 -18
  387. data/doc/classes/ToplevelInstaller.src/M000074.html +0 -18
  388. data/doc/classes/ToplevelInstaller.src/M000075.html +0 -21
  389. data/doc/classes/ToplevelInstaller.src/M000081.html +0 -40
  390. data/doc/classes/ToplevelInstaller.src/M000082.html +0 -31
  391. data/doc/classes/ToplevelInstaller.src/M000083.html +0 -52
  392. data/doc/classes/ToplevelInstaller.src/M000084.html +0 -19
  393. data/doc/classes/ToplevelInstaller.src/M000085.html +0 -18
  394. data/doc/classes/ToplevelInstaller.src/M000086.html +0 -18
  395. data/doc/classes/ToplevelInstaller.src/M000087.html +0 -18
  396. data/doc/classes/ToplevelInstaller.src/M000088.html +0 -20
  397. data/doc/classes/ToplevelInstaller.src/M000089.html +0 -18
  398. data/doc/classes/ToplevelInstaller.src/M000090.html +0 -18
  399. data/doc/classes/ToplevelInstallerMulti.html +0 -398
  400. data/doc/classes/ToplevelInstallerMulti.src/M000127.html +0 -21
  401. data/doc/classes/ToplevelInstallerMulti.src/M000128.html +0 -21
  402. data/doc/classes/ToplevelInstallerMulti.src/M000129.html +0 -23
  403. data/doc/classes/ToplevelInstallerMulti.src/M000130.html +0 -29
  404. data/doc/classes/ToplevelInstallerMulti.src/M000131.html +0 -22
  405. data/doc/classes/ToplevelInstallerMulti.src/M000132.html +0 -21
  406. data/doc/classes/ToplevelInstallerMulti.src/M000133.html +0 -21
  407. data/doc/classes/ToplevelInstallerMulti.src/M000134.html +0 -20
  408. data/doc/classes/ToplevelInstallerMulti.src/M000135.html +0 -20
  409. data/doc/classes/ToplevelInstallerMulti.src/M000136.html +0 -20
  410. data/doc/classes/ToplevelInstallerMulti.src/M000137.html +0 -21
  411. data/doc/classes/ToplevelInstallerMulti.src/M000138.html +0 -21
  412. data/doc/classes/ToplevelInstallerMulti.src/M000139.html +0 -25
  413. data/doc/classes/ToplevelInstallerMulti.src/M000140.html +0 -18
  414. data/doc/classes/ToplevelInstallerMulti.src/M000141.html +0 -18
  415. data/doc/classes/ToplevelInstallerMulti.src/M000142.html +0 -18
  416. data/doc/files/pkg/bn4r-0_1_0/lib/bn4r/bn_algorithms_rb.html +0 -131
  417. data/doc/files/pkg/bn4r-0_1_0/lib/bn4r/bn_rb.html +0 -135
  418. data/doc/files/pkg/bn4r-0_1_0/lib/bn4r/bn_table_probabilities_rb.html +0 -115
  419. data/doc/files/pkg/bn4r-0_1_0/lib/bn4r/version_rb.html +0 -101
  420. data/doc/files/pkg/bn4r-0_1_0/lib/bn4r_rb.html +0 -114
  421. data/doc/files/pkg/bn4r-0_1_0/test/bn4r_test_rb.html +0 -101
  422. data/doc/files/pkg/bn4r-0_1_0/test/test_helper_rb.html +0 -108
  423. data/doc/files/setup_rb.html +0 -148
  424. data/doc/files/setup_rb.src/M000006.html +0 -18
  425. data/doc/files/test/bn4r_test_rb.html +0 -108
  426. data/doc/files/test/bn_test_models_rb.html +0 -175
  427. data/doc/files/test/bn_test_models_rb.src/M000003.html +0 -45
  428. data/doc/files/test/bn_test_models_rb.src/M000004.html +0 -41
  429. data/doc/files/test/bn_test_models_rb.src/M000005.html +0 -42
  430. data/doc/files/test/print_bn_output_rb.html +0 -134
  431. data/doc/files/test/print_bn_output_rb.src/M000002.html +0 -18
  432. data/doc/files/test/test_helper_rb.html +0 -108
@@ -1,18 +1,18 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html>
7
- <head>
8
- <title>get_node_probability_from_boolean_combination (BnTableProbabilitiesGenerator)</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
- </head>
12
- <body class="standalone-code">
13
- <pre><span class="ruby-comment cmt"># File lib/bn4r/bn_table_probabilities.rb, line 14</span>
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+
6
+ <html>
7
+ <head>
8
+ <title>get_node_probability_from_boolean_combination (BnTableProbabilitiesGenerator)</title>
9
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
+ <link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
11
+ </head>
12
+ <body class="standalone-code">
13
+ <pre><span class="ruby-comment cmt"># File lib/bn4r/bn_table_probabilities.rb, line 14</span>
14
14
  <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_node_probability_from_boolean_combination</span>(<span class="ruby-identifier">boolean_combination</span>)
15
15
  <span class="ruby-value">0</span><span class="ruby-value">.0</span>
16
- <span class="ruby-keyword kw">end</span></pre>
17
- </body>
16
+ <span class="ruby-keyword kw">end</span></pre>
17
+ </body>
18
18
  </html>
@@ -1 +1 @@
1
- Fri Nov 10 11:22:37 Hora est�ndar romance 2006
1
+ Mon Jan 22 15:40:31 CET 2007
@@ -1,265 +1,268 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>File: README</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="fileHeader">
50
- <h1>README</h1>
51
- <table class="header-table">
52
- <tr class="top-aligned-row">
53
- <td><strong>Path:</strong></td>
54
- <td>README
55
- </td>
56
- </tr>
57
- <tr class="top-aligned-row">
58
- <td><strong>Last Update:</strong></td>
59
- <td>Fri Nov 10 11:22:36 Hora est�ndar romance 2006</td>
60
- </tr>
61
- </table>
62
- </div>
63
- <!-- banner header -->
64
-
65
- <div id="bodyContent">
66
-
67
-
68
-
69
- <div id="contextContent">
70
-
71
- <div id="description">
72
- <h1>Bayesian Networks for Ruby ( bn4r )</h1>
73
- <p>
74
- bn4r is a bayesian networks library on ruby that provides the user with
75
- classes for create bayesian networks and diverse algorithms for solve them.
76
- </p>
77
- <p>
78
- Its algorithms implementation are based on: S.Russell, P.Norving,
79
- &quot;Artificial Intelligence, A Modern Approach&quot;, 2nd Edition.
80
- </p>
81
- <p>
82
- Website: <a href="http://bn4r.rubyforge.org">bn4r.rubyforge.org</a>
83
- </p>
84
- <p>
85
- Rubyforge Project: <a
86
- href="http://rubyforge.org/projects/bn4r">rubyforge.org/projects/bn4r</a>
87
- </p>
88
- <h2>Dependencies</h2>
89
- <ul>
90
- <li>rgl-0.2.3 ( Ruby Graph Library ), <a
91
- href="http://rgl.rubyforge.org">rgl.rubyforge.org</a>
92
-
93
- </li>
94
- </ul>
95
- <h2>Design principles</h2>
96
- <p>
97
- The library consists on the object <a
98
- href="../classes/BayesNet.html">BayesNet</a> thinked to be filled with <a
99
- href="../classes/BayesNetNode.html">BayesNetNode</a>, these objects are
100
- defined in bn.rb. <a href="../classes/BayesNet.html">BayesNet</a> object is
101
- a especialization of RGL::DirectedAdjacencyGraph ( <a
102
- href="http://rgl.rubyforge.org">rgl.rubyforge.org</a> ).
103
- </p>
104
- <p>
105
- The file bn_algorithms.rb has the implementation of the inference
106
- algorithms that can be used to solve <a
107
- href="../classes/BayesNet.html">BayesNet</a> structures.
108
- </p>
109
- <p>
110
- Finally, a set of objects and methods are given to automaticly fill <a
111
- href="../classes/BayesNetNode.html">BayesNetNode</a> probabilities tables.
112
- </p>
113
- <h2>Play a bit &#8230;</h2>
114
- <ol>
115
- <li>Install the gem
116
-
117
- <pre>
118
- gem install bn4r
119
- </pre>
120
- </li>
121
- <li>Include the bn4r
122
-
123
- <pre>
124
- require 'bn4r'
125
- </pre>
126
- </li>
127
- <li>Create your first bayes net
128
-
129
- <pre>
130
- # Create BayesNet
131
- bn_aima = BayesNet.new
132
-
133
- # Create nodes for the Bayes Net (BayesNetNodes)
134
- burglary = BayesNetNode.new(&quot;Burglary&quot;)
135
- earthquake = BayesNetNode.new(&quot;Earthquake&quot;)
136
- alarm = BayesNetNode.new(&quot;Alarm&quot;)
137
- john_calls = BayesNetNode.new(&quot;JohnCalls&quot;)
138
- mary_calls = BayesNetNode.new(&quot;MaryCalls&quot;)
139
-
140
- # Add nodes ( vertex ) to the BayesNet
141
- bn_aima.add_vertex(burglary)
142
- bn_aima.add_vertex(earthquake)
143
- bn_aima.add_vertex(alarm)
144
- bn_aima.add_vertex(john_calls)
145
- bn_aima.add_vertex(mary_calls)
146
-
147
- # Add relations ( edges ) between nodes in the BayesNet
148
- bn_aima.add_edge(burglary,alarm)
149
- bn_aima.add_edge(earthquake,alarm)
150
- bn_aima.add_edge(alarm,john_calls)
151
- bn_aima.add_edge(alarm,mary_calls)
152
-
153
- # Assign probabilities to each node
154
- burglary.set_probability_table([], [0.001, 0.999] )
155
- earthquake.set_probability_table([], [0.002, 0.998] )
156
-
157
- alarm.set_probability_table([burglary,earthquake], [0.95, 0.05, 0.94, 0.06, 0.29, 0.61, 0.001,0.999] )
158
-
159
- john_calls.set_probability_table([alarm], [0.90,0.10,0.05,0.95])
160
- mary_calls.set_probability_table([alarm], [0.70,0.30,0.01,0.99])
161
- </pre>
162
- </li>
163
- <li>Solve it!
164
-
165
- <pre>
166
- # John and Mary are calling ...
167
- john_calls.set_value(true)
168
- mary_calls.set_value(true)
169
-
170
- # Why?
171
- is_there_a_burglary = bn_aima.enumeration_ask( burglary, [john_calls, mary_calls] )
172
- puts &quot;Call the police!&quot; if is_there_a_burglary[0] &gt; is_there_a_burglary[1]
173
-
174
- is_the_alarm_on = bn_aima.enumeration_ask( alarm, [john_calls, mary_calls] )
175
- puts &quot;Run home, your alarm is distubing the neigborhood!&quot; if is_the_alarm_on[0] &gt; is_the_alarm_on[1]
176
-
177
- is_there_a_earthquake = bn_aima.enumeration_ask( earthquake, [john_calls, mary_calls] )
178
- puts &quot;Calm yourself, there isn't a earthquake ;)&quot; if is_there_a_earthquake[0] &lt; is_there_a_earthquake[1]
179
- </pre>
180
- </li>
181
- <li>See how your bayes net looks like
182
-
183
- <pre>
184
- # In .dot format
185
- bn_aima.to_dot
186
-
187
- # In Microsoft Belief Networks (.xbn) format
188
- # (download for free in: http://research.microsoft.com/adapt/MSBNx )
189
- bn_aima.to_xbn
190
- </pre>
191
- </li>
192
- </ol>
193
- <h2>Documentation</h2>
194
- <p>
195
- Documentation can be found at <a
196
- href="http://bn4r.rubyforge.org/rdoc">bn4r.rubyforge.org/rdoc</a> or can be
197
- generated using rdoc tool under the source code with:
198
- </p>
199
- <pre>
200
- rdoc README lib
201
- </pre>
202
- <h2>Credits</h2>
203
- <p>
204
- Thanks to N�ria Bel ( <a
205
- href="http://www.upf.edu/pdi/iula/nuria.bel">www.upf.edu/pdi/iula/nuria.bel</a>
206
- ) for her work in this project without her it cannot be done.
207
- </p>
208
- <p>
209
- Thanks to Ryan Dahl for his work in <a
210
- href="http://www.math.rochester.edu/people/grads/rld/bayesnets">www.math.rochester.edu/people/grads/rld/bayesnets</a>
211
- that was the inspiration of the project.
212
- </p>
213
- <p>
214
- Also thanks to all the ruby community.
215
- </p>
216
- <h2>Copying</h2>
217
- <p>
218
- This work is developed by Sergio Espeja ( <a
219
- href="http://www.upf.edu/pdi/iula/sergio.espeja">www.upf.edu/pdi/iula/sergio.espeja</a>,
220
- sergio.espeja at gmail.com ) mainly in Institut Universitari de Ling�istica
221
- Aplicada of Universitat Pompeu Fabra ( <a
222
- href="http://www.iula.upf.es">www.iula.upf.es</a> ), and also in bee.com.es
223
- ( <a href="http://bee.com.es">bee.com.es</a> ).
224
- </p>
225
- <p>
226
- It is free software, and may be redistributed under GPL license.
227
- </p>
228
- <h2>Support</h2>
229
- <p>
230
- Please contact me in <a
231
- href="http://rubyforge.org/projects/bn4r">rubyforge.org/projects/bn4r</a>.
232
- </p>
233
-
234
- </div>
235
-
236
-
237
- </div>
238
-
239
-
240
- </div>
241
-
242
-
243
- <!-- if includes -->
244
-
245
- <div id="section">
246
-
247
-
248
-
249
-
250
-
251
-
252
-
253
-
254
- <!-- if method_list -->
255
-
256
-
257
- </div>
258
-
259
-
260
- <div id="validator-badges">
261
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
262
- </div>
263
-
264
- </body>
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!DOCTYPE html
3
+ PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
+ <html>
6
+ <head>
7
+ <title>File: README</title>
8
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
9
+ <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
10
+
11
+ <script language="JavaScript" type="text/javascript">
12
+ // <![CDATA[
13
+
14
+ function toggleSource( id )
15
+ {
16
+ var elem
17
+ var link
18
+
19
+ if( document.getElementById )
20
+ {
21
+ elem = document.getElementById( id )
22
+ link = document.getElementById( "l_" + id )
23
+ }
24
+ else if ( document.all )
25
+ {
26
+ elem = eval( "document.all." + id )
27
+ link = eval( "document.all.l_" + id )
28
+ }
29
+ else
30
+ return false;
31
+
32
+ if( elem.style.display == "block" )
33
+ {
34
+ elem.style.display = "none"
35
+ link.innerHTML = "show source"
36
+ }
37
+ else
38
+ {
39
+ elem.style.display = "block"
40
+ link.innerHTML = "hide source"
41
+ }
42
+ }
43
+
44
+ function openCode( url )
45
+ {
46
+ window.open( url, "SOURCE_CODE", "width=400,height=400,scrollbars=yes" )
47
+ }
48
+ // ]]>
49
+ </script>
50
+ </head>
51
+
52
+ <body>
53
+ <table border='0' cellpadding='0' cellspacing='0' width="100%" class='banner'>
54
+ <tr><td>
55
+ <table width="100%" border='0' cellpadding='0' cellspacing='0'><tr>
56
+ <td class="file-title" colspan="2"><span class="file-title-prefix">File</span><br />README</td>
57
+ <td align="right">
58
+ <table border='0' cellspacing="0" cellpadding="2">
59
+ <tr>
60
+ <td>Path:</td>
61
+ <td>README
62
+ </td>
63
+ </tr>
64
+ <tr>
65
+ <td>Modified:</td>
66
+ <td>Mon Jan 22 15:33:44 CET 2007</td>
67
+ </tr>
68
+ </table>
69
+ </td></tr>
70
+ </table>
71
+ </td></tr>
72
+ </table><br>
73
+ <!-- banner header -->
74
+
75
+ <div id="bodyContent">
76
+ <div id="content">
77
+
78
+ <div class="description"><h1>Bayesian Networks for Ruby ( bn4r )</h1>
79
+ <p>
80
+ bn4r is a bayesian networks library on ruby that provides the user with
81
+ classes for create bayesian networks and diverse algorithms for solve them.
82
+ </p>
83
+ <p>
84
+ Its algorithms implementation are based on: S.Russell, P.Norving,
85
+ &quot;Artificial Intelligence, A Modern Approach&quot;, 2nd Edition.
86
+ </p>
87
+ <p>
88
+ Website: <a href="http://bn4r.rubyforge.org">bn4r.rubyforge.org</a>
89
+ </p>
90
+ <p>
91
+ Spanish Website: <a
92
+ href="http://bn4r.rubyforge.org/es">bn4r.rubyforge.org/es</a>
93
+ </p>
94
+ <p>
95
+ Rubyforge Project: <a
96
+ href="http://rubyforge.org/projects/bn4r">rubyforge.org/projects/bn4r</a>
97
+ </p>
98
+ <h2>Dependencies</h2>
99
+ <ul>
100
+ <li>rgl-0.2.3 ( Ruby Graph Library ), <a
101
+ href="http://rgl.rubyforge.org">rgl.rubyforge.org</a>
102
+
103
+ </li>
104
+ </ul>
105
+ <h2>Design principles</h2>
106
+ <p>
107
+ The library consists on the object <a
108
+ href="../classes/BayesNet.html">BayesNet</a> thinked to be filled with <a
109
+ href="../classes/BayesNetNode.html">BayesNetNode</a>, these objects are
110
+ defined in bn.rb. <a href="../classes/BayesNet.html">BayesNet</a> object is
111
+ a especialization of RGL::DirectedAdjacencyGraph ( <a
112
+ href="http://rgl.rubyforge.org">rgl.rubyforge.org</a> ).
113
+ </p>
114
+ <p>
115
+ The file bn_algorithms.rb has the implementation of the inference
116
+ algorithms that can be used to solve <a
117
+ href="../classes/BayesNet.html">BayesNet</a> structures.
118
+ </p>
119
+ <p>
120
+ Files bn_export.rb and bn_import.rb have methods for import and export
121
+ bayesian networkd in different formats.
122
+ </p>
123
+ <p>
124
+ Finally, a set of objects and methods are given to automaticly fill <a
125
+ href="../classes/BayesNetNode.html">BayesNetNode</a> probabilities tables.
126
+ </p>
127
+ <h2>Play a bit &#8230;</h2>
128
+ <ol>
129
+ <li>Install the gem ( bn4r-0.1.2.gem )
130
+
131
+ <pre>
132
+ gem install bn4r
133
+ </pre>
134
+ </li>
135
+ <li>Include the bn4r
136
+
137
+ <pre>
138
+ require 'bn4r'
139
+ </pre>
140
+ </li>
141
+ <li>Create your first bayes net
142
+
143
+ <pre>
144
+ # Create BayesNet
145
+ bn_aima = BayesNet.new
146
+
147
+ # Create nodes for the Bayes Net (BayesNetNodes)
148
+ burglary = BayesNetNode.new(&quot;Burglary&quot;)
149
+ earthquake = BayesNetNode.new(&quot;Earthquake&quot;)
150
+ alarm = BayesNetNode.new(&quot;Alarm&quot;)
151
+ john_calls = BayesNetNode.new(&quot;JohnCalls&quot;)
152
+ mary_calls = BayesNetNode.new(&quot;MaryCalls&quot;)
153
+
154
+ # Add nodes ( vertex ) to the BayesNet
155
+ bn_aima.add_vertex(burglary)
156
+ bn_aima.add_vertex(earthquake)
157
+ bn_aima.add_vertex(alarm)
158
+ bn_aima.add_vertex(john_calls)
159
+ bn_aima.add_vertex(mary_calls)
160
+
161
+ # Add relations ( edges ) between nodes in the BayesNet
162
+ bn_aima.add_edge(burglary,alarm)
163
+ bn_aima.add_edge(earthquake,alarm)
164
+ bn_aima.add_edge(alarm,john_calls)
165
+ bn_aima.add_edge(alarm,mary_calls)
166
+
167
+ # Assign probabilities to each node
168
+ burglary.set_probability_table([], [0.001, 0.999] )
169
+ earthquake.set_probability_table([], [0.002, 0.998] )
170
+
171
+ alarm.set_probability_table([burglary,earthquake], [0.95, 0.05, 0.94, 0.06, 0.29, 0.61, 0.001,0.999] )
172
+
173
+ john_calls.set_probability_table([alarm], [0.90,0.10,0.05,0.95])
174
+ mary_calls.set_probability_table([alarm], [0.70,0.30,0.01,0.99])
175
+ </pre>
176
+ </li>
177
+ <li>Solve it!
178
+
179
+ <pre>
180
+ # John and Mary are calling ...
181
+ john_calls.set_value(true)
182
+ mary_calls.set_value(true)
183
+
184
+ # Why?
185
+ is_there_a_burglary = bn_aima.enumeration_ask( burglary, [john_calls, mary_calls] )
186
+ puts &quot;Call the police!&quot; if is_there_a_burglary[0] &gt; is_there_a_burglary[1]
187
+
188
+ is_the_alarm_on = bn_aima.enumeration_ask( alarm, [john_calls, mary_calls] )
189
+ puts &quot;Run home, your alarm is distubing the neigborhood!&quot; if is_the_alarm_on[0] &gt; is_the_alarm_on[1]
190
+
191
+ is_there_a_earthquake = bn_aima.enumeration_ask( earthquake, [john_calls, mary_calls] )
192
+ puts &quot;Calm yourself, there isn't a earthquake ;)&quot; if is_there_a_earthquake[0] &lt; is_there_a_earthquake[1]
193
+ </pre>
194
+ </li>
195
+ <li>See how your bayes net looks like
196
+
197
+ <pre>
198
+ # In .dot format
199
+ bn_aima.to_dot
200
+
201
+ # In Microsoft Belief Networks (.xbn) format
202
+ # (download for free in: http://research.microsoft.com/adapt/MSBNx )
203
+ bn_aima.to_xbn
204
+ </pre>
205
+ </li>
206
+ </ol>
207
+ <h2>Documentation</h2>
208
+ <p>
209
+ Documentation can be found at <a
210
+ href="http://bn4r.rubyforge.org/rdoc">bn4r.rubyforge.org/rdoc</a> or can be
211
+ generated using rdoc tool under the source code with:
212
+ </p>
213
+ <pre>
214
+ rdoc README lib
215
+ </pre>
216
+ <h2>Credits</h2>
217
+ <p>
218
+ Thanks to N�ria Bel ( <a
219
+ href="http://www.upf.edu/pdi/iula/nuria.bel">www.upf.edu/pdi/iula/nuria.bel</a>
220
+ ) for her work in this project without her it cannot be done.
221
+ </p>
222
+ <p>
223
+ Thanks to Ryan Dahl for his work in <a
224
+ href="http://www.math.rochester.edu/people/grads/rld/bayesnets">www.math.rochester.edu/people/grads/rld/bayesnets</a>
225
+ that was the inspiration of the project.
226
+ </p>
227
+ <p>
228
+ Also thanks to all the ruby community.
229
+ </p>
230
+ <h2>Copying</h2>
231
+ <p>
232
+ This work is developed by Sergio Espeja ( <a
233
+ href="http://www.upf.edu/pdi/iula/sergio.espeja">www.upf.edu/pdi/iula/sergio.espeja</a>,
234
+ sergio.espeja at gmail.com ) mainly in Institut Universitari de Ling��stica
235
+ Aplicada of Universitat Pompeu Fabra ( <a
236
+ href="http://www.iula.upf.es">www.iula.upf.es</a> ), and also in bee.com.es
237
+ ( <a href="http://bee.com.es">bee.com.es</a> ).
238
+ </p>
239
+ <p>
240
+ It is free software, and may be redistributed under GPL license.
241
+ </p>
242
+ <h2>Support</h2>
243
+ <p>
244
+ Please contact me in <a
245
+ href="http://rubyforge.org/projects/bn4r">rubyforge.org/projects/bn4r</a>.
246
+ </p>
247
+ </div>
248
+
249
+
250
+
251
+
252
+
253
+
254
+
255
+
256
+
257
+ </div>
258
+
259
+ </div>
260
+
261
+ <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
262
+ </script>
263
+ <script type="text/javascript">
264
+ _uacct = "UA-262540-7";
265
+ urchinTracker();
266
+ </script>
267
+ </body>
265
268
  </html>