You are on page 1of 3

Definition of String Cover Problem:String covering problems aim to discover a set of binary strings that matches as strongly as possible

another set of binary strings, where is typically much larger than .The and binary strings are called match set ( M )and target set (T ), respectively. If every string in has to be matched by at least one string in , the strings in must contain patterns shared by multiple target strings. Hence, the match set must have the capacity to generalize. However, on the other hand, we prefer the matches as strong as possible; so the match set also needs to be specic. In other words, must satisfy two contradictory criteria: generalization and specialization. The former means to minimize the size of M, and the latter means to maximize the match strength of M. Representation of the Problem:Since there are two binary string in String cover problem i.e. Target String (T) & Match String (M), for the representation of our algorithm we will use binary vector which initially form the population & will also be used for the fitness calculation as described in the following section. Fitness Calculation:Suppose, we are given the following set of strings: (0000, 0001, 0011, 0100, 0101, 1000) which we will refer to as the target set. Our goal is to nd the best possible three-element set of perfectly or partially matching strings called the match set. In other words, we must evolve a composite solution consisting of three subcomponents, where the subcomponents in this case are match set elements. The match strength between two strings is computed by summing the number of bits in the same position with the same value. The tness of each match set element is computed by determining the match strength between it and each element of the target set, and summing the strengths in the cases where it matches the target set element better than any other individual in the match set. The tness of the match set as a whole is computed by averaging the tness values of each of its elements. If two or more match set elements tie for the lead in matching a particular target set element, the winner will be determined randomly. Since each match set element only gets credit when it matches a target string better thanor at least as good asthe other two coevolving elements, the three elements are interdependent. Using the tness computation specied above, the rst match set element, 0100, will have a tness of 7; the second match set element, 0001, will have a tness of 10; and the third match set element, 1000, will have a tness of 4. By averaging the tness of the three subcomponents, the match set is given a tness of 7.

0000 3 0001 0100 0011 4 0100 0101 1000 Figure: Fitness Calculation Steps 4 3 1000 4 0001

Selection Procedure:Once we have the fitness function as we described above, it should be very easy to select the best individual based on their fitness. However, selecting always the fittest candidate is not the ultimate solution in string cover because here fitness = sum of each set element strength for example one individual i in population can have fitness 7 comes from 4 & 3 However, another individual j in population can have fitness 7 comes from 5 & 2 Since later has the greater fitness traditional approach will select it & in case of string cover we should select the former one. So our selection procedure will be to apply a general hill climbing to each set element to find whether it will go up or down in the next tweaking, if it goes up we will select it.

Breeding Procedure:
Strategy 1:Mutation & Crossover Process:Since we have to find out Match String M from a subset of S where S is all possible set of string of Target String T, we must make sure the following criteria 1) When we change an element of M we should make sure its strength increase so that it can contribute to the ultimate fitness increase. 2) However changing of all element at a time may lead to no change in fitness. So we have to perform gradient ascent or hill climbing individually for each set element.

Considering the above mentioned criteria we are using here random bit flip manipulation.& Uniform crossover among K vector.

Strategy 2:Since in string cover problem solution are interdependent to each other, so another we think another best approach for breeding procedure is breeding procedure used in Differential Evolution. Because in Differential Evolution we do the following:1) For each individual i in population we find other 3 individuals a,b & c; This is very important for String Cover Because on set element affect other. 2) Then we generate child by a+(b-c) where is a mutation factor. 3) Finally The child is crossed with i;

Complete Procedure:Here we are now giving the complete idea to solve the problem: 1. Initialize the population 2. Asses the fitness of the each individual in the population a) For each individual in Population For each set element in each individual Calculate the fitness considering the strength of each element 3. Select best individual 4. For each individual in Population Apply the Breeding Procedure[Strategy 2 will be best] Asses the fitness as in 2 Select the Best Go To Step 4 Repeat until M matches S & M is Minimized or we have run out of time

You might also like