ISSN: 2277 – 9043    International Journal of Advanced Research in Computer Science and Electronics Engineering           ...
ISSN: 2277 – 9043  International Journal of Advanced Research in Computer Science and Electronics Engineering             ...
ISSN: 2277 – 9043     International Journal of Advanced Research in Computer Science and Electronics Engineering          ...
ISSN: 2277 – 9043  International Journal of Advanced Research in Computer Science and Electronics Engineering             ...
ISSN: 2277 – 9043  International Journal of Advanced Research in Computer Science and Electronics Engineering             ...
Upcoming SlideShare
Loading in …5

79 83


Published on

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

79 83

  1. 1. ISSN: 2277 – 9043 International Journal of Advanced Research in Computer Science and Electronics Engineering Volume 1, Issue 4, June 2012 Design of Robust Turbo Code Interleaver by Differential Evolution and Genetic Algorithms V.Glory, Ch.Ravi Kumar, Dr.K.Padma Raju Moreover, if one forms the “Delay Transform” of an impulse Abstract— These Since their appearance in 1993, first response gi (D), the n- th code word can then be formed asapproaching the Shannon limit, turbo codes gave a new c(D) = m(D)gi (D). Together, all possible solutions of andirection in the channel encoding field, especially since they message code forms what is known as a convolution code.have been adopted for multiple telecommunication norms. To Although the formulation of a convolution code assumes aobtain good performance, it is necessary to design a robust message to be theoretically infinite (as well as the space ofturbo code interleaver and the code rate. Compared to 1/3 Coderate 2/3 coder has less redundancy. So in this project we are acceptable codes), we define block codes of length L.using the code rate of 2/3. This paper proposes a differentialevolution approach to find above average turbo codeinterleavers. Performance is compared with the conventionalgenetic algorithm approach and the empirical results illustratethat DE performs well. Index Terms—BER, convolutional code capacity,evolutionary algprithms(EA), free distance, non trivialoptimization problems, optimal code, random keys encoding,rate. (a) I. INTRODUCTION The introduction of the turbo principle allowed closeapproach to the Shannon limit – a theoretical boundarydescribing the maximum capacity of a noisy communicationchannel. The invention of the turbo codes and its superiorperformance in practical applications also initiated arenaissance of channel coding [1, 2]. The exceptionalperformance of the turbo codes can be further improved by (b)finding right settings for a particular system. The structure of Fig. 1(a) 2/3 convolutional encoderthe interleaver, performing a permutation of input bits, is one (b)corresponding binary/octal generator matriximportant property of any turbo code system. In this paper,we optimize the turbo code interleaver by genetic algorithms With this, an encoder can be viewed as a generator matrixand differential evolution. G(x) of a linear block code, and hence, multiple encoding schemes can be designed to achieve a rate 2/3 system. In addition, each encoding scheme can contain μ memory II. OPTIMAL 2/3 CONVOLUTIONAL CODES elements, adding versatility to design of a particular convolution code. To this end, we seek to implement an Binary linear convolution codes, like that of binary optimal convolution code of different μ sizes..linear block codes are useful in the power-limited regime.Here, we see that the encoder is a LTI filter with banks gi (D)that are both rational and causal. More- over, the message m III. TURBO CODES= [m1 , m2 , ..., mL ] of length L is passed in bit-by-bitproducing n code words cn . From this, we can then form the The turbo codes were introduced by Berrou, Glavieux andencoded message as Thitimajshima in 1993 [2] and they have become a hot topic since then. Prior to the turbo codes, 3dB or more separated cnk = [c1, c2,…,c1,c2,…cn,c1,c2,….cn] the specfral efficiency of real world channel encoding systems from the theoretical maximum described by Shannon theorem[2]. Manuscript received June 15, 2012. The turbo codes are an implementation of parallel V.Glory, ECE Department, Sir C.R.R.College of Engineering, ., (e-mail: concatenation of two circular recursive Eluru, India, 8096127476Ch.Ravi Kumar, ECEDepartment, Sir C.R.R College of Engineering, Eluru, India, 9440396021., convolutional (CRSC) codes based on a pseudorandom(e-mail: permutation (the interleaver). The general scheme of a classic Dr.K.Padma Raju, ECE Department, JNTUK , Kakinada, India,, turbo encoder is shown in Figure 2.(e-mail: 79 All Rights Reserved © 2012 IJARCSEE
  2. 2. ISSN: 2277 – 9043 International Journal of Advanced Research in Computer Science and Electronics Engineering Volume 1, Issue 4, June 2012 Wfree = the information bit multiplicity, i.e. the sum of the u puncturing hamming weights of the input frames generating the code & b words with dfree. multiplexing There are several algorithms for free distance evaluation. RSC encoder1 c1 Garello presented an algorithm designed to effectively compute free distances of large interleavers with Interleave unconstrained input weight based on constrained subcodes r This work introduces interleaver optimization driven by algebraical estimation of maximum dfree evaluated using RSC encoder 2 u1 c2 analytical approach. IV. GENETIC ALGORITHMS Fig. 2 A general scheme of turbo encoder Genetic algorithms are probably the most popular and The encoder processes a -bit long information frame. The wide spread member of the class of evolutionary algorithmsinput frame is interleaved by the N–bit interleaver to form (EA). EAs form a group of iterative stochastic search andpermuted frame u1. Original input frame is encoded by the optimization methods based on mimicking successfulencoder RSC1 and interleaved frame is encoded by RSC2. optimization strategies observed in nature [5, 6, 7, 8]. TheHereafter, the two encoded frames c1 and c2 are merged essence of EAs lies in their emulation of Darwinian evolution,together and with the original input sequence u according to utilizing the concepts of Mendelian inheritance for use insome puncturing and multiplexing scheme. The rate of the computer science [6]. Together with fuzzy sets, neural 𝑘 𝐼𝑛𝑝𝑢𝑡 𝑆𝑦𝑚𝑏𝑜𝑙𝑠 networks, and fractals, evolutionary algorithms are amongcode is defined as r = 𝑛 = 𝑂𝑢𝑡𝑝𝑢𝑡 𝑆𝑦𝑚𝑏𝑜𝑙𝑠 . the fundamental members of the class of soft computing Previous studies have illustrated that a random block methods.interleaver (random permutation of the input frame) can be in EAs operate with a population of artificial individualscertain cases (e.g. for BER > 10-5) more efficient than other (also referred to as items or chromosomes) encoding possiblechannel encoding schemes [3]. In this paper, an optimized problem solutions. Encoded individuals are evaluated using aturbo code block interleaver is compared with a random carefully selected objective function which assigns a fitnessblock interleaver by means of BER to evaluate its efficiency. value to each individual. The fitness value represents theThe increase of the interleaver size gives better performance quality (ranking) of each individual as a solution to a givenand better interleaving gain while worsening latency. problem. Competing individuals explore the problem domainEquation (1) illustrates the influence on the latency: towards an optimal solution [8]. Genetic algorithms (GA) introduced by John Holland and 𝐾𝑓 extended by David Goldberg, are a widely applied and highly td = Ni (1) 𝑅𝑏 successful EA variant. Evolutionary principles are in GA In (1), Rb is the code bit rate, Kf stands for the frame size implemented via iterative application of so called geneticand Ni is the number of the decoding stages. operators: the mutation, the crossover and the selection. Interleaver matrix sizes vary from tens to ten thousands of Mutation and selection can be found in more evolutionarybits. When optimizing, it is highly inefficient, if not techniques while crossover is significant for geneticimpossible, to test all the possible input vectors 2N with all algorithms. Many variants of the standard generational GAthe possible N! interleaver matrices, requiring 2NN! tests in have been proposed. The main differences lay mostly intotal. Therefore, advanced interleaver optimization methods particular selection, crossover, mutation, and replacementare under investigation. strategies [8]. Genetic algorithms have been successfully used to solveA. Interleaver Evaluation non-trivial multimodal optimization problems. They inherit As noted earlier, the performance of a turbo code can be the robustness of emulated natural optimization processesevaluated by the means of bit error rate, i.e. the ratio of the and excel in browsing huge, potentially noisy problemnumber of incorrectly decoded bits to the number of all bits domains. Their clear principles, ease of interpretation,transmitted during some period. Unfortunately, it is rather intuitive and reusable practical use and significant resultshard to compute the BER for a turbo code and the simulationscan be for larger interleavers very inaccurate. The error floor made genetic algorithms the method of choice for industrialof a C(n,k) code can be analytically estimated: applications, while carefully elaborated theoretical foundations attract the attention of academics. 𝑊𝑓𝑟𝑒𝑒 𝑘 𝐸𝑏 BER = erfc(√ dfree ) (2) 2𝑘 𝑛 𝑁0 V. GENETIC ALGORITHMS FOR INTERLEAVER OPTIMIZATION To estimate BER, the following code properties must beknown [4]: The optimization of a turbo code interleaver is a nontrivial dfree = the free distance, i.e. the minimum number of combinatorial optimization task. Genetic algorithms havedifferent bits in any pair of code words. already been considered for interleaver matrix optimization. Nfree = the free distance multiplicity, i.e. the number of Durand et al. [9] used customized GA to optimize aninput frames generating code words with dfree. interleaver of the size 105, comparing their results to previous interleaver design techniques. The genetic algorithm that was used was fully based on mutation and the 80 All Rights Reserved © 2012 IJARCSEE
  3. 3. ISSN: 2277 – 9043 International Journal of Advanced Research in Computer Science and Electronics Engineering Volume 1, Issue 4, June 2012crossover operator was omitted. The fitness criterion for A mutation-only genetic algorithm avoids the use of aevery interleaver was maximum free distance. crossover operator. This, as already mentioned, can be seen Rekh et al. [10] presented another GA variant for as a significant weakening of the algorithm.interleaver optimization, introducing 2-point crossover to the Another strategy available for problems involvinginterleaver evolution process. Nevertheless, the crossover permutation evolution is the random keys encoding [12].impact was influenced by the necessary correction of errors With random keys encoding, the permutation is representedcaused by crossover applications. The fitness criterion was as a string of real numbers (random keys), whose positionBER and the size of the optimized interleaver was 50. after ordering corresponds to the permutation index. Random keys encoded chromosomes and the crossover of randomlyA. Interleaver GA design encoded permutations are illustrated in Figure 3. When there An interlaever with the dimension N performs a hardware are two identical random keys in the population, randomlypermutation of N input bits and it can be seen as a general encoded permutations can be corrupted by crossover too.permutation of N symbols σN = (i1,i2,……..,iN) where ik ϵ However, the occurrence of two equal random keys can be[1,N] and in ≠ im for all m ≠ n ϵ [1,N]. The application of σN considered as a very rare situation.on a sample input vector IN for N=5 is illustrated in (3). There are two other more significant drawbacks of the RK I5 = (0, 1, 0, 1, 1, 1) encoding. First, it is rather computationally expensive. It σ5 = (5, 3, 4, 1, 2) (3) requires sorting of the real array every time a chromosome is O5 = σ5(I5) = (1, 0, 1, 0, 1) modified and needs to be evaluated. Second, genetic Intuitively, σN can be used as a permutation encoding for algorithms were not designed to deal with real-valuedgenetic algorithms, as utilized e.g. in [10]. Durand et al. [5] chromosomes, even though there are methods on how todid not explicitly specify used interleaver encoding, although process real valued chromosomes by GA.we can conclude that they used a similar interleaverrepresentation. A Chromosome with Random Key Encoding In our GA implementation for turbo code interleaveroptimization two types of selection techniques were used. In Random 0.2 0.1 0.3 0.5order to speed up the convergence of the algorithm, a keysemi-elitary hybrid selection scheme choosing one parent by Allele 2 1 3 4elitary manners and the second by proportional manners ofroulette wheel selection. Mutation was implemented by One point Crossover of the REK Chromosomesswapping the positions of two coordinates in σN. On thecontrary, traditional crossover operators (except uniformcrossover) would corrupt the structure of intuitively encodedpermutation σN and hence they cannot be used without somepost-processing used for chromosome fixing. This is aremarkable fact, since crossover is referred to as the primaryoperator for GA [7].B. The Role of Crossover in GA The crossover operator is the main operator of geneticalgorithms that distinguishes it from other stochastic searchmethods [7]. Its role in the GA process has been intensively Fig. 3 Random key encoding exampleinvestigated and its omission or traversing is expected toaffect the efficiency of a GA solution significantly. A crossover operator is primarily a creative force in the VI. DIFFERENTIAL EVOLUTIONevolutionary search process. It is supposed to propagatebuilding blocks (low-order, low defining length schemata Differential Evolution is a reliable, versatile and easy towith above-average fitness) from one generation to another use stochastic evolutionary optimization algorithm [13]. DEand create new (higher-order) building blocks by combining is a population-based optimizer that evolves real encodedlow order building blocks. It is intended to introduce large vectors representing the solutions to given problem. Thechanges to the population with low disruption of building real-valued nature of population vectors differentiates the DEblocks [11]. In contrast, mutation is expected to insert new notably from GAs that were originally designed to evolvematerial to the population by random perturbation of solution encoded into binary or finite discrete alphabets.chromosome structure. In this way, however, new building The DE starts with an initial population of N real valuedblocks can be created or old ones disrupted [11]. vectors. The vectors are initialized with real values either An experimental study on crossover and mutation in randomly or so, that they are evenly spread over the problemrelation to the frequency and lifecycle of building blocks in a domain. The latter initialization leads to better results of thechromosome population showed that the ability of mutation optimization process [13].and one-point crossover to create new building blocks is During the optimization, DE generates new vectors thatalmost the same. However, crossover is irreplaceable for are perturbations of existing population vectors. Thespreading newly found building blocks among the population algorithm perturbs vectors with the scaled difference of two(which can lead to loss of diversity in the population) [11]. (or more) randomly selected population vectors and adds the scaled random vector difference to a third randomly selected population vector to produce so called trial vector. The trial 81 All Rights Reserved © 2012 IJARCSEE
  4. 4. ISSN: 2277 – 9043 International Journal of Advanced Research in Computer Science and Electronics Engineering Volume 1, Issue 4, June 2012vector competes with a member of the current population  Probability of crossover 0.8 and probability ofwith the same index. If the trial vector represents a better mutation 0.2 for GAsolution than the population vector, it takes its place in the  C equals to 0.9 and F equals to 0.9 for DEpopulation [13].  Population of 20 vectors for DE and population of Differential evolution is parameterized by two parameters 40 chromosomes for GA[13]. Scale factor F ϵ (0,1+) controls the rate at which the The fitness function used in GA and DE for turbo codepopulation evolves and the crossover probability C ϵ [0,1] interleaver optimization was based on analytical dfreedetermines the ratio of bits that are transferred to the trial estimation as defined in [4]. The goal of the fitness functionvector from its opponent. The number of vectors in the was to maximize dfree , and minimize Nfree and Wfree :population is also an important parameter of the population.The outline of classical DE algorithm is shown in Figure 3. ffitness = A . dfree – B . Nfree – C . Wfree (4)There are more variants of differential evolution. They differmostly by the way new vectors are generated. We used the where the coefficients A, B and C were fixed to 100, 10 and 1classical differential evolution algorithm, also referred to as respectively. All experiments were executed several times toDE/rand/1/bin [13]. overcome the stochastic nature of the algorithms. Differential evolution is prospective method for turbo codeinterleaver optimization since it operates on real valuedvectors and a permutation represented by RK encoding is A. Optimization Resultsindeed a real vector. Moreover, differential evolution has The results of experimental interleaver optimization arebeen shown to outperform genetic algorithms in some summarized in Tables I and II. Table I outlines the averageproblem domains [13]. obtained interleaver free distance for 64, 128 and 256-bit interleavers. The first column shows average free distance of_______________________________________________ a random interleaver, second column shows average dfree of I. Initialize the population P consisting of M vectors an inteleaver optimized by GA and third and fourth column II. Evaluate an objective function ranking the vectors show average dfree of an interleaver optimized by DE after in the population 3000 and 5000 evaluations respectively. III. Create new population : TABLE I For i ϵ {1…M}: COMPARISON OF AVERAGE FREE DISTANCE a. Create a trial vector vit = v1r + F.(v2r - v3r), Where F ϵ [0, 1] is a parameter and v1r, v2r, v3r N avg avg GA avg DE avg DE are three random vectors from the population P. random (3000) (5000) This step is in DE called mutation. 64 13,50 19,74 19,95 20,28 128 14,25 22,95 22,65 23,28 b. Validate the range of coordinates of vit. 256 15,72 26,26 24,26 24,28 Optionally adjust coordinates of vit so, that vit is valid solution for given problem. Table II represents maximum values of for investigated c. Perform uniform crossover. Select randomly interleavers. one point (coordinate) l in vit . With probability 1-C let vit[m] = vi[m] for each m ϵ {1……N} such that m ≠ l. TABLE II d. Evaluate the trial vector. If the trial vector vit COMPARISON OF MAXIMUM FREE DISTANCE represents better solution than population N Max Max Max DE Max DE vector vi , replace vi in population P by vit. random GA (3000) (5000) 64 13 22 21 22 IV. Check termination criteria; if not satisfied go back to 128 14 24 23 24 III. 256 17 26 24 25________________________________________________ The experiment results illustrate that both algorithms are Fig. 4 A summary of DE algorithm powerful interleaver optimizers. Differential evolution provided better average free distance for 64 and 128 bit interleaver. For 256 bit interleaver GA delivered the best VII. INTERLEAVER OPTIMIZATION EXPERIMENTS empirical performance. A simulation framework built upon the IT++ library1 was The results of DE were observed after 3000 and 5000used to experimentally evaluate the proposed interleaver evaluations of fitness function. 5000 DE evaluations requiredgeneration method. IT++ is a robust and efficient C++ library approximately the same time as GA with 1000 generations.of mathematical and telecommunication algorithms andobjects. It provides high native code performance andexcellent abstraction of a well-defined object-orientedframework. We have experimented with 64-bit, 128-bit and256-bit interleavers. The settings for optimizationexperiments were:  Random key encoding of chromosomes  1000 generations (GA), 3000 and 5000 evaluations (DE) 82 All Rights Reserved © 2012 IJARCSEE
  5. 5. ISSN: 2277 – 9043 International Journal of Advanced Research in Computer Science and Electronics Engineering Volume 1, Issue 4, June 2012 REFERENCES A.Burr “Turbo-codes: the ultimate error control codes?,” in Electronic & Communication Engineering Journal, vol. 13, pp. 155–165, IEEE, August 2001. ISSN: 0954-0695. C.Berrou, A.Glavieux, and P. Thitimajshima, “Near Shannon limit error-correcting coding and decoding: turbo codes,” in Proc. Int. Conf. on Commun., pp. 1064–1070, 1993. J. Hokfelt and T. Maseng, “Methodical interleaver design for turbo codes,” International Symposium on Turbo Codes, 1997. R. Garello, F. Chiaraluce, P. Pierleoni, M. Scaloni, and S. Benedetto, “On error floor and free distance of turbo codes,” in IEEE International Conference on Communications (ICC 2001), vol. 1, pp. 45–49, 2001. ISBN 0-7803-7097-1. M. Dianati, I. Song, and M. Treiber, “An introduction to genetic algorithms and evolution strategies,” technical report, University of Waterloo, Ontario, N2L 3G1, Canada, July 2002. U. Bodenhofer, “Genetic Algorithms: Theory and Applications,” lecture notes, Fuzzy Logic Laboratorium Linz-Hagenberg, Winter 2003/2004. M. Mitchell, An Introduction to Genetic Algorithms. Cambridge, MA: MIT Press, 1996. G. Jones, “Genetic and evolutionary algorithms,” in Encyclopedia of Computational Chemistry (P. von Rague, ed.), John Wiley and Sons, 1998. Fig. 5 Visual comparison of avg dfree N. Durand, J. Alliot, and B. Bartolomé, “Turbo codes optimization using genetic algorithms,” in Proceedings of the Congress on Evolutionary Computation (P. J. Angeline, Z. Michalewicz, M. Schoenauer, X. Yao, and A. Zalzala, eds.), vol. 2, (Mayflower Hotel, Washington D.C., USA), pp. 816– 822, IEEE Press, 6-9 1999. S. Rekh, S. Rani, W. Hordijk, P. Gift, and Shanmugam, “Design of an interleaver for turbo codes using genetic algorithms,” The International Journal of Artificial Intelligence and Machine Learning, vol. 6, pp. 1–5, 2006. A. S. Wu, R. K. Lindsay, and R. Riolo, “Empirical observations on the roles of crossover and mutation,” in Proc. of the Seventh Int. Conf. on Genetic Algorithms (T. Bäck, ed.), (San Francisco, CA), pp. 362–369, Morgan Kaufmann, 1997. L. V. Snyder and M. S. Daskin, “A random-key genetic algorithm for the generalized traveling salesman problem,” European Journal of Operational Research, vol. 174, no. 1, pp. 38–53, 2006. K. V. Price, R. M. Storn, and J. A. Lampinen, Differential Evolution A Practical Approach to Global Optimization. Natural Computing Series, Berlin, Fig. 6 Visual comparison of max dfree Both DE and GA obtained the same maximum dfree valuesfor 64 and 128-bit interleavers. In case of 256- bit interleaverdelivered GA better maximum dfree. VIII. CONCLUSIONS This paper discussed the problem of efficient turbo codeinterleaver optimization by genetic algorithms anddifferential evolution. The turbo code interleavers in the formof permutations were encoded by random keys encodingmethod as vectors of real numbers. An analytical estimationof free distance was used as a basis of fitness function forboth, GA and DE. The results suggest that both GA and DEcan provide good results. Both algorithms reached the sameimproved maximum dfree for 64 and 128-bit interleavers. DEdelivered for 64 and 128-bit interleavers better average dfreeacross multiple experimental runs. Unlike for smallerinterleavers, GA outperformed DE for 256-bit interleaver. In our future work, we aim to investigate the performanceof presented optimizers on more interleavers of differentsizes to determine which algorithm performs better.Moreover, other DE variants can be also evaluated. 83 All Rights Reserved © 2012 IJARCSEE