Вы находитесь на странице: 1из 11

Available online at www.sciencedirect.

com

Omega 33 (2005) 211 221 www.elsevier.com/locate/dsw

Coloring fuzzy graphs


Susana Mu oza , M. Teresa Ortu oa , Javier Ramrezb , Javier Y neza; n n a
a Department b Department

of Statistics and Operations Research, Universidad Complutense de Madrid, 28040 Madrid, Spain of Systems, Universidad Aut noma Metropolitana-Azcapotzalco, 02200 M xico D.F., Mexico o e Received 2 January 2003; accepted 5 April 2004

Abstract Given a graph G = (V; E), a coloring function C assigns an integer value C(i) to each node i V in such a way that the extremes of any edge {i; j} E cannot share the same color, i.e., C(i) = C(j). Two di erent approaches to the graph coloring problem of a fuzzy graph G = (V; E) are introduced in this paper. The classical concept of the (crisp) chromatic number of a graph is generalized for these approaches. The rst approach is based on the successive coloring functions C of the crisp graphs G = (V; E ), the -cuts of G; the tra c lights problem is analyzed following this approach. The second approach is based on an extension of the concept of coloring function by means of a distance dened between colors; a timetabling problem is analyzed within this approach. An exact algorithm for obtaining the chromatic number associated with the second approach is proposed, and some computational results on randomly generated fuzzy graphs are reported. ? 2004 Elsevier Ltd. All rights reserved.
Keywords: Fuzzy sets; Graph theory; Optimization; Timetabling

1. Introduction Graph coloring is one of the most studied problems of combinatorial optimization. Many problems of practical interest can be modeled as coloring problems. The general form of this application involves forming a graph with nodes representing items of interest. The basic graph coloring problem is to group items in as few groups as possible, subject to the constraint that no incompatible items end up in the same group. Formally, given a graph G = (V; E), a coloring function is a mapping C:V N identifying C(i) as the color of node i V , in such a way that two adjacent nodes cannot share the same color, i.e., C(i) = C(j) if {i; j} E. These nodes i and j will be denoted as incompatible and, in this context, graph G will be denoted the incompatibility graph.

A k-coloring C k is a coloring function with no more than k di erent colors C k : V {1; : : : ; k}: A graph is k-colored if it admits a k-coloring. The minimum value k such that G is k-colored is the chromatic number of G and it is denoted as (G). The graph coloring problem (for short, the coloring problem) consists of determining the chromatic number of a graph and an associated coloring function. This problem is known to be NP-hard, see [1]. An important area of application of the coloring problem is management science. Classical applications include wiring of printed circuits (see e.g. [2]), loading problems (see e.g. [3]), resource allocation (see e.g. [4]), frequency assignment problem (see e.g. [5]), a wide variety of scheduling problems (see e.g. [6]) and computer register allocation (see e.g. [7]). In these problems, the objective is to minimize the number of colors assigned to the nodes, where the nodes represent certain items and adjacent nodes must have di erent colors. In some circumstances, however, this scheme seems to be

Corresponding author. Fax: +34-91-394-4606. E-mail address: jayage@mat.ucm.es (J. Y nez). a

0305-0483/$ - see front matter ? 2004 Elsevier Ltd. All rights reserved. doi:10.1016/j.omega.2004.04.006

212

S. Mu oz et al. / Omega 33 (2005) 211 221 n

very restrictive in the sense that the problems which can be modeled as coloring problems cannot be very complex. See the extension of the graph coloring problem introduced in [8]. Another extension of the coloring problem is based on the relaxation of the incompatibility concept: two nodes i and j are said to be compatible or incompatible if {i; j} E or {i; j} E, respectively. However, in many real situations, such incompatibility is not crisp: two nodes could be more or less incompatible, or the incompatibility could present di erent degrees. This paper is focused on the conceptual framework of the applications of the fuzzy-set theory on those problems that can be stated as coloring problems. Fuzzy-set theory, introduced by Zadeh [9], is a mathematical tool to handle uncertainties like vagueness, ambiguity, and imprecision in linguistic variables, see also [10,11]. The rst denition of fuzzy graph was proposed by Kaufmann [12], from the fuzzy relations introduced by Zadeh [9]. Although Rosenfeld [13] introduced another elaborated denition, including fuzzy nodes and fuzzy edges, in this paper we deal with graphs with crisp nodes and fuzzy edges, see, for example, [14,15]. See also [16] for an overview on some optimization problems in fuzzy graphs. We will use the classical denition of fuzzy set A dened on a non empty set X as the family A = {(x;
A (x))=x X };

becomes a crisp graph if matrix


ij

is dened as

1 0

if {i; j} E otherwise

i; j V:

In this paper two di erent approaches to the coloring problem of fuzzy graphs are introduced. Section 2 introduces the natural extension of the coloring problem to fuzzy graphs; the tra c lights problem will be used to motivate and illustrate this problem in Section 2.1, and the extended coloring function and chromatic number of a fuzzy graph will be dened in Section 2.2. In Section 3 a new type of coloring problem is introduced for fuzzy graphs; the related coloring function will be useful when dealing with some types of problems, such as the exam timetabling problem, which is introduced in Section 3.1. In Section 3.2 the associated chromatic number is introduced. Section 3.3 presents an exact algorithm to compute this chromatic number, as well as some computational experiments on randomly generated fuzzy graphs. 2. The fuzzy coloring problem In order to introduce the concepts of the coloring function of a fuzzy graph and its associated chromatic number, a scheduling problem is presented. 2.1. The tra c lights problem The tra c lights problem consists of controlling a tra c lights system in such a way that certain level of security will be attained. This problem has been studied as an intersection graph in [17]. Other authors, see [18,5,19], have modeled it as an assignment set problem. The tra c lights problem can also be modeled as a graph coloring problem. The following example illustrates this approach. Example 2.1. The tra c ow at the corner of two streets is depicted in Fig. 1. Certain lanes are compatible with one
B

where A : X I is the membership function and A (x) re ects the ambiguity of the assertion x belongs to A. A fuzzy number is a fuzzy set dened on X R. In classical fuzzy-set theory the set I is usually dened as the interval [0; 1], in such a way that A (x) = 0 indicates that x does not belong to A, A (x) = 1 indicates that x strictly belongs to A, and any intermediate value represents the degree in which x could belong to A. However, the set I could be a discrete set of the form I = {0; 1; : : : ; k}, where A (x) A (x ) indicates that the degree of membership of x to A is lower than the degree of membership of x . In general, the set I can be any ordered set, not necessarily numerical; for instance, I = {null; low; medium; high; total}. Let G = (V; E) be a fuzzy graph, where V is the node set, the fuzzy edge set E is characterized by the matrix = ( ij )i; jV :
ij

E ({i; j})

i; j V such that i = j
D C

and E : V V I is the membership function. Each element ij I represents the intensity level of the edge {i; j} for any i; j V with i = j. In this sense, a fuzzy graph can also be denoted as G = (V; ). The set I is linearly ordered in such a way that the expression ij i j stands for the intensity level of edge {i; j} is lower than the intensity level of edge {i ; j }. The fuzzy graph G can be considered as a generalization of the incompatibility graph G, since, taking I = {0; 1}, G

A
Fig. 1. Tra c ow for Example 2.1.

S. Mu oz et al. / Omega 33 (2005) 211 221 n

213

AB l h

AB l

DB

AD

DB

AD

h m

CD

CB

CD

CB

Fig. 2. Incompatibility graph G for Example 2.1.

Fig. 3. Fuzzy graph G for Example 2.1.

another, such as AD and CB, while others are incompatible, such as AB and CD. In order to avoid collisions, we wish to install a tra c light system to control the ow of vehicles. This problem can be modeled by means of an incompatibility graph G = (V; E) whose nodes are given by the lanes, and a pair of lanes denes an edge if they are incompatible, i.e., they can cause a collision. In this case, V = {AB; AD; CB; CD; DB}; E = {{AB; CD}; {AD; DB}; {CD; DB}}: The incompatibility graph G is depicted in Fig. 2. Any k-coloring C k of the graph G identies a control policy of the lights system. The entire cycle of the lights system is divided into k time periods or slots (with any time-length). For any slot c {1; : : : ; k} circulation movements i such that C k (i) = c are the only ones allowed. Therefore, the chromatic number (G) gives the minimum number of time periods required to control the system. The chromatic number of G is (G) = 2 and a 2-coloring is C 2 (AB) = 1; C 2 (CD) = 2; C 2 (AD) = 2; C 2 (DB) = 1: C 2 (CB) = 1;

In Example 2.1, for instance, lanes CD and DB are more incompatible than lanes AB and DB. Let I = {n; l; m; h; t}, where n, l, m, h and t denote the incompatibility degrees null, low, medium, high and total, respectively. The problem stated in Example 2.1 could be modeled by means of the fuzzy graph G = (V; ), where V = {AB; AD; CB; CD; DB}; n l h l n n m h n n n = l h m n h l h n h :

This fuzzy graph is depicted in Fig. 3. One way to consider these fuzzy incompatibilities is to dene a coloring function for fuzzy graphs. This concept is introduced in the next subsection. 2.2. The coloring function of a fuzzy graph Given a fuzzy graph G = (V; ), a natural approach in order to obtain some knowledge about it, is to analyze the sequence of the so called -cuts. A fuzzy set A dened on X can be characterized from its -cuts family A = {x X=
A (x)

Obviously, the control policy of the lights depends on the incompatibility of the lanes. The concept of incompatibility could be fuzzy and it could be graduated. This graduation, which does not need to be numerical, is associated to the desired security level for the tra c ow at the corner. The maximum security level is attained when all lanes are considered incompatible and the graph is complete; in this case, the chromatic number is the number of lanes and the control policy of the lights assure that only one movement is allowed in any slot of the cycle. On the other hand, the minimum security level is attained when the incompatibility edge set is empty; in this case, the chromatic number is 1 and all movements are allowed at any instant.

I:

This family of sets is monotone, i.e., it veries A A ; I such that 6 . On the other hand, see [20], given a nite monotone family {A p =p {1; : : : ; m}}, a fuzzy set A can be dened from the membership function A (x) = sup{ p =x A p } x X . Let {G = (V; E )= I } be the family of -cuts sets of G, where the -cut of a fuzzy graph is the crisp graph G = (V; E ) with E = {{i; j}=i; j V; ij }.

214 Table 1 ,E , and C E n l m h t

S. Mu oz et al. / Omega 33 (2005) 211 221 n

for Example 2.1 C (AB) 5 3 3 2 1 1 1 1 1 1 C (AD) 2 1 3 2 1 C (CB) 3 2 1 1 1 C (CD) 4 2 2 2 1 C (DB) 5 3 1 1 1

{AB; AD}; {AB; CB}; {AB; CD}; {AB; DB}; {AD; CB}; {AD; CD}; {AD; DB}; {CB; CD}; {CB; DB}; {CD; DB} {AB; CB}; {AB; CD}; {AB; DB}; {AD; CD}; {AD; DB}; {CD; DB} {AB; CD}; {AD; CD}; {AD; DB}; {CD; DB} {AB; CD}; {AD; DB}; {CD; DB}

Hence, any (crisp) k-coloring C k can be dened on G . The k-coloring function of G is dened through this sequence. For each I , let denote the chromatic number of G . The chromatic number of G is dened through a monotone family of sets. Denition 2.1. Given a fuzzy graph G = (V; ), its chromatic number is the fuzzy number (G) = {(x; (x))=x X }; where X = {1; : : : ; |V |}, (x) = sup{ I= x A } x X and A = {1; : : : ; } I . The chromatic number of a fuzzy graph is a normalized fuzzy number whose modal value is associated with the empty edge-set graph. Its meaning depends on the sense of index , and it can be interpreted in the following way: for lower values of there are many incompatible links between nodes and, consequently, more colors are needed in order to consider these incompatibilities; on the other hand, for higher values of there are fewer incompatible links between nodes and less colors are needed. The chromatic number sums up all this information in order to manage the fuzzy problem. The fuzzy coloring problem consists of determining the chromatic number of a fuzzy graph and an associated coloring function. In our approach, for any level , the minimum number of colors needed to color the crisp graph G will be computed. In this way, the fuzzy chromatic number will be dened as a fuzzy number through its -cuts. In Example 2.1, ve crisp graphs G = (V; E ) are obtained by considering the values I . For each I , Table 1 contains the edge set E , the chromatic number and a -coloring C . It can be shown that the chromatic number of G is (G)= {(1; t); (2; h); (3; m); (4; n); (5; n)}. The interpretation of (G) is the following: lower values of are associated to lower driver aptitude levels and, consequently, the tra c lights must be controlled conservatively and the chromatic number is high; on the other hand, for higher values of , the driver aptitude levels increase and

the chromatic number is lower, allowing a less conservative control of the tra c lights and a more uid tra c ow. In order to solve the fuzzy coloring problem, any algorithm which computes the chromatic number of every (crisp) graph G can be used. For fuzzy graphs of small to medium size an exact algorithm can be used, see e.g. [2126]. Nevertheless, due to the NP-hardness of the coloring problem, for fuzzy graphs of medium to large size some heuristics may be needed, see [6,2729] among many others. 3. The (d; f )-coloring problem Given a fuzzy graph G, another extension of the coloring problem based on a new concept of coloring function is introduced in this section, so that the fuzzy incompatibilities can be taken into account through a dissimilarity measure dened on the color set and a scale function. An illustrative example of the examination problem is used to justify the utility of this new concept. 3.1. The examination problem Following Bullnheimer [30], the examination scheduling problem consists of assigning a number of exams to a number of potential time periods or slots within the examination period, taking into account that students cannot take more than one exam at the same time, as well as several other constraints. A simplied version of this problem can be modeled as a classical coloring problem. Each exam is a node of the graph, and the edges link those incompatible exams in the sense that there is at least one student sharing both of them. Each color is identied with one slot and all equally colored nodes are assigned to the associated slot. The minimal coloring has the property of minimizing the overall exam period. It can be observed that any valid coloring identies a feasible examination schedule, and any permutation of colors slots or time periodsmaintains the feasibility of new schedules. Any of these color changes is equivalent to a slot change of the associated exams. In real cases, there are some situations which should be avoided but, however, the coloring functions allow. This

S. Mu oz et al. / Omega 33 (2005) 211 221 n

215

B l A h m C

above data, the minimum number of slots is ve and an optimum schedule is the following: Slots Scheduled exams 1 A; D 2 B 3 F 4 E 5 C

m m h l

m F l E
Fig. 4. Fuzzy graph G for Example 3.1.

One way to consider the above constraints is to dene an extended coloring function which takes into account the di erent values of the colors through a dissimilarity measure dened on the color set and a scale function which allows the scaling of two incompatible nodes to the distances between them. This concept is introduced in the next subsection. 3.2. The (d; f)-extended coloring function of a fuzzy graph In order to model certain types of problems as coloring problems, it is necessary to dene a dissimilarity or distance measure on the color set. It can be done in the following way. Let S be the available color set. Let d be the dissimilarity measure dened by d : S S [0; ) with the following properties: 1. d(r; s) 0 r; s S, 2. d(r; s) = 0 r = s r; s S, 3. d(r; s) = d(s; r) r; s S. This dissimilarity measure d can take into account the incompatibility degree in the sense that the more incompatible two nodes are, the more distant their associated colors. In this way, an extended coloring function is introduced. Given I , the image of the membership function of the fuzzy graph G = (V; E), let f : I [0; ) be a non-negative, non-decreasing (with respect to the order ) and real scale function, i.e. f( ) 6 f( ) ; I such that : The above two concepts of dissimilarity measure and scale function allow the following denition. Denition 3.1. Given a fuzzy graph G=(V; ), a color set S, a dissimilarity measure d dened on S and a scale function f, a (d; f)-extended coloring function of G, denoted as Cd; f , for short as C, is a mapping C:V S with the property: d(C(i); C(j)) f(
ij )

is the case, for instance, of three consecutive exams for a subset of students; the coloring function only considers that, although consecutive colors, they are not identical. A new graph coloring function based on the concept of distance between colors will be introduced in the next subsection. An illustrative example of this problem is the following. Example 3.1. There are six exams {A; B; C; D; E; F} and, taking into account their di erent characteristics (di culty, the implied specialities or proles, etc.), the incompatibility between them is valued in the following way: n if they are compatible, and l, m and h if the incompatibility degree is, respectively, low, medium and high. This problem can be modeled by means of the fuzzy graph G = (V; ), where V = {A; B; C; D; E; F}; = l h n h m l m n n n h m l n m n n l l m h n n l n n m : m n m

This fuzzy graph is depicted in Fig. 4. The incompatibility degree can be interpreted in the following way: any compatible exams can share the same slot; if the incompatibility degree between exams i and j is l, m or h, then both exams must be scheduled leaving at least 1, 2 or 3 slots between them, respectively. The problem is to schedule the six exams with these constraints and minimizing the overall exam period. For the

i; j V such that i = j:

216

S. Mu oz et al. / Omega 33 (2005) 211 221 n

k A (d; f)-extended k-coloring Cd; f , for short C k , is a (d; f)-extended coloring function with no more than k different colors:

C k : V S; where S = {1; : : : ; k}. The (d; f)-extended k-coloring of a fuzzy graph G = (V; ) can be considered as a generalization of the k-coloring of a crisp graph G = (V; E), since, taking I = {0; 1}; d = d0 and f(0) = 0; f(1) = 1, where 1 if r = s r; s S; d0 (r; s) = 0 if r = s G becomes a crisp graph if matrix is dened as 1 if {i; j} E i; j V: ij = 0 otherwise This new fuzzy concept presents some di erences with the crisp case. Given a crisp graph G = (V; E), a coloring function for G always exists, since (G) 6 |V |; there always exists the trivial coloring function C |V | (i)=i i V . However, given a fuzzy graph G = (V; ), a (d; f)-extended coloring function does not always exist, see example below. for G Example 3.2. Let G = (V; ) be a fuzzy graph, where l h n : V = {A; B; C}; I = {n; l; h}; = l h n Let S = {1; : : : ; k} be the color set, let d = d0 and let the scale function f be dened by I f(I ) n 0 l 1 h 2

Condition (1) is trivially satised in the crisp case. In e ect, taking I = {0; 1}; d = d0 and f(0) = 0; f(1) = 1, G becomes a crisp graph if matrix is dened as 1 if {i; j} E i; j V; ij = 0 otherwise and the property d(C k (i); C k (j)) f( is equivalent to {i; j} E C k (i) = C k (j): Another di erence with respect to the classical k-coloring is that in a (d; f)-extended k-coloring there can be some colors not assigned to any node, see example below. Example 3.3. Let G = (V; ) be a fuzzy graph, where V = {A; B; C; D}; I = {n; l; m; h; t}; h l t h m n : = l m m t n m This fuzzy graph is depicted in Fig. 5. Let S = {1; 2; 3; 4} be the color set and let d be the dissimilarity measure dened by d(r; s) 1 2 3 4 1 0 1 2 2 2 1 0 1 1 3 2 1 0 4 4 2 1 4 0
ij )

Let the scale function f be dened by I f(I ) n 0 m 1 l 2 h 3 t 4

Then, a (d; f)-extended k-coloring does not exist for any k N. Indeed, d(C k (A); C k (C)) 6 1 for any k-coloring C k and f( AC ) = f(h) = 2. Consequently, some regularity condition must be imposed to assure that any arbitrary couple of nodes could be colored with two su ciently distant colors in the sense of the scale function. Otherwise, there would exist two nodes i and j such that d(r; s) f( ij ) for all r; s S. Such regularity condition, which is a necessary condition for the existence of a (d; f)-extended k-coloring is the following: i; j V with i = j; f(
ij ):

A (d; f)-extended 4-coloring is C (A) = 3;


4

C 4 (B) = 4;

C 4 (C) = 1;

C 4 (D) = 4:

Note that C 4 (i) = 2

i V .

The (d; f)-chromatic number of a fuzzy graph is dened analogously to the crisp case: Denition 3.2. Given a fuzzy graph G, a dissimilarity measure d and a scale function f, the minimum value k for which a (d; f)-extended k-coloring of G exists is the (d; f)-chromatic number of G and it is denoted by d; f (G). The (d; f)-coloring problem consists of determining the (d; f)-chromatic number of a fuzzy graph and an associated (d; f)-extended coloring function.

r; s S such that d(r; s) (1)

Note that condition (1) is not satised in Example 3.2, since d(r; s) 2 = f( AC ) r; s S.

S. Mu oz et al. / Omega 33 (2005) 211 221 n

217

In Example 3.1, for which the colors will be assigned to the consecutive slots of a given time period, we dene the dissimilarity measure d as d(r; s) = |r s| r; s S

in such a way that two slots are distinguished by the number of slots between them. In this example, the scale function f is dened by I f(I ) n 0 l 1 m 2 h 3

Note that with this dissimilarity measure and this scale function, a value k such that condition (1) is satised always exists. The (d; f)-chromatic number of G is d; f (G) = 5 and a (d; f)-extended 5-coloring is C 5 (A) = 1; C 5 (E) = 4; C 5 (B) = 2; C 5 (F) = 3: C 5 (C) = 5; C 5 (D) = 1;

As in the crisp case, the (d; f)-chromatic number solves the optimization problem of nding the minimum number of colors needed to color a graph satisfying some conditions. In Example 3.1, an optimum schedule has been obtained through the (d; f)-extended coloring function associated to the (d; f)-chromatic number. 3.3. An exact algorithm Let G =(V; ) with |V |=n. Let S ={1; : : : ; k}, d and f be the color set, the dissimilarity measure and the scale function, respectively. An exact algorithm for the (d; f)-coloring problem is introduced in this section. The most e cient exact procedures for computing the chromatic number of a crisp graph follow two di erent strategies: maximal independent set identication and implicit enumeration by means of backtracking. The procedures that use maximal independent set identication (see [31,21,23,26] among others) are based on the following result: Let G = (V; E) be a crisp graph. Then there exists a maximal independent set of G, say M , such that (G) = (GV \M ) + 1, where GV \M is the subgraph of G generated by V \ M . Nevertheless, this result does not remain true for the (d; f)-chromatic number of a fuzzy graph. Therefore, we have opted for a backtracking approach to solve the (d; f)-coloring problem. The earliest backtracking procedure is given in [32]. Browns algorithm begins by reordering the nodes of the graph. Next, it uses a forward and a backward step alternately. The forward step colors the nodes sequentially up to

a node which cannot be colored because of a lack of colors available to it. The backward step moves sequentially back until nding a node which can be colored with another color available to it. Whenever a coloring function is obtained, the algorithm searches for a new coloring function with less di erent colors than the current one. This process is repeated until the rst node of the graph is reached in the backward step. Several authors have attempted to improve Browns algorithm (see [4,27,21,33,34,22,24,25]). The main improvements introduced are twofold. On the one hand, di erent ways for reordering the nodes of the graph are considered, all of them based on the degree of the nodes. On the other hand, in order to determine a lower bound on the chromatic number of the graph, di erent methods for identifying cliques with high cardinality are considered. Although it can be expected that these types of improvements will also be helpful for the (d; f)-coloring problem, further research is needed to nd the best way to apply them. First, the concept of degree of a node has to be generalized for graphs with crisp nodes and fuzzy edges. Secondly, the properties for a clique to provide a good lower bound on the chromatic number have to be determined. For the coloring problem, this lower bound is dened as the cardinality of the clique; thus, we are interested in cliques with high cardinality. However, for the (d; f)-coloring problem, we are interested in cliques with high values of f( ij ) for their edges {i; j} (for example, taking d(r; s) = |r s| r; s S, a clique with cardinality 3 such that f( ij ) = 1 for its three edges gives a lower bound equal to 3, whereas a clique with cardinality 2 such that f( ij ) = 4 for its unique edge gives a lower bound equal to 5). Below we present an exact algorithm to determine the (d; f)-chromatic number of G and an associated (d; f)-extended coloring function. This algorithm uses the main idea of Browns algorithm to obtain the chromatic number of a crisp graph. It is based on a greedy procedure which assigns to any node the minimum color compatible with the previously colored nodes. Given a colored node v0 V and assuming that the previous nodes have already been colored (i.e., C(1); : : : ; C(v0) are known), the greedy procedure assigns to each node v0; v0 + 1; : : : ; n the smallest color compatible with the previous assignments in such a way that the color assigned to v0 is greater than C(v0). The four parameters of procedure greedycol are the following: v0, the rst node to be colored; C, the coloring function, which is an input parameter for nodes 1; : : : ; v0 1, an inputoutput parameter for node v0 and an output parameter for nodes v0 + 1; : : : ; n; vmax, the rst node with the highest assigned color; and cmax, the highest assigned color, which is an inputoutput parameter. This procedure will be called several times by the algorithm that computes the (d; f)-chromatic number. An starting coloring can be obtained, if it exists, by calling the procedure greedycol with v0 = 1, C(1) = 0 and

218

S. Mu oz et al. / Omega 33 (2005) 211 221 n

cmax = k + 1. If this procedure returns cmax 6 k, then a (d; f)-extended k-coloring exists and cmax is an upper bound for the (d; f)-chromatic number. Given the current coloring C and its related parameters vmax and cmax, the improvement procedure looks for a previous node vm such that its color C(vm) can be increased avoiding that any color greater or equal to cmax will be

used. The variable vm is initialized as vm = vmax 1 and it is decreased while vm 1. At any iteration, if the returned value cmax improves the current upper bound for the chromatic number, this upper bound is updated. Following these ideas, an exact algorithm computes chrnum, the (d; f)-chromatic number of G, and col, its associated (d; f)-extended coloring function.

S. Mu oz et al. / Omega 33 (2005) 211 221 n

219

h A B

l t m

m D
Fig. 5. Fuzzy graph G for Example 3.3.

and the dissimilarity measure is the distance d(r; s) = |r s|. Three di erent types of distributions have been considered to generate the graphs; for each one of these types, the probabilities of the intensity levels of the fuzzy edges are as follows: null Type 1 Type 2 Type 3
1 2 1 4 1 6

low
1 6 1 4 1 6

medium
1 6 1 4 1 3

high
1 6 1 4 1 3

3.3.1. Computational experiences In order to test this algorithm, a computer program has been designed. This program, which has been coded in FORTRAN SALFORD FT95, computes the (d; f)-extended chromatic number of a fuzzy graph and its associated (d; f)-extended coloring function. The program has been run in a compatible IBM PC, Pentium IV 1:6 GHz and 256 Mb of RAM. A test-bed of fuzzy graphs has been used; the intensity levels of the fuzzy edges have been randomly generated in the set I = {null; low; medium; high}, the scale function f is dened by I f(I ) null 0 low 1 medium 2 high 3

Fuzzy graphs with 10, 15, 20 and 25 nodes have been considered. Thirty fuzzy graphs have been generated for each one of these values and for each type of distribution. From these samples, the minimum, median and maximum values for the (d; f)-extended chromatic number and the CPU times, have been recorded. They are shown in Table 2. Due to the exponential nature of the exact algorithm which computes the (d; f)-extended chromatic number, the CPU times increase quickly with the number of nodes, see Table 2 (note that the (d; f)-coloring problem is an extension of the coloring problem, which is NP-hard). For graphs with more than 20 nodes, heuristic algorithms can be needed. The graph modeling approach presented is very amenable for the design of e cient heuristic procedures, such as genetic algorithms, tabu search, etc. In any case, the execution of our algorithm can be stopped any moment after the rst call to the procedure greedycol is complete, obtaining a feasible solution if it exists. So, this approach always guarantees that a feasible coloring is determined, which is very di cult, in general, to assure with other approaches in these types of problems.

220 Table 2 Computational results n Type


d; f

S. Mu oz et al. / Omega 33 (2005) 211 221 n

CPU-time (s) Median 7 7 6.5 9 8.5 9 10 10 10 11 11 11 Maximum 9 10 9 10 10 10 12 12 12 13 13 13 Minimum 0.00 0.00 0.00 0.00 0.00 0.00 0.45 0.11 0.38 7.08 14.39 21.92 Median 0.00 0.00 0.00 0.14 0.27 0.53 8.24 4.81 14.28 382.01 575.18 354.49 Maximum 0.06 0.33 0.06 2.47 14.33 19.39 201.63 102.88 605.72 6074.04 11895.43 7182.71

Minimum 10 1 2 3 1 2 3 1 2 3 1 2 3 5 5 5 7 7 7 8 9 9 10 10 10

15

20

25

4. Conclusions In this paper, the concept of crisp incompatibility among the nodes of a graph is extended to include vagueness and graduation. To handle this new situation, two approaches to the coloring problem of fuzzy graphs with crisp nodes and fuzzy edges have been introduced. The rst one is based on the natural fuzzication of the classical coloring problem on graphs; an examplethe tra c lights problemhas been fuzzied and solved with this approach. The associated chromatic number can be dened and interpreted according to the meaning of the fuzzy edges of the fuzzy graph. The second approach extends the concept of crisp coloring function allowing the separation of colored nodes through a dissimilarity measure dened on the color set and a scale function. The new concept of coloring function considers an incompatibility degree related to the value of the membership function on each edge. The introduction of the scale function allows the decision maker a parameter control in order to obtain valid solutions verifying the natural constraint the more incompatible the edges, the more distant the colors. This approach may be very useful when dealing with some types of management problems, as it is the case of timetabling problems. An exact algorithm for this extended coloring problem has been introduced, and some computational experiments presented. Fuzzy-set theory proposes to be a tool for handling vagueness and degrees of certainty, and for giving a consistent representation of linguistically formulated knowledge which allows the use of precise properties and algorithms. In this paper new concepts about fuzzy graphs and two new fuzzy optimization problems have been introduced, which can be very useful in order to model and solve real-life problems without undue simplications.

Acknowledgements This research has been partially supported by DGICYT (National Grant number BFM2002-00281). References
[1] Garey MR, Johnson DS. Computers and intractability. A guide to the theory of NPcompleteness. New York: W.H. Freeman and Company; 1979. [2] Liu CL. Introduction to combinatorial mathematics. New York: Mc-Graw Hill; 1968. [3] Eilon S, Christodes N. The loading problem. Management Science 1971;17(5):25968. [4] Christodes N. Graph theory. An algorithmic approach. London: Academic Press; 1975. [5] Roberts FS. On the mobile radio frequency assignment problem and the tra c light phasing problem. Annals of the New York Academy of Sciences 1979;319:46683. [6] Pardalos PM, Mavridou T, Xue J. The graph coloring problem: a bibliographic survey. In: Du DZ, Pardalos PM, editors. Handbook of combinatorial optimization, vol. 2. Boston: Kluwer Academic Publishers; 1998. p. 33195. [7] Chaitin GJ, Auslander MA, Chandra AK, Cocke J, Hopkins ME, Markstein PW. Register allocation via coloring. Computer Languages 1981;6(1):4757. [8] Y nez J, Ramrez J. The robust coloring problem. European a Journal of Operational Research 2003;148(3):54658. [9] Zadeh LA. Similarity relations and fuzzy ordering. Information Sciences 1971;3(2):177200. [10] Zadeh LA. The concept of a linguistic variable and its application to approximate reasoningI. Information Sciences 1975;8(3):199249; Zadeh LA. The concept of a linguistic variable and its application to approximate reasoningI. Information Sciences 1975;8(4):30157;

S. Mu oz et al. / Omega 33 (2005) 211 221 n Zadeh LA. The concept of a linguistic variable and its application to approximate reasoningI. Information Sciences 1975;9(1):4380. Cutello V, Montero J, Y nez J. Structure functions with fuzzy a states. Fuzzy Sets and Systems 1996;83(2):189202. Kaufmann A. Introduction a la th orie des sous-ensembles e ous, 1o El ments th oriques de base. Paris: Masson et Cie; e e 1976. Rosenfeld A. Fuzzy graphs. In: Zadeh LA, Fu KS, Shimura M, editors. Fuzzy sets and their applications to cognitive and decision processes. New York: Academic Press; 1975. p. 7795. K czy LT. Fuzzy graphs in the evaluation and optimization o of networks. Fuzzy Sets and Systems 1992;46(3):30719. Ramrez J. Extensiones del problema de coloraci n de grafos. o PhD thesis. Universidad Complutense de Madrid, Madrid; 2001. Delgado M, Verdegay JL, Vila MA. On valuation and optimization problems in fuzzy graphs: a general approach and some particular cases. ORSA Journal on Computing 1990;2(1):7483. Golumbic MC. Algorithmic graph theory and perfect graphs. New York: Academic Press; 1980. Opsut RJ, Roberts FS. I-colorings, I-phasings, and I-intersection assignments for graphs, and their applications. Networks 1983;13:32745. Sto ers KE. Scheduling of tra c lights. A new approach. Transportation Research 1968;2:199234. Kerre EE. Basic principles of fuzzy set theory for the representation and manipulation of imprecision and uncertainty. In: Kerre EE, editor. Introduction to the basic principles of fuzzy set theory and some of its applications, 2nd revised edition. Gent: Communication and Cognition; 1993. p. 5770. Korman SM. The graph colouring problem. In: Christodes N, Mingozzi A, Toth P, Sandi C, editors. Combinatorial optimization. New York: Wiley; 1979. p. 21135.

221

[11] [12] [13]

[14] [15] [16]

[17] [18] [19] [20]

[21]

[22] Sager TJ, Lin SJ. A pruning procedure for exact graph coloring. ORSA Journal on Computing 1991;3(3):22630. [23] Mehrotra A, Trick MA. A column generation approach for graph coloring. INFORMS Journal on Computing 1996;8(4):34454. [24] Sewell EC. An improved algorithm for exact graph coloring. In: Johnson DS, Trick MA, editors. DIMACS series in discrete mathematics and theoretical computer science, vol. 26. Providence, RI: American Mathematical Society; 1996. p. 35973. [25] Herrmann F, Hertz A. Finding the chromatic number by means of critical graphs. Journal of Experimental Algorithmics 2002; 7(Article 10):19. [26] Eppstein D. Small maximal independent sets and faster exact graph coloring. Journal of Graph Algorithms and Applications 2003;7(2):13140. [27] Br laz D. New methods to color the vertices of a graph. e Communications of the ACM 1979;22(4):2516. [28] Avanthay C, Hertz A, Zu erey N. A variable neighborhood search for graph coloring. European Journal of Operational Research 2003;151(2):37988. [29] di Blas A, Jagota A, Hughey R. A range-compaction heuristic for graph coloring. Journal of Heuristics 2003;9(6):489506. [30] Bullnheimer B. An examination scheduling model to maximize students study time. In: Burke E, Ross P, editors. Practice and theory of automated timetabling II. Berlin: Springer; 1998. p. 7891. [31] Christodes N. An algorithm for the chromatic number of a graph. The Computer Journal 1971;14(1):389. [32] Brown JR. Chromatic scheduling and the chromatic number problem. Management Science 1972;19(4):45663. [33] Peemoller J. A correction to Br lazs modication of e Browns coloring algorithm. Communications of the ACM 1983;26(8):5957. [34] Kubale M, Jackowski B. A generalized implicit enumeration algorithm for graph coloring. Communications of the ACM 1985;28(4):4128.