An application of TOPSIS method for task scheduling algorithm in grid computing environment

Article history: Received October 15, 2013 Received in revised format March 2 2014 Accepted April 17, 2014 Available online April 23 2014 Today, the world facing with huge flood of data and the recent advances in computer technology have provided the capability to process significant amount of data. On the other hand, analyzing the information requires resources that most institutions do not have, independently. To handle such circumstances, grid computing has emerged as an important research area where the calculation of distributed computing and clustering are different. In this study, we propose a grid computing architecture as a set of protocols that use the cumulative knowledge of computers, networks, databases and scientific instruments based on the implementation of Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) technique. The results of the implementation of the proposed algorithm on grid systems indicate the superiority of the proposed approach in terms of validation criteria scheduling algorithms, such as task completion time and the performance compared with some alternative method. © 2014 Growing Science Ltd. All rights reserved.


Introduction
In the past, one of the biggest problems associated with complex calculations is associated with lack of appropriate hardware and software to perform the calculations in a reasonable amount of time.In many cases, it is possible that the code would not yield proper results because of existing bugs in codes.Applying supercomputers may reduce the burden of the computations but it cannot handle many scheduling problems.Therefore, one alternative is to handle the problem using the grid computing networks (Xueguang & Haigang, 2004;Plestys et al., 2007).In grid computing, many computational resources are shared by various networks of computers, geographically.Today, there is an increasing trend in solving problems using computing resources distributed strict geographical terms, called grid computing (Lan & Li, 2006;Wang et al., 2010;Yousif et al., 2011).The computational grid is a hardware and software infrastructure, which utilizes local resources.They provide the capability to enable the virtual enterprise to share and to integrate millions of geographically places.Grades are formed based on a set of heterogeneous resources, management systems, policies and requirements of various applications.Grid resources are heterogeneous and they are distributed, jointly.Thus, scheduling algorithms need changing workload and resources' availability to adapt the grid to achieve acceptable performance at the same time to observe the time limit.Scheduling various tasks on different servers is also considered as an interesting research work (Bouyer et al., 2008;Zhai, 2010).
According to Sarhadi and Meybodi (2009) and Shih et al. (2008), one of the main challenges in Grid computing is to select resources such as CPU-hours, network bandwidth, etc. appropriately for jobs in resource discovery phase.Since there is normally no centralized control and the dynamic/stochastic nature of resource availability, an appropriate selection mechanism needs to be highly distributed against the changes in the Grid environment.In addition, it is desirable to have a selection mechanism, which would not depend on the availability of coherent global information.Sarhadi and Meybodi (2009) studied a minimalist decentralized method for resource selection in a simplified Grid-like environment.They considered a system consisting of large numbers of heterogeneous learning automata connected to tasks that choose the best resources for their computational requirements.In their approach, there was no communication between the learning automata.They reported that reinforcement learning could be implemented to improve the quality of resource selection in large-scale heterogeneous system.Hamscher et al. (2000) discussed typical scheduling structures, which happen in computational grids and applied simulation techniques to make assessment on these characteristics based on combinations of various Job and Machine Models.Dai and Levitin (2007) studied a grid computing systems in which the resource management systems (RMS) could divide service tasks into execution blocks (EB), and send these blocks to various resources.The RMS is capable of assigning the same EB to various independent resources for parallel (redundant) execution to reach a desired level of service reliability.Based on the optimal schedule for service task partition, and distribution among resources, it is possible to reach the highest possible expected service performance or reliability.Dai and Levitin (2007) presented an algorithm, which was based on graph theory, Bayesian approach, and the evolutionary optimization approach.Plestys et al. (2007) emphasized on the relative importance of Grid quality of service (QoS) along with the development of GRID technology because of the concept of GRID service, the multiplicity of users' demands, and the heterogeneity of Grid resources.Sun and Wu (2007) conducted a comprehensive study of QoS (Wang & Luo, 2004) of distributed computing, specifically on grid computing where the necessity of distributed sharing and coordination tends to the extreme.They started at QoS policies, and then concentrated on technical characteristics of the enforcement of the policies and performance optimization under each policy.They also provided a classification of existing software system based on their underlying policies, a systematic understanding of QoS, and a framework for QoS of grid computing.

The proposed method
In this part, we present the proposed method and the definition of the problem along with its assumptions.In this paper, we consider Grid environment, and consequently, we assume a star topology grid management.Therefore, the users and their tasks are considered into independent subtasks and sub-tasks, which allocate the available resources.Redundancy techniques are normally used in order to increase reliability and better performance tasks such that a task can be processed by two or more sou sources and  where n represents the number of sub-tasks belonging to a specific task, c i is the computational complexity of each task S i .Let Ps j be the processing speed for R j source, then the processing time of task S i is obtained as follows,

Run tim
(4) As we can observe from Fig. 1, the transition j, k, l, m, n, o is associated with the task of processing time (T ij ) and data transfer (t ij ) and the resulting sum is added to the token.The probability of failures encountered during the processing of a task (p ij ) and the probability of failure encountered during data transfer (q ij ) are multiplied and added to the token.So that the transfer token T (execute) their transition-pair (t ij × T ij ), (p ij , q ij ), which indicates successful execution times to carry.When the redundancy technique is used to improve, the reliability of the simulation was carried out for each sub-task is processed by several sources.Therefore, T i , R ri , S i represent the minimum execution time following a task in the resources, which is calculated as follows, According Eq. ( 5) and the pair (t ij × T ij ), (p ij , q ij ), perform the following task in less time and probability S i (P i , Rr i ), after passing through the transmission T (min) located on the token in place P (coll ) is placed.In order for a task to be completed, the following tasks must be performed. ( where n represents the number of sub-tasks.In other words, to perform a task, the task is divided into a number of sub-tasks.Then for all the sub-tasks, completion time on a single source is calculated. For each sub-task, the minimum completion time is determined based on resources.After doing this for all the tasks, we had little time to complete all the tasks, and it will choose the least resources to run to the side send.After passing through the transmission T (max) and get a token in place P (RMS2) entered into operation duty ends with fire T (return), other tasks can be logged.In order to run the proposed method in CPNTOOLS we need to repeat our proposed algorithm and enormous tasks should be logged.For this reason, we assume that the task arrival rate is uniformly distributed between 0 and 1.

Calculation of Load Balancing
To achieve the maximum balance time between resources, utilization rates must be equal.To calculate the amount of load balancing, we compute the sum of the standard deviation of productivity.
As a result, we first calculate resource utilization.Utilization rate is calculated as follows: The largest run-time gain: , To calculate the value of e at the top of the track, the two places, a s1 , a s1 , respectively RMS data transmission times and processing times are kept by resource-use.The efficiency of resources i and j have the following implementation tasks, According to Eq. ( 8), the amount of each resource utilization is calculated and it should be noted at this point that efficiency rate based on the proposed model Azgomy for additional resources (resources that have a running time of more than a source) is equal to zero.To obtain the standard deviation, we first calculate the average productivity: and the standard deviation is calculated as follows, and the load balancing (lb) is computed as follows, Finally, to calculate the load balancing system, the transaction W is used.In other words, all values of W imported transaction efficiency, and then the final amount of the transaction will bring balance to the system load.So if lb = 0, the maximum load balancing will happen.If we assume that we have several different versions for all kinds of reliabilities and load balancing calculated by Eq. ( 11), we may use some multiple criteria decision making such as Technique for Order Preference by Similarity to Ideal Solution (TOPSIS) (Hwang & Yoon, 1981).The idea of TOPSIS is that the chosen alternative maintains the shortest distance from the ideal solution and the farthest from the negativeideal solution.The following summarizes the implementation of the TOPSIS method.

First step:
The decision matrix is transformed into an amorphous matrix scale as follows, Second step: Creation Matrix Scale weight vector w is given as input to the algorithm.Namely: where N d a matrix so that it points in the Scale and comparable indicators and w n × n is a diagonal matrix whose only non-zero elements of its original diameter.
Step Three: Determine the ideal solution and negative ideal solution.
, where min( ) if ; max( ) if Step Four: Calculate the size of the separation (distance).

Note that if
Step Six: R ranked.

Case stud
In

Fig
Fig. 1.T as follows: d i is shown erred betwee ed as follow