Abstract
We study the problem of orienting the edges of a graph such that the minimum over all the vertices of the absolute difference between the outdegree and the indegree of a vertex is maximized. We call this minimum the imbalance of the orientation, i.e. the higher it gets, the more imbalanced the orientation is. The studied problem is denoted by \({{\mathrm{\textsc {MaxIm}}}}\). We first characterize graphs for which the optimal objective value of \({{\mathrm{\textsc {MaxIm}}}}\) is zero. Next we show that \({{\mathrm{\textsc {MaxIm}}}}\) is generally NP-hard and cannot be approximated within a ratio of \(\frac{1}{2}+\varepsilon \) for any constant \(\varepsilon >0\) in polynomial time unless \(\texttt {P}=\texttt {NP}\) even if the minimum degree of the graph \(\delta \) equals 2. Then we describe a polynomial-time approximation algorithm whose ratio is almost equal to \(\frac{1}{2}\). An exact polynomial-time algorithm is also derived for cacti. Finally, two mixed integer linear programming formulations are presented. Several valid inequalities are exhibited with the related separation algorithms. The performance of the strengthened formulations is assessed through several numerical experiments.
Similar content being viewed by others
References
Asahiro Y, Miyano E, Ono H, Zenmyo K (2007) Approximation algorithms for the graph orientation minimizing the maximum weighted outdegree. In: Proceedings of the 3rd international conference on algorithmic aspects in information and management (AAIM2007). LNCS 4508, pp 167–177
Asahiro Y, Miyano E, Ono H (2008) Graph classes and the complexity of the graph orientation minimizing the maximum weighted outdegree. In: Proceedings of the fourteenth computing: the Australasian theory symposium (CATS2008), Wollongong, NSW, Australia
Asahiro Y, Jansson J, Miyano E, Ono H (2014) Degree constrained graph orientation: maximum satisfaction and minimum violation. WAOA 2013, LNCS 8447, pp 24–36
Bang-Jensen J, Gutin G (2009) Orientations of graphs and digraphs in digraphs: theory, algorithms and applications, 2nd edn. Springer, Berlin
Ben-Ameur W, Hadji M (2010) Designing Steiner networks with unicyclic connected components: an easy problem. SIAM J Discrete Math 24(4):1541–1557
Biedl T, Chan T, Ganjali Y, Hajiaghayi M, Wood DR (2005) Balanced vertex-orderings of graphs. Discrete Appl Math 48(1):27–48
Chrobak M, Eppstein D (1991) Planar orientations with low out-degree and compaction of adjacency matrices. Theor Comput Sci 86:243–266
Chung F, Garey M, Tarjan R (1985) Strongly connected orientations of mixed multigraphs. Networks 15:477–484
Ch\(\acute{{\rm v}}\)atal V, Thomassen C (1978) Distances in orientation of graphs. J Comb Theory Ser B 24:61–75
Degraaf M, Schrijver A (1994) Grid minors of graphs on the torus. J Comb Theory Ser B 61:57–62
Diestel R (2010) Graph theory, 4th edn. Springer, Berlin
Fomin F, Matamala M, Rapaport I (2004) Complexity of approximating the oriented diameter of chordal graphs. J Graph Theory 45(4):255–269
Ford LR, Fulkerson DR (1962) Flows in networks. Princeton University Press, Princeton
Frank A, Gyárfás A (1976) How to orient the edges of a graph? Colloq Math Soc János Bolyai 18:353–364
Harary F, Krarup J, Schwenk A (1971) Graphs suppressible to an edge. Can Math Bull 15:201–204
Edmonds J, Johnson EL (1973) Matching, Euler tours and the Chinese postman problem. Math Program 5:88–124
Kára J, Kratochvíl J, Wood DR (2005) On the complexity of the balanced vertex ordering problem. In: Proceedings of COCOON2005. LNCS 3595, pp 849–858
Landau HG (1953) On dominance relations and the structure of animal societies III. The condition for a score structure. Bull Math Biophys 15:143–148
Mubayi D, Will TG, West DB (2001) Realizing degree imbalances in directed graphs. Discrete Math 239(173):147–153
Nash-Williams C (1960) On orientations, connectivity and odd vertex pairings in finite graphs. Can J Math 12:555–567
Robbins H (1939) A theorem on graphs with an application to a problem of traffic control. Am Math Mon 46:281–283
Schaefer TJ (1978) The complexity of satisfiability problems. In: Proceedings of the 10th annual ACM symposium on theory of computing, pp 216–226
Acknowledgements
The authors wish to thank the associate editor and the anonymous referees for many valuable comments and suggestions that have led to a substantially improved paper.
Author information
Authors and Affiliations
Corresponding author
Appendix 1: Proof of Lemma 6
Appendix 1: Proof of Lemma 6
Let \(\varphi \) be a not-all-equal at most 3-SAT formula with n variables \(\{x_1,\ldots ,x_n\}\) and m clauses \(\{c_1,\ldots ,c_m\}\) and for all \(i\in \llbracket 1,n\rrbracket \), let \(k_i\in \mathbb {N}\) be the number of occurences of \(x_i\) in \(\varphi \). We assume that there is at least one variable \(x_i\) that has at least 4 occurences in \(\varphi \) (otherwise \(\varphi \) is already a not-all-equal at most 3-SAT(3V) formula) and we will build from \(\varphi \) a not-all-equal at most 3-SAT(3V) \(\varphi '\) such that \(\varphi \) and \(\varphi '\) are equisatisfiable as follows.
-
For all \(i\in \llbracket 1,n\rrbracket \), if \(k_i\ge 4\) then we introduce \(k_i\) new variables \(\{x_i^1,\ldots ,x_i^{k_i}\}\) and for \(l\in \llbracket 1,k_i\rrbracket \) we replace the l-th occurence of \(x_i\) in \(\varphi \) with \(x_i^l\).
-
For all \(i\in \llbracket 1,n\rrbracket \), if \(k_i\ge 4\) then we add \(k_i\) new clauses \(\{c_{x_i}^1,\ldots ,c_{x_i}^{k_i}\}\) where for \(l\in \llbracket 1,k_i-1\rrbracket \), \(c_{x_i}^l=(x_i^l\vee \lnot x_i^{l+1})\) and \(c_{x_i}^l=(x_i^l\vee \lnot x_i^1)\).
Suppose there exists an assignment \(v:\{x_1,\ldots ,x_n\}\rightarrow \{{{\mathrm{{\text {TRUE}}}}},{{\mathrm{{\text {FALSE}}}}}\}\) of \(x_1,\ldots ,x_n\) satisfying \(\varphi \). Then
is an assignment of the variables \(x_i\) and \(x_i^l\) satisfying \(\varphi '\) for
-
\(\forall j\in \llbracket 1,m\rrbracket \), the values of the literals of \(c_j\) w.r.t. v and \(v'\) are piecewise equal so \(v'(c_j)=v(c_j)={{\mathrm{{\text {TRUE}}}}}\) and \(v'\) is not-all-equal for \(c_j\) as well as v is;
-
\(\forall i\in \llbracket 1,n\rrbracket \text { s.t. }k_i\ge 4\), \(\forall l\in \llbracket 1,k_i-1\rrbracket \), \(v'(x_i^l)=v'(x_i^{l+1})=v(x_i)\) and \(v'(x_i^{k_i})=v'(x_i^{1})=v(x_i)\) so we directly have \(\forall l\in \llbracket 1,k_i-1\rrbracket \), \(v'(c_{x_i}^l)={{\mathrm{{\text {TRUE}}}}}\) and \(v'(c_{x_i}^{k_i})={{\mathrm{{\text {TRUE}}}}}\) and \(v'\) is not-all-equal for each of these clauses since they all consist of two literals having opposite values w.r.t. \(v'\).
As an example, for a formula
where \(x_1\) occurs five times and \(x_3\) four so we add nine new variables \(x_1^1\), \(x_1^2\), \(x_1^3\), \(x_1^4\), \(x_1^5\), \(x_3^1\), \(x_3^2\), \(x_3^3\) and \(x_3^4\) and nine new clauses:
Now suppose there exists an assignment \(v'\) of the \(x_i\) and \(x_i^l\) satisfying \(\varphi '\) and let \(i\in \llbracket 1,n\rrbracket \) such that \(k_i \ge 4\). If we take a look at the clauses \(c_{x_i}^1,\ldots ,c_{x_i}^{k_i}\), we notice that if \(v'(x_i^1)={{\mathrm{{\text {FALSE}}}}}\) then for \(c_{x_i}^1\) to be satisfied, \(v'(\lnot x_i^2)={{\mathrm{{\text {TRUE}}}}}\), i.e. \(v'(x_i^2)={{\mathrm{{\text {FALSE}}}}}\), then for \(c_{x_i}^2\) to be satisfied, \(v'(\lnot x_i^3)={{\mathrm{{\text {TRUE}}}}}\) ...etc. Repeating this argument, we obtain that if \(v'(x_i^1)={{\mathrm{{\text {FALSE}}}}}\) then \(v'(x_i^1)=v'(x_i^2)=\cdots =v'(x_i^{k_i})={{\mathrm{{\text {FALSE}}}}}\). Similarly, if \(v'(x_i^{k_i})={{\mathrm{{\text {TRUE}}}}}\) then for \(c_{x_i}^{k_i}\) to be satisfied, \(v'(\lnot x_i^{k_i-1})={{\mathrm{{\text {FALSE}}}}}\), i.e. \(v'(x_i^{k_i-1})={{\mathrm{{\text {TRUE}}}}}\), then for \(c_{x_i}^{k_i-1}\) to be satisfied, \(v'(\lnot x_i^{k_i-2})={{\mathrm{{\text {FALSE}}}}}\) ...etc. Hence if \(v'(x_i^{k_i})={{\mathrm{{\text {TRUE}}}}}\) then \(v'(x_i^{k_i})=v'(x_i^{k_i-1})=\cdots =v'(x_i^1)={{\mathrm{{\text {TRUE}}}}}\). This yields that
Hence for all \(i\in \llbracket 1,n\rrbracket \) such that \(k_i\ge 4\), we can replace \(x_i^1,\ldots ,x_i^{k_i}\) by a unique variable \(x_i\) and doing so the clauses \(c_{x_i}^1,\ldots ,c_{x_i}^{k_i}\) become trivial and can be removed and only \(\varphi \) remains. So the following assignment of \(x_1,\ldots ,x_n\):
satisfies \(\varphi \). We have just shown that \(\varphi \) and \(\varphi '\) are equisatisfiable.
Rights and permissions
About this article
Cite this article
Ben-Ameur, W., Glorieux, A. & Neto, J. On the most imbalanced orientation of a graph. J Comb Optim 36, 637–669 (2018). https://doi.org/10.1007/s10878-017-0117-1
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10878-017-0117-1