Graph utility: "At Most N Edges"
Post graspy + topologic merger, we have a request to make it easy to turn a large graph into a smaller graph based on edge cuts. The idea is that a user may have a graph with 10 million edges and want to work with at most 1m edges, so we should be able to do that automatically on their behalf
based on edge cuts
like just by weight, or by any other properties of the network? reason I ask is I saw some math voodoo paper about "sparsifying" networks (adjacency matrices) and keeping the spectral structure as similar as possible
I know for sure we want to do weight, but I guarantee that @bryantower is going to be interested in hearing more about the other options
The specific feature that I would like to see is the one that Dwayne mentioned. I want at most X total edges, please cut the minimum number of edges to make that happen, by removing the lowest weight edges first.
well, an obvious way is : turn_to_edgelist -> sort -> head(X), which is O(V^2 + E log(E)) i think (V^2 comes from converting to edgelist if you are given adjacency matrix, so it's there, but it is fast), but we might be able to do better than that..