-
Notifications
You must be signed in to change notification settings - Fork 3
/
Copy pathChangeLog
726 lines (461 loc) · 23.3 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
2023-08-21 Russell Almond <ralmond@cherry>
* R/Edges.R ([[.NeticaNode): Added explicit check for cases where this is called by `.rs.environment.isSuspendable`, from `tools::rstudio`. Throws an error in this case, as that seems to get rid of the warning.
2023-04-21 Russell Almond <ralmond@cherry>
* R/Networks.R (NeticaBN$signalErrors): Fixed warn -> warning (HT mbedward).
2023-04-13 Russell Almond <ralmond@pei>
* R/Experience.R ("NodeExperience<-"): Fixed issue with checking for NAs.
2023-04-12 Russell Almond <ralmond@pei>
* R/Networks.R (NetworkSession): Added this function as it seems to be needed.
2023-04-05 Russell Almond <ralmond@cherry>
* R/LoadFuns.R (CCodeLoader): Added a check for environmental
variable 'NeticaLicenseKey' and used it to set option if available.
* R/Edges.R (AbsorbNodes): Added patch to avoid bug in AbsorbNodes
in Netica < 6.07.
2022-09-10 Russell Almond <[email protected]>
* R/Session.R (NeticaCondition): Creates a new class
NeticaCondition, which will be a subclass of error, warning and/or
condition depending. The Original Netica messages are given in
fields "Fatal", "Error", "Warning", "Notice" & "Report".
(flogErrors): Changed to work with NeticaCondition objects. Also
futile.logger is no longer imported, only suggested.
(print.NeticaErrors): Prints out the Netica Error messages in
addition to the condition printing.
* R/Node.R (NeticaNode$reportErrors): Added call argument
* R/Networks.R (NeticaBN$reportErrors): Added call argument
* R/Session.R (NeticaSession$reportErrors): Added call argument,
changed to throw Netica Error.
2022-04-24 Russell Almond <ralmond@pei>
* configure.ac: Added //. to ${NETICA_VERSION} to strip periods.
2022-04-19 Russell Almond <[email protected]>
* R/LoadFuns.R (.onAttach): Returned CCodeLoaded to this
function, it is referenced in externalptr().
2022-04-15 Russell Almond <[email protected]>
* R/LoadFuns.R (.onLoad): This also fixes the problem with
libnetica.so not getting properly loaded, so pulled that out of
.onLoad().
* src/Makevars.in (PKG_LIBS): Need -Wl,-rpath,${NETICA_LIBPATH} to
get to link properly under Pop_OS. According to https://developer.r-project.org/Blog/public/2019/02/14/staged-install/index.html
I should use \$ORIGIN/../usrlibs (where userlibs=Netica).
Turns out magic formula is '$${ORIGIN}/../Netica'.
2022-04-08 Russell Almond <[email protected]>
* R/Node.R (str.NeticaNode): Added str.NeticaNode to suppress
warnings when running in RStudio.
2021-07-29 Russell Almond <[email protected]>
* R/LoadFuns.R (.onload): Now explicitly calling library.dynam in
.onLoad() so we can load libnetica.so first.
2020-08-08 Russell Almond <ralmond@Cherry>
* R/Continuous.R ("NodeValue<-"): wrapped value in as.numeric as
needs to be real and not integer.
2020-04-16 Russell Almond <ralmond@pei>
* src/Makevars.in (PKG_CFLAGS): Added -DNETICA_VERSION here. I still don't understand autoconf.
* src/Experience.c (NewLearner_rn): Added switch for Ascent/descent
2020-04-16 Russell Almond <ralmond@Cherry>
* configure.ac: Changed compile procedure to (a) use pkg-config
when available and (b) use a NETICA_VERSION flag, as NETICA
doesn't seem to supply this.
2020-03-09 Russell Almond <ralmond@Cherry>
* R/Networks.R ("NetworkName<-"): Same problem, different place.
* R/Node.R ("NodeName<-"): Netica is generating errors when we try
to set a node to its existing name. Trap for that and return
nothing.
2020-01-23 <[email protected]>
* src/Experience.c: There is currently a problem with the enum constant GRADIENT_DESCENT_LEARNING being renamed GRADIENT_ASCENT_LEARNING in Netica 6.07. Need specific config test for this.
2019-12-25 Rusell Almond <ralmond@Cherry>
* R/Experience.R ("NodeExperience<-"): Added ability to set value
to NA. Doesn't work.
* src/Experience.c (RN_GetNodeExperience, RN_SetNodeExperience):
Added NA return if undefined.
2019-11-10 Rusell Almond <ralmond@Cherry>
* R/Experience.R ("NodeExperience<-"): Forced experience value to
be real to prevent c-level error.
2019-10-21 Rusell Almond <ralmond@Cherry>
* R/Node.R ("NodeLevels<-"): Fixed test for levels so that they
now can go in increasing or decreasing order.
2019-08-06 Russell Almond <[email protected]>
* R/Random.R (str.NeticaRNG): Yet more.
* R/Session.R (str.NeticaSession): Same Thing
* R/Networks.R (str.NeticaBN): Sam Ting
* R/Node.R (str.NeticaNode): See below.
* R/Cases.R (str.CaseStream): Added str.XXX methods, so RStudio
won't choke.
2019-07-15 Rusell Almond <ralmond@Cherry>
* R/Edges.R (doSelection): Considering redoing [[ so that it
always refers to deterministic nodes.
(doSelection): Added returnCPT arg to differentiate [[ and [,
([[<-): Added new function to handle deterministic nodes.
([<-): Fixed problem with assuming continuous nodes are deterministic.
* src/Session.c (RN_Session_errors): Changed to return a list of
error message vectors.
2019-04-13 Rusell Almond <ralmond@Cherry>
* R/Cases.R (OpenCaseStream): fixed return value of OpenCaseStream
2019-04-07 Russell Almond <ralmond@Limu>
* R/Edges.R (normalize): Moved Normalize (as well as as.CPA and
as.CPF to CPTtools)
* src/Networks.c (RN_Read_Nets): According to Brent, this should
supress some errors we are getting with mangled visual
information.
2018-12-20 Rusell Almond <ralmond@Cherry>
* R/Continuous.R (NodeExpectedUtils): Fixed the underlying call.
Thanks [email protected].
2018-11-04 Rusell Almond <ralmond@Cherry>
* src/Random.c (RN_FreeRNG): Fixed PROTECT unbalance in RN_FreeRNG.
2018-01-31 Russell G. Almond <ralmond@Limu>
* R/Networks.R (NeticaBN): Fixed bug in show method.
2017-09-10 Russell G. Almond <ralmond@Limu>
* R/Edges.R ("NodeParents<-"): match() forces everything to
char, but as.character() does not correctly use as.character() on
elements of a list. So force names.
2017-09-07 Almond <[email protected]>
* src/Session.c (RN_stop_Session): Finally found bug which
resulted in non-existent error messages.
2017-08-20 Russell G. Almond <ralmond@Limu>
* R/Networks.R (is.element): Added is.element() method as match()
expects a vector as the first argument, I've tweaked is.element to
accept nets in a reasonable way.
* R/Nodes.R (is.element): Ditto.
* R/Session.R (as.character): Added as.character() method so we
can report on this object in error messages.
* R/Network.R (as.character): Ditto.
* R/Node.R (as.character): Ditto.
* R/Cases.R (as.character): Ditto.
* R/Random.R (as.character): Ditto.
2017-08-19 Russell G. Almond <ralmond@Limu>
* R/Edges.R (parseDims, doSelection): Changed parseDims so it now
looks at the frame of the [ or [[ argument. To do this, I needed
to split out a doSelection() function which did most of the work
so the code would not be repeated for [ and [[ arguments.
2017-08-18 Russell G. Almond <ralmond@Limu>
* R/Edges.R (parseDims): I need to add an i & j argument to
parseDims, to get the signatures of [, [[ and [[<- to match the
generic functions.
2017-07-30 Russell G. Almond <ralmond@Limu>
* R/Cases.R (CaseMemoryStream): Changed name from MemoryCaseStream
for consistency.
* R/Session.R: Added RNetica global variable to be the PACKAGE
argument to .Call
* src/Edges.c (RN_MakeCliqueNode): Added Clique node class, and
made dependent on net argument passed in.
* R/Node.R ("NodeName<-"): Fixed to properly updated nodes cache.
* src/Networks.c (RN_NodeNet): Moved this function to networks as
it needs the MakeNet_RRef function which is internal to Networks,
but doen't use any internal Node functions.
* src/Node.c (RN_Delete_Nodes): Now does unregistration.
2017-07-29 Russell G. Almond <ralmond@Limu>
* src/Node.c (RN_NewDiscreteNodes, RN_NewContinuousNodes): Shot
out blanks.
* src/Inference.c (RN_GetEliminationOrder): Fixed RN_AS_RLIST
call.
* src/Edges.c (RN_GetNodeParents, RN_GetRelatedNodes)
(RN_GetNodeChildren): Added back pointer to net to call to
RN_AS_RLIST.
* src/Node.c (RN_AS_RLIST): This now needs a Net arugment.
2017-07-28 Russell G. Almond <ralmond@Limu>
* src/Networks.c (RN_MakeBN, MakeNet_RRef): Now uses internal
constructor.
(RN_New_Nets, RN_Named_Nets, RN_GetNth_Nets, RN_Copy_Nets)
(RN_Read_Nets): Removed blank argument again.
* src/Session.c (RN_SessionMaker): At long last, I've figured out
how to create R6 objects from inside of C code. The constructor
is found using 'getFromNamespace' inside of the Register Symbols
function. This can then be used in a call back via "eval".
2017-07-27 Russell G. Almond <ralmond@Limu>
* src/Node.c (MakeNode_RRef, GetNode_RRef): Added netobj and blank
arguments so that the net can be searched for the reference and
the blank used if the net object was not found.
(RN_NewDiscreteNodes, RN_NewContinuousNodes): Added blanks.
2017-07-20 Russell G. Almond <ralmond@Limu>
* src/Networks.c (MakeNet_RRef): Can't figure out how to create a
new NeticaBN object from within R code. So we will pass in a
blank, and use it if can't find an existing one.
(RN_New_Nets, RN_Named_Nets, RN_GetNth_Nets, RN_Copy_Nets)
(RN_Read_Nets): Needed to add blanks arguments to these files to
pass in blank networks to fill.
2017-07-18 Russell G. Almond <ralmond@Limu>
* R/Random.R (NewNeticaRNG): Added Session Argument.
* src/Random.c (RN_NewRandomGenerator, RN_SetNetRandomGen)
(RN_GenerateRandomCase): Added session argument.
* src/Experience.c (NewLearner_rn, NewCaseset_rn, RN_LearnCPTs):
Added Session Argument.
* R/Cases.R (OpenCaseStream, CaseFileStream, MemoryCaseStream):
Added Session Argument.
* src/Cases.c (RN_CaseFileDelimiter, RN_MissingCode): Added
Session argument.
(RN_WriteFindings, RN_OpenCaseFileStream)
(RN_OpenCaseMemoryStream): Need the session to open the stream.
* R/Cases.R (CaseFileDelimiter, CaseFileMissingCode): Added
Session argument.
2017-07-17 Russell G. Almond <ralmond@Limu>
* src/Networks.c (MakeNet_RRef): Revived this function. It now
creates NetworkBN objects if a reference cannot be found in the
session. This removes the need for the newnets arguments.
2017-07-16 Russell G. Almond <ralmond@Limu>
* R/Networks.R (GetNetworkFileName,NetworkName): Added internal
argument to say whether to used the RC object or the Netica
object.
("NetworkName<-"): Now updates the session object.
* src/Networks.c (RN_New_Nets, RN_Copy_Nets, RN_Read_Nets): Added
handles(newnets) & Session argument. Now
assumes that the network objects are premade in R code.
(RN_Delete_Nets, RN_Named_Nets, RN_GetNth_Nets): Added a session
argument.
* R/Networks.R (Compare.NeticaBN): Changed from Ops to Compare.
Breaks backwards compatability of comparing a single net with a
list.
(GetNamedNetworks, CheckNamedNetworks): Get Named Networks now
works off of the cached objects in the session.
CheckNamedNetworks verifies that Netica knows about the networks.
* R/Session.R (NeticaVersion, ReportErrors, ClearAllErrors): These
are now methods of the session object. Note that the network and
node object delegate them to the containing session object.
2017-07-10 Russell G. Almond <ralmond@Limu>
* R/Session.R: Created new session class.
(getDefaultSession): Added getDefaultSession logic. Not sure this
is the way I want to work it yet.
* src/Session.c (RN_start_Session): Added new session objects.
Moved start/stop operations to this new file.
2017-06-29 Russell G. Almond <ralmond@Limu>
* R/Edges.R (cc): Added new c replacement function for lists of
nodes.
2017-05-25 Russell G. Almond <ralmond@Limu>
* src/Edges.c (RN_AbsorbNodes): Fixed bug in deleting absorbed nodes.
* src/Node.c (RN_Free_Nodelist): Fixed bug in PROTECT/UNPROTECT
count.
2017-05-24 Russell G. Almond <ralmond@Limu>
* R/Node.R ("NodeStates<-"): Added resize switch to control
behavior when input state list length is different from current
length.
* src/Node.c (RN_SetNodeStates): Changed to automatically
add/delete states as needed.
2016-05-04 Almond <[email protected]>
* R/LoadFuns.R (.onAttach, .onLoad): changed to use
assignInMyNamespace.
2015-06-05 Russell G. Almond <ralmond@Limu>
* R/Node.R (NodeUserObj, "NodeUserObj<-"): Added serialized object
storage.
("NetworkNodesInSet<-", RemoveNodeFromSets, AddNodeToSets): Made
node sets more settable.
* R/Networks.R (dputToString, dgetFromString, NetworkUserObj)
("NetworkUserObj<-"): Added serialized object storage.
2015-03-12 Almond <[email protected]>
* src/Cases.c (RN_GetMemoryStreamContents): Fixed null termination
problem.
2015-03-29 Russell G. Almond <ralmond@Limu>
* R/Continuous.R (ewoe, woe): Added
2015-03-10 Russell G. Almond <ralmond@Limu>
* R/Networks.R (as.IDname): Fixed vectorization so that only
affected names would be modified.
2015-03-07 Russell G. Almond <ralmond@Limu>
* R/Random.R (GenerateRandomCase, NetworkSetRNG, WithRNG)
(isNeticaRNGActive, is.NeticaRNG, print.NeticaRNG)
(toString.NeticaRNG, FreeNeticaRNG, NewNeticaRNG): Created
* R/*.R (*): Removed function name from stop statements
(rendundant and not alway correct).
2015-03-04 Russell G. Almond <ralmond@Limu>
* src/Random.c (RNGFree, AddRNGRef, FreeRNGs, RN_isRNGActive)
(RN_NewRandomGenerator, isNeticaRNG, RN_FreeRNG, RN_isRNGActive):
Changed to use lightweight object/weak pointer system, similar to
how Case Streams work.
(RN_SetNetRandomGen, RN_GenerateRandomCase): Seed argument now
accepts both strings and RNG objects.
2015-03-02 Russell G. Almond <ralmond@Limu>
* R/Edges.R (NodeProbs): Fixed a problem with uninitialized prior
nodes.
* R/Networks.R (as.IDname): Added maxlen parameter.
2015-02-25 Russell G. Almond <ralmond@Limu>
* src/Random.c (SetNetRandomGen_bn): Created.
* R/Edges.R (NodeProbs): Fixed a bug with uninitialzed tables.
2015-01-28 Russell G. Almond <ralmond@Limu>
* R/Continuous.R (EquationToTable, "NodeEquation<-")
(NodeEquation): Naive implementation. Not worth spending a lot of
time on these as CPTtools is more flexible.
* src/Continuous.c (RN_GetNodeEquataion, RN_SetNodeEquation)
(RN_EquationToTable): Created as we need them to test
CalcNodeValue.
2015-01-26 Russell G. Almond <ralmond@Limu>
* R/Continuous.R (NodeValue, "NodeValue<-")
("EnterGaussianFinding", "EnterIntervalFinding")
(NodeExpectedValue, NodeExpectedUtils, CalcNodeState)
(CalcNodeValue, MutalInfo, VarianceOfReal): Created
2015-01-25 Russell G. Almond <ralmond@Limu>
* src/Continuous.c (RN_GetVarianceOfReal, RN_GetMutualInfo)
(RN_CalcNodeValue, RN_CalcNodeState): Created
2015-01-24 Russell G. Almond <ralmond@Limu>
* src/Continuous.c (RN_GetNodeValue, RN_SetNodeValue)
(RN_SetNodeGaussian, RN_SetNodeInterval)
(RN_GetNodeExpectedValue, RN_GetNodeExpectedUtils): Created.
2013-08-01 Russell G. Almond <ralmond@Limu>
* R/LoadFuns.R (StartNetica): Bug fix from Nicole Farina
2013-07-26 Russell G. Almond <ralmond@Limu>
* R/Experience.R (LearnCPTs, LearnCases): Added
2013-07-24 Russell G. Almond <ralmond@Limu>
* src/Experience.c (RN_LearnCPTs, NewCaseset_rn, NewLearner_rn)
(RN_LearnCaseStream): Added.
2013-07-17 Russell G. Almond <ralmond@Limu>
* R/Cases.R (write.CaseFile): Factored this code out, as it is
likely quite interesting.
2013-07-16 Russell G. Almond <ralmond@Limu>
* R/Cases.R (OpenCaseStream): Split OpenCaseStream into separate
functions for Memory and File Case Streams
2013-07-14 Russell G. Almond <ralmond@Limu>
* src/Cases.c (RN_OpenCaseFileStream): Modified the weak reference
system so that the stream object is the value, so we can properly
mark the stream object as closed.
* R/Cases.R (ReadFindings): Added trap for Netica
ReadNetFindings2_bn FIRST/NEXT bug.
2013-07-07 Russell G. Almond <ralmond@Limu>
* src/Cases.c (RN_WriteFindingsToFile): Renamed to WriteFindings
(RN_WriteFindings): Merged functionality of writing to file and
stream.
2013-07-05 Russell G. Almond <ralmond@Limu>
* src/Cases.c (CaseStreamClose, AddStreamRef)
(CloseOpenCaseStreams, RN_isCaseStreamActive)
(RN_OpenCaseFileStream, RN_CloseCaseStream): Added rough code.
Still need to work out position mechanism.
2013-06-01 Russell G. Almond <ralmond@Limu>
* R/Cases.R (CaseFileDelimiter, CaseFileMissingCode)
(WriteFindingsToFile): Added.
* R/Experience.R (NodeExperience, "NodeExperience<-", FadeCPT)
(LearnFindings): Added.
2013-05-07 Russell G. Almond <ralmond@Limu>
* R/Networks.R (as.IDname): Added.
2013-01-12 Russell G. Almond <ralmond@Limu>
* man/RNetica.Rd: Added trademarks.
2013-01-04 <ralmond@ADVENT>
* R/Edges.R ("[<-.NeticaNode", parseDims, "[.NeticaNode"): added
env argument to parseDims to fix problem with this not getting
called right inside a function.
2012-11-21 <ralmond@TECH-PC>
* src/Edges.c (RN_SetNodeParents): Fixed problem with 32 bit
version related to parentlist getting overwritten during
operation.
* src/Registration.c (RN_report_errors): Fixed so that this
actually respects number of errors. Also, Fixed in calling
program to make default number more like 10.
2012-11-19 Russell G. Almond <ralmond@Limu>
* src/Networks.c (RN_Named_Nets, RN_GetNth_Nets, isNeticaBN):
Added a check for corrupted references which will hopefully
prevent a similar problem at the node level.
* src/Node.c (isNeticaNode, GetNode_RRef): Added a check to the
node reference function which will hopefully fix bogus references.
2012-11-18 Russell G. Almond <ralmond@Limu>
* R/Node.R (NetworkFindNode): Fixed names of return value.
* R/Edges.R (AdjoinNetwork): added a fix for when new nodes are
renamed.
2012-11-03 Russell G. Almond <ralmond@Limu>
* R/Node.R (NetworkNodesInSet): Changed return to be a true list
rather than a pairlist, as the latter was causing problems.
* R/Edges.R (AdjoinNetwork): Moved this function here.
(NetworkFootprint): Added this function.
* R/Networks.R (AdjoinNetwork): Added this function, in
preparation for EMSM test.
2012-10-29 Russell G. Almond <ralmond@Limu>
* R/Inference.R (JunctionTreeReport, "EliminationOrder<-")
(EliminationOrder, NetworkCompiledSize): Created.
* src/Inference.c (RN_SizeCompiledNetwork)
(RN_GetEliminationOrder, RN_SetEliminationOrder)
(RN_JunctionTreeReport, RN_SplitReport): SplitReport is an
auxiliary for JunctionTreeReport which splits report into lines.
2012-10-28 Russell G. Almond <ralmond@Limu>
* src/Inference.c (RN_NextStates, RN_JointProbability): Created.
(RN_MostProbableConfig, RN_FindingProbability): Created.
* R/Edges.R (MakeCliqueNode, is.CliqueNode, GetClique): Created.
* src/Edges.c (RN_MakeCliqueNode): Created patterned after
FormCliqueWith from NeticaEx.c
* src/Registration.c (RN_Define_Symbols, RN_Free_Symbols): Added
new classes and properties for clique nodes.
2012-10-27 Russell G. Almond <ralmond@Limu>
* R/Node.R (NetworkNodeSetColor): Changed return value to return
set color as a hex string.
* src/Node.c (RN_NetworkNodeSetColor): Changed return value to
return set color as integer.
* R/Node.R (NetworkNodeSets, NodeSets, "NodeSets<-")
(NetworkNodesInSet, NetworkSetPriority, NetworkNodeSetColor):
Created.
* src/Node.c (RN_SetNodeSets, RN_NetworkNodesInSet)
(RN_NetworkSetPriority, RN_NetworkNodeSetColor)
(RN_NetworkNodeGetColor): Created.
2012-10-26 Russell G. Almond <ralmond@Limu>
* src/Node.c (RN_NetworkNodesSets, RN_ParseNodeString)
(RN_GetNodeSets): Added these functions
2012-10-20 Russell G. Almond <ralmond@Limu>
* R/Edges.R (is.CPF, as.CPF, is.CPA, as.CPA, parseDims)
(integerIndex, selectionToConfig, "[.NeticaNode")
("[[.NeticaNode", "[<-.NeticaNode"): node[] redesign. See
Extract.NeticaNode.Rd.
* src/Edges.c (RN_GetNodeFuncState, RN_SetNodeFuncState)
(RN_GetNodeFuncReal, RN_SetNodeFuncReal): Added as part of the
node[] redesign.
2012-10-14 Russell G. Almond <ralmond@Limu>
* R/Edges.R (is.CPF, as.CPF, is.CPA, as.CPA): Reworked in
preparation for node[] Redesign.
2012-10-08 Russell G. Almond <ralmond@Limu>
* R/Edges.R (as.CPF): Added.
2012-10-05 Russell G. Almond <ralmond@Limu>
* R/Inference.R (EnterNegativeFinding, "NodeFinding<-")
(NodeFinding): Fixed problem with 0-based coding instead of
1-based coding, and with real rather than integer value setting.
* src/Inference.c (RN_SetNodeLikelihood, RN_GetNodeLikelihood):
Added functions.
* R/Inference.R (NodeLikelihood, "NodeLikelihood<-"): Added
functions.
2012-10-02 Russell G. Almond <ralmond@Limu>
* R/Inference.R (CompileNet, UncompileNet, RetractNetFindings)
(NodeFinding, "NodeFinding<-", EnterNegativeFinding)
(IsBeliefUpdated, NodeBeliefs):
* src/Inference.c (RN_CompileNet, RN_UncompileNet)
(RN_RetractNetFindings, RN_GetNodeFinding)
(RN_RetractNodeFinding, RN_SetNodeFinding, RN_SetNodeFindingNot)
(RN_IsBeliefUpdated, RN_GetNodeBeliefs): Wrote these functions
* R/Edges.R (DeleteNodeTable, HasNodeTable, IsNodeDeterministic):
Added. Preliminary test complete. Note cannot currently set
incomplete table.
2012-10-01 Russell G. Almond <ralmond@Limu>
* src/Edges.c (RN_IsNodeDeterministic, RN_HasNodeTable)
(RN_DeleteNodeTable): Addes these table information functions.
* R/Edges.R (pStates): Added this function for faster conversions.
(nextconfig): Changed to use -1 as the start (as 0 is a legal
value with just one parent).
(normCPT): Added this function, as we often need it.
(parseDims): Started this. Figured out the substitute(list(...))
trick which captures unparsed argument list.
* src/Edges.c (RN_AS_PROB_BN, RN_AS_PROBSXP): Modified to convert
NAs to UNDEFINED_DBL and vise versa.
2012-09-26 Russell G. Almond <ralmond@Limu>
* src/Edges.c (RN_SetNodeInputNames, RN_GetNodeInputNames)
(RN_GetRelatedNodes, RN_InNodeRelated, RN_AbsorbNodes)
(RN_SetNodeParents): Added.
* src/Node.c (RN_Copy_Nodes): Fixed issue with AS_NODELIST, note
untested.
* src/Edges.c (RN_AddLink, RN_DeleteLink, RN_GetNodeParents)
(RN_GetNodeChildren): Added
* src/Node.c (RN_AS_NODELIST): Changed so that will still NULL in
the NODELIST for locations corresponding to NULLs in the R list.
2012-09-25 Russell G. Almond <ralmond@Limu>
* R/Node.R ("NodeLevels<-", NodeLevels): Created functions.
* src/Node.c (RN_GetNodeLevelsDiscrete)
(RN_GetNodeLevelsContinuous, RN_SetNodeLevels): Added linking
code. Separate getter methods because one returns named object
the other does not.
* src/Registration.c (RN_RnumToNnum, RN_NnumToRnum): Added
conversion functions to take care of converting infinities.
2012-09-24 Russell G. Almond <ralmond@Limu>
* R/Node.R (NodeNumStates, NodeStates, NodeStates<-)
(NodeStateTitles, NodeStateTitles<-, NodeStateDescriptions)
(NodeStateDescriptions<-): Added but not tested.
2012-09-23 Russell G. Almond <ralmond@Limu>
* src/Registration.c (RN_Define_Symbols, RN_Free_Symbols): Added
NodeKinds, and XYnames vectors.
* R/Node.R (NodeKind, NodeKind<-, NodeVisStyle, NodeVisStyle<-)
(NodeVisPos, NodeVisPos): Added and tested.
2012-09-22 Russell G. Almond <ralmond@Limu>
* R/Networks.R (ReadNetworks, WriteNetworks): Changed these
functions so that they tag the return object with the filename.
Thus, net <- ReadNetworks(net) should restore a network after an R
session is exited.
2012-09-20 Russell G. Almond <ralmond@Limu>
* DESCRIPTION (Version): Version 0.1-1 -- First experiments, used
string IDs.
Version 0.1-2 -- Second experiment, added backpointers for
Networks
Version 0.1-3 -- Added .onLoad methods, complete Network only.
Version 0.1-4 -- Preliminary Node Functions