Subgoal: conduct an in-depth study of critical representation, operator and other choices used for evolutionary program repair at the source code level.

Slides:



Advertisements
Similar presentations
Technology Drivers Traditional HPC application drivers – OS noise, resource monitoring and management, memory footprint – Complexity of resources to be.
Advertisements

Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
Using Parallel Genetic Algorithm in a Predictive Job Scheduling
Systems Analysis, Prototyping and Iteration Systems Analysis.
Adaptability Theory as a Guide for Interfacing Computers and Human Society.
Development of Parallel Simulator for Wireless WCDMA Network Hong Zhang Communication lab of HUT.
Objektorienteret Middleware Presentation 2: Distributed Systems – A brush up, and relations to Middleware, Heterogeneity & Transparency.
1 Sensor Networks and Networked Societies of Artifacts Jose Rolim University of Geneva.
Parallelized Evolution System Onur Soysal, Erkin Bahçeci Erol Şahin Dept. of Computer Engineering Middle East Technical University.
Research and objectives Modern software is incredibly complex: for example, a modern OS has more than 10 millions lines of code, organized in 10s of layers!
1 / 24 CS 425/625 Software Engineering Software Evolution Based on Chapter 21 of the textbook [SE-8] Ian Sommerville, Software Engineering, 8 th Ed., Addison-Wesley,
Design of Autonomous Navigation Controllers for Unmanned Aerial Vehicles using Multi-objective Genetic Programming Gregory J. Barlow March 19, 2004.
Improving Network Applications Security: a New Heuristic to Generate Stress Testing Data Presented by Conrad Pack Del Grosso et al.
Microarray analysis 2 Golan Yona. 2) Analysis of co-expression Search for similarly expressed genes experiment1 experiment2 experiment3 ……….. Gene i:
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Vanderbilt University Vibro-Acoustics Laboratory Distributed Control with Networked Embedded Systems Objectives Implementation of distributed, cooperative.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Automatic Program Repair With Evolutionary Computation Westley Weimer Computer Science Dept. University of Virginia Charlottesville, VA 22904
COGNITIVE RADIO FOR NEXT-GENERATION WIRELESS NETWORKS: AN APPROACH TO OPPORTUNISTIC CHANNEL SELECTION IN IEEE BASED WIRELESS MESH Dusit Niyato,
Development in hardware – Why? Option: array of custom processing nodes Step 1: analyze the application and extract the component tasks Step 2: design.
Revolutionizing the Field of Grey-box Attack Surface Testing with Evolutionary Fuzzing Department of Computer Science & Engineering College of Engineering.
Parallel Processing CS453 Lecture 2.  The role of parallelism in accelerating computing speeds has been recognized for several decades.  Its role in.
1 Chapter 24 Developing Efficient Algorithms. 2 Executing Time Suppose two algorithms perform the same task such as search (linear search vs. binary search)
{ CS203 Lecture 7 John Hurley Cal State LA. 2 Execution Time Suppose two algorithms perform the same task such as search (linear search vs. binary search)
` Research 2: Information Diversity through Information Flow Subgoal: Systematically and precisely measure program diversity by measuring the information.
VeriFlow: Verifying Network-Wide Invariants in Real Time
Low-Power Wireless Sensor Networks
Computer Science Open Research Questions Adversary models –Define/Formalize adversary models Need to incorporate characteristics of new technologies and.
© 2010 IBM Corporation IBM InfoSphere Streams Enabling a smarter planet Roger Rea InfoSphere Streams Product Manager Sept 15, 2010.
ASIP Architecture for Future Wireless Systems: Flexibility and Customization Joseph Cavallaro and Predrag Radosavljevic Rice University Center for Multimedia.
Design of a real time strategy game with a genetic AI By Bharat Ponnaluri.
Fundamentals of Information Systems, Third Edition2 Principles and Learning Objectives Artificial intelligence systems form a broad and diverse set of.
Robotica Lecture 3. 2 Robot Control Robot control is the mean by which the sensing and action of a robot are coordinated The infinitely many possible.
Guiding Principles. Goals First we must agree on the goals. Several (non-exclusive) choices – Want every CS major to be educated in performance including.
Parallel and Distributed Simulation Introduction and Motivation.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Lucian Voinea Visualizing the Evolution of Code The Visual Code Navigator (VCN) Nunspeet,
Construction of Substitution Matrices
MURI: Integrated Fusion, Performance Prediction, and Sensor Management for Automatic Target Exploitation 1 Dynamic Sensor Resource Management for ATE MURI.
Evolutionary Art with Multiple Expression Programming By Quentin Freeman.
“Politehnica” University of Timisoara Course No. 2: Static and Dynamic Configurable Systems (paper by Sanchez, Sipper, Haenni, Beuchat, Stauffer, Uribe)
New Mexico Computer Science For All Algorithm Analysis Maureen Psaila-Dombrowski.
MAPLD 2005/254C. Papachristou 1 Reconfigurable and Evolvable Hardware Fabric Chris Papachristou, Frank Wolff Robert Ewing Electrical Engineering & Computer.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 21 Slide 1 Software evolution 1.
REPRESENTATIONS AND OPERATORS FOR IMPROVING EVOLUTIONARY SOFTWARE REPAIR Claire Le Goues Westley Weimer Stephanie Forrest
Software Engineering Laboratory, Department of Computer Science, Graduate School of Information Science and Technology, Osaka University IWPSE 2003 Program.
Evolutionary Security CS 610: Advanced Security Gabriel Daleson.
Changing the Rules of the Game Dr. Marco A. Janssen Department of Spatial Economics.
Coevolutionary Automated Software Correction Josh Wilkerson PhD Candidate in Computer Science Missouri S&T.
Data Structures and Algorithms in Parallel Computing Lecture 7.
Chapter 1: Introduction to Neuro-Fuzzy (NF) and Soft Computing (SC)
Liang, Introduction to Java Programming, Sixth Edition, (c) 2007 Pearson Education, Inc. All rights reserved Chapter 23 Algorithm Efficiency.
SRS Architecture Study Partha Pal Franklin Webber.
WIRELESS INTEGRATED NETWORK SENSORS
Hierarchical Load Balancing for Large Scale Supercomputers Gengbin Zheng Charm++ Workshop 2010 Parallel Programming Lab, UIUC 1Charm++ Workshop 2010.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Chapter 8: Maintenance and Software Evolution Ronald J. Leach Copyright Ronald J. Leach, 1997, 2009, 2014,
Resource Optimization for Publisher/Subscriber-based Avionics Systems Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee.
Multi-cellular paradigm The molecular level can support self- replication (and self- repair). But we also need cells that can be designed to fit the specific.
` Question: How do immune systems achieve such remarkable scalability? Approach: Simulate lymphoid compartments, fixed circulatory networks, cytokine communication.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
1 Dongheng Sun 04/26/2011 Learning with Matrix Factorizations By Nathan Srebro.
Chapter 25 – Configuration Management 1Chapter 25 Configuration management.
Scaling for the Future Katherine Yelick U.C. Berkeley, EECS
CS 425/625 Software Engineering Software Evolution
CSCI1600: Embedded and Real Time Software
Lecture 4. Niching and Speciation (1)
Modeling and Analysis Tutorial
CSCI1600: Embedded and Real Time Software
Coevolutionary Automated Software Correction
Presentation transcript:

Subgoal: conduct an in-depth study of critical representation, operator and other choices used for evolutionary program repair at the source code level. Subgoal: Develop models and simulations to understand Scalable RADAR principles and adapt them to computation. Subgoal: Extend evolutionary repair – whereby software bugs are automatically repaired using genetic programming, a technique inspired by evolution – towards a software immune system. Measuring Diversity Through Information Flow Scalable RADAR for Co-evolutionary Adaptive Environments Biological systems search complex spaces without a “leader.” Biological Principles Cells respond to environmental signals automatically. Simulation and Modeling Immune systems are composed of millions of cells. Redundancy, diversity, “wisdom of the crowd.” Genes, cells, systems adapt over multiple time scales. Subgoal: compare programs based on how they use inputs in control flow decisions. Question: How do immune systems achieve such remarkable scalability, with speed and repair independent of size? Approach: Simulate lymphoid compartments, fixed circulatory networks, cytokine communication pathways and signals. Question: How do immune systems achieve such remarkable scalability, with speed and repair independent of size? Approach: Simulate lymphoid compartments, fixed circulatory networks, cytokine communication pathways and signals. Scalability Our simulations show: The structure of the lymphatic network balances fast distribution of existing repairs vs. fast of recruitment of new repairs. Inflammatory search signals speed up immune repair by orders of by orders of magnitude, particularly in large systems. Implement Distributed Repair in real-world platforms Biology Observe & Test Simulation Model & Analyze Results: Distance between bubblesort and several other sorting algorithms (log scale). while(input[i] != ‘\0’) if(is_lowercase(input[i])) elif(is_uppercase(input[i])) Wes Weimer Melanie Moses ` Systems contain more errors and are more prone to attack than ever. The balance of power favors the attacker:  Software replicates are all vulnerable to the same attack.  System complexity precludes rapid repair. We must rethink the current cybersecurity paradigm. Stephanie Forrest (PI)Jed Crandall Insight Problem Animal immune systems can defeat multiple, adaptable adversaries. Adapt Scalable RADAR to a new, clean-slate paradigm for software development/maintenance. Demonstrate large, complex software systems that:  automatically detect attacks  repair themselves  evolve a diversity of solutions. Goal Software is a complex, evolving system. Results: Effect of modifying fault localization and operator selection probability distributions. Such feature choices significantly impact success rate and repair time, especially on more difficult bugs. With the feature sweep-suggested improvements, we automatically repair 5 new bugs (of 105) with a 17-43% reduction in repair time on more difficult bugs. Feature Sweep Question: Can our approach repair specialized embedded devices? Approach: Low-powered individual devices cooperate to find repairs more quickly. Evolutionary Program Repair Results: As the number of network nodes increases, a distributed repair strategy finds repairs faster and with a higher success rate (average over 16 programs). Distributed Repair Statically- compiled Linux binary Annotated assembly trace Branch/inp ut correlation matrix Trace r (C) DIFT (Java) B B A A Program Similarity Compare (Octave) Approach: As the program runs, build a matrix relating input to branch points. Comparing the structure of two matrices gives a program similarity measurement. Dynamic Information Flow Tracking Distance from bubble sort Hello\0 input[i] != ‘\0’ is_lowercase(input[i]) is_uppercase(input[i])100000