Brief paper
An improved differential evolution algorithm for the task assignment problem

https://doi.org/10.1016/j.engappai.2010.12.002Get rights and content

Abstract

An improved differential evolution algorithm (IDE) is proposed to solve task assignment problem. The IDE is an improved version of differential evolution algorithm (DE), and it modifies two important parameters of DE algorithm: scale factor and crossover rate. Specially, scale factor is adaptively adjusted According to the objective function values of all candidate solutions, and crossover rate is dynamically adjusted with the increasement of iterations. The adaptive scale factor and dynamical crossover rate are combined to increase the diversity of candidate solutions, and to enhance the exploration capacity of solution space of the proposed algorithm. In addition, a usual penalty function method is adopted to trade-off the objective and the constraints. Experimental results demonstrate that the optimal solutions obtained by the IDE algorithm are all better than those obtained by the other two DE algorithms on solving some task assignment problems.

Introduction

Task assignment problem (TAP) was first introduced by Stone (1977), and it involves assigning a number of tasks to a number of processors in a distributed system. The objective of TAP is to minimize the total execution and communication costs incurred by the task assignment, which is limited by the resource requirements. Specially, the number of tasks that a given processor is able to handle is restricted by its memory capability and processing ability.

Over the past decades a number of optimization algorithms have been used extensively in different kinds of task assignment problems. Lo (1988) proposed a family of heuristic algorithms for Stone's classic model. In addition, they augmented this model to include interference costs which reflect the degree of incompatibility between two tasks. The inclusion of interference costs in the model yielded assignments with greater concurrency, thus overcoming the tendency of Stone's model to assign all tasks to one or a few processors. Park (1997) described a genetic mean field annealing (GMFA) algorithm for the task assignment problem, and it was based on two types of stochastic search techniques—genetic algorithm (Holland, 1992) and mean field annealing (Van den Bout and Miller, 1990). The problem was to find an optimal mapping of multiple communicating tasks onto the processing nodes of a distributed computing system. The objective of mapping was to minimize the total execution time without sacrificing solution quality. Kopidakis et al. (1997) transformed the minimization problem to a maximization one, where they tried to determine and avoid large communication costs and inefficient allocations. After an appropriate graph transformation, they proposed two fast algorithms, the Matching based and Max Edge heuristics, in order to consider trade-offs between task clustering and task processor assignment. Lee and Shin (1997) focused on the assignment problem on a homogeneous network, which was composed of N functionally identical processors, each with its own memory. The assignment problem in such a homogeneous network was known to be NP-hard even for N=3, thus making it intractable for a network with a medium to a large number of processors. They, therefore, focused on task assignment in general array networks, such as linear arrays, meshes, hypercubes, and trees. They first developed a modeling technique that transforms the assignment problem in an array or tree into a minimum-cut maximum-flow problem. The assignment problem was then solved for a general array or tree network in polynomial time. Salman et al. (2002) presented a new task assignment algorithm that is based on the principles of particle swarm optimization (PSO). PSO follows a collaborative population-based search, which models over the social behavior of bird flocking and fish schooling. PSO system combines local search methods (through self experience) with global search methods (through neighboring experience), attempting to balance exploration and exploitation. They also discussed the adaptation and implementation of the PSO search strategy to the task assignment problem. Tom and Murthy (1999) considered the problem of finding an optimal allocation of tasks onto processors of a distributed computing system. The processors need not have any particular inter-connection structure. They considered two models, one in which no precedence relations exist between tasks, and another in which there are precedence relations between tasks. Each task causes two types of costs to be incurred by the processor to which it is allocated—the execution cost of the task (which varies from processor to processor in a heterogeneous system), and communication cost when the task has to communicate with other tasks which are not allocated to the same processor. Their work concentrated on determining an optimal task allocation that leads to minimum turnaround time possible. Ucar et al. (2006) considered the version in which communicating tasks are to be assigned to heterogeneous processors with identical communication links to minimize the sum of the total execution and communication costs. They used three methods to obtain a family of task assignment algorithms including multilevel ones that applied clustering and refinement heuristics repeatedly. Salcedo-Sanz et al. (2006) introduced a novel formulation of TAP, in which each processor was limited in the number of task it can handle, due to the so-called resource constraint. They proposed two hybrid meta-heuristic approaches for solving this problem. Both hybrid approaches used a Hopfield neural network to solve the problem's constraints, mixed with a genetic algorithm (GA) and a simulated annealing for improving the quality of the solutions found. Kaya et al. (2007) considered the problem of scheduling an application on a computing system consisting of heterogeneous processors and data repositories. The application consists of a large number of file-sharing otherwise independent tasks. The files initially reside on the repositories. The processors and the repositories are connected through a heterogeneous inter-connection network. Their aim was to assign the tasks to the processors, to schedule the file transfers from the repositories, and to schedule the executions of tasks on each processor in such a way that the turnaround time is minimized. Kaya et al. (2007) proposed a heuristic composed of three phases: initial task assignment, task assignment refinement, and execution ordering. Ho et al. (2008) proposed an orthogonal particle swarm optimization (OPSO) algorithm to solve task assignment problem. The OPSO performed well in solving the large discrete task assignment problem which was NP-complete in a limited amount of computation time. This was achieved by the novel move behavior in the swarm: an intelligent move mechanism (IMM) using a divide-and-conquer strategy. Discrete particle swarm algorithm (DPS) (Schoofs and Naudts, 2002) was a newly developed method to solve constraint satisfaction problem (CSP) which has advantage on search capacity and can find more solutions. Yang et al. (2009) proposed an improved DPS to solve TAP. The algorithm had a special operator namely coefficient multiplying speed, which was designed for CSP. Accordingly, they redefined a coefficient multiplying speed operator with probability selection. They analyzed the speed and position updating formula, and derived a refined position updating formula.

Differential evolution (DE) algorithm was first proposed by Storn and Price (1995), it is a simple but practical optimization algorithm. Due to its good performance, the DE has been applied to various optimization problems, such as permutation flowshop scheduling problem (Pan et al., 2008), manufacturing cell formation problem (Noktehdan et al., 2010), optimization of chemical process (Wu et al., 2008), etc.; however, it has never been used to solve task assignment problem. In this paper, we modified the two important control parameters of the DE algorithm so as to improve its performance. The improved version of the DE is called improved differential evolution (IDE) algorithm, and we used the IDE to obtain the optimal/near optimal solutions for a number of task assignment problems.

The paper is organized as follows. In Section 2, the general formulation of task assignment problem is presented. In Section 3, the procedure of the DE is briefly presented, and two improved versions of DE are also summarized. In Section 4, an improved differential evolution (IDE) algorithm is proposed, and the procedure of the IDE is adequately described. In Section 5, some preparation work is considered for using the IDE to solve task assignment problems. In Section 6, a large number of experiments are carried out to test the optimization performance of the IDE for task assignment problems. We end this paper with some conclusions for further research in Section 7.

Section snippets

Problem formulation

There are different versions of formulations for TAP, and the formulation we consider in this paper is from Yin et al. (2006). The general formulation of TAP can be described as follows:minQ(X)=i=1rk=1neikxik+i=1r1j=i+1rcij1k=1nxikxjks.t.k=1nxik=1,i=1,2,,ri=1rmixikMk,k=1,2,,ni=1rpixikPk,k=1,2,,nxik{0,1},i,kThe notations used in the above problem formulation are listed in Table 1.

According to Eq. (1) and Table 1, this is a 0–1 quadratic integer programming problem, and its

Three differential evolution algorithms

DE is a competitive and potential algorithm compared to the other evolutionary algorithms, and an excellent performance of the DE has drawn much attention from Researchers. Due to the enormous application potential of DE algorithm, its many improved versions have been developed, such as ODE (Rahnamayan et al., 2008) and JADE (Zhang and Sanderson, 2009).

An improved differential evolution algorithm (IDE)

The key difference between IDE and traditional DE is in the way of adjusting scale factor F and crossover rate CR. To improve the performance of the DE algorithm, we devise an improved differential evolution (IDE) algorithm. Our method modifies scale factor F according to the objective function values of all candidate solutions in mutation step, and adjusts crossover rate CR in terms of iteration number in crossover step. Both modified operators can not only diversify candidate solutions, but

A modified mathematical model

Before illustrating the new model, it is necessary to explain the candidate solution related to this new model. We represent candidate solution with a vector of r elements, and each element is an integer value between 1 and n. Fig. 2 shows an illustrative example for the ith candidate solution xi, which describes a task allocation that assigns five tasks to three processors. For example, xi,3=2 means that the third task is assigned to the second processor. Formally, xi,j=l implies that the jth

Experimental results and analysis

In this section, we randomly generate three groups of examples to test the performance of the IDE, and compare our algorithm with the ODE and JADE on solving task assignment problems. The results show that the IDE outperforms the other two DE algorithms for most task assignment problems. The results also demonstrate that the IDE is competent for both small-scale and large-scale task assignment problems.

The inter-task communication of TAP is interpreted by a task interaction graph (TIG). G(V,E)

Conclusions

We proposed an improved differential evolution algorithm (IDE) to solve task assignment problem in this paper. The IDE introduced an adaptive scale factor and a dynamical crossover rate so as to improve the performance of the DE algorithm. A large number of examples had been used to extensively investigate the performance of the proposed algorithm. Experimental results show that the IDE algorithm performs well on finding the optimal/near optimal task assignment, and it is a viable approach for

Acknowledgment

This work was supported by National Science Foundation of PR China under Grant 81000639.

References (28)

  • D.X. Zou et al.

    A novel global harmony search algorithm for reliability problems

    Computers & Industrial Engineering

    (2010)
  • A. Billionnet et al.

    An efficient algorithm for a task allocation problem

    Journal of ACM

    (1992)
  • Ernst, A., Hiang, H., Krishnamoorthy, M., 2001. Mathematical programming approaches for solving task allocation...
  • S.Y. Ho et al.

    OPSO: orthogonal particle swarm optimization and its application to task assignment problems

    IEEE Transactions on Systems, Man, and Cybernetics—Part A

    (2008)
  • Cited by (0)

    View full text