5.3 Selecting Models for Consumption and Decay
6.1.2 Mutation Operations
During each iteration, each model of the population is mutated either by a simple mutation or by a recombination. Simple mutations affect single models and are performed without reference models. Recombination effects affect a single model using another model as reference. Which ty- pe of mutation is performed is randomly chosen according to a probability distributionPmut. The probabilityPmut(θ)of selecting a specific mutation of type θ is proportional to the acceptance rate of this type of mutation:
Pmut(θ)∝max(bθ,α(θ,tmut)/π(θ,tmut))
whereπ(θ,tmut)is the number of performed mutations of type θ during the lasttmut mutations that were performed during algorithm execution, andα(θ,tmut) is the number of accepted mu- tations. Thus, simple mutations and recombinations that were successful in past iterations are preferentially selected. Parameter bθ is used to ensure thatPmut(θ) is nonzero. Parametertmut specifies the number of past mutations that are tracked.
Simple mutations
M1: Randomly exchange a single effect.Randomly choose one of the genes with equal pro-
bability. Choose one of its current effectors randomly with equal probability. Replace the assigned fuzzy logic system by any other fuzzy logic system. Choose the other fuzzy lo- gic system randomly with equal probability from the predefined collection of fuzzy logic systems.
M2: Optimize a single effect. Randomly choose one of the genes with equal probability.
Choose one of its current effectors randomly with equal probability. Iteratively replace the currently assigned fuzzy logic system by another one and evaluate the fitness of the model (Section 6.1.3). Repeat this for all possible fuzzy logic systems. Keep the fuzzy logic system which results in the best fitness.
M3: Add a single effector. Choose a gene g0 randomly with equal probability. Choose any
other geneg1with probability proportional to a preference function p f(g1,g0). Addg1 as
88 6. A Genetic Algorithm for Reverse-Engineering
Repeat this for all possible fuzzy logic systems. Keep the fuzzy logic system which results in the best fitness.
M4: Remove a single effector.Randomly choose one of the genes with equal probability. Ite- ratively remove one of the effectors of this gene and evaluate the fitness of the model. Add the removed effector again using the original fuzzy logic system. Repeat this for all effectors. Finally, remove the effector whose removing resulted in the best-fitting model.
M5: Randomly exchange totalization parameter. Choose a generalized mean function as-
signed to an output arc randomly with equal probability. Choose any other parameter p
randomly with equal probability from the predefined set of totalization parameters.
M6: Replace effector or target.Choose a geneg0randomly with equal probability. Do one of the following with equal probability:
Replace one ofg0’s effectors Choose one effector ofg0randomly with equal probability. Denote this effector g1. Choose any other gene g2 randomly with with probability proportional to a preference functionp f(g0,g2). Removeg1as effector ofg0and add
g2as effector tog0. Choose any fuzzy logic system with equal probability.
Replace one ofg0’s targets Choose one target ofg0randomly with equal probability. De-
note this targetg1. Choose any other geneg2randomly with probability proportional to a preference functionp f(g1,g2). Removeg0as effector ofg1and addg0as effector tog2. Choose any fuzzy logic system with equal probability.
Recombination mutations
R1: Copy a single effect.Select any other modelm1randomly with equal probability from the population of models. Choose a geneg0 randomly with equal probability. Choose one of
its effectorsg1inm0randomly with equal probability. Thisg1 must also be an effector of
g0inm1. Replace the according fuzzy logic system inm0by the fuzzy logic system present inm1.
R2: Add a single effector.Select any other modelm1randomly with equal probability. Choose a geneg0randomly with equal probability. Choose one of its effectors g1inm1randomly with equal probability. This g1must not be an effector of g0 inm0. Addg1 as effector to
g0inm0. Use the same fuzzy logic system as inm1.
R3: Remove an effector.Select any other modelm1 randomly with equal probability. Choose
a geneg0randomly with equal probability. Choose one of its effectors g1inm0randomly with equal probability. Thisg1 must not be an effector ofg0inm1. Removeg1 as effector tog0inm0.
R4: Copy a totalization parameter.Select any other modelm1 randomly with equal proba-
bility from the population of models. Choose a generalized mean function assigned to an output arc in m0 randomly with equal probability. An according output arc must also be
6.1 The Reverse-Engineering Algorithm 89
R5: Replace effector or target.Select any other model m1 randomly with equal probability. Choose a gene g0 randomly with equal probability. Do one of the following with equal probability.
Replace one ofg0’s effectors Find an effector ofg0 inm0 which is not an effector ofg0
inm1. Denote this effectorg1. Find an effector ofg0 inm1 which is not an effector ofg0 in m0. Denote this effector g2. These g1 andg2 must not be the same. In m0,
remove g1 as effector of g0 and addg2 as effector to g0. Use the same fuzzy logic system as inm1.
Replace one ofg0’s targets Find a target of g0 in m0 which is not a target of g0 in m1. Denote this target g1. Find a target of g0 in m1 which is not a target of g0 in m0. Denote this target g2. These g1 and g2 must not be the same. In m0, remove g1 as
target ofg0and addg2as target tog0. Use the same fuzzy logic system as inm1. If a mutation can not be performed successfully, e.g. if an effector should be removed but the chosen gene has no effector, or if the mutation would create an invalid model, another mutation is chosen instead.
We omit a detailed description of the preference function p f(gi,gj). Basically, it assigns a high preference value to an unordered pair{gi,gj}if previous mutations ofgihave significantly affectedgjorvice versa. Thus, a high value can only be assigned to{gi,gj}if there is already a directed path of interactions connecting these two entities. The preference score is defined such that is always nonzero. We omit the description of mutations that assign, modify, or remove per- turbation effectsrithat are relevant for time course experiments (Section 6.2.1). These mutations are performed similar to those presented above.