2

我正在开发一种用于二元决策图的教学工具,其中还有一个变量重新排序的功能。任何人都可以建议一个合适的库来实现变量重新排序,同时构建树或某种实现相同的算法吗?

如果我可以使用像 pyeda、buDDy 或 pycudd 这样的库,那将是最好的,因为我已经熟悉这些库。

如果您需要任何澄清,谢谢并发表评论。

4

2 回答 2

2

你看过Ioannis Filippidis的dd吗?

我是pyeda的作者。在 Python 中实现 ROBDD 绝对很有趣,并且可能具有一些教育价值,但它绝对不会执行任何自动变量重新排序,所以如果这是一个要求,我建议查看dd或列表中的其他内容。

于 2017-07-01T22:50:35.833 回答
1

我在马里博尔大学的小组正在制作 BDD Scout ( http://biddy.meolic.com/ ),这是一种 BDD 可视化工具。目前,支持补边的 ROBDD 和补边的 0-sup-BDD。支持转换。它们都支持重新排序(即变量交换和筛选算法)。BDD Scout 在 GNU/Linux 和 MS Windows 上工作(源和二进制包可用)。我们希望我们的工具有朝一日能成为一个好的教学工具,但我们需要一些反馈来改进它。除了鲁棒性之外,功能集是需要改进的最关键部分。如果您有时间尝试,请不要犹豫,给我们任何意见和问题。

于 2017-07-31T08:06:48.393 回答