Você está na página 1de 2

UNIVERSIDADE FEDERAL DE SERGIPE

DEPARTAMENTO DE COMPUTAÇÃO
INTELIGENCIA ARTIFICIAL

RAUL SILVEIRA VILAR


HERBERT CHAGAS CARVALHO
JOSE ALAN DA SILVA
BRUNO MACEDO
WANDER AQUINO

RELATÓRIO I:
Trivial Agent

São Cristóvão - SE
2018
a) O que pode se concluir de este exemplo utilizando o Agente
“TableDrivenVacuumAgent()”? O que é considerado na medida de performance
neste Agente?

R: Seu ambiente é gerado randomicamente, sua função execute é bastante


importante pois é o que mede sua performance. Quando ele entra um local limpo,
apenas muda a direção e diminui 1 de sua performance, quando encontra sujeira
ele suga e adiciona 10 a sua performance. Suas ações são a medida, não é
possível informar o número de passos.

b) Faz sentido este tipo de agente “TableDrivenVacuumAgent()” ? Considere a


discussão do autor do livro sobre este tipo de agente e observe o conteúdo desta
classe para responder a esta pergunta.

R. Não consideramos boa por ter que mapear todas as situações, sendo
necessário muita memória para sua execução e por ele não ser autônomo.

c) Observe o conteúdo da classe “ReflexVacuumAgent” e execute o ambiente com


este agente. Compare a saída no terminal (output) deste agente e compare com
a saída do agente anterior “TableDrivenVacuumAgent()”, se preferir realize um
Debug e descreva suas conclusões, assim como compare suas medidas de
Performance.

R. Ao comparar a medida de performance utilizada juntamente com o número


de passos que podemos atribuir a qualquer um desses agentes, vemos que o
TableDrivenVacuumAgent sempre terá no máximo 3 passos pois todas as ações
possíveis estão mapeadas, fazendo assim, uma condição de parada pois temos
certeza do que já aconteceu. Já no ReflexVacuumAgent não existe esse
histórico, fazendo com que ele faça o número de movimentos que foi atribuído
pelo usuário mesmo que seu ambiente esteja limpo

d) Realize a mesma atividade da letra d) com a classe


“SimpleReflexVacuumAgent()”.

R. No SimpleReflexVacuumAgent() possui características similares ao


ReflexCacuumAgent() a principal diferença é que foi criado uma tabela hash,
onde é feito o cadastro de regras do problema. A partir de sua percepção é
definida a ação na tabela hash.

Você também pode gostar