COLÔNIAS DE ABELHAS COMO MODELO PARA AGRUPAMENTO

Propaganda
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
COLÔNIAS DE ABELHAS COMO MODELO PARA AGRUPAMENTO ÓTIMO DE DADOS:
UMA PROPOSTA E ANÁLISE PARAMÉTRICA QUALITATIVA
RENATO D. MAIA*, WESLEY O. BARBOSA#, LEANDRO N. DE CASTRO+
*
Departamento de Ciências da Computação, Universidade Estadual de Montes Claros; Departamento de Engenharia
de Controle e Automação, Faculdade de Ciência e Tecnologia de Montes Claros; Instituto de Ciências Agrárias,
Universidade Federal de Minas Gerais
#
Diretoria de Gestão de Tecnologia da Informação, Instituto Federal do Norte de Minas Gerais
+
Laboratório de Computação Natural (LCoN), Faculdade de Computação e Informática (FCI) e Programa de PósGraduação em Engenharia Elétrica (PPGEE), Universidade Presbiteriana Mackenzie
E-mails: [email protected], [email protected],
[email protected]
Abstract
 This paper presents an algorithm for optimal data clustering inspired by the processes of collective decision-making by bee colonies. The proposed algorithm controls a swarm of artificial bees, which are represented by a matrix, performing tasks like random
movement, evaluation and recruitment, in order to find cohesive clusters according to the provided database. The algorithm is inspired by
the recruitment observed in the behavior of bees during the exploitation of food sources, to attract more bees to the best solutions. Using an
implementation of the algorithm, some results were generated for a given data set suggesting that it does possess the ability to find clusters
with reference to only the data provided, maintaining the diversity of solutions.
Keywords
 sociobiology, insects, bees, collective decision-making, clustering, diversity.
Resumo
 Este artigo apresenta um algoritmo para agrupamento ótimo de dados inspirado nos processos de tomada de decisão coletiva
por colônias de abelhas. O algoritmo proposto controla um enxame de abelhas artificiais, que são representadas por uma matriz, realizando
tarefas de movimentação aleatória, avaliação e recrutamento, a fim de encontrar agrupamentos coesos de acordo com a base de dados fornecida. O algoritmo é inspirado no recrutamento observado no comportamento de abelhas durante a exploração de fontes de alimento para
atrair mais abelhas para as melhores soluções encontradas. Utilizando-se de uma implementação do algoritmo foram gerados alguns resultados para um determinado conjunto de dados que sugerem que ele realmente possui a capacidade de encontrar agrupamentos tomando
como referência apenas os dados fornecidos e mantendo a diversidade de soluções.
Palavras-chave
 sociobiologia, insetos, abelhas, tomada de decisão coletiva, agrupamento, diversidade.
1 Sociobiologia dos Insetos – Inspiração para a
Resolução de Problemas
A Sociobiologia é um ramo da biologia que estuda o
comportamento social dos animais, utilizando conceitos da etologia, evolução, sociologia e genética de
populações (Wilson, 1975). No contexto do estudo
dos insetos, a sociobiologia amadureceu de forma
considerável nos últimos anos. As teorias da auto-organização (Camazine et al., 2001) e dos sistemas
complexos (David, 1987), em conjunto com resultados experimentais realizados por biólogos, revolucionaram o entendimento dos aspectos organizacionais das sociedades de insetos e até mesmo das sociedades humanas (Gadau e Fewell, 2009).
Como a Sociobiologia faz uso de uma grande
variedade de abordagens para a criação de modelos
para os diversos aspectos do comportamento de animais sociais, ela representa um verdadeiro esforço de
pesquisa interdisciplinar, permitindo que metodologias e ideias sejam trocadas entre os pesquisadores
das diferentes disciplinas envolvidas. Como exemplo,
pode-se citar a Teoria de Redes (Albert e Barabasi,
2002), particularmente o “efeito de mundo pequeno”
(Newman, 2003), que foi estabelecida na matemática
e sociologia e é atualmente aplicada no estudo dos
padrões de interações em grupos sociais de animais
(Fewell, 2003; Couzin et al., 2005). A própria complexidade dos modelos utilizados na sociobiologia
ISBN: 978-85-8001-069-5
teórica forçou os biólogos a interagirem com matemáticos, engenheiros e cientistas da computação, enquanto a complexidade dos sistemas artificiais construídos pelo homem instigou os engenheiros, matemáticos e cientistas da computação a buscarem inspirações para a resolução de problemas em sistemas biológicos com semelhantes níveis de complexidade.
Essa interação introduziu não apenas novas ideias à
Biologia, particularmente aos estudos da organização
das sociedades de insetos, mas também novas ferramentas, como simulações baseadas em indivíduos,
além de outras técnicas matemáticas e de computação
(Gadau e Fewell, 2009).
Considerando-se os pontos de vista da ciência
da computação e da engenharia, já se tem consolidada a percepção de que os insetos sociais evoluíram
soluções para alguns problemas difíceis, como o forrageamento, cujas características, dentre as quais merece destaque a necessidade de encontrar uma solução ótima utilizando-se apenas informações locais e
imprecisas (Mallon et al., 2001), são, em muitos aspectos, semelhantes àquelas dos problemas encontrados nesses campos. Dentre as diversas ferramentas
computacionais e de engenharia inspiradas no comportamento de forrageamento, podem ser destacadas:
aplicação de um algoritmo baseado no forrageamento
de formigas controlado por feromônio para roteamento em redes de telecomunicações (Dorigo e Stüzle, 2004), controle descentralizado de migração de
processos em redes de computadores, tendo como
623
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
inspiração o comportamento
mento de formigas do gênero
Temnothorax albipennis (Marshall et al.,
al 2006), classificação (Lumer e Faieta,, 1994), alocação de tarefas
tare
(Bonabeau, Dorigo e Theraulaz, 1999), job shop scheduling (Cicirello, 2004), agentes de software (Parunak, 1997; Weiss, 1999), otimização de redes de
comunicação (DiCaro e Dorigo, 1998), e robótica coc
letiva (Brooks e Flynn, 1989; Krieger et al., 2000).
Nesse contexto, este artigo propõe um algoritmo
algo
para agrupamento ótimo de dados inspirado nos meme
canismos
mos de tomada de decisão coletiva por sociedades de insetos, especialmente as colônias de abelhas,
observados no algoritmo para otimização multimodal
contínua proposto por Maia et al. (2010).
(2010) Os resultados obtidos com uma primeira implementação
implemen
realizada para este artigo são ainda preliminares,
prelimina
mas sugerem que o algoritmo possui um comportamento
com
interessante, apresentando a capacidade de encontrar
agrupamentos ótimos tomando como base apenas o
conjunto de dados fornecido e mantendo
man
diversidade
nas soluções apresentadas,, além de constituírem evievi
dências
cias da robustez do algoritmo em relação a variavaria
ções paramétricas.
O artigo está organizado da seguinte maneira:
maneira a
Seção 2 faz uma breve explanação sobre o problema
de agrupamento de dados; a Seção
eção 3 apresenta uma
proposta
posta de um novo algoritmo de abelhas para a sos
lução de problemas de agrupamento ótimo
óti
de dados,
além de esclarecer os detalhes da versão implemenimple
tada; a Seção 4 apresenta uma análise qualitativa de
sensibilidade paramétrica e, por fim, a Seção
S
5 apresenta a conclusão e as propostas de trabalhos futuros.
fu
2
Agrupamento Ótimo de Dados:
ados: Definição do
Problema
O agrupamento é uma das mais primitivas atividades
ativi
mentais dos seres humanos, utilizado para lidar com a
enorme quantidade de informações que recebem
rece
todos os dias (Theodoridis e Koutroumbas, 2003). As
diversas definições de agrupamento encontradas
en
na
literatura convergem para a seguinte ideia: agrupamento é o processo de particionar um conjunto de obo
jetos em subconjuntos de tal forma que todos os
membros de um dado subconjunto sejam
se
similares de
acordo com alguma medida de similaridade
milaridade (Basu
(B
et
al., 2008).
Han e Kamber (2000) definem um grupo como
uma coleção de objetos que são similares entre si e se
diferenciam dos objetos de outro grupo. Porém, em
muitas aplicações a noção de grupo (cluster)
(
não está
bem definida (Tan et al., 2005).
A Figura 1 ilustra a dificuldade em se definir o
número de grupos e quais objetos constituem cada
grupo. Um mesmo conjunto de objetos (dados ou vev
tores de características) pode ser separado em grupos
gru
de diversas maneiras diferentes, o que evidencia que
a definição
finição de um grupo é imprecisa e que a melhor
me
definição
nição depende da natureza dos dados e dos rere
sultados desejados.
ISBN: 978-85-8001-069-5
Pontos Originais
Seis Grupos
Dois Grupos
Quatro Grupos
Figura 1. Diferentes maneiras de agrupar o mesmo conjunto de
pontos.
A análise de agrupamento pode ser utilizada
utiliza
como uma ferramenta independente de mineração de
dados para obter informações sobre a distribuição dos
dados,
dos, ou servir como uma etapa de pré-processapré
mento para outros algoritmos de mineração de dados
(Han e Kamber, 2000). Técnicas de agrupamento
agru
possibilitam
tam o desenvolvimento de importantes
impor
ferramentas para análise de dados sobre os quais se tem
pouco ou nenhum conhecimento prévio (Jain e Dubes, 1988; Xu e Wunsch, 2005). Algoritmos
Algorit
de agrupamento são utilizados em diversas aplicações,
apli
como
reconhecimento
cimento de padrões (Webb, 2002), segmentasegmenta
ção de imagens (Coleman e Andrews, 1979), compressão (Abbas e Fahmy, 1994), aprendizado
aprendi
de máquina (Alpaydin, 2004), dentre outras.
Como, em princípio, os rótulos dos dados em
uma tarefa de agrupamento não são conhecidos a pripri
ori, geralmente
ralmente os algoritmos de agrupamento opeope
ram de forma não supervisionada. Entretanto, é pospos
sível definir
finir medidas de qualidade dos agrupamentos
agrupa
propostos
postos pelo algoritmo que consideram,
consideram por exemplo, a distância inter e/ou
/ou intragrupo dos agrupamentos propostos.. Essas medidas de qualidade do agrupamento podem ser utilizadas para guiar um processo de busca por um conjunto de grupos (p. ex.,
particionamento dos dados) que otimize tal critério.
Nesses casos diz-se que está
tá sendo executada uma tata
refa de agrupamento ótimo de dados.
3 Um
m Novo Algoritmo de Abelhas para a Solução de Problemas de Agrupamento Ótimo de
Dados
Nesta seção será formalizado um algoritmo para solução de problemas de agrupamento ótimo de dados
inspirado no processo de tomada de decisão coletiva
co
em sociedades de insetos, especificamente as colônias de abelhas, baseado noo algoritmo
algo
proposto por
Maia et al. (2010) para otimização multimodal
mul
contínua.
A seguir estão resumidas algumas características
interessantes
ressantes dos processos de tomada de decisão coc
letiva por colônias de abelhas em problemas de forraforra
geamento, bem como de busca por locais para a conscon
trução de um novo ninho (Gadau e Fewell, 2009):
2009)
• As abelhas dançam para recrutar
recr
outras abelhas para uma fonte de alimento.
624
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
• As abelhas ajustam a exploração e recuperação de alimentos de acordo com o estado da
colônia.
• As abelhas, diferentemente das formigas, exploram múltiplas fontes de alimento simultaneamente, mas quase invariavelmente convergem para o mesmo novo local de construção do ninho.
• Há uma relação positiva linear entre o número
de abelhas dançando e a quantidade de abelhas
recrutadas para uma fonte de alimento: esse
sistema de recrutamento linear faz com que as
trabalhadoras sejam equilibradamente distribuídas entre opções similares.
• A dança das abelhas comunica a distância e a
direção dos novos sítios para ninhos. O recrutamento para o novo sítio continua até que um
limiar de número de abelhas seja atingido.
• A qualidade da fonte de alimentos influencia a
dança das abelhas.
• Todas as abelhas se aposentam após algum
tempo, o que significa que, independentemente da qualidade do novo sítio, as abelhas
param de recrutar outras. Essa aposentadoria
depende da qualidade do sítio: quanto maior,
mais tardia.
Tendo como inspiração as características interessantes dos processos de tomada de decisão coletiva
por colônias de abelhas, foi proposto em Maia et al.
(2010) um algoritmo para problemas de otimização
multimodal contínua. Esse algoritmo obteve sucesso
na geração e manutenção de diversidade e alcançou
resultados de boa qualidade na otimização global. Essas características motivaram a adaptação desse algoritmo para a tarefa de agrupamento. O algoritmo apresentado neste artigo tem como arcabouço o algoritmo proposto por Maia et al. (2010), apresentado a
seguir, utilizando uma representação do enxame e
funções de avaliação adaptadas para tratar problemas
de agrupamento ótimo de dados.
1. Criar aleatoriamente um enxame de N abelhas no
espaço: cada abelha codifica uma solução candidata
para o problema.
2. Executar os passos 2.1 a 2.4, até que se alcance um
número I de iterações:
2.1. Mover aleatoriamente cada abelha pelo espaço de busca.
2.2. Avaliar cada abelha, por meio de uma função
objetivo, de modo a se ter uma medida de sua
qualidade (fitness).
2.3. Realizar os recrutamentos, elegendo-se as n
melhores abelhas como recrutadoras e movendose uma parcela das demais em direção a elas de
acordo com o fitness: quanto melhor for o fitness
da recrutadora, maior será a quantidade de abelhas por ela recrutada.
2.4. Mover as abelhas não recrutadas de forma aleatória para outra região do espaço de busca.
3. Retornar o enxame, a melhor abelha e os respectivos valores da função objetivo.
ISBN: 978-85-8001-069-5
Uma das principais adaptações se deu na forma
como uma abelha é definida: cada abelha possui um
conjunto de protótipos que representam um possível
agrupamento para a base de dados fornecida. Para
tanto, utiliza-se uma matriz ۰ ∈ ℜ(ௗାଵ)×ୡ೘ೌೣ para a
sua representação (Equação 1). A quantidade de linhas da matriz B é definida por (d + 1), sendo d o número de dimensões dos objetos a serem agrupados. O
número de colunas é igual à cmax, um parâmetro de
entrada que indica a quantidade máxima de grupos
que o agrupamento representado pela abelha poderá
ter. Numa dada coluna j, as linhas de 1 a d representam as dimensões de um protótipo, cj, e a última linha
contém um valor de limiar, ‫ܮ‬௝ ∈ [0, 1], que é utilizado para definir se o protótipo está ativo ou não.
Uma abelha sempre representará e processará
cmax protótipos. Porém, o agrupamento por ela codificado será formado apenas pelos protótipos ativos,
que serão considerados para a avaliação de fitness.
Um protótipo pj é considerado ativo quando o seu valor de limiar Lj for maior ou igual a 0,5. Essa codificação permite que o algoritmo manipule agrupamentos com diferentes quantidades de grupos, capacitando-o a determinar de forma automática a quantidade ótima de grupos. Esse fato, aliado à capacidade
de busca multimodal, permite ainda que sejam encontrados múltiplos agrupamentos com qualidades
equivalentes, mas diferentes, seja em relação à quantidade de grupos, seja em relação aos objetos que
compõem cada grupo.
 c1
B=
L
 1
ci1 
 2
c2 ccmax 
ci 
c
=
,
 ,

i
L2 Lc max


 d
c
 i 
i = 1, 2, , cmax .
(1)
O comportamento esperado para o algoritmo é
se aproximar do apresentado pelas colônias ao explorarem múltiplas fontes de alimento, com a formação
de conjuntos de abelhas representando agrupamentos
promissoramente ótimos. Espera-se também que a
quantidade de abelhas em cada conjunto seja proporcional à qualidade do agrupamento por elas representado. Esse comportamento contribui para a geração e manutenção de diversidade, sendo que a geração de diversidade é reforçada no Passo 2.4, por meio
da movimentação de um grupo de piores abelhas para
diferentes regiões do espaço de busca de forma aleatória.
O Passo 2.1, em que ocorre a movimentação aleatória das abelhas, foi implementado fazendo-se
cada abelha dar um pequeno passo numa direção aleatória e, opcionalmente, pode ser implementado utilizando-se técnicas de busca local.
O recrutamento é uma das fases mais importantes, pois é responsável por atrair abelhas para uma
região considerada promissora, melhorando assim a
qualidade das soluções representadas pelo enxame.
625
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
Na natureza, as abelhas efetuam uma dança
danç que indica para as demais abelhas do enxame a direção, a
distância
tância e o quão boa é a fonte de alimento enconencon
trada (Camazine e Sneyd,, 1991), recrutando para aquela área mais abelhas.
Seja N o número de abelhas, n o número de abelhas recrutadoras, p o valor que determina o perper
centual de abelhas não recrutadoras
ras que será recrurecru
tado e α a taxa de recrutamento. O recrutamento é
feito a partir da equação Bi = Bi + α(B − Bi), em que
Bi é a abelha recrutada e B é a abelha recrutadora. IsI
so significa que cada abelha recrutada
crutada será movida na
direção de sua recrutadora a uma taxa de recrutarecruta
mento positiva α. Das M abelhas que poderão ser rere
crutadas, com M = (N – n),, apenas uma parcela,
parcela determinada por R = [p×M] ([·]] denota o operador inteiinte
ro mais próximo), será de fato recrutada.
recru
Assim, o
número de abelhas não recrutadas
tadas que serão movidas
movi
aleatoriamente
mente para outro ponto no espaço de busca é
Q = M – R.
A associação das abelhas a serem recrutadas a
uma das abelhas recrutadoras se dá em duas etapas.
etapa
Primeiro
meiro é determinado o número de abelhas a serem
recrutadas por cada recrutadora (esse número é propro
porcional à qualidade relativa da solução represenrepre
tada por cada recrutadora em relação às demais).
demais Na
segunda etapa, cada abelha a ser recrutada é associada à abelha recrutadora mais próxima, sendo resres
peitada a quantidade de abelhas a serem recrutadas
por cada recrutadora determinada na primeira etapa.
etapa
Assim, oss parâmetros do algoritmo são o número de iterações, I, o número de abelhas do enxame,
en
N,, o número de abelhas recrutadoras, n, o valor que
determina o percentual de abelhas não recrutadoras
re
que será recrutado, p,, a taxa de recrutamento,
recruta
α, a taxa de movimentação aleatória, t, e o número máximo
de grupos que uma abelha poderá representar,
represen
cmax.
4 Análise de Sensibilidade Paramétrica
Nesta seção serão
erão apresentados resultados preliminaprelimina
res sobre o desempenho do algoritmo proposto em
determinar a melhor quantidade de grupos e definir
um agrupamento,, buscando manter a diversidade
diversi
nas
soluções. É importante ressaltar que os experimentos
ex
realizados têm como objetivo avaliar a capacidade
capa
do
algoritmo de encontrar agrupamentos com base apeape
nas no conjunto
junto de dados a ele fornecido,
forne
além da realização de uma análise qualitativa
litativa de sensibilidade
que permita investigar a sua robustez em relação
re
a
variações em seus parâmetros, sem a pretensão
preten
de se
avaliar com rigor quantitativo
tativo os resultados
re
ou compará-los com aqueles obtidos
tidos por outros algoritmos.
algo
Serão apresentados os resultados
dos dos testes rearea
lizados com a base de dados Ruspini
pini (Ruspini, 1970),
bastante utilizada na avaliação
ção de algoritmos de agrupamento. Essa base, apresentada
tada na Figura 2, contém 75 objetos, linearmente separá
paráveis em quatro
grupos, tendo como atributos
ibutos dois números inteiros.
ISBN: 978-85-8001-069-5
Figura 2. Base de dados Ruspini.
Foi utilizada como função de avaliação de fitness
o índice da medida de Silhueta (Rousseeuw, 1987),
cujo valor está confinado no intervalo [−1, 1], sendo
que quanto mais próximo do valor 1, melhor é o agrupamento. A medida de Silhueta foi calculada para
cada objeto xi da base de dados e o fitness foi definido como a média
dia entre essas medidas. A Equação
2 define a medida de Silhueta s(xi), na qual a(xi) é a
dissimilaridade média (neste trabalho determinada
pela distância euclidiana) entre o objeto xi e os objetos do grupo a que ele pertence e b(xi) é o menor valor de dissimilaridade
ridade média entre o objeto xi e os objetos de cada um dos demais grupos.
s ( xi ) =
b( xi ) − a ( xi )
max{a ( xi ), b( xi )}
(2)
Para a discussão dos resultados,
resultados serão apresentados gráficos contendo os quatro melhores agrupaagrupa
mentos distintos obtidos e os seus respectivos valores
de fitness. Aoo final da execução do algoritmo,
algoritmo os centroides de cada grupo foram ajustados para o centro
dos dados que representam,, sendo apresentados nas
figuras como uma estrela preta.
preta
A Tabela 1 apresenta os quatro conjuntos de vav
lores de parâmetros utilizados durante os testes.
testes
Tabela 1. Configurações dos parâme
arâmetros do algoritmo.
Conjunto
I
N
n
α
t
p
cmax
1
2
3
4
50
50
100
20
30
30
60
60
6
6
12
12
0,01
0,1
0,05
0,05
0,001
0,001
0,01
0,01
0,8
0,8
0,8
0,8
6
6
8
8
Tabela 2. Resultados para as configurações
onfigurações apresentadas na Tabela
1.
Base
Configuração dos
Parâmetros
Média ± Desvio
padrão do fitness
Ruspini
Conjunto 1
Conjunto 2
Conjunto 3
Conjunto 4
0,6562 ± 0,0037
0,6582 ± 0,0000
0,6582 ± 0,0000
0,6582 ± 0,0000
A Tabela 2 apresenta uma síntese dos resultados
obtidos:
dos: nela são apresentados a média e o desvio padrão dos valores de fitness das melhores soluções obob
tidas em 10 execuções do algoritmo, para cada um
dos conjuntos
juntos de parâmetros apresentados na Tabela
1.
626
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
Analisando-se
se os resultados apresentados na
Tabela 2, é possível perceber que, para as quatro configurações de parâmetros
râmetros apresentadas na Tabela 1, o
algoritmo obteve comportamentos médios do fitness
do melhor agrupamento encontrado estatisticamente
esta
iguais, fato esse que representa uma evidência
evidên da robustez do algoritmo em relação a variações em seus
parâmetros.
Para o conjunto de parâmetros 1, em 75% das
execuções
ções foi encontrado o agrupamento esperado,
es
assim como proposto por Ruspini (1970).
(1970 Nas Figuras 3, 4 e 5 podem ser observados os quatro melhores
agrupamentos distintos obtidos com essa configuraconfigura
ção na primeira execução, na execução intermediária
e na execução final, respectivamente.
respectivamente
A Tabela 3 apresenta a média e o desvio padrão
dos valores de fitness das quatro melhores soluções
obtidas em 10 execuções utilizando o conjunto de parâmetros 1.
Tabela 3. Resultados para o conjunto de parâmetros 1.
Rank da
Solução
Média ± Desvio
Padrão do fitness
1
2
3
4
0,6565 ± 0,0037
0,6175 ± 0,0292
0,5832 ± 0,0158
0,5730 ± 0,0208
Fitness: 0,6582
Fitness: 0,5885
Fitness: 0,6582
Fitness: 0,6498
Fitness: 0,5979
Fitness: 0,5879
Figura 5. Agrupamento obtido – Conjunto de parâmetros 1 – Última execução.
O aumento da taxa de recrutamento no conjunto
2 proporcionou uma melhor convergência para boas
soluções.
luções. Em todas as execuções foi obtido o agrupaagru
mento real da base Ruspini. Além disso, os valores de
fitness das melhores soluções foram maiores do que
aqueles apresentados para o conjunto
con
1, conforme
pode ser visto nas Figuras 6, 7 e 8.
Fitness: 0,6582
Fitness: 0,6561
Fitness: 0,6326
Fitness: 0,6310
Fitness: 0,6300
Fitness: 0,5879
Figura 6. Agrupamento obtido – Conjunto de parâmetros 2 – Primeira execução.
Figura 3. Agrupamento obtido – Conjunto de parâmetros
p
1 – Primeira execução.
Fitness: 0,6582
Fitness: 0,5609
Fitness: 0,6582
Fitness: 0,6561
Fitness: 0,6498
Fitness: 0,6196
Fitness: 0,5775
Fitness: 0,5388
Figura 7. Agrupamento obtido – Conjunto de parâmetros 2 – Execução intermediária.
Figura 4. Agrupamento obtido – Conjunto de parâmetros 1 – Execução intermediária.
ISBN: 978-85-8001-069-5
627
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
Fitness: 0,6582
Fitness 0,6498
Fitness:
Fitness: 0,6582
Fitness: 0,6561
Fitness: 0,6196
Fitness 0,5839
Fitness:
Fitness: 0,6498
Fitness: 0,6397
Figura 8. Agrupamento obtido – Conjunto de parâmetros 2 – Última execução.
A Tabela 4 apresenta a média e o desvio padrão
dos valores de fitness das quatro melhores soluções
obtidas
das em 10 execuções utilizando o conjunto de papa
râmetros 2.
Figura 10. Agrupamento obtido – Conjunto de parâmetros 3 – Execução intermediária.
Fitness: 0,6582
Fitness: 0,6561
Fitness: 0,6498
Fitness: 0,6410
Tabela 4. Resultados para o conjunto de parâmetros 2.
Rank da Solução
Média ± Desvio papa
drão do fitness
1
2
3
4
0,6582 ± 0,0000
0,6540 ± 0,0036
0,6339 ± 0,0151
0,6114 ± 0,0246
Os agrupamentos obtidos a partir do conjunto de
parâmetros 3, apresentados nas Figuras 9, 10 e 11,
não diferem muito daqueles obtidos
dos anteriormente. A
Tabela 5 apresenta a média e o desvio padrão dos vav
lores de fitness das quatro melhores soluções obtidas
obti
em 10 execuções utilizando o conjunto de parâmetros
parâ
3.
Tabela 5. Resultados para o Conjunto de Parâmetros 3.
Rank da Solução
Média ± Desvio papa
drão do fitness
1
2
3
4
0,6582 ± 0,0000
0,6561 ± 0,0000
0,6528 ± 0,0027
0,6460 ± 0,0052
Fitness: 0,6582
Fitness: 0,6549
As soluções obtidas com a configuração dos papa
râmetros
tros de acordo com o conjunto 4 não apresentaapresenta
ram a mesma qualidade daquelas obtidas utilizandouti
se os demais conjuntos,, pois, devido ao pequeno
pe
número de iterações, a qualidade ficou totalmente dependente do enxame inicial. Nas Figuras 12,
12 13 e 14
é possível visualizar os agrupamentos obtidos com o
conjunto 4.
Fitness: 0,6582
Fitness: 0,6561
Fitness: 0,6498
Fitness: 0,6079
Fitness 0,6561
Fitness:
Fitness 0,6498
Fitness:
Figura 9. Agrupamento obtido – Conjunto de parâmetros 3 – Primeira execução.
ISBN: 978-85-8001-069-5
Figura 11. Agrupamento obtido – Conjunto de parâmetros 3 – Última execução.
Figura 12. Agrupamento obtido – Conjunto de parâmetros 4 – Primeira execução.
628
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
Fitness: 0,6582
Fitness: 0,6182
juntos testados, os comportamentos médios
mé
do fitness
das melhores soluções foram estatisticamente
estatisti
iguais.
5 Conclusão e Trabalhos Futuros
Fitness: 0,5598
Fitness: 0,5584
Figura 13. Agrupamento obtido - Conjunto de parâmetros 4 – Execução intermediária.
Fitness: 0,6582
Fitness: 0,6561
Fitness: 0,6498
Fitness: 0,5810
Figura 14. Agrupamento obtido – Conjunto de parâmetros 4 – Última execução.
A Tabela 6 apresenta a média e o desvio padrão
dos valores de fitness das quatro melhores soluções
obtidas em 10 execuções utilizando o conjunto de papa
râmetros 4.
Tabela 6. Resultados para o Conjunto de Parâmetros 4.
Melhor Solução
Média do fitness ±
Desvio padrão
1
2
3
4
0,6582 ± 0,0000
0,6288 ± 0,0261
0,6103 ± 0,0389
0,5756 ± 0,0285
Os resultados obtidos ao aplicar o algoritmo
proposto à base Ruspini foram bastante satisfatórios.
O número
mero de grupos das melhores soluções entre 4 e
5 (apenas no quarto melhor agrupamento apresentado
na Figura 11 foram encontrados seis grupos) demonstra a objetividade do algoritmo em encontrar
en
a
melhor quantidade de grupos. Apesar de alguns
al
agrupamentos encontrados parecerem visualmente
visual
ruins,
a qualidade demonstrada pela função de fitness indica
que os mesmos são válidos e representam
represen
agrupamentos interessantes sob o ponto de vista do índice
ín
utilizado. Outro aspecto que merece ser destacado
desta
éa
robustez que o algoritmo apresentou em relação
re
às
variações em seus parâmetros: para os quatro
qu
conISBN: 978-85-8001-069-5
Neste artigo foi apresentado um algoritmo para agruagru
pamento ótimo de dados inspirado em técnicas de InI
teligência de Enxame. Essee algoritmo,
algoritmo que é uma adaptação do algoritmo proposto por Maia et al.
(2010) para otimização multimodal contínua, tem por
objetivo encontrar agrupamentos em determinada bab
se de dados
dos sem informação prévia alguma, mantendo diversidade de soluções. Com relação aos efeitos dos parâmetros, os resultados dos testes realireali
zados indicam que:
1) o algoritmo é robusto em relação
re
a variações
em seus parâmetros;
2) o aumento da taxa de recrutamento
recru
aumenta
a velocidade de convergência para boas soso
luções;
3) o aumento da quantidade de abelhas
abe
do enxame, bem como de abelhas recrutadoras,
recrutado
faz com que o número de abelhas
abe
que representam
tam soluções ótimas aumente significatisigni
vamente;
4) um númeroo reduzido de iterações faz com
que, em alguns
guns casos, a melhor solução para
determinado agrupamento
mento não seja enconencon
trada.
Com base nos resultados, ainda preliminares,
apresentados
sentados nesse artigo, é possível afirmar que o
algoritmo
ritmo proposto cumpriu os objetivos
ob
e possui desempenho
penho satisfatório, pois conseguiu, nos casos teste
tados,
dos, encontrar agrupamentos com o número de grugru
pos esperado, além de apresentar outras boas solusolu
ções.
Diante das considerações feitas, propõem-se
propõem
como continuidade do trabalho as seguintes atividades:
1) incluir novos recursos como: efeito probabiprobabi
lístico dos limiares, elitismo, mecanismo de
memória de soluções;
ções;
2) realizar testes com outros índices de validavalida
ção de agrupamentos;
3) testar o algoritmo em bases de dados com
diferentes características e diversos
diver
graus de
complexidade e comparar o seu desempenho
desem
com os de outros algoritmos;
4) estudar mais detalhadamente
lhadamente os efeitos dos
parâmetros.
Agradecimentos
Os autores agradecem à FAPEMIG, à FAPESP, à
CAPES, ao CNPq e ao MackPesquisa pelo apoio.
629
Anais do XIX Congresso Brasileiro de Automática, CBA 2012.
Referências Bibliográficas
Abbas, H., Fahmy, M. (1994). Neural networks for
maximum likelihood clustering. Signal Process
36(1), p. 111-126.
Albert, R. and Barabasi, A. (2002). Statistical mechanics of complex networks. Reviews of Modern Physics, v. 74, p. 47-97.
Alpaydin, E. (2004). Introduction to Machine Learning. Cambridge: the MIT Press.
Basu, S.; Davidson, I.; Wagstaff, K. L. (2008). Constrained Clustering: Advances in Algorithms,
Theory, and Applications. Chapman & Hall.
Bonabeau, E., Dorigo, M. e Theraulaz, G. (1999).
Swarm Inteliggence: From natural to artificial
systems. New York: Oxford University Press.
Brooks, R. A. and Flynn, A. M. (1989). Fast, cheap
and out of control: A robot invasion os the solar
system. Journal of the British Interplanetary Society 20: 478-485.
Camazine, S., Deneubourg, J. L., Franks, N. R.,
Sneyd, J., Theraulaz, G. e Bonabeau, E. (2001).
Self-organization in Biological Systems. Princeton, New Jersey: Princeton University Press.
Camazine, S.; Sneyd, J. (1991). A Model of Collective Nectar Source Selection by Honey Bees:
self-organization through simple rule. Journal of
Theoretical Biology, v.149, n.4, p.547-571.
Cicirello, S. and smith, S. F. (2004). Wasp-like
agents for distributed factory coordination. Journal of Autonomous Agents and Multi-Agent Systems 8: 237-266.
Coleman, G., Andrews H. (1979), Image segmentation by clustering. In: Proceedings of the IEEE,
v. 67, p. 773-785.
Couzin, I. D., Krause, J., Franks, N. R., e Levin, S. A.
(2005). Effective leadership and decision-making
in animal groups on the move. Nature 433: 513516
David, H. (1987) Statecharts: a visual formalism for
complex systems, Science of Computer Programming. Volume 8, Issue 3, Pages 231-274.
DiCaro, G. and Dorigo, M. (1998). AntNe: Distributed stigmergic control for communications
networks. Journal of Artificial Intelligence Research 9: 317-365.
Dorigo, M. E Stützle, T. (2004). Ant Colony Optimization. Cambridge: MIT Press.
Fewell, J. H. (2003). Social Insect Networks. Science
301: 1867-1870.
Gadau, J.; Fewell, J. (eds.) (2009). Organization of
insect societies: from genome to sociocomplexity. Cambridge: Harward Univesity Press.
Han, J.; Kamber, M. (2000). Data Mining: Concepts
and Techniques. San Francisco: Morgan Kaufmann Publishers.
Jain, A.; Dubes, R. (1988). Algorithms for Clustering
Data. Englewood Cliffs: Prentice Hall.
Krieger, M. J. B., Billeter, J. B., and Keller, L.
(2000). Ant-like task allocation and recruitment
in cooperative robots. Nature 406: 992-995.
ISBN: 978-85-8001-069-5
Lumer, F., Faieta, B. (1994). Diversity and adaptation
in populations of clustering ants. From Animals
to animats 3: Proceedings of the 3rd International
Conference on Simulation of Adaptive Behavior,
501-508.
Maia, R. D., Castro, L. N., Caminhas, W. M. (2010).
Colônias de Abelhas como Modelo para Otimização Multimodal Contínua: Uma Proposta e
Análise Paramétrica Qualitativa. In: XVIII Congresso Brasileiro de Automática, 2010, Bonito.
Anais do XVIII Congresso Brasileiro de Automática, p. 4481-4488.
Mallon, E. B., Pratt, S. C., and Franks, N. R. (2001).
Individual and collective decision-making during
nest site selection by the ant Leptothorax albipennis. Behavioral Ecology and Sociobiology
50: 352-359.
Marshall, J. A. R., Dornhaus, A., Franks, N. R., e
Kovacs, T. (2006). Noise, cost and speed-accuracy trade-offs: Decision-making in a descentralized system. Journal of the Royal Society: Interface 3: 243-254.
Newman, M.E.J. (2003). The structure and function
of complex networks. SIAM Reviews, v. 45, n.
2, p. 167-256.
Parunak, H. D. (1997). ‘Go to the end: Engineering
principles from natural multi-agent systems’.
Annals of Operations Research 75: 69-101.
Rousseeuw, P. J. (1987). Silhouettes: a graphical aid
to the interpretation and validation of cluster
analysis . Journal of Computational and Applied
Mathematics, v. 20, p. 53-65.
Ruspini, H. R. (1970). Numerical Methods for Fuzzy
Clustering. In: Information Sciences, 2, p. 139350.
Theodoridis, S.; Koutroumbas, K. (2003). Pattern
Recognition. San Diego: Academic Press.
Webb, A. (2002). Statistical pattern recognition. New
Jersey: John Wiley & Sons.
Weiss, G. (1999). Multiagent systems: A modern approach to distributed artificial intelligence. Cambridge: MIT Press.
Wilson, E. O. (1975). Sociobiology: The New Synthesis. Cambridge: Harward Univesity Press.
Xu, R.; Wunsch D. (2005). Survey of clustering algorithms. In: IEEE Transactions on Neural Networks, vol. 16, no. 3.
630
Download