Mixed graph

A mixed graph G = (V, E, A) is a mathematical object consisting of a set of vertices (or nodes) V, a set of (undirected) edges E, and a set of directed edges (or arcs) A.[1]

Definitions and Notation

Further information: Graph (mathematics)
Example of mixed graph

Consider adjacent vertices u,v \in V. A directed edge, called an arc, is an edge with an orientation and can be denoted as \overrightarrow{uv} or (u,v) (note that u is the tail and v is the head of the arc).[2] Also, an undirected edge, or edge, is an edge with no orientation and can be denoted as uv or [u,v].[2]

Further information: Multiple edges
Further information: Loop (graph theory)

For the purpose of our application example we will not be considering loops or multiple edges of mixed graphs.

A cycle of a mixed graph, or mixed cycle, is formed if the directed edges of the mixed graph form a cycle.[1] An orientation of a mixed graph is considered acyclic if cycles cannot be formed from the directed edges.[1] We call a mixed graph acyclic if all of its orientations are acyclic.[1]

Mixed graph coloring

Further information: Graph coloring
Example of mixed graph

Mixed graph coloring can be thought of as a labeling or an assignment of \{1, ... , k\} colors (where k is a positive integer) to the graphs vertices.[3] We assign different colors to vertices that are connected by an edge and smaller "colors" are assigned to the tail of an arc, while larger "colors" are assigned to the head of an arc.[3] For example, consider the figure to the right. Our available k-colors to color our mixed graph are \{1,2,3\}. Since u and v are connected by an edge, they must receive different colors or labelings (u and v are labelled 1 and 2, respectively). We also have an arc from v to w. Since orientation assigns an ordering, we must label the tail (v) with a smaller color (or integer from our set) than the head (w) of our arc. A (strong) proper k-coloring of a mixed graph is a function

c : V \rightarrow [k] where  [k] := {1,2, \dots , k} such that c(u) \neq c(v) if uv \in E and  c(u) < c(v) if  \overrightarrow{uv} \in A .[1]

A weaker condition on our arcs can be applied and we can consider a weak proper k-coloring of a mixed graph to be a function

c : V \rightarrow [k] where  [k] := {1,2, \dots , k} such that c(u) \neq c(v) if uv \in E and  c(u) \leq c(v) if  \overrightarrow{uv} \in A .[1] Referring back to our example, this means that we can label both the head and tail of (v,w) with the positive integer 2.

A coloring may or may not exist for a mixed graph. In order for a mixed graph to have a k-coloring, the graph cannot contain any directed cycles.[2] If such a k-coloring exists, then we refer to the smallest k needed in order to properly color our graph as the chromatic number, denoted \chi(G).[2] We can count the number of proper k-colorings as a polynomial function of k. This is called the chromatic polynomial of our graph G and can be denoted as \chi_G(k).[1]

Computing Weak Chromatic Polynomials

The Deletion-Contraction method can be used to compute weak chromatic polynomials of mixed graphs. The Deletion-Contraction method involves deleting (or removing) an edge or arc and contracting (or joining) the remaining vertices incident to that edge (or arc) to form one vertex.[4] After deleting an edge, e, from a mixed graph G=(V,E,A) we obtain the mixed graph (V, E-e, A).[4] We can denote this deletion of the edge, e, as G-e. Similarly, by deleting an arc, a, from a mixed graph, we obtain (V, E, A-a) where we can denote the deletion of a as G-a.[4] Also, we can denote the contraction of e and a as G/e and G/a, respectively.[4] From Propositions given in,[4] we obtain the following equations to compute the chromatic polynomial of a mixed graph:

  1. \chi_G(k) = \chi_{G-e}(k) - \chi_{G/e}(k),[5]
  2. \chi_G(k) = \chi_{G-a}(k) + \chi_{G/a}(k) - \chi_{G_a}(k).[5]

Scheduling problem

Main article: Disjunctive graph

Mixed graphs may be used to model job shop scheduling problems in which a collection of tasks is to be performed, subject to certain timing constraints. In this sort of problem, undirected edges may be used to model a constraint that two tasks are incompatible (they cannot be performed simultaneously). Directed edges may be used to model precedence constraints, in which one task must be performed before another. A graph defined in this way from a scheduling problem is called a disjunctive graph. The mixed graph coloring problem can be used to find a schedule of minimum length for performing all the tasks.[2]

Notes

References

External links