The goal of METIS is to partition a network in such a way that the number of cut edges is minimized. If edge weights are set, it minimizes the sum of the weights.
You can also explicitly assign node weights (multiple of them) that constrain the partitioning problem. Additionally, there is a tolerance factor regarding the constraints in which the results are allowed to lie.
See: https://www.lrz.de/services/software/mathematik/metis/metis_5_0.pdf
This PR introduces new partitioning options to qsim. The struct MetisOptions holds them. It consists of
vertex_weight which holds predefined weight options
edge_weight which can be turned on to use capacity as edge weight
imbalance_factor which is the allowed relative weight difference in comparison to equal distribution of weight among the partitions
The goal of METIS is to partition a network in such a way that the number of cut edges is minimized. If edge weights are set, it minimizes the sum of the weights. You can also explicitly assign node weights (multiple of them) that constrain the partitioning problem. Additionally, there is a tolerance factor regarding the constraints in which the results are allowed to lie. See: https://www.lrz.de/services/software/mathematik/metis/metis_5_0.pdf
This PR introduces new partitioning options to qsim. The struct
MetisOptions
holds them. It consists ofvertex_weight
which holds predefined weight optionsedge_weight
which can be turned on to use capacity as edge weightimbalance_factor
which is the allowed relative weight difference in comparison to equal distribution of weight among the partitions