The Single-Face Ideal Orientation Problem in Planar Graphs
We consider the ideal orientation problem in planar graphs. In this problem, we are given an undirected graph $G$ with positive edge lengths and $k$ pairs of distinct vertices $(s_1, t_1), \dots, (s_k, t_k)$ called terminals, and we want to assign an orientation to each edge such that for all $i$ the distance from $s_i$ to $t_i$ is preserved or report that no such orientation exists. We show that the problem is NP-hard in planar graphs. On the other hand, we show that the problem is polynomial-time solvable in planar graphs when $k$ is fixed, the vertices $s_1, t_1, \dots, s_k, t_k$ are all on the same face, and no two of terminal pairs cross (a pair $(s_i, t_i)$ crosses $(s_j, t_j)$ if the cyclic order of the vertices is $s_i,s_j,t_i,t_j$). For serial instances, we give a simpler and faster algorithm running in $O(n \log n)$ time, even if $k$ is part of the input. (An instance is serial if the terminals appear in cyclic order $u_1, v_1, \dots, u_k, v_k$, where for each $i$ we have either $(u_i, v_i) = (s_i, t_i)$ or $(u_i, v_i) = (t_i, s_i)$.) Finally, we consider a generalization of the problem in which the sum of the distances from $s_i$ to $t_i$ is to be minimized; in this case we give an algorithm for serial instances running in $O(kn^5)$ time.