Skip to main content
Log in

On the most imbalanced orientation of a graph

  • Published:
Journal of Combinatorial Optimization Aims and scope Submit manuscript

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.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10

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

    MATH  Google Scholar 

  • Ben-Ameur W, Hadji M (2010) Designing Steiner networks with unicyclic connected components: an easy problem. SIAM J Discrete Math 24(4):1541–1557

    Article  MathSciNet  MATH  Google Scholar 

  • Biedl T, Chan T, Ganjali Y, Hajiaghayi M, Wood DR (2005) Balanced vertex-orderings of graphs. Discrete Appl Math 48(1):27–48

    Article  MathSciNet  MATH  Google Scholar 

  • Chrobak M, Eppstein D (1991) Planar orientations with low out-degree and compaction of adjacency matrices. Theor Comput Sci 86:243–266

    Article  MathSciNet  MATH  Google Scholar 

  • Chung F, Garey M, Tarjan R (1985) Strongly connected orientations of mixed multigraphs. Networks 15:477–484

    Article  MathSciNet  MATH  Google Scholar 

  • 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

    Article  MathSciNet  MATH  Google Scholar 

  • Diestel R (2010) Graph theory, 4th edn. Springer, Berlin

    Book  MATH  Google Scholar 

  • Fomin F, Matamala M, Rapaport I (2004) Complexity of approximating the oriented diameter of chordal graphs. J Graph Theory 45(4):255–269

    Article  MathSciNet  MATH  Google Scholar 

  • Ford LR, Fulkerson DR (1962) Flows in networks. Princeton University Press, Princeton

    MATH  Google Scholar 

  • Frank A, Gyárfás A (1976) How to orient the edges of a graph? Colloq Math Soc János Bolyai 18:353–364

    MathSciNet  Google Scholar 

  • Harary F, Krarup J, Schwenk A (1971) Graphs suppressible to an edge. Can Math Bull 15:201–204

    Article  MathSciNet  MATH  Google Scholar 

  • Edmonds J, Johnson EL (1973) Matching, Euler tours and the Chinese postman problem. Math Program 5:88–124

    Article  MATH  Google Scholar 

  • 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

    Article  MathSciNet  Google Scholar 

  • Mubayi D, Will TG, West DB (2001) Realizing degree imbalances in directed graphs. Discrete Math 239(173):147–153

    Article  MathSciNet  MATH  Google Scholar 

  • Nash-Williams C (1960) On orientations, connectivity and odd vertex pairings in finite graphs. Can J Math 12:555–567

    Article  MathSciNet  MATH  Google Scholar 

  • Robbins H (1939) A theorem on graphs with an application to a problem of traffic control. Am Math Mon 46:281–283

    Article  MATH  Google Scholar 

  • Schaefer TJ (1978) The complexity of satisfiability problems. In: Proceedings of the 10th annual ACM symposium on theory of computing, pp 216–226

Download references

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

Authors

Corresponding author

Correspondence to Antoine Glorieux.

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

$$\begin{aligned}v':\begin{array}{ll} x_i\mapsto v(x_i)~&{}\quad \forall i\in \llbracket 1,n\rrbracket \text { s.t. }k_i\le 3;\\ x_i^l\mapsto v(x_i)~&{}\quad \forall i\in \llbracket 1,n\rrbracket \text { s.t. }k_i \ge 4\text { and }\forall l\in \llbracket 1,k_i\rrbracket ; \end{array} \end{aligned}$$

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

$$\begin{aligned} \varphi= & {} (x_1\vee \lnot x_2\vee x_3)\wedge (\lnot x_1\vee \lnot x_3\vee x_4)\wedge (x_1\vee \lnot x_2)\wedge (\lnot x_1\vee \lnot x_3\vee \lnot x_4)\\&\wedge (x_1\vee x_3), \end{aligned}$$

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:

$$\begin{aligned} \varphi '=&(x_1^1\vee \lnot x_2\vee x_3^1)\wedge (\lnot x_1^2\vee \lnot x_3^2\vee x_4)\wedge (x_1^3\vee \lnot x_2)\wedge (\lnot x_1^4\vee \lnot x_3^3\vee \lnot x_4)\\&\wedge (x_1^5\vee x_3^4)\wedge (x_1^1\vee \lnot x_1^2)\wedge (x_1^2\vee \lnot x_1^3)\wedge (x_1^3\vee \lnot x_1^4)\wedge (x_1^4\vee \lnot x_1^5)\\&\wedge (x_1^5\vee \lnot x_1^1)\wedge (x_3^1\vee \lnot x_3^2)\wedge (x_3^2\vee \lnot x_3^3)\wedge (x_3^3\vee \lnot x_3^4)\wedge (x_3^4\vee \lnot x_3^1). \end{aligned}$$

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

$$\begin{aligned} \forall i\in \llbracket 1,n\rrbracket \text { s.t. }k_i \ge 4,~v'(x_i^1)=v'(x_i^2)=\cdots =v'(x_i^{k_i}). \end{aligned}$$

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\):

$$\begin{aligned} v:\begin{array}{ll} x_i\mapsto v'(x_i)~&{}\quad \forall i\in \llbracket 1,n\rrbracket \text { s.t. }k_i\le 3;\\ x_i\mapsto v'(x_i^1)~&{}\quad \forall i\in \llbracket 1,n\rrbracket \text { s.t. }k_i \ge 4; \end{array} \end{aligned}$$

satisfies \(\varphi \). We have just shown that \(\varphi \) and \(\varphi '\) are equisatisfiable.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

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

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10878-017-0117-1

Keywords

Navigation