Evolutionary Algorithms Software



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

Evolutionary SAT Solver (ESS)

Core Curriculum to the Course:

Projects - Neural and Evolutionary Computing

Cellular Automaton: The Roulette Wheel and the Landscape Effect

Practical Applications of Evolutionary Computation to Financial Engineering

Masters in Information Technology

Introduction To Genetic Algorithms

Masters in Human Computer Interaction

Masters in Advanced Computer Science

Masters in Artificial Intelligence

A Binary Model on the Basis of Imperialist Competitive Algorithm in Order to Solve the Problem of Knapsack 1-0

Biogeography Based Optimization (BBO) Approach for Sensor Selection in Aircraft Engine

Modified Version of Roulette Selection for Evolution Algorithms - the Fan Selection

MEng, BSc Applied Computer Science

ISSN: ISO 9001:2008 Certified International Journal of Engineering Science and Innovative Technology (IJESIT) Volume 2, Issue 3, May 2013

New Modifications of Selection Operator in Genetic Algorithms for the Traveling Salesman Problem

A Genetic Algorithm Processor Based on Redundant Binary Numbers (GAPBRBN)

JMulTi/JStatCom - A Data Analysis Toolkit for End-users and Developers

Genetic Algorithm. Based on Darwinian Paradigm. Intrinsically a robust search and optimization mechanism. Conceptual Algorithm

Chapter 13: Program Development and Programming Languages

A Framework for Genetic Algorithms in Games

Bachelor of Games and Virtual Worlds (Programming) Subject and Course Summaries

Professional Organization Checklist for the Computer Science Curriculum Updates. Association of Computing Machinery Computing Curricula 2008

Masters in Computing and Information Technology

Masters in Networks and Distributed Systems

Model-based Parameter Optimization of an Engine Control Unit using Genetic Algorithms

VWF. Virtual Wafer Fab

Lab 4: 26 th March Exercise 1: Evolutionary algorithms

Numerical Research on Distributed Genetic Algorithm with Redundant

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

Page 1 of 5. (Modules, Subjects) SENG DSYS PSYS KMS ADB INS IAT

Software that writes Software Stochastic, Evolutionary, MultiRun Strategy Auto-Generation. TRADING SYSTEM LAB Product Description Version 1.

Genetic Algorithm Based Interconnection Network Topology Optimization Analysis

Empirically Identifying the Best Genetic Algorithm for Covering Array Generation

Software Engineering and Service Design: courses in ITMO University

Estimation of the COCOMO Model Parameters Using Genetic Algorithms for NASA Software Projects

Features of The Grinder 3

Programming Project (PPJ)

Algorithmic Trading with MATLAB Martin Demel, Application Engineer

Web Service Selection using Particle Swarm Optimization and Genetic Algorithms

Modern practices TIE-21100/

MEng, BSc Computer Science with Artificial Intelligence

PSS SINCAL - Overview -

A Novel Constraint Handling Strategy for Expensive Optimization Problems

School of Computer Science

LONG BEACH CITY COLLEGE MEMORANDUM

Alpha Cut based Novel Selection for Genetic Algorithm

Genetic Algorithms commonly used selection, replacement, and variation operators Fernando Lobo University of Algarve

BIOINF 585 Fall 2015 Machine Learning for Systems Biology & Clinical Informatics

CS Master Level Courses and Areas COURSE DESCRIPTIONS. CSCI 521 Real-Time Systems. CSCI 522 High Performance Computing

Program Optimization for Multi-core Architectures

2 Introduction to Java. Introduction to Programming 1 1

Lecture. Simulation and optimization

COMPE 564/ MODES 662 Natural Computing

RAPIDMINER FREE SOFTWARE FOR DATA MINING, ANALYTICS AND BUSINESS INTELLIGENCE. Luigi Grimaudo Database And Data Mining Research Group

Grammatical Differential Evolution

Integer Programming: Algorithms - 3

Java 6 'th. Concepts INTERNATIONAL STUDENT VERSION. edition

TOMLAB - For fast and robust largescale optimization in MATLAB

A Modular Approach to Teaching Mobile APPS Development

Learning in Abstract Memory Schemes for Dynamic Optimization

GUJARAT TECHNOLOGICAL UNIVERSITY Computer Engineering (07) BE 1st To 8th Semester Exam Scheme & Subject Code

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm

Chapter 13: Program Development and Programming Languages

Business Information Systems

A Parallel Processor for Distributed Genetic Algorithm with Redundant Binary Number

automates system administration for homogeneous and heterogeneous networks

COURSE RECOMMENDER SYSTEM IN E-LEARNING

Introduction to MATLAB Gergely Somlay Application Engineer

An Efficient Approach for Task Scheduling Based on Multi-Objective Genetic Algorithm in Cloud Computing Environment

Final Year Projects at itm. Topics 2010/2011

Software engineering used in simulation of Flexible Manufacturing Systems

ENHANCED CONFIDENCE INTERPRETATIONS OF GP BASED ENSEMBLE MODELING RESULTS

Planning and Scheduling in Manufacturing and Services

Eastern Washington University Department of Computer Science. Questionnaire for Prospective Masters in Computer Science Students

Computer Science Information Sheet for entry in What is Computer Science?

Erik Jonsson School of Engineering and Computer Science

Keywords revenue management, yield management, genetic algorithm, airline reservation

The Adomaton Prototype: Automated Online Advertising Campaign Monitoring and Optimization

KITES TECHNOLOGY COURSE MODULE (C, C++, DS)

Masters in Human Computer Interaction

COURSE TITLE COURSE DESCRIPTION

NEUROEVOLUTION OF AUTO-TEACHING ARCHITECTURES

Asexual Versus Sexual Reproduction in Genetic Algorithms 1

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

A Genetic Algorithm Approach for Solving a Flexible Job Shop Scheduling Problem

An Introduction to Data Mining

International Journal of Advanced Research in Electrical, Electronics and Instrumentation Engineering

Transcription:

Evolutionary Algorithms Software Prof. Dr. Rudolf Kruse Pascal Held {kruse,pheld}@iws.cs.uni-magdeburg.de Otto-von-Guericke-Universität Magdeburg Fakultät für Informatik Institut für Wissens- und Sprachverarbeitung Prof. R. Kruse, P. Held EA Software 24.06.2013 1 / 25

Outline 1. Evolving Objects: Evolutionary Computation Framework 2. JGap: Java Genetic Algorithms Package 3. ECJ - Evolutionary Computation Java 4. EASEA 5. EvA2 Prof. R. Kruse, P. Held EA Software 24. Juni 2013

Überblick [Keijzer et al., 2002] Template-based C++ - Library very large kit of modules for EAs unrestricted combination of modules easy to expand Prof. R. Kruse, P. Held EA Software 24.06.2013 1 / 25

Overview [Keijzer et al., 2002] Prof. R. Kruse, P. Held EA Software 24.06.2013 2 / 25

Representation of individuals Many predefined representations of individuals: binary-strings permutations vectors lists... Moreover, very easy to adapt on user-defined data structures Prof. R. Kruse, P. Held EA Software 24.06.2013 3 / 25

Paradigms to develop Referring to the lecture, there are many paradigms implemented: Evolutionary Strategies Genetic Algorithms Particle Swarm Optimization... Prof. R. Kruse, P. Held EA Software 24.06.2013 4 / 25

Methods on selection Implemented methods for selection: Rank based deterministic or stochastic Tournaments Roulette Elitism... Prof. R. Kruse, P. Held EA Software 24.06.2013 5 / 25

Genetic Operators Ready-to-use Operators: Uniform Initializer (0 n) Gaussian Mutation (1 1) Subtree-Crossover (2 2)... arbitrary n m operators realizable Prof. R. Kruse, P. Held EA Software 24.06.2013 6 / 25

Summary very fast and flexible library can be easily adapted to user demands 2001 first publication, since then continious development Plattform-independent http://eodev.sourceforge.net Prof. R. Kruse, P. Held EA Software 24.06.2013 7 / 25

Outline 1. Evolving Objects: Evolutionary Computation Framework 2. JGap: Java Genetic Algorithms Package 3. ECJ - Evolutionary Computation Java 4. EASEA 5. EvA2 Prof. R. Kruse, P. Held EA Software 24. Juni 2013

JGap Java Genetic Algorithms Package [Meffert, ] Java-library for genetic algorithms and genetic programming some predefined operators many examples Tutorials and JavaDoc Prof. R. Kruse, P. Held EA Software 24.06.2013 8 / 25

Scientific background JGap is heavily used in universary/scientific context Dissertations Diploma thesis Conference paper... Prof. R. Kruse, P. Held EA Software 24.06.2013 9 / 25

Genetic Programming specialisation on genetic programming creates Java-class based on JUnit-Tests RobocodeJGAP: GP-Projectwithfocusinrobotprogramming Prof. R. Kruse, P. Held EA Software 24.06.2013 10 / 25

Summary Java-library with scientific background many examples Demo: Monalisa-Painting-App (tries to paint the Mona Lisa with simple triangles) http://jgap.sourceforge.net Prof. R. Kruse, P. Held EA Software 24.06.2013 11 / 25

Outline 1. Evolving Objects: Evolutionary Computation Framework 2. JGap: Java Genetic Algorithms Package 3. ECJ - Evolutionary Computation Java 4. EASEA 5. EvA2 Prof. R. Kruse, P. Held EA Software 24. Juni 2013

AJava-basedEvolutionaryComputation Research System Java-based Framework for evolutionary algorithms and genetic programming many predefined functions and operators specialization on genetic programming written in Java - plattform independent Prof. R. Kruse, P. Held EA Software 24.06.2013 12 / 25

Features embedded GUI (unfortunately not easy to use) Hierarchical parameter files where important configurations of the EA can be made Multithreading distribution of computations over several computing machines (with exchange of individuals via Island Model) Prof. R. Kruse, P. Held EA Software 24.06.2013 13 / 25

Paradigms Genetic Algorithms Genetic Programming Evolutionary strategies (µ, λ) und (µ + λ) Differential Evolution Particle Swarm Optimization Prof. R. Kruse, P. Held EA Software 24.06.2013 14 / 25

Operators Große Auswahl an: Initializing factors Selection methods (with or without elitism) preimplemented mutation and crossover operators Prof. R. Kruse, P. Held EA Software 24.06.2013 15 / 25

Genetic Programming Preference on genetic programming primarily tree representation but predefined grammar can be used, too rather functional programs (Composition of mathematical functions) than linear programs (Scripts, Loops, Branch operations) can handle strong typed functions butalsoautomaticaldefined functions and macros Prof. R. Kruse, P. Held EA Software 24.06.2013 16 / 25

Summary very powerful and popular framework Java-Base huge community http://www.cs.gmu.edu/~eclab/projects/ecj/ Further links to other frameworks on the website. Prof. R. Kruse, P. Held EA Software 24.06.2013 17 / 25

Outline 1. Evolving Objects: Evolutionary Computation Framework 2. JGap: Java Genetic Algorithms Package 3. ECJ - Evolutionary Computation Java 4. EASEA 5. EvA2 Prof. R. Kruse, P. Held EA Software 24. Juni 2013

EASEA - EAsy Specification of Evolutionary Algorithms Plattform for Evolutionary Algorithms Evolutionary algorithm can be defined in a special language special compiler transfers EA in a set of C++ files special optimizations for Multicore-, Distributed systems and computations on graphic cards/accelerators Prof. R. Kruse, P. Held EA Software 24.06.2013 18 / 25

EASEA Prof. R. Kruse, P. Held EA Software 24.06.2013 19 / 25

EASEA many elements of the EA are already implemented user-defined adaptations and operators can be realized easily compiled C++ files can be embedded in a larger, user project many parameter of the EA can be set easily via several configuration files http://easea.unistra.fr/easea Prof. R. Kruse, P. Held EA Software 24.06.2013 20 / 25

Outline 1. Evolving Objects: Evolutionary Computation Framework 2. JGap: Java Genetic Algorithms Package 3. ECJ - Evolutionary Computation Java 4. EASEA 5. EvA2 Prof. R. Kruse, P. Held EA Software 24. Juni 2013

EvA2 Java-based framework for Evolutionary Algorithms GUI to specify all the parameters of the EA own classes can be load into GUI (development via special API) many opportunities to evaluate and compare between different algorithms developped in university context (Uni Tübingen), strong application in scientific context (usage in at least 40 publications) Prof. R. Kruse, P. Held EA Software 24.06.2013 21 / 25

EASEA Prof. R. Kruse, P. Held EA Software 24.06.2013 22 / 25

Paradigms (Multi Start) Hill Climbing, Simulated Annealing Evolutionary strategies Genetic Algorithms Differential Evolution Particle Swarm Optimization Nieche-based approachs... Prof. R. Kruse, P. Held EA Software 24.06.2013 23 / 25

Application - Examples university context, teaching Daimler AG: automaticaltransmissionoptimizations The Bosch Group: OptimizationsofJob-Shop-Scheduling problems further companies Systems Biology Toolbox for MATLAB JCell (Intra-cellular process simulation) Prof. R. Kruse, P. Held EA Software 24.06.2013 24 / 25

Summary Java Framework with own GUI widely used in university context supports analysis snd experiments of different algorithms http://www.ra.cs.uni-tuebingen.de/software/javaeva Prof. R. Kruse, P. Held EA Software 24.06.2013 25 / 25

Further reading I Keijzer, M., Merelo, J. J., Romero, G., and Schoenauer, M. (2002). Evolving objects: A general purpose evolutionary computation library. Artificial Evolution, 2310:829 888. Meffert, K. Jgap - java genetic algorithms and genetic programming package. http://jgap.sf.net. Prof. R. Kruse, P. Held EA Software 24.06.2013 1