Changelog
Source:NEWS.md
gips 1.2.2.9000
Performance gain
There was a significant improvement in the speed of calculation. Details in the table below for 1000 random permutations of a given size:
permutation size | 30 | 50 | 100 | 200 | 300 |
---|---|---|---|---|---|
old computation time | 0.09 s | 0.10 s | 0.25 s | ~10 s | ~25 s |
new computation time | 0.07 s | 0.08 s | 0.10 s | 0.17 s | ~0.20 s |
Update to functions
-
plot.gips()
can gettype = "n0"
, which will plot the change ofn0
along the “MH” optimization. Handy for deciding of burn-in time; -
find_MAP(optimizer = "MH")
tracks then0
along the optimization; -
summary.gips()
calculates Likelihood-Ratio test.
gips 1.2.2
Bugfix:
-
logLik.gips()
will return an object of classlogLik
; - Better Vignettes titles.
gips 1.2.0
CRAN release: 2023-08-07
Update to functions
-
gips()
has a new defaultD_matrix = mean(diag(S)) * diag(p)
; -
summary.gips()
calculatesAIC
,BIC
, andn_parameters
(number of free parameters in the covariance matrix); -
get_probabilities_from_gips()
will return a sorted vector; -
compare_posteriories_of_perms()
andcompare_log_posteriories_of_perms()
have a new parameterdigits
; - Everywhere a permutation was expected, the
gips
object can now be passed and interpreted as a permutation. Those are:-
perm
ingips()
,project_matrix()
,prepare_orthogonal_matrix()
,get_structure_constants()
,calculate_gamma_function()
; -
perm1
andperm2
incompare_posteriories_of_perms()
,compare_log_posteriories_of_perms()
; -
x
ingips_perm()
;
-
-
plot.gips()
can gettype = "MLE"
, which is an alias fortype = "heatmap"
; -
find_MAP(optimizer = "BF")
is 3 times faster; -
find_MAP(optimizer = "BF")
is default forperm_size <= 9
.
Bugfixes:
- Sometimes,
post_probabilities
underflows to 0. This is appropriately validated now; -
NaN
s should not occur infind_MAP()
forD_matrix <- diag(ncol(S)) * d
when1000 < d < 1e300
; - When
NaN
s do occur infind_MAP()
, they will throw an error (used to show a warning); -
Inf
better handled inprint.gips()
; -
print.*()
functions will print\n
in the end; - Slightly different punctuation in
print.gips()
; - Tremendous vignettes and documentation improvements;
- Proper testing of examples;
-
delta
parameter ofgips()
has to be bigger than1
. We used to restrict it to bigger than2
; -
project_matrix()
shows a warning when the non-positive-semi-definite matrix is passed as anS
argument; -
project_matrix()
preservescolnames()
andrownames()
of a matrix; -
D_matrix
is checked for containing anyNaN
orInf
values; - Absurdly long structure constants vectors may overflow an
integer
. Now we usedouble
; -
compare_log_posteriories_of_perms()
andcompare_posteriories_of_perms()
show an error when given two incomparablegips
objects (with different parameters).