From Newsgroup: comp.lang.prolog
We recently presented a fast constraint solver
termed Railgun CLP(FD) that modelled attributed
variables simply via rCy$ATTRrCO/2 compounds. We
already went through an iteration which allowed
(#\=)/2 constraints. In this instalment we
present some further progress. In particular we
intoduce a discount(C) = 1/k heuristic.
We demonstrated an additional scoring of variables
among the same degree to improve the static variable
ordering (SVO). It can give a 100x times speed up
in a magic square example. Putting Dogelog Player
on equal foot with SWI and ECLiPSe, while recent
versions of Scryer and Trealla were still 10x-30x
times slower.
See also:
Supersonic FF for Railgun CLP(FD)
https://qiita.com/j4n_bur53/items/0d1334f1f4c2234f3f47
Mild Shock schrieb:
We recently presented a fast constraint solver
termed Railgun CLP(FD) that modelled attributed
variables simply via rCy$ATTRrCO/2 compounds and could
deal with integer dif/2 constraints. In this
instalment we allow (#\=)2 constraints and demonstrate
that it can be ported to SWI-Prolog.
Using polyfill for rCy$SEQrCO/2 from Dogelog Player,
we observed that running Railgun CLP(FD) inside
SWI-Prolog gives a 2rCo3x speed-up for the Queens
example, on both 32-bit and 64-bit. On the other
hand the price tag for big integer flexibility
seems to be a factor 35x slow down.
See also:
Porting Railgun CLP(FD) to SWI-Prolog
https://medium.com/2989/e9f2ef4e6878
--- Synchronet 3.21a-Linux NewsLink 1.2