The following algorithm problem occurred to me while drawing a graph for something unrelated:
We have a plane drawing of a bipartite graph, with the disjoint sets arranged in columns as shown. How can we rearrange the nodes within each column so that the number of edge crossings is minimized? I know this problem is NP-hard for general graphs (link), but is there some trick considering that the graph is bipartite?
As a follow-up, what if there is a third column w, which only has edges to v? Or further?