Closed ib31 closed 5 months ago
What you are looking for is to totally disable compaction? I suppose I can change the boolean parameter to an int (0: no compaction, 1: compact once, otherwise compact after each tuple addition), what do you think?
Yes please it would be great !
Additionally, i can give you the model (variables and transitions array) that makes this method run endlessly.
I'm currently working on utilizing the
MultivaluedDecisionDiagram
class to handle an MDD I've constructed through knowledge compilation. This MDD is quite large, and I've already applied heuristics to minimize its size. However, I've encountered an issue with the mandatorycompact()
method in theMultivaluedDecisionDiagram
class. This method for detecting and removing isomorphisms seems to have exponential time complexity, which becomes problematic for the largest instances, leading to out of memory errors.Do you think it is possible to have a constructor to handle mdds as it is instead of trying to
compact()
them? It would call the methodinit(int[][] TRANSITIONS)
but without calling the methodcompact()
. Thus the call forcompact()
would be optionnal.So far i've tried this on my local sources of choco-solver and it works for my large instances of MDD.