Você está na página 1de 106

U NIVERSIDADE F EDERAL DO R IO G RANDE DO N ORTE

C ENTRO DE T ECNOLOGIA

P ROGRAMA DE P ÓS -G RADUAÇÃO EM E NGENHARIA E LÉTRICA E DE C OMPUTAÇÃO

FÁBIO AUGUSTO P ROCÓPIO DE PAIVA

Estudo do Conceito de Serendipidade como Base


para Novas Abordagens ao Problema da
Convergência Prematura

Número de Ordem PPgEEC: D172


N ATAL — RN
01 DE J ULHO DE 2016
Catalogação da Publicação na Fonte
Universidade Federal do Rio Grande do Norte - Sistema de Bibliotecas
Biblioteca Central Zila Mamede / Setor de Informação e Referência
Paiva, Fábio Augusto Procópio de.
Estudo do conceito de serendipidade como base para novas
abordagens ao problema da convergência prematura / Fábio Augusto
Procópio de Paiva. - Natal, RN, 2016.
106 f. : il.

Orientador: Prof. Dr. José Alfredo Ferreira Costa.


Coorientador: Prof. Dr. Cláudio Rodrigues Muniz da Silva.

Tese (doutorado) - Universidade Federal do Rio Grande do Norte.


Centro de Tecnologia. Programa de Pós-Graduação em Engenharia
Elétrica e de Computação.

1. Particle Swarm Optimization (PSO) - Tese. 2. Serendipity-


Based Particle Swarm Optimization (SBPSO) - Tese. 3. Serendipidade
- Tese. 4. Partículas escoteiras - Tese. 5. Algoritmo - Convergência
prematura - Tese. I. Costa, José Alfredo Ferreira. II. Silva, Cláudio
Rodrigues Muniz da. III. Título.

RN/UF/BCZM CDU 519.712


FÁBIO AUGUSTO P ROCÓPIO DE PAIVA

Estudo do Conceito de Serendipidade como Base


para Novas Abordagens ao Problema da
Convergência Prematura

Tese de Doutorado apresentada ao Programa


de Pós-Graduação em Engenharia Elétrica e de
Computação da UFRN (área de concentração:
Engenharia de Computação) como parte dos
requisitos para obtenção do título de Doutor
em Ciências.

Orientador
Prof. Dr. José Alfredo Ferreira Costa
Coorientador
Prof. Dr. Cláudio Rodrigues Muniz da Silva

Número de Ordem PPgEEC: D172


N ATAL — RN
01 DE J ULHO DE 2016
Dedico este trabalho à minha avó Eunice (in memoriam) pela sua maternidade.
AGRADECIMENTOS

E sta longa e cansativa caminhada, eu estudei diversos temas, encontrei muitas dúvidas, deparei-

N me com o medo, porém aprendi bastante. Eu descobri quatro pilares sobre os quais me
sustentei: persistência, humildade, paciência e fé. Mas, para isso, eu precisei da ajuda de muitas
pessoas a quem devo os meus sinceros agradecimentos.

Meu orientador, Prof. Dr. José Alfredo, pelos vários artigos dos quais solicitou minhas revi-
sões. Indiscutivelmente, elas contribuíram com o desenvolvimento da minha escrita científica.

Prof. Dr. Cláudio Muniz, meu amigo e co-orientador, por ter disponibilizado o seu precioso
tempo. Nossas reuniões semanais foram além da produção acadêmica: elas contribuíram com o
meu crescimento pessoal e o profissional.

Eu não poderia imaginar que, além dos professores orientadores, tantas pessoas poderiam
contribuir diretamente com este trabalho. São elas:

Professor Leandro Pasa, que, por muitas vezes, sugeriu melhorias nos artigos que eu
produzi durante o curso de doutorado.
Professores Carmelo Bastos, Ahmed Esmin, Teófilo Mattozo, Givanaldo Souza, Érico
Braz, Rodrigo Siqueira, Valério Gutemberg, Gustavo Fontoura e Daniel Brito, pelas dis-
cussões e preciosas sugestões relacionadas a este trabalho.
Professores Elthon Medeiros, Albérico Canário, Iderval Barbosa e Valdemiro Severiano,
pelas vezes que sanaram minhas dúvidas de matemática.
Professor Milson Santos, pelas várias revisões textuais relacionadas a esta tese.
Professores Luciana Bernardo, Luiz Ferdinando e Henrique Coelho, pelas revisões de
artigos submetidos no idioma inglês.
Professores Airton Souza e João Paulo Queiroz, além do amigo pesquisador Marcial
Guerra, pelo suporte técnico que me prestaram nas ferramentas usadas nesta tese.

Professores Alexandro Rocha, Bruno Gurgel e Pedrina Brasil, por se mobilizarem na viabi-
lização do meu afastamento das atividades em sala de aula para conclusão deste trabalho.

Eu agradeço também a todas aquelas pessoas que foram fontes de incentivo durante o meu
cansaço: amigos, familiares e colegas de trabalho. Aqui, é impossível eu citar todos os nomes, mas
as palavras de apoio de cada uma delas permanecem na minha mente.

Meu pai, pelo apoio e incentivo à minha carreira acadêmica.

Minha mãe, por todo o carinho, cuidado e educação oferecidos.

Minha esposa e o pequeno Heitor, por conviverem com a minha ausência nesses anos. Ao
fim deste trabalho, certamente, o tempo que teremos juntos será muito mais agradável e divertido.

E, por fim, Deus, que é, indubitavelmente, o autor principal desta tese.


Te adorarei, com todo o meu ser
Quando estou mais perto de Ti
Fortaleces o meu viver
Te exaltarei, com meu coração
Majestade, estou aqui
Para Te render meu amor, minha gratidão

V IDA R ELUZ
RESUMO
literatura, é comum encontrar diversos problemas de engenharia que são usados com o
N
A

objetivo de mostrar a eficácia dos algoritmos de otimização. Vários métodos de Compu-


tação Bio-inspirada vêm sendo propostos como solução em diferentes contextos dos problemas
de engenharia. Entre esses métodos, há uma categoria de algoritmos conhecida como Inteligên-
cia de Enxames. Apesar do relativo sucesso, a maioria desses algoritmos enfrenta um problema
muito comum, conhecido como convergência prematura. Ela ocorre quando um enxame perde
a sua capacidade de gerar diversidade e, como consequência, converge para uma solução sub-
ótima, prematuramente. Existem diversas abordagens que se propõem a resolver esse problema.
Esta tese propõe uma nova abordagem baseada em um conceito chamado serendipidade, que
normalmente é aplicado no domínio dos Sistemas de Recomendação. Para avaliar a viabilidade
da adaptação desse conceito ao novo contexto, uma variante chamada Serendipity-Based Particle
Swarm Optimization (SBPSO) foi implementada considerando duas dimensões da serendipidade:
acaso e sagacidade. Para avaliar a proposta apresentada, dois conjuntos de experimentos compu-
tacionais foram realizados. Para isso, dezesseis funções de referência, que são bastante comuns na
avaliação de algoritmos de otimização, foram utilizadas. No primeiro conjunto de experimentos,
quatro funções foram usadas para comparar SBPSO com a Particle Swarm Optimization (PSO) e
algumas variantes da literatura. No segundo, outras doze funções foram utilizadas, porém em alta
dimensionalidade e com um número maior de avaliações da função objetivo. Em todos os expe-
rimentos realizados, os resultados da SBPSO se mostraram promissores e apresentaram um bom
comportamento de convergência no que diz respeito à a) qualidade da solução, b) capacidade de
encontrar o ótimo global, c) estabilidade das soluções e d) capacidade de retomar o movimento
do enxame após a estagnação ter sido detectada.

Palavras-chave: PSO, SBPSO, serendipidade, partículas escoteiras, convergência prematura.


ABSTRACT
the literature, it is common to find many engineering problems which are used to present the
I
N

effectiveness of the optimization algorithms. Several methods of Bio-Inspired Computing have


been proposed as a solution in different contexts of engineering problems. Among these methods,
there is a class of algorithms known as Swarm Intelligence. Despite the relative success, most of
these algorithms faces a common problem known as premature convergence. It occurs when a
swarm loses its ability to generate diversity and consequently converges to a suboptimal solution
prematurely. There are several approaches proposed to solve this problem. This doctoral thesis
proposes a new approach based on a concept called serendipity. It is usually applied in the field
of Recommender Systems. To validate the feasibility of adapting this concept to the new context,
a variant called Serendipity-Based Particle Swarm Optimization (SBPSO) has been implemented
considering two dimensions of serendipity: chance and sagacity. To evaluate the presented pro-
posal, two sets of computer experiments were performed. Sixteen reference functions which are
common in the evaluation of optimization algorithms were used. In the first set of experiments,
four functions were used to compare SBPSO to Particle Swarm optimization (PSO) and some liter-
ature variants. In the second ones, twelve other functions were used, but for high dimensionality
and a larger number of evaluations of the objective function. In all experiments, the results of the
SBPSO were promising and presented a good convergence behaviour with regard to: a) quality of
the solution, b) ability to find the global optimum, c) stability of solutions and d) ability to resume
the swarm movement after stagnation has been detected.

Keywords: PSO, SBPSO, serendipity, scout particles, premature convergence.


LISTA DE ILUSTRAÇÕES

Figura 1 – Exemplo de uma função com um mínimo global x ∗ e vários mínimos locais x ∗A 29
Figura 2 – Uma ave pode orientar a direção do seu voo de acordo com a posição de seus
vizinhos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
Figura 3 – Comportamento exploratório da PSO em busca do ótimo global . . . . . . . . . 36
Figura 4 – Modelo Perceptivo de Serendipidade . . . . . . . . . . . . . . . . . . . . . . . . . . 38
Figura 5 – Diagrama de atividades do algoritmo SBPSO . . . . . . . . . . . . . . . . . . . . . 56
Figura 6 – Padrões de comportamento usados para implementar a dimensão sagacidade . 57
Figura 7 – Exemplo de identificação do Padrão 1 . . . . . . . . . . . . . . . . . . . . . . . . . 57
Figura 8 – Plotagem da Função Esfera ( f 1 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Figura 9 – Plotagem da Função Rosenbrock ( f 2 ) . . . . . . . . . . . . . . . . . . . . . . . . . . 64
Figura 10 – Plotagem da Função Griewank ( f 3 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Figura 11 – Plotagem da Função Rastrigin ( f 4 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Figura 12 – Plotagem da Função Ackley ( f 5 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
Figura 13 – Plotagem da Função Noisy Quartic ( f 6 ) . . . . . . . . . . . . . . . . . . . . . . . . . 66
Figura 14 – Plotagem da Função Zakharov ( f 7 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
Figura 15 – Plotagem da Função Hiper Elipsoide Rotacionada ( f 8 ) . . . . . . . . . . . . . . . 67
Figura 16 – Plotagem da Função Alpine ( f 9 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Figura 17 – Plotagem da Função Sargan ( f 10 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
Figura 18 – Plotagem da Função Salomon ( f 11 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Figura 19 – Plotagem da Função Csendes ( f 12 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
Figura 20 – Plotagem da Função Xin-She Yang 01 ( f 13 ) . . . . . . . . . . . . . . . . . . . . . . . 70
Figura 21 – Plotagem da Função Soma dos Quadrados ( f 14 ) . . . . . . . . . . . . . . . . . . . 70
Figura 22 – Plotagem da Função Schumer Steiglitz ( f 15 ) . . . . . . . . . . . . . . . . . . . . . . 71
Figura 23 – Plotagem da Função Powell Sum ( f 16 ) . . . . . . . . . . . . . . . . . . . . . . . . . 71
Figura 24 – Processo de convergência médio na Função f 1 , com 20 partículas, em 30D . . . 74
Figura 25 – Processo de convergência médio na Função f 2 , com 20 partículas, em 30D . . . 74
Figura 26 – Processo de convergência médio na Função f 3 , com 20 partículas, em 30D . . . 75
Figura 27 – Processo de convergência médio na Função f 4 , com 20 partículas, em 30D . . . 75
Figura 28 – Processo de convergência médio na Função f 5 , com 50 partículas, em 300D . . 83
Figura 29 – Processo de convergência médio na Função f 6 , com 50 partículas, em 300D . . 83
Figura 30 – Processo de convergência médio na Função f 7 , com 50 partículas, em 300D . . 84
Figura 31 – Processo de convergência médio na Função f 8 , com 50 partículas, em 300D . . 84
Figura 32 – Processo de convergência médio na Função f 9 , com 50 partículas, em 300D . . 85
Figura 33 – Processo de convergência médio na Função f 10 , com 50 partículas, em 300D . . 85
Figura 34 – Processo de convergência médio na Função f 11 , com 50 partículas, em 300D . . 86
Figura 35 – Processo de convergência médio na Função f 12 , com 50 partículas, em 300D . . 86
Figura 36 – Processo de convergência médio na Função f 13 , com 50 partículas, em 300D . . 87
Figura 37 – Processo de convergência médio na Função f 14 , com 50 partículas, em 300D . . 87
Figura 38 – Processo de convergência médio na Função f 15 , com 50 partículas, em 300D . . 88
Figura 39 – Processo de convergência médio na Função f 16 , com 50 partículas, em 300D . . 88
LISTA DE TABELAS

Tabela 1 – Implementação das dimensões de serendipidade nas variantes estudadas . . . 47


Tabela 2 – Conjunto de regras para tratar padrões de comportamento na definição de Pon-
tos de Inspeção próximos à partícula gBest . . . . . . . . . . . . . . . . . . . . . . 55
Tabela 3 – Características das funções de referência avaliadas. . . . . . . . . . . . . . . . . . 63
Tabela 4 – Comparação entre a PSO, PSO-Scout e SBPSO nas funções f 1 e f 2 . . . . . . . . . 77
Tabela 5 – Comparação entre a PSO, PSO-Scout e SBPSO nas funções f 3 e f 4 . . . . . . . . . 78
Tabela 6 – Resultados do Teste de Wilcoxon nas funções f 1 , f 2 , f 3 e f 4 . . . . . . . . . . . . . 79
Tabela 7 – Comparação entre diferentes variantes da PSO com 20 partículas, em 30D . . . 80
Tabela 8 – Comparação entre a PSO, PSO-Scout e SBPSO para as funções f 5 – f 16 , em 300
dimensões com 50 partículas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89
LISTA DE ABREVIATURAS E SIGLAS

ABC Artificial Bee Colony

ABeePSO Adaptive Bee and Particle Swarm Optimization

AP Adjacent Point

APSO Adaptive Particle Swarm Optimization

ARPSO Attractive and Repulsive Particle Swarm Optimization

GCPSO Guaranteed Convergence Particle Swarm Optimization

HPSOM Hybrid Particle Swarm Optimization with Genetic Mutation

HPSOWM Hybrid Particle Swarm Optimization With Wavelet Mutation

IP Inspection Point

MATLAB Matrix Laboratory

MPSO Multi-Start Particle Swarm Optimization

NP New Point

OBL Opposition-Based Learning

OPSO Opposition-based Particle Swarm Optimization

PSO Particle Swarm Optimization

PSOGM Particle Swarm Optimization with Gaussian Mutation

PSO-Scout Particle Swarm Optimization usando partículas escoteiras

QPSO Quantum-Behaved Particle Swarm Optimization

RegPSO Regrouping Particle Swarm Optimization

SBPSO Serendipity-Based Particle Swarm Optimization

SPPO Scouting Predator-Prey Optimizer

TPSO Tabu Search Particle Swarm Optimization

TQ Teoria Quântica

UML Unified Modeling Language

WQPSO Weighted Quantum-Behaved Particle Swarm Optimization


SUMÁRIO

1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.1 Contextualização . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
1.2 Motivação . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
1.3 Definição do Problema . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
1.4 Contribuições . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.5 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
1.6 Organização do Documento . . . . . . . . . . . . . . . . . . . . . . . 25

2 FUNDAMENTAÇÃO TEÓRICA . . . . . . . . . . . . . . . . . . . . . . . 27
2.1 Processo de Otimização . . . . . . . . . . . . . . . . . . . . . . . . . . 27
2.1.1 Otimização Local . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
2.1.2 Otimização Global . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
2.2 Meta-heurística . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.3 Inteligência de Enxames . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.4 Otimização por Enxame de Partículas . . . . . . . . . . . . . . . . . 32
2.5 Serendipidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.6 Trabalhos Relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.6.1 Aumento de Diversidade . . . . . . . . . . . . . . . . . . . . . . . 39
2.6.2 Detecção de Estagnação . . . . . . . . . . . . . . . . . . . . . . . 45
2.6.3 Comparação dos Trabalhos . . . . . . . . . . . . . . . . . . . . . . 46
2.7 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

3 SERENDIPIDADE NO CONTEXTO DA INTELIGÊNCIA DE EN-


XAMES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
3.1 Breve Histórico da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . 49
3.2 Formalização e Adaptação de Serendipidade . . . . . . . . . . . . 50
3.3 SBPSO: Uma Variante PSO Baseada em Serendipidade . . . . . 51
3.4 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

4 EXPERIMENTOS COMPUTACIONAIS . . . . . . . . . . . . . . . . . . 59
4.1 Funções de Referência . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.2 Configuração dos Parâmetros . . . . . . . . . . . . . . . . . . . . . . 72
4.3 Resultados Experimentais . . . . . . . . . . . . . . . . . . . . . . . . . 72
4.3.1 Experimentação 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
4.3.1.1 Avaliação dos Resultados . . . . . . . . . . . . . . . . . . . 81
4.3.2 Experimentação 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
4.3.2.1 Avaliação dos Resultados . . . . . . . . . . . . . . . . . . . 90
4.4 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

5 CONSIDERAÇÕES FINAIS . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.1 Conclusões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
5.2 Limitações e Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . 94

REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

APÊNDICE A TRABALHOS PUBLICADOS . . . . . . . . . . . . . . . . 105


CAPÍTULO
1
I NTRODUÇÃO

Na Seção 1.1, é apresentada a contextualização desta tese. Na Seção 1.2, os aspectos que
contribuíram com a motivação do desenvolvimento do trabalho são apresentados. Na Seção 1.3, é
descrita a convergência prematura, um problema comumente enfrentado pelos algoritmos de oti-
mização. Na Seção 1.4, as principais contribuições do trabalho são apresentadas. Na Seção 1.5, os
objetivos gerais e os específicos são listados. E, por fim, na Seção 1.6 é apresentada a organização
do documento.

1.1 CONTEXTUALIZAÇÃO
Os problemas de otimização estão presentes em diversos domínios do mundo real como,
por exemplo, medicina (SMIGRODZKI et al., 2005), planejamento de transportes (CONTRERAS;
CHUNG; JONES, 2008), roteamento de veículos (LI; TIAN; LEUNG, 2009), planejamento da pro-
dução (VASANT, 2010), projetos de engenharia (YI; DUAN; LIAO, 2013), gerenciamento de tráfego
aéreo (ALONSO-AYUSO; ESCUDERO; MARTÍN-CAMPO, 2016) e muitos outros. A otimização con-
siste em um processo que objetiva encontrar a melhor solução para um determinado problema.
Assim, há uma necessidade constante da construção de algoritmos eficientes e robustos, capazes
de resolver problemas de otimização em aplicações reais.

Recentemente, os algoritmos de otimização meta-heurísticos vêm sendo amplamente em-


pregados para resolver problemas complexos de otimização. Eles são usados porque são mais po-
derosos que os métodos convencionais, que se baseiam nas lógicas formais ou na programação
matemática (YANG, 2010a), além de o tempo necessário para execução ser menor que o dos algo-
ritmos exatos.

Um conjunto de algoritmos inspirado na natureza vem sendo frequentemente aplicado


com sucesso na área de otimização. A maioria desses algoritmos se baseia em algumas caracterís-
ticas de sucesso do sistema biológico e eles são chamados de Algoritmos Bioinspirados (FISTER-JR
CAPÍTULO 1. INTRODUÇÃO

et al., 2013). Uma classe especial dos algoritmos bioinspirados foi inspirada na inteligência dos en-
xames e, portanto, são conhecidos como algoritmos baseados em inteligência de enxames.

A inteligência de enxames está relacionada ao comportamento coletivo de vários agentes


que interagem entre si e que seguem algumas regras. Um agente, quando é observado de forma in-
dividual, não pode ser considerado inteligente, porém o sistema com múltiplos agentes apresenta
um comportamento auto-organizável e utiliza a inteligência coletiva.

Os algoritmos baseados em inteligência de enxames consistem em um conjunto de meta-


heurísticas baseado em alguns seres vivos cujos comportamentos emergentes podem resultar em
uma capacidade de resolver problemas complexos (SILVA; BASTOS-FILHO, 2015). A Otimização
por Enxame de Partículas (KENNEDY; EBERHART, 1995), por exemplo, tem sido amplamente uti-
lizada no contexto de problemas de otimização global para implementar técnicas que buscam
inspiração no comportamento social das aves e dos peixes para resolver problemas de otimiza-
ção. Os indivíduos da população são representados por partículas no espaço de busca, que se
movimentam com o objetivo de convergir para a posição de uma partícula ótima.

A Otimização por Enxame de Partículas (PSO) é uma das meta-heurísticas mais utiliza-
das para resolução de problemas de otimização (GANDOMI; ALAVI, 2012). Segundo Bai (2010),
ela ganhou muita atenção devido a algumas de suas características, tais como: a) aplicabilidade a
pesquisas científicas e a problemas do mundo real, b) exploração mais rápida do espaço de busca,
quando comparada com algumas meta-heurísticas tradicionais e c) facilidade de implementação.
Apesar dessas características, muitas vezes, a PSO enfrenta um problema em que as suas partícu-
las ficam “presas” em soluções sub-ótimas, também chamadas de ótimos locais. Esse problema
enfrentado durante o processo de otimização é conhecido como convergência prematura.

Muitas abordagens foram propostas na literatura para acelerar a convergência da PSO e


evitar a convergência prematura. Operadores que são frequentemente usados nos Algoritmos Ge-
néticos, tais como seleção e mutação, têm sido incorporados na PSO (LI et al., 2007; WEI; GUANG-
BIN; DONG, 2008; ESMIN; MATWIN, 2013) porque eles são eficientes para melhorar a diversidade
do enxame. Outras abordagens diferentes, como sistema quântico (SUN; FENG; XU, 2004; XI; SUN;
XU, 2008) e teoria wavelet (LING et al., 2008) também foram propostas para acelerar a convergên-
cia da PSO. Essas abordagens são essencialmente estocásticas, porém elas podem se beneficiar
de combinações com outras técnicas para diminuir a aleatoriedade e melhorar a performance do
algoritmo. Para esse propósito, uma alternativa interessante é a implementação de serendipidade.

Esta tese estuda o conceito de serendipidade e propõe a sua adaptação ao contexto dos
algoritmos de inteligência de enxames, a fim de criar mecanismos que possibilitem o enxame es-
capar de soluções sub-ótimas. Para validar a proposta apresentada e avaliar os seus resultados,
uma variante da PSO, que se beneficia do conceito de serendipidade, é implementada para me-
lhorar a performance do algoritmo. Algumas estratégias, comumente empregadas em uma área
conhecida como Sistemas de Recomendação, são usadas para implementar as duas dimensões de
serendipidade: acaso e sagacidade. A dimensão “acaso” é implementada por meio da estratégia
chamada blind luck, e a implementação da dimensão “sagacidade” é realizada usando a estratégia

22
1.2. MOTIVAÇÃO

conhecida como Princípio de Pasteur.

Nesta tese, a estratégia blind luck consiste em usar o comportamento exploratório de partí-
culas escoteiras para implementar a dimensão acaso. Recentemente, alguns trabalhos implemen-
taram essa dimensão (SILVA; NEVES; GONÇALVES, 2013; VITORINO; RIBEIRO; BASTOS-FILHO,
2015). Já a dimensão sagacidade consiste na realização de inspeções nas adjacências da partícula
gBest da iteração atual. A dimensão foi implementada por Peer, Bergh e Engelbrecht (2003), modi-
ficando a equação da velocidade apenas da melhor partícula do enxame. Já a abordagem de Evers
e Ghalia (2009) reagrupa o enxame nas proximidades da partícula gBest, quando a estagnação do
enxame é detectada.

Observou-se que a dimensão acaso foi bastante utilizada nas variantes estudadas neste
trabalho, ao passo que a implementação de sagacidade ocorreu com menos frequência. Apesar de
essas duas dimensões já terem sido implementadas em trabalhos anteriores, no estudo realizado
aqui, nenhum deles considerou um conjunto de padrões de comportamento para implementar
a dimensão sagacidade. O benefício em considerar esses padrões é o fato de que eles podem ser
usados para representar o comportamento do valor de fitness ao longo dos pontos em uma reta
que passam pela partícula gBest durante a iteração atual.

1.2 MOTIVAÇÃO
Em uma área de estudo conhecida como Sistemas de Recomendação, há um conceito que
tem se tornado uma tendência para melhoria da qualidade dos resultados apresentados aos usuá-
rios (MALAK, 2014). Esse conceito é conhecido como serendipidade. De maneira geral, serendipi-
dade é um termo que se refere a resultados afortunados que, aparentemente, ocorreram por acaso.
No entanto, o conceito de serendipidade não consiste apenas na ocorrência do acaso, mas de sua
combinação com sagacidade.

Os sistemas de recomendação surgiram como uma abordagem para resolver o problema


da sobrecarga de informação. Eles são aplicações especiais, presentes no cotidiano, que fornecem
recomendações personalizadas pelas quais os usuários podem se interessar (PAIVA; COSTA; SILVA,
2013; PAIVA; COSTA; SILVA, 2014) como, por exemplo, filmes, notícias online, serviços comerciais,
redes sociais e outros. Nos últimos anos, o foco das pesquisas em sistemas de recomendação tem
sido a precisão das recomendações (IAQUINTA et al., 2009; GE; DELGADO-BATTENFELD; JAN-
NACH, 2010; OKU; HATTORI, 2011). No entanto, alta precisão pode causar um problema especí-
fico conhecido como over-specialization (ou super-especialização). Embora isso ocorra quando o
sistema se refere a apenas itens relacionados ao perfil do usuário, podem existir itens mais apro-
priados. Uma estratégia que pode ser utilizada para resolver o problema da superespecialização é
o uso de serendipidade.

De acordo com Paiva, Costa e Silva (2015), quando um sistema de recomendação sugere
apenas itens relacionados ao perfil de interesse do usuário, ele converge para recomendações que
podem não atender as reais expectativas do usuário e, dessa forma, deixar de sugerir itens que

23
CAPÍTULO 1. INTRODUÇÃO

podem ser mais adequados. De forma similar, quando um algoritmo baseado na inteligência de
enxames converge para um ótimo local, sem levar em consideração outras soluções mais adequa-
das que a encontrada, é possível observar a semelhança entre superespecialização e convergência
prematura.

Na literatura específica estudada, não foram encontradas propostas que utilizam a imple-
mentação do conceito de serendipidade. Nesse sentido, a hipótese desta tese é que o conceito de
serendipidade é uma abordagem promissora e, quando aplicado no contexto dos algoritmos ba-
seados na inteligência de enxames, pode ser usado como uma estratégia para tratar o problema
da convergência prematura e obter melhores resultados.

1.3 DEFINIÇÃO DO PROBLEMA

Os algoritmos de otimização meta-heurísticos dependem do equilíbrio entre dois com-


ponentes fundamentais conhecidos como diversificação e intensificação (ČREPINŠEK; MERNIK;
LIU, 2011). A diversificação está relacionada ao processo de descoberta de várias soluções dentro
do espaço de busca que está sendo explorado, enquanto a intensificação se concentra no processo
de busca nas imediações das melhores soluções encontradas pelo algoritmo até o momento.

Aplicar muita diversificação ao processo de busca pode torná-lo ineficiente, ao passo que
o uso de muita intensificação pode ocasionar a convergência prematura que, em geral, ocorre
devido à diminuição da diversidade no espaço de busca, o que leva o enxame a um estado de
estagnação. Segundo Evers e Ghalia (2009), depois que a convergência prematura é iniciada, o
algoritmo continua o processo de convergência no qual as soluções estão muito próximas umas
das outras em uma região extremamente estreita do espaço de busca.

A tentativa de preservar a diversidade no espaço de busca, a fim de evitar a convergência


prematura, ainda é um problema de pesquisa em aberto (CHOWDHURY; ZHANG; MESSAC, 2012).
De acordo com Riget e Vesterstrøm (2002), a convergência prematura sempre existirá por conta da
necessidade de verificar todo o espaço de busca para garantir que o resultado encontrado não
seja uma solução sub-ótima. Apesar disso, os algoritmos baseados na inteligência de enxames
precisam ser projetados para tentar evitar, ao máximo, que o enxame estagne em regiões de ótimos
locais.

Portanto, diante desse problema típico dos algoritmos meta-heurísticos, a questão que
esta tese se propõe a responder é:

Como o conceito de serendipidade pode ser adaptado ao contexto dos algoritmos base-
ados em inteligência de enxames a fim de retardar a convergência prematura durante o
processo de busca?

24
1.4. CONTRIBUIÇÕES

1.4 CONTRIBUIÇÕES
Esta tese estuda o conceito de serendipidade e as suas estratégias de implementação com
o propósito de construir mecanismos que possam lidar com um problema frequentemente en-
frentado pelos algoritmos baseados na inteligência de enxames. Abaixo são listadas as principais
contribuições:

1. Formalização do conceito de serendipidade no contexto dos algoritmos baseados em inteli-


gência de enxames;

2. Adaptação das dimensões acaso e sagacidade, pertinentes ao conceito de serendipidade,


com o propósito de implementar mecanismos que melhorem as tarefas de intensificação
e de diversificação do enxame e;

3. Definição de um conjunto de padrões que pode ser usado para representar os possíveis va-
lores de fitness dos pontos para definir o ótimo global da iteração atual durante o processo
de otimização.

1.5 OBJETIVOS
O principal objetivo deste trabalho é estudar o conceito de serendipidade e criar mecanis-
mos que possam ser usados para melhorar o processo de convergência de um enxame e, conse-
quentemente, obter melhores resultados. Os objetivos específicos são elencados a seguir:

1. Investigar a potencialidade do conceito de serendipidade no contexto dos algoritmos de in-


teligência de enxames;

2. Estudar as estratégias conhecidas para a implementação de serendipidade e escolher as que


mais se adequam aos algoritmos baseados na inteligência de enxames e;

3. Validar a adaptação do conceito de serendipidade, no contexto de um algoritmo da inte-


ligência de enxames, implementando o protótipo de uma variante capaz de minimizar a
ocorrência da convergência prematura.

1.6 ORGANIZAÇÃO DO DOCUMENTO


Este documento está organizado da seguinte forma: no Capítulo 1, são apresentados a con-
textualização da pesquisa, os aspectos que motivaram o seu desenvolvimento, o problema estu-
dado, as principais contribuições do trabalho e os seus principais objetivos. No Capítulo 2, os con-
ceitos utilizados no trabalho são descritos, tais como: Processo de Otimização, Meta-heurística, In-
teligência de Enxames, Otimização por Enxame de Partículas e Serendipidade. Além disso, ainda
no segundo capítulo, também são apresentados alguns trabalhos relacionados. No Capítulo 3, é

25
CAPÍTULO 1. INTRODUÇÃO

apresentada uma alternativa para implementar o conceito de serendipidade no contexto da Inte-


ligência de Enxames e, como resultado, uma variante é proposta. No Capítulo 4, são apresentados
os experimentos computacionais. Esse capítulo apresenta as funções de referência utilizadas para
avaliar o desempenho da variante, a configuração dos parâmetros definidos nos experimentos, os
resultados obtidos após a realização de dois conjuntos de experimentos e a avaliação dos resulta-
dos de cada um deles. Por fim, no Capítulo 5, são apresentadas as considerações finais, além dos
trabalhos futuros.

26
CAPÍTULO
2
F UNDAMENTAÇÃO T EÓRICA

Neste capítulo, são apresentados alguns conceitos básicos necessários para uma compre-
ensão adequada do leitor. Na Seção 2.1, é apresentada uma visão geral sobre o processo de oti-
mização. Na Seção 2.2, são apresentados o conceito de meta-heurística e as suas características.
Na Seção 2.3, Inteligência de Enxames é apresentada como uma área de pesquisa, que tem sido
bastante utilizada para resolver problemas de otimização. Já na Seção 2.4, a meta-heurística PSO
é discutida. Na Seção 2.5, o conceito de serendipidade é apresentado, a fim de justificar a sua
adequação no contexto da Inteligência de Enxames. Por fim, na Seção 2.6, alguns trabalhos da
literatura que propuseram lidar com o problema da convergência prematura são apresentados.

2.1 PROCESSO DE OTIMIZAÇÃO


As pessoas e a natureza estão sempre tentando otimizar processos. As companhias aéreas,
por exemplo, escalam tripulações e aeronaves de modo que o custo das viagens seja minimizado.
Os investidores criam carteiras que evitem riscos excessivos quando o objetivo é obter altas taxas
de retorno. Por outro lado, na natureza, os sistemas físicos tendem a atingir um estado de energia
mínima. Os raios de luz, por exemplo, propagam-se por caminhos pelos quais o seu tempo de
viagem tende a ser minimizado.

Otimizar consiste na tarefa de encontrar o melhor resultado possível sob um determinado


conjunto de restrições. Antes de se iniciar um processo de otimização, é necessário identificar
um objetivo, isto é, uma medida quantitativa que represente o desempenho do sistema a ser oti-
mizado. O objetivo pode ser, por exemplo, o lucro de um investimento, a tensão de um sistema
elétrico ou qualquer quantidade (ou uma combinação delas) que possa ser representada por um
único número. O objetivo está em função de um conjunto de características do sistema chamado
de variáveis. Em geral, as variáveis devem ser tratadas sob algumas restrições. Por exemplo, o
tempo de permanência de uma aeronave no solo não pode ser inferior a zero.
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

O processo para identificar os objetivos, as variáveis e as restrições de um determinado


problema é muitas vezes conhecido como modelagem. A construção de um modelo para represen-
tar um determinado problema deve ser o primeiro passo no processo de otimização (NOCEDAL;
WRIGHT, 2006).

Depois que o modelo de otimização é definido, um algoritmo pode ser utilizado para en-
contrar a sua solução. Existem vários algoritmos com esse propósito (GLOVER, 1986; HOLLAND,
1992; KENNEDY; EBERHART, 1995; DORIGO; MANIEZZO; COLORNI, 1991). Cada um deles é ade-
quado para um determinado tipo de problema de otimização. A escolha de um desses algoritmos
pode determinar se a resolução do problema será rápida (ou lenta) e se a solução ótima será en-
contrada.

O modelo matemático básico de um problema de otimização consiste em minimizar uma


função objetivo f (x), a qual está sujeita a restrições em suas variáveis. Nesse modelo, pode-se
adotar a seguinte notação: x é o vetor de varáveis (ou parâmetros); f é a função objetivo, ou seja,
uma função de x que se deseja minimizar; e c é o vetor contendo as restrições que as variáveis x
devem satisfazer. O problema de otimização pode ser escrito como segue:

c i (x) = 0, i ∈ ε
min f (x) sujeito a , (2.1)
x∈R n c (x) ≥ 0, i ∈ %
i

onde f e cada c i são funções com valores escalares das variáveis x, ε e % são os conjuntos de
índices.

No caso de o problema de otimização consistir em maximizar a função objetivo f (x), isso


equivale a, simplesmente, minimizar a função − f (x). Em outras palavras, considerando o ponto
x ∗ como o valor mínimo de f (x), esse mesmo ponto corresponde ao valor máximo da função
objetivo − f (x). Nas duas próximas subseções, serão apresentadas as otimizações local e global,
respectivamente.

2.1.1 OTIMIZAÇÃO LOCAL


Em uma região A, de um determinado espaço de busca, um minimizador local x ∗A pode ser
definido da seguinte maneira:

f (x ∗A ) ≤ f (x), ∀x ∈ A, (2.2)

onde A ⊂ S ⊆ Rn e S representa o espaço de busca. Observa-se que S = Rn quando o problema


estudado não possui restrições. Observa-se também que A é um subconjunto próprio de S. Um
determinado espaço de busca S pode conter várias sub-regiões A i de modo que A i ∩ A j = ;, para
i 6= j . Então x ∗A i 6= x ∗A j tal que o minimizador de cada sub-região A i seja único. Qualquer x ∗A i pode
ser considerado um minimizador de A, embora eles sejam simplesmente minimizadores locais.
Não há restrições para os valores que a função pode assumir, então f (x ∗A i ) = f (x ∗A j ) é permitido.
Assim, o valor f (x ∗A i ) é chamado de mínimo local.

28
2.1. PROCESSO DE OTIMIZAÇÃO

2.1.2 OTIMIZAÇÃO GLOBAL

Já o minimizador global x ∗ pode ser definido da seguinte maneira:

f (x ∗ ) ≤ f (x), ∀x ∈ S, (2.3)

onde S é o espaço de busca. Para problemas sem restrição é comum escolher S = Rn , onde n é a
dimensão de x.

De acordo com Bergh (2006), alguns autores definem um algoritmo de otimização global
diferentemente do que foi apresentado na Equação (2.3). Para eles, o algoritmo deve ser capaz de
encontrar um minimizador local de A ⊂ S independentemente da posição atual z 0 . Esses algorit-
mos consistem de dois processos: busca local e busca global. Em geral, a busca local é a aplicação
de um algoritmo de minimização local, enquanto a busca global objetiva garantir que o algoritmo
se moverá em uma região A i , a partir do ponto em que a busca local é capaz de encontrar o mi-
nimizador de A i . Esses algoritmos também são capazes de encontrar o minimizador global, uma
vez que a posição de partida z 0 é escolhida corretamente.

A Figura 1 apresenta um exemplo que contempla o minimizador local x ∗A e o minimizador


global x ∗ .

x*
A
x*
A

x*
A

x*
A x*
A
x*
A
x*
A

x*

Figura 1: Exemplo de uma função com um mínimo global x ∗ e vários mínimos locais x ∗A .
Fonte: Autoria própria.

29
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

2.2 META-HEURÍSTICA

Um problema complexo pode ser resolvido por um método exato ou por um método apro-
ximado. Os métodos exatos garantem que a solução global ótima será encontrada. Esses métodos
são formados pelos seguintes algoritmos: programação dinâmica, programação por restrições, fa-
mília branch e família A ∗ . Por outro lado, os métodos aproximados produzem soluções de alta
qualidade em um tempo razoável, porém não há a garantia de que a solução ótima global será
encontrada. Os métodos aproximados podem ser classificados em algoritmos heurísticos e algo-
ritmos de aproximação.

Os algoritmos heurísticos encontram boas soluções para problemas complexos. Eles ob-
têm desempenho e custo aceitáveis em vários problemas. Normalmente, esses algoritmos não
garantem aproximação das soluções obtidas. Eles podem ser classificados em duas subclasses:
heurística específica e meta-heurística. As heurísticas específicas são adaptadas e projetadas para
resolver um problema específico. Por outro lado, as meta-heurísticas são de uso geral e podem ser
aplicadas para resolver qualquer problema de otimização (TALBI, 2009).

A origem do termo heurística vem do grego heuriskein, que significa “a arte de descobrir
novas estratégias para resolução de problemas”. O sufixo meta é também de origem grega e signi-
fica “metodologia de alto nível”. O termo meta-heurística foi usado pela primeira vez por Glover,
em 1986. As meta-heurísticas são formadas por uma família de técnicas de otimização que ga-
nharam popularidade nas últimas duas décadas (TALBI, 2009). O motivo da sua popularização é
o fato de elas oferecem soluções aceitáveis para problemas complexos de ciência e de engenharia
em um tempo razoável. Os métodos de busca meta-heurística podem ser definidos como meto-
dologias gerais de alto nível e que podem ser usados como estratégias no projeto de heurísticas
para resolver problemas específicos de otimização.

A eficiência e a eficácia das meta-heurísticas são comprovadas por meio de sua grande uti-
lização para resolver problemas complexos em diferentes domínios, tais como telecomunicações
(VILLEGAS et al., 2004), gerenciamento de tráfego aéreo (DURAND; GOTTELAND, 2006), proces-
samento de imagens (YAGOUNI, 2009), automação (KOUMBOULIS; TZAMTZI, 2010), aerodinâ-
mica (YUE-BO et al., 2012), mercado financeiro (SMONOU; KAMPOURIDIS; TSANG, 2013), pla-
nejamento de robôs (GIGRAS; GUPTA, 2014), aprendizagem de máquina (CHOU; THEDJA, 2016)
e outros.

Existem dois componentes presentes nos algoritmos de meta-heurística que são bastante
significativos. São eles: diversificação e intensificação. Na diversificação, as regiões não exploradas
devem ser visitadas para garantir que todas as regiões do espaço de busca sejam uniformemente
exploradas e que a busca não seja restrita a um número reduzido de regiões. Por outro lado, na in-
tensificação, as regiões promissoras são exploradas mais profundamente, a fim de obter melhores
soluções. Algumas meta-heurísticas são mais voltadas à intensificação enquanto outras possuem
características mais fortes de diversificação, porém uma boa combinação desses dois componen-
tes, em geral, garante o sucesso de uma meta-heurística.

30
2.3. INTELIGÊNCIA DE ENXAMES

Existem várias formas de se classificar os algoritmos meta-heurísticos, e uma delas é classificá-


los como (YANG, 2010a): baseados em trajetória e baseados em população. Os algoritmos baseados
em trajetória trabalham com uma única solução. Eles adicionam mecanismos para escapar de
ótimos locais durante o processo de busca local. Nesse tipo de algoritmo, a busca realizada se ca-
racteriza por apresentar uma trajetória dentro do espaço de busca. Já os algoritmos baseados em
população funcionam com um conjunto de soluções. Para criar novas soluções, uma determinada
solução é mesclada implícita ou explicitamente. As soluções utilizam fatores de aprendizagem à
medida que tentam compreender a correlação entre as variáveis de projeto para identificar as re-
giões do espaço de busca com soluções de alta qualidade.

Os algoritmos meta-heurísticos possuem várias fontes de inspiração, no entanto a prin-


cipal delas é a natureza (ZANG; ZHANG; HAPESHI, 2010). Os algoritmos inspirados na natureza
vêm sendo bastante utilizados no desenvolvimento de sistemas para resolver problemas. Uma das
principais categorias desse tipo de algoritmo é a bioinspiração. Os algoritmos bioinspirados são
eficientes devido à sua capacidade significativa para imitar as melhores características da natureza
(GANDOMI; ALAVI, 2012). Nas últimas décadas, vários algoritmos de otimização bioinspirados fo-
ram desenvolvidos. Entre eles estão os algoritmos inspirados na inteligência de enxames, uma das
categorias mais populares de algoritmos meta-heurísticos (FISTER-JR et al., 2013).

2.3 INTELIGÊNCIA DE ENXAMES


Em muitos grupos de animais, tais como peixes e aves, percebe-se claramente a organi-
zação estrutural desses grupos. O comportamento dos agentes que formam um grupo é tão inte-
grado que, mesmo que mudem a direção, eles parecem mover-se como um único agente coerente
(COUZIN et al., 2002).

Vários pesquisadores estudaram o comportamento dinâmico de diferentes seres vivos, em


especial, o dos insetos sociais como vespas (THERAULAZ et al., 1991), aranhas (CUEVAS et al.,
2013), borboletas (WANG et al., 2015), grilos (CANAYAZ; KARCI, 2016) e outros. A tentativa de imi-
tar o comportamento desses seres, por meio de simulações computacionais, resultou em uma área
de estudo conhecida como Inteligência de Enxames.

A expressão inteligência de enxames foi usada pela primeira vez por Beni e Wang em um
trabalho que tinha como proposta um framework para otimização global no domínio de enxame
de robôs (BENI; WANG, 1989). Para Blum e Li (2008), Inteligência de Enxames pode ser definida
como uma disciplina da Inteligência Artificial que é usada para modelar o comportamento cole-
tivo de enxames sociais da natureza.

Os sistemas baseados em inteligência de enxames são tipicamente constituídos por uma


população de agentes simples, que interagem localmente uns com os outros e com o seu próprio
ambiente. Embora esses agentes sejam relativamente simples e possuam capacidades limitadas,
eles interagem em conjunto com certos padrões de comportamento, a fim de atingir tarefas ne-
cessárias para a sua sobrevivência.

31
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

Segundo Millonas (1993), para que um algoritmo de enxame apresente um comporta-


mento inteligente, é importante que os seguintes princípios sejam considerados:

1. Proximidade – o enxame deve ser capaz de realizar cálculos simples de espaço e de tempo;

2. Qualidade – o enxame deve ser capaz de responder às características de qualidade do seu


ambiente como, por exemplo, a qualidade da comida;

3. Resposta diversificada – o enxame não deve comprometer a sua atividade ao longo dos ca-
nais excessivamente estreitos;

4. Estabilidade – o enxame não deve mudar o seu comportamento devido à variação das con-
dições do ambiente e;

5. Adaptabilidade – o enxame deve ser capaz de alterar o seu comportamento quando for ne-
cessário.

Os algoritmos de inteligência de enxames têm sido aplicados com sucesso em vários domí-
nios. Podem ser citados como exemplos a) roteamento de veículos (GAMBARDELLA; TAILLARD;
AGAZZI, 1999), b) composição musical (BLACKWELL; BENTLEY, 2002), c) análise de clustering
(CHEN; YE, 2004), d) aplicações de eletromagnetismo (MIKKI; KISHK, 2005), e) bioinformática
(CORREA; FREITAS; JOHNSON, 2006), f) problema do caixeiro-viajante (SOUZA, 2013), g) treina-
mento de redes neurais (ZHOU; LIN, 2014), h) processamento paralelo (SILVA; BASTOS-FILHO,
2015), i) otimização de funções (PAIVA; COSTA; SILVA, 2016a; PAIVA; COSTA; SILVA, 2016b), en-
tre outros. Alguns modelos de inteligência de enxames que já foram implementados computa-
cionalmente são: Otimização por Enxame de Partículas (KENNEDY; EBERHART, 1995), Colônia
Artificial de Abelhas (KARABOGA, 2005), Otimização por Colônia de Formigas (DORIGO; BIRAT-
TARI; STÜTZLE, 2006), Algoritmo dos Vaga-lumes (YANG, 2010a), Algoritmo dos Morcegos (YANG,
2010b) e outros.

Dentre os diversos algoritmos de inteligência de enxames, a Otimização por Colônia de


Formigas e a Otimização por Enxame de Partículas são as técnicas que mais se destacam (ABRAHAM;
DAS; ROY, 2008; BLUM; LI, 2008). Elas podem obter soluções aproximadas em um tempo compu-
tacional razoável.

2.4 OTIMIZAÇÃO POR ENXAME DE PARTÍCULAS


A maioria das aves possuem olhos dos dois lados da cabeça, o que possibilita que enxer-
guem objetos simultaneamente em ambos os lados. Em geral, elas são atraídas por fontes de ali-
mento e se agrupam com o objetivo de voar longas distâncias em busca de sua alimentação.

As aves também possuem uma interação social que viabiliza a) voos sem o risco de haver
colisões, mesmo quando há mudanças repentinas de direção, b) espalhamento e rápido reagrupa-
mento quando ameaças externas são percebidas e c) capacidade de evitar predadores (KENNEDY;
EBERHART, 1995).

32
2.4. OTIMIZAÇÃO POR ENXAME DE PARTÍCULAS

As interações entre elas refletem o movimento compartilhado do bando, como mostra a


Figura 2. Esse movimento (ou seja, a posição e a velocidade) não é realizado por um “coordenador”,
mas por meio do “princípio da proximidade”, que é baseado nessas interações.

Figura 2: Uma ave pode orientar a direção do seu voo de acordo com a posição de seus vizinhos.
Fonte: Adaptada de Avise (2011).

No contexto dos algoritmos meta-heurísticos, a Otimização por Enxame de Partículas (KEN-


NEDY; EBERHART, 1995), doravante chamada apenas de PSO, é uma abordagem estocástica, pro-
posta pelo psicólogo social James Kennedy e pelo engenheiro eletricista Russell Eberhart, para
modelar o comportamento social das aves. A PSO foi originalmente usada para resolver proble-
mas de otimização contínua não lineares. No entanto, vem sendo usada em muitas aplicações
práticas do mundo real (PéREZ et al., 2013; DHANRAJ; NANJUNDAPPAN, 2014; CHIARADONNA;
GIANDOMENICO; MURRU, 2015; DOSCIATTI; GODOY; FORONDA, 2015).

O termo “partícula” denota um indivíduo de um enxame ou, de forma análoga, uma ave
que é membro de um bando. Em outras palavras, o conjunto dessas partículas é conhecido como
“enxame”. Quando uma partícula descobre um bom caminho que a leve ao alimento, as outras
partículas também serão capazes de se deslocarem para esse novo caminho, mesmo que ele esteja
distante do resto do enxame.

Uma partícula representa uma solução para um determinado problema que está sendo
otimizado. Ela “sobrevoa” o espaço de busca à procura de uma solução ótima, durante um número
de iterações. Cada partícula i é composta de três vetores: 1) a sua posição no espaço de busca
em D dimensões x~i = (x i 1 , x i 2 , ..., x i D ), 2) a sua melhor posição encontrada até o momento p
~i =
(p i 1 , p i 2 , ..., p i D ) e 3) a sua velocidade para uma trajetória v~i = (v i 1 , v i 2 , ..., v i D ).O pseudocódigo da
PSO é apresentado no Algoritmo 1.

No início da execução do algoritmo, a posição e a velocidade de cada partícula são iniciali-

33
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

Algoritmo 1: Pseudocódigo da PSO.


1: for each partícula em S do
2: inicializa aleatoriamente velocidade e posição
3: end for
4: while critério de parada não satisfeito do
5: for each partícula i em S do
6: calcula o valor de f i t ness
7: if f i t (x i d ) < f i t (pB est i ) then
8: pB est i ← x i d
9: end if
10: if f i t (pB est i ) < f i t (g B est ) then
11: g B est ← pB est i
12: end if
13: end for
14:
15: /*Atualiza velocidade e posição das partículas*/
16: for each partícula i em S do
17: v i d = w · v i d + c 1 · r 1 (p i d − x i d ) + c 2 · r 2 (p g d − x i d )
18: xi d = xi d + v i d
19: end for
20: end while

zadas aleatoriamente (linha 2). Em seguida, o valor de fitness de cada uma delas é avaliado (linha
6) por uma função, a fim de definir os dois “melhores” valores (linhas 7–12). Eles são conhecidos
como pBest (linha 8) e gBest (linha 11).

O gBest influencia o movimento da partícula para a direção da melhor posição encontrada


pelo enxame, enquanto o pBest movimenta a partícula para a melhor posição encontrada por ela
mesma (LEITAO; LOPES; MADEIRO, 2015). Cada partícula é atraída para a localização na qual se
encontra a partícula gBest. A velocidade e a posição de cada partícula são atualizadas, respectiva-
mente, por meio das equações (2.4) e (2.5):

v i d = w · v i d + c 1 · r 1 (p i d − x i d ) + c 2 · r 2 (p g d − x i d ) (2.4)

xi d = xi d + v i d (2.5)

Na Equação (2.4), o termo w é chamado fator de inércia e representa a velocidade inercial


da partícula. Os termos v i d e x i d são, respectivamente, a velocidade e a posição da partícula i . Já
p i d e p g d são, respectivamente, a posição em que foi encontrado o melhor valor de fitness da par-
tícula i nas iterações anteriores, e a posição em que foi encontrado o melhor valor de fitness entre
todas as partículas do enxame até o momento. O termo c 1 é um coeficiente que contribui com a
autoexploração da partícula, enquanto c 2 contribui com o movimento da partícula no sentido do
deslocamento global do enxame no espaço de busca. r 1 e r 2 são valores aleatórios uniformemente
distribuídos no intervalo [0, 1], gerados a cada iteração, por meio de uma função densidade de
probabilidade, para atualizar cada dimensão individual d ∈ (1, 2, ..., D).

34
2.4. OTIMIZAÇÃO POR ENXAME DE PARTÍCULAS

Apesar da PSO ser uma técnica capaz de encontrar bons resultados em um tempo de con-
vergência rápido, ela corre o risco de convergir prematuramente. A fim de evitar a estagnação do
enxame, Bergh (2006) apresentou três métodos que podem ser usados para detectar a convergên-
cia prematura:

1. Maximum Swarm Radius – consiste em avaliar a maior distância euclidiana entre uma par-
tícula do enxame e a partícula gBest. A estagnação ocorre quando essa distância euclidiana é
inferior a um valor limite, δst ag . Esse método de avaliação é formalmente apresentado pela
Equação (2.6):
maxi ∈(1,...,s) ke i j − e i∗j k
ϕj = , (2.6)
|µmax − µmi n |
onde ke i j − e i∗j k é a norma euclidiana entre uma partícula i do enxame e a partícula g B est
na iteração j . µmax e µmi n representam as extremidades máxima e mínima de cada dimen-
são da partícula i , respectivamente.

2. Cluster Analysis – consiste em avaliar o percentual do número de partículas que fazem parte
de um cluster C . Uma partícula pertence a C se a distância entre ela e a partícula g B est
é menor que um limite mínimo, δmi n . Então, quando um percentual de partículas em C
atingir um limite máximo, δmax , assume-se que a convergência ocorreu;

3. Objective Function Slope – considera a posição das partículas no espaço de busca. Baseia-se
exclusivamente na taxa de mudança da função objetivo, e o seu valor normalizado é obtido
por meio da Equação (2.7):
f ( ŷ j ) − f ( ŷ j −1 )
f r at i o = , (2.7)
f ( ŷ j )
onde f ( ŷ j ) denota o valor de fitness da função objetivo na iteração j , e f ( ŷ j −1 ) na iteração
j − 1. Se o valor de f r at i o é inferior a um limite predefinido, um contador é incrementado.
Quando o valor do contador atinge um valor limite, δconv , é assumido que o enxame con-
vergiu.

Para Bergh (2006), o método Objective Function Slope é melhor do que os outros, porém
apresenta algumas desvantagens. Uma abordagem alternativa para a obtenção de melhores resul-
tados é uma combinação do método Objective Function Slope com o Cluster Analysis ou o Maxi-
mum Swarm Radius.

Para exemplificar o princípio de funcionamento da PSO, foi utilizada uma função de refe-
rência bastante utilizada pelos algoritmos de otimização, chamada Esfera, que será apresentada
na Seção 4.1. O funcionamento da PSO durante várias iterações é representado nas Figuras 3a, 3b,
3c e 3d. Em (a), na primeira iteração, 20 partículas são inicializadas, de forma aleatória, no espaço
de busca; em (b), na iteração de número 40, as partículas são guiadas pelas experiências social e
individual adquiridas ao longo das iterações anteriores; em (c), na iteração 80, as partículas estão
se movendo para uma posição que apresenta um melhor valor de fitness e se aproximando da so-
lução ótima; e, em (d), na iteração 120, quase todas as partículas atingiram a melhor solução do
espaço de busca. Neste experimento, o algoritmo convergiu na iteração 193.

35
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

(a) (b)

(c) (d)

Figura 3: Comportamento exploratório da PSO em busca do ótimo global.


Fonte: Autoria própria.

2.5 SERENDIPIDADE
O que há de comum entre o raio-X, o nylon e a vacina? Uma possível resposta a esse ques-
tionamento é que todos esses elementos foram descobertos por acaso, ou seja, eles ocorreram por
meio de serendipidade (CAMPOS; FIGUEIREDO, 2002). Uma frase frequentemente encontrada na
literatura relacionada a serendipidade é a de Louis Pasteur: “A sorte favorece a mente preparada”.

O termo “serendipidade”, muitas vezes, é usado como a) algo que foi achado sem, neces-
sariamente, estar procurando-se por ele (AUSTIN, 2003), b) sinônimo de “qualquer surpresa agra-
dável” (TOLSON, 2004), c) acaso ou d) sorte. Em 1754, em uma carta destinada a um amigo, o
romancista Horace Walpole cunhou o termo serendipidade. Na carta, o romancista falou de uma
descoberta fundamental que havia realizado. Segundo ele, a sua descoberta estava baseada em um
conto persa do século XVI, intitulado The Three Princes of Serendip. Naquela história, por serem
observadores e sagazes, os príncipes descobriram a solução para um determinado problema. Mas,
para isso, eles precisaram observar e combinar um conjunto de eventos fortuitos que ocorreram.

36
2.5. SERENDIPIDADE

O conceito de serendipidade tem sido estudado em diversos domínios, tais como Tele-
comunicações (EAGLE, 2004), Ciências Sociais (MERTON; BARBER, 2006), Medicina (MEYERS,
2007), Marketing (PERNA et al., 2013), Direito Penal (MENDES, 2014), Sistemas de Recomenda-
ção (OKU; HATTORI, 2011; TAHARA; OHSUGA, 2014) e outros.

Na ciência, um exemplo bastante conhecido de serendipidade é a descoberta da penici-


lina por Fleming, em 1928. Enquanto limpava seu laboratório, por acaso, Fleming percebeu que o
fungo da penicilina havia contaminado um de seus experimentos. No processo dessa descoberta,
a sagacidade surgiu porque, por muitos anos, Fleming realizou experiências com as proprieda-
des antibacterianas de substâncias comuns e, portanto, tinha um conhecimento suficiente sobre
fungos para discernir as implicações potenciais.

Há também a ideia de pseudosserendipidade que consiste na procura por algo, no entanto a


forma pela qual ele é descoberto é casual e imprevista (DEW, 2009). Por exemplo, em 1826, Charles
Goodyear testou dezenas de substâncias misturadas à borracha, inclusive o enxofre. Em uma des-
sas experiências, ele respingou uma parte da mistura entre a borracha e o enxofre na chapa quente
de um fogão e percebeu que a borracha não fundia na madeira, por isso resolveu pesquisar mais
sobre misturas com enxofre. Depois da realização de vários experimentos, a borracha vulcanizada
foi descoberta.

Em um estudo exaustivo, Andel (1994) mostrou que a serendipidade tem uma grande con-
tribuição para o progresso da ciência, da tecnologia e da arte. Na ciência e na tecnologia, as desco-
bertas casuais ocorrem com frequência (KUHN, 1970). Na história da ciência, por exemplo, exis-
tem vários casos de serendipidade: 1) a da vaselina, em 1859, pelo químico britânico Chesebrough;
2) a da sacarina, em 1878, pelo químico russo Fahlberg; 3) a do raio-X, em 1895, pelo físico alemão
Röntgen; 4) a da radioatividade, em 1896, pelo cientista francês Beckerel; 5) a do forno micro-
ondas, em 1945, pelo engenheiro americano Spencer, além de tantas outras.

Em Campos e Figueiredo (2002), o conceito de serendipidade é apresentado de uma ma-


neira formal por meio da identificação de diferentes categorias. Para isso, foram utilizadas equa-
ções lógicas, chamadas Equações de Serendipidade, para apresentar quatro eventos que podem
gerar serendipidade. Esses eventos são associados a diferentes tipos de serendipidade. São eles:
a) pseudosserendipidade; b) serendipidade real; c) serendipidade sem uma metáfora de inspira-
ção; e d) serendipidade com o conhecimento incorreto. A formalização de pseudosserendipidade
é apresentada na Equação (2.8):

P 1 ⊂ (K P 1 )
⇒ S 1 ⊂ (K P 1 , K M , K N ) (2.8)
M ⊂ (K M ),

onde P 1 é um problema criado, K P 1 é o domínio do conhecimento no qual P 1 foi criado, M é


uma metáfora inspiradora, K M é o domínio do conhecimento de M , S 1 é a solução para P 1 – no
domínio do conhecimento (K P 1 , K M , K N ) –, K N é o conhecimento adicional adquirido durante
o processo de formulação e de resolução de P 1 . Já a serendipidade real é formalizada conforme a

37
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

Equação (2.9):
P 1 ⊂ (K P 1 ) P 2 ⊂ (K P 2 )
⇒ (2.9)
M ⊂ (K M ) S 2 ⊂ (K P 2 , K M , K N ),
onde P 2 é um novo problema inspirado a partir de M, K P 2 é o domínio de conhecimento do novo
problema e S 2 é a solução para P 2 , a qual é reconhecida simultaneamente com a identificação de
P 2 . Serendipidade também pode ocorrer sem inspirar-se em uma metáfora M :

P 2 ⊂ (K P 2 )
P 1 ⊂ (K P 1 ) ⇒ (2.10)
S 2 ⊂ (K P 2 , K N ).

Por fim, a metáfora também pode ocorrer quando o conhecimento é representado de forma in-
correta. Considerando a representação do conhecimento incorreto E P 1 , tem-se que:

P 2 ⊂ (K P 2 )
P 1 ⊂ (K P 1 , E P 1 ) ⇒ (2.11)
S 2 ⊂ (K P 2 , K N ).

Lawley (2013) propôs um modelo perceptivo de serendipidade que considera seis eventos
que garantem a existência da serendipidade clássica ou da pseudosserendipidade, como ilustrado
na Figura 4. São eles: 1) uma “mente preparada”, 2) um evento não planejado e inesperado, 3) o
reconhecimento da potencialidade de um significado no futuro, 4) uma ação para ampliar a po-
tencialidade do efeito considerado no Evento 2, 5) efeitos que podem ser utilizados para amplificar
ainda mais o benefício do Evento 2 e 6) ocorrência de serendipidade.

Figura 4: Modelo Perceptivo de Serendipidade.


Fonte: Adaptada de Lawley (2013).

Ao contrário de muitas definições tradicionais que consideram serendipidade apenas como


um sinônimo de “acaso”, o termo está mais perto de uma combinação de sagacidade e de acaso
(CATELLIN, 2014). Muitas descobertas são realizadas por indivíduos que ”veem pontes onde ou-
tros veem abismos”. Nesse contexto, ver pontes consiste em fazer a combinação de eventos base-
ados em um determinado significado, ao invés de simplesmente associá-los a algo casual (ROND;
MORLEY, 2010; ROND, 2014).

38
2.6. TRABALHOS RELACIONADOS

Na definição de serendipidade, existem duas importantes dimensões que devem ser consi-
deradas (OLMA, 2016): acaso e sagacidade. A dimensão “acaso” representa um conjunto formado
por ideias e intuições que, normalmente, não são combinadas. Para alguns filósofos, essa dimen-
são é vista como relações capazes de criar um potencial, a partir do qual pode surgir algo novo.
Já a dimensão “sagacidade” é o ambiente no qual esse potencial pode ser aproveitado. Sem essa
segunda dimensão, serendipidade não pode ser viabilizada.

2.6 TRABALHOS RELACIONADOS


Diferentes abordagens surgiram com o objetivo de melhorar o desempenho da PSO e de
evitar a convergência prematura do algoritmo. Nesta seção, são apresentadas várias estratégias
encontradas na literatura que se propõem a minimizar o problema da convergência prematura.
Elas foram classificadas em duas categorias: aumento de diversidade e mecanismos para detectar
estagnação do enxame.

2.6.1 AUMENTO DE DIVERSIDADE


Riget e Vesterstrøm (2002) apresentaram o Attractive and Repulsive Particle Swarm Opti-
mization (ARPSO) que utiliza uma medida de diversidade para controlar o enxame. A variante
implementa duas fases chamadas atração e repulsão. A fase de atração é definida com base na
Equação (2.4), usada para atualizar a velocidade das partículas do enxame. Já a fase de repulsão
faz modificações no sinal da Equação (2.4) e é dada por:

v i d = w · v i d − c 1 · r 1 (p i d − x i d ) − c 2 · r 2 (p g d − x i d ) (2.12)

Na fase de repulsão, a partícula individual não é atraída. Pelo contrário, ela é repelida pela posição
da melhor partícula, p g d , e pela sua própria melhor posição, p i d . Na fase de atração, o enxame é
contraído e consequentemente a diversidade diminuída. Quando a diversidade fica abaixo de um
limite inferior, d Low , ocorre a mudança para a fase de repulsão, na qual o enxame se expande de-
vido à modificação na Equação (2.4). Finalmente, quando a diversidade atinge um limite superior,
d Hi g h , o enxame retorna ao estágio de atração, conforme Equação (2.13):

−1, se d i r > 0 ∧ d i v enxame < d Low
dir = (2.13)
1, se d i r < 0 ∧ d i v enxame > d Hi g h ,

onde d i r é usado para definir o sinal-variável (-1 ou 1), e a diversidade do enxame, d i v enxame , é
calculada de acordo com a Equação (2.14):
v
uN
|S| u X
1 X
t (p i j − p̄ j )2 ,
d i v enxame = · (2.14)
|S| · |L| i =1 j =1

onde S é o enxame, |S| é o tamanho do enxame, |L| é o comprimento da maior diagonal no espaço
de busca, N é a dimensionalidade do problema, p i j é o j − ési mo valor da i − ési ma partícula

39
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

e p̄ j o j − ési mo valor do ponto médio p̄. Finalmente, a Equação (2.4) é alterada por meio do
sinal-variável d i r que define se as partículas sofrerão atração ou repulsão:
£ ¤
v i d = w · v i d + d i r c 1 · r 1 (p i d − x i d ) + c 2 · r 2 (p g d − x i d ) . (2.15)

A variante Guaranteed Convergence Particle Swarm Optimization (GCPSO) foi proposta por
Bergh e Engelbrecht (2002) para abordar a questão da convergência prematura em soluções cujos
extremos locais não são garantidos. Para a partícula gBest, GCPSO modifica a equação de veloci-
dade da PSO, apresentada na Equação (2.4), como segue:

v i d = w · v i d − x i d + p i d + ρ(t ) · r j , (2.16)

onde r j é uma sequência de números aleatórios uniformes, gerados no intervalo (-1, 1), e ρ(t ) é
um fator de escala determinado pela Equação (2.17):

2ρ(t ), se #sucessos > s c





ρ(t + 1) = 0.5ρ(t ), se # f al has > f c (2.17)


ρ(t ),

senão ,

onde os termos #sucessos e # f al has denotam, respectivamente, o número consecutivo de suces-


sos e de falhas. Uma falha é registrada quando f i t ness(p gt d ) = f i t ness(p gt −1
d
), ou seja, não houve
mudança no valor de fitness da melhor partícula desde a iteração anterior até a atual. Um valor
padrão inicial é definido para o fator de escala e é dado por ρ(0) = 1. Os parâmetros s c e f c são
definidos a partir de valores atribuídos a limites predefinidos.

Em Higashi e Iba (2003) é proposta a combinação da PSO com os conceitos de Algoritmos


Evolucionários. O método combina a Mutação Gaussiana com as regras utilizadas para calcular a
velocidade e atualizar a posição das partículas. A técnica é empregada de acordo com a Equação
(2.18):
mut (x) = x · (1 + g aussi ana(σ)), (2.18)

onde σ corresponde a 10% do comprimento do espaço de busca em uma dimensão, e x é um


valor numérico que cada um dos objetos possui. Os indivíduos são selecionados de acordo com
uma probabilidade predeterminada, e suas posições são determinadas sob a probabilidade da
distribuição gaussiana.

Uma variante baseada na teoria quântica, chamada Quantum-Behaved Particle Swarm


Optimization (QPSO), foi proposta por Sun, Feng e Xu (2004) com base na Teoria Quântica (TQ).
Na QPSO, cada partícula se move no espaço de busca com um potencial δ em cada uma das di-
mensões, cujo centro está no ponto p i j . Para simplificar, considera-se uma partícula em um es-
paço unidimensional, com o ponto p no centro potencial. Resolvendo a equação de Schrödinger
de um potencial δ unidimensional, obtém-se a função densidade de probabilidade Q e a função
de distribuição F , conforme as equações (2.19) e (2.20):
¯ ¯
¯p i j (t )−X i j (t +1)¯
¯ ¯
1 −2 L i j (t )
Q(X i j (t + 1)) = e , (2.19)
L i j (t )

40
2.6. TRABALHOS RELACIONADOS

¯ ¯
¯p i j (t )−X i j (t +1)¯
¯ ¯
−2 L i j (t )
F (X i j (t + 1)) = e , (2.20)

onde L i j (t ) é o desvio padrão da distribuição, que determina o escopo da busca de cada partícula.
Aplicando o método Monte Carlo na Equação (2.21), obtém-se a posição da partícula, usando:

L i j (t )
µ ¶
1
X i j (t + 1) = p i j (t ) ± ·ln , (2.21)
2 u

onde u é um número uniformemente distribuído no intervalo [0, 1]. Para avaliar L i j (t ), foi intro-
duzido na PSO um ponto global chamado de “posição da melhor média da população”. O ponto
global, denotado como m, é definido como a média das melhores posições de todas as partículas,
conforme a equação abaixo:
à !
1 XM 1 XM 1 XM
m(t ) = (m 1 (t ), m 2 (t ), ..., m n (t )) = P i ,1 (t ), P i ,2 (t ), ..., P i ,n (t ) , (2.22)
M i =1 M i =1 M i =1

onde M é o tamanho da população, e P i é a posição pB est da partícula i . Os valores de L i j (t ) são


determinados pela equação abaixo:
¯ ¯
L i j (t ) = 2β · ¯m j (t ) − X i j (t )¯ , (2.23)

onde β é chamado coeficiente de contração-expansão e pode ser usado para controlar a veloci-
dade de convergência do algoritmo. Finalmente, a posição das partículas pode ser calculada pela
Equação (2.24): µ ¶
1
X i j (t + 1) = p i j (t ) ± β · m j (t ) − X i j (t ) · l n
¯ ¯
¯ ¯ . (2.24)
u

O método Opposition-based Particle Swarm Optimization (OPSO) (WANG et al., 2007) foi
proposto para acelerar a convergência da PSO e evitar a convergência prematura. OPSO emprega
Aprendizagem Baseada em Oposição, em inglês Opposition-Based Learning (OBL), combinada
com a mutação dinâmica de Cauchy na partícula gBest. O método é calculado conforme Equa-
ção (2.25):
p p
OP i j = a j + b j − P i j , (2.25)

onde P i j é o j − ési mo vetor de posição da i − ési ma partícula da população, OP i j é a posição


p p
oposta de P i j , a j e b j são, respectivamente, os valores mínimo e máximo da dimensão j − ési ma
na população corrente. O operador de mutação de Cauchy, usado em OPSO, é descrito na Equação
(2.26):
N
P
Vi j
i =1
Wi = , (2.26)
N
onde Vi j é o i −ési mo vetor de velocidade da j −ési ma partícula da população, N é o tamanho da
população, e Wi é o vetor de pesos no intervalo [−Wmax , Wmax ]. A mutação de Cauchy é aplicada
na partícula g B est por meio da Equação (2.27):

g B est = g B est + Wi · D(l i m mi n , l i m max ), (2.27)

41
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

onde D é a função de distribuição de Cauchy, cujo parâmetro de escala é definido com valor igual
a 1. (l i m mi n , l i m max ) é um valor aleatório definido na faixa [l i m mi n , l i m max ], o qual é definido
dentro dos limites do espaço de busca.

Uma versão melhorada da QPSO foi apresentada e chamada de Weighted Quantum-Behaved


Particle Swarm Optimization (WQPSO). O método proposto por Xi, Sun e Xu (2008) utiliza média
ponderada da posição da partícula gBest, de acordo com os valores de fitness das partículas. A
melhoria foi aplicada na Equação (2.22). Formalmente, as partículas são ordenadas decrescente-
mente pelo seu valor de fitness. Em seguida, a cada partícula, é atribuído um coeficiente ponde-
rado αi , linearmente decrescente de acordo com a classificação da partícula, ou seja, quanto mais
próximo da melhor solução, maior será o seu coeficiente de ponderação. Portanto, a posição da
melhor média m é calculada pela Equação (2.28):
à !
1 XM 1 XM 1 XM
m(t ) = (m 1 (t ), m 2 (t ), ..., m n (t )) = αi ,1 P i ,1 (t ), αi ,2 P i ,2 (t ), ..., αi ,n P i ,n (t ) , (2.28)
M i =1 M i =1 M i =1

onde αi ,d é o coeficiente de ponderação da dimensão de cada partícula.

Ling et al. (2008) propuseram uma variante chamada Hybrid Particle Swarm Optimization
With Wavelet Mutation (HPSOWM), que combina operadores de mutação com a Teoria Wavelet.
Na HPSOWM, cada elemento da partícula tem uma chance de sofrer mutação, a qual é controlada
por uma probabilidade predefinida p m ∈ [0, 1]. Para cada elemento, é gerado um valor aleatório
no intervalo [0, 1] e, quando esse número é menor ou igual a p m , o elemento da partícula sofre
p p p
a mutação. Portanto, dada uma p − ési ma partícula selecionada x p (t ) = [x 1 (t ), x 2 (t ), ..., x k (t )] e o
p p
seu elemento x j (t ) é sorteado para mutação (o valor de x j (t ) está no intervalo [l i m mi n , l i m max ]),
p p p
a partícula resultante é representada por x p (t ) = [x 1 (t ), x 2 (t ), ..., x k (t )], ou seja,

x p (t ) + σ × (l i m j p
se σ > 0
p j max − x j (t )),
x j (t ) = , (2.29)
x p (t ) + σ × (x p (t ) − l i m j ), se σ ≤ 0
j j mi n

onde l i m mi n e l i m max são, respectivamente, os limites mínimo e máximo do espaço de busca,


j ∈ (1, 2, ..., k), k denota a dimensão da partícula e, σ é dado por

σ = ψa,0 (ϕ), (2.30)

onde ψa,0 (ϕ) é uma versão em escala de amplitude de ψ(ϕ), enquanto ψ(ϕ) é a própria wavelet.

Hybrid PSO with Genetic Mutation (HPSOM), proposta por Esmin e Matwin (2013), é uma
variante que adiciona o processo de mutação na PSO. Em HPSOM, as partículas possuem uma
probabilidade de sofrer mutação a cada iteração. O processo de mutação é empregado usando a
Equação (2.31):
mut (p k ) = −p k + β, (2.31)

onde p k é a partícula sorteada do enxame, o parâmetro β é obtido aleatoriamente dentro do in-


tervalo [0, 0.1 ×(l i m mi n , l i m max )], l i m mi n e l i m max são, respectivamente, os limites mínimo e
máximo do espaço de busca.

42
2.6. TRABALHOS RELACIONADOS

Adaptive Particle Swarm Optimization (APSO) é uma variante que atualiza os parâmetros
da PSO baseada em regras fuzzy (ZHAN et al., 2009). De um modo geral, APSO: a) estima e clas-
sifica o estado de diversidade, b) determina os coeficientes de aceleração com base no estado de
diversidade, c) aplica mecanismo de diversidade e d) adapta o peso de inércia. O mecanismo de
geração de diversidade é implementado usando um operador de mutação gaussiana. O estado de
diversidade do algoritmo pode ser avaliado por meio do fator f d , conforme Equação (2.32):

d g − d mi n
fd = ∈ [0, 1], (2.32)
d max − d mi n

onde d g é a distância entre a melhor partícula do enxame e as outras, d mi n e d max são, respecti-
vamente, a menor e a maior distância média entre todas as partículas. A distância média, d i , da
i − ési ma partícula pode ser avaliada usando a Equação (2.33):
v
N
uD
1 X uX
t (x k − x k ),
di = i j
(2.33)
N − 1 j =1, j 6=i k=1

onde N é o número das partículas, e D o número de dimensões das partículas. O fator de inércia
w é atualizado usando a Equação (2.34), a fim de autoaajustar a capacidade de busca do enxame:

1
w( f ) = ∈ [0.4, 0.9], ∀ f ∈ [0, 1]. (2.34)
1 + 1.5e −2.6 f d

Silva, Neves e Gonçalves (2013) propuseram uma variante chamada Scouting Predator-Prey
Optimizer (SPPO), que utiliza a ideia de partículas predadoras e escoteiras. O papel da partícula
predadora é adicionar um fator de perturbação no enxame e garantir que a perturbação aumen-
tará ao passo que o enxame convirja para um determinado ponto. Para isso, foi introduzida uma
perturbação à velocidade das partículas na dimensão j , conforme Equação (2.35):

v i j = v i j + φ1 |l i m max , l i m mi n | , se φ2 < r · e −|xi j −x p j | , (2.35)

onde φ1 e φ2 são valores aleatórios uniformemente distribuídos nos intervalos [-1, 1] e [0, 1], res-
pectivamente. l i m mi n e l i m max são, respectivamente, os limites mínimo e máximo do espaço de
busca, e r é a probabilidade de perturbação predefinida. Já às partículas escoteiras, são aplicadas
regras de atualização diferentes das partículas do enxame. O algoritmo usou três partículas esco-
teiras. Para implementar o comportamento da primeira, a melhor partícula do enxame é escolhida
em uma determinada iteração e é aplicada uma mutação aleatória sobre uma das suas dimensões
j , usando a Equação (2.36):

p˜g j = p g j + n(0, σ), se f i t (p˜g ) < f i t (p g ) (2.36)

onde n(0, σ) é um número aleatório, gerado a partir de uma distribuição normal com média 0 e
desvio padrão σ, σ é iniciado em l i m max /10 e é atualizado durante a execução usando a regra
1/5, usada em estratégias de evolução (BEYER; SCHWEFEL, 2002). A implementação do compor-
tamento da segunda partícula escoteira utiliza Aprendizagem Baseada em Oposição e consiste na

43
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

escolha da pior partícula, p w . O cálculo da posição da sua partícula oposta, p˜w , é dada pela Equa-
ção (2.37):
˜ j = a tj + b tj − p w j , se f i t (p˜w ) < f i t (p w ),
pw (2.37)

onde a tj e b tj são, respectivamente, os valores máximo e mínimo para p i j na iteração t . Uma ter-
ceira partícula escoteira também é adicionada, porém o seu papel é definido para cada problema.

Vitorino, Ribeiro e Bastos-Filho (2015) propuseram o Adaptive Bee and Particle Swarm Op-
timization (ABeePSO), que consiste na combinação dos algoritmos Artificial Bee Colony (ABC) e
Adaptive Particle Swarm Optimization (APSO). O algoritmo ABC só é executado quando o enxame
atinge o estado de diversidade de convergência. Neste caso, uma metade do enxame com o me-
lhor valor de fitness se torna abelhas-guia e as demais tornam-se abelhas guiadas. A i − ési ma
abelha-guia é otimizada de acordo com a Equação (2.38):

~
" #
B
~
vi = ~
x i +~ ri ~
s ·~ xi − , (2.38)
~ −~
Di st (B xi )

onde o vetor ~ r i representa números aleatórios, gerados por uma distribuição uniforme no inter-
valo [0, 1], e Di st é a distância Euclidiana entre a posição atual ~ ~ , que representa o
x i e o vetor B
baricentro das abelhas-guia e é definido na Equação (2.39):

NP
/2
x~i · f i t (i )
~=
B
i =1
, (2.39)
NP
/2
f i t (i )
i =1

onde N é o tamanho do enxame,~


s é um vetor que define o passo de dispersão do enxame, avaliado
de acordo com a equação abaixo:
µ · ¸¶
1
~
s = 1− (l i m max − l i m mi n ), (2.40)
1 + e −α( f d +β)

onde α e β são os parâmetros da função sigmoide, e f d o fator de diversidade, apresentado na


Equação (2.32). Quando o valor de fitness é alterado, o valor da dispersão é atualizado de acordo
com a Equação (2.41). Se a nova posição é melhor do que a posição atual, o valor do passo é dimi-
nuído; caso contrário, ele é incrementado:

~ s ± f d~
s =~ s. (2.41)

Cada abelha guiada procura uma nova solução nas proximidades da fonte de alimento, usando a
seguinte equação:
−→
~
vi = ~
x i +~ ~ ),
ri ( f si − B (2.42)

onde ~ r i é um vetor de números aleatórios, gerados por uma distribuição uniforme no intervalo [0,


1] e, f s i é a fonte de alimento selecionada pela abelha guiada.

44
2.6. TRABALHOS RELACIONADOS

2.6.2 DETECÇÃO DE ESTAGNAÇÃO


Multi-Start Particle Swarm Optimization (MPSO) é uma variante proposta em uma tese
de doutorado (BERGH, 2006) que, ao detectar a estagnação do enxame, reinicia-o. Ela pode ser
usada para estender a variante GCPSO (BERGH; ENGELBRECHT, 2002), a fim de torná-la um al-
goritmo de busca global. No entanto, a convergência da GCPSO deve ser detectada e, para isso, os
métodos apresentados na Seção 2.4 podem ser usados. Os métodos são: Maximum Swarm Radius
(ver Equação 2.6), Cluster Analysis e Objective Function Slope (ver Equação 2.7). A reinicialização
implementada na MPSO consiste em realizar uma nova busca com uma sequência diferente de
números aleatórios, de modo que cada busca seja independente das que foram realizadas ante-
riormente. Depois que um número predefinido de reinicializações for atingido, a melhor solução
de todas as encontradas é proposta como a solução mais desejável.

Tabu Search Particle Swarm Optimization (TPSO) é uma variante proposta por Wang, Zhao
e Ren (2007), que incorpora as estratégias de busca tabu à PSO, a fim de aumentar a diversidade
da população e reduzir as atrações repetidas para os mínimos locais. Na TPSO, quando a partícula
gBest não é alterada durante um certo número de iterações, o algoritmo assume que a estagnação
ocorreu. Então, cada dimensão do vetor de posição da partícula i é reinicializada até que a partí-
cula não esteja dentro da área tabu. A reinicialização é implementada por meio da Equação (2.43):

x i d = x i d + η · r, (2.43)

onde η denota o comprimento do salto das partículas para fora da região tabu, cujo valor deve ser
superior ao raio da sua vizinhança, δ. O termo r é um número aleatório, uniformemente distri-
buído no intervalo [-1, 1]. Embora a variante tenha apresentado bons resultados quando avaliada
em algumas funções de referência, o seu desempenho é sensível ao tamanho da vizinhança δ.

Evers e Ghalia (2009) propuseram um mecanismo automático para reagrupamento do en-


xame, chamado Regrouping Particle Swarm Optimization (RegPSO), que é disparado quando a
convergência prematura é detectada. O método Maximum Swarm Radius é usado para avaliar o
processo de convergência do enxame. O reagrupamento é disparado quando as partículas estão
muito próximas umas das outras, e o raio normalizado do enxame, δnor m , satisfaz a seguinte con-
dição de convergência prematura, conforme Equação (2.44):

δ(k)
δnor m = < ², (2.44)
d i am(Ω)

onde k denota uma determinada iteração, d i am(Ω) é o diâmetro do espaço de busca inicial e, ²
representa um limite de estagnação predefinido. Quando a convergência prematura é detectada,
o enxame é reagrupado em um espaço de busca cujo centro é a partícula gBest. A abordagem per-
mite que o enxame se reagrupe em uma região pequena que evita pesquisas redundantes e des-
necessárias, porém grande o suficiente para escapar de ótimos locais. O fator de reagrupamento é
calculado conforme Equação (2.45):
6
ρ= . (2.45)

45
CAPÍTULO 2. FUNDAMENTAÇÃO TEÓRICA

Após a convergência prematura ter sido detectada, a Equação (2.46) é usada para calcular a faixa
onde as partículas devem ser reagrupadas:
µ ° °¶
r 0 ° r −1 r −1 °
f ai xa j (Ω ) = max f ai xa j (Ω ), ρ · max °x i j − g j ° , (2.46)
i ∈(1,...,s)

onde f ai xa(Ω0 ) representa a faixa do espaço de busca inicial, na dimensão j . x ir j−1 é a posição da
partícula i na última iteração antes do reagrupamento, e g rj −1 é a melhor partícula do enxame na
última iteração antes do reagrupamento. O enxame é então reagrupado usando a Equação (2.47):
1
xi = ~
~ g r −1 +~r · f ai xa(Ωr ) − f ai xa(Ωr ), (2.47)
2
onde f ai xa(Ωr ) = f ai xa 1 (Ωr ), f ai xa 2 (Ωr ), ..., f ai xa n (Ωr ) , e ~
£ ¤
r é um vetor para geração de par-
tículas aleatórias dentro do espaço de busca que foi definido implicitamente. Por fim, o espaço de
busca reagrupado é dado pela Equação (2.48):
h i h i
Ωr = x 1L,r , xU ,r L,r U ,r
× ... × x nL,r , xU ,r
£ ¤
1 × x 2 , x 2 n , (2.48)

com os seus respectivos limites inferior e superior, respectivamente:


1
x L,r
j
= g rj −1 − f ai xa j (Ωr ), (2.49)
2

1
xU
j
,r
= g rj −1 + f ai xa j (Ωr ). (2.50)
2

2.6.3 COMPARAÇÃO DOS TRABALHOS


A Tabela 1 mostra uma breve comparação entre os trabalhos que foram apresentados nas
duas últimas subseções. A tabela é composta pelo nome dos autores e o ano de publicação do
trabalho. Além disso, ela contém o nome da variante proposta, a abordagem usada por ela e as
dimensões da serendipidade que foram implementadas.

Observa-se que a maioria dos trabalhos apresentados se caracteriza pelo uso de mecanis-
mos que se propõem a gerar diversidade durante o processo de otimização do algoritmo. Também
observa-se que, em quase todos eles, apenas uma das duas dimensões foi considerada na imple-
mentação da variante proposta.

Fica claro que a maioria das propostas apresentadas anteriormente implementou apenas
a dimensão acaso. Por outro lado, a dimensão sagacidade foi implementada apenas em duas vari-
antes: ARPSO e RegPSO. Na primeira, com base na equação usada para atualizar a velocidade das
partículas, uma medida para controlar a diversidade do enxame é utilizada. Já a RegPSO, quando
a estagnação é detectada, o enxame é reagrupado nas proximidades da partícula gBest.

2.7 RESUMO
Neste capítulo, foram apresentados os principais conceitos utilizados ao longo deste tra-
balho, tais como: Processo de Otimização, Meta-heurística, Inteligência de Enxames, Otimização

46
2.7. RESUMO

Tabela 1: Implementação das dimensões de serendipidade nas variantes estudadas.

Dim.

Sagacidade
Acaso
Autor Variante Abordagem

Riget e Vesterstrøm (2002) ARPSO Atração/repulsão do enxame •


Peer, Bergh e Engelbrecht (2003) GCPSO Mudança na vel. de gBest •
Higashi e Iba (2003) PSOGM Mutação Gaussiana •
Sun, Feng e Xu (2004) QPSO Teoria Quântica (TQ) •
Wang et al. (2007) OPSO OBL e Mutação de Cauchy •
Xi, Sun e Xu (2008) WQPSO TQ com ponderação •
Ling et al. (2008) HPSOWM Wavelet e Oper. de mutação •
Esmin e Matwin (2013) HPSOM Mutação Genética •
Zhan et al. (2009) APSO Fuzzy e Mutação Gaussiana •
Silva, Neves e Gonçalves (2013) SPPO OBL e Estratégias Evoluc. •
Vitorino, Ribeiro e Bastos-Filho (2015) ABeePSO Combinação APSO e ABC •
Bergh (2006) MPSO Reinicialização do enxame •
Wang, Zhao e Ren (2007) TPSO Reinicialização do enxame •
Evers e Ghalia (2009) RegPSO Reagrupamento do enxame •

Fonte: Autoria própria.

por Enxame de Partículas, Serendipidade e alguns trabalhos encontrados na literatura que pro-
puseram estratégias para lidar com a convergência prematura. Ao fim, uma breve comparação
entre esses trabalhos foi apresentada. No próximo capítulo, é proposta a adaptação do conceito
de serendipidade no contexto da inteligência de enxames, bem como uma variante baseada no
conceito de serendipidade.

47
CAPÍTULO
3
S ERENDIPIDADE NO C ONTEXTO DA
I NTELIGÊNCIA DE E NXAMES

A proposta da tese é apresentada neste capítulo. No entanto, antes de apresentar a con-


tribuição do trabalho, na Seção 3.1, é descrito um breve histórico da pesquisa, a qual se iniciou a
partir de estudos na área de sistemas de recomendação e, posteriormente, evoluiu para a adap-
tação de serendipidade no contexto da inteligência de enxames. Na Seção 3.2, a formalização do
conceito de serendipidade é apresentada para o novo contexto. Na Seção 3.3, é proposta uma nova
variante baseada em serendipidade, que possui a capacidade de equilibrar as buscas local e global
no processo de otimização em um espaço de busca explorado.

3.1 BREVE HISTÓRICO DA PESQUISA


A percepção de que o conceito de serendipidade poderia ser usado, no contexto da in-
teligência de enxames, como uma estratégia para tratar o problema da convergência prematura
emergiu após pesquisas realizadas na área de sistemas de recomendação.

Esta pesquisa se iniciou propondo um modelo baseado em ontologias para representar o


comportamento de usuários em ambientes web. No entanto, observou-se que o estudo de me-
canismos para lidar com problemas clássicos da área de sistemas de recomendação, tais como
cold-start e superespecialização, poderia gerar resultados mais promissores.

Nesse sentido, foi realizado um levantamento bibliográfico dos sistemas de recomenda-


ção que utilizam ontologias como uma alternativa para oferecer melhores sugestões aos usuários.
Como resultado da pesquisa, foi proposta uma arquitetura hierárquica para unificar as funcionali-
dades dos sistemas de recomendação baseados em ontologia. A arquitetura proposta foi apresen-
tada por Paiva, Costa e Silva (2013). Posteriormente, ela foi adaptada, e um protótipo de um sis-
tema de recomendação para anunciar vendas de veículos foi implementado em Paiva et al. (2013)
CAPÍTULO 3. SERENDIPIDADE NO CONTEXTO DA INTELIGÊNCIA DE ENXAMES

e Paiva, Costa e Silva (2014).

A fim de melhorar os resultados do protótipo, no que diz respeito à satisfação do usuário


em relação aos itens recomendados, a pesquisa evoluiu na direção de adicionar novas caracterís-
ticas que tornassem as recomendações cada vez mais úteis. Portanto, no artigo de Malak (2014),
intitulado 17 Qualities of the Ideal Recommender System, foi observado que serendipidade poderia
ser usada para melhorar os resultados de um sistema de recomendação. Além disso, observou-se
também que essa nova tendência dos sistemas de recomendação poderia ser útil para resolver a
superespecialização (LOPS; GEMMIS; SEMERARO, 2011).

Ainda em relação ao desenvolvimento desta pesquisa, percebeu-se que há uma similari-


dade entre superespecialização e convergência prematura. Como serendipidade pode ser usada
na tentativa de evitar superespecialização, novos estudos foram realizados, a fim de investigar a
potencialidade do conceito de serendipidade no contexto da inteligência de enxames. Como re-
sultado dessa investigação, até o momento da impressão deste texto, 02 trabalhos foram publi-
cados em periódicos internacionais, e um terceiro trabalho publicado em um evento nacional,
respectivamente: a) Paiva, Costa e Silva (2016a), b) Paiva, Costa e Silva (2016b) e c) Paiva, Costa e
Silva (2015).

3.2 FORMALIZAÇÃO E ADAPTAÇÃO DE SERENDIPIDADE


No capítulo anterior, serendipidade foi apresentada como uma capacidade de realizar des-
cobertas afortunadas por acaso e de forma sagaz. Nesta tese, o termo “acaso” deve ser entendido
como uma possibilidade de algo acontecer, enquanto “sagacidade”denota a qualidade de perce-
ber um determinado evento ou algo relacionado a ele.

O conceito de serendipidade é interessante e útil porque ele é o principal indicativo para


definir onde a serendipidade pode ser aplicada em um algoritmo de inteligência de enxames, além
de qual tipo de sagacidade deve ser usado para melhorar o comportamento desse algoritmo por
meio de decisões inspiradas em serendipidade.

No contexto dos algoritmos de inteligência de enxames, em um determinado espaço de


busca S, diz-se que os elementos que representam as possíveis soluções de S pertencem ao con-
junto P . O conjunto E , por sua vez, é formado por elementos que representam as soluções en-
contradas no processo de busca das possíveis soluções do espaço S, durante uma determinada
iteração. Portanto, E é um subconjunto próprio de P , E ⊆ P .

Diz-se que e i j é um elemento que representa uma solução i , encontrada na iteração j ,


pertencente ao conjunto E . A solução i , cujo valor da função objetivo é o melhor encontrado na
iteração j , é representada pelo elemento e i∗j ∈ E . Então, na iteração j , quando um elemento de P
não pertence ao conjunto E , o elemento é considerado uma solução ocasional. Portanto, o con-
junto que possui os elementos usados para representar as soluções ocasionais na iteração j é dado
pelo complementar do conjunto E em relação a P , isto é, os elementos que P possui a mais que E :

50
3.3. SBPSO: UMA VARIANTE PSO BASEADA EM SERENDIPIDADE

AC ASO = {EP = P − E . (3.1)

Um outro conjunto a ser considerado na formalização de serendipidade é o SRD. Ele é


formado por elementos chamados serendípetos e é dado pela seguinte equação:

SRD = AC ASO ∩ S AG AZ , (3.2)

onde S AG AZ é um subconjunto próprio de AC ASO, S AG AZ ⊆ AC ASO, formado por elemen-


tos sag az i j encontrados de forma sagaz. A sagacidade consiste na descoberta de soluções cujos
valores de fitness são melhores que o fitness do elemento e i∗j , conforme Equação (3.3):

S AG AZ = {sag az i j | f i t (sag az i j ) < f i t (e i∗j )}. (3.3)

Após a formalização do conceito de serendipidade e a fim de implementá-lo no contexto


da inteligência de enxames, escolheu-se o algoritmo PSO para desenvolvimento de uma nova va-
riante. O que justifica a escolha desse algoritmo são as características que o tornaram um dos mais
populares na área de otimização, como apresentado na Seção 1.1.

Há três abordagens que podem ser usadas para implementar o conceito de serendipidade.
Na PSO, a primeira delas é baseada em modificações nos pontos de decisões, de acordo com as
linhas 2, 8, 11, 17 e 18 do Algoritmo 1. A segunda é baseada na inclusão de um método comple-
mentar para implementar um algoritmo baseado em serendipidade. A terceira abordagem é uma
combinação das outras duas. Todas elas consideram as “descobertas afortunadas” como pontos
no espaço de busca, que são úteis para um processo de otimização, uma vez que eles possuem
valores da função objetivo melhores do que a melhor solução encontrada até a iteração atual.

Uma vez que a terceira abordagem atende às duas dimensões fundamentais do conceito
de serendipidade, apresentadas na Seção 2.5 e conhecidas como acaso e sagacidade, esta tese
adota uma variante dessa abordagem, propondo uma estratégia — usada em Paiva, Costa e Silva
(2016b) para gerar serendipidade — que combina duas estratégias usadas no domínio de sistemas
de recomendação (TOMS, 2000): blind luck e Princípio de Pasteur.

A estratégia blind luck é implementada por meio do uso de partículas escoteiras. Elas im-
plementam a dimensão acaso e complementam a exploração do espaço de busca, gerando diver-
sidade adicional. O Princípio de Pasteur é usado para reconhecer potenciais e usar percepções
para aproveitar o momento. Esse princípio combina partículas escoteiras com a detecção de com-
portamentos, a fim de inspecionar regiões no espaço de busca inexploradas pelo enxame. Essa
estratégia é a implementação do conceito de sagacidade ou, em outras palavras, o conceito de
“mente preparada”.

3.3 SBPSO: UMA VARIANTE PSO BASEADA EM SERENDIPIDADE


Para validar a adaptação do conceito de serendipidade no contexto da inteligência de en-
xames e, posteriomente, avaliar os resultados encontrados, nesta tese, é proposta e implementada

51
CAPÍTULO 3. SERENDIPIDADE NO CONTEXTO DA INTELIGÊNCIA DE ENXAMES

uma nova variante chamada Serendipity-Based Particle Swarm Optimization (SBPSO), na qual as
estratégias blind luck e Princípio de Pasteur são usadas.

A nova variante utiliza partículas adicionais cujo comportamento difere do comportamento


típico do enxame. Essas partículas são conhecidas como partículas escoteiras, cujo papel é o de
gerar diversidade adicional para o algoritmo, a fim de aumentar a sua capacidade de exploração.
No entanto, é importante assegurar que a inclusão de partículas escoteiras não comprometerá
o comportamento habitual do enxame. Na variante SBPSO, isso é transparente porque elas são
usadas para identificar as soluções que apresentam valores da função objetivo melhores que o da
partícula gBest.

A velocidade de uma partícula escoteira k, Vkd , é dada pela Equação (3.4). Essa equação é
uma adaptação da que foi apresentada por Wu et al. (2013) na implementação da variante Discrete
Particle Swarm Optimization (DPSO):

Vkd = w · Vkd + c 3 · r 3 (X kd − x best ), (3.4)

onde c 3 é o coeficiente de geração de diversidade, e r 3 é um valor aleatório uniformemente dis-


tribuído no intervalo [0, 1], gerado a cada iteração, por meio de uma função densidade de proba-
bilidade. Os termos w, X kd e x best são, respectivamente, o fator de inércia, a posição da partícula
escoteira k e a posição da melhor partícula do enxame até o momento. A posição de uma partícula
escoteira k é dada pela Equação (3.5):

X kd = −x best + Vkd , (3.5)

onde x best é a posição da melhor partícula do enxame até o momento.

Os passos iniciais da SBPSO, mostrados no Algoritmo 2, são similares aos da PSO. A ve-
locidade e a posição de cada partícula do enxame e de cada partícula escoteira são inicializadas
aleatoriamente (linhas 1 e 2). A seguir, para cada partícula do enxame, o valor de fitness é calculado
para encontrar a melhor partícula (linhas 4 – 10). Isso também ocorre para as partículas escotei-
ras (linhas 11 – 17). Depois que a melhor partícula do enxame e a melhor partícula escoteira são
encontradas, a melhor delas se tornará a nova partícula gBest (linhas 19 – 25).

O próximo passo é iniciar o processo de inspeção nas proximidades da partícula gBest (li-
nhas 27 – 29). Para isso, o algoritmo cria aleatoriamente um Ponto Adjacente (AP ), de acordo com
a Equação (3.6):
AP = best + α · R, (3.6)

onde best é a partícula gBest atual, α é uma constante real positiva, R é um vetor com n elementos
aleatórios distribuídos uniformemente no intervalo [-1, 1], e n é a dimensão de best .

Então, para o AP que foi criado, o algoritmo define um vetor d~ que representa o segmento
orientado best AP , de acordo com a Equação (3.7):

d~ = AP − best , (3.7)

onde best e AP foram apresentados na Equação (3.6).

52
3.3. SBPSO: UMA VARIANTE PSO BASEADA EM SERENDIPIDADE

Algoritmo 2: Pseudocódigo da variante SBPSO usando partículas escoteiras.


1: inicializa velocidade e posição do enxame
2: inicializa velocidade e posição das partículas escoteiras
3: while critério de parada não satisfeito do
4: for each partícula i em S do
5: calcula valor de f i t ness
6: if f i t (x i d ) < f i t (pB est i ) then
7: pB est i ← x i d
8: end if
9: end for
10: best enxame ← i d ent i f i c aMel hor P ar t i cul aEnxame()
11: for each escoteira k em S do
12: calcula valor de f i t ness
13: if f i t (escot ei r a kd ) < f i t (pB est k ) then
14: pB est k ← escot ei r a kd
15: end if
16: end for
17: best escot ei r a ← i d ent i f i c aMel hor P ar t i cul aE scot ei r a()
18:
19: if f i t (best enxame ) < f i t (best escot ei r a ) e f i t (best enxame ) < f i t (g B est ) then
20: g B est ← best enxame
21: else
22: if f i t (best escot ei r a ) < f i t (best enxame ) e f i t (best escot ei r a ) < f i t (g B est ) then
23: g B est ← best escot ei r a
24: end if
25: end if
26:
27: cria Ponto Adjacente a gBest usando Equação (3.6)
28: define um vetor direção d~ usando Equação (3.7)
29: cria dois pontos de inspeção usando Equação (3.8)
30: executa ações definidas na Tabela 2
31:
32: for each partícula i em S do
33: v i d = w · v i d + c 1 · r 1 (p i d − x i d ) + c 2 · r 2 (p g d − x i d )
34: xi d = xi d + v i d
35: end for
36: for each escoteira k em S do
37: Vkd = w · Vkd + c 3 · r 3 (X kd − x best )
38: X kd = −x best + Vkd
39: end for
40:
41: if (enxame estagnou) e (enxame convergiu) then
42: seleciona a pior partícula do enxame e torna-a uma partícula escoteira
43: end if
44: end while

53
CAPÍTULO 3. SERENDIPIDADE NO CONTEXTO DA INTELIGÊNCIA DE ENXAMES

Uma vez que best e AP definem um vetor simples d~, que representa uma direção, então
existem infinitos Pontos de Inspeção (I P ) cuja direção best I P é a mesma de best AP . Para o AP
criado, dois I P podem ser escolhidos, de acordo com a Equação (3.8):

I P = best ± λ · d~, (3.8)

onde λ é uma constante real não-nula.

Depois de definir os dois I P , um conjunto de regras é avaliado (linha 30). A implementação


dessas regras tem o objetivo de tratar os padrões de comportamento para definir pontos de inspe-
ção nas proximidades da partícula gBest atual. Essas novas soluções podem ser obtidas a partir da
geração de I P ou Novos Pontos (N P ), de acordo com as regras apresentadas na Tabela 2.

Mais uma vez, os passos da SBPSO são similares aos da PSO. A velocidade das partículas do
enxame é calculada, e a posição é atualizada (linhas 32 – 35). Isso também ocorre para as partículas
escoteiras (linhas 36 – 39).

Finalmente, o algoritmo avalia a situação do enxame em relação à estagnação e à conver-


gência prematura (linhas 41 – 43). Quando a condição abaixo é satisfeita, a SBPSO seleciona a
partícula que apresenta o pior valor de fitness e a torna uma partícula escoteira:

(ϕ j < δst ag ) ∧ (cont ≥ δconv ), (3.9)

onde ϕ j é o raio do enxame na iteração j , e δst ag é um valor limite que avalia a estagnação do
enxame, de acordo com a Equação (2.6). O número de iterações nas quais o enxame não apresenta
melhorias significativas é denotado por cont , e δconv é o valor limite que indica a convergência do
enxame, conforme a descrição da Equação (2.7).

Uma outra alternativa para apresentar o algoritmo SBPSO é usando um diagrama da Uni-
fied Modeling Language (UML), bastante conhecido e chamado Diagrama de Atividades. Em sua
forma básica, ele ilustra o que ocorre em um fluxo de trabalho, as atividades que podem ser reali-
zadas em paralelo e a existência de caminhos alternativos no fluxo de execução. A Figura 5 repre-
senta o algoritmo SBPSO.

De acordo com o Princípio de Pasteur, “a sorte favorece a mente preparada”. Neste trabalho,
uma “mente preparada” é implementada usando um conjunto de padrões de comportamento, os
quais são considerados para a dimensão sagacidade. Eles podem ser usados para representar o
comportamento do valor de fitness ao longo dos pontos em uma reta, que passam pela partícula
gBest (dentro do domínio da função objetivo), durante uma iteração j . Eles consideram várias
possibilidades em matrizes como, por exemplo, uma matriz M × 3.

Para mostrar um exemplo simplificado, um conjunto de padrões de comportamento é re-


presentado por meio de matrizes de ordem 3. A fim de implementar a dimensão sagacidade, são
usados 13 padrões que representam o comportamento dos valores de fitness da função objetivo.
A Figura 6 mostra cada um dos padrões, considerando os valores de fitness relacionados a três
pontos que passam sobre uma reta a qual liga g B est a AP . Os três pontos são I P 1 , g B est e I P 2 .

54
Tabela 2: Conjunto de regras para tratar padrões de comportamento na definição de Pontos de Inspeção próximos à partícula gBest.

Regra Condição Ação


Ger a : N P 1 = I P 1 − λ2 · d~
f i t (I P 1 ) < f i t (I P 2 )∧ (
01 N P 1 , se f i t (N P 1 ) < f i t (I P 1 )
f i t (I P 2 ) < f i t (g B est ) g B est =
I P 1 , senão
Ger a : N P 2 = I P 2 + λ2 · d~
f i t (I P 2 ) < f i t (I P 1 )∧ (
02 N P 2 , se f i t (N P 2 ) < f i t (I P 2 )
f i t (I P 1 ) < f i t (g B est ) g B est =
I P2, senão
 Ger a : N P 1 = I P 1 − λ2 · d~ , N P 2 = I P 2 + λ2 · d~
f i t (I P 1 ) == f i t (I P 2 )∧ 

N P 1 , se f i t (N P 1 ) < f i t (N P 2 ) ∧ f i t (N P 1 ) < f i t (I P 1 )
03
f i t (I P 1 ) < f i t (g B est ) g B est = N P2, se f i t (N P 2 ) < f i t (N P 1 ) ∧ f i t (N P 2 ) < f i t (I P 2 )

55


sor t ei a(N P , N P ), senão
1 2
f i t (I P 1 ) < f i t (g B est )∧
04 Idem Regra 01
f i t (g B est ) ≤ f i t (I P 2 )
f i t (I P 2 ) < f i t (g B est )∧
05 Idem Regra 02
f i t (g B est ) ≤ f i t (I P 1 )
f i t (I P 1 ) == f i t (I P 2 )∧
06 Partícula g B est permanece inalterada
f i t (I P 2 ) == f i t (g B est )
f i t (g B est ) ≤ f i t (I P 1 )∧
07 Partícula g B est permanece inalterada
f i t (I P 1 ) ≤ f i t (I P 2 )
f i t (g B est ) ≤ f i t (I P 2 )∧
08 Partícula g B est permanece inalterada
f i t (I P 2 ) < f i t (I P 1 )

Fonte: Autoria própria.


3.3. SBPSO: UMA VARIANTE PSO BASEADA EM SERENDIPIDADE
CAPÍTULO 3. SERENDIPIDADE NO CONTEXTO DA INTELIGÊNCIA DE ENXAMES

Figura 5: Diagrama de atividades do algoritmo SBPSO.


Fonte: Autoria própria.

Cada padrão, representado pelas matrizes da Figura 6, corresponde a um comportamento


identificado após a definição dos dois pontos de inspeção. Os elementos que estão em destaque na
matriz (hachurado e quadriculado) representam o valor de fitness calculado para I P 1 , g B est e I P 2 .
O(s) elemento(s) hachurado(s) corresponde(m) ao(s) menor(es) valor(es) de fitness calculado(s).
No Padrão 1, por exemplo, os valores de fitness de I P 1 e de I P 2 são iguais, porém menores que o
do g B est . No Padrão 2, é observado que o valor de fitness do I P 2 é menor que os valores de fitness
de I P 1 e de g B est . Já no Padrão 3, o valor de fitness do I P 1 é o menor entre os três pontos. Um
outro comportamento é representado pelo Padrão 8, considerando a situação em que, embora
tenham sido definidos pontos de inspeção, o valor de fitness do g B est permanece sendo o menor.
Os outros padrões representam as situações que não foram exemplificadas aqui.

Quando o algoritmo identifica um dos 13 padrões predefinidos, um conjunto de regras é


consultado, a fim de determinar qual ação deve ser executada. A Figura 7 ilustra a situação em que
o Padrão 1 foi identificado. Quando o conjunto de regras é consultado (ver Tabela 2), o Padrão 1
pode ser representado pela Regra 3:

f i t (I P 1 ) == f i t (I P 2 ) ∧ f i t (I P 1 ) < f i t (g B est ).

Nessa situação, como os valores de fitness de I P 1 e de I P 2 são iguais, dois novos pontos são defi-
nidos: N P 1 e N P 2 . A definição de N P 1 é dada a partir de I P 1 e N P 2 a partir de I P 2 . Os dois novos
pontos são definidos por meio da Equação (3.10):
λ ~
NP = IP ± · d, (3.10)
2

56
3.3. SBPSO: UMA VARIANTE PSO BASEADA EM SERENDIPIDADE

Figura 6: Padrões de comportamento usados para implementar a dimensão sagacidade.


Fonte: Adaptada de Paiva, Costa e Silva (2016b).

onde d~, λ e I P foram definidos anteriormente nas Equações (3.7) e (3.8).

ss(IP2)
Fitne
est)
ss(gB
) Fitne
ss(IP1
Fitne

Corresp
onde
Consulta

P
Adjonto
ace P
(AP nte In onto d
) speç e
*
ã
(IP o 1 gBe
1) Iter st na ório
açã P aleat st
o j In onto de Cortesição gBe
speç p o
ã na
(IP ) o 2
2

o
Executa Açã

Conjunto de
Regras

Figura 7: Exemplo de identificação do Padrão 1.


Fonte: Adaptada de Paiva, Costa e Silva (2016b).

57
CAPÍTULO 3. SERENDIPIDADE NO CONTEXTO DA INTELIGÊNCIA DE ENXAMES

A definição de N P 1 e de N P 2 possibilita a inspeção de regiões mais promissoras que a do


gBest. No exemplo do Padrão 1, essas regiões são representadas por I P 1 e I P 2 . Após a definição
dos dois novos pontos, os seus respectivos valores de fitness são avaliados. Em seguida, os dois
novos valores de fitness são comparados e, caso as condições para escolha do novo g B est (coluna
“Ação”, na Tabela 2) não sejam atendidas, o algoritmo sorteia um dos dois pontos, e o sorteado será
definido como o novo g B est .

Embora o exemplo ilustrado na Figura 7 esteja no espaço 3D, isso também ocorre em várias
dimensões, uma vez que qualquer espaço pode conter um “corte” implementado por uma reta
no domínio da função objetivo. A direção da reta é estocástica, uma vez que ela liga o gBest ao
ponto aleatório AP . Em cada iteração, a direção da reta é alterada. Durante todas as iterações,
a direção da reta apresenta uma percepção razoável do comportamento do valor de fitness da
função objetivo, mesmo em um espaço com várias dimensões.

3.4 RESUMO
Neste capítulo, um breve histórico do que foi realizado durante esta pesquisa foi descrito.
Também foram apresentadas a formalização do conceito de serendipidade e a proposta de uma
variante baseada na implementação desse novo conceito. No próximo capítulo, serão apresen-
tados os resultados dos experimentos computacionais encontrados pela PSO, pela SBPSO e por
outras variantes da literatura.

58
CAPÍTULO
4
E XPERIMENTOS C OMPUTACIONAIS

Este capítulo está dividido em três seções e nele são apresentados os resultados obtidos
nos experimentos computacionais. Na Seção 4.1, são apresentadas as funções de referência usadas
nos experimentos e, na Seção 4.2, as configurações dos parâmetros utilizados. Por fim, na Seção
4.3, SBPSO é comparada com a PSO padrão e com algumas variantes da literatura.

4.1 FUNÇÕES DE REFERÊNCIA


É comum o emprego de funções de referência com o pressuposto de que a dificuldade
delas corresponde às dificuldades encontradas em aplicações do mundo real. Por conta disso, elas
são usadas para validar e comparar a performance de algoritmos de otimização. Para Dieterich
e Hartke (2012), qualquer abordagem para otimização global deve ser validada com um conjunto
de funções de referência. No entanto, para que os novos algoritmos de otimização sejam avaliados
imparcialmente, é importante que essas funções possuam diversas propriedades, tais como:

• continuidade – uma função f é contínua em x = a, se e somente se:

lim f (x) = f (a)


x→a

• diferenciabilidade – se x 0 é um ponto no domínio de uma função f , então f é diferenciável


em x 0 se existe a derivada f 0 (x 0 ).

• separabilidade – é uma medida que pode ser usada para considerar a dificuldade de uma
função. A condição geral de separabilidade é dada por:
∂ f (x̄)
= g (x̄ i )h(x̄),
∂x i
onde g (x̄ i ) significa qualquer função apenas do x i , e h(x̄) significa qualquer função de qual-
quer x̄.
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

• escalabilidade – uma função é considerada escalável quando ela possui a capacidade de


poder ser expandida.

• modalidade – uma função pode ser unimodal ou multimodal. Uma função unimodal pos-
sui apenas um vale (quando o processo de otimização é aplicado em um problema de mi-
nimização) ou um pico (quando o problema é de maximização). As funções multimodais
possuem mais de um vale (ou pico).

Para realização dos experimentos desta tese, 16 funções de referência, que são frequente-
mente aplicadas em problemas de minimização, foram escolhidas. Elas podem ser utilizadas para
investigar a estagnação e a convergência dos algoritmos de otimização (BERGH, 2006). Elas vêm
sendo aplicadas em vários estudos de inteligência de enxames como, por exemplo, em Xi, Sun e
Xu (2008), Krishnanand e Ghose (2009), Yang (2010b), Aydın et al. (2011), Sun et al. (2012), Arora
e Singh (2013), Li et al. (2014), Vitorino, Ribeiro e Bastos-Filho (2015), Paiva, Costa e Silva (2016b)
e outros. As funções usadas nos experimentos são descritas abaixo, e as figuras 8 – 23 apresentam
os mapas 3D correspondentes a cada uma delas:

1. Função Esfera – é caracterizada por ser simples, convexa e unimodal:


d
x i2
X
f 1 (x) =
i =1

2. Função Rosenbrock – posssui o mínimo global em um vale parabólico. Embora seja fácil
encontrá-lo, a convergência é difícil (PICHENY; WAGNER; GINSBOURGER, 2013):
dX
−1
f 2 (x) = [100(x i +1 − x i2 )2 + (x i − 1)2 ]
i =1

3. Função Griewank – há vários mínimos locais regularmente distribuídos:

1 X d xi
µ ¶
2
Y
f 3 (x) = x i − cos p + 1
400 i =1 i

4. Função Rastrigin – é uma função altamente multimodal, no entanto as localizações dos vá-
rios mínimos locais são regularmente distribuídos:
d
[x i2 − 10cos(2πx i ) + 10]
X
f 4 (x) =
i =1

5. Função Ackley – há vários mínimos locais, e a função se caracteriza por ter uma região ex-
terna quase plana e um grande orifício no centro:
à r d ! à !
1X 2 1X d
f 6 (x) = −20 exp −0.2 x − exp cos(2πx i ) + 20 + exp(1)
d i =1 i d i =1

6. Função Noisy Quartic – é uma função unimodal simples e preenchida com um ruído gaussi-
ano:
d
i x i4 + r and (0, 1)
X
f 6 (x) =
i =1

60
4.1. FUNÇÕES DE REFERÊNCIA

7. Função Zakharov – é uma função unimodal simples, que possui uma forma de placa:
à !2 à !4
d d d
x i2 +
X X X
f 7 (x) = 0.5i x i + 0.5i x i
i =1 i =1 i =1

8. Função Hiper Elipsoide Rotacionada – é uma função unimodal e convexa, cuja solução ótima
se encontra em uma região do espaço bastante restrita. Ela é uma extensão da função Soma
dos Quadrados:

i
d X
x 2j
X
f 8 (x) =
i =1 j =1

9. Função Alpine – é uma função multimodal com apenas um ótimo global. Em relação à ori-
gem, a superfície do espaço de busca não é completamente simétrica:

d
X
f 9 (x) = |x i sen(x i ) + 0.1x i |
i =1

10. Função Weierstrass – é uma função contínua em todos os lugares, porém em nenhum deles
é diferenciável:
à !
d kmax kmax
[αk cos(2πβk (x i + 0.5))]) − d [αk cos(2παk · 0.5)],
X X X
f 10 (x) =
i =1 k=0 k=0

onde α = 0.5, β = 3 e kmax = 20.

11. Função Salomon – é uma função não separável e altamente multimodal. A sua superfície se
assemelha a uma lagoa com várias ondulações:
v  v
d d
u u
uX uX
f 11 (x) = 1 − cos 2π
 t x + 0.1t x 2
2
i i
i =1 i =1

12. Função Csendes – é uma função multimodal definida como segue:

d · µ ¶¸
1
x i6
X
f 12 (x) = 2 + sen
i =1 xi

13. Função Xin-She Yang 01 – é uma função estocástica genérica multimodal e é dada de acordo
com a formulação abaixo:

d
r and (0, 1) · |x i |i
X
f 13 (x) =
i =1

14. Função Soma dos Quadrados – essa função não possui mínimo local, exceto o global. É con-
tínua, convexa e unimodal:
d
i x i2
X
f 14 (x) =
i =1

61
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

15. Função Schumer Steiglitz – é uma função que não possui mínimos locais, apenas o mínimo
global:

d
x i4
X
f 15 (x) =
i =1

16. Função Powell Sum – é uma função unimodal definida conforme formulação abaixo:

d
|x i |i +1
X
f 16 (x) =
i =1

Para cada uma das funções apresentadas, a Tabela 3 mostra as fronteiras do espaço de
busca, as faixas de inicialização, o valor que representa o ótimo global e a solução ótima. Além
disso, também são apresentadas as suas características no que diz respeito às propriedades de
continuidade (CON), diferenciabilidade (DIF), separabilidade (SEP), escalabilidade (ESC) e mo-
dalidade (MOD).

Alguns algoritmos podem apresentar um desempenho superior quando o ótimo global do


problema a ser resolvido está dentro ou próximo do centro da área em que o enxame é inicializado
(MONSON; SEPPI, 2005). Para evitar esse tipo de situação, um método bastante utilizado, inclusive
nesta tese, é inicializar a população dentro de um subespaço que não contenha o ótimo global
(GEHLHAAR; FOGEL, 1996). A adoção desse método força o enxame a expandir sua pesquisa além
dos limites iniciais e elimina a sua capacidade de convergir imediatamente a um único ponto sem
explorar todo o espaço, a fim de encontrar o ótimo global do problema.

62
Tabela 3: Características das funções de referência avaliadas.

Espaço de Faixa de Ótimo Solução


Função CON DIF SEP ESC MOD
Busca Inicialização Global Ótima
f1 −100 ≤ x i ≤ 100 50 ≤ x i ≤ 100 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • • Unimodal

f2 −30 ≤ x i ≤ 30 15 ≤ x i ≤ 30 f (x ∗ ) = 0 x ∗ = (1, ..., 1) • • • Unimodal

f3 −600 ≤ x i ≤ 600 300 ≤ x i ≤ 600 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • Multimodal

f4 −5.12 ≤ x i ≤ 5.12 2.56 ≤ x i ≤ 5.12 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • Multimodal

f5 −32.76 ≤ x i ≤ 32.76 16.38 ≤ x i ≤ 32.76 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • Multimodal

f6 −1.28 ≤ x i ≤ 1.28 0.64 ≤ x i ≤ 1.28 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • Multimodal

f7 −5 ≤ x i ≤ 10 5 ≤ x i ≤ 10 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • Multimodal

f8 Unimodal

63
−65.53 ≤ x i ≤ −65.53 32.76 ≤ x i ≤ 65.53 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • •

f9 −10 ≤ x i ≤ 10 5 ≤ x i ≤ 10 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • Multimodal

f 10 −5 ≤ x i ≤ 5 2.5 ≤ x i ≤ 5 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • • Multimodal

f 11 −100 ≤ x i ≤ 100 50 ≤ x i ≤ 100 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • Multimodal

f 12 −1 ≤ x i ≤ 1 0.5 ≤ x i ≤ 1 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • • Multimodal

f 13 −5 ≤ x i ≤ 5 2.5 ≤ x i ≤ 5 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • Multimodal

f 14 −5.12 ≤ x i ≤ 5.12 2.56 ≤ x i ≤ 5.12 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • • Unimodal

f 15 −100 ≤ x i ≤ 100 50 ≤ x i ≤ 100 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • • Unimodal

f 16 −500 ≤ x i ≤ 500 250 ≤ x i ≤ 500 f (x ∗ ) = 0 x ∗ = (0, ..., 0) • • • • Unimodal

Fonte: Autoria própria.


4.1. FUNÇÕES DE REFERÊNCIA
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 8: Plotagem da Função Esfera ( f 1 ).


Fonte: Autoria própria.

Figura 9: Plotagem da Função Rosenbrock ( f 2 ).


Fonte: Autoria própria.

64
4.1. FUNÇÕES DE REFERÊNCIA

Figura 10: Plotagem da Função Griewank ( f 3 ).


Fonte: Autoria própria.

Figura 11: Plotagem da Função Rastrigin ( f 4 ).


Fonte: Autoria própria.

65
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 12: Plotagem da Função Ackley ( f 5 ).


Fonte: Autoria própria.

Figura 13: Plotagem da Função Noisy Quartic ( f 6 ).


Fonte: Autoria própria.

66
4.1. FUNÇÕES DE REFERÊNCIA

Figura 14: Plotagem da Função Zakharov ( f 7 ).


Fonte: Autoria própria.

Figura 15: Plotagem da Função Hiper Elipsoide Rotacionada ( f 8 ).


Fonte: Autoria própria.

67
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 16: Plotagem da Função Alpine ( f 9 ).


Fonte: Autoria própria.

Figura 17: Plotagem da Função Weierstrass ( f 10 ).


Fonte: Autoria própria.

68
4.1. FUNÇÕES DE REFERÊNCIA

Figura 18: Plotagem da Função Salomon ( f 11 ).


Fonte: Autoria própria.

Figura 19: Plotagem da Função Csendes ( f 12 ).


Fonte: Autoria própria.

69
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 20: Plotagem da Função Xin-She Yang 01 ( f 13 ).


Fonte: Autoria própria.

Figura 21: Plotagem da Função Soma dos Quadrados ( f 14 ).


Fonte: Autoria própria.

70
4.1. FUNÇÕES DE REFERÊNCIA

Figura 22: Plotagem da Função Schumer Steiglitz ( f 15 ).


Fonte: Autoria própria.

Figura 23: Plotagem da Função Powell Sum ( f 16 ).


Fonte: Autoria própria.

71
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

4.2 CONFIGURAÇÃO DOS PARÂMETROS


Segundo Wang et al. (2007), os valores associados aos parâmetros w, c 1 e c 2 , definidos na
Equação (2.4), podem variar a performance da PSO e de suas variantes. Para realizar uma com-
paração adequada, todos os parâmetros comuns à PSO e às suas variantes foram definidos com
o mesmo valor: a) c 1 = c 2 = 2,0; b) o peso de inércia, w, que decai linearmente iniciando em 0,9
e finalizando em 0,4 e; c) a velocidade máxima, Vmax , de cada partícula é definida como sendo a
metade do tamanho do espaço de busca em uma dimensão (ZHANG; XIE, 2003).

Existem outros parâmetros que são específicos da SBPSO e os valores atribuídos a eles são
apresentados a seguir. Os parâmetros estão relacionados à a) quantidade e velocidade das partí-
culas escoteiras, b) criação de pontos adjacentes e de inspeção, próximos à partícula gBest, e c)
detecção de estagnação do enxame. Todos eles foram escolhidos empiricamente depois de várias
simulações que apresentaram bons resultados, os quais estão relacionados à qualidade e à estabi-
lidade das soluções encontradas após a avaliação de todas as funções de referência utilizadas nos
experimentos.

O parâmetro que define o número de partículas escoteiras corresponde a 10% do número


total de partículas do enxame. Outros parâmetros também foram apresentados nas equações (3.4),
(3.6) e (3.8). Respectivamente, esses parâmetros foram definidos da seguinte maneira: c 3 = 1,6, α
correspondendo a 1% do tamanho do espaço de busca em uma dimensão e λ = 10−4 . Quando
valores inferiores a 10−4 foram atribuídos a λ, melhorias significativas não foram encontradas no
valor da melhor média. Além disso, o tempo médio de execução do algoritmo foi comprometido.

Para detectar a convergência prematura, dois valores limites foram usados: δst ag e δconv . O
δst ag foi definido em 10−3 e, o δconv corresponde a 5% do número total de iterações. O valor limite
δconv foi usado para definir o número de iterações cujo valor de fitness da partícula gBest não foi
melhorado significativamente.

4.3 RESULTADOS EXPERIMENTAIS


A performance do algoritmo proposto é avaliada por meio de dois conjuntos de experi-
mentos que, aqui, foram chamados de Experimentação 1 e Experimentação 2. Para cada um deles,
os resultados obtidos são discutidos separadamente.

No primeiro conjunto de experimentos, são usadas 4 funções de referência para comparar


a SBPSO, com a PSO e a PSO-Scout. Em seguida, SBPSO é comparada com quatro variantes da PSO,
disponíveis na literatura. Já no segundo conjunto de experimentos, outras 12 funções de referência
são utilizadas para comparar SBPSO, PSO e PSO-Scout.

PSO-Scout é uma variante que foi implementada nesta tese. Ela se caracteriza por utili-
zar um conjunto de partículas especiais chamadas escoteiras. Elas são usadas como mecanismos
para melhorar a performance da PSO e também como uma abordagem simples para incorporar
conhecimentos específicos para resolver problemas. O comportamento dessas partículas pode

72
4.3. RESULTADOS EXPERIMENTAIS

ser controlado usando as Equações (3.4) e (3.5), apresentadas no Capítulo 3. Como dito na seção
anterior, o número de partículas escoteiras usado nesta variante equivale a 10% do total das par-
tículas do enxame. Após a realização de vários experimentos, observou-se que a PSO-Scout, em
algumas situações, pode melhorar a performance da PSO usando o comportamento exploratório
das partículas escoteiras.

O Teste de Wilcoxon (Signed Rank Test), com nível de significância de 0,05, é utilizado para
verificar se os resultados obtidos da comparação entre PSO, PSO-Scout e SBPSO são estatistica-
mente diferentes. A hipótese nula, H0 , indica que duas amostras vêm da mesma população, ao
passo que a hipótese alternativa, H1 , indica que uma população tem valores maiores que a outra.
Quando p-value é inferior ao nível de significância, então decide-se rejeitar H0 , ou seja, há uma
diferença significativa entre as amostras.

Todas as rotinas utilizadas nos experimentos computacionais foram implementadas na


linguagem de programação MATLAB (Matrix Laboratory). Os experimentos foram executados em
um computador que utiliza processador Intel Core i7 com 2,4 GHz de frequência, 8 Gb de memó-
ria RAM e sistema operacional Windows 10 Home Single Language, 64 bits. Não foram utilizadas
técnicas de multiprocessamento para a realização dos experimentos.

4.3.1 EXPERIMENTAÇÃO 1
Para investigar a escalabilidade da variante SBPSO, neste conjunto de experimentos, qua-
tro funções de referência são usadas: Esfera ( f 1 ), Rosenbrock ( f 2 ), Griewank ( f 3 ) e Rastrigin ( f 4 ).
Para cada uma delas, são definidas 9 configurações que consistem em variar o tamanho do en-
xame, a dimensionalidade do problema e o número máximo de iterações.

O tamanho do enxame é definido com 20, 40 e 80 partículas. Já a dimensionalidade do


problema é definida em 10, 20 e 30 dimensões. Por último, a variação do número máximo de ava-
liações da função objetivo é definida em 1.000, 1.500 e 2.000 iterações. Após os experimentos, a
melhor média do valor de fitness e o desvio padrão obtidos são registrados.

As Figuras 24 – 27 mostram o processo de convergência médio dos algoritmos, medido em


100 execuções independentes. O processo ocorre no espaço de busca das funções Esfera, Rosen-
brock, Griewank e Rastrigin. As figuras foram geradas com a configuração definida em 20 partícu-
las, 30 dimensões e 2.000 iterações.

As Tabelas 4 e 5 mostram o tamanho da população, a dimensionalidade da função, o nú-


mero de iterações, a melhor média do valor de fitness e o desvio padrão para essas funções. Já a
Tabela 6 apresenta os p-values obtidos pelo Teste de Wilcoxon quando a SBPSO é comparada com
a PSO e com a PSO-Scout. O teste é usado para verificar se os resultados produzidos pela SBPSO
são, estatisticamente, significativos quando comparados com os da PSO e os da PSO-Scout.

Os resultados obtidos pela SBPSO e pela PSO-Scout também são comparados com algumas
variantes disponíveis na literatura: QPSO (SUN; FENG; XU, 2004), WQPSO (XI; SUN; XU, 2008), HP-
SOWM (LING et al., 2008) e HPSOM (ESMIN; MATWIN, 2013). A comparação considera as funções

73
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 24: Processo de convergência médio na Função f 1 , com 20 partículas, em 30D.


Fonte: Autoria própria.

Figura 25: Processo de convergência médio na Função f 2 , com 20 partículas, em 30D.


Fonte: Autoria própria.

74
4.3. RESULTADOS EXPERIMENTAIS

Figura 26: Processo de convergência médio na Função f 3 , com 20 partículas, em 30D.


Fonte: Autoria própria.

Figura 27: Processo de convergência médio na Função f 4 , com 20 partículas, em 30D.


Fonte: Autoria própria.

75
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Esfera, Rosenbrock, Griewank e Rastrigin, durante 100 execuções dos algoritmos.

Para comparar os resultados, são variados as dimensões (10, 20 e 30) e o número máximo
de iterações (1.000, 1.500 e 2.000). Apenas o tamanho da população é fixado em 20 partículas. Após
a realização desse conjunto de experimentos, a média dos valores de fitness e o desvio padrão
obtidos são registrados na Tabela 7.

76
Tabela 4: Comparação entre a PSO, PSO-Scout e SBPSO nas funções f 1 e f 2 .

Esfera ( f 1 ) Rosenbrock ( f 2 )
Partícula Dim Iter
PSO PSO-Scout SBPSO PSO PSO-Scout SBPSO
1.2368E-020 1.0056E-022 1.3900E-081 58.3417 40.6746 9.5785E-08
10 1000
(3.1403E-020) (5.5127E-022) (1.2772E-080) (133.7896) (103.9401) (5.7832E-07)
2.9396E-011 3.4132E-018 3.1139E-124 104.9516 99.4901 2.9085E-07
20 20 1500
(1.8370E-010) (1.9818E-017) (2.6196E-123) (162.9876) (186.9198) (8.6492E-06)
4.6804E-008 5.0619E-021 2.9522E-156 151.5238 104.9869 2.0347E-05
30 2000
(1.3386E-007) (5.0275E-020) (2.9520E-155) (239.0893) (151.4036) (7.6421E-04)
2.2365E-024 1.3691E-027 3.1786E-084 30.80349 15.6310 3.7120E-08
10 1000
(1.3369E-023) (1.0608E-026) (3.1719E-083) (114.8610) (38.1135) (8.8402E-07)

77
8.1334E-015 2.9916E-028 2.2798E-119 81.5949 48.1244 6.8410E-07
40 20 1500
(2.5881E-014) (2.9840E-027) (1.9630E-118) (141.4203) (60.5719) (6.0376E-06)
8.0544E-011 5.4840E-034 5.5811E-129 132.6704 112.7430 3.7810E-05
30 2000
(1.3452E-010) (2.4924E-033) (2.3349E-128) (204.0919) (13.9928) (1.9304E-04)
1.5394E-028 1.5496E-030 9.7470E-081 20.5744 13.9724 4.8522E-08
10 1000
(4.8125E-028) (1.0748E-029) (9.7469E-080) (43.8337) (34.8846) (4.3964E-07)
5.1700E-018 2.3584E-026 5.6513E-120 65.7612 52.7690 6.9654E-07
80 20 1500
(1.4221E-017) (1.9487E-025) (5.6513E-119) (105.0775) (92.4566) (3.0942E-06)
1.4817E-013 2.2470E-031 1.1080E-162 86.87974 69.8944 3.8413E-05
30 2000
(2.9377E-013) (2.2468E-030) (1.1113E-161) (123.5531) (92.4215) (7.7475E-04)

Fonte: Autoria própria.


4.3. RESULTADOS EXPERIMENTAIS
Tabela 5: Comparação entre a PSO, PSO-Scout e SBPSO nas funções f 3 e f 4 .

Griewank ( f 3 ) Rastrigin ( f 4 )
Partícula Dim Iter
PSO PSO-Scout SBPSO PSO PSO-Scout SBPSO
0.1012 0.0216 0 4.5782 0.9514 0
10 1000
(0.0516) (0.0456) (0) (2.1132) (0.6391) (0)
0.0334 4.2475E-04 0 22.8061 0.0475 0
20 20 1500
(0.0336) (5.1756E-03) (0) (10.0912) (0.3913) (0)
0.0146 2.4458E-04 0 49.7192 0.0253 0
30 2000
(0.0171) (1.4592E-03) (0) (13.7956) (0.1905) (0)
0.0845 0.0192 0 3.9224 0.2854 0
10 1000
(0.0438) (0.0396) (0) (1.5118) (0.4404) (0)

78
0.0276 7.9024E-04 0 16.1082 8.7266E-04 0
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

40 20 1500
(0.0291) (3.7688E-03) (0) (1.5722) (8.7266E-03) (0)
0.0592 1.7253E-04 0 38.6344 9.5142E-04 0
30 2000
(0.1690) (1.2263E-03) (0) (2.2039) (9.5142E-03) (0)
0.0772 0.0188 0 2.2854 0.1141 0
10 1000
(0.0396) (0.0339) (0) (0.4780) (0.3123) (0)
0.0357 3.7898E-04 0 12.3630 3.5527E-04 0
80 20 1500
(0.0325) (1.4178E-03) (0) (2.2804) (6.6714E-03 (0)
0.0127 1.0129E-04 0 31.5714 7.6115E-04 0
30 2000
(0.0133) (9.8582E-03) (0) (6.2924) (3.2228E-03) (0)

Fonte: Autoria própria.


Tabela 6: Resultados do Teste de Wilcoxon nas funções f 1 , f 2 , f 3 e f 4 .

p-Value (PSO × SBPSO) p-Value (PSO-Scout × SBPSO)


Part Dim Iter
f1 f2 f3 f4 f1 f2 f3 f4

10 1000 1.5777E-30 1.1453E-21 1.5777E-30 1.4551E-10 1.5777E-30 1.6713E-17 1.0444E-17 3.6379E-06

20 20 1500 1.5777E-30 3.9312E-20 1.5777E-30 1.5777E-30 1.5777E-30 1.0622E-07 5.6843E-15 3.3881E-21

30 2000 1.5777E-30 9.3528E-18 1.5777E-30 1.5777E-30 1.5777E-30 5.8320E-15 7.4505E-13 2.5849E-23

79
10 1000 1.5777E-30 2.3377E-19 1.5777E-30 1.9073E-12 1.5777E-30 5.8344E-15 5.2939E-23 6.1035E-06

40 20 1500 1.5777E-30 9.2688E-17 6.3108E-30 6.7762E-21 1.5777E-30 9.5982E-14 5.8207E-11 9.5367E-07

30 2000 1.5777E-30 1.5949E-16 1.5777E-30 1.5777E-30 1.5777E-30 3.2755E-17 1.4901E-08 2.2204E-16

10 1000 1.5777E-30 1.1296E-19 1.5777E-30 4.8828E-10 1.5777E-30 4.4341E-16 6.6174E-24 3.1250E-06

80 20 1500 1.5777E-30 6.5128E-18 4.0389E-28 1.7763E-12 1.5777E-30 1.6376E-15 7.4505E-09 1.4210E-06

30 2000 1.5777E-30 7.3438E-22 1.5777E-30 1.5777E-30 1.5777E-30 1.3199E-17 1.9073E-06 2.7755E-17

Fonte: Autoria própria.


4.3. RESULTADOS EXPERIMENTAIS
Tabela 7: Comparação entre diferentes variantes da PSO com 20 partículas, em 30D.

Fun Dim Iter PSO HPSOWM WQPSO QPSO HPSOM PSO-Scout SBPSO
1.2368E-20 6.2868E-56 2.2922E-56 1.3909E-41 2.2400E-56 1.0056E-22 1.3900E-81
10 1000
(3.1403E-20) (1.506E-55) (1.7300E-58) (1.4049E-043) (1.7300E-58) (5.5127E-22) (1.2772E-80)
2.9396E-11 6.2830E-45 2.9451E-40 3.5103E-022 2.1449E-49 3.4132E-18 3.1139E-124
f1 20 1500
(1.8370E-10) (2.0330E-44) (2.8717E042) (3.5452E-24) (1.6891E-43) (1.9818E-17) (2.6196E-123)
4.6804E-08 3.7940E-36 3.9664E-33 5.3183E-014 6.5764E-034 5.0619E-21 2.9522E-156
30 2000
(1.3386E-07) (1.4060E-35) (3.8435E-35) (5.3623E-16) (5.6809E-36) (5.0275E-20) (2.9520E-155)
58.3417 36.4736 35.8436 51.9761 6.9688 40.6746 9.5785E-08
10 1000
(133.7896) (0.1844) (0.2843) (0.4737) (0.2730) (103.9401) (5.7832E-07)
104.9516 65.6678 62.7696 136.8782 17.3033 99.4901 2.9085E-07
f2 20 1500
(162.9876) (0.5870) (0.4860) (0.6417) (0.2210) (186.9198) (8.6492E-06)
151.5238 70.7275 70.9525 157.4707 27.5645 104.9869 2.0347E-05
30 2000
(239.0893) (0.4813) (0.4283) (0.8287) (0.2939) (151.4036) (7.6421E-04)

80
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

0.1012 0.13333 5.6353E-04 5.5093E-04 4.32057E-11 5.0968E-02 0


10 1000
(0.0516) (0.33993) (5.5093E-04) (0.0657) (3.1216E-11) (6.5753E-02) (0)
0.0334 2.9333 2.1318E-04 1.0402E-04 4.00370E-11 2.2766E-02 0
f3 20 1500
(0.0336) (2.7439) (1.0402E-04) (0.0211) (3.13852E-11) (2.1534E-02) (0)
0.0146 9.2333 2.1286E-04 1.2425E-04 5.1756E-11 1.0973E-02 0
30 2000
(0.0171) (6.1455) (1.2425E-04) (0.0110) (3.0143E-11) (1.4329E-02) (0)
4.5782 4.6100 4.0567 4.8274 4.1558E-11 1.1796 0
10 1000
(2.1132) (2.5364) (0.0094) (0.0015) (3.2202E-11) (0.9522) (0)
22.8061 19.6670 12.1102 16.0519 4.1403E-11 6.2384 0
f4 20 1500
(10.0912) (6.7661) (0.0287) (0.0414) (3.2402E-11) (2.8271) (0)
49.7192 44.7230 23.5593 33.7218 4.8007E-11 11.9819 0
30 2000
(13.7956) (13.9680) (0.0713) (0.0114) (3.1883E-11) (4.7205) (0)

Fonte: Autoria própria.


4.3. RESULTADOS EXPERIMENTAIS

4.3.1.1 AVALIAÇÃO DOS RESULTADOS

As Figuras 24 – 27 representam os processos de convergência médios da PSO, PSO-Scout


e SBPSO, que foram medidos em um enxame com 20 partículas, em 30 dimensões, durante 2.000
iterações, após 100 execuções independentes. Em todas as simulações, ficou evidente a superio-
ridade da velocidade de convergência da SBPSO, em relação à PSO e à PSO-Scout. As otimizações
foram realizadas nos espaços de busca das funções f 1 , f 2 , f 3 e f 4 , respectivamente. Os valores ob-
tidos ao fim desses experimentos foram apresentados nas Tabelas 4 e 5.

Na Figura 24, função f 1 , observa-se a velocidade de convergência da SBPSO bastante su-


perior à PSO e à variante PSO-Scout. Embora a solução ótima não tenha sido encontrada pela
SBPSO durante as 2.000 iterações, ela atingiu um valor médio de fitness bastante significativo:
2.9522E-156. Na função f 2 , PSO, PSO-Scout e SBPSO também não atingiram o ponto ótimo, con-
forme Figura 25. Como pode ser observado, a velocidade de convergência da PSO e da PSO-Scout
são aproximadas, porém com uma sutil superioridade da PSO-Scout. Mais uma vez, a velocidade
de convergência da SBPSO superou PSO e PSO-Scout.

Na Figura 26, função f 3 , SBPSO encontrou a solução ótima próximo da iteração 1.380. A
PSO e a PSO-Scout convergiram próximo da iteração 1.700, porém a solução ótima não foi loca-
lizada. Por fim, na Figura 27, função f 4 , SBPSO encontrou a solução ótima próximo da iteração
1.300. Já a PSO estagnou próximo da iteração 1.500, ao passo que o movimento da PSO-Scout con-
tinuou ativo próximo da iteração 2.000.

Na Tabela 6, é possível observar que todos os experimentos realizados no espaço de busca


das funções f 1 – f 4 apresentaram p-value inferior ao nível de significância definido (0,05) e, nesses
casos, a hipótese H0 foi rejeitada. Isso garante que, quando comparadas SBPSO x PSO e SBPSO x
PSO-Scout, não houve igualdade entre as soluções encontradas. Portanto, isso significa que, esta-
tisticamente, os resultados da SBPSO superaram os da PSO e também os da PSO-Scout.

Os resultados numéricos apresentados na Tabela 7 mostram que, quando as funções f 1 ,


f 2 , f 3 e f 4 foram otimizadas por um enxame com 20 partículas, em 30 dimensões, durante 2.000
iterações, a SBPSO também superou 4 variantes da PSO. A comparação considerou os resultados
obtidos pelas variantes HPSOWM, WQPSO, QPSO e HPSOM, todas disponíveis na literatura. Nas
funções unimodais Esfera e Rosenbrock, o algoritmo obteve boas soluções com alta precisão. A
SBPSO também mostrou um bom desempenho nas funções multimodais Griewank e Rastrigin,
ao atingir as soluções ótimas.

4.3.2 EXPERIMENTAÇÃO 2
Neste segundo conjunto de experimentos, foram avaliadas outras 12 funções de referência.
Assim como as que foram avaliadas no conjunto de experimentos anterior, as 12 funções também
possuem características distintas em relação à continuidade, à diferenciabilidade, à separabili-
dade, à escalabilidade e à modalidade. As funções avaliadas são: Ackley ( f 5 ), Noisy Quartic ( f 6 ),
Zakharov ( f 7 ), Hiper Elipsoide Rotacionada ( f 8 ), Alpine ( f 9 ), Weierstrass ( f 10 ), Salomon ( f 11 ), Csen-

81
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

des ( f 12 ), Xin-She Yang 01 ( f 13 ), Soma dos Quadrados ( f 14 ), Schumer Steiglitz ( f 15 ) e Powell Sum
( f 16 ).

Os experimentos também investigaram a escalabilidade da SBPSO durante o processo de


otimização, porém em alta dimensionalidade e com um número maior de avaliações da função
objetivo, quando comparados ao conjunto de experimentos anterior. Na Experimentação 1, foram
variados o tamanho da população (20, 40 e 80), a dimensão das funções (10, 20 e 30) e o número
máximo de iterações (1.000, 1.500 e 2.000). Porém, neste conjunto de experimentos, para cada uma
das 12 funções de referência, o tamanho da população foi fixado em 50 partículas, a dimensão das
funções em 300D e o número de avaliações da função objetivo em 50.000 vezes. A Tabela 8 mostra
a melhor e a pior solução encontradas, a média dos valores de fitness, o desvio padrão e o p-value
resultante do teste de Wilcoxon da comparação entre SBPSO e PSO-Scout.

Como consequência da alta dimensionalidade atribuída às funções avaliadas, o tempo ne-


cessário para realizar a Experimentação 2 é relativamente alto. Então, a fim de diminuir o tempo
de execução dos experimentos, decidiu-se reduzir o número de execuções independentes dos al-
goritmos para 30 execuções, ao invés de 100, como foi definido na Experimentação 1.

As Figuras 28 – 39 mostram o processo de convergência da PSO, PSO-Scout e SBPSO que


foi medido, com 50 partículas, 300 dimensões e 50.000 iterações. O processo ocorre no espaço de
busca das funções Ackley, Noisy Quartic, Zakharov, Hiper Elipsoide Rotacionada, Alpine, Weiers-
trass, Salomon, Csendes, Xin-She Yang 01, Soma dos Quadrados, Schumer Steiglitz e Powell Sum.

82
4.3. RESULTADOS EXPERIMENTAIS

Figura 28: Processo de convergência médio na Função f 5 , com 50 partículas, em 300D.


Fonte: Autoria própria.

Figura 29: Processo de convergência médio na Função f 6 , com 50 partículas, em 300D.


Fonte: Autoria própria.

83
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 30: Processo de convergência médio na Função f 7 , com 50 partículas, em 300D.


Fonte: Autoria própria.

Figura 31: Processo de convergência médio na Função f 8 , com 50 partículas, em 300D.


Fonte: Autoria própria.

84
4.3. RESULTADOS EXPERIMENTAIS

Figura 32: Processo de convergência médio na Função f 9 , com 50 partículas, em 300D.


Fonte: Autoria própria.

Figura 33: Processo de convergência médio na Função f 10 , com 50 partículas, em 300D.


Fonte: Autoria própria.

85
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 34: Processo de convergência médio na Função f 11 , com 50 partículas, em 300D.


Fonte: Autoria própria.

Figura 35: Processo de convergência médio na Função f 12 , com 50 partículas, em 300D.


Fonte: Autoria própria.

86
4.3. RESULTADOS EXPERIMENTAIS

Figura 36: Processo de convergência médio na Função f 13 , com 50 partículas, em 300D.


Fonte: Autoria própria.

Figura 37: Processo de convergência médio na Função f 14 , com 50 partículas, em 300D.


Fonte: Autoria própria.

87
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

Figura 38: Processo de convergência médio na Função f 15 , com 50 partículas, em 300D.


Fonte: Autoria própria.

Figura 39: Processo de convergência médio na Função f 16 , com 50 partículas, em 300D.


Fonte: Autoria própria.

88
Tabela 8: Comparação entre a PSO, PSO-Scout e SBPSO para as funções f 5 – f 16 , em 300 dimensões com 50 partículas.

PSO PSO-Scout SBPSO


Função Média Média Média p-Value
Melhor Pior Melhor Pior Melhor Pior
(Desvio) (Desvio) (Desvio)
19.9408 2.4100 8.88E-16
f5 19.8770 19.9704 0.5183 10.6652 8.88E-16 8.88E-16 1.86E-09
(0.0218) (2.3123) (0)
1.7646 1.6635 6.58E-06
f6 1.1584 2.8390 1.1988 2.4991 5.29E-08 2.19E-05 1.86E-09
(4.0936) (0.3021) (5.35E-06)
2.17E04 8.18E03 0
f7 1.44E04 3.68E04 6.72E03 1.14E04 0 0 1.86E-09
(4.55E03) (1.00E03) (0)
2.35E-03 4.84E-02 0
f8 8.02E-05 1.72E-02 3.45E-05 1.35 0 0 1.86E-09
(4.27E-03) (0.24) (0)
1.13E-03 0.0176 0
f9 7.26E-06 0.0157 6.29E-06 0.5144 0 0 1.86E-09
(3.09E-03) (0.0938) (0)
46.63 48.53 0

89
f 10 33.24 60.92 33.42 55.70 0 0 1.86E-09
(6.18) (7.38) (0)
7.12 7.02 0
f 11 5.79 9.49 5.69 8.69 0 0 1.86E-09
(0.89) (0.82) (0)
2.85E-06 2.70E-06 0
f 12 8.02E-07 5.61E-06 5.47E-07 6.24E-06 0 0 1.86E-09
(1.45E-06) (1.34E-06) (0)
8.24E125 8.97E125 0
f 13 5.29E110 1.40E127 2.36E104 2.54E127 0 0 1.86E-09
(2.72E126) (4.64E126) (0)
1.08E-05 3.34E-05 0
f 14 1.96E-07 7.34E-05 4.02E-07 7.77E-04 0 0 1.86E-09
(1.93E-05) (1.41E-04) (0)
0.38 0.76 0
f 15 2.75E-02 1.79 1.09E-02 8.80 0 0 1.86E-09
(0.44) (1.66) (0)
4.76 2.64 0
f 16 3.29 5.91 1.41 4.18 0 0 1.86E-09
(0.65) (0.69) (0)

Fonte: Autoria própria.


4.3. RESULTADOS EXPERIMENTAIS
CAPÍTULO 4. EXPERIMENTOS COMPUTACIONAIS

4.3.2.1 AVALIAÇÃO DOS RESULTADOS

As Figuras 28 – 39 representam os processos de convergência médios da PSO, PSO-Scout


e SBPSO, que foram medidos usando 50 partículas, em 300 dimensões, durante 50.000 iterações,
após 30 execuções independentes. Em todas as simulações, ficou evidente a superioridade da ve-
locidade de convergência da SBPSO e também das soluções encontradas por ela, quando compa-
radas com a PSO e com a PSO-Scout. As otimizações foram realizadas nos espaços de busca das
funções f 5 – f 16 , respectivamente.

Na Figura 28, função f 5 , observa-se que a SBPSO convergiu próximo da iteração 22.500,
ao passo que a PSO nas primeiras iterações. Por outro lado, após 50.000 iterações, PSO-Scout não
convergiu, e a qualidade das soluções encontradas foi bastante inferior à da SBPSO, embora me-
lhor que a da PSO. Para a função f 6 , representada pela Figura 29, o comportamento de convergên-
cia da PSO-Scout é muito parecido com o da PSO, apesar de a qualidade da solução encontrada
ter sido inferior à da PSO. Embora SBPSO tenha encontrado boas médias para o valor de fitness
das funções f 5 (8.88E-16) e f 6 (6.58E-06), a solução ótima não foi encontrada.

Na Figura 30, função f 7 , PSO e PSO-Scout convergiram próximo da iteração 2.000, e os


valores médios de fitness foram, respectivamente, 2.17E04 e 8.18E03. Novamente, o comporta-
mento da PSO superou o da PSO-Scout. Já a SBPSO encontrou a solução ótima próximo à iteração
40.000. Para a função f 8 , representada pela Figura 31, SBPSO encontrou a solução ótima aproxi-
madamente depois de 30.000 avaliações da função objetivo. A velocidade de convergência da PSO
e da variante PSO-Scout são aproximadas, porém PSO supera a variante.

A Figura 32 representa o comportamento médio da função f 9 . A média do valor de fitness


encontrada pela PSO foi 1.13E-03 e pela PSO-Scout 0.0176. Os algoritmos não encontraram a so-
lução ótima, ao passo que, na iteração 40.000, SBPSO localizou a solução global. Na Figura 33,
função f 10 , a SBPSO encontrou a solução ótima próximo da iteração 15.000. Enquanto isso, a PSO
apresentou uma ligeira superioridade em relação à PSO-Scout, convergindo próximo da iteração
40.000, mas sem encontrar o ótimo global.

A Figura 34 ilustra o processo de convergência dos algoritmos no espaço de busca da fun-


ção Salomon, f 11 . SBPSO localizou a solução global próximo da iteração 30.000. PSO-Scout supe-
rou PSO no que diz respeito à qualidade das soluções encontradas, apesar da estagnação de ambas
nas primeiras iterações. Novamente, o comportamento de convergência da PSO e da PSO-Scout
foram parecidas na otimização da função f 12 , como visto na Figura 35. SBPSO encontrou a solução
ótima próximo da iteração 24.000.

Na Figura 36, função f 13 , SBPSO encontrou o ótimo global próximo da iteração 40.000. No
entanto, observa-se que houve um período de estagnação entre as iterações 15.000 e 30.000, apro-
ximadamente. Nesta simulação, depois de o algoritmo ter detectado a estagnação do enxame, ele
conseguiu fazê-lo movimentar-se novamente. A solução ótima foi encontrada nas proximidades
da iteração 40.000. Por outro lado, PSO e PSO-Scout apresentaram uma velocidade de convergên-
cia lenta, além de o ótimo global não ter sido localizado. Já o comportamento de convergência da

90
4.4. RESUMO

PSO e da PSO-Scout na otimização da função f 14 , como visto na Figura 37, novamente, são apro-
ximados. Na maior parte do número de iterações, os algoritmos permaneceram estagnados. Por
outro lado, SBPSO atingiu o ponto ótimo próximo da iteração 30.000.

Na Figura 38, função f 15 , SBPSO encontrou a solução ótima próximo da iteração 25.500. Já
a PSO superou a PSO-Scout, apesar de o comportamento médio de convergência apresentado por
elas ser bastante próximos. Por fim, na Figura 39, a velocidade de convergência da PSO e da PSO-
Scout são parecidos, mas PSO-Scout superou PSO. SBPSO encontrou a solução global próximo à
iteração 22.000.

Em todas as simulações realizadas neste conjunto de experimentos, observou-se que o


comportamento de convergência da SBPSO superou o da PSO e o da variante PSO-Scout. Os va-
lores médios obtidos ao fim dos experimentos foram apresentados na Tabela 8. Além disso, os
resultados do Teste de Wilcoxon foram inferiores ao nível de significância predefinido (0,05) e,
consequentemente, a hipótese H0 foi rejeitada.

4.4 RESUMO
O principal objetivo deste capítulo foi a apresentação dos resultados obtidos após várias
simulações computacionais. O capítulo descreveu as funções de referência utilizadas para avaliar
a performance da variante SBPSO e a configuração dos parâmetros para realização dos experi-
mentos. SBPSO foi comparada com a PSO e outras variantes da literatura e, como resultado dos
experimentos, observou-se a sua superioridade em todos eles. No próximo capítulo, serão apre-
sentadas as considerações finais deste trabalho.

91
CAPÍTULO
5
C ONSIDERAÇÕES F INAIS

Neste quinto e último capítulo, são apresentadas as considerações finais do trabalho. Na


primeira seção, são discutidas as conclusões relacionadas à pesquisa realizada e, na última, são
apresentadas as suas limitações e algumas propostas de trabalhos futuros.

5.1 CONCLUSÕES
Esta tese estudou o conceito de serendipidade e o adaptou ao contexto da inteligência de
enxames. Para validar a adaptação do conceito nesse novo contexto, uma variante da PSO baseada
em serendipidade, chamada SBPSO, foi implementada com o objetivo de obter melhores resulta-
dos no processo de convergência.

A SBPSO usou uma abordagem que considera as duas dimensões definidas no conceito de
serendipidade. Elas são conhecidas como acaso e sagacidade. A dimensão acaso foi implemen-
tada por meio do uso de partículas escoteiras com o objetivo de melhorar a exploração no espaço
de busca. Já a dimensão sagacidade foi implementada usando um conjunto de padrões que repre-
sentam o comportamento dos valores de fitness da função objetivo avaliada.

Para avaliar a performance da variante SBPSO, 16 funções de referência, bastante conhe-


cidas na literatura, foram utilizadas. Elas possuem propriedades importantes que devem ser ob-
servadas durante o processo de avaliação: continuidade, diferenciabilidade, separabilidade, esca-
labilidade e modalidade.

Foram realizados dois conjuntos de experimentos. No primeiro, 4 funções de referência


foram usadas para comparar SBPSO, PSO, PSO-Scout e outras variantes da literatura, como HP-
SOWM, WQPSO, QPSO e HPSOM. Após a realização dos experimentos, foi observado que a SBPSO
superou a PSO, a PSO-Scout e as outras quatro variantes citadas anteriormente. No segundo con-
junto de experimentos, foram utilizadas outras 12 funções de referência, comparando a nova va-
CAPÍTULO 5. CONSIDERAÇÕES FINAIS

riante com a PSO e a PSO-Scout. Mais uma vez a SBPSO superou as outras duas.

Como visto nos resultados que foram apresentados no Capítulo 4, a velocidade de con-
vergência da SBPSO superou as velocidades da PSO e da PSO-Scout. Quanto aos resultados das
soluções encontradas, a PSO e a PSO-Scout não encontraram o ótimo global de nenhuma das 16
funções de referência avaliadas. Por outro lado, a SBPSO não encontrou o ótimo global apenas em
duas funções ( f 1 e f 2 ), porém os ótimos locais foram melhores que os dos outros dois algoritmos
e, além disso, eles se mostraram bastante satisfatórios.

Em todos os experimentos, SBPSO apresentou um bom comportamento médio de con-


vergência, superando a PSO e algumas variantes no que diz respeito à qualidade das soluções, à
capacidade de encontrar ótimos globais, à estabilidade das soluções e à capacidade para reiniciar
o movimento do enxame após a estagnação ter sido detectada.

Após a realização dos experimentos, foi observado que há bastante espaço para novas apli-
cações do conceito de serendipidade no domínio dos algoritmos de inteligência de enxames. Tam-
bém observou-se que, de fato, a convergência prematura foi retardada nas simulações realizadas
em cada uma das 16 funções de referência avaliadas. Isso mostra que a utilização do conceito de
serendipidade pode viabilizar o desenvolvimento de mecanismos capazes de diminuir a aleatori-
edade e melhorar a performance dos algoritmos baseados em inteligência de enxames.

5.2 LIMITAÇÕES E TRABALHOS FUTUROS


Limitações são bastante frequentes em pesquisas científicas e, por conta disso, é necessá-
rio que elas sejam reconhecidas e registradas em qualquer trabalho acadêmico. Além disso, em
geral, uma pesquisa científica não se encerra ao fim de um trabalho como este. Assim, nos próxi-
mos parágrafos, serão elencados as limitações desta tese e os seus trabalhos futuros.

A implementação da dimensão sagacidade considerou um conjunto de padrões para re-


presentar o comportamento dos valores de fitness da função objetivo avaliada. Esses padrões fo-
ram definidos com base em apenas dois pontos de inspeção: I P 1 e I P 2 . Entretanto, é interessante
estudar o uso de um número maior de pontos de inspeção e, consequentemente, a definição de
novos padrões de comportamento. Além disso, é importante avaliar o desempenho e o tempo de
execução do algoritmo quando novos pontos de inspeção são definidos.

Ainda em relação à utilização dos padrões de comportamento, as ações são tomadas com
base em regras predefinidas para o padrão que foi identificado. Essas ações são disparadas quando
uma determinada regra é atendida. No entanto, a rotina pode ser melhorada a fim de aumentar a
parametrização do algoritmo, uma vez que, para cada novo padrão apresentado, não haverá ne-
cessidade de mudanças no código-fonte. Uma alternativa para isso seria a utilização de matrizes
para definição de regras a serem disparadas quando um novo padrão de comportamento for apre-
sentado.

A adaptação do conceito de serendipidade foi implementada apenas no contexto da PSO,

94
5.2. LIMITAÇÕES E TRABALHOS FUTUROS

embora o conceito possa ser estendido a outros algoritmos da inteligência de enxames. Portanto,
é interessante implementar o conceito de serendipidade em outros algoritmos, como o dos Vaga-
lumes, o dos Morcegos e outros.

É interessante também investigar a viabilidade da adaptação e da implementação de ou-


tras estratégias de serendipidade. Uma delas é uma abordagem baseada em anomalias e exceções,
uma vez que essa estratégia considera uma característica importante chamada de dissimilaridade.
Ela pode ser usada para nortear o movimento das partículas escoteiras em busca da direção oposta
do enxame de partículas. Essa estratégia pode ser combinada com a blind luck, para melhorar o
comportamento exploratório das partículas escoteiras.

A variante SBPSO foi validada em funções de referência que podem ser usadas para re-
presentar diversos problemas contínuos do mundo real, embora elas não sejam adequadas na
representação do comportamento de sistemas que possuem natureza dinâmica. Quando as mu-
danças no valor de fitness da função objetivo são moderadas, adicionar novas partículas escoteiras
para aumentar a diversidade do enxame ou, simplesmente, reiniciá-lo pode não produzir resulta-
dos significativos. Em casos como esses, é importante que o algoritmo seja capaz de se adequar a
essas mudanças ao longo do tempo.

Em uma próxima pesquisa, além de estudar mecanismos que possam ser adicionados à
nova variante para tratar problemas dinâmicos, pretende-se também aplicá-la a problemas dis-
cretos, como o do Caixeiro-Viajante. A validação da SBPSO nesse problema é importante por ele
ser bastante utilizado em cenários reais como roteamento de veículos, perfuração de placas de
circuitos impressos, problemas de sequenciamento e outros.

Pretende-se ainda validar a nova variante em domínios específicos nos quais exista co-
nhecimento passível de ser utilizado para explorar a dimensão sagacidade. Um desses domínios
é a otimização de problemas relacionados a Telecomunicações, tais como projetos de antenas
de microfitas e arrays de antenas inteligentes. Eles são exemplos clássicos nos quais os algorit-
mos bioinspirados são frequentemente aplicados e, portanto, na literatura, há vários trabalhos
que podem ser utilizados para comparar o desempenho dessa nova variante em relação às meta-
heurísticas tradicionais.

95
R EFERÊNCIAS

ABRAHAM, A.; DAS, S.; ROY, S. Soft computing for knowledge discovery and data mining. In:
. Boston, MA: Springer US, 2008. cap. Swarm Intelligence Algorithms for Data Clustering, p.
279–313.

ALONSO-AYUSO, A.; ESCUDERO, L. F.; MARTÍN-CAMPO, F. J. Multiobjective optimization for


aircraft conflict resolution. a metaheuristic approach. European Journal of Operational Research,
Elsevier, v. 248, n. 2, p. 691–702, 2016.

ANDEL, P. V. Anatomy of the unsought finding. serendipity: Origin, history, domains, traditions,
appearances, patterns and programmability. The British Journal for the Philosophy of Science,
Oxford University Press, v. 45, n. 2, p. 631–648, 1994. ISSN 00070882, 14643537.

ARORA, S.; SINGH, S. The firefly optimization algorithm: convergence analysis and parameter
selection. International Journal of Computer Applications, Foundation of Computer Science, v. 69,
n. 3, 2013.

AUSTIN, J. H. Chase, chance, and creativity: The lucky art of novelty. [S.l.]: Mit Press, 2003.

AVISE, J. C. Avise’s Birds of the World. 2011. <http://avise-birds.bio.uci.edu/charadriiformes/


laridae/Larus_atricilla/index.html>. Acessado em 5 de julho de 2016.

AYDIN, D. et al. Improving performance via population growth and local search: the case of the
artificial bee colony algorithm. In: SPRINGER. International Conference on Artificial Evolution
(Evolution Artificielle). [S.l.], 2011. p. 85–96.

BAI, Q. Analysis of particle swarm optimization algorithm. Computer and information science,
v. 3, n. 1, p. 180, 2010.

BASTOS-FILHO, C. J.; GUIMARÃES, A. C. Multi-objective fish school search. International Journal


of Swarm Intelligence Research (IJSIR), IGI Global, v. 6, n. 1, p. 23–40, 2015.

BENI, G.; WANG, J. Swarm intelligence in cellular robotic systems. In: NATO Advanced Workshop
on Robots and Biological Systems. [S.l.: s.n.], 1989. p. 26–30.

BERGH, F. V. D. An Analysis of Particle Swarm Optimizers. Tese (Doutorado), Pretoria, South Africa,
South Africa, 2006.

BERGH, F. V. D.; ENGELBRECHT, A. P. A new locally convergent particle swarm optimizer. In: IEEE.
Proceedings of the IEEE international conference on systems, man and cybernetics. [S.l.], 2002. v. 3,
p. 94–99.

BEYER, H.-G.; SCHWEFEL, H.-P. Evolution strategies–a comprehensive introduction. Natural


computing, Springer, v. 1, n. 1, p. 3–52, 2002.

BLACKWELL, T. M.; BENTLEY, P. Improvised music with swarms. In: Evolutionary Computation,
2002. CEC ’02. Proceedings of the 2002 Congress on. [S.l.: s.n.], 2002. v. 2, p. 1462–1467.
REFERÊNCIAS

BLUM, C.; LI, X. Swarm intelligence in optimization. In: Swarm Intelligence: Introduction and
Applications. [S.l.: s.n.], 2008. p. 43–85.

CAMPOS, J.; FIGUEIREDO, A. D. Programming for serendipity. In: Proceedings of Fall Symposium
on Chance Discovery - The Discovery and Management of Chance Events. [S.l.: s.n.], 2002. p. 48–60.

CANAYAZ, M.; KARCI, A. Cricket behaviour-based evolutionary computation technique in solving


engineering optimization problems. Applied Intelligence, Springer, v. 44, n. 2, p. 362–376, 2016.

CATELLIN, S. Sérendipité: Du conte au concept. Paris: Seuil, 2014.

CHEN, C.-Y.; YE, F. Particle swarm optimization algorithm and its application to clustering
analysis. In: Networking, Sensing and Control, 2004 IEEE International Conference on. [S.l.: s.n.],
2004. v. 2, p. 789–794 Vol.2.

CHIARADONNA, S.; GIANDOMENICO, F. D.; MURRU, N. On enhancing effciency and accuracy


of particle swarm optimization algorithms. International Journal of Innovative Computing,
Information and Control (IJICIC), v. 11, n. 4, p. 1165–1190, 2015.

CHOU, J.-S.; THEDJA, J. P. P. Metaheuristic optimization within machine learning-based


classification system for early warnings related to geotechnical problems. Automation in
Construction, Elsevier, v. 68, p. 65–80, 2016.

CHOWDHURY, S.; ZHANG, J.; MESSAC, A. Avoiding premature convergence in a mixed-discrete


particle swarm optimization (mdpso) algorithm. In: 53rd AIAA/ASME/ASCE/AHS/ASC Structures,
Structural Dynamics and Materials Conference 20th AIAA/ASME/AHS Adaptive Structures
Conference 14th AIAA. [S.l.: s.n.], 2012. p. 1678.

CONTRERAS, M. A.; CHUNG, W.; JONES, G. Applying ant colony optimization metaheuristic to
solve forest transportation planning problems with side constraints. Canadian journal of forest
research, NRC Research Press, v. 38, n. 11, p. 2896–2910, 2008.

CORREA, E. S.; FREITAS, A. A.; JOHNSON, C. G. A new discrete particle swarm algorithm applied
to attribute selection in a bioinformatics data set. In: Proceedings of the 8th Annual Conference on
Genetic and Evolutionary Computation. New York, NY, USA: ACM, 2006. (GECCO ’06), p. 35–42.

COUZIN, I. et al. Collective Memory and Spatial Sorting in Animal Groups. Journal of Theoretical
Biology, Elsevier, v. 218, n. 1, p. 1–11, 2002.

ČREPINŠEK, M.; MERNIK, M.; LIU, S.-H. Analysis of exploration and exploitation in evolutionary
algorithms by ancestry trees. International Journal of Innovative Computing and Applications,
Inderscience Publishers, v. 3, n. 1, p. 11–19, 2011.

CUEVAS, E. et al. A swarm optimization algorithm inspired in the behavior of the social-spider.
Expert Systems with Applications, Elsevier, v. 40, n. 16, p. 6374–6384, 2013.

DEW, N. Serendipity in entrepreneurship. Organization Studies, SAGE Publications, v. 30, n. 7, p.


735–753, 2009.

DHANRAJ, A. V.; NANJUNDAPPAN, D. Design of optimized pi controller with ideal decoupler for
a non linear multivariable system using particle swarm optimization technique. International
Journal of Innovative Computing, Information and Control (IJICIC), v. 10, n. 1, p. 341–355, 2014.

DIETERICH, J. M.; HARTKE, B. Empirical review of standard benchmark functions using


evolutionary global optimization. arXiv preprint arXiv:1207.4318, 2012.

98
REFERÊNCIAS

DORIGO, M.; BIRATTARI, M.; STÜTZLE, T. Ant colony optimization. Computational Intelligence
Magazine, IEEE, IEEE, v. 1, n. 4, p. 28–39, 2006.

DORIGO, M.; MANIEZZO, V.; COLORNI, A. Positive Feedback as a Search Strategy. [S.l.], 1991.

DOSCIATTI, E.; GODOY, W.; FORONDA, A. Tq/pso - a new scheduler to optimize the time frame
with pso in wimax networks. IEEE Latin America Transactions, v. 13, n. 1, p. 365–376, Jan 2015.
ISSN 1548-0992.

DURAND, N.; GOTTELAND, J.-B. Genetic algorithms applied to air traffic management. In:
Metaheuristics for hard optimization. [S.l.]: Springer, 2006. p. 277–306.

EAGLE, N. Can serendipity be planned? MIT Sloan Management Review, Massachusetts Institute
of Technology, v. 46, n. 1, p. 10, 2004.

ESMIN, A.; MATWIN, S. Hpsom: A hybrid particle swarm optimization algorithm with genetic
mutation. International Journal of Innovative Computing, Information and Control, v. 9, n. 5, p.
1919–1934, May 2013. ISSN 1349-4198.

EVERS, G. I.; GHALIA, M. B. Regrouping particle swarm optimization: A new global optimization
algorithm with improved performance consistency across benchmarks. In: SMC. [S.l.]: IEEE, 2009.
p. 3901–3908.

FISTER-JR, I. et al. A brief review of nature-inspired algorithms for optimization. arXiv preprint
arXiv:1307.4186, 2013.

GAMBARDELLA, L. M.; TAILLARD, E.; AGAZZI, G. MACS-VRPTW: A Multiple Ant Colony System
for Vehicle Routing Problems with Time Windows. [S.l.], 1999.

GANDOMI, A. H.; ALAVI, A. H. Krill herd: a new bio-inspired optimization algorithm.


Communications in Nonlinear Science and Numerical Simulation, Elsevier, v. 17, n. 12, p.
4831–4845, 2012.

GE, M.; DELGADO-BATTENFELD, C.; JANNACH, D. Beyond accuracy: Evaluating recommender


systems by coverage and serendipity. In: Proceedings of the Fourth ACM Conference on
Recommender Systems. New York, NY, USA: ACM, 2010. (RecSys ’10), p. 257–260.

GEHLHAAR, D. K.; FOGEL, D. B. Tuning evolutionary programming for conformationally flexible


molecular docking. In: Evolutionary programming. [S.l.: s.n.], 1996. p. 419–429.

GIGRAS, Y.; GUPTA, K. Metaheuristic algorithm for robotic path planning. International Journal
of Computer Applications, Foundation of Computer Science, v. 85, n. 3, 2014.

GLOVER, F. Future paths for integer programming and links to artificial intelligence. Comput.
Oper. Res., Elsevier Science Ltd., Oxford, UK, UK, v. 13, n. 5, p. 533–549, maio 1986. ISSN 0305-0548.

HIGASHI, N.; IBA, H. Particle swarm optimization with gaussian mutation. In: Swarm Intelligence
Symposium, 2003. SIS ’03. Proceedings of the 2003 IEEE. [S.l.: s.n.], 2003. p. 72–79.

HOLLAND, J. H. Adaptation in Natural and Artificial Systems: An Introductory Analysis with


Applications to Biology, Control and Artificial Intelligence. Cambridge, MA, USA: MIT Press, 1992.
ISBN 0262082136.

IAQUINTA, L. et al. Can a recommender system induce serendipitous encounters? In: . [S.l.]:
IN-TECH, 2009.

99
REFERÊNCIAS

KARABOGA, D. An idea based on honey bee swarm for numerical optimization. [S.l.], 2005.

KENNEDY, J.; EBERHART, R. Particle swarm optimization. In: Neural Networks, 1995. Proceedings.,
IEEE International Conference on. [S.l.: s.n.], 1995. v. 4, p. 1942–1948.

KOUMBOULIS, F.; TZAMTZI, M. A generalised control metaheuristic framework for industrial


processes. International Journal of Automation and Control, Inderscience Publishers, v. 4, n. 2, p.
218–233, 2010.

KRISHNANAND, K.; GHOSE, D. Glowworm swarm optimization for simultaneous capture of


multiple local optima of multimodal functions. Swarm intelligence, Springer, v. 3, n. 2, p. 87–124,
2009.

KUHN, T. S. The structure of scientific revolutions. 2nd ed., enl.. ed. Chicago: University of Chicago
Press, 1970. (International encyclopedia of unified science. Foundations of the unity of science).

LAWLEY, J. Maximising serendipity: The art of recognising and fostering unexpected potential –
a systemic approach to change. In: Neuro Linguistic Psychotherapy and Counselling Association
2013. [S.l.: s.n.], 2013.

LEITAO, H.; LOPES, W.; MADEIRO, F. Pso algorithm applied to codebook design for channel-
optimized vector quantization. Latin America Transactions, IEEE (Revista IEEE America Latina),
v. 13, n. 4, p. 961–967, April 2015. ISSN 1548-0992.

LI, C. et al. A fast particle swarm optimization algorithm with cauchy mutation and natural
selection strategy. In: Advances in computation and intelligence. [S.l.]: Springer, 2007. p. 334–343.

LI, J. et al. Analysis and improvement of the bacterial foraging optimization algorithm. Journal of
Computing Science and Engineering, Li Jun; Dang Jianwu; Bu Feng; Wang Jiansheng, v. 8, n. 1, p.
1–10, 2014.

LI, X.; TIAN, P.; LEUNG, S. C. An ant colony optimization metaheuristic hybridized with tabu
search for open vehicle routing problems. Journal of the Operational Research Society, Springer,
v. 60, n. 7, p. 1012–1025, 2009.

LING, S.-H. et al. Hybrid particle swarm optimization with wavelet mutation and its industrial
applications. IEEE Transactions on Systems, Man, and Cybernetics, Part B, v. 38, n. 3, p. 743–763,
2008.

LOPS, P.; GEMMIS, M. D.; SEMERARO, G. Content-based recommender systems: State of the art
and trends. In: Recommender systems handbook. [S.l.]: Springer, 2011. p. 73–105.

MALAK, M. 17 Qualities of the Ideal Recommender System. 2014. <http://www.datascienceassn.


org/content/17-qualities-ideal-recommender-system>. Acessado em 1 de setembro de 2014.

MCGILL, R.; TUKEY, J. W.; LARSEN, W. A. Variations of box plots. The American Statistician, Taylor
& Francis Group, v. 32, n. 1, p. 12–16, 1978.

MENDES, M. S. Teoria da Serendipidade no Processo Penal. 29 p., 2014.

MERTON, R. K.; BARBER, E. The travels and adventures of serendipity: A study in sociological
semantics and the sociology of science. [S.l.]: Princeton University Press, 2006.

MEYERS, M. A. Happy accidents: Serendipity in modern medical breakthroughs. [S.l.]: Arcade Pub.,
2007.

100
REFERÊNCIAS

MIKKI, S.; KISHK, A. A. Investigation of the quantum particle swarm optimization technique for
electromagnetic applications. In: Antennas and Propagation Society International Symposium,
2005 IEEE. [S.l.: s.n.], 2005. v. 2A, p. 45–48.

MILLONAS, M. M. Swarms, phase transitions, and collective intelligence. [S.l.], 1993.

MONSON, C. K.; SEPPI, K. D. Exposing origin-seeking bias in pso. In: ACM. Proceedings of the 7th
annual conference on Genetic and evolutionary computation. [S.l.], 2005. p. 241–248.

NOCEDAL, J.; WRIGHT, S. J. Numerical optimization. Berlin: Springer, 2006. (Springer Series in
Operations Research and Financial Engineering).

OKU, K.; HATTORI, F. Fusion-based recommender system for improving serendipity. In:
DiveRS@RecSys. [S.l.]: CEUR-WS.org, 2011. (CEUR Workshop Proceedings, v. 816), p. 19–26.

OLMA, S. 14 university as übungsraum. Higher Education and the Creative Economy: Beyond the
Campus, Routledge, p. 261, 2016.

PAIVA, F. A. P.; COSTA, J. A. F.; SILVA, C. R. M. A hierarchical architecture for ontology-based


recommender systems. In: Computational Intelligence and 11th Brazilian Congress on
Computational Intelligence (BRICS-CCI CBIC). [S.l.: s.n.], 2013. p. 362–367.

PAIVA, F. A. P.; COSTA, J. A. F.; SILVA, C. R. M. An ontology-based recommender system architecture


for semantic searches in vehicles sales portals. In: Hybrid Artificial Intelligence Systems. [S.l.]:
Springer International Publishing, 2014, (Lecture Notes in Computer Science, v. 8480). p. 537–548.
ISBN 978-3-319-07616-4.

PAIVA, F. A. P.; COSTA, J. A. F.; SILVA, C. R. M. Uma meta-heurística alternativa de inteligência


de enxames baseada em serendipidade guiada. In: 2nd LA-CCI (Latin American) and 12th CBIC
Brazilian Congress on Computational Intelligence. [S.l.: s.n.], 2015.

PAIVA, F. A. P.; COSTA, J. A. F.; SILVA, C. R. M. An alternative approach for particle swarm
optimization using serendipity. International Journal of Bio-Inspired Computation, No prelo,
2016.

PAIVA, F. A. P.; COSTA, J. A. F.; SILVA, C. R. M. A serendipity-based pso approach to delay premature
convergence using scout particle. International Journal of Innovative Computing, Information
and Control, v. 12, n. 4, Ago 2016. ISSN 1349-4198.

PAIVA, F. A. P. et al. Arquitetura de um sistema de recomendação baseado em ontologia para


anúncios de carros. In: CITESEER. ONTOBRAS. [S.l.], 2013. p. 173–178.

PEER, E. S.; BERGH, F. van den; ENGELBRECHT, A. P. Using neighbourhoods with the guaranteed
convergence pso. In: IEEE. Swarm Intelligence Symposium, 2003. SIS’03. Proceedings of the 2003
IEEE. [S.l.], 2003. p. 235–242.

PéREZ, J. et al. Parameter identification of a permanent magnet synchronous machine based on


current decay test and particle swarm optimization. IEEE Latin America Transactions, v. 11, n. 5,
p. 1176–1181, Sept 2013. ISSN 1548-0992.

PERNA, A. et al. Serendipity in business relationship beginning. In: The 29th IMP Conference. [S.l.:
s.n.], 2013.

PICHENY, V.; WAGNER, T.; GINSBOURGER, D. A benchmark of kriging-based infill criteria for
noisy optimization. Structural and Multidisciplinary Optimization, v. 48, n. 3, p. 607–626, 2013.

101
REFERÊNCIAS

RIGET, J.; VESTERSTRØM, J. S. A diversity-guided particle swarm optimizer-the arpso. Dept.


Comput. Sci., Univ. of Aarhus, Aarhus, Denmark, Tech. Rep, Citeseer, v. 2, p. 2002, 2002.

ROND, M. D. The structure of serendipity. Culture and Organization, Taylor & Francis, v. 20, n. 5,
p. 342–358, 2014.

ROND, M. d. D.; MORLEY, I. Serendipity: Fortune and the prepared mind. [S.l.]: Cambridge
University Press, 2010. v. 22.

SILVA, A.; NEVES, A.; GONÇALVES, T. Using scout particles to improve a predator-prey optimizer.
In: Adaptive and Natural Computing Algorithms, 11th International Conference, ICANNGA 2013,
Lausanne, Switzerland, April 4-6, 2013. Proceedings. [S.l.: s.n.], 2013. p. 130–139.

SILVA, E.; BASTOS-FILHO, C. Pso efficient implementation on gpus using low latency memory.
Latin America Transactions, IEEE (Revista IEEE America Latina), v. 13, n. 5, p. 1619–1624, May
2015. ISSN 1548-0992.

SMIGRODZKI, R. et al. Genetic algorithm for analysis of mutations in parkinson’s disease.


Artificial intelligence in medicine, Elsevier, v. 35, n. 3, p. 227–241, 2005.

SMONOU, D.; KAMPOURIDIS, M.; TSANG, E. Metaheuristics application on a financial


forecasting problem. In: IEEE. 2013 IEEE Congress on Evolutionary Computation. [S.l.], 2013. p.
1021–1028.

SOUZA, G. R. Arquitetura Multiagente baseada em Nuvem de Partículas para Hibridização de


Metaheurísticas. Tese (Doutorado) — Universidade Federal do Rio Grande do Norte, 2013.

SUN, J. et al. Quantum-behaved particle swarm optimization: Analysis of individual particle


behavior and parameter selection. Evolutionary Computation, MIT Press, Cambridge, MA, USA,
v. 20, n. 3, p. 349–393, set. 2012. ISSN 1063-6560.

SUN, J.; FENG, B.; XU, W. Particle swarm optimization with particles having quantum behavior.
In: Evolutionary Computation, 2004. CEC2004. Congress on. [S.l.: s.n.], 2004. v. 1, p. 325–331.

TAHARA, Y.; OHSUGA, A. Context-aware music recommendation with serendipity using semantic
relations. In: SPRINGER. Semantic Technology: Third Joint International Conference, JIST 2013,
Seoul, South Korea, November 28–30, 2013, Revised Selected Papers. [S.l.], 2014. v. 8388, p. 17.

TALBI, E.-G. Metaheuristics: From Design to Implementation. [S.l.]: Wiley Publishing, 2009. ISBN
0470278587, 9780470278581.

THERAULAZ, G. et al. Task differentiation in polistes wasp colonies: a model for self-organizing
groups of robots. In: MIT PRESS. Proceedings of the first international conference on simulation of
adaptive behavior on From animals to animats. [S.l.], 1991. p. 346–355.

TOLSON, J. A word’s eventful journey. US News & World Report, US News & World Report, v. 136,
n. 4, p. 51, 2004.

TOMS, E. Serendipitous information retrieval. In: First DELOS Network of Excellence Workshop on
Information Seeking, Searching and Querying in Digital Libraries. [S.l.: s.n.], 2000. p. 11–12.

VASANT, P. Hybrid simulated annealing and genetic algorithms for industrial production
management problems. International Journal of Computational Methods, World Scientific, v. 7,
n. 02, p. 279–297, 2010.

102
REFERÊNCIAS

VILLEGAS, F. J. et al. A parallel electromagnetic genetic-algorithm optimization (ego) application


for patch antenna design. IEEE Transactions on Antennas and Propagation, IEEE, v. 52, n. 9, p.
2424–2435, 2004.

VITORINO, L.; RIBEIRO, S.; BASTOS-FILHO, C. J. A mechanism based on artificial bee colony to
generate diversity in particle swarm optimization. Neurocomputing, Elsevier, v. 148, p. 39–45,
2015.

WANG, H. et al. Opposition-based particle swarm algorithm with cauchy mutation. In: IEEE
Congress on Evolutionary Computation. [S.l.: s.n.], 2007. p. 4750–4756.

WANG, X. W. et al. Intelligent welding robot path planning. In: Chinese Intelligent Automation
Conference. [S.l.: s.n.], 2015. v. 1, p. 25–32.

WANG, Y.-X.; ZHAO, Z.-D.; REN, R. Hybrid particle swarm optimizer with tabu strategy for
global numerical optimization. In: IEEE. Congress on Evolutionary Computation. [S.l.], 2007. p.
2310–2316.

WEI, J.; GUANGBIN, L.; DONG, L. Elite particle swarm optimization with mutation. In: IEEE.
System Simulation and Scientific Computing, 2008. ICSC 2008. Asia Simulation Conference-7th
International Conference on. [S.l.], 2008. p. 800–803.

WU, Y.-L. et al. Discrete particle swarm optimization with scout particles for library materials
acquisition. The Scientific World Journal, Hindawi, v. 2013, p. 1–11, 2013.

XI, M.; SUN, J.; XU, W. An improved quantum-behaved particle swarm optimization algorithm
with weighted mean best position. Applied Mathematics and Computation, v. 205, n. 2, p. 751–759,
2008.

YAGOUNI, M. Using of metaheuristics for optimizing satellite image registration. In: IEEE.
Computers & Industrial Engineering, 2009. CIE 2009. International Conference on. [S.l.], 2009. p.
531–535.

YANG, X.-S. Nature-Inspired Metaheuristic Algorithms: Second Edition. [S.l.]: Luniver Press, 2010.
ISBN 1905986289, 9781905986286.

YANG, X.-S. A new metaheuristic bat-inspired algorithm. In: Nature inspired cooperative strategies
for optimization (NICSO 2010). [S.l.]: Springer, 2010. p. 65–74.

YI, H.; DUAN, Q.; LIAO, T. W. Three improved hybrid metaheuristic algorithms for engineering
design optimization. Applied Soft Computing, Elsevier, v. 13, n. 5, p. 2433–2444, 2013.

YUE-BO, M. et al. Research on wnn aerodynamic modeling from flight data based on improved
pso algorithm. Neurocomputing, Elsevier, v. 83, p. 212–221, 2012.

ZANG, H.; ZHANG, S.; HAPESHI, K. A review of nature-inspired algorithms. Journal of Bionic
Engineering, v. 7, p. 232 – 237, 2010.

ZHAN, Z.-H. et al. Adaptive particle swarm optimization. IEEE Transactions on Systems, Man, and
Cybernetics, Part B (Cybernetics), IEEE, v. 39, n. 6, p. 1362–1381, 2009.

ZHANG, W.-J.; XIE, X.-F. Depso: hybrid particle swarm with differential evolution operator. In:
IEEE International Conference on Systems, Man and Cybernetics, 2003. [S.l.: s.n.], 2003. v. 4, p.
3816–3821.

103
REFERÊNCIAS

ZHOU, F.; LIN, X. Research of training feedforward neural networks based on hybrid chaos
particle swarm optimization-back-propagation. In: Intelligent Computing in Bioinformatics -
10th International Conference, ICIC 2014, Taiyuan, China, August 3-6, 2014. Proceedings. [S.l.:
s.n.], 2014. p. 41–47.

104
APÊNDICE
A
T RABALHOS P UBLICADOS

1. PAIVA, F. A. P., COSTA, J. A. F., SILVA, C. R. M., An Alternative Approach for Particle Swarm
Optimization Using Serendipity, Int. J. Bio-Inspired Computing (IJBIC), no prelo. ISSN 1758-
0374.

2. PAIVA, F. A. P., COSTA, J. A. F., SILVA, C. R. M., A Serendipity-Based PSO Approach to Delay
Premature Convergence Using Scout Particle, International Journal of Innovative Compu-
ting, Information and Control (IJICIC), v. 12, n. 4, p. 1141–1163, Ago. 2016. ISSN 1349-4198.

3. PAIVA, F. A. P., COSTA, J. A. F., SILVA, C. R. M., Uma Meta-Heurística Alternativa de Inteli-
gência de Enxames Baseada em Serendipidade Guiada, 12o Congresso Brasileiro de Inteli-
gência Computacional (CBIC 2015), Curitiba, Brasil, 2015.

4. PAIVA, F. A. P., COSTA, J. A. F., SILVA, C. R. M., An Ontology-Based Recommender System


Architecture for Semantic Searches in Vehicles Sales Portals, Hybrid Artificial Intelligence
Systems (HAIS 2014), Salamanca, Espanha, 2014.

5. PAIVA, F. A. P., COSTA, J. A. F., SILVA, C. R. M., A Hierarchical Architecture for Ontology-
based Recommender Systems, Congress on Computational Intelligence (BRICS 2013), Porto
de Galinhas, Brasil, 2013.

6. PAIVA, F. A. P., COSTA, J. A. F., SILVA, C. R. M., Arquitetura de um Sistema de Recomendação


Baseado em Ontologia para Anúncios de Carros, Seminário de Pesquisa em Ontologias no
Brasil (Ontobras 2013), Belo Horizonte, Brasil, 2013.

7. PAIVA, F. A. P., COSTA, J. A. F., SILVA, C. R. M., Sistema de Recomendação Baseado em On-
tologia para Anúncios de Carros Usados, Symposium on Knowledge Discovery, Mining and
Learning (KDMiLe 2013), São Carlos, Brasil, 2013.

8. PAIVA, F. A. P., COSTA, J. A. F., Sistemas de Recomendação Baseados em Web Usage Mining.
Holos, v. 3, p. 75-83, 2012. ISSN 1807-1600.
APÊNDICE A. TRABALHOS PUBLICADOS

9. PAIVA, F. A. P., COSTA, J. A. F., Using SOM to clustering of web sessions extracted by tech-
niques of Web Usage Mining, 13th Intelligent Data Engineering and Automated Learning
(IDEAL 2012), Natal, Brasil, 2012.

10. PASA, L. A., COSTA, J. A. F., TOSIN, M. C., PAIVA, F. A. P., Using SOM maps for clustering and
visualization of diamond films deposited by HFCVD process, 13th Ibero-American Confe-
rence on Artificial Intelligence (IBERAMIA 2012), Cartagenia de Indias, Colômbia, 2012.

11. VERAS, W. C., COSTA, J. A. F., PAIVA, F. A. P., PASA, L. A., SOFFIATTI, A., SOARES, J. L. M., Um
Sistema Autonômico Multiagente Baseado em Ontologias para Segurança em Ambientes
Computacionais, 10o Congresso Brasileiro de Inteligência Computacional (CBIC 2011), For-
taleza, Brasil, 2011.

106

Você também pode gostar