410 likes | 474 Views
“ A Convergência entre a Web dos Usuários Humanos e a Web dos Agentes de Software: a Engenharia e os Impactos dos Sistemas Multi-Agentes”. Carlos J. P. de Lucena J ulho de 2002. Transição para uma indústria de conteúdos. Indústria de Mídia Produção conteúdos Empac. conteúdos Mídia.
E N D
“A Convergência entre a Web dos Usuários Humanos e a Web dos Agentes de Software: a Engenharia e os Impactos dos Sistemas Multi-Agentes” Carlos J. P. de Lucena Julho de 2002
Transição para uma indústria de conteúdos Indústria de Mídia Produção conteúdos Empac. conteúdos Mídia Ind. de Telecom Transporte Operadores de redes Telecom Ind. Computadores Tecn. usuário final hardware / software Computadores Até 1994/95 Convergência Mídia conteúdo Telecom- municações Computadores Agora Carlos J. P. de Lucena
Cadeia de Valor nas Indústrias de serviços Interativos Criação de Conteúdo Empacot/ Conteúdo Distribuição Conteúdo • Conteúdo é o ativo mais valioso na cadeia de valor • Competição no nível de conteúdo vai aumentar • Os níveis de conteúdo e infraestrutura são permeáveis Conteúdo Acesso ao Mercado Transporte Suporte Disponibilização Interface e Sistemas Infraestrutura Carlos J. P. de Lucena
Convergência de Conteúdos na Web • Convergência de conteúdos: “One Network, OneBox” • Desafios para o usuário da Web: • Descoberta e gestão de conteúdos na Internet • Operação e gestão de novas aplicações baseadas em conteúdos multi-mídia (e-commerce, e-learning etc) Carlos J. P. de Lucena
Usuários e Atividades na Web podem receber suporte automatizado • Exemplos: • Na manipulação de conteúdos na Internet: filtragem e sistematização de informação • No monitoramento e gestão em tempo real de redes de telecomunicações • No comércio eletrônico e em mercados virtuais onde “compradores” e “vendedores” negociam em nome de seus usuários • Etc... Carlos J. P. de Lucena
Aspectos comuns às aplicações • Distribuição Inerente Dados e informações a serem processados têm distribuição: espacial, temporal, semântica e funcional. • Complexidade Inerente São grandes demais para serem tratadas por um único sistema centralizado em função das tecnologias disponíveis de hardware e software. Carlos J. P. de Lucena
Sistemas Multi-Agentes: SMAs • Agentes de software são programas para os quais é possível delegar (aspectos de) uma tarefa. Eles se diferenciam do software “tradicional” por serem personalizados, executarem continuamente e serem semi-autônomos. • Essas qualidades são particularmente úteis no ambiente rico em informações e processos das aplicações baseadas na Web. Carlos J. P. de Lucena
SMA’s em Comércio Eletrônico • O comércio eletrônico compreende uma ampla quantidade de questões que incluem: segurança, reputação, legislação, pagamento, publicidade, catálogos online, intermediários, gerência de lojas etc. • Tecnologias de agentes podem ser aplicadas em qualquer dessas áreas sempre que um comportamento semi-autonômo, personalizado e de execução contínua for desejável. Carlos J. P. de Lucena
Modalidades de SMA’s para Comércio Eletrônico • Sistemas de Recomendação • Enfoques para Interface Humano-Computador • Mecanismos de Negociação • Infra-estrutura, Linguagens, Protocolos Carlos J. P. de Lucena
Impactos Economicos e Sociaisde SMA’s em Comércio Eletrônico • Interconectividade da WWW e os agentes no comércio eletrônico mudarão as regularidades e os fenômenos na áreas de negócios e comércio. • Os agentes podem trabalhar a qualquer hora e a partir de qualquer lugar no ciberespaço. Todo o processo de uma transação pode ter lugar instantaneamente. Carlos J. P. de Lucena
Preparando a Web para Aplicações Máquina a Máquina. • A Web Semântica na visão Tim Berners-Lee (WWW, URI’s, HTTP e HTML). • Além do W3C, MIT etc: infraestrutura para o próximo estágio do ciclo de vida da Web. Carlos J. P. de Lucena
Expressando Conhecimento • A Web para representação de documentos para uso por seres humanos versus a representação de dados e informação para serem processados automaticamente. • A Web Semântica dará estrutura ao conteúdo de páginas Web criando um ambiente propício para agentes de software. Carlos J. P. de Lucena
Expressando Conhecimento • A propriedade essencial da Web é universalidade (“anything can link to anything”). • A Web Semântica não é uma Web separada e sim uma extensão da Web atual que permitirá que computadores e pessoas possam trabalhar cooperativamente. Carlos J. P. de Lucena
Representação do Conhecimento • Sistemas atuais para representação do conhecimento são centralizados exigindo que todos compartilhem as mesmas definições de conceitos • Cada qual tem um conjunto diferente de regras para fazer inferências sobre os seus dados. Carlos J. P. de Lucena
Representação do Conhecimento • O desafio da Web Semântica é prover uma linguagem que expresse tanto os dados quanto as regras para raciocinar sobre os dados • Regras de qualquer sistema de representação de conhecimento existente devem poder ser exportadas para a Web. Carlos J. P. de Lucena
XML • Tecnologias disponíveis para Web Semântica: a eXtensible Markup Language (XML) e o Resource Description Framework (RDF). • XML permite que cada um crie seus próprios tags para anotar páginas Web ou seções de texto em uma página. Carlos J. P. de Lucena
XML • Scripts, ou programas, podem fazer usos de tags, mas o autor dos scripts precisa saber para que o autor da página usa os tags. • Em resumo, XML permite que usuários adicionem uma estrutura arbitrária a seus documentos mas não diz nada sobre o que as estruturas significam. Carlos J. P. de Lucena
RDF • O significado é expresso em RDF como um conjunto de triplas onde cada uma delas representa o sujeito, o verbo e o predicado de uma sentença elementar. • As triplas podem ser escritas usando-se tags XML. Em RDF um documento expressa que coisas particulares (pessoas, páginas Web etc) têm propriedades (tais como “é parente de”, “é autor de”) com certos valores (outra pessoa, outra página Web etc). Carlos J. P. de Lucena
RDF • Sujeito, verbo e objeto são identificados por um Universal Resource Identifier (URI) o que permite a definição de um novo conceito através da definição de uma URI para algum ponto da Web. • As triplas de RDF formam webs de informação sobre coisas relacionadas. Carlos J. P. de Lucena
Ontologias • O terceiro componente básico da Web Semântica são as ontologias. • Em Filosofia uma ontologia é uma teoria sobre a natureza da existência, sobre que tipos de coisas existem. Carlos J. P. de Lucena
Ontologias • Em Inteligência Artificial a palavra foi co-optada para significar um documento ou arquivo que define formalmente a relação entre termos. • “ The specification of a conceptualization” (Gruber 1993) Carlos J. P. de Lucena
Ontologias • Uma ontologia para a Web inclui uma taxonomia e um conjunto de regras de inferência. • A taxonomia define classes de objetos e relações entre elas. • As regras de inferência fornecem o aparato dedutivo. Carlos J. P. de Lucena
Ontologias • Ontologias podem aperfeiçoar o funcionamento da Web. • Ex.: a busca pode procurar apenas por páginas que se referem a um conceito preciso ao invés de todas as que usam palavras-chave potencialmente ambíguas. Carlos J. P. de Lucena
Ontologias • Aplicações mais avançadas usam ontologias para relacionar a informação em uma página às estruturas de conhecimento associadas e suas regras de inferência. • Por exemplo, uma página marcada para tal uso está disponível em: http://www.cs.umd.edu/~hendler. • Para uso por computadores a página está conectada a uma ontologia que define informação sobre departamentos de Ciência da Computação. Carlos J. P. de Lucena
Ontologias • Vários grupos de pesquisa vêm desenvolvendo linguagens para exprimir expressões ontológicas na Web (http://www.daml.org/links) • DAML+OIL: baseada em RDF • Detalhes sobre linguagens e um repositório com um grande número de ontologias pode ser encontrado em http://www.daml.org/ Carlos J. P. de Lucena
<HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> <HTML> <a href></a> ... </HTML> Uma Nova Web Web Semântica <XML> <nome> <desc>... </XML> <RDF> <inf> <doc>... </RDF> <DAML> <nome> <desc>... </DAML> <SHOE> <inf> <doc>... </SHOE> - complexo + inteligente + complexo - inteligente Carlos J. P. de Lucena
Processamento com Agentes na Web semântica • Poderá envolver a criação de uma “cadeia de valor” na qual “sub-agregados” de informação serão passados de um agente para outro • cada um deles “adicionará valor” para a construção do produto final requisitado pelo usuário. Carlos J. P. de Lucena
Uma Visão sobre o Futuroda Computação • “Programas distribuídos interagindo com recursos baseados na Web não-locais (ex.: Web services) podem se tornar a forma dominante pela qual computadores interagirão com seres humanos e outros computadores e serão a forma primária de computação em um futuro não distante” (J. Hendler) Carlos J. P. de Lucena
Direções para a Engenharia de Software • A engenharia de software das aplicações baseadas na Web vai evoluir para lidar com um novo tipo de infraestrutura (orientada para semântica). Os processos de desenvolvimento irão se basear fortemente em sistemas multi-agentes e suas ontologias associadas (C. J. Lucena). Carlos J. P. de Lucena
Cenário Atual • Sistemas de Grande Porte • E-Commerce • Aplicações abrangendo várias empresas • Ambientes de desenvolvimento virtuais • Desafios • Heterogeneidade • Escalabilidade • Adaptabilidade • Confiabilidade • Reutilização • Manutenibilidade Carlos J. P. de Lucena
http://www.teccomm.les.inf.puc-rio.br/SoCagents SOC + MAS • TecComm Group/LES • 6 Doutorandos • 5 Mestrandos • Tópicos • SMA • Técnicas SoC: AOP e Reflexão Computacional • Publicações Carlos J. P. de Lucena
SELMAS 2002 www.teccom.les.inf.puc-rio.br/selmas2002 Carlos Lucena (PUC-Rio) Alessandro Garcia (PUC-Rio) Jaelson Castro (UFPE) Andrea Omicini (University of Bologna) Franco Zambonelli (University of Modena and Reggio Emilia) Maio 19, 2002 Carlos J. P. de Lucena
AGENTES Agentes e Engenharia de Software Nova Plataforma de Desenvolvimento Tecnologias Emergentes Análise de Requisitos Projeto Arquitetural Detalhado ENGENHARIA DE SOFTWARE Codificação Teste E-Commerce Manutenção Abstrações Soluções Integradas OBJETOS Software de Grande Porte FUNÇÕES Ambientes de Desenvolvimento Carlos J. P. de Lucena
Agentes e Engenharia de Software Simulações e Jogos Ambiente Artificial Simulado • Agentes não é uma nova idéia, mas em ES... • Propriedades Intra-agente • Estado Mental • Autonomia • Adaptação • Aprendizagem • ... • Propriedades Inter-agentes • Coordenação • Mobilidade • Comportamente Emergente • ... Sistemas de Grande Porte E-commerce, E-learning,... Web Semântica Environment: Web/Internet “A Big ORB” Carlos J. P. de Lucena
Objetivo 1: ES-Objeto x ES-Agente Métodos Princípios Atributos de Qualidade Técnicas Ferramentas Análise de Requisitos Projeto Arquitetural Detalhado Estudos Empíricos ENGENHARIA DE SOFTWARE Codificação Abstrações Teste Manutenção OBJETOS AGENTES X Carlos J. P. de Lucena
AGENTES Objetivo 2: Agentes para Sistema de Grande Porte Nova Plataforma de Desenvolvimento Novos modelos de Processo Tecnologias Emergentes Análise de Requisitos Projeto Arquitetural Detalhado ENGENHARIA DE SOFTWARE Codificação Teste E-Commerce Abstrações Manutenção Soluções Integradas Software de Grande Porte Comportamento Emergente Autonomia Aprendizado Mobilidade… Ambientes de Desenvolvimento Carlos J. P. de Lucena
AGENTES Objetivo 3: Técnicas Existentes X SMAs Use Cases Viewpoints Estilos Arquiteturais Design Patterns Análise de Requisitos ASoC Frameworks Arquiteturas Projeto Arquitetural Detalhado ENGENHARIA DE SOFTWARE Codificação Teste Abstrações Manutenção Comportamento Emergente Autonomia Aprendizado Mobilidade… Carlos J. P. de Lucena
Referências • Tim Berners-Lee, James Hendler and Ora Lassila, “The Semantic Web”, http://www.sciam.com/2001/0501issue/0501berners-lee.html • James Hendler, “Agents and the Semantic Web”, http://www.csumd.edu/users/hendler/AgentWeb.html • Edd Dumbill, “The Semantic Web: A Primer”, http://www.xml.com/pub/a/2000/11/01/semanticweb/ • Aaron Swartz, “The Semantic Web in Breadth”, http://logicerror.com/semanticWeb-long • Sean B Palmer, “The Semantic Web: an Introduction”,http://infomesh.net/2001/swintro/ Carlos J. P. de Lucena
Referências • Garcia, A.; Lucena, C. J.; Cowan, D.D. "Agents in Object-Oriented Software Engineering“, Software: Practice & Experience, Elsevier, 2002(to appear) • Garcia, A.; Lucena, C.; Castro, J.; Omicini, A.; Zambonelli, F. "Software Engineering for Large-Scale Multi-Agent Systems – SELMAS 2002". ACM Software Engineering Notes, August 2002. (To appear) • Garcia, A.; Chavez, C.; Torres, V.; Lucena, C. J. "Engineering Multi-Agent Systems with Patterns and Aspects". Accepted to appear in Journal of the Brazilian Computer Society, SBC, Special Issue on Software Engineering and Databases, 2002. • Garcia, A; Lucena, C. J. Proceedings of the 1st International Workshop on Software Engineering for Large-Scale Multi-Agent Systems (SELMAS 2002) at ICSE 2002, Orlando, USA, May 2002 (to appear LNCS) • Mesquita, C.; Barbosa, S.; Lucena, C. J. "Towards the Identification of Concerns in Personalization Mechanisms via Scenarios". Workshop on Early Aspects at AOSD'2002, The Netherlands, April, 2002. Carlos J. P. de Lucena
Referências • Garcia A., Chavez, C., Silva O., Silva V. & Lucena, C. "Promoting Advanced Separation of Concerns in Intra-Agent and Inter-Agent Software Engineering". Workshop on Advanced Separation of Concerns in Object-oriented Systems (ASoC) at OOPSLA'2001, Tampa Bay, Florida, USA, October 14, 2001. Chavez, C. & Lucena, C. "Design-level Support for Aspect-oriented Software Development". Workshop on Advanced Separation of Concerns in Object-oriented Systems (ASoC) at OOPSLA'2001, Tampa Bay, Florida, USA, October 14, 2001. Silva, O; Garcia, A; Lucena, C.J. "T-Rex: A Reflective Tuple Space Environment for Dependable Mobile Agent Systems". III WCSF at IEEE MWCN 2001, Recife, Brazil, August 2001 • Garcia, A.; Torres, V.; Lucena, C.; Milidiú, R. "An Aspect-Based Approach for Developing Multi-Agent Object-Oriented Systems". Brazilian Symposium on Software Engineering (SBES), Rio de Janeiro, Brazil, October 2001. • Silva, O.; Garcia, A; Lucena, C. J. "A Unified Software Architecture for System-Level Dependability in Multi-Agent Object-Oriented Systems", 7th ECOOP Workshop on Mobile Objetcts Systems, June 2001 • Garcia, A.; Lucena, C. J. "An Aspect-Based Object-Oriented Model for Multi-Agent Systems". Advanced Separation of Concerns Workshop at ICSE'2001, May 2001. Carlos J. P. de Lucena