我正在研究二元决策图的教学工具,其中还有一个可变重新排序的功能。任何人都可以建议一个合适的库,在构建树或实现相同的算法时实现变量重新排序吗?
最好是我可以使用像pyeda,buDDy或pycudd这样的库,因为我已经熟悉这些库了。
如果您需要任何澄清,请表示感谢和评论。
答案 0 :(得分:2)
你看过Ioannis Filippidis的dd吗?
我是pyeda的作者。在Python中实现ROBDD绝对有趣,并且可能具有一定的教育价值,但它肯定不会进行任何自动变量重新排序,所以如果这是一个要求,我建议您查看dd或列表中的其他内容
答案 1 :(得分:1)
我在马里博尔大学的小组正在制作BDD Scout(http://biddy.meolic.com/),这是一种可视化BDD的工具。目前,支持具有补充边缘的ROBDD和具有补充边缘的0-sup-BDD。转换支持。对它们两者都支持重新排序(即可变交换和筛选算法)。 BDD Scout在GNU / Linux上运行MS Windows(源代码和二进制包可用)。我们希望有一天我们的工具成为一个很好的教学工具,但我们需要一些反馈来改进它。除了鲁棒性之外,功能集是最重要的改进部分。如果您有时间尝试,请不要犹豫,给我们任何意见和问题。