Grupo - BOIDS
Contexto Histórico
Desenvolvido por Craig Reynolds em 1986, é um algoritmo que busca, por meio de regras de comportamento, reproduzir o comportamento sincronizado de grupos de animais. Por exemplo manadas de animais terrestres, cardumes de peixes, bando de pássaros e etc. O nome BOID corresponde ao encurtamento da expressão em inglês “bird-oid object”, que se refere a um objeto “tipo pássaro”. Seu trabalho foi publicado em 87 sob o título original, em inglês, "Flocks, herds and schools: A distributed behavioral model". O modelo base de Craig já fora utilizado para diversas implementações e estudos. Como estudo comportamental de medo, interação entre animais via olfato modelando feromônios, mudança de liderança de um bando, dentre muitas outras aplicações interessantes.
O Algoritmo
O algoritmo leva em consideração três regras básicas.
1. Separação: interação de repulsão entre os indivíduos para evitar superconcentração local (ou no caso extremo uma superposição).
2. Alinhamento: a velocidade média dos parceiros próximos influencia o vetor velocidade do objeto, fazendo-o ter um comportamento parecido com sua vizinhança.
3. Coesão: os boids tendem a se mover na direção do centro de massa de seus vizinhos próximos.
Regras complementares e mais complexas como desviar de objetos e perseguir objetivos podem ser adicionadas para diferentes estudos.
Embora cada boid tenha liberdade sobre todo o espaço descrito, o seu comportamento é influenciado apenas por outros dentro de uma região circular centrada no objeto dita raio de interação.
Motivação
O movimento de animais em sincronia é extremamente complexo e é chave para sua sobrevivência em bando. Peixes, pássaros e mamíferos terrestres tem esse tipo de comportamento principalmente no que diz respeito a defesa em momentos em que sentem em perigo. A concentração intimida e o movimento confunde seus predadores. Além de ser extremamente prazeroso assistir um bando de pássaros ou um cardume de peixes em sua dança sincronizada.
Desenvolvimento em C
Este trabalho busca, em suas etapas, reproduzir um cardume de peixes em seu padrão síncrono de movimento e, posteriormente, na presença de um ou mais predadores.
Coesão
Separação
Alinhamento