agenda
play

Agenda Motivation and Related Works ALS The pALS framework - PDF document

19/04/2010 pALS: an Object Oriented Framework for Developing Parallel Cooperative Developing Parallel Cooperative Metaheuristics Harold Castro , Andrs Bernal COMIT (COMunications and Information Technology) Systems and Computing Engineering


  1. 19/04/2010 pALS: an Object Oriented Framework for Developing Parallel Cooperative Developing Parallel Cooperative Metaheuristics Harold Castro , Andrés Bernal COMIT (COMunications and Information Technology) Systems and Computing Engineering Department Universidad de los Andes Universidad de los Andes Bogotá, Colombia Agenda  Motivation and Related Works  ALS  The pALS framework  Achievements and Results  Conclusions NIDISC'10, Atlanta, April 19-23 2 1

  2. 19/04/2010 Motivation  Research on Optimization (COPA Research Group)  JG2A: Java Framework for Genetic Algorithms on a Grid  Evolution for JGA  Instances parallelization  Individual parallel evaluation  Uses standard tools: Condor, Globus, Java  Allows different models: Master/Slave, Cellular, Island, Hierarchical  Good results, but G d l b  Only works for GA  Lacks of statistics NIDISC'10, Atlanta, April 19-23 3 JG2A Pa Parallel i rallel instances ances Parallel E allel Evaluation uation NIDISC'10, Atlanta, April 19-23 4 2

  3. 19/04/2010 Current frameworks Sequential Parallel Single JGA, SFERES, ECJ 18 JG2A, GALib Metaheuristic HotFrame, EasyLocal, ParadisEO, Metaheuristics iOpt, PISA, Templar HeuristicLab NIDISC'10, Atlanta, April 19-23 5 Candidates Pa Para radisEO disEO HeuristicLab euristicLab  C#  C++  Multiple algorithms  Templates  GA  Four different modules  Evolutionary strategies  Paradis-EO  Ant Colony  Paradis-MO  Tabu search  Paradis-MOEO P di MOEO  No grid enabled  Paradis-PEO  Security  GT4 + MPI  Heterogeneity  Difficult to use NIDISC'10, Atlanta, April 19-23 6 3

  4. 19/04/2010 The ALS framework  ALS, Adaptive Learning Search provides a conceptual frame to analyze Metaheuristics  B  Based on the operator concept d th t t  Any specific operation  Represents an algorithm, a set of algorithms or a single Metaheuristic operation  4 operators are common to any Metaheuristic Initialize Iterate <while non stop condition> Sampling, selects elements Learning, extract information Diversification, search for new solutions Intensification, try to improve current solution Replace, replace the old solution End NIDISC'10, Atlanta, April 19-23 7 Validating ALS Simulated Annealing Variable Neighborhood Search Tabu Search Genetic Algorithms NIDISC'10, Atlanta, April 19-23 8 4

  5. 19/04/2010 pALS proposal  To develop a framework making easy the implementation of different metaheuristics on parallel environments, helping with  Parallel design  Callback services  Statistic services  Cooperative strategies Operator Cooperator Solutions Solutions Transformation Statistics Callbacks NIDISC'10, Atlanta, April 19-23 9 pALS architecture NIDISC'10, Atlanta, April 19-23 10 5

  6. 19/04/2010  Contains classes for modeling metaheuristics  Solution transformation based process  Most classes are abstract classes classes  Behavior defined by configuration files  Define operators and their parameters  Every operator has its own configuration file (or inherit from its parent) Solution  Makes of pALS a white box M k f ALS h b framework Representation Results pALS Core Layer F.O. 1 = 10 0 1 0 0 1 NIDISC'10, Atlanta, April 19-23 11  Represents a transformation of a set of solutions  May be used to model complex (i.e. metaheuristics) or simple (i.e. crossover p operator) operations  An execution is a hierarchy of operators pALS Genetic Genetic Solutions Solutions Solutions Solutions Algorithm Operator Mutation Crossover Evaluation Selection Operator ListOperator ObjectOperator NIDISC'10, Atlanta, April 19-23 12 Select best n solutions Flip bits in a solution 6

  7. 19/04/2010  Cooperator i takes solutions from (i-1)%m  Common with small m Solutions Solutions Cooperator p Ring Topology Cooperator Ring Topology Cooperator Operator Solutions Solutions NIDISC'10, Atlanta, April 19-23 13 Callback • Defines conditional behaviors after ending an operator execution • Defined as a condition and an action Statistic • About transformations inside operators (time, best solution, etc.) • Bounded by the InitStatistic and EndStatistic methods Soluciones Soluciones Operator Context Builder • Allows to use external parameters from a file or an external Java class InitStatistic EndStatistic Support classes Support classes ReadContext CheckCallbacks value = 10 vector = 1 2 3 4 NIDISC'10, Atlanta, April 19-23 14 matrix = 1 2 3 4 ,\ 5 6 7 8 7

  8. 19/04/2010 • Captures operators’ execution logic • Offers flexibility and transparency to the execution (centralized, distributed, etc.) • Every operator has its own ExecutionPrototype defined by the user in a configuration file ExecutionPrototype • The ExecutionPrototype class can be Solutions Solutions easily exteneded Operator ExecutionLayer LocalDelegate GridDelegate NIDISC'10, Atlanta, April 19-23 Thread Pool 15 ThreadDelegate Delegate Thread/Grid delegates Files Operator GT4 Solutions Libs GRAM Certs Execution Thread 1 Solutions Operator Prototype Operator Thread 2 Files Operator Libs  Takes advantage of multi- Certs Condor CondorPool core platforms Master  Launch a new thread for  Manages security Manages security the operator’s execution  Transparent for users Thread/Grid Delegate Solutions Solutions Operator NIDISC'10, Atlanta, April 19-23 16 8

  9. 19/04/2010 Execution models  Multi-Boot  Parallel Execution  Mix NIDISC'10, Atlanta, April 19-23 17 Life cycle pALS pALS Global Settings Operator Context Cooperator Execution Coperator Settings Init Statistics End Statistics Callback Builder Prototype Read Publish Operator NIDISC'10, Atlanta, April 19-23 18 9

  10. 19/04/2010 pALS offer Functionality Flexibility Context Operator p Cooperator p Builder B ild Settings Callback Statistic pALS Wid Wide scope / reusability / bilit Performance Genetic Tabu Search Execution Local Algorithm Prototype Delegate Simulated VNS Thread Grid Annealing Delegate Delegate NIDISC'10, Atlanta, April 19-23 19 pALS experimentation Boolean satisfiability problem (SAT) Boolean satisfiability problem (SAT) Tabu Search Tabu Search Knapsack Knapsack Genetic Algorithm with island deployment Genetic Algorithm with island deployment NIDISC'10, Atlanta, April 19-23 20 10

  11. 19/04/2010 Conclusions  pALS is a framework implementing the metaheuristic concepts behind ALS  Not a set of metaheuristics  Allows for different parallel execution, transparent to users  White-box framework, ready to be used  Enhanced tools for research: callbacks, statistics  Self-incrementing  Public available at http://sistemas.uniandes.edu.co/~comit  Public a ailable at http //sistemas uniandes edu co/~comit  Needs further testing and comparisons NIDISC'10, Atlanta, April 19-23 21 Configuration file example # SAT Tabu Search Algorithm settings file   execution_instance = BasicTabuSearch   objectives objectives = max max  representation_length = 50  execution_instance_settings_file = data/satisfiability.properties neighborhood_size = 200   tabu_list_length = 5  representation = BinaryArrayRepresentation  init_solution = RandomPopulationGenerator  neighborhood = SinglePointFlipOperator binary_flip_operator_rate= 0.5   record_tabu = ArrayIndexesTabuRecordOperator  tabu_check = ArrayIndexesTabuCheckOperator  evaluation = CNFSatisfiabilityOperator  selection = BestSolutionsSelectionOperator solutions = 1   max_iterations = 1  cnf_file = data/aim-50-2_0-yes1-1.cnf NIDISC'10, Atlanta, April 19-23 22 11

  12. 19/04/2010 Grid delegate execution NIDISC'10, Atlanta, April 19-23 23 12

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend