Quartas à Tarde no DEI 3 de Maio de 2000 Agentes Estrutura da Sessão • Introdução à Tecnologia de Agentes • A Tecnologia dos Agentes aplicada à Robótica Móvel • Possíveis Aplicações de Sistemas Baseados em Agentes • Ferramentas Desenvolvimento de Suporte ao Introdução à Tecnologia dos Agentes Estrutura da Apresentação • Introdução • Conceito de Agente • Arquitectura de um Agente • Sistema Multi-Agente • Uma Aplicação Prática no domínio da Robótica Móvel desenvolvida com base na Tecnologia dos Agentes Introdução Autonomia – “Os computadores obedientes” … como escravos – Novas áreas exigem sistemas capazes de agir autonomamente e em tempo real a situações imprevisíveis. A autonomia é a solução mais apropriada a muitas aplicações. Sistemas de Computação capazes de uma acção autónoma e flexível são conhecidos por Agentes Introdução Sistemas Distribuídos – A complexidade crescente das aplicações torna impossível projectá-las como entidades monóliticas. Além disso elas têm que se ajustar a ambientes computacionais organizados em rede. – A distribuição de competências, de controlo e de informação requer novos mecanismos de resolução de problemas. A Tecnologia dos Agentes, especialmente a dos Agentes Inteligentes, é uma das mais promissoras para o desenvolvimento de sistemas distribuídos e complexos. Introdução • A Robótica • A Internet em geral e a Web em particular são os mais recentes e relevantes desenvolvimentos no mundo da transferência da informação e provavelmente da própria computação. O valor da Web está associado aos bens e serviços que ela oferece, no entanto a tarefa de extrair valor da Web é consumidora de muito tempo limitando a produtividade do utilizador. A tecnologia dos agentes surge como uma solução • A Robótica e impulsionadoras inteligentes a Internet foram as áreas da tecnologia dos agentes Agentes Inteligentes e a Internet Os agentes são entidades de software que assistem pessoas e agem em seu nome. Objectivo:Tornar as nossas vidas mais fáceis e rentabilizar o nosso tempo • Facilitando o uso dos computadores e da Internet • Filtrando e-mail, pesquisando NetNews, lembrando marcações • Pesquisando informação submetendo-a a vários motores de pesquisa e filtrando-a • e-Business ... Agente • Um agente é uma entidade capaz de perceber o seu ambiente através de sensores e agir sobre esse ambiente através de actuadores (Russel, Norvig 1995) • Agentes são componentes persistentes e activas, que percebem, raciocinam, actuam e comunicam (Hunhs, Singh 1997) • Agentes são sistemas que habitam em ambientes complexos, sentem o ambiente e actuam de modo autónomo executando o conjunto de tarefas para que foram construídos (Maes 1990). Agente Um agente é um sistema computacional capaz de uma acção autónoma e flexível num determinado ambiente (Woldridge 1999). Autonomia – capacidade de operar sem intervenção de terceiros exercendo algum tipo de controlo sobre as suas acções. Adaptabilidade – capacidade melhorar o seu desempenho a partir da experiência Flexibilidade – Reactivo, Pró-activo e Social Reactivo – percebe o seu ambiente e responde rapidamente as alterações que nele ocorrem Pró-activo - exibe um comportamento orientado aos seus objectivos, tomando iniciativa e reconhecendo oportunidades Social – tem capacidade de interagir com o ambiente e com outros agentes Arquitectura de um Agente A arquitectura de um agente é o conjunto de módulos componentes, sua organização e interacção com vista a dotar o agente de determinadas funcionalidades. Os três grandes grupos: – Arquitecturas Deliberativas – Arquitecturas Reactivas ( não deliberativas) – Arquitecturas Híbridas – Arquitecturas BDI (Beliefs, Desires and Intentions) Arquitectura Deliberativa Arquitectura Deliberativa Sentir Modelar Planear Sensores Agir Actuadores Ambiente Arquitectura Reactiva Arquitectura Reactiva Situação/Acção Sensores Actuadores Ambiente Arquitectura Híbrida Arquitectura Híbrida Planeador Deliberativo “Sequenciador” Executor Reactivo Actuadores Sensores Ambiente Sistema Multi-Agente (SMA) • SMA é qualquer sistema composto por vários agentes que interagem na prossecução de um objectivo comum. • A potencialidade de um SMA está alicerçada na comunidade de agentes que o constituem e nas respectivas capacidades de coordenação desses vários agentes. Sistema Multi-Agente (SMA) • Os SMA fornecem um outro tipo de comportamento, um comportamento emergente onde as capacidades do sistema superam a soma das capacidades dos agentes. • O modelo de agentes a trabalharem em conjunto surge como uma nova geração de aplicações informáticas avançadas havendo quem o refira como um novo paradigma da Engenharia de Software A Tecnologia dos Agentes e uma sua aplicação à Robótica Móvel Uma Aplicação Desenvolvimento de uma Arquitectura de Controlo Híbrida, Distribuída e Adaptável para um Robô Móvel Conceito de Agente na Aplicação No âmbito desta aplicação o conceito de agente está presente a dois níveis: – Robô Móvel é visto como um Agente Autónomo Situado e Corporizado – O Sistema de Controlo do robô móvel foi desenvolvido como um Sistema Multi-Agente Robôs Móveis • Um robô móvel é por inerência um agente autónomo cujo comportamento é determinado pela interacção dos seus próprios processos com o ambiente em que está integrado, no contexto de execução de uma determinada tarefa . • Garantir uma interacção apropriada é tarefa árdua envolvendo capacidade de lidar com incerteza, de resposta em tempo real, assim como de sentir, agir e planear. • O desenvolvimento de arquitecturas de controlo para robôs móveis é um dos principais desafios da robótica de hoje. Plataforma Móvel-RobuterII • Computador Próprio – 68020 16MHz 1Mbyte RAM – O. S. ALBATROS • Sistema Sensorial – sensores ultrasónicos – sistema pára-choques • Sistema Odométrico • Comunicação a partir de computador anfitrião (via radio) – carregamento de programas – controlo interactivo ARCoS - Autonomous Robot Control System A arquitectura ARCoS desenvolvida tem como objectivo transformar a plataforma móvel num verdadeiro agente autónomo com as seguintes características: – situado e orientado aos objectivos – adaptável e extensível Arquitectura Híbrida, Distribuída e Adaptável Estrutura Global do Robô Autónomo ARCoS Planeadores Base de Conhecimento Mediador Navegador Agentes RA1 Reactivos RA2 RAn Interface ARCoS/Plataforma Móvel Plataforma Móvel Arquitectura Híbrida e Distribuída ARCoS Planeadores Planos Abstractos Camada Deliberativa Navegador Tarefas Camada Reactiva Conselhos RA1 Agentes Reactivos SA RA2 RAn Um Agente Reactivo (RA) • Responsável por uma competência elementar de navegação • Coopera com outros RAs para alcançar competências de navegação mais complexas • Arquitectura Multi-Paradigma – Lógica Difusa e Redes Neuronais Reactividade Controlo Distribuído Adaptabilidade Arquitectura de um Agente Reactivo Memória Associativa PréProcessamento Selector da Acção Estratégia Conhecimento Adquirido Monitor Conhecimento Prévio Controlo Difuso Mecanismo Inferência Difuso Integração e Coordenação das Propostas dos RAs S a í d a M Arquitectura de um Agente Reactivo (RA) Características • Sistema Difuso – Incerteza e Imprecisão • Capacidades de Aprendizagem – Rede Neuronal • Flexibilidade – Conhecimento Prévio – Conhecimento Adquirido da Experiência • Saída Múltipla – Evitar Informação Escondida – Integração e Coordenação com outros RA Conclusões • A arquitectura de controlo desenvolvida transforma uma plataforma móvel num verdadeiro agente móvel autónomo • situado e orientado objectivos • controlo distribuído • adaptável • extensível aos seus