← Back to team overview

opencog-dev team mailing list archive

Re: importance spreading algorithm

 

> On an implementation detail - if I'm going to be generating Inverse
> matrices, has anyone had to do anything similar in Novamente in the
> past? i.e. is there existing code, or should I implement it from
> scratch?

Well a basic approach is

  gsl_linalg_LU_decomp()
  gsl_linalg_LU_invert()

see

http://gslwrap.sourceforge.net/classgsl_1_1matrix.html

For large AtomTables, we might need some special code for inversion
of large sparse matrices.  A popular approach is conjugate gradients,
see

http://en.wikipedia.org/wiki/Conjugate_gradient

http://www.gnu.org/software/gsl/manual/html_node/Multimin-Algorithms.html

But for initial experiments on small AT's, it's probably better to use an exact
algorithm and avoid introducing errors that might confuse initial testing...

[My PhD was in numerical analysis ... long, long ago ... but some of it still
comes back to haunt me now and then...]

ben

ben



References