An gentle introduction to StupidAlgorithm Library Yi

Slides:



Advertisements
Similar presentations
Unit-iv.
Advertisements

10/01/2014 DMI - Università di Catania 1 Combinatorial Landscapes & Evolutionary Algorithms Prof. Giuseppe Nicosia University of Catania Department of.
12.3 – Analyzing Data.
Lazy Paired Hyper-Parameter Tuning
A Fractional Order (Proportional and Derivative) Motion Controller Design for A Class of Second-order Systems Center for Self-Organizing Intelligent.
Numerical Analysis 1 EE, NCKU Tien-Hao Chang (Darby Chang)
Numerical Analysis 1 EE, NCKU Tien-Hao Chang (Darby Chang)
Particle Swarm Optimization (PSO)
Von Karman Institute for Fluid Dynamics RTO, AVT 167, October, R.A. Van den Braembussche von Karman Institute for Fluid Dynamics Tuning of Optimization.
Aim: How do we organize and interpret statistical data?
When you see… Find the zeros You think….
Lial/Hungerford/Holcomb/Mullins: Mathematics with Applications 11e Finite Mathematics with Applications 11e Copyright ©2015 Pearson Education, Inc. All.
A Local-Optimization based Strategy for Cost-Effective Datasets Storage of Scientific Applications in the Cloud Many slides from authors’ presentation.
1 An Adaptive GA for Multi Objective Flexible Manufacturing Systems A. Younes, H. Ghenniwa, S. Areibi uoguelph.ca.
Parameter Control A.E. Eiben and J.E. Smith, Introduction to Evolutionary Computing Chapter 8.
On the Genetic Evolution of a Perfect Tic-Tac-Toe Strategy
CHAPTER 2 D IRECT M ETHODS FOR S TOCHASTIC S EARCH Organization of chapter in ISSO –Introductory material –Random search methods Attributes of random search.
Assessment. Schedule graph may be of help for selecting the best solution Best solution corresponds to a plateau before a high jump Solutions with very.
Optimal Design Laboratory | University of Michigan, Ann Arbor 2011 Design Preference Elicitation Using Efficient Global Optimization Yi Ren Panos Y. Papalambros.
Local or Global Minima: Flexible Dual-Front Active Contours Hua Li Anthony Yezzi.
Evolutionary Computational Intelligence Lecture 10a: Surrogate Assisted Ferrante Neri University of Jyväskylä.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
UMass Lowell Computer Science Advanced Algorithms Computational Geometry Prof. Karen Daniels Spring, 2004 Project.
Evolutionary Computational Intelligence Lecture 8: Memetic Algorithms Ferrante Neri University of Jyväskylä.
D Nagesh Kumar, IIScOptimization Methods: M1L4 1 Introduction and Basic Concepts Classical and Advanced Techniques for Optimization.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Genetic Programming. Agenda What is Genetic Programming? Background/History. Why Genetic Programming? How Genetic Principles are Applied. Examples of.
FLANN Fast Library for Approximate Nearest Neighbors
Efficient Model Selection for Support Vector Machines
On comparison of different approaches to the stability radius calculation Olga Karelkina Department of Mathematics University of Turku MCDM 2011.
1 Hybrid methods for solving large-scale parameter estimation problems Carlos A. Quintero 1 Miguel Argáez 1 Hector Klie 2 Leticia Velázquez 1 Mary Wheeler.
1 Paper Review for ENGG6140 Memetic Algorithms By: Jin Zeng Shaun Wang School of Engineering University of Guelph Mar. 18, 2002.
Improved Gene Expression Programming to Solve the Inverse Problem for Ordinary Differential Equations Kangshun Li Professor, Ph.D Professor, Ph.D College.
Comparison of Differential Evolution and Genetic Algorithm in the Design of a 2MW Permanent Magnet Wind Generator A.D.Lilla, M.A.Khan, P.Barendse Department.
Presenter: Chih-Yuan Chou GA-BASED ALGORITHMS FOR FINDING EQUILIBRIUM 1.
Optimization Problems - Optimization: In the real world, there are many problems (e.g. Traveling Salesman Problem, Playing Chess ) that have numerous possible.
(Particle Swarm Optimisation)
Omni-Optimizer A Procedure for Single and Multi-objective Optimization Prof. Kalyanmoy Deb and Santosh Tiwari.
Genetic Algorithms Introduction Advanced. Simple Genetic Algorithms: Introduction What is it? In a Nutshell References The Pseudo Code Illustrations Applications.
Christoph F. Eick: Using EC to Solve Transportation Problems Transportation Problems.
Algorithms and their Applications CS2004 ( ) 13.1 Further Evolutionary Computation.
Biologically inspired algorithms BY: Andy Garrett YE Ziyu.
Review of Parnas’ Criteria for Decomposing Systems into Modules Zheng Wang, Yuan Zhang Michigan State University 04/19/2002.
Authors: Soamsiri Chantaraskul, Klaus Moessner Source: IET Commun., Vol.4, No.5, 2010, pp Presenter: Ya-Ping Hu Date: 2011/12/23 Implementation.
Optimization in Engineering Design 1 Introduction to Non-Linear Optimization.
Faculty of Information Engineering, Shenzhen University Liao Huilian SZU TI-DSPs LAB Aug 27, 2007 Optimizer based on particle swarm optimization and LBG.
Application of the GA-PSO with the Fuzzy controller to the robot soccer Department of Electrical Engineering, Southern Taiwan University, Tainan, R.O.C.
Selection and Recombination Temi avanzati di Intelligenza Artificiale - Lecture 4 Prof. Vincenzo Cutello Department of Mathematics and Computer Science.
STAR SVT Self Alignment V. Perevoztchikov Brookhaven National Laboratory,USA.
Non-parametric Methods for Clustering Continuous and Categorical Data Steven X. Wang Dept. of Math. and Stat. York University May 13, 2010.
An gentle introduction to StupidAlgo Library Yi
1 Double-Patterning Aware DSA Template Guided Cut Redistribution for Advanced 1-D Gridded Designs Zhi-Wen Lin and Yao-Wen Chang National Taiwan University.
A Presentation on Adaptive Neuro-Fuzzy Inference System using Particle Swarm Optimization and it’s Application By Sumanta Kundu (En.R.No.
Breeding Swarms: A GA/PSO Hybrid 簡明昌 Author and Source Author: Matthew Settles and Terence Soule Source: GECCO 2005, p How to get: (\\nclab.csie.nctu.edu.tw\Repository\Journals-
Genetic Algorithms And other approaches for similar applications Optimization Techniques.
Genetic Algorithm. Outline Motivation Genetic algorithms An illustrative example Hypothesis space search.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
Threads vs. Events SEDA – An Event Model 5204 – Operating Systems.
Adnan Quadri & Dr. Naima Kaabouch Optimization Efficiency
PSO -Introduction Proposed by James Kennedy & Russell Eberhart in 1995
Meta-heuristics Introduction - Fabien Tricoire
C.-S. Shieh, EC, KUAS, Taiwan
Who cares about implementation and precision?
Presented by: Sameer Kulkarni
Particle swarm optimization
Haim Kaplan and Uri Zwick
Shih-Wei Lin, Kuo-Ching Ying, Shih-Chieh Chen, Zne-Jung Lee
Boltzmann Machine (BM) (§6.4)
Introduction to Genetic Algorithm and Some Experience Sharing
Evolutionary Ensembles with Negative Correlation Learning
Presentation transcript:

an gentle introduction to StupidAlgorithm Library Yi

Outline introduction test function example demonstration future improvement and directions

What is StupidAlgorithm Library an lightweight,cross-platform and real-valued c++ evolutonary computation algorithm library under developing motivation:automation of ec algorithms experiments and assessment of algorithm portfolio. it provide you a blackbox which can help you to choose the best among your algorithm portfolio

Major Features batch run scripts,algorithm statisticals datas generation and fine-tune ability ALL through configuration file. 5 types of evolutionary algorithm PSO,DE,FEP currently. 22 algorithms,24 benchmark functions,4 types of termination criterion,3 types of initialization method reside. Multi-thread tasking among different parameter- combinations/algorithms.

a partial comparison Library EOStupidAlgorithm Major implementation technique TemplateVirtual Function ConcurrencyNOThread pool FunctionalityEnhanced features and extensibility Decent hybrid of algorithmssupported and complicated(complex syntax) NO(currently) algorithms experiment automation NOConfigurable script,statistics report generation programmer-friendinessOops,template :(:)

Hierarchy of Library an approximation of "Strategy" Design Pattern *minimum usage of template technique in C++ Conform to the ISO C++ 0x standard

Multi-Threaded Tasking

What can we learn by experiment Experiment settings: All tested algorithms used the same initial population Population size equal to 20. All statistic data are all averaged over 20 runs. Termination criterion: 1. maximum function evaluation number equals maximum stagnation generation number equals 500.

an example of batch run scripts # batch run configuration file # # format: # algorithm_number config_file_path # algorithm_number: # 1: standard PSO algorithm # 2: mPSO algorithm # 3: arPSO algorithm # 4: dPSO algorithm # 5: my dPSO algorithm # 6 PSObc algorithm # 7 DE algorithm with basic extension # 8 self-adaptive DE algorithm # 9 Fast Evolutionary Programming algorithm # 10:Improved Fast Evolutionary Programming algorithm # '-' means same config_file_path with previous item 1parameters_F5.txt #2parameters_F5.txt #3parameters_F5.txt 4parameters_F5.txt #5Parameters_F5.txt #6parameters_F5.txt

Test Example:Function F5 two-dimensional,multi-modal, global minimum:x=(0,0),y=-1,infinite sub-optimum solutions around area

performance index algo_num ber be st worstavg_va l stdconv_co unt conv_ra tio avg_ti me eval_co unt pso dpso de fep

Auto-generated algorithm portfolio evaluation all bar graph are averaged through 20 runs

Auto-generated quality and diversity comparison all curve graph are averaged through 20 runs

Auto-generated average search radius comparison

Observation:dpso is better than pso velocity diversity and position diversity is closed related in pso algorithm dpso has higer diversity and velocity diversity than pso in f5,althrough the quality of solution is no better than the latter.

Curiosity:change the termination criterion,rerun the test algo_nu mber bestworstavg_v al stdconv_c ount conv_r atio avg_t ime eval_c ount avg_ gen pso dpso de fep

what happen to PSO? BEFORE AFTER

F5 Test Example Observation: PSO Algorithm is susceptible to max iteration number parameter,and termination criterion is set to run until stagnation,hence no appropriate max iteration number is set for the specific problem. DE is the most simple algorithm as parameter tuning complexity is concerned(almost parameter-free),it has the highest diversity and mean search radius also. EP is the most random and unstable algorithm.

Auto-generated Algorithm Sustainability Comparison

Auto-generated algorithms comparison stat among DE algo eDEdmDEDE/EDAEDAspDEjDE Rosenbro ck 0(0%) M_foxhole0(0%) M_langer man 0(0%) M_michae lwicz 0(0%) Step30(100%) 2( %) 30(100%) Rosenbro ck 0(0%) Quartic_wi th_noise 0(0%) F80(0%) Rastrigin0(0%) Ackey0(0%) Griewank0(0%) 9(30%)0(0%) F120(0%) F130(0%) Camelbac k 0(0%) F140(0%) F150(0%)

F5 example conclusion:No Free Lunch As far as F5 is concerned: pso is the best among tested algorithms as to convergent rate and speed,but it is very sensitive to max iteration number(unique and additional parameter). de is the best trade-off choice in F5 verified by two-tailed t-test. fep is the most sustainable/random algorithm among tested algorithms according to sustainability stat and plotting.

Future Improvement and Challenge open questions: Design Pattern: To improve the abstractness of class hierarchy, how to separate virtual function and template in same base class? Algorithm: –Why fep algorithm is so slow in practice?it is caused by its special tournament selection procedure? –How to hybrid two different kind algorithm according to experiment datas and analysis?

Q & A StupidAlgorithm library is open source and immature by and large,checkout and leave your critiques. your participation and code review(algorithm performance optimization/code revision) will be appreciated.