A Parallel Processor for Distributed Genetic Algorithm with Redundant Binary Number



Similar documents
Numerical Research on Distributed Genetic Algorithm with Redundant

Leran Wang and Tom Kazmierski

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

Comparison of Major Domination Schemes for Diploid Binary Genetic Algorithms in Dynamic Environments

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

A Robust Method for Solving Transcendental Equations

ON SUITABILITY OF FPGA BASED EVOLVABLE HARDWARE SYSTEMS TO INTEGRATE RECONFIGURABLE CIRCUITS WITH HOST PROCESSING UNIT

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

Architecture bits. (Chromosome) (Evolved chromosome) Downloading. Downloading PLD. GA operation Architecture bits

Evolutionary SAT Solver (ESS)

Memory Allocation Technique for Segregated Free List Based on Genetic Algorithm

Proposal and Analysis of Stock Trading System Using Genetic Algorithm and Stock Back Test System

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

Introduction To Genetic Algorithms

College of information technology Department of software

International Journal of Software and Web Sciences (IJSWS)

Genetic Algorithm Evolution of Cellular Automata Rules for Complex Binary Sequence Prediction

Genetic algorithms for changing environments

ECONOMIC GENERATION AND SCHEDULING OF POWER BY GENETIC ALGORITHM

GA as a Data Optimization Tool for Predictive Analytics

A Method of Cloud Resource Load Balancing Scheduling Based on Improved Adaptive Genetic Algorithm

A Study of Crossover Operators for Genetic Algorithm and Proposal of a New Crossover Operator to Solve Open Shop Scheduling Problem

Optimal PID Controller Design for AVR System

Programming Risk Assessment Models for Online Security Evaluation Systems

A Service Revenue-oriented Task Scheduling Model of Cloud Computing

Proceedings of the First IEEE Conference on Evolutionary Computation - IEEE World Congress on Computational Intelligence, June

How To Fix A 3 Bit Error In Data From A Data Point To A Bit Code (Data Point) With A Power Source (Data Source) And A Power Cell (Power Source)

Research on a Heuristic GA-Based Decision Support System for Rice in Heilongjiang Province

A SURVEY ON GENETIC ALGORITHM FOR INTRUSION DETECTION SYSTEM

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

Alpha Cut based Novel Selection for Genetic Algorithm

LOAD BALANCING IN CLOUD COMPUTING

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

Practical Applications of Evolutionary Computation to Financial Engineering

Advanced Task Scheduling for Cloud Service Provider Using Genetic Algorithm

Genetic Algorithm Based Interconnection Network Topology Optimization Analysis

Management Science Letters

Towards Heuristic Web Services Composition Using Immune Algorithm

A Hybrid Tabu Search Method for Assembly Line Balancing

CHAPTER 6 GENETIC ALGORITHM OPTIMIZED FUZZY CONTROLLED MOBILE ROBOT

University of St. Thomas ENGR Digital Design 4 Credit Course Monday, Wednesday, Friday from 1:35 p.m. to 2:40 p.m. Lecture: Room OWS LL54

Design and FPGA Implementation of a Novel Square Root Evaluator based on Vedic Mathematics

Vol. 35, No. 3, Sept 30,2000 ملخص تعتبر الخوارزمات الجينية واحدة من أفضل طرق البحث من ناحية األداء. فبالرغم من أن استخدام هذه الطريقة ال يعطي الحل

A Comparison of Genotype Representations to Acquire Stock Trading Strategy Using Genetic Algorithms

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

AUTOMATIC ADJUSTMENT FOR LASER SYSTEMS USING A STOCHASTIC BINARY SEARCH ALGORITHM TO COPE WITH NOISY SENSING DATA

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

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

Implementation of Modified Booth Algorithm (Radix 4) and its Comparison with Booth Algorithm (Radix-2)

PROCESS OF LOAD BALANCING IN CLOUD COMPUTING USING GENETIC ALGORITHM

Cellular Automaton: The Roulette Wheel and the Landscape Effect

International Association of Scientific Innovation and Research (IASIR) (An Association Unifying the Sciences, Engineering, and Applied Research)

SOFTWARE TESTING STRATEGY APPROACH ON SOURCE CODE APPLYING CONDITIONAL COVERAGE METHOD

Machine Architecture and Number Systems. Major Computer Components. Schematic Diagram of a Computer. The CPU. The Bus. Main Memory.

Using Genetic Algorithm for Network Intrusion Detection

New binary representation in Genetic Algorithms for solving TSP by mapping permutations to a list of ordered numbers

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

Intelligent Modeling of Sugar-cane Maturation

Neural Network and Genetic Algorithm Based Trading Systems. Donn S. Fishbein, MD, PhD Neuroquant.com

USING GENETIC ALGORITHM IN NETWORK SECURITY

A Novel Binary Particle Swarm Optimization

A Performance Comparison of GA and ACO Applied to TSP

FACULTY OF COMPUTER SCIENCE AND ENGINEERING CURRICULUM FOR POSTGRADUATE PROGRAMMES. (Master in Information Technology)

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

Predictive Analytics using Genetic Algorithm for Efficient Supply Chain Inventory Optimization

Genetic Algorithms and Sudoku

Volume 3, Issue 2, February 2015 International Journal of Advance Research in Computer Science and Management Studies

COMBINATIONAL CIRCUITS

Implementation and Design of AES S-Box on FPGA

Original Article Efficient Genetic Algorithm on Linear Programming Problem for Fittest Chromosomes

Acoustic Design of Theatres Applying Genetic Algorithms

Lab 4: 26 th March Exercise 1: Evolutionary algorithms

Investigating Parallel Genetic Algorithms on Job Shop Scheduling Problems

Digital Systems. Syllabus 8/18/2010 1

Holland s GA Schema Theorem

Evaluation of Different Task Scheduling Policies in Multi-Core Systems with Reconfigurable Hardware

The Use of Evolutionary Algorithms in Data Mining. Khulood AlYahya Sultanah AlOtaibi

Spam Filtering Using Genetic Algorithm: A Deeper Analysis

Intelligent Agents Serving Based On The Society Information

A hybrid Approach of Genetic Algorithm and Particle Swarm Technique to Software Test Case Generation

An Ant Colony Optimization Approach to the Software Release Planning Problem

Influence of the Crossover Operator in the Performance of the Hybrid Taguchi GA

Evolutionary Prefetching and Caching in an Independent Storage Units Model

Advances in Smart Systems Research : ISSN : Vol. 3. No. 3 : pp.

Intelligent Flexible Automation

Highway Maintenance Scheduling Using Genetic Algorithm with Microscopic Traffic Simulation

Floating Point Fused Add-Subtract and Fused Dot-Product Units

Effective Estimation Software cost using Test Generations

Empirically Identifying the Best Genetic Algorithm for Covering Array Generation

APPLICATION OF ADVANCED SEARCH- METHODS FOR AUTOMOTIVE DATA-BUS SYSTEM SIGNAL INTEGRITY OPTIMIZATION

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

Performance of Hybrid Genetic Algorithms Incorporating Local Search

HARDWARE IMPLEMENTATION OF TASK MANAGEMENT IN EMBEDDED REAL-TIME OPERATING SYSTEMS

Lecture N -1- PHYS Microcontrollers

Evolutionary Detection of Rules for Text Categorization. Application to Spam Filtering

Optimal Tuning of PID Controller Using Meta Heuristic Approach

A Fast Computational Genetic Algorithm for Economic Load Dispatch

A Novel Cryptographic Key Generation Method Using Image Features

NIOS II Based Embedded Web Server Development for Networking Applications

Effects of Symbiotic Evolution in Genetic Algorithms for Job-Shop Scheduling

Transcription:

A Parallel Processor for Distributed Genetic Algorithm with Redundant Binary Number 1 Tomohiro KAMIMURA, 2 Akinori KANASUGI 1 Department of Electronics, Tokyo Denki University, 07ee055@ms.dendai.ac.jp 2 Graduate School of Engineering, Tokyo Denki University, kanasugi@mail.dendai.ac.jp Abstract Genetic algorithm (GA) is one of optimization algorithm based on an idea for evolution of life. GA can be applied various combination optimization problem. This paper proposes a parallel processor for distributed genetic algorithm (DGA) with redundant binary number. Since a redundant binary number has redundancy, solution expression becomes variegated. For this reason, it is expected the algorithm easily find the optimized solution, and the error rates decrease. Since DGA is a parallel algorithm, the performance can be improved by using a specified parallel processor. The effectiveness of the proposed processor was confirmed by some simulations and experiments using FPGA circuit board. 1. Introduction Keywords: Parallel Processor, Distributed GA, Redundant Binary Number Genetic algorithm (GA) is one of optimization algorithm based on an idea for evolution of life [1]. GA can be applied various problems such as combination optimization problem, machine learning and so on. A distributed genetic algorithm (DGA) divides a solution group into some solution groups island, and performs genetic operation in each island [2]. In DGA, in order to exchange the solution among each island, migration operation is performed. Since DGA has few numbers of individuals per island, premature convergence takes place easily. However, since diversity is also maintainable by migration, compared with conventional GA, effective solution search is expectable. This paper proposes a novel DGA with redundant binary number, while conventional DGA expresses chromosomes in binary number. Since a redundant binary number has redundancy, solution expression becomes variegated. For this reason, it is expected the algorithm easily find the optimized solution, and the error rates decrease. In the proposed algorithm, different numerical systems are used on each island. Therefore, since diversity is further maintainable, the further improvement in performance is expectable. Since DGA is a parallel algorithm, the performance can be improved by using a specified parallel processor. The effectiveness of the proposed processor was confirmed by some simulations and experiments using FPGA circuit board. 2. Distributed genetic algorithm A Genetic algorithm (GA) is proposed in 1975 by Prof. John Holland. The algorithm is based on Darwin's evolutionary theory and likens solution to gene. The flow chart of GA is shown in figure 1. The procedure of GA is as follows. (1) Initialization: The first process decides initial genotype, namely value and genetic length. For example, if we assume values are 0 and 1, and length is 8, a chromosome is shown in figure 2. (2) Evaluation: The second process calculates the fitness for each individual with the target function. The evaluation depends on each problem. (3) Termination Judgment: If the process satisfies the termination condition, the operation finishes and output the individual with the best fitness as the optimized solution. (4) Selection: To generate the children, this process chooses parents from individuals. For example, if we assume parents the first generation, children become the second generation. The children International Journal of Information Processing and Management(IJIPM) Volume 4, Number 1, January 2013 doi:10.4156/ijipm.vol4.issue1.12 98

generate the next children again. The children inherited the characteristic of the parents are generated in this way. (5) Crossover: This process crosses individuals chosen by selection operation and generates the individuals of the next generation. Example of crossover operation is shown in figure 3. (6) Mutation: This process mutates the chromosome of new generation. The mutation is effective to escape from a local optimum solution. Example of crossover operation is shown in figure 4. Figure 1. Flow chart of GA Figure 2. An example of chromosome Figure 3. Example of crossover operation 2.1. Distributed genetic algorithm Figure 4. Example of mutation operation A distributed genetic algorithm (DGA) divides a solution group into some solution groups island, and performs genetic operation in each island. In DGA, in order to exchange the solution among each island, migration operation is performed (figure 5). Since DGA has few numbers of individuals per island, premature convergence takes place easily. However, since diversity is also maintainable by migration, compared with conventional GA, effective solution search is expectable. Figure 5. Concept of distributed genetic algorithm (DGA) 99

2.2. Redundant binary number In this paper, redundant binary number system is utilized [3]. The advantage of GA with redundant binary number is increase of total expression number of optimized solution. From this advantage, we can expect that improvement in the searching speed and decrease of the error rate. The redundant binary number uses values 0, 1 and -1. However, because hardware cannot deal the value -1, we express each genetic information in two bits. We assume that 0 sets 00 or 11, 1 sets 01, -1 sets 10. These correspondences are summarized in table 1. For example, we express decimal number seven in binary number of the four bits precision and redundant binary number, as shown in figure 6. As shown in figure 6, chromosomes of the redundant binary number become longer in comparison with the normal binary number. However, there are many expression way. For example, there are nine ways in the case of figure 6. The GA based on redundant binary number is almost the same as conventional GA. However, decoding from redundant binary number to binary number is required. In this paper, we separate chromosomes into odd number bit and even number bit. Then we subtract even number bit from odd number bit. An example is shown in figure 7. Table 1. Bit strings of genetic information 0 1-1 Bit String 00,11 01 10 Figure 6. A comparison between binary number and redundant binary number 3. Proposed DGA Figure 7. Decoding method from redundant binary number to binary number The concept of DGA proposed in this paper is shown in figure 8. In this figure, GA_B, GA_G, and GA_RB express GA using binary number, GA using Gray code, and GA using redundant binary number, respectively. Figure 9 shows the selection method of a migration place. As shown in Fig. 9, one migration operation is performed in a ring shape. The number of the chromosomes which emigrate is one. The random number r chooses the island where a chromosome moves. A part of solutions are exchanged through the migration unit. Of course in the case of migration, code conversions are performed. Although search results depend on type of solution code, stable good results are expected to many problems by the proposed DGA. In Fig. 8, although there are two sets of GA with binary number, one set of GA with Gray code, and one set of GA with redundant binary number, this is only an example. Of course, various combinations are possible. In order to suppress the circuit scale, the composition of figure 8 was illustrated. Namely, since the scale is small, two sets of circuits treating a binary number are used, and since the scale is large, as for the circuit treating a gray code or a redundant binary number, only one set is used. 100

Figure 8. Concept of proposed DGA 4. Simulation Figure 9. The selection method of a migration place The evaluation by simulation was performed in four GA (binary number, Gray code, redundant binary and proposed DGA). The performance of each GA was evaluated by solving following three functions. f ( x) x 2 20000 (Solution: x 141) (1) f ( x) x 2 2000000000 (Solution: x 44721) (2) 2 f ( x) ( x 100)( x 40000) (Solution: 40000 x ) (3) The simulation program was implemented in C language. The error rates of three functions are summarized in figure 10. Each result is the average of 500 times of trial. The parameters are summarized in table 2. In addition, although the solution is denoted by 16 bits in GA with binary number and Gray code, the solution is denoted by 32 bits in GA with redundant binary number. In calculation of error rate, only the case where a solution is completely same as the optimal solution is judged as a correct answer. Therefore, if a solution is not in agreement with the optimal solution, even if very close to the optimal solution, it has judged as an error. Figure 10 shows that good results were obtained by the proposed DGA in various problems. 101

5. Design of processor Figure 10. Error rate Table 2. GA Parameters Parameter Value Generation 100 Population 32 (8 x 4) Selection Crossover Ranking One point Crossover rate 1 Mutation rate 0.125 Since DGA is a parallel algorithm, the performance can be improved by using a specified parallel processor. Then, the processor which specialized in proposed DGA was designed. The block diagram is shown in Fig. 11. Figure 11. Block diagram The processor consists of four islands and one migration unit. Each island consists of a memory, a crossover unit, mutation units and an evaluation unit. Two islands are assigned to GA with usual binary number, one island is assigned to GA with gray code and one island is assigned to GA with redundant binary number. By using microprocessors for evaluation units, the proposed processor is applicable to many problems. However, in this paper, the specified evaluation unit for solving the above-mentioned equation 2 was designed for simplification. The processor was described by VHDL. The integrated design environment ISE 11.1 of Xilinx Corporation was used for logic simulation and implementation. The target FPGA is Virtex4 (xc4vlx25) of Xilinx Corporation. Figure 12 shows the result of logic simulation. This simulation result shows that the suitable solution is obtained. The situation of experiment is shown in figure 13. The FPGA evaluation 102

board is connected to a display monitor, and the result is displayed. The result is displayed by the hexadecimal number. Since AEB1 of a hexadecimal number is 44721 of a decimal number, it is the right result. Figure 12. Logic simulation results 6. Conclusion Figure 13. Experiment with FPGA board In this paper, a parallel processor for distributed genetic algorithm with redundant binary number was presented. It was confirmed that the proposed processor was effective for improvement of error rate by simulation and experimental results. The future works are evaluation for practical problems. 7. Acknowledgement This work was supported by Tokyo Denki University Science Promotion Fund (Q12J-03) 8. References [1] L. Davis, Handbook of Genetic Algorithms. Van Nostrand Reinhold, 1991. [2] R. Tanese, Distributed Genetic Algorithms, Proceeding of the 3rd International Conference on Genetic Algorithms, pp. 434-439, 1989. [3] M. Aoshima, A. Kanasugi, A Processor for Genetic Algorithm based on Redundant Binary Number, Proceeding of AICIT International Conference on Convergence and Hybrid Information Technology, Vol.1, pp. 581-586, 2008. 103

[4] A. Murayama, A. Kanasugi, A novel coding method for genetic algorithms based on redundant binary number, Proceeding of International Symposium on Artificial Life and Robotics, pp. 709-710, 2010. [5] P. Graham, B. Nelson, A hardware genetic algorithm for the traveling salesman problem on SPLASH2, Proceeding of International Workshop on Field Lecture Notes In Computer Science, Vol. 975, pp. 352-361, 1995. [6] S. Seto, A. Kanasugi, A Novel Distributed Genetic Algorithm with Redundant Binary Number, Proceeding of AICIT International Conference on Information Science and Digital Content Technology, pp. 273-276, 2012. [7] M. Aoshima, A. Kanasugi, A Processor for Genetic Algorithm based on Redundant Binary Number, Journal of AICIT Next Generation Information Technology, Vol. 1, No. 3, pp. 66-74, 2010. [8] M. Murayama, A. Kanasugi, A Processor for GA based on Redundant Binary Number using FPGA, Journal of Next Generation Information Technology, Vol. 3, No. 3, pp. 1-9, 2012. 104