**3.1 Workload**

Output: Sender Resource, Receiver Resource

Receives Loadcluster of other clusters of grid; Collects Loadcluster in the table of clusters information

Select the first cluster as receiver cluster;

Sends this information for the Migration Agent

Sort table of clusters information by ascending order relative to their load

*Artificial Intelligence - Latest Advances, New Paradigms and Novel Applications*

Sorts Worker Agents of first resource of current cluster by selection policy and communication cost;

We implemented a system prototype using JADE [6] (Java Agent Development Framework) for agent implementation, and Alea 2 [7] (Job Scheduling Simulator based on GridSim) as a simulator of the grid. Alea 2 is based on GridSim Toolkit [8] and represents an extension that contains better tools for scheduling algorithm implementation visualization competency and an upper speed of simulations.

To find the constant H for calculating the higher threshold, we execute our load balancing method 10 times for the different values of H = 0.5, 0.6, 0.7, 0.8, 0.9, and

**Figure 3** demonstrates the number of migration for the different values of H threshold. The number of migration augments with H threshold values but when

the value of H threshold changes to 0.9 and 1, the number of migration is

augmenting intensely. So we set the value of H threshold at 0.9.

Sorts the resources of receiver cluster by ascending order of their load Receiver Resource = the first resource of list of resources in receiver cluster Sorts the resources of current cluster by descending order of their load Sender Resource = the first resource of list of resources in sender cluster

If (events\_happens () =7) then

{

{

}

**Figure 3.**

**Figure 4.**

**66**

**3. Implementation**

observed number of migration.

*Number of migration on different value of H.*

*Number of migration on different value of L.*

We modeled the complex data set from the National Grid of Czech republic MetaCentrum, these data permit us to implement very realistic simulations. Also, it offers information about machine failures and specific job requirements and that information influences the quality of solutions generated by the scheduling algorithms. Job description includes (Job ID, user, queue, number processors used, etc.). Also, the description of clusters includes complete information with RAM size, CPU speed, CPU architecture, operating system, and the list of supported properties (cluster location, allowed queue (s), and network interface, etc.). Additionally, information machines were in maintenance (failure/restart). Finally, the list of queues containing their time limits and priorities is provided. More details on the trace file used can be found at [9].

#### **3.2 The simulation environment**

A class library was developed that simulates the activities of an agent platform. This library, called ABLBM (Agent-based load balancing), includes the classes: Grid Agent, Cluster Agent, Migration Agent, LBC Agent, and Resource Agent. The simulation is initialized by the Grid Agent class which makes instances of resources, jobs, and other entities as required by the GridSim standard. Grid Agent reads information describing the grid resources and jobs from a data file, reads the jobs from the data\_set file, and dynamically produces the job instances over time. **Figure 5** specifies the Grid Resource parameters such as resource ID, resource's CPU speed, and resource's memory capacity. Next, Grid Agent lists all the available grid resources within the grid environment. When the simulation time is equal to the job submission time, the Grid Agent starts the Cluster Agent and dynamically sends the jobs created for the Resource Agents over time.

Based on its own load and the estimated balance threshold, Cluster Agent analyzes the load state of the cluster. In the imbalance state, Cluster Agent defines the


**Model System**

AGENT BASED GRID SYSTEM USING CSP APPROACH [13]

**4. Conclusion**

**configuration**

control, with five agents

towards an integration of the two fields.

**Load information gathering policy**

*Agent Based Load Balancing in Grid Computing DOI: http://dx.doi.org/10.5772/intechopen.94219*

> **Selection policy**

**Location policy**

the desired container

Recognizing key factors to prove the convergence of grid and MAS and models is

We have presented a theoretical comparison between some related works and the proposed model. The proposed model has some unique features. It is hierarchical, which facilitates the circulation of information through the tree and defines the flow of messages between agents. Also, the proposed Agent-based load balancing model uses an event-driven information gathering policy, the latter being especially beneficial in terms of economy of usage of network resources. Furthermore, it can achieve excellent performance with significantly less computational load and system instability than a periodic information gathering policy. To select the migrating agent, we use the credit-based concept, accordingly, some factors are considered to calculate the credit value. Moreover, in the selection of receiver resources, we take into consideration the resource loads and the communication between the receiver resources and the migrating agent for avoiding the migration for external resources and reducing the communication cost. The migration decision is taken locally by Cluster Agent, where each cluster agent to balance its load among its associated resources. If it fails, the Cluster Agent migrates worker agents to underloaded clusters based on the load information received by other clusters. Finally, it supports flexibility and expandability, thus, various intelligent agents have been deployed to decrease system complexity by modularization. Moreover, it is easy to

not a simple task. We note that the current state of GRID and MAS research activities are necessarily developed to enable justifying the study of the path

modify its components, and add more features and functions to it.

observations of designers, developers, and users.

**69**

In theory, the multi-agent architecture of load balancing systems introduces important improvements, such as better average performance when one computer is not working and a lower system-error probability. In terms of the development process, fault-tolerance, and scalability, the agent approach offered the expected improvements, both in objective real-world measurements and in the subjective

On another hand, we could not overcome several well-known problems when designing distributed systems. For example, handling failed entities, synchronization problems, and query-response-related issues turned out to be the same as in any distributed programming. It is important to be aware of the advantages and disadvantages of the agent and non-agent approaches, but the most important point is whether the advantages prevail. For load balancing systems, our theoretical analysis and practical experiences both indicate that the advantages of agent-based

The system performance was not studied yet. Thus, there is a need to analyze execution efficiency and compare it to available Agent-based load balancing platform evaluations. Further research is going to concentrate on execution performance.

load balancing systems clearly be more than the observed disadvantages.

**Decision making**

migration manager

**Migration condition**

**Implementation**

overloaded resources (sources) and the underloaded ones (receivers), depending on their load information by using the threshold values. Grid Agent and Cluster Agent interfaces are shown in **Figures 5** and **6**.
