SASS: Self-Adaptation using Stochastic Search

Slides:



Advertisements
Similar presentations
Local optimization technique G.Anuradha. Introduction The evaluation function defines a quality measure score landscape/response surface/fitness landscape.
Advertisements

Dialogue Policy Optimisation
Artificial Intelligence Presentation
Hadi Goudarzi and Massoud Pedram
Heuristic Search and Information Visualization Methods for School Redistricting University of Maryland Baltimore County Marie desJardins, Blazej Bulka,
A GENETIC ALGORITHM APPROACH TO SPACE LAYOUT PLANNING OPTIMIZATION Hoda Homayouni.
Date:2011/06/08 吳昕澧 BOA: The Bayesian Optimization Algorithm.
Maximizing the Chance of Winning in Searching Go Game Trees Presenter: Ling Zhao March 16, 2005 Author: Keh-Hsun Chen Accepted by Information Sciences.
Simulated Annealing Van Laarhoven, Aarts Version 1, October 2000.
D Nagesh Kumar, IIScOptimization Methods: M1L4 1 Introduction and Basic Concepts Classical and Advanced Techniques for Optimization.
Vilalta&Eick: Informed Search Informed Search and Exploration Search Strategies Heuristic Functions Local Search Algorithms Vilalta&Eick: Informed Search.
Planning and Verification for Stochastic Processes with Asynchronous Events Håkan L. S. Younes Carnegie Mellon University.
CRESCENDO Full virtuality in design and product development within the extended enterprise Naples, 28 Nov
10/6/2015 1Intelligent Systems and Soft Computing Lecture 0 What is Soft Computing.
Evaluating Resilience Strategies Based on an Evolutionary Multi agent System Kazuhiro Minami, Tomoya Tanjo, and Hiroshi Maruyama Institute of Statistical.
Graph Data Management Lab, School of Computer Science Add title here: Large graph processing
Simulated Annealing.
CHECKERS: TD(Λ) LEARNING APPLIED FOR DETERMINISTIC GAME Presented By: Presented To: Amna Khan Mis Saleha Raza.
Extended Finite-State Machine Inference with Parallel Ant Colony Based Algorithms PPSN’14 September 13, 2014 Daniil Chivilikhin PhD student ITMO.
Conformant Probabilistic Planning via CSPs ICAPS-2003 Nathanael Hyafil & Fahiem Bacchus University of Toronto.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Evolving Reactive NPCs for the Real-Time Simulation Game.
For Wednesday Read chapter 6, sections 1-3 Homework: –Chapter 4, exercise 1.
For Wednesday Read chapter 5, sections 1-4 Homework: –Chapter 3, exercise 23. Then do the exercise again, but use greedy heuristic search instead of A*
Course Overview  What is AI?  What are the Major Challenges?  What are the Main Techniques?  Where are we failing, and why?  Step back and look at.
Optimization Problems
1 Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations.
Chapter 4 Modeling and Analysis
Introduction to genetic algorithm
Optimization Problems
Optimization by Quantum Computers
OPERATING SYSTEMS CS 3502 Fall 2017
CSCI 4310 Lecture 10: Local Search Algorithms
Extending wireless Ad-Hoc
USING MICROBIAL GENETIC ALGORITHM TO SOLVE CARD SPLITTING PROBLEM.
Van Laarhoven, Aarts Version 1, October 2000
Meta-heuristics Introduction - Fabien Tricoire
Done Done Course Overview What is AI? What are the Major Challenges?
School of Computer Science & Engineering
C.-S. Shieh, EC, KUAS, Taiwan
For Monday Chapter 6 Homework: Chapter 3, exercise 7.
Towards Reliable Application Deployment in the Cloud
Probability-based Evolutionary Algorithms
Juan Rubio, Lizy K. John Charles Lefurgy
به نام خدا Big Data and a New Look at Communication Networks Babak Khalaj Sharif University of Technology Department of Electrical Engineering.
Advanced Artificial Intelligence Evolutionary Search Algorithm
Optimization Techniques for Natural Resources SEFS 540 / ESRM 490 B
Fabiano Ferrari Software Engineering Federal University of São Carlos
Hidden Markov Models Part 2: Algorithms
Course Logistics CS533: Intelligent Agents and Decision Making
Announcements Homework 3 due today (grace period through Friday)
Example: Applying EC to the TSP Problem
Optimization Problems
Metaheuristic methods and their applications. Optimization Problems Strategies for Solving NP-hard Optimization Problems What is a Metaheuristic Method?
Multi-Objective Optimization
Software Testing: A Research Travelogue
School of Computer Science & Engineering
“Hard” Optimization Problems
Design & Analysis of Algorithms Combinatorial optimization
The use of Neural Networks to schedule flow-shop with dynamic job arrival ‘A Multi-Neural Network Learning for lot Sizing and Sequencing on a Flow-Shop’
More on Search: A* and Optimization
More on HW 2 (due Jan 26) Again, it must be in Python 2.7.
More on HW 2 (due Jan 26) Again, it must be in Python 2.7.
Search.
Modeling and Analysis Tutorial
Genetic Algorithm Soft Computing: use of inexact t solution to compute hard task problems. Soft computing tolerant of imprecision, uncertainty, partial.
Search.
Alex Bolsoy, Jonathan Suggs, Casey Wenner
Area Coverage Problem Optimization by (local) Search
Coevolutionary Automated Software Correction
Presentation transcript:

SASS: Self-Adaptation using Stochastic Search Zack Coker, David Garlan, Claire Le Goues School of Computer Science Carnegie Mellon University Hello, my name is Zack Coker and I’ll be presenting SASS: Self-Adaptiation using Stochastic Search. https://www.hpi.uni-potsdam.de/giese/public/selfadapt/exemplars/ Position Paper accepted to SEAMS 2015 (10th International Symposium on Software Engineering for Adaptive and Self-Managing Systems)

Smart Grids Smart Traffic Systems Smart Buildings Smart Farms The goal is to get the vision of big problems into the audience’s head, not really focus on DARPA’s achievements. Smart Buildings Smart Farms

Stochastic Search Deterministic Stochastic Goal Already Searched

Stochastic Search Stochastic Search is composed of search techniques which use randomness to explore the search space, such as genetic programming, hill climbing, simulated annealing, and ant colony optimization. There has been a lot of recent interest in applying stochastic techniques to self-adaptive systems but we believe there is greater use for these techniques than has been presented in recent work. Specifically, we believe that stochastic techniques provide a promising solution to a goal of SEAMS, which is to scale to self-adaptive systems with a large number of inter-related tactics. Due to combinatorial explosion in these situations, creating recovery plans can become a challenge. We believe stochastic techniques provide a promising solution to this problem and demonstrate a solution with 3 example expirements.

Stochastic Search B. H. C. Cheng, A. J. Ramirez, and P. K. McKinley, “Harnessing evolutionary computation to enable dynamically adaptive systems to manage uncertainty” G. G. Pascual, M. Pinto, and L. Fuentes, “Run-time adaptation of mobile applications using genetic algorithms” P. Zoghi, M. Shtern, and M. Litoiu, “Designing search based adaptive systems: A quantitative approach” M. Harman, Y. Jia, W. B. Langdon, J. Petke, I. H. Moghadam, S. Yoo, and F. Wu, “Genetic improvement for adaptive software engineering (keynote)”

Self-Adaptive System I do agree, however, that the problem of searching multi-dimensional adaptation spaces in the presence of multiple, qualitative, and inter-dependent qualities is a central problem for SEAMS and that stochastic search techniques is a promising option

Requirements for Stochastic Techniques Possible Solution Creation Randomly create a tree of tactics Objective Function Example: -20 responseTimenorm – costnorm + qualitynorm – timenorm Use PRISM to evaluate the score of each final state in the plan and the probability of reaching each final state To apply stochastic techniques to plan generation, we need a way to compare generated plans. PRISM, a probabilistic model checker, provides way to perform an independent plan evaluation. If a Markov chain, which represents the transitions in the plane, and a utility function, which provides a way to score a state, are both provided to PRISM, then PRISM can sum the score of each final state times the probability of reaching that state to give a total score for the plan.

Evaluate Discard Possible Initial Plan Plan Plan Final Result Mutate Response Time Cost Quality Time Plan Plan Plan Plan Plan Plan Plan Plan Plan Final Result Mutate

ZNN.com

Proof of Concept

Plans [(if (add-server(1)) (add-database-thread(A,1)) (decrease-quality))), add-database-thread(B,2)]

Experiments Improving a bad plan Comparing different utility functions Show that subpar inputs do not cause subpar results Comparing different utility functions Understand how changes in the utility function affects plans Planning with similar utility functions Can plans be used to create new plans for a similar goal?

Improving a Bad Plan Utility Function: -20 responseTimenorm – costnorm + qualitynorm – timenorm Initial Plan:

Improving a Bad Plan Results:

Comparing Utility Changes Utility Function : -10 responseTimenorm – costnorm + qualitynorm – timenorm Results:

Comparing Utility Changes Utility Function : -2 responseTimenorm – 2 costnorm + qualitynorm – timenorm Results:

Planning with Similar Utility Functions Utility Function: -10 responseTimenorm – costnorm + qualitynorm – timenorm Results:

Experiment Conclusions The planner can handle erroneous user provided plans The planner can handle multiple objectives The planner can provide unexpected knowledge about the search space The planner can use information from previously generated plans to make new plans

Future Ideas Test the planner on a system with more tactics Compare to deterministic planners Incorporate feedback from the system monitor If adaption fails, is it likely to fail again? Partially effective adaptations – timing issues Adapting similar plans to a new situation Catalogue when stochastic techniques are effective Improve human trust in plans/ stochastically generated plans

Summary Stochastic search shows promise for handling the future complexity of self-adaptive systems Demonstrate the benefits of stochastic search with a proof of concept genetic programming planner 3 experiments demonstrate the potential of our planner There are many research problems for applying stochastic search to self adaptive systems