PSO (otimização por enxame de partículas): o que é

Letra

Atualizado em 04/10/2026: verbete refeito: definição curta com fonte, exemplo e termos relacionados; saiu o texto genérico anterior. Como conferimos os dados

A otimização por enxame de partículas (PSO, particle swarm optimization) é um método para encontrar o melhor valor de uma função. Ela imita o comportamento social de bandos de pássaros e cardumes: um conjunto de soluções candidatas, as partículas, se espalha pelo espaço de busca e se move à procura do ótimo. O algoritmo original é atribuído a Kennedy e Eberhart, em artigo de 1995.

Como as partículas se movem

A cada passo, cada partícula ajusta o movimento por dois impulsos: ir em direção à melhor posição que ela mesma já encontrou e ir em direção à melhor posição encontrada pelo grupo (ou pelos vizinhos).

Vantagem

A PSO não usa o gradiente da função. Por isso, a função a otimizar não precisa ser diferenciável, o que serve para problemas em que o gradiente não existe ou é difícil de calcular.

Exemplo

Para escolher dois hiperparâmetros de um modelo, cada partícula é um par de valores. A pontuação de cada par é o erro na validação, e o enxame vai se concentrando nos pares de menor erro. Em Python, a biblioteca PySwarms implementa o método.

Termos relacionados

Fontes (conferidas em 02/10/2026): PySwarms: introdução à PSO

← Todos os termos do ABC da IA