27.03.2014 Views

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SEKE 2012 Proceedings - Knowledge Systems Institute

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Evolutionary Learning and Fuzzy Logic applied to a Load Balancer ∗<br />

Francisco Calaça Xavier<br />

Instituto de Informática<br />

Universidade Federal de Goiás<br />

chicocx@gmail.com<br />

Max Gontijo de Oliveira<br />

Instituto de Informática<br />

Universidade Federal de Goiás<br />

maxopala@gmail.com<br />

Cedric L. de Carvalho<br />

Instituto de Informática<br />

Universidade Federal de Goiás<br />

cedric@inf.ufg.br<br />

Abstract<br />

Load balancing is a fundamental requirement in the<br />

development of parallel and distributed applications. The<br />

emergence of computational grids increased the demand<br />

for more efficient load balancers. Fuzzy Logic and<br />

Evolutionary Learning shown to be effective in order to<br />

increase the performance of a load balancer. This paper<br />

presents a Fuzzy Inference System capable to assist a load<br />

balancing in a computational grid. Evolutionary Learning<br />

was used to generate rules for an Inference System, which<br />

evaluated the behavior of nodes when they are subjected to<br />

a workload. The obtained results proved that it is possible<br />

to improve the performance of a load balancer using<br />

a Fuzzy Inference System when the rules are previously<br />

generated according to a particular behavior of the system.<br />

Keywords: Evolutionary Learning, Fuzzy Inference<br />

System, Load Balance<br />

1. Introduction<br />

The scalability problem appears with the increasing use<br />

of information systems. One way to scale these systems is<br />

by using load balancers.<br />

This paper proposes the use of a dynamic load balancer.<br />

Software agents [3] are installed in the nodes that monitor<br />

the state of load and transmit this data to the load balancer.<br />

In load balancer, this state of load is used by a Fuzzy<br />

Inference System to change dynamically the rate of requests<br />

sent to each of these nodes.<br />

In this proposal, initially we used Evolutionary Learning<br />

[2] to learn fuzzy rules according to the behavior of nodes.<br />

Subsequently, these rules were used in a Fuzzy Inference<br />

System that dynamically changes the behavior of the load<br />

balancer.<br />

The rest of this paper is organized as follows. Initially,<br />

in Section 2, some related works are described. Section<br />

∗ Sponsored by Fundação de Amparo à Pesquisa do Estado de Goiás -<br />

FAPEG and Centrais Elétricas de Goiás - CELG<br />

3 introduces the concept of load balancing. Section 4<br />

describes the Artificial Intelligence techniques used to build<br />

the load balancer developed in this work. In Section 5, a<br />

case study and the results obtained with our experiments is<br />

presented. Finally, we conclude the work in Section 6.<br />

2. Related Work<br />

Salehi et al [13] proposed the application of the ant<br />

colony technique in a load balancer. In this case, intelligent<br />

ants react proportionally to the conditions of the balancer’s<br />

nodes. The load balancing is the result of the interaction<br />

between these ants over the nodes.<br />

In the approach proposed by Salehi et al, if a node gets<br />

overloaded, it will create a new ant that will balance the load<br />

by sending the requests to less loaded nodes. This step will<br />

lead to balance the load between the nodes.<br />

According to Wang et al [16], hosting databases on<br />

virtual machines (VMs) has great potential to improve<br />

efficiency of resource use and eases deployment of<br />

databases.<br />

The work of Wang et al [16] considers the problem<br />

of allocating resources on demand to a virtual machine<br />

running a database that serves data to a large amount of<br />

dynamic and complex queries according to some Quality<br />

of Service(QoS) 1 requirements.<br />

To solve this problem, it was proposed an autonomous<br />

resource management approach. This approach uses a fuzzy<br />

modeling to capture and evaluate the performance of a<br />

VM that hosts a database. Its goal is to take decisions<br />

regarding resource requirements for each virtual machine,<br />

anticipating their needs and changing dynamically work<br />

loads. The proposed solution results demonstrated that CPU<br />

and I/O disk can be efficiently allocated to the VMs running<br />

the database in order to meet QoS requirements.<br />

Steady-State Genetic Algorithm for Extracting Fuzzy<br />

Classification Rules From Data (SGERD) [10] is a steady<br />

1 Quality of service (QoS) refers to several aspects that allow<br />

evaluating the quality of information transport in computer networks and<br />

communication systems.<br />

256

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!