Simplified swarm optimization for task assignment ... - IEEE Xplore

1 downloads 0 Views 251KB Size Report
Abstract—Task assignment is a crucial step in distributed computing system, the target of the task assignment problem in distributed computing system is to ...
2017 13th International Conference on Natural Computation, Fuzzy Systems and Knowledge Discovery (ICNC-FSKD 2017)

Simplified Swarm Optimization for Task Assignment Problem in distributed computing system Wei-Chang Yeh

Chyh-Ming Lai

Yen-Cheng Huang

Department of IEEM National Tsing Hua University Taiwan

Institute of Resources Management and Decision Science National Defense University Taiwan

Department of IEEM National Tsing Hua University Taiwan

Tzu-Wei Cheng

Hsin-Ping Huang

Yunzhi Jiang

Department of IEEM National Tsing Hua University Taiwan

Taoyuan General Hospital Ministry of Health and Welfare Taiwan

School of Mathematics and Systems Science, Guangdong Polytechnic Normal University Guangzhou, China

Abstract—Task assignment is a crucial step in distributed computing system, the target of the task assignment problem in distributed computing system is to assign program tasks to processors so as to minimize overall costs made of execution and communication costs and satisfy with various limited resources constraints simultaneously within a system. The task assignment problem with more than three processors is NP-hard. In this paper, we propose an algorithm based on Simplified Swarm Optimization (SSO) as an alternative method to solve the problem. The results of the proposed method ate demonstrated by comparing with well-known methods. The experimental results show that the proposed SSO produces good quality solutions and consumes moderate time in solving task assignment problem in distributed computing system. Keywords- task assignment problem, distributed computing system, simplified swarm optimization.

I.

INTRODUCTION

Distributed computing system composed of numerous computers can execute parallel application tasks. Some fundamental performance criteria such as resources utilization, system reliability, data acquisition and turnaround time can be improved and well organized inside distributed computing system. Task assignment problem (TAP) in distributed computing system was originally introduced by Stone [1], his work lays down the concept of allocating numerous tasks to multiple processors. Task assignment is significant in distributed computing system, because both system performance and system parallelism can be better exploited by assigning tasks appropriately to processors. The objective of TAP in distributed computing system is to minimize the sum costs of execution costs and communication cost. In the meantime, two resource constraints need to be satisfied, because whenever the task is assigned to the processor, the task occupies processor’s capacity and memory, therefore, the combined capacity requirement of tasks can’t surpass the target processor’s capacity limit, and the combined memory requirement of tasks can’t surpass the target processor’s memory limit.

978-1-5386-2165-3/17/$31.00 ©2017 IEEE

According to the literature [2-7], heterogeneous computing systems and the homogeneous one have some distinctions, first, heterogeneous computing systems have independent tasks, and this means tasks execution costs differ from one processor to another. Second, each task and has its own independent capacity and memory requirement. Third, each processor has its own independent capacity and memory limit. Final, two interacting tasks execute on different processors incur communication costs; hence, TAP in heterogeneous distributed computing system is more complicated than homogeneous one. In this paper, we will undertake the experiments in heterogeneous computing systems. A proper task assignment can decrease the system turnaround time and expand the system throughput, however the dilemma always occurs when load balancing tends to allocate tasks to different processors to lower execution costs whereas preventing communication costs leads to the consequence of assembling all tasks to fewer processors. Hence complex and complicated TAP can be regarded as NPhard [7] and find an exact solution in acceptable time becomes challengeable. The methods adopted in this problem can be categorized into four aspects shown as follow: 1) graph theoretic representation, 2) mathematical programming, 3) state space search and 4) heuristics. However, the first three methods may cost a lot of time in searching solutions for solving large scaled problem. Hence, the main focus has been on developing heuristics, such as novel global harmony search (NGHS) [8], improved differential evolution (IDE) [9], simulated annealing [10] and greedy search [7]. NGHS and IDE outperform in above mentioned methods but still have some disadvantages. NGHS solves problems in an efficient way, but solutions are not outstanding. IDE produces good solution, however it still cost too much time in searching caused by its complicated updated mechanism. In order to effectively and efficiently solve the TAP in distributed computing system, we use SSO proposed by Yeh [11] to solve the problem in this paper. The proposed SSO algorithm is compared with other methods such as NGHS [8], IDE [9] and Genetic Algorithm (GA) [12]. The computational

773

results indicate that our proposed SSO algorithm has good quality of solutions in solving TAP. II. NOTATION AND PROBLEM FORMULATION A. Notation xij : If task j is assigned to processor i, xij = 1, otherwise xij = 0.! m : The number of processors.! n : The number of tasks.! eij : Execution costs if task j is executed on processor i.! cjw : Communication costs between task j and task w if they are executed on different processors/! mj : Processing requirement of task j.! Mi : Processing capacity of processor i.! pj : Memory requirement of task j.! Pi : Memory capacity of processor i.! d : Ratio of the communication linkages among all tasks. For any task assignment problem contain n tasks, there can be n(n-1)/2 task communication relationships, if two tasks are assigned to different processors and have task communication linkage between them, this situation will cost communication cost. The task communication density d shows the ratio of the communication relationships between all tasks. By tuning the ratio d, the scenario of the problem can be diversified.! B.

Mathematical model m

f ( x) =

ij

i =1

s.t.

n −1

n

n

¦¦ e x + ¦ ¦ c j =1

m

¦x i =1

ij

= 1,

ij

j =1 w = j +1

jw

(

1−

m

¦x x ij

i =1

∀j = 1, 2,..., n

iw

)

III. SOLVING TECHNIQUES In part A, the concept of our proposed method SSO will be explained. In part B, the procedure of the SSO will be described. A.

Simplified Swarm Optimization (SSO) SSO proposed by Yeh [11] can be seen as a discrete version PSO (DPSO). SSO, a population based, evolutionary and stochastic optimization algorithm, is designed to overcome the drawback of PSO in dealing with discrete optimization problems. Let pBest Pi = (pi1, pi2, …, pin) be the best fitness function value of the ith solution with its own history and gBest G = (g1, g2, …, gn) be the solution with the best fitness function value among all pBest. The fundamental concept of SSO is that each variable of any solution needs to be update to a value related to its current value xijt-1, its current pBest pijt-1, the gBest gj or a random feasible value x. The update mechanism of SSO as shown in Eq. (6), Cg, Cp and Cw are three predefined parameters, where xijt is the variable j in solution i at iteration t, ρ is a uniform random number generated between ranger [0, 1], besides. Thus, when 0 ” ρ < Cg is recognized, xijt is substituted by gBest, when Cg ” ρ < Cp is recognized, xijt will be substituted by its pBest, when Cp ” ρ < Cw is recognized, xijt is maintain unchanged, when Cw ” ρ < 1 is recognized, xijt is substituted by random value. That is Cg, Cp and C w construct four interval probabilities of the new variable value generated from the gBest, pBest, current solution and a random movement to maintain population diversity and enhance the capacity to escape from a local optimum.

(1) x itj

(2)

n

¦m x

ij

≤ Mi ,

∀i = 1, 2, ..., m

(3)

ij

≤ Pi ,

∀i = 1, 2, ..., m

(4)

j

j =1 n

¦px j

j =1

xij ∈ {0,1},

∀i , j

(5)

Eq. (1) described the objective function is to minimize the sum of execution costs and communication costs. Eq. (2) shows that each task must be assigned to one processor. Eq. (3) is the first inequality constraint and it indicates that the total memory requirement of tasks assigned to processor i can’t surpass memory capacity of processor i. Eq. (4) is the second inequality constraint and it indicates that the total processing requirement of tasks assigned to processor i can’t surpass processing capacity of processor i.

­ ° ° = ® ° ° ¯

g

j

if ρ ∈ [ 0 , C

p itj− 1 i f ρ ∈ [ C x itj− 1 x

w

w

)

,C

p

)

g

)

if ρ ∈ [C p , C if ρ ∈ [C g ,1]

(6)

SSO is very easy to be implemented and only need few parameters to tune. To date, SSO has attracted many researchers and been adopted to solve discrete problem [1317], and the results show that SSO has better convergence rate and high quality solutions. Solution representation In SSO, a candidate solution for TAP is composed of a vector of element n, and each element can be an integer value range from 1 to m. For example, a task assignment that assigns five tasks (n = 5) to three processors (m = 3), than, the solution can be represented by X = (x1, x2, …, x5) and xi = j shows that the task i is assigned to processor j. During the optimization process, values in the solution vectors will be modified by the update mechanism of SSO as shown in Eq. (6), so as to improve the objective function value. For the unconstraint problem, we can easily regard minimal objective function value as the best result. However, B.

774

situations become difficult when constraints need to be satisfied and simultaneously minimizing fitness value. To properly trade-off satisfying constraints and minimizing objective function, a penalty methods proposed by Zou [8, 9] is adopted in this paper. The new fitness objective function can be formulated as equation (7). F ( X i ) = f ( X i ) + λ ¦ t =1θ t ( X i ), ∀i ∈ W Ng

θ t ( X i ) = ª¬ max ( 0, g t ( X i ) )º¼

(7)

2

¦ i =1 ª¬ max ( 0, g t ( X i ) )º¼ W

2

(8)

In Eq. (7), Xi represents the candidate solution i. șt ( Xi ) is the tth normalized inequality constraint. W is the number of solutions. λ is the penalty coefficient and set as 1010 in this study. Ng = 2m, because every processor has two inequality constraints need to be examined. gt (Xi) in Eq. (8)!is the tth inequality constraint. In addition, if all max (0, gt (Xi)) are zeros for any i, șt (Xi) is set to 0 directly. The normalized penalty fitness function measures the feasibility of the fitness value, thus infeasibility of the constraints is considered in this problem and true performance can be well measured consequently.

to 50 and the memory limit Pi and capacity limit Mi of processor is between 50 to 250. We compare our SSO with other methods, for every method, the population size is 50 and generated randomly; furthermore, each method executes 10 independent runs for every experiment. The other parameters setting of these methods are shown in TABLE II. The experimental results for d = 0.3, 0.5 and 0.8 are show in TABLE III. to V, respectively. “aver.t” is the average time of 10 runs, “best”, “worst”, “mean”, and “std” present the best, worst, mean and standard deviation of fitness value over 10 runs, respectively. For making a fair comparison, the number of to calculate the fitness function (NCF) is adopted here as the stopping criterion and different in term of the size of problem as shown in TABLE I. TABLE I. n 20 30 50 75 100

Step 1. Step 2. Step 3. Step 4. Step 5.

Set parameters Cg, Cp and Cw and Initialize population with random individuals. Evaluate the fitness value as shown in Eq. (7) for each solution. Update pBest and gBest if necessary. Update the solution’s variables according to Eq. (6). If the stop criterion is met, then stop the algorithm. Otherwise, go back to Step 2. IV.

Method SSO

Experiment Results In experiment, there are 5 combinations of tasks n and processors m need to be tested where the (n, m) is (20, 12), (30, 18), (50, 30), (75, 50) and (100, 60), besides each combination has 3 different task communication density d (0.3, 0.5, 0.8) need to be experimented, therefore, there are 15 experiments in total. The value of other parameters is generated randomly: the execution cost eij is between 1 to 200, the communication cost cjw is between 1 to 50, the memory pj requirement and capacity mj requirement of task is between 1

NCF 50000 250000 500000 750000 1000000

PARAMETER SETTING OF COMPARED METHODS

Algorithm parameters

Cg = 0.50, Cp = 0.85, Cw = 0.95

NGHS IDE GA

Pm = 0.2 CRmax = 0.9, CRmin = 0.1 tournament selection crossover rate = 0.9 mutation rate = 0.05

TABLE III.

n 20

30

50

100

775

best worst

d = 0.3

name

aver.t

mean

std

12

SSO NGHS IDE GA

8.2 4.6 12.8 7.2

1714 1827 1714 1714

1838 2233 1754 1868

1735.1 2099.4 1733.5 1786

35.7 114.6 10.8 50.8

18

SSO NGHS IDE GA

48.5 29.4 65.7 34.7

3108 3498 3113 3123

3380 3719 3191 3274

3213.5 3627.6 3147.7 3192.3

88.5 72.3 27.0 54.4

30

SSO NGHS IDE GA

172.0 118.8 232.9 123.7

8107 8855 8161 8208

8685 9694 8480 8721

8418.2 9349.1 8278.3 8458.9

153.2 232.4 98.5 187.3

50

SSO NGHS IDE GA

475.8 319.5 558.4 338.3

20367 22338 20233 20552

20957 23083 20802 21213

20668.6 22772.4 20449.1 20871.6

175.8 228.5 192.8 220.2

60

SSO NGHS IDE GA

859.8 628.0 1035.1 634.2

36153 39592 36205 36349

36963 39961 36848 36975

36553.3 39855.9 36527.9 36602

241.9 113.8 220.2 178.4

A.

75

EXPERIMENTAL RESULT WHEN

m

EXPERIENTIAL RESULTS AND ANALYSIS

In chapter 4, we will first describe the experimental model of the problem thoroughly, after then; all of the compared methods’ parameter setting will be depicted. Finally, the experimental results are demonstrated in the end of the chapter 4.

m 12 18 30 50 60

TABLE II.

C. Procedure of Simplified Swarm Optimization The steps of SSO are shown below:

NCF FOR EACH PROPBLEM

TABLE IV.

n

m

20

12

30

18

50

30

75

50

100

60

m

20

12

30

18

50

30

75

50

100

60

d = 0.5

name

aver.t

best

worst

mean

std

SSO NGHS IDE GA SSO NGHS IDE GA SSO NGHS IDE GA SSO NGHS IDE GA SSO NGHS IDE GA

8.1 5.5 13.1 6.9 46.6 29.7 65.8 34.9 176.7 114.7 226.0 125.0 473.4 333.3 573.1 342.6 922.4 625.2 1028.0 655.6

2132 2365 2143 2158 5372 5740 5333 5398 15265 16403 15112 15577 33512 36030 33356 33941 60988 64385 60351 61563

2284 2634 2165 2320 5515 6041 5450 5520 16132 17096 15439 16291 34480 36924 33659 34728 62133 65497 61419 62128

2178.7 2492.5 2146.8 2224.2 5429 5853.9 5367 5454.2 15668.7 16758.7 15243.8 15838.6 34081.2 36527.5 33484.3 34294.6 61614.4 64940.1 60927.4 61799

45.0 75.7 6.7 52.6 45.4 108.2 32.2 39.4 238.0 200.3 99.32 231.9 245.4 256.5 104.3 256.6 346.3 355.2 306.1 191.0

TABLE V.

n

EXPERIMENTAL RESULT WHEN

EXPERIMENTAL RESULT WHEN

d = 0.8

name

aver.t

best

worst

mean

std

SSO NGHS IDE GA SSO NGHS IDE GA SSO NGHS IDE GA SSO NGHS IDE GA SSO NGHS IDE GA

8.3 5.8 13.3 7.3 46.5 30.0 66.2 35.6 177.3 116.1 225.9 123.1 475.6 353.9 596.6 359.6 1025.2 648.1 1044.7 665.1

3523 3775 3522 3569 7922 8422 7886 8125 22260 23508 22201 22703 54584 57421 54222 55309 96483 99333 95254 97094

3851 4452 3577 3859 8316 9151 8047 8709 23050 24413 22652 23552 55511 58517 55027 56073 97539 100738 96315 97881

3610.1 4143.4 3531 3689.3 8082 8691.3 7965.5 8376.8 22693.5 24035.6 22380.9 23224.5 55234.3 57999.2 54761.6 55722.3 97067.1 100222.7 95890.8 97460.7

98.3 225.4 16.6 102.8 109.5 237.5 46.6 203.3 279.0 305.5 117.7 295.6 307.6 351.4 227.3 260.0 389.3 434.3 325.2 277.5

The experimental results of density = 0.3, 0.5 and 0.8 are listed in TABLE III, IV and V, respectively and show that IDE have better quality of solution than other method, however, it consumes most time. NGHS can execute in least time, but it obtains worst quality of solution. SSO does not outperform IDE in term of the quality of solutions, but it is better than NGHS and GA with consuming moderate time in most experiments. V.

CONCLUSIONS

The distributed computing system has been adopted to various areas to date. If the task is properly allocated to the processor, system’s computing ability, execution costs, overall time and load balancing can be well improved. In this paper, we propose SSO to solve TAP and compare it with well-known

algorithms. The experiment results show that SSO can yield solutions with good quality in an efficient way. Thus, SSO is a good alternative method for solving TAP. ACKNOWLEDGMENT This research was supported in part by the Ministry of Science and Technology, Taiwan, R.O.C. under grant MOST 104-2221- E-007-061- MY3 and Natural Science Foundation of Guangdong Education Bureau, China (Grant No.: 2016KQNCX089). REFERENCES [1] H.S. Stone, Multiprocessor scheduling with the aid of network flow algorithms, IEEE transactions on Software Engineering, (1977) 85-93. [2] C.S.R. Murthy, Optimal task allocation in distributed systems by graph matching and state space search, Journal of Systems and Software, 46 (1999) 59-75. [3] Z. Juhász, S.J. Turner, A new heuristic for the process-processor mapping problem, Distributed and parallel systems: from instruction parallelism to cluster computing, (Kluwer Academic Publishers, Norwell, MA2000). [4] K. Taura, A. Chien, A heuristic algorithm for mapping communicating tasks on heterogeneous resources, Heterogeneous Computing Workshop, 2000.(HCW 2000) Proceedings. 9th, (IEEE2000), pp. 102-115. [5] M.A. Senar, A. Ripoll, A. Cortés, E. Luque, Clustering and reassignmentbased mapping strategy for message-passing architectures, Journal of systems architecture, 48 (2003) 267-283. [6] Y.C. Ma, T.F. Chen, C.P. Chung, Branch-and-bound task allocation with task clustering-based pruning, Journal of Parallel and Distributed Computing, 64 (2004) 1223-1240. [7] Q. Kang, H. He, H. Song, Task assignment in heterogeneous computing systems using an effective iterated greedy algorithm, Journal of Systems and Software, 84 (2011) 985-992. [8] D. Zou, L. Gao, S. Li, J. Wu, X. Wang, A novel global harmony search algorithm for task assignment problem, Journal of Systems and Software, 83 (2010) 1678-1688. [9] D. Zou, H. Liu, L. Gao, S. Li, An improved differential evolution algorithm for the task assignment problem, Engineering Applications of Artificial Intelligence, 24 (2011) 616-624. [10] E. Tabi, T. Muntean, S.A. Hill-climbing, G. Algorithms, a Comparative Study and Application to the Mapping Problem, IEEE 26th Hawaii International Conference System Sciences1993), pp. 565-573. [11] W. Yeh, Study on quickest path networks with dependent components and apply to RAP. Report, (NSC 97-2221-E-007-099-MY3, 2008-20112011). [12] T. Chockalingam, S. Arunkumar, A randomized heuristics for the mapping problem: The genetic approach, Parallel computing, 18 (1992) 11571165. [13] W.C. Yeh, Optimization of the disassembly sequencing problem on the basis of self-adaptive simplified swarm optimization, IEEE transactions on systems, man, and cybernetics-part A: systems and humans, 42 (2012) 250261. [14] W.C. Yeh, Orthogonal simplified swarm optimization for the series– parallel redundancy allocation problem with a mix of components, Knowledge-Based Systems, 64 (2014) 1-12. [15] C.L. Huang, A particle-based simplified swarm optimization algorithm for reliability redundancy allocation problems, Reliability Engineering & System Safety, 142 (2015) 221-230. [16] C.M. Lai, W.C. Yeh, Two-stage simplified swarm optimization for the redundancy allocation problem in a multi-state bridge system, Reliability Engineering & System Safety, 156 (2016) 148-158. [17] C.M. Lai, W.C. Yeh, C.Y. Chang, Gene selection using information gain and improved simplified swarm optimization, Neurocomputing, (2016).

776

Suggest Documents