BDD Variable Reordering via Parallel Slave Distribution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The size of a Binary Decision Diagram (BDD) varies significantly with variable order changes, making it computationally expensive to find the optimal variable order that minimizes the number of decision nodes, as there are n! possible order permutations for a Boolean function with n variables.
Innovation Solution
A method is introduced where a master computing device selects k variable orders and distributes them among slave devices, which determine local best orders by swapping variables within ordered sets, with the global best order chosen based on the smallest BDD size among these local orders.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Manufacturing precision
If all possible variable order permutations are tested to find the optimal variable order, then the BDD size can be minimized, but the computational cost becomes prohibitively expensive
Solution Approach 1:
The patent segments the complete search space of n! variable order permutations into multiple groups, where each group contains a representative subset of orderings. Instead of evaluating all possible permutations, the method divides the problem into manageable segments (groups of variable orders) that can be processed independently and in parallel, significantly reducing the total computational effort while still finding near-optimal or optimal variable orderings for BDD minimization.
2Loss of time
If the number of variable orders to be evaluated is reduced to decrease computational cost, then the time required is reduced, but the quality of the optimal variable order may deteriorate
Solution Approach 1:
The patent applies preliminary action by pre-defining structured groups of variable orders based on systematic patterns (such as lexicographic ordering, reverse ordering, and intermediate orderings) before the actual BDD evaluation begins. These pre-constructed groups ensure coverage of diverse ordering strategies without requiring exhaustive search, allowing the method to quickly evaluate representative orderings and achieve good optimization results in reduced time.
Solution Approach 2:
The method changes the parameter of variable order evaluation by transitioning from evaluating individual permutations to evaluating structured groups of orderings. By parameterizing the search space into manageable groups with controlled characteristics, the approach maintains solution quality while significantly reducing the evaluation burden and computation time required.
Data Source
AI summary
In one embodiment, a first computing device selects k first variable orders for a Binary Decision Diagram (BDD) representing a function having n variables, where n≧4 and k≧2. The first computing device distributes the k first variable orders among a plurality of second computing devices. For each of the k first variable orders distributed to one of the second computing devices, the first computing device receives, from the one second computing device, a local best variable order among the first variable order and one or more second variable orders derived from the first variable order. The first computing device determines a global best variable order for the BDD among all local best variable orders received from the second computing devices.


