Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FEATURE] MultivaluedDecisionDiagram : Making the compact method optionnal #1089

Open
ib31 opened this issue Mar 18, 2024 · 0 comments
Open

Comments

@ib31
Copy link

ib31 commented Mar 18, 2024

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 mandatory compact() method in the MultivaluedDecisionDiagram 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 method init(int[][] TRANSITIONS) but without calling the method compact(). Thus the call for compact() 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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant