Está en la página 1de 8

Anais do XX Congresso Brasileiro de Automtica

Belo Horizonte, MG, 20 a 24 de Setembro de 2014

AGRUPAMENTO ESPACIAL EFICIENTE EM 2 CLASSES PARA

ROBOTICA
DE ENXAME
s Bulla Cruz, Nadia Nedjah, Luiza de Macedo Mourelle
Nicola

Departamento de Engenharia Eletr


onica e Telecomunicac
oes, Faculdade de Engenharia
Universidade do Estado do Rio de Janeiro
Rio de Janeiro, RJ, Brasil

Departamento de Engenharia de Sistemas e Computac


ao, Faculdade de Engenharia
Universidade do Estado do Rio de Janeiro
Rio de Janeiro, RJ, Brasil
Emails: nicobulla@gmail.com, nadia@eng.uerj.br, ldmm@eng.uerj.br

Abstract This paper proposes and tests a clustering technique of swarm robots into classes. Based only on
local information coming from neighboring robots and the distribution of virtual tokens in the system, the robots
of the swarm can be grouped into different classes. The proposed technique acts in a distributed manner and
without any global knowledge or movement of the robots. Depending on the amount and weight of the tokens
available in the system, robots exchange information to reach a token uniform distribution. The clustering
technique is inspired by the process of solids or liquids settling. Using information gathered from neighboring
robots, a token density is computed. As a result, the tokens with higher weights form a cluster first, shifting
those of lower weight until they form differentiated bands for each group, thus completing the clustering of the
swarm robots.
Keywords

Clustering, swarm robotic, swarm intelligence, multi-robot systems

Resumo O presente trabalho prop


oe e testa uma t
ecnica de clusterizac
ao de enxame de rob
os em classes.
Baseando-se somente na informaca
o local dos rob
os vizinhos e na distribuic
ao de fichas virtuais no sistema, os
rob
os do enxame conseguem-se agrupar em diferentes classes. A t
ecnica proposta atua de forma distribuda e
sem nenhum conhecimento global nem movimento dos rob
os. Dependendo da quantidade e do peso das fichas
disponveis no sistema, os rob
os intercambiam informac
oes at
e alcancar uma distribuica
o uniforme de fichas.
A t
ecnica de clusterizac
ao utilizada
e facilmente comparada com o processo fsico de decantac
ao de s
olidos ou
lquidos. Com a informac
ao sobre o estado da ficha,
e calculada uma densidade dependente do peso da ficha.
Como resultado as fichas com maior peso clusterizaram primeiro, e aquelas com menor peso se deslocaram, at
e
que estas formem faixas diferenciadas para cada grupo de fichas, alcancando assim a clusterizac
ao dos rob
os.
Palavras-chave

Clusterizac
ao, rob
otica de enxame, intelig
encia de enxame, sistemas multi-rob
o.

Introdu
c
ao

goritmo proposto por (Di Caro et al., 2012), para


permitir 2 classes. Tambem serao levados em
conta os problemas de perda de informacao, com
o proposito de minimizar o impacto das perdas de
cargas inicias.
O restante do artigo e organizado em 6 secoes. Inicialmente, na Secao 2, e apresentado de
maneira sucinta o problema de clusterizacao assim como o problema de clusterizacao de robos.
Apos, na Secao 3, sao apresentados alguns trabalhos relacionados. Posteriormente, na Secao 4, sao
detalhados os principais passos do algoritmo distribudo proposto para agrupamento de robos em
2 classes. Em seguida, na Secao 5, sao abordadas alguns aspectos de implementacao. Apos,
na Secao 6, sao discutidos os resultados obtidos
durante os experimentos realizados. Por fim, na
Secao 7, sao apresentadas conclusoes referentes ao
algoritmo proposto e apontadas algumas direcoes
relevantes para os trabalhos futuros.

Os Sistemas Multi-Rob
os proporcionam vantagens sobre um rob
o individual, quando da realizacao de uma tarefa com maior velocidade,
maior precis
ao e toler
ancia a falhas (Marjovi
et al., 2012). Quando existem duas ou mais tarefas a serem realizadas e o conjunto de robos e
heterogeneo, e possvel agrup
a-los segundo as funcionalidades neles disponveis. No caso em que o
conjunto de rob
os e homogeneo, o agrupamento
pode ser realizado segundo a dist
ancia entre os
robos e os locais onde as tarefas devem ser realizadas.
Neste trabalho, e utilizada uma tecnica de
clusterizacao espacial desenvolvida com base em
(Di Caro et al., 2012), onde s
ao permitidas somente 2 classes. Por meio da troca de mensagens
entre os robos vizinhos, esta tecnica permite formar clusters sem precisar do movimento do robo.
Baseando-se nas tecnicas de clusterizac
ao de fichas, a tecnica proposta emprega uma ficha virtual, que ser
a chamada de carga. Por meio da
carga e possvel determinar a qual classe pertence
um robo.
O objetivo deste trabalho e generalizar o al-

Clusteriza
c
ao

A clusterizac
ao e o nome dado para o grupo de
tecnicas computacionais cujo proposito consiste
em categorizar elementos em grupos, a partir de

16

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

caractersticas ou graus de semelhanca que estes


possuam. A ideia b
asica consiste em colocar em
um mesmo grupo, os indivduos que s
ao similares de acordo com algum criterio pre-determinado
(Linden, 2009). Os grupos determinados em um
sistema devem ser descritos em termos de homogeneidade interna e separac
ao externa. Em outros
termos, os elementos de um mesmo grupo devem
ser mutuamente similares, e diferentes dos elementos de outros grupos.
A clusterizac
ao na rob
otica de enxame tem
dois enfoques dependendo dos elementos a serem
agrupados (Lee et al., 2005): (i) a clusterizacao
de fichas, ou elementos passivos, distribudos em
um ambiente; (ii) e por outro lado, a clusterizacao
dos proprios rob
os.
2.1

Um dos trabalhos pioneiros realizados visando a


clusterizacao de fichas foi publicado em (Beckers
et al., 1994). Os robos usados sao equipados com
uma pinca que permite movimentar discos, visando o agrupamento de discos de caractersticas
similares.
Em (Kazadi et al., 2002), sao estudados os
comportamentos dos robos que realizam clusterizacao das fichas. Para entender este comportamento primeiramente foi simulado o comportamento dos robos sem levar em conta as estruturas
fsicas dos robos nem das fichas. Os resultados
das simulacoes permitem concluir que o aumento
da quantidade de elementos ja clusterizados facilita a clusterizacao dos elementos restantes.
A partir dos estudos realizados na clusterizacao de fichas, foram realizados estudos objetivando clusterizar os proprios robos. Em (Lee
et al., 2005), foi estudado o comportamento da
clusterizacao de robos. Neste trabalho, os robos
podiam realizar duas acoes iniciais: ficar imovel,
esperando a chegada de um outro robo para comecar um cluster, ou ficar em movimento ate encontrar robos imoveis ja clusterizados. Depois de
iniciar os primeiros clusters, os robos podiam se
mover procurando um melhor cluster. A avaliacao do cluster encontrado e realizada por meio da
visao do robo, sendo que o cluster mais denso e o
melhor considerado.
Baseado em uma outra perspectiva, em
(Gross et al., 2009), e proposto a tecnica de segregacao de robos baseando-se no efeito de Castanhas do Brasil, (Rosato et al., 1987). A simulacao
deste efeito e alcancada por meio dos movimentos
aleatorios dos robos, sendo um ponto de atracao
comum a todos os robos, e a repulsao entre os vizinhos, este u
ltimo parametro depende de um raio
virtual definido pelo alcance da comunicacao. Os
robos com o mesmo raio virtual sao agrupados.
Depois de coletar informacao de diferentes
tecnicas de clusterizacao, em (Di Caro et al.,
2012), e desenvolvida uma tecnica de clusterizacao espacial de robos, onde os robos so precisam
de um conhecimento local do sistema. Por meio
de troca de fichas virtuais, os robos conseguem
se agrupar. Esta estrategia proporciona um aumento de velocidade de clusterizacao e uma reducao do gasto de energia, pois os robos so precisam
comunicar-se para trocar informacao e nao precisando se movimentar. No trabalho de (Di Caro
et al., 2012) e implementado o uso de so um tipo
de ficha e, portanto, apresentado o algoritmo so
para dois clusters.

Clusterizac
ao de Fichas

Na clusterizac
ao de fichas, ou elementos passivos,
e estudado o comportamento de enxames de robos
que tem a capacidade de movimentar fichas de um
ponto a outro. Os rob
os, programados com regras simples, conseguem agrupar elementos homogeneos em um s
o cluster e, dependendo das caractersticas sensoriais dos rob
os, conseguem agrupar
elementos heterogeneos em diferentes clusters.
Um dos aspectos a ser levado em conta, na
clusterizacao de fichas, e a fsica referente `a movimentacao dos elementos passivos, assim como a
fsica referente `
a movimentac
ao do pr
oprio robo.
Em (Kazadi et al., 2002), e descrita uma abordagem chamada de sistema n
ao-fsico (aphysical
system), onde e estudado, por meio de simulacoes,
o comportamento da clusterizac
ao de fichas feita
por robos, sem considerar a estrutura fsica dos
robos nem das fichas. Em outros termos, os robos
eram representados somente pelas ac
oes da manipulacao das fichas. Como resultado dessa pesquisa, foi evidenciado que quando aumenta o n
umero de elementos agrupados em um cluster facilita a clusterizac
ao de outros elementos nesse
mesmo cluster, diminuindo o tempo de convergencia, ou seja, aumentando a velocidade de clusterizacao.
2.2

Trabalhos Relacionados

Clusterizac
ao de Rob
os

Os sistemas multi-rob
os consistem principalmente
de robos simples que geralmente possuem baixa
capacidade computacional devido aos custos.
Contudo, trabalhando conjuntamente os robos
conseguem resolver problemas complexos. Para
obter uma melhor eficiencia na soluc
ao de problemas, o problema principal e dividido em subproblemas que ser
ao distribudos em rob
os individuais ou grupos de rob
os. A clusterizac
ao de robos
procura gerenciar a divis
ao de grupos grandes de
robos, com o proposito de distribuir tarefas simples.

Algoritmo de Clusteriza
c
ao Proposto

O algoritmo proposto neste artigo e baseado no algoritmo de clusterizacao espacial desenvolvido em

17

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

vi < vj
j Ni
ti = 0
Sorteio

F ase1
ti > 0
Sorteio

vi vj
j Ni

vi > vj
j Ni

F ase2

F ase3

vi vj
j Ni
vi vmax
Sorteio

ui > ci
vi < vj
j Ni

F ase5

ui < ci

ui > ci
vi vj
j Ni

vi vj
j Ni
vi > vmax
Sorteio

vi vj
j Ni

F ase4

vi < vj
j Ni

Figura 1: Diagrama de transicao de fase da carga.

(Di Caro et al., 2012). Este algoritmo e distribudo, e permite que os rob
os do enxame formem
clusters, trocando informac
ao com rob
os vizinhos.
O algoritmo proposto e uma generalizac
ao deste
algoritmo (Di Caro et al., 2012) para 2 classes.

da densidade e realizada conforme Equacao 1:


X
X  uj
vi+ = vi +
vi ,
(vj vi ) +
1
jNi

jJi

(1)
onde vi+ e o valor atualizado de viS
, Ni e o conjunto de vizinhos do roboi , Ji = Ni i, e e uma
constante, tal que 0 n1 , onde n e o n
umero
maximo de robos do sistema. O n
umero de faixas
de densidades e determinado pelo n
umero de classes do processo de clusterizacao. Para estabelecer
as faixas e calculado um valor maximo e um valor
mnimo da densidade para cada classe, conforme
a Equacao 2.

O algoritmo de clusterizac
ao baseia-se principalmente no movimento de fichas, chamadas de
cargas, pelos rob
os. Para classes necess
arias no
sistema existir
ao 1 tipos de cargas. Estas cargas podem ser din
amicas ou est
aticas, sendo que
um robo pode ter uma u
nica carga est
atica, mas
receber qualquer n
umero de cargas din
amicas. A
carga estatica determina a classe do rob
o, as cargas dinamicas representam o movimento de uma
carga no sistema. Se um rob
o possui uma carga
estatica, independentemente da sua classe, este e
denominado como carregado. Por outro lado, se
um robo nao possui nenhuma carga est
atica, este
e denominado descarregado.

ui
ui + 1
< vi
(2)

Note que, classes sao definidas pelas faixas de


densidade ]0, 1 ], ] 1 , 2 ], ..., ]1 1 , 1].
Durante o processo de clusterizacao, o comportamento das cargas esta regido por cinco fases
que permitem percorrer o enxame em procura da
regiao de maior densidade. A Figura 1 resume o
diagrama de transicao de fase da carga, explicado
a seguir. Para isso seja i o identificador do robo
em consideracao e j Ni os identificadores dos
robos da sua vizinhanca.

Uma vari
avel local ui indica ao rob
oi o tipo de
carga estatica, com ui {0, 1, 2, ..., 1}. Note
que o roboi est
a descarregado quando ui = 0. Esta
variavel e usada tambem como um indicador do
peso da classe.
Para poder guiar os movimentos das cargas, e
usada a variavel local ao rob
oi vi [0, 1] que determina a densidade local das cargas estacionarias,
usando um filtro de consenso distribudo, de tal
forma que, dependendo do peso das cargas agrupadas, e possvel estabelecer se a carga presente no
roboi vai continuar est
atica ou vai se movimentar.
O proposito desta vari
avel e criar faixas de densidade relacionadas ao peso da carga. A atualizacao

Fase 1: Inicio estacionario


Esta fase e gerenciada somente quando a
carga e estacionaria indicada por ui 6= 0, ou
seja, quando o robo esta carregado. Nesta
fase, a carga e retida e so e movimentada depois de um certo tempo pre-definido. Isto

18

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

permite um tempo de espera para que o robo


carregado compartilhe seu conhecimento sobre o ambiente e aumente o valor da densidade da sua regi
ao. Para isso, um contador
Ci e inicializado de acordo com o tempo de
espera, e somente decrementado nos casos em
que a densidade fique fora da faixa determinada pela Equac
ao 2. Quando Ci chega a 0, a
carga e movimentada com uma certa probabilidade. Esta probabilidade permite aleatoriamente um maior tempo de espera para que o
robo compartilhe seu conhecimento. A carga
deixa de ser est
atica e passa a ser dinamica.
Neste momento, ui e atualizado com 0.

ate chegar num robo com ui = 0 ou um


robo com ui < ud , onde ud identifica a classe
da carga dinamica. No caso que a carga dinamica encontre um robo descarregado, esta
muda para Fase 0 e o robo fica entao carregado com ui 6= 0. No caso que a carga
dinamica encontre um robo carregado, mas
com ui < ud , serao as cargas trocadas entre si. Em outros termos, a carga dinamica
passa a ser estatica, mudando para Fase 1 e a
carga estatica muda para dinamica, deixando
o robo carregado com a carga de maior peso.
Isto da uma prioridade maior na clusterizacao de cargas de maior classe. A carga de
menor peso fica na Fase 5, continuando com
o processo de clusterizacao. Se a carga chega
ate um mnimo local e nao consegue encontrar um robo descarregado ou um outro carregado com ui < ud , a carga e movimentada
para um vizinho escolhido aleatoriamente e a
carga muda para Fase 2, comecando todo o
processo de clusterizacao de novo. Note que
quando a carga chega `a Fase 1, o contador Ci
e reiniciado.

Fase 2: Movimento ascendente


Durante esta fase, uma carga din
amica e movimentada de rob
o em rob
o, procurando sempre a regi
ao de a maior densidade vj entre
os vizinhos, j Ni . O objetivo desta movimentac
ao e chegar ate o centro do cluster
formado pelos rob
os j
a carregados. Quando
a carga ascende ate um m
aximo local, assumindo que o rob
o i e o centro do cluster, ou
seja, vi vj para todos os vizinhos j Ni , o
valor da vari
avel vi e armazenado e a carga e
movimentada para um vizinho aleat
orio. Em
seguida, a carga muda para Fase 3.

Aspectos de Implementa
c
ao

O algoritmo de clusterizacao proposto foi implementado em robos do tipo Kilobots, (Rubenstein


et al., 2012). O Kilobot e um robo de 33 mm de
diametro e 34 mm de altura, equipado com um
processador ATmega 328p (8bit @ 8MHz), uma
memoria Flash de 32 KB e EPPROM de 1 KB,
um LED RGB, um transmissor e um receptor infravermelho.
Cada robo do enxame e designado por um
u
nico identificador. Este identificador e necessario durante a comunicacao do robo com os demais
robos da vizinhanca.
Nesta implementacao, os diferentes estados
possveis do robo, o tipo de carga e o passo de uma
carga dinamica estarao representados por uma cor
diferente. O objetivo e observar a carga inicial de
cada robo, o movimento das cargas e a carga final
de cada robo.
Todos os robos possuem um transmissor e um
receptor infravermelho. Estes sao localizados na
parte central abaixo do robo. O transmissor tem
uma emissao isotropica e o receptor tem uma recepcao padrao, proporcionando aos robos receber
mensagens uniformemente de todas as direcoes em
um raio de 10 cm. Quando o transmissor esta ativado, qualquer robo na vizinhanca pode receber o
sinal refletido na superfcie.
Cada robo do enxame realiza dois tipos de comunicacoes: uma comunicacao broadcast local, de
tal forma que a informacao e compartilhada com
toda a vizinhanca; e uma comunicacao ponto a
ponto, por meio da qual e transmitida a carga de
um robo a um outro. Note que a perda de informa-

Fase 3: Movimento descendente


Durante esta fase uma carga din
amica e movimentada de rob
o em rob
o, procurando sempre a regi
ao com a menor densidade entre os
vizinhos. O motivo deste movimento e reiniciar a busca da regi
ao de uma maior densidade, permitindo que a carga n
ao fique presa
em um m
aximo local. Quando a carga descende ate um mnimo local, assumindo que o
robo i representa este mnimo local, ou seja,
vi vj para todos os vizinhos j Ni , a
carga e movimentada para um vizinho aleatorio. Em seguida, a carga muda para Fase 4.
Fase 4: Movimento ascendente
Semelhante ao comportamento da Fase 1,
aqui a carga e movimentada ate uma area
com um valor de densidade alto. Quando a
carga chega a um m
aximo local, este valor e
comparado com o valor alcancado na Fase 2.
Se o novo m
aximo local e maior que o valor
armazenado, ent
ao a carga muda para Fase
5. Senao, i.e. se o valor n
ao e maior, a carga
mudara para a Fase 5 com uma certa probabilidade p e 1 p para Fase 3, com a intencao
de encontrar uma nova regi
ao carregada.
Fase 5: Movimento descendente lento
Nesta fase, a carga din
amica e movimentada
de robo em rob
o, procurando o vizinho j Ni
com a maior densidade vj tal que vj < vi ,

19

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

(a) 0 seg

(b) 75 seg

(c) 125 seg

Figura 2: Implementac
ao em Foot-bots realizada em (Di Caro et al., 2012), os robos sinalizados com a
letra B representam o rob
os descarregados.
cao nao tem muita import
ancia durante a comunicacao broadcast local, pois neste caso o filtro de
consenso compensa aquela perda, e portanto nao
e preciso de uma confirmac
ao do receptor. Em
contraste, o envio da carga de um rob
o a um outro e fundamental para o funcionamento do algoritmo. Por isso s
ao necess
arias duas confirmacoes
da recepcao da carga, para evitar a perda da informacao. A primeira confirmac
ao tem o objetivo
de evitar a perda ou duplicac
ao das cargas enviadas. A segunda confirmac
ao tem a finalidade de
prevenir a perda de uma segunda carga enviada
consecutivamente pelo mesmo rob
o. O processo
de confirmacao da recepc
ao da carga e organizado
em 6 transac
oes: (i) o rob
o emissor fica transmitindo a mensagem com a informac
ao sobre a carga;
(ii) o robo receptor, ao receber a carga, comeca a
enviar a primeira confirmac
ao; (iii) ao receber a
primeira confirmac
ao, o rob
o emissor deixa de enviar a primeira mensagem e comeca a enviar uma
segunda mensagem esperando uma segunda confirmacao do rob
o receptor, inibindo-o de enviar
a primeira confirmac
ao; (iv) depois de receber a
segunda mensagem, o rob
o receptor comeca a enviar a segunda confirmac
ao; (v) uma vez recebida
a segunda confirmac
ao, o rob
o receptor envia uma
terceira mensagem terminando o processo de confirmacao; (vi) a terceira mensagem faz que o robo
receptor deixe de transmitir a segunda confirmacao, finalizando assim o processo de envio de cargas.
6

A separabilidade linear representa a possibilidade de visualizar os grupos individualmente, ou


seja, a possibilidade de desenhar uma linha que
consiga dividir os grupos. O resultado da avaliacao e realizado conforme Equacao 3.
Re
,
(3)
n
onde n e o total de robos do enxame, e Re o n
umero de robos clusterizados de maneira errada.
Se a separabilidade linear e otima, o resultado e
0, caso contrario, o resultado se aproxima de 1.
O desequilbrio de classes avalia se o n
umero
de robos em todas as classes e igual. O desequilbrio de classes e calculado conforme Equacao 4.
separabilidade =

Rm
,
(4)
n
onde Rm e o n
umero de robos da classe com menor quantidade de membros e, como antes, n e
o n
umero total de robos do enxame. Para duas
classes com o mesmo n
umero de robos o melhor
resultado do desequilbrio e 0,5, e o pior resultado
e 0. Para visualizar os resultados com maior clareza e generalizar o resultado para varias classes
o resultado do desequilbrio e multiplicado pelo
n
umero de classes do sistema, Equacao 5.
desequilibrio =

Rm
,
(5)
n
Para os testes realizados em (Di Caro et al.,
2012) foram utilizados 15 robos do tipo Foot-bot,
foi implementado um sistema de duas classes, utilizando 8 cargas distribudas aleatoriamente entre
os robos do enxame, o contador Ci foi estabelecido
1
. Os mesmos parametros
em 120 e valor de em 15
foram utilizados em nossos testes. As probabilidades da Fase 1 e da Fase 5 foram estabelecidas
em 20% e 10% respectivamente. Estes valores de
probabilidade foram escolhidos depois de realizar
diversos testes.
Figura 2 mostra a evolucao da resposta do
sistema apresentado em (Di Caro et al., 2012). A
convergencia do sistema acontece em 125s. Figura
3 apresenta a evolucao da resposta do sistema implementado no Kilobot, onde a convergencia acondesequilibrio =

An
alise de Resultados

Os primeiros resultados obtidos neste trabalho foram comparados com as experiencias obtidas em
robos reais e n
ao com as simulac
oes no trabalho
realizado em (Di Caro et al., 2012). A comparacao realizada n
ao visava obter melhores resultados, mas sim ter uma validac
ao da resposta do
sistema, assim como um tempo de referencia para
convergencia.
As metricas utilizadas para avaliar o desempenho da clusterizac
ao do enxame de rob
os sao a
separabilidade linear e o desequilbrio de classes.

20

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

D
D

(a) 0 seg

(b) 75 seg

(c) 125 seg

D
D
D

D
D
D
D

(d) 130 seg

Figura 3: Implementac
ao em Kilobots realizada neste trabalho, os robos sinalizados com a letra D
representam os rob
os descarregados.
tece somente em 130s. A cor do LED do robo deve
ser interpretada conforme a Tabela 1.

Qualidade da Soluc
ao

Separabilidade

Tabela 1: Cores utilizados no exemplo de 2 classes.


Classe
0
1

Sem cargas
din
amicas
Azul
Vermelho

Com cargas
din
amicas
Verde
Magenta

0.8
0.6
0.4
0.2
0

Em t = 0s, a separabilidade linear e de 0,4


e desequilbrio 0,933 em ambos os sistemas. Em
t = 75s, o enxame de Foot-bots apresenta uma
separabilidade linear de 0,594 e desequilbrio de
0,466. Por outro lado, o enxame de Kilobots apresenta uma separabilidade linear de 0,2 e desequilbrio de 0,666. Em t = 125s os Foot-bots convergem para uma soluc
ao, com uma separabilidade
linear de 0,066 e um desequilbrio de 0,933. Note
que a separabilidade linear n
ao e igual a zero, isto
acontece porque neste sistema ocorreu a perda de
uma carga, s
o clusterizaram 7 cargas das 8 iniciais. Em contraste, o enxame de Kilobots converge
em t = 130s, mas com uma separabilidade linear
de 0 e um desequilbrio de 0,933. Note que nos
dois casos o desequilbrio n
ao e igual a 1, isto e
devido ao fato que o n
umero de rob
os do enxame
e impar, entao a proporc
ao das classes nunca sera
igual.
Figura 4 apresenta a evoluc
ao temporal da separabilidade linear e o desequilbrio para o exemplo ilustrado na Figura 3. Tambem foram obtidos
resultados de clusterizac
ao aumentando o n
umero
de classes no sistema, as experiencias foram feitas
com 3 e 4 classes.
Nas Figuras 5 e na Figura 6, s
ao apresentadas as respostas dos sistemas implementados para
3 classes e 4 classes respectivamente, onde a cor
do LED do rob
o deve ser interpretada conforme

Desequil
brio

15

45

75

105

135

Tempo (seg)

Figura 4: Evolucao temporal da separabilidade


linear e o desequilbrio para um sistema com 15
robos e 2 classes.

a Tabela 2. Os vdeos das experiencias realizadas estao disponveis no Youtube atraves do link:
http://bit.ly/1mVxBci.
Tabela 2: Cores do LED do robo para os exemplos
de 3 classes e 4 classes.
Classe
0
1
2
3

Sem cargas
dinamicas
Verde (V)
Azul (A)
Magenta (M)
Vermelho (R)

Com cargas
dinamicas
Desligado (D)
Ciano (C)
Branco (B)
Amarelo (Y)

Na experimentacao de 3 classes o tempo de


convergencia foi de 360s. Neste caso foram usados 15 robos, 10 cargas, sendo a metade de tipo
1 e a outra metade de tipo 2. Em t = 0s, a separabilidade linear e de 0,7 e um desequilbrio de
1. Em t = 180s, o enxame apresenta uma separabilidade linear de 0,5625 e um desequilbrio de 1.

21

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

V
M
A V
V M A
M
V

V
V
A
V
A
A
V
M

M
A V M
A

(a) 0 seg

M
M A M

A
A A A

V V V
V

M
M M M
M

(b) 180 seg

(c) 360 seg

Figura 5: Enxame de 15 Kilobots, clusterizacao em 3 classes.

M
R

A
M

R
V
V

V
M

R
M

(b) 227 seg

M
R

(a) 0 seg

A
V

V
V

R
R

A
A
A

V
(c) 455 seg

(d) 683 seg

Figura 6: Enxame de 20 Kilobots, clusterizacao em 4 classes.

ao
Qualidade da Soluc

Separabilidade

Desequil
brio

gas, sendo 5 cargas de tipo 1, 5 cargas de tipo 2 e


5 de tipo 3. Em t = 0s, a separabilidade linear e
de 0,7 e o desequilbrio 1. Em t = 227s, o enxame
apresenta uma separabilidade linear de 0,6 e o desequilbrio 0,2. Em t = 455s, o enxame apresenta
uma separabilidade linear de 0,15 e o desequilbrio de 0,8. Em t = 683s o enxame converge a
uma solucao, com uma separabilidade linear de 0
e desequilbrio de 1.
Cabe ressaltar que quando foi realizada a experiencia com 2 classes, o n
umero de robos em
menor proporcao foi de 5. Enquanto que, para 3 e
4 classes a menor proporcao foi de 0. Isto explica
a variacao do desequilibrio nas Figuras 7 e 8.

1
0.8
0.6
0.4
0.2
0

60

120

180

240

300

360

Tempo (seg)

Figura 7: Evoluc
ao temporal da separabilidade
linear e o desequilbrio para um sistema com 15
robos e 3 classes.

Conclus
oes e trabalho futuros

Neste trabalho, e proposto um algoritmo de clusterizacao espacial de robos utilizando fichas virtuais. Para clusterizar os robos nao precisam se
movimentar, pois so precisam trocar informacao
utilizando uma comunicacao sem fio. A comunicacao e realizada com a vizinhanca. Os robos nao
possuem um conhecimento global do enxame.
Devido a falta de trabalhos relacionados na
area de clusterizacao de enxame de robos, so foi

Em t = 360s o enxame converge para uma solucao,


com uma separabilidade linear de 0 e desequilbrio
de 1. As curvas de separabilidade e desequilbrio
sao apresentadas na Figura 7.
Na Figura 8 s
ao apresentadas as curvas de
separabilidade e desequilbrio da experimentacao
com 4 classes. O tempo de convergencia foi de
683s, neste caso foram usados 20 rob
os, 15 car-

22

Anais do XX Congresso Brasileiro de Automtica


Belo Horizonte, MG, 20 a 24 de Setembro de 2014

Qualidade da Soluc
ao

Separabilidade

Gross, R., Magnenat, S. and Mondada, F. (2009).


Segregation in swarms of mobile robots based on the brazil nut effect, Intelligent Robots
and Systems, 2009. IROS 2009. IEEE/RSJ
International Conference on, pp. 43494356.

Desequil
brio

1
0.8
0.6
0.4

Kazadi, S., Abdul-Khaliq, A. and Goodman, R.


(2002). On the convergence of puck clustering
systems, Robotics and Autonomous Systems
38(2): 93117.

0.2
0

100 200 300 400 500 600 690

Lee, C., Kim, M. and Kazadi, S. (2005). Robot clustering, Systems, Man and Cybernetics, 2005 IEEE International Conference on,
Vol. 2, pp. 14491454.

Tempo (seg)

Figura 8: Evoluc
ao temporal da separabilidade
linear e o desequilbrio para um sistema com 20
robos e 4 classes.

Linden, R. (2009). Tecnicas de agrupamento, Revista de Sistemas de Informac


ao da FSMA
1(4): 1836.

possvel comparar com uma clusterizac


ao de duas
classes, obtendo bons resultados. Embora o tempo
de convergencia tenha sido maior, o sistema implementado nao tem perda de cargas. Alem disso, o
algoritmo proposto e mais abrangente j
a que permite clusterizac
ao em 2 ou mais classes.
Para trabalhos futuros, ser
a feito uma analise da influencia do n
umero de rob
os nas fronteiras dos clusters no tempo de clusterizac
ao, assim
como o impacto do n
umero de rob
os em cada cluster. Uma comparac
ao com resultados de tecnicas
de clusterizac
ao de redes ad hoc estacionarias e/ou
redes de sensores sem fio estacion
arias e recomendada.

Marjovi, A., Choobdar, S. and Marques, L.


(2012). Robotic clusters: Multi-robot systems as computer clusters: A topological
map merging demonstration, Robotics and
Autonomous Systems 60(9): 11911204.
Rosato, A., Strandburg, K. J., Prinz, F. and
Swendsen, R. H. (1987). Why the brazil nuts
are on top: Size segregation of particulate
matter by shaking, Physical Review Letters
58(10): 1038.
Rubenstein, M., Ahler, C. and Nagpal, R. (2012).
Kilobot: A low cost scalable robot system for
collective behaviors, Robotics and Automation (ICRA), 2012 IEEE International Conference on, IEEE, pp. 32933298.

Agradecimentos
Somos gratos a FAPERJ (Fundac
ao de Amparo a Pesquisa do Estado do Rio de Janeiro,
http://www.faperj.br) e CNPq (Conselho Nacional de Desenvolvimento Cientfico e Tecnologico,
http://www.cnpq.br) a CAPES (Coordenacao de
Aperfeicoamento de Pessoal de Ensino Superior,
http://www.capes.gov.br) por seu continuo apoio
financeiro.
Refer
encias
Beckers, R., Holland, O. and Deneubourg, J.-L.
(1994). From local actions to global tasks:
Stigmergy and collective robotics, Artificial
life IV, Vol. 181, p. 189.
Di Caro, G. A., Ducatelle, F. and Gambardella, L.
(2012). A fully distributed communicationbased approach for spatial clustering in robotic swarms, Proceedings of the 2nd Autonomous Robots and Multirobot Systems
Workshop (ARMS), affiliated with the 11th
International Conference on Autonomous
Agents and Multiagent Systems (AAMAS),
Valencia, Spain, June 5, pp. 153171.

23

También podría gustarte