Você está na página 1de 2

UTFPR - CAMPUS PONTA GROSSA - COCIC

Disciplina de Lógica para Computação – 2023.1


Avaliação Continuada 13 – Implementação de Agente em JaCaMo
Professor: Gleifer Vaz Alves

Descrição do Trabalho
Considerando o seguinte cenário, implemente um sistema multiagente usando a linguagem JaCaMo
para resolver o problema proposto.
Cenário: um agente veı́culo autônomo (VA) deve passar por um cruzamento urbano de ruas,
conforme ilustrado na Fig. 1.

Figura 1: Modelo do Ambiente

Neste cruzamento há um segundo agente, o controlador de trânsito (CT), este agente é responsável
por verificar o cruzamento e informar o VA se o cruzamento está livre ou ocupado. Assim, o agente
VA só poderá passar pelo cruzamento se o mesmo estiver livre. No caso, livre significa que não há
nenhum usuário de rodovia no cruzamento (aqui usuário de rodovia representa pedestres, ciclistas e
similares).
Especificamente os dois agentes têm as seguintes funcionalidades considerando a estrutura de um
modelo BDI.

• VA (agente veı́culo autônomo):

Crenças: veı́culo está posicionado no cruzamento.

Planos:

caso o cruzamento esteja livre e o veı́culo esteja no cruzamento então o veı́culo poderá ingressar
e passar pelo cruzamento.

caso o cruzamento esteja ocupado e o veı́culo esteja no cruzamento então o veı́culo deverá parar
no cruzamento, aguardar até conseguir passar quando o cruzamento estiver livre.

• CT (agente controlador):
1
Crenças (possı́veis): cruzamento está livre; cruzamento está ocupado.

Objetivo: verificar o cruzamento.

Planos: disparar o envio de mensagens conforme o contexto e a descrição dada a seguir.

Mensagens:

enviar mensagem ao agente VA que o cruzamento está ocupado.

enviar mensagem ao agente VA que o cruzamento está livre.

Detalhes de implementação:

1. Sugestão: inicie o agente CT com a crença de cruzamento ocupado. Lembre-se que o agente pode
remover ou adicionar crenças em tempo de execução e planos podem ser acionados novamente.

2. Coloque ações internas para imprimir as ações realizadas pelo agente, já que neste trabalho não
está sendo usado o ambiente para programação de artefatos.

3. É necessário implementar usando o arquivo .JCM e também o arquivo .ASL, se preferir cada
agente pode está em arquivos .ASL separados.

4. Para entregar a atividade é necessário também entregar capturas de tela que mostrem o resultado
da execução do sistema multiagente. Tenha certeza de colocar capturas de tela suficiente para
mostrar todos casos possı́veis.

O que deve ser entregue e enviado via Moodle?


1. A pasta completa com todos arquivos da Implementação, incluindo principalmente os arquivos:
.JCM e .ASL.

2. Capturas de tela que comprovem (inclusive com a data) a devida e correta execução dos agentes.

Obs.: entrege pelo menos três capturas de tela, todas em formato .png, .jpg ou .pdf.

3. Compactar todos arquivos em um único arquivo com o seguinte nome:


LOG-AC13-Nome-1-Nome-2

Data de entrega: 27/junho/2023.

Obs.: a atividade pode ser feita em dupla, neste caso lembre-se de colocar o nome dos integrantes
da equipe.

Você também pode gostar