epigenetics & genetic algorithms for inverse...

13
39 Epigenetics & Genetic Algorithms for Inverse Kinematics Multigeneration Effects On Children & Grandchildren Populations Benjamin Kenwright, Edinburgh Napier University This paper exploits a recent biological discovery of a popular evolutionary concept. The well-known ge- netic algorithm methodology mimics organic life through gene reproduction and mutation. However, recent research has pointed out that additional information embedded alongside individual chromosomes trans- mits data onto future offspring. This additional transmission of information onto child generations outside DNA is known as epigenetics. We incorporate this cutting-edge concept into a genetic algorithm to steer and improve the evolutionary development of the solution (i.e., achieving an optimal result sooner). We investigate the epigenetic principle of data that persists over multiple-generation (i.e., multiple generation inheritance or family tree analogy). Since epigenetics supports an important role in the evolutionary process and provides an additional mechanism to help model and solve complex problems more efficiently. We apply the enhanced genetic algorithm to solving inverse kinematic (IK) problems (e.g., linked kinematic chains). Solving inverse kinematic problems is important and challenging in multiple disciplines, such as, robotics and animation (e.g., virtual animated character control) and is difficult to obtain an optimal solution using transitional methods (e.g., geometric, algebraic, or iterative). We demonstrate the viability of our approach compared to a classical genetic algorithm. We also incorporate engineering enhancements (i.e., a non-linear mutation probability) to achieve a higher precision solution in fewer generation while avoiding prematurely converging on local minimums. Categories and Subject Descriptors: C.2.2 [Mathematics of computing]: Bio-inspired optimization General Terms: computational, iterative, evolving, epoch, population, genetic algorithm, evolutionary, de- sign, algorithms, performance Details: Benjamin Kenwright. Epigenetics & Genetic Algorithms for Inverse Kinematics. Exp. Algor. 9, 4, Article 39 (August 2014), 13 pages. 1. INTRODUCTION Preface. Genetic algorithms (GAs) are a theoretically and empirically proven tech- nique [Goldberg 1989; Nearchou 1998] for providing robust and efficient solutions to complex non-linear problems. The powerful cross-discipline genetic algorithm at its heart is a stochastic-based method inspired by natural evolution. While the genetic algorithm continues to grow in popularity due to its flexible, robustness, and effective- ness for finding global optimization solutions [Grefenstette 2014; Tarokh and Zhang 2014; Grefenstette et al. 2011], it is still an active area of research with multiple av- enues of exploration (e.g., immunization, self-adapting, and multi sub-population). Motivation. Science and technology are increasingly hitting new limits and problems based on traditional disciplines. One avenue of inspiration for developing new and in- novative ways of thinking and solving difficulties is biology. For example, biologically inspired systems have demonstrated across multiple disciplines the ability at all lev- Author’s Details: Benjamin Kenwright, Computer Science Department, Edinburgh Napier University, United Kingdom. Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies show this notice on the first page or initial screen of a display along with the full citation. Abstracting with credit is permitted. To copy otherwise, to republish, to post on servers, to redistribute to lists, or to use any component of this work in other works requires prior specific permission and/or a fee. Permissions may be requested from the author. c 2014 Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Upload: others

Post on 20-Jan-2021

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

39

Epigenetics & Genetic Algorithms for Inverse KinematicsMultigeneration Effects On Children & Grandchildren Populations

Benjamin Kenwright, Edinburgh Napier University

This paper exploits a recent biological discovery of a popular evolutionary concept. The well-known ge-netic algorithm methodology mimics organic life through gene reproduction and mutation. However, recentresearch has pointed out that additional information embedded alongside individual chromosomes trans-mits data onto future offspring. This additional transmission of information onto child generations outsideDNA is known as epigenetics. We incorporate this cutting-edge concept into a genetic algorithm to steerand improve the evolutionary development of the solution (i.e., achieving an optimal result sooner). Weinvestigate the epigenetic principle of data that persists over multiple-generation (i.e., multiple generationinheritance or family tree analogy). Since epigenetics supports an important role in the evolutionary processand provides an additional mechanism to help model and solve complex problems more efficiently. We applythe enhanced genetic algorithm to solving inverse kinematic (IK) problems (e.g., linked kinematic chains).Solving inverse kinematic problems is important and challenging in multiple disciplines, such as, roboticsand animation (e.g., virtual animated character control) and is difficult to obtain an optimal solution usingtransitional methods (e.g., geometric, algebraic, or iterative). We demonstrate the viability of our approachcompared to a classical genetic algorithm. We also incorporate engineering enhancements (i.e., a non-linearmutation probability) to achieve a higher precision solution in fewer generation while avoiding prematurelyconverging on local minimums.

Categories and Subject Descriptors: C.2.2 [Mathematics of computing]: Bio-inspired optimization

General Terms: computational, iterative, evolving, epoch, population, genetic algorithm, evolutionary, de-sign, algorithms, performance

Details:Benjamin Kenwright. Epigenetics & Genetic Algorithms for Inverse Kinematics. Exp. Algor. 9, 4, Article 39(August 2014), 13 pages.

1. INTRODUCTIONPreface. Genetic algorithms (GAs) are a theoretically and empirically proven tech-

nique [Goldberg 1989; Nearchou 1998] for providing robust and efficient solutions tocomplex non-linear problems. The powerful cross-discipline genetic algorithm at itsheart is a stochastic-based method inspired by natural evolution. While the geneticalgorithm continues to grow in popularity due to its flexible, robustness, and effective-ness for finding global optimization solutions [Grefenstette 2014; Tarokh and Zhang2014; Grefenstette et al. 2011], it is still an active area of research with multiple av-enues of exploration (e.g., immunization, self-adapting, and multi sub-population).

Motivation. Science and technology are increasingly hitting new limits and problemsbased on traditional disciplines. One avenue of inspiration for developing new and in-novative ways of thinking and solving difficulties is biology. For example, biologicallyinspired systems have demonstrated across multiple disciplines the ability at all lev-

Author’s Details: Benjamin Kenwright, Computer Science Department, Edinburgh Napier University,United Kingdom.Permission to make digital or hard copies of part or all of this work for personal or classroom use is grantedwithout fee provided that copies are not made or distributed for profit or commercial advantage and thatcopies show this notice on the first page or initial screen of a display along with the full citation. Abstractingwith credit is permitted. To copy otherwise, to republish, to post on servers, to redistribute to lists, or to useany component of this work in other works requires prior specific permission and/or a fee. Permissions maybe requested from the author. c©2014

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 2: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

39:2 Benjamin Kenwright

Fig. 1. Epigenetics Concept - A visual depiction of the inspirational principle of epigenetics from biologyand transgenerational inheritance point of view by Skinner [Skinner 2014].

els to create optimal solutions for complex and chaotic systems. The popular processof evolutionary adaptation represents millions of years of design and testing. Theseadaptations may be more efficient than modern engineering solutions while utilizingnumerous advantages, such as scalability and flexibility. As our understanding grows,nature is still showing us new ways to improve and expand, which we demonstrate inthis paper by incorporating a novel enhancement from biology to improve the conver-gence of the classical genetic algorithm on an optimal inverse kinematic solution.

DNA & Reproduction. A genetic algorithm is a search heuristic that mimics the pro-cess of natural selection. This heuristic is effective for generating solutions for complexnon-linear optimization problems. The principle is based on the original concept thata child’s heritable information is the combination of its parent’s DNA. However, in bi-ology, we discover that additional inherent information is sprinkled on top and canremain over multiple generations to influence the evolutionary process (i.e., known asepigenetic inheritance). This inspiring insight, leads us to modify the classical evolu-tionary process (i.e., of selection and crossover) to include epigenetic data so that wemay remedy inherent shortcomings within the uncomplicated GA model.

Beyond The Classical Genetic Algorithm. One possible feature of epigenetic modifi-cations and transgenerational effects via DNA mixing is the ability to control the num-ber of variant individuals in the population. Natural selection then picks the fittestindividual from the population to thrive and carry on the genome and epigenome. Forexample, the epigenetic information can be used for:

— controlling factors (e.g. in biology the endocrine disruptors) which reprogram thegerm-line (i.e. sperm) to influence heritable traits of all subsequent descendants (i.e.,influences a major determinant in the selection process)

— epigenetic transgenerational phenotype suggests secondary interventions influencebiology through epigenetic alterations in genome activity

— supports an important role for epigenetics in evolutionary biology and provides anadditional molecular mechanism to help understand evolutionary phenomenon

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 3: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

Epigenetics & Genetic Algorithms for Inverse Kinematics 39:3

Contribution. The key contributions of this paper are: (1) the investigation of epi-genetic as an additional mechanism in the classical genetic algorithm to improve con-vergence on an optimal solution for a non-linear search problem; (2) we modify thelinear mutation probability to speed up convergence of an optimal solution in an in-verse kinematic system; and (3) we focus on resolving the IK problem of virtual links(e.g., chains and limits) with applications in a wide variety of fields, such as roboticsand computer animation (e.g., animated characters have a large number of degrees offreedom due to their flexibility). We propose an innovative and original approach forenhancing the GA method for solving IK problems which improves the search speedand solves the GA falling into ‘premature’ lows (i.e., local minimums).

2. RELATED WORKInspiration. Early investigatory research in biology [Bartolomei and Tilghman 1997;

Gibbs 2003] questioned the evolutionary genome process, such as, what additionalfactors influence evolution outside DNA recombination. The inspiring work by Giggs[Gibbs 2003] opens our eyes to the fact that DNA was once considered the sole repos-itory of heritable information. However, a malleable layer of information encodedwithin the chromosomes provides fresh insight into genetic mutation that we can ex-ploit and build upon to create solutions to problems (e.g., modifying the traditionalgenetic algorithm methodology to include additional concepts and overcome shortcom-ings and problems without sacrificing features). The work by Jirtle and Skinner [Jir-tle and Skinner 2007] showed preliminary investigations into environment epigeneticmodification causing alterations in gene expression leading to disease phenotypes.We explore this approach as a method of investigation and the relevance of this phe-nomenon in genetic algorithms. Skinner [Skinner 2011] later explored the epigeneticeffects via DNA methylation on information transference. Demonstrating for the firsttime that heritable conditions induce epigenetic modifications and transgenerationalalterations in phenotypes.

Inverse Kinematics. Inverse kinematic systems are a multi-discipline field (e.g., an-imation, robotics, and biomechanics). However, tuning inverse kinematic variables tomatch multiple fitness targets is challenging because the search space can be highlynon-linear and discontinuous with parameters constantly changing to accomplish spe-cific goals, such as end-effector positions, centre-of-mass location, and matching motioncapture data [Parker et al. 1989; Yang et al. 2007; Espinoza 2012]. Thus GAs becauseof their random search approach, prove to be an efficient tuning method. GA are ableto find optimal solutions to inverse kinematic problems even though the search spaceis highly ambiguous, non-continuous (e.g., joint-angle limits), and contain singularities(e.g., no solution and desire a best guess). All the same, GA search times can be im-practical and time consuming (i.e., require a large numbers of generation to convergeon an optimal solution). Keeping this fact in mind, this paper presents an improvedversion of the classical genetic algorithm in order to improve the convergence speedon an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variableprobability functions [Meng and Song 2007] and non-linear mutation distribution areintegrated to make the GA work faster and better.

Inverse Kinematics and Animation. Control of joint angles is the key technique invirtual human motion control. The popular approaches include geometric control, be-havior control, physical control, motion capture control, and synthesis control [Wanget al. 2009], which have different characteristics [Liu et al. 2005; Gengdai et al. 2010].The kinematics control, one of the geometric control methods, has been the most widelyused in human motion control while the end-effectors position and orientation are de-termined. Kinematics control algorithm contains forward kinematics (FK) algorithm

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 4: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

39:4 Benjamin Kenwright

and inverse kinematics (IK) algorithm. Calculating the position and orientation of theend-effector from the joint Cartesian space is known as FK problem and calculatingthe joint angles from position and orientation of the end-effector is called IK problem.Many traditional methods have been used to resolve the IK problem such as, algebraic[Hai et al. 2011], geometric [Chen et al. 2012], and iterative methods [Tolani et al.2000]. However, these methods have their own demerits in solving the IK problem ofthe mechanical structure or the body structure. In recent years, Fuzzy [Qu et al. 2013],Artificial Neural Networks (ANN) [Golea et al. 2012; Zhang et al. 2012] and GeneticAlgorithm (GA)-based evolutionary approaches have been applied to solvethe IK problem for many kinds of manipulators, and great progress has beenachieved. Satish [Kumar and Irshad 2012] uses a 3-layer perceptron neural networkto resolve the IK problem in a two degree-of-freedom (DOF) serial chain manipulator,as the training data subdivide degree is only 1.125 degrees, the precision of solution isnot good enough. Bassam [Daya et al. 2010] uses a 4-layer perceptron neural networkto resolve the IK problem in 2 DOF manipulator, which can avoid the emergence of re-dundant solutions and improve the precision by dividing the solution space into manysub-spaces, but the complexity of the algorithm is increased on one hand. Reference[Nanda et al. 2012] researches the multi-layer perceptron and functional link artificialneural network, respectively, to compute 2 and 3 DOF serial manipulators inverse so-lution. When the robotic arm is 3 DOF, the solutions precision is less than satisfactory.As the training samples subdivision degree determines the precision of the solutionin neural network, when the body has more than 3 DOF, due to the limitation in thenumber of training samples, it is difficult to obtain a high precise solution. The GA iswidely applied to solve the IK problem due to its excellent characteristics of evolution-ary optimization; Saleh [Tabandeh et al. 2006] obtains the IK solutions of the threejoints which decide the end-effector position of PUMA560 robot by using the geneticalgorithm based on the niche and clustering technique. The method can search four op-timal solutions at a time but it is time-consumingevery generation computation spent4 s; Banga [Banga et al. 2007] combines GA and Analytical Hierarchy Process (AHP) toresolve three nodes manipulators IK problem, AHP is used to select a different fitnessfunction to prefer a one robotic arm indicator (such as attitude, friction, adjust time),and GA optimizes the inverse solution according to the fitness function selected byAHP. Due to the fitness function selection mechanism, the method can meet multiple-objectives optimization, but it also increases the probability of obtaining suboptimalsolutions. Due to the random selection of initial population and the large searchingdomain, the computational time of GA optimization is usually long and the algorithmis prone to premature and later search slowly. So, scholars study another approach,using GA to optimize the parameters of neural network, and then use this neural net-work to compute the IK solutions. Liu [Liu et al. 2008] uses GA to optimize weightsand thresholds of BP neural network by applying partition coding method; then theBP neural network is used to compute the 2 DOF robots IK solution. Carlos [Kavkaand Crespo 1998] combines Fuzzy neural network (FNN) algorithm and GA for solv-ing the inverse kinematics problem of a 2 DOF manipulator. This method uses GA tooptimize the network structure, the set of rules and membership functions of the FNN,and then this FNN algorithm is used to compute the two joint angles values of manip-ulator. These methods will accelerate the optimization process of the inverse solutionwhen the algorithm completes the parameter optimization. The disadvantage is thatthe precision of the solution depends on the neural network, and the accuracy of theneural networks output depends on its structure, parameters, and training samples.When the dimension of the input and output increases, the number of parameters alsowill be exponentially increased. And it requires a lot of training samples, which wouldmake the training inefficient or even unattainable. As a simple neural network algo-

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 5: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

Epigenetics & Genetic Algorithms for Inverse Kinematics 39:5

rithm, the method mentioned above is only suitable for solving the IK problem in lessthan 3 DOF; when DOF is equal to or larger than 3, the precision of solutions will befar from satisfactory.

Our work:. One of the primary goals of our approach is to build upon the simplic-ity and straightforwardness of the classical genetic algorithm without incurring highadditional computational overheads (e.g., memory or performance) or system complex-ity (e.g., inflexible frameworks). The epigenetics’ principle does not modify the DNAsequences, but factors around the genome that regulates the genomic activity (e.g.,synonymous to the chemical modification of the DNA - known as DNA methylation).This can alter the gene expression and determine if genes are turned on or off (e.g.,mutation). A subset of genes called imprinted genes can transfer their epigenetic pat-tern,(i.e., through methylation of DNA), to the next generation and effect the activityof DNA. Endocrine disruptors have been shown to modify a set of new imprinted-like genes. The frequency of an epigenetic effect is high compared to that of geneticsequence mutations. We incorporate these epigenetic principles from biology by modi-fying the classical genetic algorithm to solve an optimization problem more efficiently.We represent the epigenetic concept through a feedback bias influence of each indi-viduals’ parent within the population that fades over multiple generations (e.g., echoof the individuals family tree successfulness). Hence, the evolutionary data containsmore than just chromosomes DNA but also a fitness factor. The principle is analogousto each individual having a recollection of their family-trees’ prosperity.

3. GENETIC ALGORITHMS (GA)3.1. Classical Genetic Algorithm DefinitionThe genetic algorithm is used to solve a problem (i.e., find an optimal solution) givensome set of parameters that define the search space. The parameters are commonlyrepresented as a binary sequence. Initially, a random population is created. There-after, three genetic operations (or evolutionary operators, selection, crossover, and mu-tation, are performed to create subsequent generations. The process is repeated untila termination criterion is reached (e.g., maximum iterations or acceptable optimal so-lution is reached). The pseudo code for the classical genetic algorithm is given belowin Algorithm 1 and is illustrated in Figure 2.

The uncomplicated genetic algorithm has a population made up of individuals whorepresent single or multiple solutions (and potential solutions). Each individual israted based on a fitness function (or objective function). The breeding operation (i.e.,creation of the new population) takes the fitness into account when selecting individ-uals to ensure that each subsequent generation has a higher chance of improving (i.e.,the best characteristics are passed onto the offspring).

3.2. Genetic Algorithm ProblemsWhile the genetic algorithm is an intuitive, flexible, and robust method for solvingcomplex non-linear problems, the research literature agrees that the algorithm has anumber of serious flaws. The key limitations of the classical genetic algorithm are:

— inability to adapt on-the-fly to changing characteristics of the search space as thepopulation evolves

— difficulty converging if the paramaters are not optimal (i.e., hill climbing algorithmssuffer the same problem)

— because genetic algorithms are heuristic in nature, the solution is not always optimal[Richter and Paxton 2005; Michalewicz 1996]

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 6: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

39:6 Benjamin Kenwright

Fig. 2. Classical Genetic Algorithm - Visual depiction of the genetic evolutionary process.

Algorithm 1 Straightforward Genetic Algorithm1: Initialize paramaters2: Generate Population P3: generation← 14: while generation ≤ maxNumberGenerations do5: Evaluate each individuals’ fitness function f(.) in P6: Sort by fitness7: Select N best from population8: Create new empty population list P’9: while generation ≤ maxNumberGenerations do

10: Select two parents . (e.g., roulette-wheel)11: Perform crossover (c)12: Perform mutation (m)13: Insert children into P’14: end while15: P ← P ′

16: generation← generation+ 117: end while

The genetic algorithm is a popular heuristic technique (i.e., random probabilisticsearch methodology) evolving around crossover, mutation, and selection. While therandom search methodology was advantageous for vast search spaces, it is not so good

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 7: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

Epigenetics & Genetic Algorithms for Inverse Kinematics 39:7

Fig. 3. Epigenetics & Genetic Algorithm - Evolutionary algorithm - Epoch population update flow.

for convergence. Hence, enhancements to the model to control the genetic process isvaluable to aid convergence on an optimal solution (i.e., which we go into in the nextsection).

4. MODIFIED GENETIC ALGORITHMS (EPIGENETICS)What does the ‘epigenetic’ bring to the genetic algorithm? What information doesthe additional epigenetic information modify? i.e., how does it influence, selection,crossover, and mutation? The epigenetic principle acts like a simplified family treefor each individual; providing an echo of past parent experiences (e.g., long history ofpoor fitness). The epigenetic process influences the probability parameters (i.e., muta-tion and crossover) and selection process so the system is more likely to convergenceon a global optimal solution sooner rather than later.

4.1. Epigenetic Genetic AlgorithmThe epigenetic principle offers a powerful tool for steering the population evolutionbased on non-genetic influences (e.g., diversity, trends, and patterns). Through inclu-sion of a epigenome, we can include properties about the individuals’ lineage (i.e., areflection of parents and grandparents) to bias the epigenetic selection and muta-tion and crossover probabilities.

4.2. Epigenetic SelectionA common approach is a roulette wheel selection based upon the parent fitness with nogoverning influence of the past. However, with the epigenome parameter, we can test ifthere has been a serious degeneration of the individuals’ fitness over-generations. Weemploy this in the selection process, since we can mix in chromosomes from an individ-ual, which have had a high gain in fitness over-generations. We want to identify whichindividuals are changing over multiple population updates (e.g., analogy of a vectorfield with each individual have a vector indicating the direction of fitness gain/lossover-population epochs).

fi = fi − fworsti−1

epiF itnessi = epiF itnessi + (∆fi − epiF itnessi)α(1)

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 8: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

39:8 Benjamin Kenwright

Algorithm 2 Modified Genetic Algorithm1: Initialize paramaters . (i.e., size and probabilities)2: Randomly Generate Population P3: generation← 14: while generation ≤ maxNumberGenerations do5: Evaluate each individuals’ fitness function f(.) in P6: Sort by fitness7: Select N best from population8: Calculate each individuals’ epifitness in P9: Create new empty population list P’

10: while generation ≤ maxNumberGenerations do11: Select two parents based on epifitness . (e.g., modified roulette-wheel)12: Perform crossover (c) . (i.e., store worst parent fitness)13: Perform mutation (m) . (i.e., with saw-tooth bias)14: Insert children into P’15: end while16: P ← P ′

17: generation← generation+ 118: end while

Fig. 4. Non-linear Mutation Distribution - Saw-tooth bias to improve convergence speeds on local opti-mal (i.e., small angular changes in the inverse kinematic search problem).

where subscript i indicates the individual with the population, fworsti−1 is the worst fit-

ness for of the individuals’ parent (i.e., after crossover), and α is the epi-factor (0 to 1) -for example, when the epi-factor is 1.0 the previous parent influences are ignored (typ-ically a value between 0.8 and 0.9 provide reasonable gains). ∆fi dictates the amountof gain of the individual over its worst parent gain. This generation performance echofades away over update generations. As shown in the simulations, if this influence is tostrong, it can impede the converge by acting damping out crucial high fidelity changes.

Mutation Bias. We add a fine grain optimization to the mutation procedure so it con-verges on an optimal solution sooner. Typically, the mutation probability is evenly dis-tributed across each individuals’ chromosome (i.e., the full set of data for the individ-ual). For the inverse kinematic problem, the chromosome is composed of genomes each10 bits long. Each genome within the individuals chromosome represents a joint an-gle. As we converge on a solution, it is more desirable to search small angular changes,hence, we bias the mutation probability across the chromosome using a linear saw-tooth bias so that we can search smaller angular spaces, as shown below in Figure 4and Algorithm 3. The mutation bias is mixed with the underlying mutation rate whichwe can vary over generations to improve the genetic algorithm converging.

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 9: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

Epigenetics & Genetic Algorithms for Inverse Kinematics 39:9

Algorithm 3 Modified Mutation Procedure1: while chromesomeBits ≤ numBits do

. chromesomeBits[..] holds all binary of the individual2:3: bias = (chromesomeBits[curBit] % (genomeLength)) / (genomeLength-1)

. bias 0→ 14:5: if RandFloat() ≤ mutationRate + bias*0.01f then . do we flip this bit?6: chromesomeBits[curBit] = !chromesomeBits[curBit] . flip the bit7: end if8: end while

Variable Mutation & Crossover Probabilities. Crossover rate pc and mutation ratepm decide the performance of the GA. In the conventional mechanism, the crossoverrate and mutation rate are held constants. Higher crossover rate can increase thegeneration of new individuals in the searching process, it also raises the probabilityof destroying superior individuals in the crossover process, so it hinder the systemconverging to a local optimal solution. In order to prevent converging to local optimalsolution, we do not want to employ a mutation rate that is too small, but a highermutation rate will make the GA act in a completely random search. Hence, we useadaptive probabilities for the crossover and mutation mechanism, so they adaptivelychange according to the current evolution status. This approach presents a methodin which crossover probability will diminish as the generation count increase. Thecrossover probability scaling is given below in Equation 2:

p′c = pc(1−m

M) (2)

where, m is evolution generation, M is the total generation, generally pc is 0.8. Muta-tion probability can keep the algorithms from local convergence, while fixed probabilitymay destroy perfect individuals easily. The mutation probability scaling is given belowin Equation 3:

p′m = pm(1− m

M) (3)

where, m is evolution generation, M is the total generation, generally pm is 0.01. Theadvantage of this method is that initially as we are starting from a random point, weneed to cover a large search space but as number of generation is increasing and weare moving towards a better solution we can decrease probabilities and hence numberof crossovers and mutations to make genetic search faster and better

5. IMPLEMENTATION DETAILSWe employ variable probabilities for the GA to move the population towards a bettersolution (i.e., the number of crossovers and number of mutations are decremented toreduce the simulation time). A non-linear mutation distribution helps search fine grainsolutions to improve final convergence. Simulation analysis is carried out to show theviability of our idea for an enhanced GA to overcomes some of the difficulties associ-ated with classical GA and conventional tuning. We also shown that the enhanced GAproduces optimum or near optimum results for inverse kinematic solutions that arenormally considered difficult to tune.

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 10: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

39:10 Benjamin Kenwright

Fig. 5. Non-Linear Mutation Graph - Plot the population fitness against generation epoch for the linearmutation (i.e., 0.01) and a linear mutation with a saw-tooth bias (i.e., 0.01) on top. As we can see from thegraph the mutation bias aids in speeding up the optimal solution (i.e., small angular changes).

Parameter Genome Encoding and Decoding. We map the problem space parameters(e.g., joint angles) using a binary system. We code each joint angle to an eight digitbinary code (e.g., 40 joints we have 40x8 bit length individual sequence). Mapping eachbinary sequence to a real-number (e.g., floating point precision) is done using Equation4 below:

f = lo+hi− lo2n − 1

b (4)

where b is the binary number, lo and hi are the upper and lower limits, and n is thebinary length (e.g., for 8-bit number 0x00 to 0xFF, we can scale to 0.0 to 1.0 enablingus to map it easily to 0 to 2π).

6. EVALUATIONWe evaluated our modified system for using an inverse kinematic problem (e.g., multi-ply connected serial linked chains). The enhanced genetic algorithm did not hinder theoriginal classical GA model’s simplicity or incur high computational overheads (e.g.,system resource, such as memory). The engineering enhancements (e.g., epigeneticparameter and non-linear mutation) enabled the algorithm to converge on an optimalinverse kinematic solution with fewer generations (as shown in Figure 5 and Figure6).

7. CONCLUSIONSIn this paper, we developed an innovative genetic algorithm enhancement based ona recent biological discovery for controlling the population convergence on an optimalsolution. The modified technique builds upon the popular breeding mechanics inherentin genetic algorithm while incorporating a epigenetic feedback parameter that keeps

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 11: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

Epigenetics & Genetic Algorithms for Inverse Kinematics 39:11

Fig. 6. Epigenetic Influence - Scale the epi-genetic influence factor over multiple simulations to see howit influences the classical genetic algorithm (epi constant of 0.1, 0.5, 0.8, and 0.9). As we can see, if theepi-constant is to low it can degrade the convergence speed, while for higher factors we gain a noticeablespeed-up (simulation of singly linked chain of 40 links, 10 bit precision each angle, 0.01 mutation and 0.8crossover for 1000 generations, population size 100 and 10 elite).

track of individuals progress over multiple populations. We compared the traditionalgenetic algorithm with our enhanced version and showed interesting improvements.While the focus of the method has been on an inverse kinematic problem, it also pavesthe way for multiple future avenues of research in other optimization problems.

AcknowledgementsA special thanks to reviewers for taking the time to provide insightful, invaluablecomments, and suggestions to help to improve the quality of this paper.

REFERENCESVK Banga, Y Singh, and R Kumar. 2007. Simulation of robotic arm using genetic algorithm & AHP. World

Academy of Science, Engineering and Technology 25 (2007), 95–101. 4Marisa S Bartolomei and Shirley M Tilghman. 1997. Genomic imprinting in mammals. Annual review of

genetics 31, 1 (1997), 493–525. 3Peng Chen, Lu Liu, Fei Yu, Hongyi Li, Fangping Yang, and Xuezhu Wang. 2012. A geometrical method for

inverse kinematics of a kind of humanoid manipulator. Jiqiren(Robot) 34, 2 (2012), 211–216. 4Bassam Daya, Shadi Khawandi, Mohamed Akoum, and others. 2010. Applying neural network architecture

for inverse kinematics problem in robotics. Journal of Software Engineering and Applications 3, 03(2010), 230. 4

Mario Saenz Espinoza. 2012. Inverse kinematics of a 10 DOF modular hyper-redundant robot resorting toexhaustive and error-optimization methods (a comparative study). (2012). 3

Liu Gengdai, Pan Zhigeng, Cheng Xi, Li Ling, and Zhang Mingmin. 2010. A Survey on Machine Learningin the Synthesis of Human Motions. Journal of Computer-Aided Design & Computer Graphics 9 (2010),030. 3

W Wayt Gibbs. 2003. The unseen genome: beyond DNA. Scientific American 289, 6 (2003), 106–113. 3David E. Goldberg. 1989. Genetic Algorithms in Search, Optimization and Machine Learning (1st ed.).

Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA. 1Noureddine Golea, Ghania Debbache, and Amar Golea. 2012. Neural network–based adaptive sliding mode

control for uncertain non–linear MIMO systems. International Journal of Modelling, Identification andControl 16, 4 (2012), 334–344. 4

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 12: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

39:12 Benjamin Kenwright

Fig. 7. Serial Inverse Kinematic Chain Search Problem - Simulation of a singly linked chain of 40joints with a single end-effector (fitness objective the distance the end-effector is from the target).

John J Grefenstette. 2014. Proceedings of the First International Conference on Genetic Algorithms and theirApplications. Psychology Press. 1

John J Grefenstette, David E Moriarty, and Alan C Schultz. 2011. Evolutionary algorithms for reinforcementlearning. arXiv preprint arXiv:1106.0221 (2011). 1

Wang Hai, Cai Yingfeng, and Zhang Weigong. 2011. Analytical algorithm of inverse kinematics model for7DOF manipulator. Journal of Jiangsu University (Natural Science Edition) 3 (2011), 004. 4

Randy L Jirtle and Michael K Skinner. 2007. Environmental epigenomics and disease susceptibility. Naturereviews genetics 8, 4 (2007), 253–262. 3

Carlos Kavka and Marıa Liz Crespo. 1998. Robot arm fuzzy control by a neuro-genetic algorithm. In IVCongreso Argentina de Ciencias de la Computacion. 4

Satish Kumar and Kashif Irshad. 2012. Implementation of Artificial Neural Network applied for the solutionof inverse kinematics of 2-link serial chain manipulator. International Journal of Engineering Scienceand Technology 4, 9 (2012), 4012–4024. 4

C Karen Liu, Aaron Hertzmann, and Zoran Popovic. 2005. Learning physics-based motion style with non-linear inverse optimization. In ACM Transactions on Graphics (TOG), Vol. 24. ACM, 1071–1081. 3

Dao-hua Liu, Si-cong Yuan, Jin-you Wang, and Jin-chang ZHAO. 2008. Neural networks based on the geneticalgorithm and its application in mechanical engineering. Journal of Xidian University 1 (2008), 029. 4

Xiangzhong Meng and Baoye Song. 2007. Fast genetic algorithms used for PID parameter optimization. InAutomation and Logistics, 2007 IEEE International Conference on. IEEE, 2144–2148. 3

Zbigniew Michalewicz. 1996. Genetic algorithms+ data structures= evolution programs. springer. 5Santosh Kumar Nanda, Swetalina Panda, P Raj Sekhar Subudhi, and Ranjan Kumar Das. 2012. A novel

application of artificial neural network for the solution of inverse kinematics controls of robotic manip-ulators. International Journal of Intelligent Systems and Applications (IJISA) 4, 9 (2012), 81. 4

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.

Page 13: Epigenetics & Genetic Algorithms for Inverse Kinematicsvirtualpuppetry.com/epigenetic/paper.pdf · on an optimal solution. The concept of epigenetics with elitism [Gibbs 2003], variable

Epigenetics & Genetic Algorithms for Inverse Kinematics 39:13

Andreas C Nearchou. 1998. Solving the inverse kinematics problem of redundant robots operating in com-plex environments via a modified genetic algorithm. Mechanism and machine theory 33, 3 (1998), 273–292. 1

Joey K Parker, Ahmad R Khoogar, and David E Goldberg. 1989. Inverse kinematics of redundant robotsusing genetic algorithms. In Robotics and Automation, 1989. Proceedings., 1989 IEEE InternationalConference on. IEEE, 271–276. 3

Shaocheng Qu, Xiaobang Liu, Qinqin Wang, Zhiqiu Lei, and Yuewei Che. 2013. A brief fuzzy controller for anintelligent tracking system. International Journal of Modelling, Identification and Control 19, 2 (2013),171–178. 4

J Neal Richter and John Paxton. 2005. Adaptive Evolutionary Algorithms on Unitation, Royal Road andLongpath Functions.. In Computational Intelligence. 381–386. 5

Michael K Skinner. 2011. Role of epigenetics in developmental biology and transgenerational inheritance.Birth Defects Research Part C: Embryo Today: Reviews 93, 1 (2011), 51–55. 3

Michael K Skinner. 2014. Inheritance Outside The Genes. Scientific American 311, 2 (August 2014), 36–41.2

Saleh Tabandeh, Christopher M Clark, and William Melek. 2006. A genetic algorithm approach to solve formultiple solutions of inverse kinematics using adaptive niching and clustering. Computer Science andSoftware Engineering (2006), 63. 4

Mahmoud Tarokh and Xiaomang Zhang. 2014. Real-Time Motion Tracking of Robot Manipulators UsingAdaptive Genetic Algorithms. Journal of Intelligent & Robotic Systems 74, 3-4 (2014), 697–708. 1

Deepak Tolani, Ambarish Goswami, and Norman I Badler. 2000. Real-time inverse kinematics techniquesfor anthropomorphic limbs. Graphical models 62, 5 (2000), 353–388. 4

Xin Wang, Shou-qian SUN, and Chun-lei CHAI. 2009. An Overview of 3D Human Motion Editing andSynthesis [J]. Journal of Image and Graphics 2 (2009), 009. 3

Yugui Yang, Guangzheng Peng, Yifeng Wang, and Hongli Zhang. 2007. A new solution for inverse kine-matics of 7-DOF manipulator based on genetic algorithm. In Automation and Logistics, 2007 IEEEInternational Conference on. IEEE, 1947–1951. 3

Benguo Zhang, Ruizhong Zhang, Ge Wang, Lifeng Sun, Zhike Zhang, and Qiang Li. 2012. Breakout pre-diction for continuous casting using genetic algorithm–based back propagation neural network model.International Journal of Modelling, Identification and Control 16, 3 (2012), 199–205. 4

Technical Article - Experimental Algorithms, Vol. 9, No. 4, Article 39, Publication Date: August 2014.