Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.
Transcript of Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.
![Page 1: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/1.jpg)
Parte II – Aplicações de Autonomic Computing
Seminários 2007 – 2º Semestre
Maíra Gatti
![Page 2: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/2.jpg)
2© LES/PUC-Rio
Agenda
• Estado da Arte de AC
– Exemplo 1: Architecture-based Self-Adaptation in the Presence of Multiple Objectives
– Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
– Exemplo 3: Agents in a J2EE World
– Projetos de Pesquisa na Indústria
• Bibliografia
![Page 3: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/3.jpg)
3© LES/PUC-Rio
Exemplo 1: Architecture-based Self-Adaptation in the Presence of Multiple Objectives
• Como implementar um mecanismo de AC para se auto-adaptar na presença de múltiplos objetivos?
• Propuseram uma linguagem de adaptação
– Expressiva para expertise de adaptação
– Direcionada para descrever o raciocínio das decisões humanas de adaptação de alto-nível
• Ontologia para as tarefas dos administradores de sistema
• Formalismo de teoria de utilidade (Utility Theory)
S.-W. Cheng, D. Garlan, B. Schmerl. Architecture-based Self-Adaptation in the
Presence of Multiple Objectives. SEAMS’06, May 21–22, 2006, Shanghai, China.
![Page 4: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/4.jpg)
4© LES/PUC-Rio
Exemplo 1: Architecture-based Self-Adaptation in the Presence of Multiple Objectives
• Website de notícias Z.com
• Conteúdo de notícias gráficas
• Objetivo
– garantir serviços mesmo em horário de picos
• Ações caso o sistema esteja prestes a “voar” :)
– a) aumentar a quantidade de servidores até o máximo permitido pelos custos, ou
– b) alterar os servidores para fornecer conteúdo textual
• Quando voltar ao normal
– a) alterar os servidores para voltarem a fornecer conteúdo gráfico
– b) diminuir quantidade de servidores
S.-W. Cheng, D. Garlan, B. Schmerl. Architecture-based Self-Adaptation in the
Presence of Multiple Objectives. SEAMS’06, May 21–22, 2006, Shanghai, China.
![Page 5: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/5.jpg)
5© LES/PUC-Rio
Exemplo 1: Architecture-based Self-Adaptation in the Presence of Multiple Objectives
• Considerações a serem levadas na hora da decisão...
– O quanto de recurso a minha ação requer?
– Quanto tempo a minha ação levaria para ser tomada?
– Qual seria o efeito da minha ação no sistema?
– Qual o rankeamento da minha ação em relação as outras?
– ...
![Page 6: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/6.jpg)
6© LES/PUC-Rio
Exemplo 1: Architecture-based Self-Adaptation in the Presence of Multiple Objectives
• Proposta
– Operador arquitetural
• Ação que pode ser tomada
• Exemplo: matar um processo em execução
– Esquema Tático
• Condição, operadores arquiteturais e efeitos
• Resolve um problema em específico
– Estratégias
• Modelo mental de todas as ações
• Resolve um tipo de problemas de sistema
• Árvore de esquemas táticos
• A escolha da estratégia em geral envolve
– Heurísticas, tradeoffs e experiências
– Funções de Utilidade
![Page 7: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/7.jpg)
7© LES/PUC-Rio
Exemplo 1: Architecture-based Self-Adaptation in the Presence of Multiple Objectives
Função de Utilidade
![Page 8: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/8.jpg)
8© LES/PUC-Rio
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
Autonomous Nano-Technology Swarm(ANTS)
• Auto-Otimização– Rulers aprendem sobre asteróides
– Messengers ajustam suas posições
– Workers aprendem sobre asteróides
![Page 9: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/9.jpg)
9© LES/PUC-Rio
relações
conceitos
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
• Conceptual Graph Theory (CGT)
– Representação gráfica do conhecimento e raciocínio
– Permite construção de algoritmos sobre o conhecimento
– Permite que o usuário entenda, manipule, edite e revise o conhecimento
– Facilita no aprendizado através de generalizações e especializações
![Page 10: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/10.jpg)
10© LES/PUC-Rio
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
• Ontologia
– Framewok que representa o conhecimento de um domínio,
– contendo informações de relações, classes, objetos, e atributos
– sobre instâncias e eventos em um domínio
• Grafos conceituais -> metodologia para descrever ontologias
• Ferramentas para implementar Grafos Conceituais
– CG Tool Toscana
– CharGer
– Amine
![Page 11: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/11.jpg)
11© LES/PUC-Rio
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
• Ontologias são estáticas
• Adaptação -> Atributos dinâmicos!
• Concept Type Hierarchy of CGT
– Informação parcial
– Existem técnicas de aprendizado em CGT que permitem a expansão da hierarquia
![Page 12: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/12.jpg)
12© LES/PUC-Rio
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
• Visão parcial da ontologia para a missão ANTS
![Page 13: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/13.jpg)
13© LES/PUC-Rio
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
• Desta forma, a ontologia dinâmica é capaz de:
– Derivar relacionamentos entre objetos e eventos
– Identificar padrões e tendências candidatas
– Manter todas as hipóteses possíveis
– Derivar intenções (explorar, avaliar, medir, etc.)
– Priorizar soluções
– Eliminar hipóteses não aprovadas
– Manter hipóteses parciais ou que ainda não puderam ser provadas como alternativas válidas
![Page 14: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/14.jpg)
14© LES/PUC-Rio
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
• Verificação
– Antes de operar
• Modelos formais para garantir propriedades do sistema e prover validação
– Em operação
• O modelo descrito pela ontologia precisa ser monitorado para garantir que está dentro dos limites aceitáveis e que determinadas propriedades de relacionamentos entre entidades estão mantidas
![Page 15: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/15.jpg)
15© LES/PUC-Rio
Exemplo 2: Self Optimization using Conceptual Graphs for NASA Autonomous Systems
• SAIC: From Science to Solutions®
– www.saic.com
• Science Applications International Corporation (SAIC)
– defense modernization efforts,
– intelligence, homeland security,
– logistics and product support,
– health and life sciences,
– space and earth sciences and
– global commercial services.
D. Corbett, C. Rouff. Self Optimization using Conceptual Graphs for NASA Autonomous Systems. Proc. of the Third IEEE Int. Workshop on Eng. of Autonomic & Autonomous Systems (EASE’06).
![Page 16: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/16.jpg)
16© LES/PUC-Rio
Exemplo 3: Agents in a J2EE World
• J2EE Application Servers
![Page 17: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/17.jpg)
17© LES/PUC-Rio
Exemplo 3: Agents in a J2EE World
• J2EE Agent-based Application Servers
![Page 18: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/18.jpg)
18© LES/PUC-Rio
Exemplo 3: Agents in a J2EE World
• Vantagens
– As características de agentes vão muito além das características de EJBs
• EJBs são reativos, Agentes são autônomos e pró-ativos
• EJBs tem restrições técnicas (por exemplo, não são permitidos inicializarem a sua própria thread)
• EJBs não são separados dos outros (compartilham o mesmo name space)
• EJBs não tem mobilidade
• Agentes podem resolver problemas em cooperação
S. Brantschen & T. Haas; Agents in a J2EE World. White paper, 2002, Whitestein Technologies AG.
![Page 19: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/19.jpg)
19© LES/PUC-Rio
Projetos de Pesquisa na Indústria
• IBM – The Autonomic Computing Toolkit (ATK)
– ATK é composto de classes, bibliotecas, plugins, e ferramentas para o ambiente Eclipse
– Para dar suporte tanto para o desenvolvimento quando execução, o ATK depende de versões espeíficas da JRE
– Ex.: Agent Based Learning Environment (ABLE)
![Page 20: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/20.jpg)
20© LES/PUC-Rio
Projetos de Pesquisa na Indústria
• SUN –N1– Virtualization
• The process of modeling all the components in the network.
– Application and service level provisioning• The process of configuring and deploying software on systems.
– Dynamic policy management• Automations of the configuration and deployment of software in the system.
• Hewlett-Packard –The Adaptive Enterprise
• Microsoft –Dynamic Systems Initiative– To deliver self-managing dynamic systems– Provide a common language, or meta-model, that is used to create models
that capture the organizational knowledge relevant to entire distributed systems.
• Intel –Proactive Computing– Focus on human-supervised operation, where the user stays out of the loop
as much as possible until required to provide guidance in critical decisions.
![Page 21: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/21.jpg)
21© LES/PUC-Rio
Projetos de Pesquisa na Indústria
• IBM – The Autonomic Computing Toolkit (ATK)
![Page 22: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/22.jpg)
22© LES/PUC-Rio
Projetos de Pesquisa na Indústria
• Extensões da Intel
B. Melcher et al., Towards an Autonomic Framework: Self-Configuring Network Services and Developing Autonomic Applications. Intel Technology Journal.Acessed from: http://developer.intel.com/technology/itj/index.htm
![Page 23: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/23.jpg)
23© LES/PUC-Rio
Bibliografia
• M. Parashar, S. Hariri; Autonomic Computing: An Overview. J.-P. Banâtre et al. (Eds.): UPP 2004, Springer, LNCS 3566, pp. 247–259, 2005.
• P. Lin, A. MacArthur, J. Leaney. Defining Autonomic Computing: A Software Engineering Perspective. IEEE. Proc. of the 2005 Australian Soft. Eng. Conf. (ASWEC’05)
• S.-W. Cheng, D. Garlan, B. Schmerl. Architecture-based Self-Adaptation in the Presence of Multiple Objectives. SEAMS’06, May 21–22, 2006, Shanghai, China.
• D. Corbett, C. Rouff. Self Optimization using Conceptual Graphs for NASA Autonomous Systems. Proc. of the Third IEEE Int. Workshop on Eng. of Autonomic & Autonomous Systems (EASE’06).
• S. Brantschen & T. Haas; Agents in a J2EE World. White paper, 2002, Whitestein Technologies AG.
![Page 24: Parte II – Aplicações de Autonomic Computing Seminários 2007 – 2º Semestre Maíra Gatti.](https://reader035.fdocument.pub/reader035/viewer/2022070310/552fc0f8497959413d8b5067/html5/thumbnails/24.jpg)
Parte II – Aplicações de Autonomic Computing
Seminários 2007 – 2º Semestre
Maíra Gatti