sábado, 19 setembro 9485
 
Protoagentes

Protoagentes

Os protoagentes são programas/componentes de software que executam determinadas tarefas com limitada autonomia. São denominados de protoagentes porque ainda não evoluíram em sua totalidade de modo a trabalharem como agentes independentes. Para compreender melhor a ambição de um protoagente, precisa-se compreender o conceito de agente.

A figura a seguir ilustra os protoagentes da plataforma de desenvolvimento pinhão paraná.
protoagentes da plataforma

Agentes

O termo "agente" descreve uma abstração de software, uma idéia ou conceito, similar aos termos da POO (programação orientada a objetos) como os métodos, funções e objetos. O conceito de um agente fornece uma maneira poderosa de descrever uma entidade de software complexa que é capaz de agir com um certo grau de autonomia de modo a completar tarefas pelo usuário. Entretanto, diferentemente dos objetos que são definidos em termos de métodos e atributos, um agente é definido em termos do seu comportamento. Vários autores fizeram diferentes propostas de definições de agentes, os conceitos mais comumente presentes são:
persistência
(o código não é executado sob demanda, mas sim, executa continuamente e decide por si próprio quando deve executar alguma atividade)
autonomia
(os agentes tem capacidade de selecionar tarefas, priorização, direcionar seu comportamento de acordo com um objetivo, tomar decisões sem intervenção humana)
habilidade social
(os agentes são capazes de acionar outros componentes através de alguma forma de comunicação e/ou coordenação de modo a colaborarem em uma tarefa)
reatividade
(os agentes percebem o contexto nos quais estão operando e reagem a ele adequadamente)
O conceito de agente é mais útil como uma ferramenta para analisar sistemas e não como uma prescrição. Os conceitos mencionados acima frequentemente se relacionam bem com o modelo que naturalmente pensamos sobre tarefas complexas e dessa maneira agentes podem ser úteis para modelar tais tarefas.
A definição completa de agente (de software) pode ser encontrada na wikipédia em: http://en.wikipedia.org/wiki/Software_agent.