"O todo sem a parte não é todo; A parte sem o todo não é parte; Mas se a parte o faz todo, sendo parte; Não se diga, que é parte, sendo todo." - Gregório de Matos
Disciplina: FGA0210 - PARADIGMAS DE PROGRAMAÇÃO - T01
Número do Grupo: 02
Paradigma: SMA
Matrícula | Aluno |
---|---|
21/1039288 | Bruno Campos Ribeiro |
21/1039297 | Bruno Martins Valério Bomfim |
20/2016462 | Heitor Marques |
21/1029352 | Igor e Silva Penha |
19/0057858 | José Luís Ramos Teixeira |
21/1029405 | Leonardo Gonçalves Machado |
20/2016767 | Lucas Felipe Soares |
20/0062379 | Marcos Vinícius de Deus |
20/2045268 | Raquel T. Eucária Pereira da Costa |
21/2002907 | Zenilda Pedrosa Vieira |
Cibeelization é um projeto que visa simular as dinâmicas de uma colmeia de abelhas, onde as abelhas - com classe, funções e comportamento definidos - interagem entre si em pról do desenvolvimento e equilíbrio da sociedade como um todo, criando assim um ecossistema dinâmico e complexo.
O projeto foi desenvolvido na linguagem Java e utiliza a tecnologia de sistemas multiagentes (SMA), baseando-se no framework JADE e utilizando o protocolo FIPA para comunicação e troca de mensagens entre os agentes.

Bee Movie (2007).
As classes de agentes presentes no Cibeelization incluem:
- Rainha: Cria novas operárias periodicamente.
- Operárias: Produzem mel/Geleia Real ou atacam intrusos quando detectados.
- Limpadoras: Limpam os resíduos gerados pela produção de mel e geleia real pelas abelhas operárias. Tal produção é interrompida quando a quantidade de resíduo atinge um limite máximo.
- Intruso: Aparece periodicamente e precisa ser combatido pelas operárias.
- Zangão: Ajuda na proteção da colmeia e na reprodução com a rainha.
Mais detalhes sobre os agentes, os requisitos funcionais e os não-funcionais podem ser lidos na íntegra na documentação da descrição do projeto.
-
Certifique-se de ter os pré-requisitos instalados:
- Java Development Kit (JDK) 8 ou superior.
- JADE Framework.
- Make (para usar o Makefile).
-
Clone o repositório:
git clone https://github.com/UnBParadigmas2024-2/2024.2_G2_SMA_Cibeelization cd 2024.2_G2_SMA_Cibeelization
Para executar o projeto, basta executar o makefile através dos seguintes passos.
-
Certifique-se de ter instalado o projeto corretamente (seção anterior).
-
Uma vez dentro do projeto, navegue até a pasta principal:
cd cibeelization/
-
Execute o makefile:
make
-
Após finalizar a execução, limpe os arquivos de compilação:
make clean
Nome do Membro | Contribuição | Significância da Contribuição para o Projeto (Excelente/Boa/Regular/Ruim/Nula) | Comprobatórios |
---|---|---|---|
Bruno Campos Ribeiro | (1) Participação nas reuniões do grupo, definição e elicitação de requisitos para o projeto. (2) Auxilio no funcionamento da Rainha. (3) Realização da rinha de rainhas. (4) Operárias se tornando rainha. (5) BugFix. |
Excelente | (2)/(3)/(4) Commit e5a9347 (5) Commit 389d16c, Commit a9be9a1 |
Bruno Martins Valério Bomfim | (1) Participação nas reuniões do grupo, definição e elicitação de requisitos para o projeto. (2) Estudos: criação de prints para debug. (3) Estudos: teste de criação do agente Planta (não foi para a upstream). (4) Criação da primeira versão funcional do programa. (5) Abelha-rainha: criação, implementação e aperfeiçoamento. (6) Abelha-operária: criação, implementação e aperfeiçoamento. (7) Abelha-zangão: criação, implementação e aperfeiçoamento. (8) Abelha-limpadora: criação, implementação e aperfeiçoamento. (9) Bugfix: correção de bugs, ajuste de constantes, testes. (10) Documentação: escrita do README, documentação técnica do projeto, participações. (11) Documentação: criação do gitignore. (12) Participação do vídeo de entrega. (13) Auxílio da criação da InspectorBee |
Excelente | (1) Issue #2 (2) Branch consertaPrints (3) Branch plant (4) Commit 3f92d58 (5) Commit ffaa000, Commit a034add (6) Commit 79cf024, Commit a034add (7) Commit 3f92d58 (8) Commit d87b2be, Commit 1e55bd3, Commit 5ffa99f, Commit 389d16c (9) Commit a034add, Commit 389d16c, Commit a9be9a1 (10) Commit d6850b6, Commit e7b182b, Commit 3d397f8, Commit 91480da, Commit 29dea0d, Commit e753b83 (11) Commit 511e82a (12) Vídeo (13) Commit 7c0ff7d |
Heitor Marques | (1) Correção do bug de rastreamento residual mesmo com .gitignore , solucionando problemas no repositório.(2) Implementação inicial do agente IntruderBear, criando a mecânica de intrusos que interagem com a colmeia. (3) Desenvolvimento da lógica para geração periódica de intrusos, controlando o limite e a detecção pela Rainha. (4) Expansão da interação do IntruderBear: roubo de mel, chance de atacar abelhas e possibilidade de ser repelido. (5) Correção de bugs relacionados a mortes duplicadas causadas pelos intrusos. |
Excelente | (1) Correção de bug no rastreamento do repositório (2) Implementação inicial do IntruderBear (3) Lógica para geração periódica de intrusos (4) Expansão das interações do IntruderBear (5) Correção de mortes duplicadas causadas por intrusos |
Igor e Silva Penha | (1) Participação nas reuniões do grupo, definição e elicitação de requisitos para o projeto. (2) Auxilio no funcionamento da Rainha. (3) Criação do voo nupicial. (4) Realização da rinha de rainhas. (5) Criação da abelha limpadora. (6) Operárias se tornando rainha. (7) Implementação da alimentação e morte por fome da operária e limpadora. (8) Geração de resíduos ao produzir mel. (9) Produção da abelha Inspetora. (10) Ajustes das constantes. (11) Correção de bugs. (12) Documentação. |
Excelente | (2)/(4)/(6) rinha (3) nupicias (5) limpadora (7) fome (8) residuos (9) inspetora (10) constantes (11) bug fixes |
José Luís Ramos Teixeira | (1) Correção do bug de rastreamento residual mesmo com .gitignore , solucionando problemas no repositório.(2) Implementação inicial do agente IntruderBear, criando a mecânica de intrusos que interagem com a colmeia. (3) Desenvolvimento da lógica para geração periódica de intrusos, controlando o limite e a detecção pela Rainha. (4) Expansão da interação do IntruderBear: roubo de mel, chance de atacar abelhas e possibilidade de ser repelido. (5) Correção de bugs relacionados a mortes duplicadas causadas pelos intrusos. (6) Implemento na documentação das interações entre os agentes na colmeia, facilitando o entendimento do funcionamento do projeto. |
Excelente | (1) Correção de bug no rastreamento do repositório (2) Implementação inicial do IntruderBear (3) Lógica para geração periódica de intrusos (4) Expansão das interações do IntruderBear (5) Correção de mortes duplicadas causadas por intrusos (6) Documentação das interações na colmeia |
Leonardo Gonçalves Machado | (1) Sugestão do tema esolhido para desenvolver o projeto. (2) Implementação de funcionalidades da Rainha. (3) Criação do voo nupicial. (4) Criação da rinha de rainhas. (5) Morte e sucessão das rainhas. (6) Implementação do ciclo de alimentação e morte por fome da operária e limpadora. (7) Criação da abelha Inspetora. (8) Ajustes das constantes. (9) Correção de bugs. |
Excelente | Lista de Commits |
Lucas Felipe Soares | (1) Participação na elicitação dos requisitos do projeto. (2) Criação base das abelhas operárias, limpadoras, Zangão e Rainha. (3) Implementação da função de criar mel por parte das operárias, criação de novas abelhas pela abelha rainha e limpeza pelas limpadoras. Criei funções e eventos de mortes e alimentação nesses casos. (4) Auxiliei nos estudos e configurações iniciais do projeto. (5) Documentação geral do projeto e seus requisitos. |
Excelente | Auxiliei em diversas etapas que podem ser visualizadas via histórico do github em commits autorais e com co-author. Também possuo um histórico ativo de participações em nosso grupo e reuniões/Aulas presenciais. A seguir deixarei alguns dos commits mais relevantes de maneira a melhorar a visualização: Primeira Versão funcional do projeto(criação das abelhas rainha, zangão e operária) coleta de pólem. Produção de Mel. Criação da Abelha Limpadora. Documentação dos Requisitos do projeto. Etapa de configuração do Jade |
Marcos Vinícius de Deus | |||
Raquel T. Eucaria Pereira da Costa | (1) Documentação, elicitação dos requisitos do projeto. (2). Tutoriais de instalação para auxílio do grupo () Configuração inicial para produção do projeto. (3) Implementação da condição de parada da produção de mel (4) Interface inicial (5) Ajustes e Correções |
Excelente | (1) (2) (3,4 e 5) |
Zenilda Pedrosa Vieira | (1) Implementação da condição de parada da produção de mel e Criação de uma interface para acompanhar o funcionamento da colmeia (2) Documento inicial de descrição do projeto (3) Documento final de descrição do projeto |
Excelente | Commit (1) Commit (2) Commit (3) |
Acesse o relato de cada membro do grupo referente às lições aprendidas, percepções, contribuições, fragilidades e trabalhos futuros através dos links abaixo:
- Bruno Campos Ribeiro
- Bruno Martins Valério Bomfim
- Heitor Marques
- Igor e Silva Penha
- José Luís Ramos Teixeira
- Leonardo Gonçalves Machado
- Lucas Felipe Soares
- Marcos Vinícius de Deus
- Raquel T. Eucaria Pereira da Costa
- Zenilda Pedrosa Vieira
[1] SERRANO, Milene. Materiais da Disciplina de Paradigmas de Programação. Faculdade de Ciências e Tecnologias em Engenharia (FCTE) – Campus Gama, Universidade de Brasília (UnB). Disponível em: link. Acesso em: 06 jan. 2025.
[2]TELECOM ITALIA LAB. JADE (Java Agent DEvelopment Framework). Disponível em: https://jade.tilab.com/. Acesso em: 27 jan. 2025.
[3] FOUNDATION FOR INTELLIGENT PHYSICAL AGENTS. FIPA specifications. Disponível em: http://www.fipa.org/. Acesso em: 26 jan. 2025.
[4] CIRO-C. Ants-JADE. Disponível em: https://github.com/ciro-c/ants-jade. Acesso em: 17 jan. 2024.