2ª Prova - 11 de Fevereiro de 2000

- Autorizada a consulta de documentação pessoal;
- Tempo de realização da prova (parte teórica + parte prática): 2 horas;
- Utilize folhas separadas para cada parte.

- Considere uma aplicação na qual um agente necessita de informação
oriunda de diversos sistemas computacionais, processando essa informação
de modo a produzir resultados.
a) Em que situações haverá uma maior eficiência se o agente for móvel,
podendo deslocar-se para outros sistemas computacionais? Em que situações
não será eficiente a mobilidade de tal agente?
b) Que limitações adicionais se poderão pôr relativamente à mobilidade
de tal agente?
- Considere um Agente Inteligente para comércio electrónico, o qual
interage com um utilizador e com outros agentes (por exemplo: vendedores).
Indique que aplicações possíveis poderão ter os métodos de aprendizagem
automática a um agente desse tipo?
- Em grande parte dos sistemas multi-agente, os agentes representam recursos
(por exemplo: robot, empresa, etc. ...), tarefas (por exemplo: encomendas) e
fornecimento de informação (por exemplo: agente informador de condições
climatéricas). Que outros tipos de agentes poderiam existir quanto ao tipo
de função desempenhada (para além de recursos, tarefas e fornecimento de
informação)? Dê exemplos.

Um processo de escalonamento de reuniões entre funcionários duma empresa
caracteriza-se por:
- Ser iniciado por um funcionário (iniciador) que contacta vários outros,
indicando:
- O objectivo da reunião;
- Os funcionários solicitados;
- A provável duração;
- Data-hora limite da reunião;
- Uma data-hora possível;
- Cada funcionário solicitado, responde ao funcionário iniciador
concordando com a proposta ou indicando data-hora's alternativas;
- O funcionário iniciador escolhe do conjunto de contra-propostas
recebidas, aquela que melhor se adapta aos seus objectivos ou com maior
potencial de ser aceite. Essa data-hora é proposta aos funcionários
solicitados;
- O processo repete-se até que todos concordem com a data-hora proposta
pelo funcionário iniciador. Pretende-se desenvolver um sistema baseado em
agentes inteligentes que modelize este processo.
- Identifique a informação e/ou estruturas de dados de que o funcionário
necessita para processar as solicitações de outros funcionários.
- Usando uma nomenclatura semelhante a um autómato finito (usada durante as
aulas), especifique o processo descrito, promenorizando o conteúdo das
mensagens e os acessos às estruturas de dados de cada entidade.
- Implemente numa linguagem à sua escolha, o processo de recepção e
processamento das mensagens de solicitação de reunião descritas.
Considere que existem previamente definidas as seguintes funções:
- data_hora_valida(Data_Hora,Duração) -> válida | inválida;
- alternativas(Data_Hora,Duração,Data_Hora_Limite) ->
[Data_Hora];
- Que tipo de problemas podem surgir com o processo descrito ao nível de
eficiência e eficácia. Sugira alternativas se achar oportuno.

Última actualização: 19-01-2001
