Documentos de Académico
Documentos de Profesional
Documentos de Cultura
ROBOTICA
DE ENXAME
s Bulla Cruz, Nadia Nedjah, Luiza de Macedo Mourelle
Nicola
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
Clusterizac
ao, rob
otica de enxame, intelig
encia de enxame, sistemas multi-rob
o.
Introdu
c
ao
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
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
17
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
(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.
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)
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
18
Aspectos de Implementa
c
ao
19
(a) 0 seg
(b) 75 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
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
D
D
(a) 0 seg
(b) 75 seg
D
D
D
D
D
D
D
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
Sem cargas
din
amicas
Azul
Vermelho
Com cargas
din
amicas
Verde
Magenta
0.8
0.6
0.4
0.2
0
Desequil
brio
15
45
75
105
135
Tempo (seg)
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)
21
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
M
R
A
M
R
V
V
V
M
R
M
M
R
(a) 0 seg
A
V
V
V
R
R
A
A
A
V
(c) 455 seg
ao
Qualidade da Soluc
Separabilidade
Desequil
brio
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
22
Qualidade da Soluc
ao
Separabilidade
Desequil
brio
1
0.8
0.6
0.4
0.2
0
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.
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