Agentes de software
4.1.
Preliminares
Popularmente, os agentes são confundidos com programas “antropomorfizados”, isto é, assemelhado à forma humana de resolver problemas. Tal não se confirma. Há um equívoco fundamental: comparar um software ao modo humano de resolução de problemas é, por um lado, reducionista quando se imagina que o humano atua de um modo tão previsível e algorítmico e, por outro lado pretensioso, quando se julga que o computador seja capaz de escrever um programa que pode criar e escolher caminhos autoconscientemente e por própria vontade.
PUC-Rio - Certificação Digital Nº 9816122/CA
Os agentes podem fazer muito, mas não fazem tudo pelas pessoas. Um agente é capaz de buscar informações na rede, regular agendas, negociar intenções simples, etc; por isso a sua grande popularidade. Contudo, o desenvolvimento de agentes requer um alto grau de complexidade e de conhecimento. Um projeto pode durar anos em desenvolvimento e não produzir resultados satisfatórios. Pela característica de autonomia relativa, um agente pode produzir erros e as conseqüências são, a princípio, imprevisíveis. O que muda em relação a um software dito convencional é que um agente possui autonomia, é capaz de comunicar-se com outros agentes e com usuários humanos, reage a mudanças no seu ambiente e age sempre buscando atingir uma meta. O paradigma mais usual de desenvolvimento de agentes é conhecido como modelo BDI – Beliefs, Desires and Intentions Model. Um agente, segundo este modelo possui crenças, desejos e intenções e opera sobre uma coleção de regras que define o seu mundo. Inspecionando esse seu mundo por tentativas de validação de suas regras, tudo se passa como se o agente, ao encontrar uma mudança, passe a “acreditar” que algo é verdade e, em reação a essa mudança, passe a “desejar” fazer algo segundo uma “intenção” projetada. Do ponto de vista físico, um agente é um programa de
89 computador, escrito em uma linguagem, e que possui uma coleção de