MuACOsm A New Mutation-Based Ant Colony Optimization Algorithm for Learning Finite-State Machines



Similar documents
Extended Finite-State Machine Inference with Parallel Ant Colony Based Algorithms

Finding Liveness Errors with ACO

vii TABLE OF CONTENTS CHAPTER TITLE PAGE DECLARATION DEDICATION ACKNOWLEDGEMENT ABSTRACT ABSTRAK

Master's projects at ITMO University. Daniil Chivilikhin PhD ITMO University


An Ant Colony Optimization Approach to the Software Release Planning Problem

An Improved ACO Algorithm for Multicast Routing

STUDY OF PROJECT SCHEDULING AND RESOURCE ALLOCATION USING ANT COLONY OPTIMIZATION 1

Ant Colony Optimization and Constraint Programming

Finding Liveness Errors with ACO

An ACO Approach to Solve a Variant of TSP

Using Ant Colony Optimization for Infrastructure Maintenance Scheduling

Meta-Heuristics for Reconstructing Cross Cut Shredded Text Documents

INTERNATIONAL JOURNAL OF COMPUTER ENGINEERING & TECHNOLOGY (IJCET)

An ACO/VNS Hybrid Approach for a Large-Scale Energy Management Problem

Overview. Swarms in nature. Fish, birds, ants, termites, Introduction to swarm intelligence principles Particle Swarm Optimization (PSO)

Projects - Neural and Evolutionary Computing

EA and ACO Algorithms Applied to Optimizing Location of Controllers in Wireless Networks

ACO Hypercube Framework for Solving a University Course Timetabling Problem

The Application of Bayesian Optimization and Classifier Systems in Nurse Scheduling

ACO FOR OPTIMAL SENSOR LAYOUT

Design and Analysis of ACO algorithms for edge matching problems

ANT COLONY OPTIMIZATION ALGORITHM FOR RESOURCE LEVELING PROBLEM OF CONSTRUCTION PROJECT

D A T A M I N I N G C L A S S I F I C A T I O N

The ACO Encoding. Alberto Moraglio, Fernando E. B. Otero, and Colin G. Johnson

TEST CASE SELECTION & PRIORITIZATION USING ANT COLONY OPTIMIZATION

NP-complete? NP-hard? Some Foundations of Complexity. Prof. Sven Hartmann Clausthal University of Technology Department of Informatics

Binary Ant Colony Evolutionary Algorithm

Journal of Theoretical and Applied Information Technology 20 th July Vol.77. No JATIT & LLS. All rights reserved.

A New Software Data-Flow Testing Approach via Ant Colony Algorithms

Optimization and Ranking in Web Service Composition using Performance Index

An ant colony optimization for single-machine weighted tardiness scheduling with sequence-dependent setups

Algorithmic Software Verification

Evolving an Edge Selection Formula for Ant Colony Optimization

An Improved Ant Colony Optimization Algorithm for Software Project Planning and Scheduling

AN APPROACH FOR SOFTWARE TEST CASE SELECTION USING HYBRID PSO

Manjeet Kaur Bhullar, Kiranbir Kaur Department of CSE, GNDU, Amritsar, Punjab, India

Swarm Intelligence Algorithms Parameter Tuning

HYBRID ACO-IWD OPTIMIZATION ALGORITHM FOR MINIMIZING WEIGHTED FLOWTIME IN CLOUD-BASED PARAMETER SWEEP EXPERIMENTS

Improving the Performance of a Computer-Controlled Player in a Maze Chase Game using Evolutionary Programming on a Finite-State Machine

Ant colony optimization techniques for the vehicle routing problem

Ant colony optimization and local search for bin packing and cutting stock problems

Implementing Ant Colony Optimization for Test Case Selection and Prioritization

Ant Colony Optimization (ACO)

Comparative Study: ACO and EC for TSP

A Proposed Scheme for Software Project Scheduling and Allocation with Event Based Scheduler using Ant Colony Optimization

Integration of ACO in a Constraint Programming Language

A Performance Comparison of GA and ACO Applied to TSP

Branch-and-Price Approach to the Vehicle Routing Problem with Time Windows

CLOUD DATABASE ROUTE SCHEDULING USING COMBANATION OF PARTICLE SWARM OPTIMIZATION AND GENETIC ALGORITHM

Bachelor Thesis Performance comparison of heuristic algorithms in routing optimization of sequencing traversing cars in a warehouse

Hybrid Algorithm using the advantage of ACO and Cuckoo Search for Job Scheduling

International Journal of Emerging Technology & Research

Replicating Multi-quality Web Applications Using ACO and Bipartite Graphs

Review of Solving Software Project Scheduling Problem with Ant Colony Optimization

ACO Based Dynamic Resource Scheduling for Improving Cloud Performance

School Timetabling in Theory and Practice

Multi-Robot Traffic Planning Using ACO

Real Time Scheduling Basic Concepts. Radek Pelánek

Effect of Using Neural Networks in GA-Based School Timetabling

The Network Structure of Hard Combinatorial Landscapes

Big Data Graph Algorithms

Complexity Theory. IE 661: Scheduling Theory Fall 2003 Satyaki Ghosh Dastidar

Modified Ant Colony Optimization for Solving Traveling Salesman Problem

Proposed Software Testing Using Intelligent techniques (Intelligent Water Drop (IWD) and Ant Colony Optimization Algorithm (ACO))

Effective Load Balancing for Cloud Computing using Hybrid AB Algorithm

Coverage Criteria for Search Based Automatic Unit Testing of Java Programs

Performance Study of Parallel Programming Paradigms on a Multicore Clusters using Ant Colony Optimization for Job-flow scheduling problems

Multi-Objective Ant Colony Optimization for Solving the Twin- Screw Extrusion Configuration Problem

Reliability Guarantees in Automata Based Scheduling for Embedded Control Software

Solving Traveling Salesman Problem by Using Improved Ant Colony Optimization Algorithm

A DISTRIBUTED APPROACH TO ANT COLONY OPTIMIZATION

SmartPATH: An Efficient Hybrid. ACO-GA Algorithm for Solving the Global Path Planning Problem of Mobile Robots

Optimal Planning with ACO

A Non-Linear Schema Theorem for Genetic Algorithms

Beam-ACO hybridizing ant colony optimization with beam search: an application to open shop scheduling

SOFTWARE TESTING STRATEGY APPROACH ON SOURCE CODE APPLYING CONDITIONAL COVERAGE METHOD

QoS Guaranteed Intelligent Routing Using Hybrid PSO-GA in Wireless Mesh Networks

Comparison of ACO and GA Techniques to Generate Neural Network Based Bezier-PARSEC Parameterized Airfoil

International Journal of Emerging Technologies in Computational and Applied Sciences (IJETCAS)

Traffic Engineering for Multiple Spanning Tree Protocol in Large Data Centers

Guessing Game: NP-Complete?

Transcription:

MuACOsm A New Mutation-Based Ant Colony Optimization Algorithm for Learning Finite-State Machines Daniil Chivilikhin and Vladimir Ulyantsev National Research University of IT, Mechanics and Optics St. Petersburg, Russia Evolutionary and Combinatorial Optimization Track @ GECCO 2013 July 8, 2013

Motivation: Reliable software Systems with high cost of failure Energy industry Aircraft industry Space industry We want to have reliable software Testing is not enough Verification is needed ACO for Learning FSMs 2

Introduction (1) Automated software engineering Model-driven development Automata-based programming Software specification Model Code ACO for Learning FSMs 3

Introduction (2) Finite-state machine Software specification Model Code ACO for Learning FSMs 4

Finite-State Machine S set of states s 0 S initial state T/z 3 Σ set of input events 1 Δ set of output actions δ: S Σ S transition function λ: S Σ Δ actions function T/z 1 A/z 3 Example: two states 2 events = {A, T} actions = {z 1, z 2, z 3, z 4 } A/z 2 ACO for Learning FSMs 5

Automata-based programming Design programs with complex behavior as automated-controlled objects Events e 1 e 2 Output actions z 1 z 2 z 2 z 3 z 4 Automated-controlled object Finite-state machine Events Actions Controlled object ACO for Learning FSMs 6

Automata-based programming: advantages Model before programming code, not vice versa Finite-state machine Model Code Possibility of program verification using Model Checking You can check temporal properties (LTL) ACO for Learning FSMs 7

Issues Hard to build an FSM with desired structure and behavior Several problems of learning FSMs were proven to be NP-hard One of the solutions metaheuristics ACO for Learning FSMs 8

Learning finite-state machines with metaheuristics N states number of states Σ input events Δ output actions X = (N states, Σ, Δ) search space Test examples Software specification Modeling environment Fitness function f: X R ACO for Learning FSMs 9

Approaches to learning FSMs Greedy heuristics problem-specific Reduction to SAT and CSP problems fast problem-specific Evolutionary algorithms (general) slow ACO for Learning FSMs 10

Proposed approach Based on Ant Colony Optimization (ACO) Non-standard problem reduction Modified ACO algorithm ACO for Learning FSMs 11

Solution representation Transition table Output table δ Event λ Event State A T State A T 1 1 2 1 z 1 z 2 2 2 1 2 z 2 z 3 ACO for Learning FSMs 12

Canonical way to apply ACO Reduce problem to finding a minimum cost path in some complete graph Vertices FSM transitions: <i S, j S, e Σ, a Δ> Each ant adds transitions to its FSM 1 1 [T/z 1 ] 1 2 [A/z 2 ] ACO for Learning FSMs 13

Canonical ACO: example 2 states 2 events 1 action ACO for Learning FSMs 14

Canonical ACO: issues Number of vertices in the construction graph grows as (N states ) 2 Σ Δ No meaningful way to define heuristic information Later we show that canonical ACO is ineffective for FSM learning ACO for Learning FSMs 15

Proposed algorithm: MuACOsm Mutation-Based ACO for learning FSMs Uses a non-standard problem reduction Modified ACO ACO for Learning FSMs 16

Problem reduction: MuACOsm vs. canonical Canonical ACO Nodes are solution components Full solutions are built by ants Proposed MuACOsm algorithm Nodes are full solutions (FSMs) Ants travel between full solutions ACO for Learning FSMs 17

FSM Mutations T/z 3 Change transition action T/z 1 1 A/z 3 Change transition end state 2 A/z 2 T/z 3 T/z 3 1 1 T/z 1 A/z 1 T/z 1 A/z 3 2 2 A/z 2 A/z 2 ACO for Learning FSMs 18

MuACOsm problem reduction Construction graph nodes are FSMs edges are mutations of FSMs Example ACO for Learning FSMs 19

Real search space graph ACO for Learning FSMs 20

Part of real search space (1) ACO for Learning FSMs 21

Part of real search space (2) ACO for Learning FSMs 22

Heuristic information u η uv = max(η min, f(v) f(u)) v Finite-state machines ACO for Learning FSMs 23

ACO algorithm A 0 = random FSM Improve A 0 with (1+1)-ES Graph = {A 0 } while not stop() do ConstructAntSolutions UpdatePheromoneValues DaemonActions ACO for Learning FSMs 24

Constructing ant solutions Use a colony of ants An ant is placed on a graph node Each ant has a limited number of steps On each step the ant moves to the next node A A 1 A 2 A 3 A 4 ACO for Learning FSMs 25

Ant step: selecting the next node Mutation A 1 f(a 1 )=8 P = 1 P new A 1 P = P new A 2 f(a 2 )=12 A 2 A f(a)=10 A A 3 f(a 3 )=0 A 3 Go to best mutated FSM А 4 f(a 4 )=9 Probabilistic selection A 4 uv uv p Av uw uw ACO for Learning FSMs 26 w { A1, A2, A3, A4}

Pheromone update Ant path quality = max fitness value on a path τ uv best Update largest pheromone value deployed on edge (u, v) Update pheromone values: τ = ( 1 ρ) τ uv uv + τ best uv pheromone evaporation rate ρ 0,1 ACO for Learning FSMs 27

Differences from previous work Added heuristic information Changed start node selection for ants Coupling with (1+1)-ES More experiments (later) More comparisons with other authors Harder problem ACO for Learning FSMs 28

Simple problem: Artificial Ant Toroidal field N N M pieces of food s max time steps Fixed position of food and the ant Goal build an FSM, such that the ant will eat all food in K steps Field example: John Muir Trail ACO for Learning FSMs 29

Artificial Ant: Fitness function f n food s max s s max last 1 n food number of eaten food pieces s max max number of allotted steps s last number of used steps eaten food f used time steps ACO for Learning FSMs 30

Simple problem: Artificial Ant Two fields: Santa Fe Trail John Muir Trail Comparison: Canonical ACO Christensen et al. (2007) Tsarev et al. (2007) Chellapilla et al. (1999) Santa Fe Trail ACO for Learning FSMs 31

Canonical ACO State count Canonical ACO Success rate, % MuACOsm Success rate, % 5 18 87 10 10 91 ACO for Learning FSMs 32

Fitness evaluation count Santa Fe Trail (Christensen et al., 600 steps) MuACOsm Christensen et al 21000 19000 17000 15000 13000 11000 9000 7000 5000 5 7 9 11 13 15 Number of FSM states ACO for Learning FSMs 33

Fitneess evaluation count John Muir Trail (Tsarev et al., 2007): 200 steps 10 6 MuACOsm Genetic algorithm 50 45 40 35 30 25 20 15 10 5 0 8 9 10 11 12 13 14 15 16 Number of FSM states MuACOsm is 30 times faster for FSMs with 7 states ACO for Learning FSMs 34

Harder problem: learning Extended Finite-State Machines (1) ACO for Learning FSMs 35

Harder problem: learning Extended Finite-State Machines (2) Input data: Number of states C and sets Σ and Δ Set of test examples T T i =<input sequence I j, output sequence O j > NP-hard problem: build an EFSM with C states compliant with tests T ACO for Learning FSMs 36

Learning EFSMs: Fitness function Pass inputs to EFSM, record outputs Compare generated outputs with references Fitness = string similarity measure (edit distance) ACO for Learning FSMs 37

Experimental setup 1. Generate random EFSM with C states 2. Generate set of tests of total length C 150 3. Learn EFSM 4. Experiment for each C repeated 100 times 5. Run until perfect fitness 6. Record mean number of fitness evaluations ACO for Learning FSMs 38

Learning random EFSMs ACO for Learning FSMs 39

Conclusion Developed new ACO-based algorithm for learning FSMs and EFSMs MuACOsm greatly outperforms GA on considered problems Generated programs can be verified with Model Checking ACO for Learning FSMs 40

Future work Better FSM representation to deal with isomorphism Use novelty search Employ verification in learning process Fitness Function MuACOsm Model Checking ACO for Learning FSMs 41

Acknowledgements We thank the ACM for the student travel grants ACO for Learning FSMs 42

Thank you for your attention! MuACOsm A New Mutation-Based Ant Colony Optimization Algorithm for Learning Finite-State Machines Daniil Chivililikhin Vladimir Ulyantsev chivdan@gmail.com This presentation online: http://rain.ifmo.ru/~chivdan/papers/2013/ gecco-2013-presentation.pdf