Mixed Graph Colorings: A Historical Review

: This paper presents a historical review and recent developments in mixed graph colorings in the light of scheduling problems with the makespan criterion. A mixed graph contains both a set of arcs and a set of edges. Two types of colorings of the vertices of the mixed graph and one coloring of the arcs and edges of the mixed graph have been considered in the literature. The unit-time scheduling problem with the makespan criterion may be interpreted as an optimal coloring of the vertices of a mixed graph, where the number of used colors is minimum. Complexity results for optimal colorings of the mixed graph are systematized. The published algorithms for ﬁnding optimal mixed graph colorings are brieﬂy surveyed. Two new colorings of a mixed graph are introduced.


Introduction
Let G = (V, A, E) denote a finite mixed graph with a non-empty set V = {v 1 , v 2 , . . . , v n } of n vertices, a set A of (directed) arcs, and a set E of (undirected) edges. It is assumed that the mixed graph G = (V, A, E) contains no multiple arcs, no multiple edges, and no loops. Arc (v i , v j ) ∈ A denotes the ordered pair of vertices v i ∈ V and v j ∈ V. Edge [v p , v q ] ∈ E denotes the unordered pair of vertices v p ∈ V and v q ∈ V. If A = ∅, we have a graph G = (V, ∅, E). If E = ∅, we have a digraph G = (V, A, ∅). In 1976 [1], a mixed graph coloring was introduced for the first time as follows.
holds for each arc (v i , v j ) ∈ A, and c(v p ) = c(v q ) for each edge (v p , v q ) ∈ E. A c-coloring is optimal if it uses a minimum possible number χ(G) of different colors c(v i ) ∈ {1, 2, . . . , t}, such a minimum number χ(G) being called a chromatic number of the mixed graph G.
A mixed graph G = (V, A, E) is t-colorable if there exists a c-coloring with t different colors for the mixed graph G. If A = ∅, then a c-coloring is a usual coloring of the vertices of the graph G = (V, ∅, E). Finding an optimal coloring of a mixed graph G = (V, A, E) is NP-hard even if A = ∅ [2]. It should be noted that paper [1] was published in Russian along with other papers [3][4][5][6][7][8][9] published before 1997. In 1997 [10], another mixed graph coloring (we call it a strict mixed graph coloring) was introduced as follows.
(a) Existence: Does a coloring exist for the given mixed graph? (b) Optimization: How should an optimal coloring of the given mixed graph be found? (c) Enumeration: How should all colorings existing for the given mixed graph be constructed?
From an answer to Question (c), one can directly obtain answers to both Questions (a) and (b). However, in practice, it is possible to construct all colorings existing for the mixed graph G = (V, A, E) only if the order n = |V| of the mixed graph G is rather small. Otherwise, instead of Question (c), one can study the following questions.
(d) Counting and Estimation: How should a cardinality of the set of all colorings existing for the given mixed graph be determined (or estimated)?
The rest of this paper is organized as follows. The results published for the c-coloring of the mixed graph G are described in Section 2, where the following decision problem C(G, p) is considered.
Problem (C(G, p)). Given a mixed graph G = (V, A, E) and an integer p ≥ 1, find out whether the mixed graph G admits a c-coloring using at most p different colors c(v i ).
Section 3 contains the results published for the c < -coloring of the mixed graph G with the following decision problem C < (G, p).
Problem (C < (G, p)). Given a mixed graph G = (V, A, E) and an integer p ≥ 1, find out whether the mixed graph G admits a c < -coloring using at most p different colors c < (v i ).
Three tables with the results published in the OR literature are presented in Section 4. In Section 5, we show how a unit-time scheduling problem with the makespan criterion may be interpreted as an optimal coloring of the mixed graph. Section 6 contains a few results published for the edge coloring of the mixed graph. In Section 7, we introduce new types of colorings of the mixed graphs. The paper is concluded in Section 8. Throughout the paper, we use the terminology from [12,13] for graph theory and that from [14,15] for scheduling theory.

Mixed Graph Colorings
In Sections 2 and 3, we present known results for two types of mixed graph colorings (c-coloring in Section 2 and c < -coloring in Section 3) in the order of their publications without repetitions. If a result was first published in a weak form and then was published in a stronger form, we present both results in this survey with indicating years of their publications.

Remark 2.
If a "positive result" is proven for a c-coloring (e.g., a polynomial algorithm is derived), it remains correct for a c < -coloring for a special mixed graph G = (V, A, E), where the implication in Equation (3) holds for each arc (v i , v j ) ∈ A (see Remark 1). On the other hand, a "positive result" proven for a c < -coloring may remain unproven (open) for a c-coloring. If NP-hardness is proven for c < -colorings of some class of mixed graphs, then NP-hardness remains correct for c-colorings of the same class of mixed graphs.
The following criterion for existing a c-coloring of the mixed graph is proven in [1].

Theorem 1.
A c-coloring of the mixed graph G = (V, A, E) exists if and only if the digraph (V, A, ∅) has no circuit containing some adjacent vertices in the graph (V, ∅, E).
In the proof of Theorem 1, it is shown how to construct a c-coloring of the mixed graph G = (V, A, E) provided that such a coloring exists.
Let f (G, t) denote a number of all different c-colorings with colors c(v i ) ∈ {1, 2, . . . , t}. If A = ∅, then f (G, t) is a chromatic polynomial of the graph G = (V, ∅, E) [12,13,16]. If E = ∅, then f (G, t) is a chromatic polynomial of the digraph G = (V, A, ∅) [17]. In [1,18], it is shown that f (G, t) is a chromatic polynomial of t for the mixed graph G = (V, A, E) with A = ∅ = E.
In the c-coloring of the t-colorable mixed graph G = (V, A, E), all vertices on a circuit in the digraph G = (V, A, ∅) must have the same color from set {1, 2, . . . , t}. Let {v i ,v j } G denote a mixed graph obtained from the mixed graph G = (V, A, E) as a result of identifying vertices v i ∈ V and v j ∈ V along with identifying multiple edges, multiple arcs, and deleting loops, if these multiple edges, arcs, or loops arise in the mixed graph obtained due to identifying vertices v i and v j in G = (V, A, E).
The above vertex identification may be generalized on a set N of the vertex pairs {v i , v j }. Let N G = ( N V, N A, N E) denote a mixed graph obtained from the mixed graph G = (V, A, E) as a result of successive identifying vertices v i and v j for each pair of vertices {v i , v j } ∈ N.

Lemma 1.
If vertices v i and v j are not adjacent in the graph (V, ∅, E), then Theorem 2. If M ⊆ E and graph (V, ∅, M) has no cycle, then where the summation is realized for all subsets N ⊆ M such that the graph (V, ∅, N) has no chain connecting adjacent vertices in the graph (V, ∅, E \ M).
Let Π(V, A, E) denote a set of all circuit-free digraphs generated by the mixed graph where the summation is realized for all subsets N ⊆ M such that labeled mixed graphs N G are different and there is no chain in the graph (V, ∅, N) between vertices, which are adjacent in the graph (V, ∅, E).
Using Theorem 3, the coefficient of t n and that of t n−1 in the chromatic polynomial f (G, t) for the mixed graph G have been calculated in [1]. It is also proven that the sum Σ of all coefficients of the In [19], a reciprocity theorem for the chromatic polynomials f (G, t) is established based on order polynomials of partially ordered sets due to giving interpretations of evaluations at negative integers.
In [20], it is shown that the chromatic polynomial f (G, t) of any mixed graph G = (V, A, E) can be reduced to a linear combination of the chromatic polynomials f (G, t) of simpler mixed graphs G such as trees. The reciprocity theorem for chromatic polynomials f (G, t) has been investigated from a standpoint of inside-put polytopes and partially ordered sets.
In [7], the recurrent functions were determined for calculating several lower bounds on the minimum number of colors used in the c-coloring of the mixed graph G = (V, A, E). These bounds were used for calculating lower bounds on the chromatic number χ(G) [7,8]. Several lower and upper bounds on the chromatic number χ(G) have been proven in [21]. Some of these bounds are tight.
Different algorithms for mixed graph colorings were developed and tested in [22][23][24][25][26][27][28][29]. In [25], a branch-and-bound algorithm was developed for calculating the chromatic number χ(G) and the strict chromatic number χ < (G). This algorithm is based on the conflict resolution strategy with adding appropriate arcs to the mixed graph G = (V, A, E) in order to resolve essential conflicts of the vertices, which may be colored by the same color. Computational results for randomly generated mixed graphs of the orders n ≤ 150 showed that the developed algorithm outperforms the branch-and-bound algorithm described in [10] in cases of sufficiently large values of the strict chromatic numbers χ < (G).
In [18], it is shown that a large class of scheduling problems induce mixed graph collorings (either c-colorings or c < -colorings). Three algorithms for mixed graph colorings were coded in FORTRAN and tested on PC 486 for coloring randomly generated mixed graphs with the orders n ≤ 100.
The algorithms proposed in [26,27] were modified in [29] in order to restrict the computer memory used in the branch-and-bound algorithm. The reported computational results on the benchmark instances showed that the modified algorithms are more efficient in terms of the number of optimal colorings constructed and sizes of the search trees.
The degree of vertex v i ∈ V, denoted by d G (v i ), is the number of edges and arcs incident to vertex v i . In [21], it is shown how to find the chromatic numbers χ(G) and optimal c-colorings for the following simple classes of mixed graphs. In [21], it is shown that the decision problem C(G, p) with a fixed integer p may be polynomially solved for the following two classes of mixed graphs. Theorem 6. The problem C(G, p) is polynomially solvable if G = (V, A, E) is a partial mixed k-tree for a fixed integer k. Theorem 7. The problem C(G, 2) is polynomially solvable.
In the proof of Theorem 7, it is shown that the problem C(G, 2) may be (polynomially) reduced to the following k-satisfiability problem k-SAT with k = 2 that is known to be polynomially solvable [2].
Problem (k-SAT). Given a set U of Boolean variables and a collection C of clauses over U, each clause containing k ≥ 1 Boolean variables, find out whether there is a truth assignment to the Boolean variables that satisfies all clauses in C.
The following complexity results (NP-completeness) for c-colorings have been proven in [21]. In the proof of Theorem 8, it is shown that the NP-complete decision problem C < (G, 3) is polynomially reduced to the decision problem C(G, 3). In Section 3, we present Theorem 17 claiming that the decision problem C < (G, 3) is NP-complete if G = (V, A, E) is a planar bipartite mixed graph with the maximum degree equal to 3. In the proof of Theorems 9, it is shown that the problem C < (G, 3) is polynomially reduced to the problem C(G, 3). In [30], it is proven that the problem C < (G, 3) is NP-complete if G = (V, A, E) is a bipartite mixed graph with the maximum degree 3 (see Theorem 18 in Section 3).
The following claim is proven in [31]. In the proof of Theorem 10, it is shown that the problem C < (G, 3) is polynomially reduced to the problem C(G, 3). In Section 3, Theorem 20 is presented, where it is established that the problem C(G, 3) is NP-complete if G = (V, A, E) is a cubic planar bipartite mixed graph.
The above NP-completeness result is the best possible. Indeed, the problem C(G, 2) is polynomially solvable. Furthermore, a mixed graph having the maximum degree 2 consists of a family of disjoint mixed chains and mixed cycles. In [21], it is proven that an optimal c-coloring of a mixed cycle can be constructed in polynomial time. An optimal c-coloring of a mixed chain is trivial.

Strict Mixed Graph Colorings
In this section, we consider c < -colorings of the mixed graph G = (V, A, E). Due to Remark 1, Theorem 1 may be rewritten for a strict mixed graph coloring as follows. Algorithms for calculating and estimating the value of π(V, A, E) used in the equality in Equation (7) and algorithms for constructing set Π(V, A, E) of the circuit-free digraphs generated by the mixed graph G(V, A, E) are described in [4,5], where the following claim is proven.

Lemma 2.
If vertices v i and v j are not adjacent in the graph (V, ∅, E), then Using Lemma 2 and numbering E = |E| k=1 [v i , v j ] of the edges, the following equality is obtained: The value of π(V.∅, E) was investigated in [17]. The formulas analogous to Equations (5)-(7) presented in Section 2 for the value of f (G, t) were proven for the value of π(G) in [5].
The following claim has been proven in [10].
Theorem 12. If mixed graph G = (V, A, E) is a nontrivial mixed tree, then an optimal c < -coloring for the mixed graph G may be constructed in O(n 2 ) time.
The result of Theorem 12 was strengthened in [32], where it was proven that an optimal c < -coloring of the nontrivial mixed graph G may be constructed in O(n) time.
Let V o denote a set of vertices, V o ⊆ V, which are incident to at least one arc in the mixed graph G = (V, A, E). We denote by G(V o ) the mixed subgraph of the mixed graph G induced by the vertex set The following two claims have been proven in [30].
The proof of Theorem 13 is based on transformation of the considered problem into the 2-SAT problem. Corollary 1 follows from the proof of Theorem 13. Corollary 1. Let mixed graph G = (V, A, E) have the following properties: Then, the strict chromatic number χ < (G) can be determined in polynomial time.
Several upper bounds on the strict chromatic number χ < (G) have been proven in [10], where it was shown that inequalities The following decision problem (called a precoloring extension) was used for proving several results for calculating a value of the strict chromatic number χ < (G).
Problem (PrExt(G, q)). Given an integer q ≥ 1 and a graph G = (V, ∅, E) some of whose vertices are colored using at most q colors, find out whether this coloring of the subset of vertices can be extended to a coloring of all vertices of the graph G using at most q colors.
In [33], it was proven that the problem PrExt(G, 2) is polynomially solvable for a bipartite graph G = (V, ∅, E), for a split graph G, and for a complement G of the bipartite graph. In [34], it was proven that the problem PrExt(G, q) is polynomially solvable for a cograph G = (V, ∅, E). In [35], it was proven that the problem PrExt(G, q) is polynomially solvable for the graph G = (V, ∅, E) with maximum degree 3. In [21], the following claim was proven.
is on a path of length n(G o ) − 1; and (2) the problem PrExt(G * , n(G o )) is polynomially solvable, where the graph G * is obtained by transforming each arc in the mixed graph G into an edge, which is incident to the same vertices.
In [30], it is shown that the decision problem C < (G, 3) is polynomially reduced to the decision problem PrExt(G, 2), i.e., the following claim is proven.
Polynomial algorithms were developed for the class of k-trees defined recursively as follows. A k-tree on k vertices consists of a clique on k vertices (called a k-clique). Given a k-tree T n on n vertices, one can construct a k-tree on k + 1 vertices by adjoining a new vertex v n+1 to the k-tree T n , which is made adjacent to each vertex of some k-clique existing in the k-tree T n and nonadjacent to all the remaining n − k vertices in this k-tree. The mixed graph G is called a partial k-tree if G is a subgraph of a k-tree. The following theorem is proven in [30].

Theorem 16. The decision problem C < (G, p) is polynomially solvable if:
(1) G = (V, A, E) is a bipartite partial mixed k-tree, where k is fixed; and (2) for each maximal path p in the mixed graph G, either equality n(P) = p or equality n(P) = p − 1 holds.
In the proof of Theorem 16, it is shown that the considered problem is polynomially reduced to the problem PrExt(G, 2). From Theorem 16, the following claim is obtained.
In [36], it is proven that the problem PrExt(G, 3) is NP-complete for a planar bipartite graph G = (V, ∅, E). Based on the reduction of the NP-complete problem PrExt(G, 3) to the decision problem C < (G, 3) with a planar mixed graph G = (V, A, E), the following claim is proven in [30].
The following claim is also proven in [30].
In the proof of Theorem 18, it is shown that the problem 3-SAT, which is NP-complete [37], is polynomially reduced to the problem C(G, 3). In [21], Theorem 17 was strengthened as follows.

Theorem 19.
The decision problem C < (G, 3) is NP-complete even if: (1) G = (V, A, E) is a planar bipartite mixed graph with a maximum degree 4; and (2) each vertex v i ∈ V, which is incident to an arc, has a maximum degree 2.
The following claim is proven in [31].
In the proof of Theorem 20, it is shown that the following problem LiCol(G) is polynomially reduced to the decision problem C(G, 3) considered in Theorem 20.
Problem (LiCol(G)). Given a graph G = (V, ∅, E) together with sets of feasible colors L(v i ) for all vertices v i ∈ V, find out whether the graph G = (V, ∅, E) admits a vertex coloring (i.e., adjacent vertices get different colors) such that every vertex v i ∈ V is colored with a feasible color from the given set L(v i ).
In [35], it is proven that the problem LiCol(G) is NP-complete if the total number of available colors is equal to 3, |L(v i )| = 3, and if graph G = (V, ∅, E) is a cubic planar bipartite mixed graph.
It should be noted that the NP-completeness proven in Theorem 20 is best possible in the sense that the problem C < (G, 3) for the mixed graph G = (V, A, E) having a maximum degree 2 and the problem C < (G, 2) are both polynomially solvable. In [21], Lemma 3 was proven in order to establish several upper bounds on the strict chromatic number χ < (G).
Assume that all paths of length n(G o ) − 1 start at the same vertex set, say V 1 . Then, it is possible to find a c < -coloring of the digraph G o with the number of colors n(G o ) such that all vertices in set V 1 have even colors, and all vertices in set V 2 have odd colors.
Using Lemma 3, the following two theorems have been proven in [21].
A, E) be a bipartite mixed graph. Assume that all paths of length n(G o ) − 1 start at the same vertex set, say V 1 . Then, it is possible to find a c < -coloring of mixed graph G o with the number of colors n(G o ) such that all vertices in set V 1 have even colors, and all vertices in set V 2 have odd colors.
. Suppose also that the following inequality holds: where G is a subgraph of the mixed graph G containing vertex set V o . Then, the non-strict inequality The following two claims follow from Theorem 23 and the inequalities in Equation (10).
is a bipartite mixed graph and the inequality in Equation (11) holds for the subgraph G of the mixed graph G containing vertex set V o . Then, non-strict inequality Corollary 4. Let G = (V, A, E) be a mixed graph such that odd cycle C in mixed graph G contains at least one vertex, which is not incident to any arc, and the inequality in Equation (11) holds for the subgraph G of the mixed graph G containing vertex set V o . Then, the non-strict inequality χ < G) ≤ n(G o ) + 1 holds.
In [38], it is shown that the problem C < (G, p) is polynomially solvable for a series parallel mixed graph G. In other words, an exact algorithm for solving the problem C < (G, p) is developed, where G is a partial 2-tree. The complexity of this algorithm is O(n 3.376 log n).
In the proof of Theorem 24, it is shown that the problem C < (G, p), where G = (V, A, E) is a bipartite partial mixed k-tree with a fixed k, is polynomially reduced to the problem LiCol(G), which is known to be solvable in O(n k+2 ) time for a partial k-tree [34]. The exact algorithm developed for solving the problem C < (G, p), where G = (V, A, E) is a bipartite partial mixed k-tree with a fixed k, has the complexity O(n 2k+4 |A| k+2 ).
Algorithms for constructing an optimal c < -coloring of the mixed graph G = (V, A, E) have been derived in [39,40]. In [40], it is shown that an optimal c < -coloring may be constructed for the mixed The following polynomially solvable case for an optimal c < -coloring was discovered in [40]. In [28], an algorithm based on the mixed integer linear programming and a tabu search algorithm were developed for constricting heuristic c < -colorings of the mixed graph G = (V, A, E) and calculating upper bounds on the strict chromatic number χ < (G). The performances of the proposed heuristic algorithms were evaluated through several benchmark instances. It was shown that the developed tabu search algorithm outperforms the mixed integer linear programming algorithm.

Tables with Results Published on Vertex Colorings of the Mixed Graphs
This section contains three tables of the results published on c-colorings of the vertices of mixed graphs (Tables 1 and 3) and on c < -colorings of the vertices of mixed graphs (Tables 2 and 3).
In Table 2, property (N) indicated in Column 3 is described in the corresponding theorem (corollary) indicated in Column 5 on the same line of Table 2. The sense of other columns are determined in their titles in Tables 1-3. Table 1. The complexity of optimal c-colorings of the mixed graphs.

Several Scheduling Problems as Mixed Graph Colorings
The minimization of the maximum completion time (i.e., the length of a schedule) of n partially ordered operations V = {v 1 , v 2 , . . . , v n } with unit processing times p i = 1, where i ∈ {1, 2, . . . , n}, (or what means the same, with equal processing times) of operations V may be interpreted as an optimal c < -coloring of the mixed graph G = (V, A, E), where V is a set of operations, arc set A determines precedence constraints, and edge set E determines capacity constraints [14,41,[43][44][45].

Strict Mixed Graph Colorings and Job-Shop Scheduling Problems
Due to Definition 2, a c < -coloring c < : V → {1, 2, . . . , t} of a mixed graph G determines a feasible assignment of operations V = {v 1 , v 2 , . . . , v n } to the following set of unit-time intervals: An optimal c < -coloring c < : V → {1, 2, . . . , χ < (G)} of the mixed graph G determines an assignment of operations V to a minimum number of unit-time intervals: The assignment of operations V to the unit-time intervals (13) is makespan optimal, i.e., it determines an optimal schedule of operations V, the length of which is equal to the strict chromatic number χ < (G). In this section, we consider an optimal c < -coloring of the mixed graph G, which corresponds to a unit-time, minimum-length, job-shop scheduling problem denoted by J|p i = 1|C max in the three-field classification α|β|γ, where α specifies the machine environment, β specifies the job characteristics, and γ denotes the objective criterion [46]. An optimal c < -coloring of the mixed graph G determines a makespan optimal schedule, i.e., γ = C max := max{C 1 , C 2 , . . . , C j }, where C i denotes the completion time of the job J i . Using the graph terminology, we have to assume that the mixed graph G = (V, A, E) under consideration in this section has the following two mandatory properties.  From Property 2, it follows that, if inclusion v i ∈ V (k) holds, then operation v i is a part of the job J k ∈ J, and vice versa (Definition 2). Each job J k ∈ J consists of a set V (k) of linearly ordered operations, i.e., job J k is represented as a path (v k 1 , v k 2 , . . . , v k r k ) in the digraph (V, A, ∅). All operations V (k) have to be processed in the order determined by machine route or the path (v k 1 , v k 2 , . . . , v k r k ). From Property 1, it follows that, if inclusion v i ∈ V k holds, then operation v i has to be processed on machine M k ∈ M. Due to Definition 2, Property 1 means that each machine M k ∈ M can process at most one operation within a unit-time interval from the set (12).
Properties 1 and 2 determine usual assumptions used in scheduling theory in terms of graph theory. There exists a one-to-one correspondence between all c < -colorings of the mixed graph G = (V, A, E) complying with Properties 1 and 2, and all semi-active schedules [14,15] existing for the problem J|p i = 1|C max . A schedule is called semi-active if no job (operation) can be processed earlier without changing the processing order or violating the given constraints.
We next present the correspondence of the used terms: In [39], the scheduling problem J|p i = 1|C max is presented as finding an optimal c < -coloring of a special mixed graph satisfying Properties 1 and 2. The lower and upper bounds on the strict chromatic number χ < (G) have been proven. A tabu search algorithm using a dynamic neighborhood structure was adapted for solving large benchmark instances heuristically. Computational experiments were conducted to estimate the efficiency of the proposed algorithm.
Most results observed in this section have been proven in [23,24,26]. The complexity of an optimal c < -coloring for special cases of mixed graphs follow from those for the problem J|p i = 1|C max . The corresponding references are given in Tables 4 and 5, where it is assumed that all mixed graphs G = (V, A, E) satisfy both Properties 1 and 2. Along with the mandatory Properties 1 and 2, we consider Property 3, which means that any two sequential operations of the same job J k ∈ J in the problem J|p i = 1|C max have to be processed on different machines from the set M, i.e., "machine repetition" in processing two sequential operations of the same job is not allowed. Taking into account that the digraph (V, A, ∅) has no transitive arcs (Property 2), we present Property 3 as follows.
The notation J|p i = 1|C max is used if the mixed graph G has Property 3. If machine repetition in processing a job is allowed, the notation J|p i = 1, rep|C max is used. The problem J|p i = 1|C max is a special case of the problem J|p i = 1, rep|C max , which is equivalent to the problem J|[p i ], pmtn|C max with integer processing times and allowed preemptions of an operation. Property 3 influences the complexity of a scheduling problem [47,48]. An example of such an influence was given in [49], where it was proven that the job-shop problem J2|j = 3, p i = 1, rep|C max is NP-hard, while in [50] polynomial algorithms for the corresponding job-shop problem without machine repetition have been derived. Column 3 in Table 4 and Column 5 in Table 5 are used to indicate whether the mixed graph G has Property 3 (in this case, the column contains 'yes') or not (in this case, the column contains 'no').
In Table 4, we present complexity results for an optimal c < -coloring of a mixed graph G when the strict chromatic number χ < (G) is small. More precisely, the recognition of inequality χ < (G) ≤ l is considered with a fixed positive integer l (Column 2 in Table 4). Testing inequality χ < (G) ≤ 2 is a trivial problem when either Property 3 holds or not. Indeed, equality χ < (G) = 1 holds if and only if E = ∅ and A = ∅. A simple criterion for equality χ < (G) = 2 is given in Lemma 4, as proven in [26]. Table 4. The complexity of a mixed graph coloring with short paths and small cliques.

χ(G) ≤ l Property 3 Complexity Status References Years
In [51], it is proven that the problem of deciding if there is an optimal schedule for the problem J|[p i ]|C max with a length of at most 3 can be reduced to the 2-SAT problem in O(n) time. Since the problem J|p i = 1|C max is a special case of the problem J|[p i ]|C max and taking into account that the 2-SAT problem can be solved in O(n) time [52], we conclude that the recognition of inequality χ < (G) ≤ 3 can be done in O(n) time if Property 3 holds for the mixed graph G ( Row 1 in Table 4).
Using the polynomial reduction from [51], it is shown in [26] that inequality χ < (G) ≤ 3 holds if Property 3 does not hold (Row 2 in Table 4). Using the polynomial reduction similar to the one described in [51], it is shown in [26] that deciding if there is a schedule for the problem J|[p i ]|C max with length 3 can be reduced to the problem 2-SAT.
Obviously, for a c < -coloring c < : V → {1, 2, 3} (if any) only paths of the length of at most 3 and cliques of the cardinality of at most 3 are allowed. In [26], an O(n)-algorithm was developed based on the algorithm developed in [52] for solving the problem 2-SAT. It was shown that the logical formula constructed by O(n)-algorithm is satisfiable if and only if χ < (G) = 3. To test inequality χ < (G) ≤ 3 when Property 3 does not hold takes O(n) time (Row 2 in Table 4).
In [51], it is proven that deciding if there is an optimal schedule for the problem J|[p i ]|C max with a length of at most 4 is NP-complete. More precisely, a polynomial reduction was constructed from the restricted version of the 3-SAT problem (which is NP-complete) to the problem J|p i = 1|C max , which is a special case of the problem J|[p i ]|C max with integer processing times of operations (Row 3 in Table 4).
As follows from Table 4, the boundary between polynomially solvable and NP-complete problems of testing inequality χ < (G) ≤ l is between l = 3 and l = 4.
The recognition of inequality χ < (V, ∅, E) ≤ 3 is an NP-complete problem [2], while the recognition of inequality χ < (V, ∅, E) ≤ 2 may be done in polynomial time since inequality χ < (V, ∅, E) ≤ 2 holds if and only if the graph (V, ∅, E) has no cycle with odd length.
In [53,54], it was proven that the problem J2|p i = 1, rep|C max is NP-hard (Row 1 in Table 5). In [55], it was proven that the problem J3|p i = 1|C max is NP-hard (Row 2 in Table 5). In [50,56], an O(n)-algorithm has been developed for the problem J|p i = 1|C max (Row 3 in Table 5)).
We next observe the complexity of an optimal c < -coloring of a mixed graph G with Properties 1 and 2. If j = n, then due to Property 2, we obtain (V, Summarizing, we conclude that, if m = n or j = n, the strict chromatic number χ < (G) can be found in O(n) time (Rows 4 and 5 in Table 5).
For the case j = 2, there are polynomial algorithms based on the geometrical approach [57][58][59]. In [54,60], the geometric O(r 2 log r)-algorithms were developed for the job-shop problem J|j = 2|Φ with two jobs, real processing times and any regular criterion Φ.
If all processing times p i are integers, then the problem J|j = 2, [p i ]|C max is equivalent to the problem J|j = 2, p i = 1, rep|C max , in which p i unit-time operations correspond to one operation with integer processing time equal to p i in the problem J|j = 2|C max . In [26], it is shown how to improve the geometrical O(r 2 log r)-algorithm developed in [54,60] for the case of unit-time operations. Table 5. The complexity of a mixed graph coloring with long paths or large cliques.

Mixed Graph Colorings and General Shop Scheduling Problems
There are other applications of mixed graph colorings for solving real-life optimization and enumeration problems [20,[61][62][63][64][65][66][67]. Some of these applications are described in this section.
In [20], it was shown that modeling of metabolic pathways in biology and a process management in operating systems may be based on mixed graph colorings. In particular, it was demonstrated how the chromatic polynomial f (G, T) described in Section 2 may be used for solving these problems.
The following school timetabling problem was considered in [67]. One has to arrange unit-time intervals at which a set of lectures has to be given provided that lectures v i ∈ V and v j ∈ V cannot be held at some unit-time intervals since there may be students who wish to attend both of them. Such a restriction on the pair of lectures v i and v j may be given by edge [v i , v j ] ∈ E and this scheduling problem is equivalent to the coloring of the vertices of the graph G = (V, ∅, E). There are often more similar restrictions generated by students and staff requirements, which have to be taken into consideration in finding a satisfactory timetable of the lectures. In [67], a coloring of the vertices of the graph (V, ∅, E) is considered such that forbidden colors are given for some vertices from set V.
Note that an arc (v p , v q ) ∈ A may arise in the mixed graph G = (V, A, E) to be colored if lecture v p must proceed lecture v q in the desired timetable of the lectures.
A class of so-called general shop scheduling problems was determined in [14,15], where a mixed (disjunctive) graph G = (V, A, E) was used for presenting an input data for a general shop scheduling problem. Any semi-active schedule existing for the general shop scheduling problem may be determined by a specific digraph generated by the mixed graph G. Algorithms for enumerating semi-active schedules generated by the mixed graph G are developed in [42,68].
The general shop scheduling problem G||F max to minimize a maximum penalty F max := max J k ∈J φ k (C k ) is investigated in [69]. The input data for the problem G||F max is presented by a weighted mixed graph G w = (V, A w , E w ), where set V is a set of operations, each arc (v i , v j ) ∈ A w has a weight w ij ≥ 0 and each edge [v p , v q ] ∈ E w has a pair of weights w pq ≥ 0 and w qp ≥ 0.
There exists a one-to-one correspondence between a set of all semi-active schedules existing for the problem G||F max and a set Π(V, A w , E w ) of all circuit-free digraphs generated by the weighted mixed graph G w = (V, A w , E w ) as a result of substituting each edge [v p , v q ] ∈ E by one of the weighted arc either arc (v p , v q ) with weight w pq or arc (v q , v p ) with weight w pq . Using the weighted mixed graph G w , in [69], it was proven that a solution of the problem G||F max is reduced to solving several problems k-SAT. Due to this reduction, a polynomial algorithm is developed for a special case of the problem G||F max based on the O(n)-algorithm available for solving the problem 2-SAT [52].
We assume that equality φ k (C k ) = C k holds for each job J k ∈ J, inclusion w ij ∈ {0, 1} holds for each arc (v i , v j ) ∈ A w , and both inclusions w pq ∈ {0, 1} and w pq ∈ {0, 1} hold for each edge [v p , v q ] ∈ E w . It is clear that equalities φ k (C k ) = C k , J k ∈ J imply that F max = C max and this special case G||C max of the general shop scheduling problem G||F max is equivalent to the problem of finding an optimal c-coloring of the mixed graph G = (V, A, E), which is obtained from the weighted mixed graph G w = (V, A w , E w ) as follows.
In other words, set A of arcs in the obtained mixed graph G = (V, A, E) coincides with set A w of the same arcs without weights. Set E of edges in the mixed graph G = (V, A, E) is a union of set E w of edges without weights and the set In [70], a more complicated general shop scheduling problem was considered. The input data for this general shop scheduling problem is presented by the weighted mixed multigraph w has a pair of weights w k pq and w k qp . Note that weight w ij prescribed to arc (v i , v j ) ∈ A w , and weights w k pq and w k qp prescribed to edge [v p , v q ] k ∈ E * w may be arbitrary real numbers, a negative weight of an arc or edge being also possible. The mixed multigraph G * w = (V, A w , E * w ) contains no multiple arcs and no loops, while multigraph G * w may contain multiple edges w by one of the weighted arc either arc (v p , v q ) k with weight w k pq or arc (v q , v p ) k with weight w k pq along with successive deleting all multiple arcs except a single arc (v p , v q ) with the largest weight incident to the same ordered vertices v p , v q . In [44], the following theorem was proven.

Theorem 26.
Let equality E * w = ∅ hold. Then, a schedule admissible for the weighted digraph G * w = (V, A w , ∅) exists if and only if the weighted digraph G * w = (V, A w , ∅) has no circuit with a strictly positive weight.
We next consider a weighted mixed multigraph G * w = (V, A w , E * w ), where A w = ∅ and E * w = ∅. Let H denote a set of all circuits in the weighted digraph G * w = (V, A w , ∅). Let H * denote a subset of set H containing all circuits with strictly positive weights. The following theorem was proven in [70].

Theorem 27.
For existing a schedule admissible for the weighted multigraph G * w = (V, A w , E * w ), it is necessary that H * = ∅ and sufficient that H = ∅.
In [71], the following general shop scheduling problem G||C max was considered. The input data for this general shop scheduling problem is presented by the weighted mixed graph G w = (V, A w , E w ). Let Π(V, A w , E w ) denote a set of all digraphs generated by the weighted mixed graph G w = (V, A w , E w ) as a result of substituting each edge [v p , v q ] ∈ E by one of the weighted arc either arc (v p , v q ) with weight w pq or arc (v q , v p ) with weight w pq . Let Π * (V, A w , E w ) denote a subset of set Π(V, A w , E w ) containing all digraphs without circuits with strictly positive weights. There exists a one-to-one correspondence between all semi-active schedules existing for the problem G||C max and all digraphs from set Π * (V, A w , E w ). In [71], the following theorem was proven.
The following theorem was proven in [70].

Theorem 29.
If H * = ∅ and H = ∅, then a decision problem of testing whether a schedule admissible for the weighted mixed graph G w = (V, A w , E w ) exists is an NP-complete problem in a strong sense even if there exists only one negative weight prescribed to an arc from the set A w .
In the proof of Theorem 29, it is shown that the flow-shop scheduling problem F3||C max to minimize a schedule length C max for processing n jobs on three different machines with identical machine routes for all jobs J is polynomially reduced to the problem determined in Theorem 29. In [72], it is proven that the flow-shop scheduling problem F3||C max is NP-hard in the strong sense. If conditions of Theorem 29 do not hold, then testing whether a schedule admissible for the weighted mixed graph G * w = (V, A w , E * w ) exists may be realized using a polynomial algorithm. The asymptotic complexities of such algorithms for different special cases of the problem are determined in [70].
Concluding this section, we note that most scheduling problems with equal processing times of the jobs (operations) may be interpreted as some types of optimal colorings of the vertices or edges and arcs of the mixed graphs with special structures. The main restriction for such interpretations of the scheduling problems is the prohibition of operation preemptions. Furthermore, an objective criterion must be either the minimization of makespan C max or the minimization of maximal lateness L max = max{C k − D k : J k ∈ J}, where D k denotes the due date given for the job J k . Such scheduling problems have been considered in papers [73][74][75][76][77][78][79], among many others.

Colorings of Arcs and Edges of the Mixed Graph
Theorem 11 and Definition 4 imply that an edge coloring exists for the mixed graph G = (V, A, E) if and only if the digraph (V, A, ∅) has no circuit.
The following decision problem is connected with an optimal edge coloring of the mixed graph.
Problem (C e (G, p)). Given an integer p ≥ 1 and a mixed graph G = (V, A, E) without circuits in (V, A, ∅), find out whether the mixed graph G admits an edge coloring using at most p different colors c < (e ij ) ∈ {1, 2, . . . , p}.
Let l(G) denote the number of arcs on a longest path in the digraph (V, A, ∅) and ∆(G) denote the maximum degree d G (v i ) of a vertex v i ∈ V in the mixed graph G = (V, A, E). The following lower bound (Lemma 5) and upper bound (Lemma 6) on the value of χ (G) have been proven in [11].
If inequality l(G) ≤ 1 holds, the proof of the bound in Equation (14) follows from Vizing's theorem [80], since at most (∆(G) + 1) colors are needed for edge coloring of G. The whole upper bound in Equation (14) is tight even if mixed graphs G are trees with arbitrary values of ∆(G) and l(G) ≥ 2.
Theorems 30 and 31 were proven in [11]. The proof of Theorem 30 uses a polynomial algorithm developed in [81] for edge coloring of the graph, which is a star. The proof of Theorem 31 is based on a polynomial reduction to the decision problem C e (G, ∆(G) = l(G)) from the precoloring extension problem on a graph. The latter problem is NP-complete even for bipartite outerplanar graphs, as proven in [82]. The proof of Theorem 31 holds when the number of allowed colors is unbounded.
For the case of a constant number of colors, one can provide a polynomial algorithm for any mixed partial k-tree by adapting algorithm described in [81]. In [11], the following two theorems have been proven for edge colorings of the digraphs G = (V, A, ∅). A mixed graph G = (V, A, E) is (k, k + 1)-regular if every vertex v i ∈ V has a degree d G (v i ) of either k or (k + 1).
The proof of Theorem 32 is based on a polynomial reduction to the considered problem C e (G, 5) from the edge coloring problem for a (3)-regular graph. In [83], it is proven that the latter problem is NP-complete.
Theorem 33. The decision problem C e (G, 5) is NP-complete if G = (V, A, E) is a cubic bipartite digraph, l(G) = 3, and E = ∅.
The proof of Theorem 33 is based on the NP-completeness (Theorem 32) of the problem C e (G, 5) with a (2, 3)-regular bipartite digraph G = (V, A, ∅). The following theorem was also proven in [11]. The proof of Theorem 34 is based on a polynomial reduction to the considered problem C e (G, 3) from the NP-complete precoloring extension problem for the bipartite outerplanar graph [82].
As demonstrated in [84,85], colorings of edges in the graph may be used to model a certain job-shop scheduling system consisting of unit-time jobs assigned to specific pairs of machines. In the case of the mixed graph G = (V, A, E), it is convenient to look upon arc (v i , v j ) ∈ A as a unit-time data transmission from machine v i to machine v j requiring the cooperation of machines v i and v j , which cannot simultaneously process other jobs. For such a job-shop scheduling system, coloring of the arcs of the mixed graph G = (V, A, E) corresponds to a schedule such that each vertex first receives input data from all incoming arcs, next uses all the collected data for local computations, and finally sends the output data along outgoing arcs. The edges of the mixed graph G = (V, A, E), which appear in some scheduling applications, correspond to possibly unrelated two-machine jobs processed in the job-shop scheduling system, such as mutual self-testing of machines.
In [86], the following edge coloring problem was considered. It is necessary to color each edge in one color and each arc in two colors, such that the color of the first half of an arc is smaller than the color of the second half. The colors used at the same vertex must all be different. A bound for the minimum number of colors needed for such colorings is obtained in [86]. For the graph G = (V, A, ∅), a polynomial algorithm for such coloring G with a minimum number of colors is developed in [86].

Non-Strict Colorings of Mixed Graphs
We next introduce two types of coloring of the mixed graph G = (V, A, E). A c ≤ -coloring of the vertices of the mixed graph G is introduced in Section 7.1 and a c e ≤ -coloring of the arcs and edges of the mixed graph G is introduced in Section 7.2.

A Non-Strict Coloring of the Mixed Graph
holds for each arc (v i , v j ) ∈ A, and the following condition holds for each edge (v p , v q ) ∈ E such that (v p , v q ) / ∈ A and (v i , v j ) / ∈ A. A c ≤ -coloring is optimal if it uses a minimum possible number χ ≤ (G) of different colors c ≤ (v i ) ∈ {1, 2, . . . , t}, such a minimum number χ ≤ (G) being called a non-strict chromatic number of the mixed graph G.
Obviously, one can use a c-coloring (Definition 1) instead of a c ≤ -coloring (Definition 5) in the special case of the mixed graph such that the implication in Equation (17) Remark 3. A c ≤ -coloring of the vertices of the mixed graph G = (V, A, E) is a special case of a c-coloring provided that the implication in Equation (17) holds for each arc Due to Remark 3, for using a c-coloring instead of a c ≤ -coloring, it is sufficient to delete all edges [v i , v j ] from set E such that vertices v i and v j are adjacent in the digraph (V, A, ∅). However, for some application of c ≤ -coloring it is useful to color vertices of a general mixed graph G = (V, A, E), where the implication in Equation (17) does not hold for some arcs (v i , v j ) ∈ A. Definition 5, which is applicable to any mixed graph G = (V, A, E), may have a sense in some applications.
The following decision problem C ≤ (G, p) arises for the c ≤ -coloring of a mixed graph G.
Problem (C ≤ (G, p)). Given a mixed graph G = (V, A, E) and an integer p ≥ 1, find out whether the mixed graph G admits a c ≤ -coloring using at most p colors c ≤ (v i ) ∈ {1, 2, . . . , p}.
Most results (but not all) presented in Section 2 remain correct for non-strict c ≤ -colorings of vertices of the mixed graph.

A Non-Strict Edge Coloring of the Mixed Graph
We define a non-strict c ≤ -coloring of arcs and edges of the mixed graph G = (V, A, E) as follows.

Definition 6.
It is necessary to color all arcs A and all edges E in the mixed graph G = (V, A, E) in such a way that any two adjacent edges in the graph (V, ∅, E) get different colors from set {1, 2, . . . , t} and for any two adjacent arcs (v i , v j ) ∈ A and (v p , v q ) ∈ A forming a path (v i , v j , v p , v q ) in the digraph (V, A, ∅) the color of arc (v i , v j ) must equal or be less than the maximum color of arc (v p , v q ) and edge [v p , v q ] (if any). An edge c ≤ -coloring is optimal if it uses a minimum number χ ≤ (G) of different colors, such a number χ ≤ (G) being called a non-strict chromatic index of the mixed graph G.
The following decision problem is connected with the optimal edge c ≤ -coloring of the mixed graph G = (V, A, E).
Problem (C e ≤ (G, p)). Given an integer p ≥ 1 and a mixed graph G = (V, A, E), find out whether the mixed graph G admits an edge c ≤ -coloring using at most p different colors c e (e ij ) ∈ {1, 2, . . . , p}.

Concluding Remarks
Sections 2-4 contain a review of known results related to the two types of vertex coloring of the mixed graph. One of the reasons for introducing both types of coloring of the vertices of the mixed graph (c-coloring and c < -coloring) is connected with searching a common approach for solving two types of scheduling problems arising in real-world scheduling systems.
In Section 5, it is demonstrated how c < -colorings may be used for solving unit-time job-shop scheduling problems with the makespan criterion. Although we used both graph terminology and scheduling terminology for the problems under consideration in Sections 2-5, it is possible to describe most presented results using either only graph terminology or only scheduling terminology. The published results on a coloring of arcs and edges of the mixed graphs are reviewed in Section 6. Some results on mixed graph colorings and their applications for solving scheduling problems have only been published in Russian and are not widely known elsewhere. These results are described in Sections 2-6.
As it mentioned in the Abstract, we review mixed graph colorings in the light of scheduling problems. Thus, many closed results are not presented in Sections 2-7 since we do not find their interpretations in scheduling or production planning. In particular, this survey does not cover results published on the homomorphism of the colored mixed graphs introduced in [87] and surveyed in [88].
In Section 7, we introduce new types of colorings of vertices, arcs, and edges of the mixed graphs since they may be applied for optimal scheduling. These types of colorings and their applications in scheduling and production planning may be considered as subjects of future research.
Further research is also needed to extend the complexity results to some other classes of mixed graphs. It is important to find the borders between NP-hard and polynomially solvable classes of t-colorable mixed graphs. It would be interesting to analyze colorings of mixed graphs G = (V, A, E) containing digraphs (V, A, ∅) with a special structure. It is also interesting to ask about the complexity of the coloring problems when the numbers of colors are restricted for some vertices (arcs and edges).
It would be worth developing exact and approximate (as well as heuristic) algorithms for coloring small and medium (as well as large) mixed graphs. For testing exact, approximate, and heuristic algorithms and software, it is necessary to determine sets of the benchmark instances.
Funding: This research received no external funding.

Acknowledgments:
The author would like to thank anonymous reviewers for their insightful comments on the early draft of this paper.

Conflicts of Interest:
The author declares no conflict of interest. Mixed line graph (A ∪ E, A A∪E , E A∪E ) = L(G) for mixed graph G = (V, A, E), Definition 3 where arcs (e ij , e jk ) ∈ A A∪E connect all pairs of arcs e ij = (v i , v j ) ∈ A and e jk = (v j , v k ) ∈ A and edge set E A∪E connect all the remaining pairs of elements of the set A ∪ E, which share at least one vertex of the set V χ < (G) Chromatic index of the mixed graph G = (V, A, E), i.e., Definition 4 a minimum number of colors in the c < -coloring of the arcs and edges in G (a minimum number of colors c < (e ij ) in the c < -coloring of the vertices A ∪ E in line graph L(G) = (A ∪ E, A A∪E , E A∪E ) for mixed graph G) χ ≤ (G) Non-strict chromatic number of the mixed graph G = (V, A, E), i.e., Definition 5 a minimum number of colors c ≤ (v i ) in the c ≤ -coloring of the vertices in G χ ≤ (G) Non-strict chromatic index of mixed graph G = (V, A, E), i.e., a minimum Definition 6 number of colors c ≤ (e ij ) in the c ≤ -coloring of the arcs and edges in G