|
|
Aula 1 - Agentes:
Introdução
- Existe consenso na comunidade quanto a uma
definição do que seja um agente ? Explique.
- Como poderíamos comparar agentes humanos a
agentes artificiais ? Quais são as similaridades existentes
?
- O conceito de agente é novo, ou
é uma idéia antiga ?
- Como a ficção e a literatura se
utilizaram do conceito de agente ?
- Qual a diferença entre agentes "de
hardware" e agentes "de software" ?
- Escolha o conceito de agente da literatura que lhe
parece ser o mais apropriado, e justifique o porquê de sua
escolha.
Aula 2 -
Propriedades e Aplicações de Agentes
- Explique o que é a
"independência" de uma agente.
- Explique o que é a "rastreabilidade" de um
agente e em que contexto essa propriedade é importante.
- Explique a diferença entre "autonomia" e
"auto-gerenciabilidade" como propriedades desejáveis de um
agente.
- Explique o que significa dizer que um agente
é "reativo".
- Explique o que é
"pró-atividade" e qual a importância que um agente
possua esse atributo.
- Explique o que é a "credibilidade" de um
agente.
- Dê pelo menos um exemplo dos seguintes
motivos para se utilizar agentes:
- Motivos Econômicos
- Motivos Ergonômicos
- Motivos Científicos
- Motivos Computacionais
- Dê um exemplo de uma
aplicação de agentes para uso pessoal.
- Dê um exemplo de uma
aplicação de agentes para o gerenciamento de
redes de computadores
- Dê um exemplo do uso de agentes na busca de
informações e acesso à Internet.
- Dê um exemplo do uso de agentes no
Gerenciamento da Mobilidade
- Dê um exemplo do uso de agentes no
comércio eletrônico.
- Dê um exemplo do uso de agentes em
aplicações estratégicas.
- Dê um exemplo do uso de agentes na
saúde.
- Dê um exemplo do uso de agentes no
gerencimento de finanças pessoais.
- Dê um exemplo do uso de agentes na
mídia.
- Dê um exemplo do uso de agentes no
entretenimento eletrônico.
Aula 3 - Tipos de
Agentes
- Explique os 4 requisitos mínimos para um
sistema natural ou artificial poder ser chamado de um agente.
- Especifique 4 diferentes variáveis que
poderiam caracterizar um sistema de agentes.
- Com relação aos objetivos que
um agente pode ter, qual a diferença entre objetivos
implícitos e objetivos explícitos ? Qual a
diferença no agente, considerando-se estes dois tipos de
objetivos ?
- Explique o que é um agente reflexivo.
- Por que o termo "reativo" pode ser considerado
inadequado para descrever um agente "reflexivo", apesar do mesmo ser
muitas vezes utilizado ?
- Explique a diferença entre um agente
comportamental e um agente reflexivo.
- Explique a diferença entre um agente
comportamental e um agente planejador (deliberativo).
- Explique o porquê de se ter
aperfeiçoado os agentes planejadores, de forma a originar os
agentes emocionais. Qual a diferença entre eles ?
- Como podemos entender o conceito de
"emoção" em termos de teoria de agentes
?
- Explique o que são agentes comunicativos e
como eles podem ser comparados com agentes planejadores.
- Explique qual a diferença entre agentes
comunicativos e agentes semióticos
Aula 4 - Agentes e
Objetos
- Explique a diferença entre os conceitos de
Agentes e Objetos. Agentes podem ser objetos ?
- Explique o que são modelos de
computação e dê dois exemplos distintos
de modelos de computação.
- Explique a diferença entre modelos de
computação e modelos de
interação
- Explique a diferença entre os modelos de
interação dataflow, passagem de mensagem e busca
por mensagem. Dê um exemplo de cada um deles.
- Que tipo de modelo de interação
se têm em cada um dos seguintes casos:
- Uma Rede Neural
- Um controlador Fuzzy
- Um sistema de objetos distribuídos
utilizando CORBA
- Um sistema de objetos distribuídos
utilizando DCOM
- Javaspace
- Linda
- Qual a vantagem que se tem quando se passa de um
modelo de interação do tipo passagem de mensagem
para o modelo do tipo busca por mensagens ?
- Explique a diferença entre os modelos de
comunicação entre processos do tipo Socket e os
Objetos distribuídos.
Aula 5 - Agentes de
Internet
- Explique o que são agentes de internet.
- Explique qual é a diferença
entre os termos web robot, spiders, web walkers e wanderers.
- Dê 4 diferentes
aplicações para web robots.
- Por que um web-robot mal configurado pode gerar
problemas ? Dê 3 exemplos.
- Explique o que é um acesso do tipo
"rapid-fire". Como fazer para evitar que um web-robot faça
esse tipo de acesso ?
- Explique como resolver o problema de URLs
sintaticamente equivalentes.
- Que tipo de problemas uma página
dinâmica pode oferecer a um web-robot ?
- Explique o que são os "Guidelines
for Robot Writers". Dê o exemplo de 3
recomendações colocadas nestes
guidelines.
- Explique o que é como funciona o SRE
(Standards for Robot Exclusion".
- Dê o exemplo de 3 elementos não
contemplados no SRE e que seriam importantes.
- Explique qual a importância do XML para os
web-robots.
- Dê 3 exemplos de agentes de internet que
não sejam web-robots.
Aula 6 - Agentes de
Interface
- Explique o que é a metáfora do desktop para interfaces humano-computador.
- Explique o que é a metáfora do antropomorfismo para interfaces humano-computador.
- Explique o que são agentes de desktop.
- Dê o exemplo de 4 características de um agente de desktop.
- Escolha 3 perguntas dentre as perguntas não respondidas para agentes de desktop e tente desenvolver uma resposta.
- Qual a importância do fator "credibilidade" em agentes de interface ?
- Por que normalmente quando se implementa um agente de
interface, se dissocia a "inteligência" do agente de sua
apresentação física ?
- Explique o que é o "perfil" de um agente de
interface e por que é importante que se construa um para um
agente de interface ?
- Dê 3 papéis que um agente de interface pode
assumir e forneça exemplos de cada um deles, em termos de
aplicações finais.
- Qual a importância da relação de
emoções com credibilidade. Explique como podemos utilizar
esse conhecimento em agentes de interface.
- Explique o que é a questão da "gradabilidade" das emoções em agentes de interface.
- Explique, por meio de exemplos concretos, o que são "emoções verbais".
- Explique o que é "computação afetiva"
e por que isso é importante na construção de
agentes de interface.
- Explique a diferença entre fatores físicos e fatores cognitivos de uma emoção.
- Explique o que é um avatar, e qual sua importância em agentes de interface.
- Explique o que é conhecimento apraisivo e qual sua importância no desenvolvimento de agentes.
- Explique o que é a teoria de "inteligência
emocional" e como isso afeta a construção de
agentes.
- Com relação à
implementação de agentes de interface, quais as duas
grandes áreas em que podemos dividí-la ? Quais seriam os
conhecimentos necessários para contemplar cada uma dessas duas
áreas ?
Aula 7 - Agentes Móveis
- Explique por que a mobilidade pode ser vista como uma propriedade ortogonal de um agente.
- Explique por que a falta de mobilidade não pode ser vista necessariamente como uma fraqueza de um agente.
- Explique a diferença entre mobilidade de estado e mobilidade de código em sistemas de agentes móveis.
- O que é um agente móvel ?
- Descreva e explique 4 das boas razões para utilizar agentes móveis.
- Explique por que o uso de agentes móveis pode reduzir o tráfego na rede.
- Explique por que o uso de agentes móveis pode
resolver o problema de latência na rede, em sistemas
críticos de tempo real.
- Explique por que a capacidade de encapsular protocolos de um agente móvel pode ser útil em um sistema de agentes.
- Explique por que a habilidade de um agente móvel em
atuar de maneira assíncrona e autônoma pode ser
útil em um sistema de agentes.
- Explique por que a capacidade dos agentes móveis de
se adaptar dinamicamente pode ser útil em um sistema de
agentes.
- Explique por que a natural heterogeneidade dos agentes
móveis pode ser uma boa razão para utilizá-los, na
construção de um sistema de agentes.
- Explique como um sistema a base de agentes móveis pode ser robusto e tolerante a falhas.
- Explique os três paradigmas de
programação em redes, e por que o paradigma de agentes
móveis pode ser mais interessante que os outros dois.
- Dê exemplos do uso de cada um dos três paradigmas de programação em redes.
- Desenvolva três exemplos possíveis de aplicações de agentes móveis.
- Explique por que além do Java, a grande maioria dos sistemas de agentes móveis é desenvolvida em TCL/TK.
- Explique o que é o MASIF.
Aula 8 - Comparação entre Tecnologias de Agentes Móveis
- Explique por que o Java é uma das linguagens mais
utilizadas para o desenvolvimento de plataformas de agentes
móveis.
- Explique o que é o Aglets Workbench, e qual o estado deste projeto hoje.
- Explique qual a relação entre objetos das classes "Aglet" e "AgletProxy" no Aglets Workbench.
- Explique os três tipos de mensagens possíveis de serem trocadas entre Aglets, na plataforma Aglets Workbench.
- Explique o que é o Concordia, e qual o estado deste projeto hoje.
- Explique quais eram os maiores ploblemas no desenvolvimento de sistemas utilizando o Concordia.
- Explique o que é o Odissey e qual o estado deste projeto hoje.
- Explique por que a forma padrão para o envio de
mensagens no Voyager é superior a das plataformas Aglets,
Odissey e Concordia.
- Faça uma comparação entre os modos de mensagens possíveis nas plataformas Aglets e Voyager.
- Faça uma comparação entre as formas de
criação de novos agentes nas plataformas Aglets e Voyager.
- Explique o que é a mobilidade de objetos, e como as plataformas Aglets e Voyager tratam esta questão.
Aula 9
- O Toolkit Voyager para Agentes Móveis
- Por que podemos dizer que o Voyager é mais do que simplesmente uma plataforma para agentes móveis ?
- Explique como o Voyager utiliza o conceito de interface do Java e o leva ao extremo ?
- Explique o que é um "Factory" no Voyager e para que ele serve.
- Explique o que é um "Proxy" no Voyager e para que ele serve.
- Por que precisamos da classe "Namespace" do Voyager ?
- Explique o que é "agregação dinâmica" e como ela é implementada no Voyager.
- Explique o que é um "Facet" no Voyager para que ele serve.
- Explique como o Voyager implementa mensagens síncronas e assíncronas.
- Explique como funciona o mecanismo de "publish-subscribe" no Voyager.
- Explique a diferença no tratamento entre objetos móveis e agentes móveis no Voyager.
- Explique os mecanismos por meio dos quais se pode implementar mobilidade de código no Voyager.
Aula 10 - Sistemas Multi-Agentes e Linguagens de Agentes
- Ofereça 5 argumentos que justifiquem o desenvolvimento de sistemas multi-agentes.
- Explique a diferença entre cooperação e colaboração em sistemas multi-agentes.
- Explique a diferença entre coordenação
centralizada e coordenação distribuída em sistemas
multi-agentes.
- Explique a diferença entre agentes especializáveis e especializados em sistemas multi-agentes.
- Explique por que a comunicação entre agentes
pode ser um problema no desenvolvimento de sistemas multi-agentes, e
apresente a solução que é utilizada nestes
casos.
- Explique o que é uma "ontologia" no contexto de
sistemas multi-agentes, e qual a sua estrutura. Ilustre sua
explicação com um exemplo prático.
- Explique o que é a teoria dos atos comunicativos (ou atos de fala).
- Como são interpretados os atos comunicativos na
linguagem humana ? Como isso é feito na
comunicação entre agentes ?
- Explique quais os dois tipos de linguagens que são
utilizadas para comunicação entre agentes, qual a
relação entre eles e dê exemplos de cada um
deles.
- Explique o que é Interlíngua e qual sua utilidade.
- Explique o que é uma performativa em uma linguagem de comunicação entre agentes.
- Explique quais são os principais problemas com o KQML.
- Explique o que é FIPA, e quais
recomendações ela propõe para a
comunicação entre agentes.
- Faça uma comparação entre o FIPA-ACL e o KQML apontando as vantagens/desvantagens de cada um.
Aula 11 - Engenharia de Software Orientada a Agentes
- Explique o que é a "Engenharia de Software
Orientada a Agentes" e qual seu estado da arte. Como essa se diferencia
da "Engenharia de Software Orientada a Objetos" ?
- Quais as vantagens e desvantagens de se utilizar uma metodologia de desenvolvimento de software orientada a agentes ?
- Explique o que é a AUML. A AUML é uma metodologia orientada a agentes ?
- Qual a relação da AUML com a UML ?
- Explique o que é a Metodologia MASE.
- Explique o que é a Metodologia Prometheus.
- Explique o que é a Metodologia Tropos.
- Considerando a abrangência do processo de
desenvolvimento, por que a Metodologia Tropos pode ser dita mais
abrangente do que o MASE e o Prometheus ?
- Explique qual é a idéia por trás da Metodologia Unificada.
Aula 12 - Agentes Autônomos Inteligentes e Criaturas Artificiais
- Como os agentes autônomos inteligentes se inserem na história da Inteligência Artificial ?
- Explique o que é situabilidade e qual sua importância na compreensão do fenômeno cognitivo.
- Explique o que são "Animats" e caracterize uma área de pesquisa que os estude.
- Explique o que são as criaturas de Braitenberg e
qual sua importância no estudo de agentes autônomos
inteligentes.
- Faça uma comparação entre ambientes
reais e/ou simulados em experimentos com agentes autônomos
inteligentes.
- Explique o que é diferente e o que é
semelhante quando se considera ambientes reais ou ambientes simulados
no estudo de criaturas artificiais.
- Dê exemplos práticos dos objetivos que se almeja atingir no estudo de agentes autônomos inteligentes.
- Explique o que é o Khepera, e qual sua importância no estudo de agentes autônomos inteligentes.
- Explique o que é o Webot e quais são as
vantagens e/ou desvantagens em relação a outras
plataformas de estudo de agentes autônomos inteligentes.
- Com relação a experimentos de
navegação autônoma, explique as diferenças
entre os comportamentos puramente reativos e os comportamentos baseados
em modelo do mundo.
- Dê 3 exemplos de métodos reflexivos para o controle de agentes autônomos inteligentes
- Dê 3 exemplos de métodos de
resolução com modelo do mundo para o controle de agentes
autônomos inteligentes.
- Explique a idéia principal por trás do
método de campos potenciais para navegação
autônoma.
- Explique a diferença entre potenciais atrativos e
potenciais repulsivos em métodos de campos potenciais em
navegação autônoma.
- Explique o que são criaturas artificiais e caracterize essa área de pesquisa.
- Explique o que são criaturas darwinianas, segundo Dennet e descreva seu mecanismo de funcionamento básico.
- Explique o que são criaturas skinnerianas, segundo Dennet e descreva seu mecanismo de funcionamento básico.
- Explique o que são criaturas popperianas, segundo Dennet e descreva seu mecanismo de funcionamento básico.
- Explique o que são criaturas gregorianas, segundo Dennet e descreva seu mecanismo de funcionamento básico.
- Explique qual a contribuição de Hull para o estudo de criaturas artificiais.
- Explique a diferença entre módulos
comportamentais, módulos de aprendizagem/adaptação
e módulos motivacionais, segundo Balkenius, para a
composição de criaturas artificiais.
- Explique o que é um "drive" e como este se diferencia de um "incentivo" em módulos motivacionais.
- Descreva os 4 comportamentos elementares sugeridos por Balkenius para criaturas artificiais.
- Explique o que é aprendizagem categorial, segundo Balkenius, e qual sua utilidade em criaturas artificiais.
- Explique a diferença entre aprendizado imediato e aprendizado por reforço repetitivo, segundo Balkenius.
- Com relação às
contribuições originadas da psicologia animal, explique o
que é a noção de preparação para o
aprendizado.
- Explique o que é o comportamento de
redução de drive. Como se pode comparar esse
comportamento com um comportamento estímulo-resposta, por
exemplo ?
- Explique a diferença entre aprendizagem prematura, síncrona ou tardia em criaturas artificiais.
- Explique por que pode ser difícil avaliar a qualidade de uma pesquisa em agentes autônomos artificiais.
- Dê 4 exemplos de aplicações reais de agentes autônomos inteligentes.
Aula 13 - Agentes com Emoções e Agentes BDI
- Explique o que é o modelo OCC e explique onde o mesmo pode ser aplicado.
- Explique a diferença entre desejo, merecimento e apelo no potencial das emoções no modelo OCC.
- Explique a diferença entre o potencial detonador da
emoção, o limiar para a detonação da
emoção e a intensidade para a emoção no
modelo OCC.
- Explique a diferença entre emoção e
sentimento, e como estes estão relacionados, de acordo
com Damásio.
- Explique os dois princípios básicos que norteiam o modelo de emoções de Damásio.
- Explique o que são emoções no modelo
de Sloman, e como este conceito se diferencia do conceito de
emoções em Damásio.
- Explique a diferença entre motivos e emoções no modelo de Sloman.
- Comente sobre a abrangência do modelo de computação afetiva de Picard.
- Como Picard sugere que se avalie o desempenho emocional de um sistema ?
- Explique os níveis de representação baixo, médio e alto para emoções segundo Picard.
- Indique os problemas apontados por Blumberg que devem ser
respondidos quando se enseja o desenvolvimento de uma criatura
artificial.
- Explique o modelo de emoções adotado por Blumberg em sua aplicação "Silas".
- Descreva em termos gerais como funciona a aplicação "Silas", desenvolvida por Blumberg.
- Explique a diferença entre motivações, drives e emoções segundo o modelo de Cañamero.
- Explique o que são e qual a origem dos agentes BDI.
- Explique por que as abordagens atuais em agentes BDI pode ser considerada por demais limitada.
Aula 14 - Redes de Agentes e Simulação de Processos Organizacionais
- Dê 3 exemplos de usos possíveis de redes de agentes.
- Explique a estrutura de um agente semiônico.
- Explique as 5 fases do comportamento de um agente semiônico.
- Explique por que os agentes fonte ou agentes vertedouros são casos especiais de agentes semiônicos.
- Explique a diferença entre portas públicas e portas privadas em redes de agentes semiônicos.
- Explique o que é o modo de acesso em um agente semiônico.
- Explique o que é um Processo Organizacional, e qual
o benefício de se usar simulações para estes.
- Dê 3 exemplos de processos organizacionais que poderiam ser simulados com redes de agentes.
- Escolha um processo organizacional com 5 tipos diferentes
de agentes/recursos. Defina um conjunto de lugares (mínimo de 5
e máximo de 10) onde estes agentes poderiam atuar, e desenhe a
topologia de uma rede de agentes que modela o processo organizacional
que v. escolheu.
Aula 15 - O Uso do SNTookit
- Explique qual o uso das classes IntHolder e DoubleHolder no SNToolkit
- Explique para que serve a função setBid no SNToolkit
- Em que lugar se utiliza a função access_<xxx> no SNToolkit ?
- Explique a diferença entre as funções get_<xxx> e read_<xxx> no SNToolkit.
- Explique, com um caso prático, para que serve a
função setInitialBalance no SNToolkit. Onde essa
função deve ser utilizada ?
- Explique para que serve a função
setMaxFireCount no SNToolkit. Onde essa função deve ser
utilizada ?
- Explique para que servem os "Viewers" no SNToolkit.
- Explique o que são as funções "match"
e "perform" no SNToolkit, e em que situação elas
são utilizadas.
|