1. Trang chủ
  2. » Thể loại khác

DSpace at VNU: Some physical properties of ZnAl2O4: Cr3+ (Co2+) powders prepared by hydrothermal method

3 142 0

Đang tải... (xem toàn văn)

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 3
Dung lượng 98,56 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

A Novel Particle Swarm Optimization – based Algorithm for the Graph Coloring Problem Anh Tuan Hoang, Giang Thuy Thi Trinh, Vinh Trong Le Department of Mathematics – Mechanics - Informat

Trang 1

A Novel Particle Swarm Optimization – based

Algorithm for the Graph Coloring Problem

Anh Tuan Hoang, Giang Thuy Thi Trinh, Vinh Trong Le Department of Mathematics – Mechanics - Informatics Hanoi University of Science, Vietnam {hoangtuananh, trinhthithuygiang,letrongvinh}@hus.edu.vn

Abstract — In this paper, we study the problem of graph coloring

and propose a novel particle swarm optimization (PSO)

algorithm for it We use the PSO evolutionary progress to

improve a simple deterministic greedy algorithm The new

algorithm can achieve a result that is better than known heuristic

algorithms do, as verified by an extensive simulation study

Keywords — Graph coloring, first-fit algorithm, particle swarm

optimization

I INTRODUCTION Graph coloring is defined as coloring the nodes of a graph

with the minimum number of colors without any two

adjacent nodes having the same color [1] The coloring of a

graph G = (V, E) is a mapping c: V S, where S is a finite

set of colors, such that if (u,v) E then c(u)  c(v) In other

words, adjacent vertices are not assigned the same color The

problem that arises is the coloring of a graph provided that

no adjacent vertices have the same color The chromatic

number X(G) is the minimum number of colors needed for

coloring of the graph G A graph G is k-chromatic, if X(G) = k,

and G is k-colorable, if X(G) • k Graph coloring is one of the

most useful problems in the graph theory It has been used

to solve problems in school timetabling, computer register

allocation, electronic bandwidth allocation, and many other

applications

A Previous work

The problem of determining the chromatic number X(G) for

certain graph G with n nodes was shown to be NP-complete

[2] Therefore, researchers have been working to find greedy

and heuristic algorithms for this problem One of the most

popular greedy techniques is sequential coloring This

technique focuses on carefully picking the next vertex to

be colored and never re-colors any vertex The simplest

algorithm of this kind is the First- Fit (FF) algorithm [3] which

takes vertex in an arbitrary order and assigns each vertex the

lowest legal color This algorithm can be implemented to run in

O(m) (m is the number of edges) but it brings a poor result

Authors in [4] proposed Largest Degree Ordering (LDO)

algorithm in which vertices are colored in the order of

non-increasing degrees LDO was shown (by experiment results) to

be better than FF and it has the complexity of O(n 2 ) Before

that, Brèlaz proposed another sequential method and gained a

better performance [5] In his method, vertices are considered

in Saturation Degree Ordering (SDO) The saturation degree

of a vertex is defined as the number of its adjacent

differently colored vertices Intuitively, this heuristics provides a better coloring but slower than LDO as it can be

implemented to run in O(n 3 ).

B This work For an arbitrary graph G with n vertices, there are n! ways

to sequentially color the vertices Therefore, it’s impossible to examine the all search space We used PSO technique [6] to reduce search space but still converge to a global good solution Our main contribution is a method to obtain a realistic solution from a random set of solutions using PSO technique The rest of the paper is organized as follows The main concepts of PSO and its application to solve the graph coloring problem are presented in section II Section III presents some experimental results We make conclusion and recommend some future works in section IV

II PARTICLE SWARM OPTIMIZATION FOR SOLVING GRAPH COLORING PROBLEM

A Particle swarm optimization

Particle swarm optimization is a stochastic optimization technique developed by Dr Eberhart and Dr Kennedy [4], inspired by social behavior of bird flocking or fish schooling It shares many similarities with other evolutionary computation techniques such as genetic algorithms (GA) The algorithm is initialized with a population of random solutions and searches for optima by updating generations However, unlike the GA, the PSO algorithm has no evolution operators such as the crossover and the mutation operator In the PSO algorithm, the potential solutions, called particles, fly through the problem space by following the current optimum particle By observing bird flocking or fish schooling, we found that their searching progress has three important properties First, each particle tries

to move away from its neighbors if they are too close Second, each particle steers towards the average heading of its neighbors And the third, each particle tries to go towards the average position of its neighbors Kennedy and Eberhart generalized these properties to be an optimization technique as below

Consider the optimization problem P First, we randomly

initiate a set of feasible solutions; each of single solution is a

“bird” in search space and called “particle” All of particles have fitness values which are evaluated by the fitness function

to be optimized, and have velocities which direct the flying of

the particles The particles fly through the problem space by

978-1-4244-4994-1/09/$25.00 ©2009 IEEE

Trang 2

following the current optimum particles The better solutions

are found by updating particle’s position In every iteration,

each particle is updated by following two "best" values The

first one is the best solution (fitness) it has achieved so far

(The fitness value is also stored.) This value is called pbest.

Another "best" value that is tracked by the particle swarm

optimizer is the best value, obtained so far by any particle in

the population This best value is a global best and called gbest.

When a particle takes part of the population as its topological

neighbors, the best value is a local best and is called lbest

After finding the two best values, the particle updates its velocity and

positions with following equation (1) and (2)

v[ ] = v[ ] + c 1 * rand() * (pbest[ ] - present[ ]) +

+ c 2 * rand() * (gbest[ ] - present[ ]) (1)

PSO Algorithm

For each particle

Initialize particle

EndFor

Do

For each particle

Calculate fitness value

If the fitness value is better than the best fitness value

(pBest) in history

set current value as the new pBest

EndFor

Choose the particle with the best fitness value of all the

particles as the gBest

For each particle

Calculate particle velocity according to (1)

Update particle position according to (2)

EndFor

While (stop condition is true)

The stop condition mentioned in the above algorithm can

be the maximum number of interaction is not reached or the

minimum error criteria are not attained

B Solving the graph coloring problem base on PSO

In this section, we present application of PSO technique for

the graph coloring problem Given graph G with n, let’s color

vertices of G use as less color as possible under the constraint

that no adjacent vertices have the same color

It’s important to note that the order in which vertices to be

considered results in the number of colors used

We take the below example to illustrate the idea

Example:

Consider the graph given in Fig.1 If we color with the

order 1- a; 2-b; 3-c; 4-d; 5-e, we have to use two colors, say 0

and 1, (a – 0; b – 1; c – 0; d – 1; e – 1) But follow the order

1-a; 2-b; 3-d; 4-c; 5-e, we have to use three colors (a – 0; b – 1;

d – 0; c – 2; e – 1)

Figure 1 Example of coloring order

In other words, the coloring order has impacts on the solution’s performance This is the main idea for us to design a new algorithm In our algorithm, each particle equivalent to one coloring order of vertices and this coloring order is changed by the evolutional process of PSO technique When the PSO evolution process finished, the best coloring order will

be found

Our new algorithm is described as follows

1) Represent a particle: There are three ways to represent

a particle; they are the representation by real number, by integer number and by binary number In this paper, we use

the first one Each particle is a vector with n components;

every component is a real number corresponds to one in n vertices

2) Decode a particle: Assume that the set of vertices is {x 1 ,x 2 ,…, x n }, we use the below steps to decode the particle j th presented by vector {a j 1 , …, a j n } to a feasible solution.

a) Step 1: Rank {a j 1 , …, a j n } in increasing order

b) Step 2: Color G by FF algorithm according to the order obtained in Step 1: if rank of a j is k (1 ” k ” n) then we color the i th vertex (x i ) after coloring correspond to a j t which

has rank 1, 2, , k-1.

3) Initiate population: The beginning population is initiated with P particles (P is a designed parameter) Each particle is a vector with N components Every component is a real number between 0 and 1 which is randomly generated 4) Fitness function: If the j th particle results c jcolors used, then the fitness value of this paritcle is computed with following equation:

F j = 1/c j (3) 5) Stop condition: The stop condition we used in this paper is defined as the maximum number of interaction N gen

(N gen is also a designed parameter)

C The complexity

In this section, we compute the complexity of the above

algorithm To initiate the population size P, we have to randomly generate a matrix with P rows and n columns So, the complexity of initiate phase is O(P.n) It’s clear that the population updating has also the complexity of O(P.n) In particle decoding, the complexity of Step 1 is O(nlogn), and in Step 2, we use FF algorithm, so the complexity of this step is also O(m) Therefore, the total complexity of our algorithm with P particles and N gen generations is O(N gen P.max{nlogn, m}), in which n is the number of vertices and m is the number

of edges That means, our algorithm has complexity of

O(nlogn) in the best case and O(n 2 ) in the worst case

Trang 3

III EXPERIMENT RESULTS

We have generated 100 random graphs on 50 and 100

vertices for each edge-density 0.1, 0.2, 0.3, 0.5, 0.75 We have

implemented the above three heuristic algorithms (FF, LDO,

SDO) in addition to the proposed (PSO) Table 1 show the

average results of 100 times of running the four algorithms

TABLE I AVERAGE RESULTS OF 100 TIMES

Number

of

Vertices

Density

Number of colors used

FF LDO SDO PSO

50

0.1 5.87 5.02 4.97 4.02 0.2 7.93 6.86 6.66 5.83 0.3 9.96 8.74 8.36 7.38 0.5 13.75 12.24 12.01 10.83 0.75 20.22 18.45 18.34 17.43

100

0.1 8.17 7.14 6.75 6.05 0.2 11.67 10.35 9.79 9.33 0.3 16.36 14.55 13.91 13.45 0.5 20.07 18.12 18.43 16.60 0.75 34.25 31.54 30.87 29.85

The results in Table 1 clearly show that, SDO is better than

LDO, LDO is better than FF and ours is the best of four

algorithms For example, our results are 1.83 (in the best case,

with the number of vertices is 100 and the density is 0.5) and 0.7 (in the worst case, with the number of vertices is 100 and the density is 0.1) smaller than results of the best of three others (SDO) In average of 200 samples above, ours uses 2.478, 1.224 and 0,932 colors less than FF, LDO and SDO

respectively It’s because, our algorithm search for the optimal

order in a whole space of n! candidates while the three others

only work in a nearly fix order

ACKNOWLEDGMENT This research is partly conducted as a program for the QT-09-03 and TN-QT-09-03 in Funds for Science and Technology by the Vietnam National University

REFERENCES

[1] Tommy R Jensen, Bjarne Toft, Graph Coloring Problems,

Wiley-Interscience,1995

[2] Garey M R., Johnson D S., Computers and Intractability: A Guide to the Theory of NP-Completeness, W.H Freeman, 1979 [3] Assefaw Hadish Gebremedhin, Parallel graph coloring, Phd

Thesis, University of Bergen, Norway, 1999

[4] De Werra, D., Heuristics for Graph Coloring, Computational

Graph Theory, Comput Suppl 7, Springer, Vienna, 1990,

191-208

[5] Brèlaz, D., New methods to color the vertices of a graph,

Communications of the Assoc of Comput Machinery 22, 1979, 251-256

[6] J Kennedy and R Eberhart, Swarm Intelligence, Morgan Kaufmann Publisher Inc, 2001

Ngày đăng: 16/12/2017, 03:51

TỪ KHÓA LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm