Performance Study of Cultural Algorithms Based on Genetic Algorithm with Single and Multi Population for the MKP

Evolutionary Computation (EC) is inspired from by evolution that explores the solution space by gene inheritance, mutation, and selection of the fittest candidate solutions. Since their inception in the 1960s, Evolutionary Computation has been used in various hard and complex optimization problems in search and optimization such as: combinatorial optimization, functions optimization with and without constraints, engineering problems and others (Adeyemo, 2011). This success is in part due to the unbiased nature of their operations, which can still perform well in situations with little or no domain knowledge (Reynolds, 1999). The basic EC framework consists of fairly simple steps like definition of encoding scheme, population generation method, objective function, selection strategy, crossover and mutation (Ahmed & Younas, 2011). In addition, the same procedures utilized by EC can be applied to diverse problems with relatively little reprogramming.


Introduction
Evolutionary Computation (EC) is inspired from by evolution that explores the solution space by gene inheritance, mutation, and selection of the fittest candidate solutions.Since their inception in the 1960s, Evolutionary Computation has been used in various hard and complex optimization problems in search and optimization such as: combinatorial optimization, functions optimization with and without constraints, engineering problems and others (Adeyemo, 2011).This success is in part due to the unbiased nature of their operations, which can still perform well in situations with little or no domain knowledge (Reynolds, 1999).The basic EC framework consists of fairly simple steps like definition of encoding scheme, population generation method, objective function, selection strategy, crossover and mutation (Ahmed & Younas, 2011).In addition, the same procedures utilized by EC can be applied to diverse problems with relatively little reprogramming.
Cultural Algorithms (CAs), as well as Genetic Algorithm (GA), are evolutionary models that are frequently employed in optimization problems.Cultural Algorithms (CAs) are based on knowledge of an evolutionary system and were introduced by Reynolds as a means of simulating cultural evolution (Reynolds, 1994).CAs algorithms implements a dual mechanism of inheritance where are inherited characteristics of both the level of the population as well as the level of the area of belief space (culture).Algorithms that use social learning are higher than those using individual learning, because they present a better and faster convergence in the search for solutions (Reynolds, 1994).In CAs the characteristics and behaviors of individuals are represented in the Population Space.This representation can support any population-based computational model such as Genetic Algorithms, Evolutionary Programming, Genetic Programming, Differential Evolution, Immune Systems, among others (Jin & Reynolds, 1999).
Multidimensional Knapsack Problem (MKP) is a well-known nondeterministic-polynomial time-hard combinatorial optimization problem, with a wide range of applications, such as cargo loading, cutting stock problems, resource allocation in computer systems, and

Background
Since the introduction of the Knapsack problems some algorithm techniques such as brute force, conventional algorithms, dynamic programming, greedy approach and approximation algorithm have been proposed (Ahmed & Younas, 2011).
Evolutionary algorithms (EAs) have been widely applied to the MKP and have shown to be effective for searching and finding good quality solutions (Chu & Beasley, 1998).It is important to note that MKP is considered a NP hard problem; hence any dynamic programming solution will produce results in exponential time.In the last few years, Genetic Algorithms (GAs) have been used to solve the NP-complete problems and have shown to be very well suited for solving larger Knapsack Problems (Fukunaga & Tazoe, 2009;Gunther, 1998;Sivaraj & Ravichandran, 2011).For larger knapsack problems, the efficiency of approximation algorithms is limited in both solution quality and computational www.intechopen.comPerformance Study of Cultural Algorithms Based on Genetic Algorithm with Single and Multi Population for the MKP 387 cost (Ahmed & Younas, 2011).Spillman's experiment, which applies the GA to the knapsack problem, shows that the GA does not have a good performance in relatively small size problem, but works quite well in problems that include a huge number of elements (Spillman, 1995).There are many packing problems where evolutionary methods have been applied.The simplest optimization problem and one of the most studied is the onedimensional (zero-one or 0-1) knapsack problem (Ahmed & Younas, 2011), which given a knapsack of a certain capacity, and a set of items, each one having a particular size and value, finds the set of items with maximum value which can be accommodated in the knapsack.Various real-world problems are of this type: for example, the allocation of communication channels to customers who are charged at different rates (Back et al., 1997).
During a study of 0-1 knapsack, a number of extensions and variants have been developed such as (Ahmed & Younas, 2011): Multiple Knapsack Problems (MKP), Multidimensional Knapsack Problems (MDKP), Multi Choice Knapsack Problems (MCKP) and Multiple Choice Multidimensional Knapsack Problems (MMKP).It is also important to consider other extensions such as (Chu & Beasley, 1998): Multiconstraint Knapsack Problem, and also the term "Multidimensional Zero-one Knapsack Problem".Using alternative names for the same problem is potentially confusing, but since, historically, the designation MKP has been the most widely used (Chu & Beasley, 1998).Consequently, Multidimensional Knapsack Problem (MKP) is the designation selected for this work.In our previous research it was introduced a Multi Population Model on the cultural structure identified as "Multi Population Cultural Genetic Algorithm" (MCGA) (Silva & Oliveira, 2009).In MCGA model several sub-populations are connected with as ring structure, where the migration of individuals occurs after a generation interval (according to the migration based on parameter interval) with best-worst migration policy implementation.The results were satisfactory in relation to other algorithms in the literature.In another research two versions of Distributed GA (DGA) are presented as follows: standard Distributed GA (DGA) and an improved DGA (DGA-SRM), which two genetic operators are applied in parallel mode to create offspring.The term SRM represents "Self-Reproduction with Mutation", that is applied to various 0/1 multiple knapsack problems so as to improve the search performance (Aguire et al., 2000).Hybridization of memetic algorithms with Branch-and-Bound techniques (BnB) is also utilized for solving combinatorial optimization problems (Gallardo et al., 2007).BnB techniques use an implicit enumeration scheme for exploring the search space in an "intelligent" way.Yet another research utilizes adaptive GA for 0/1 Knapsack problems where special consideration is given to the penalty function where constant and self-adaptive penalty functions are adopted (Zoheir, 2002).Fitness landscape analysis techniques are used to better understand the properties of different representations that are commonly adopted when evolutionary algorithms are applied to MKP (Tavares et al., 2008).Other investigation utilizes multiple representations in a GA for the MKP (Representation-Switching GA) know as RSGA (Fukunaga, 2009).Other recent works consider two heuristics and utilize them for making comparisons to the well-known multiobjective evolutionary algorithms (MOEAs) (Kumar & Singh, 2010).While comparing MOEAs with the two heuristics, it was observed that the solutions obtained by the heuristics are far superior for larger problem instances than those obtained by MOEAs.

Multidimensional Knapsack Problem
As mentioned earlier, the MKP is a well-known nondeterministic-polynomial time-hard combinatorial optimization problem, with a wide range of applications (Tavares et al., 2008).The classical 0-1 knapsack problem is one of the most studied optimization and involves the selection of a subset of available items having maximum profit so that the total weight of the chosen subset does not exceed the knapsack capacity.The problem can be described as follows: given two sets of n items and m knapsacks constraints (or resources), for each item j, a profit p j is assigned, and for each constraint i, a consumption value r ij is designated.The goal is to determine a set of items that maximizes the total profit, not exceeding the given constraint capacities c i .Formally, this is stated as follows (Tavares et al., 2008): With 0 The knapsack constraint is represented by each of the m constraints described in Eq. (2).The decision variable is the binary vector x =(x 1 ,...,x n ).Each item j is mapped to a bit and when x j =1, the corresponding item is considered to be part of the solution.The special case of m =1 is generally known as the Knapsack Problem or the Unidimensional Knapsack Problem.
For single constraint the problem is not strongly NP-hard and effective approximation algorithms have been developed for obtaining near-optimal solutions.A review of the single knapsack problem and heuristic algorithms is given by Martello and Toth (Martello & Toth, 1990).Exact techniques and exhaustive search algorithms, such as branch-andbound, are only of practical use in solving MKP instances of small size since they are, in general, too time-consuming (e.g., instances with 100 items or less, and depending on the constraints).

Evolutionary approach for the MKP
In a resolution of specific problems that implements an Evolutionary Algorithm, as for example, a simple Genetic Algorithm (GA), it is necessary the definition of five components (Agapie et al., 1997).The first component is the genotype or a genetic representation of the potential problem (individual representation scheme).The second is a method for creating an initial population of solutions.The third is a function verifying the fitness of the solution (objective function or fitness function).The fourth are genetic operators and the fifth are some

389
constant values for parameters that are used by the algorithm (such as population size, probability of applying an operator, etc.).

Genotype
The natural representation of the MKP would be the binary representation, in which every bit represents the existence or not of a certain element in the Knapsack.A bit set to 1 indicates that the corresponding item is packed into the knapsack and a bit set to 0 indicates that it is not packed.Hence a typical population of two individuals for a six elements in Knapsack would be represented as showed in Figure 1.Thus, each element has an identification that is given by the bit index.
In Figure 1 (a) there are three elements in the knapsack, corresponding to the following positions: 1, 4 and 6.In Figure 1 (b) there are four elements in the knapsack, whose positions are: 2, 3, 5 and 6.

Initial population
The population is the solution representation that consists of a set of codified chromosomes.There are many ways to generate the initial population such as random chromosome or chromosome with the solution closer to the optimum.In most applications the initial population is generated at random.

Evaluation function
In GA each individual is evaluated by fitness function.Some individuals produce more children than others due to their fitness.By this mechanism, individuals that have chromosomes with better fitness have better chances of leaving their genes.This leads to better average performance of the whole population as generations proceed (Ku & Lee, 2001).A feasible vector solution x needs to satisfy constraint (2), otherwise it is infeasible.Hence, a penalty is applied to all infeasible solutions in order to decrease their corresponding "fitness".Therefore, the two types of evaluation functions used in this research are based on static (constant) and adaptive penalty functions.The standard evaluation function for each individual is given by the following expressions: A vector solution x is optimal when Evaluation (x) =MaxP.

Genetic operators
To implement the GA process, many factors should be considered such as the representation scheme of chromosomes, the mating strategy, the size of population, and the design of the genetic operators such as selection, mutation and recombination (Ku & Lee, 2001).
i. Selection -is an operator that prevents low fitness individuals from reproduction and permits high fitness individuals to offspring more children to improve average fitness of population over generations.There are various selections types, such as stochastic remainder, elitism, crowding factor model, tournament, and roulette wheel.ii.Recombination or Crossover -is an operator that mixes the chromosomes of two individuals.Typically two children are generated by applying this operator, which are similar to the parents but not same.Crossover causes a structured, yet randomized exchange of genetic material between solutions, with the possibility that the "fittest" solutions generate "better" ones.A crossover operator should preserve as much as possible from the parents while creating an offspring.iii.Mutation -introduces totally new individuals to population.It helps extend the domain of search and will restrain the diversity of the population.Mutation involves the modification of each bit of an individual with some probability Pm.Although the mutation operator has the effect of destroying the structure of a potential solution, chances are it will yield a better solution.Mutation in GAs restores lost or unexplored genetic material into the population to prevent the premature convergence of the GA.
The tournament is the selection type chosen for this work since it is more used and it presents good performance.For a binary representation, classical crossover and mutation operators can be used, such as n-point crossover or uniform crossover, and bit-flip mutation.
In CAs the influence of information from Belief Space on recombination and mutation process such as: best chromosome or set of best chromosomes information is expected.

Constant values parameters
An Evolutionary Algorithm involves different strategy parameters, e.g.: mutation rate, crossover rate, selective pressure (e.g., tournament size) and population size.Good parameter values lead to good performance.There are three major types of parameter control (Eiben & Smith, 2008): • deterministic: a rule modifies strategy parameter without feedback from the search (based on some type of a counter); • adaptive: a feedback rule based on some measure monitoring search progress (quality); • self-adaptative: parameter values evolve along with the solutions; encoded onto chromosomes they undergo variation and selection.
The implementation of a deterministic parameter control is easier, provided that the parameter values used are tested to verify the best performance.

Cultural algorithms
Cultural Algorithms (CAs) have been developed so as to model the evolution of the cultural component of an evolutionary computational system over time as it accumulates experience (Reynolds & Chung, 1996).As a result, CAs can provide an explicit mechanism for global knowledge and a useful framework within which to model self-adaptation in an EC system.The CAs are based on knowledge of an evolutionary system that implements a dual mechanism of inheritance.This mechanism allows the CAs to explore as much microevolution as macroevolution.Microevolution is the evolution that happens in the population level.Macroevolution occurs on the culture itself, i.e. the belief space evolution.The belief space is the place where the information on the solution of the problem is refined and stored.It is acquired through the population space over the evolutionary process.The belief space has the goal to guide individuals in search of better regions.In the CAs evolution occurs more quickly than in population without the mechanism of macroevolution.The characteristics and behaviors of individuals are represented in the Population Space and as mentioned earlier the population space can support any population-based computational model such as Genetic Algorithms among others (Jin & Reynolds, 1999).The communications protocols dictate the rules about individuals that can contribute to knowledge in the Belief Space (function of acceptance) and how the Belief Space will influence new individuals (Function of Influence), as shown in Figure 2. The two most used ways to represent knowledge in the belief space are (Reynolds & Peng, 2004): Situational Knowledge and Normative Knowledge.Situational Knowledge represents the best individuals found at a certain time of evolution and it contains a number of individuals considered as a set of exemplars to the rest of the population.The number of exemplars may vary according to the implementation, but it is usually small.For example, the structure used to represent this type of knowledge is shown in Figure 3.Each individual is stored within its parameters and fitness value (Iacoban et al. 2003).The Situational Knowledge is updated when the best individual of the population is found.This occurs when its fitness value exceeds the fitness value of the worst individual stored.
Normative Knowledge represents a set of intervals that characterize the range of values given by the features that make the best solutions (Iacoban et al., 2003).
Figure 4 shows the structure used by Reynolds and his students, where are stored the minimum and maximum values on the individual's characteristics.With these minimum values, (li) and maximum (ui), the fitness values are also stored.This value results from the individuals that produced each extreme Li and Ui respectively.
The adjustment of the range of Normative Knowledge varies according to the best individual.That is, if the individual was accepted by the acceptance function and its range is less than the range stored in the belief space, the range is adjusted, and vice versa.
The resolution of problems produces experiences from individuals in the population space, which are selected to contribute to the acceptance by the belief space, where the knowledge is generalized and stored.In the initial population, the individuals are evaluated by the fitness function.Then, the information on the performance of the function is used as a basis for the production of generalizations for next generations.The experiences of the individuals selected will be used to make the necessary adjustments on the knowledge of the current belief space.

Parallel Genetic Algorithms
The definition of Parallel Genetic Algorithms (PGAs) is related with execution of various GAs in parallel mode.The main goal of PGAs is to reduce the large execution times that are associated with simple genetic algorithms for finding near-optimal solutions in large search spaces and to find better solutions.
The PGAs can be implemented through two approaches (Sivanandam, 2007): standard parallel approach and the decomposition approach.In the first approach, the sequential GA model is implemented on a parallel computer by dividing the task of implementation among the processors.The standard parallel approaches are also known as master-slave GAs.
In the decomposition approach, the full population exists in distributed form.Other characteristic in the decomposition approach is that the population is divided into a number of sub-populations called demes.Demes are separated from one another and individuals compete only within a deme.An additional operator called migration is used to move the individuals from one deme to another.If the individuals can migrate to any other deme, the model is called island model or Multiple-population GAs when implemented in parallel or distributed environments (Braun, 1991).Migration can be controlled by various parameters  , 2007).
Other authors classify Parallel Genetic Algorithm in four main categories (Aguirre & Tanaka, 2006): global master-slave, island, cellular, and hierarchical parallel GAs.In a global master-slave GA there is a single population and the evaluation of fitness is distributed among several processors.The important characteristic in a global master-slave GA is that the entire population is considered by genetic operators as selection, crossover and mutation.An island GA, also known as coarse-grained or distributed GA, consists of several sub-populations evolving separately with occasional migration of individuals between subpopulations.A cellular category also known as "fine-grained GA" consists of one spatially structured population, whose selection and mating are restricted to a small neighborhood.
The neighborhoods are allowed to overlap permitting some interaction among individuals.Finally, a hierarchical parallel GA category, combines an island model with either a masterslave or cellular GA.The global master-slave GA does not affect the behavior of the algorithm and can be considered only as a hardware accelerator.However, the other parallel formulations of GAs are very different from canonical GAs, especially, with regard to population structure and selection mechanisms.These modifications change the way the GA works, affecting its dynamics and the trajectory of evolution.For example, the utilization of parameters as sub-population size, migration rate and migration frequency are crucial to the performance of island models.Cellular, island and hierarchical models perform as well as or better than canonical versions and have the potential of being more than just hardware accelerators (Aguirre & Tanaka, 2006).A new taxonomy about PGAs is also presented by Nowostawski and Poli (Nowostawski & Poli, 1999).
In recent studies about MKP Silva and Oliveira (Silva & Oliveira, 2009) have shown that good results are reached in the benchmark tests when taking into consideration the implementation of sub-populations and the migration process from the island model.The results presented were better than canonical version of Cultural Algorithm in most cases.

Island model (Multi Population Genetic Algorithms)
Multi population Genetic Algorithms (MGAs) or Island Model, is an extension of traditional single-population Genetic Algorithms (SGAs) by dividing a population into several subpopulations within which the evolution proceeds and individuals are allowed to migrate from one sub-population to another.Different values for parameters such as selection, recombination and mutation rate can be chosen for each sub-population.Normally, the basic island model uses the same values for these parameters in all sub-populations.
In order to control the migration of individuals, several parameters were defined such as: (i) the communication topology that defines the connections between sub-populations, (ii) a migration rate that controls how many individuals migrate, and (iii) a migration interval that affects the frequency of migration.In addition, migration must include strategies for migrant selection and for their inclusion in their new sub-populations (Aguire, 2000).
The sub-populations size, communication topology (its degree of connectivity), migration rate and migration frequency are important factors related to the performance of distributed GAS.In general, it has been shown that distributed GAs can produce solutions with similar or better quality than single population GAs, while reducing the overall time to completion in a factor that is almost in reciprocal proportion to the number of processors (Aguire, 2000).
In the island model GA, the sub-populations are isolated during selection, breeding and evaluation.Islands typically focus on the evolutionary process within sub-populations before migrating individuals to other islands, or conceptual processors, which also carry out an evolutionary process.At predetermined times, during the search process, islands send and receive migrants to other islands.There are many variations of distributed models, e.g.islands, demes, and niching methods, where each requires numerous parameters to be defined and tuned (Gustafson, 2006).
An example of the communication topology, can be defined as a graph in which the subpopulations Pi (i = 0, 1,..., K -1) are the vertices and each defined edge Li,j specifies a communication link between the incident vertices Pi and Pj (neighbor sub-populations) (Aguire, 2000).In general, assuming a directed graph for each defined link Li,j we can indicate the number of individuals Ri,j that will migrate from P to Pj (migration rate) and the number of generations M between migration events (migration interval).The communication topology and migration rates could be static or dynamic and migration could be asynchronous or synchronous.
Various strategies for choosing migrants have been applied.Two strategies often used to select migrants are selection of the best and random selection.For example, the migration can implement a synchronous elitist broadcast strategy occurring every M generation.Each sub-population broadcasts a copy of its R best individuals to all its neighbor subpopulations.
Hence, every sub-population in every migration event receives migrants.Figure 5 illustrates a communication topology +l+2 island model in which each sub-population is linked to two neighbors (L = 2).In this example, the sub-population P0 can send individuals only to P1 and P2 and receive migrants only from P4 and P5.

Cultural Island Model (CA-IM)
In this section is presented an approach about the communication topology for migration process implemented in a Cultural Algorithm based on the island model.As noted earlier in the classical island model implementation, there are sub-populations connected with as ring The approach utilized in this work is an adaption and implementation of the island model on the cultural structure here identified as "Cultural Island Model" (CA-IM), briefly introduced in Silva & Oliveira (Silva & Oliveira, 2009).The implementations have become simple because the same CAs structures were used as much the evolutionary structure as the belief space that is the main characteristic present in CAs.
The main characteristic present in CA-IM is the link between main belief spaces (from main population) and secondary belief space (from multi population).They store information about independent evolution for main population and sub-populations respectively, i.e. the cultural evolutions occur in parallel among the main population and the sub-populations of the islands.The link of communication between two Belief Spaces, allows migration between the best individuals stored in the cultural knowledge structure implemented.Figure 6 shows the framework correspondent to the proposed structure.It is important to note that CA-IM provides a continuous verification between the last solution (optimum value) found and the current solution.Then, it computes the number of generations where don't occur improvements.Thus, if the distance between the last generation, where the current solution was found, and the current generation is high then the sub-populations are eliminated and recreated randomly.As for CA-IM, there is a fixed difference for this occurrence in the range of 60 to 100 generations.If a new solution is not found in this range, then the sub-populations of the islands (Multipopulation Space) as well as the cultural information about all sub-populations (Belief Space Multipopulation) are recreated randomly by algorithm.

Mutation and recombination
In mutation operation the cultural knowledge (such as situational knowledge) as well as the standard binary mutation operation (known as "bit-flip mutation") is utilized.If the cultural knowledge is utilized during the mutation process, the mutated chromosome genes are replaced by the best genes from chromosome stored in situational knowledge with P M probability, otherwise, the genes are inverted by bit-flip mutation.The chromosome chosen among a set of chromosomes from situational knowledge can be the best chromosome or a random chromosome.
The bit-flip mutation is a common operation applied in evolutionary algorithms to solve a problem with binary representation.Consequently, each bit from current mutated chromosome is flipped, i.e. the value of the chosen gene is inverted also with probability of mutation P M .Figure 7 shows the pseudo-code of mutation utilized by CA-IM.In recombination operation the cultural knowledge as well as the standard binary recombination operation (known as "uniform recombination") is also utilized.In the uniform recombination the bits are randomly copied from the first or from the second parent to genes in the offspring chromosomes, in any sequence of ones and zeros.Figure 8 shows the pseudo-code of CA-IM recombination.
If the cultural knowledge is utilized during the recombination process, the chromosome genes are replaced by the best genes from chromosome stored in situational knowledge with P R probability.Otherwise, the genes are replaced with genes from their parents.Here only the best chromosome is chosen from situational knowledge during the recombination process. Performance

Experimental results and discussion
To evaluate the performance of the proposed algorithm CA-IM, a comparison of various tests with Distributed Genetic Algorithms utilizing the same knapsack problems was carried out.To make a comparison two kinds of algorithms based in Distributed GAs (Aguirre et al., 2000): (i) A Distributed canonical GA (denoted as DGA), and (ii) a Distributed GA-SRM (denoted as DGA-SRM) were utilized.The SRM term means "Self-Reproduction with Mutation", and introduces diversity by means of mutation inducing the appearance of beneficial mutations.
For the CA-IM algorithm there are two versions: CA-IM_1 and CA-IM_2.The only difference is that CA-IM_1 has a fixed rate for mutation and recombination, while CA-IM_2 has a random rate for mutation and recombination.The standard CA (CAs) is the Cultural Algorithm with single population.

DGA and DGA-SRM
The DGA works with various 0/1 multiple knapsack problems (NP hard combinatorial) which from previous efforts seem to be fairly difficult for GAs (Aguirre et al., 2000).Those algorithms were evaluated on test problems which are taken from the literature.The problem sizes range from 15 objects to 105 and from 2 to 30 knapsacks and can be found in OR-Library (Beasley, 1990).The knapsack problems are defined by: problem (n, m) where n represents the number of objects and m represents the number of knapsacks.Each knapsack has a specific capacity as well each object has a specific weight.For example, Weing7 (105, 2) represents a MKP with 105 objects and 2 knapsacks.
Every experiment presented here has a similar capacity to the work described in DGA and DGA-SRM (Aguire et al., 2000) such as: population size, number of function evaluations in each run and a total of 100 independent runs.Each run uses a different seed for the random initial population.To improve understanding of DGA and DGA-SRM algorithms, some parameters and symbols are presented: • The maximum size of the population is represented by total λ (fixed in 800); • The parent and offspring population sizes are represented by µ and λ respectively; The parameter K represents the number of sub-populations (partitions).Hence, λ *K= total λ (maximum=800);

•
The parameter M is the number of generations between migration events (migration interval) ;

•
The symbol N represents the number of times the global optimum was found in the 100 runs;

•
The symbolτ represents a threshold (utilized for control of a normalized mutant's survival ratio).

•
The symbol T represents the number of function evaluations in each run; • Average is the average of the best solutions and Stdev is the standard deviation around Average, respectively; In DGA and DGA-SRM, each sub-population broadcasts a copy of its R best individuals to all of its neighbor sub-populations.Hence, every sub-population in every migration event receives m λ = L x R migrants, where L is the number of links.When there is no migration and the sub-populations evolve in total isolation, the values corresponding to such a characteristic are denoted by X in the table.The results for knapsack problem Weing7 for DGA and DGA-SRM is shown in the Table 1 (Aguirre et al., 2000) 2 shows the results found for others knapsack problems by DGA and DGA-SRM.In order to simplify the results shown in Table 2, the following configuration parameters should be considered: K = 16 sub-populations and 25 µ = (Aguirre et al., 2000).Table 2.The best results for other problems by DGA and DGA-SRM ( total λ = 800; T=4x10 5 ).

CA-IM_1
For the algorithm proposed (CA-IM) various parameters and symbols are also considered such as:

•
The parameter P is the size of main population;

•
The parameter P M is the probability of mutation and P R probability of recombination.

•
The number of islands is K (number of sub-populations); • The parameter α is the percentage which defines the size of the population of each island at function of P. • The sub-population size in each island is SI, since SI = α *P.

•
The percentage of best individuals in Situational Knowledge on population space is represented by SK P and the percentage of best individuals in Situational Knowledge on multi population space is represented by SK M .

•
The parameter M is the number of generations between migration events (migration interval).Here M determines the interval of influence from the islands population through the Situational Knowledge.

•
The symbol T represents the number of function evaluations in each run;

•
The symbol N represents the number of times the global optimum was found in the 100 runs.

•
Average is the average of the best solutions and Stdev is the standard deviation around Average; • Average of generations is the average of the generations whose best solution was found in each run.
For the tests carried out for CA-IM_1, the selection chosen was tournament, whose value is 3, the mutation rate (P M ) is 0.025 and recombination rate (P R ) is 0.6.The situational knowledge configurations are: SK P =0.2 and SK M =0.5.Table 3 shows the results found by CA-IM_1, whose best value found in Average is 1095445 (the optimal value) and in the Average of Generations is 44.49.All values reached have optimum value.However, if Average of Generations is low in relation to total of generations, then this means that the optimum is found in few generations.
As it is shown in Table 3, it is possible to observe that CA-IM outperforms DGA-SRM for any configuration such as the number of sub-populations (islands) and size of subpopulation.Similarly, CA-IM also exhibits higher convergence reliability than DGA-SRM with higher values for N and Average with smaller Stdev.These results show that the CA-IM produces higher performance for all utilized parameters.λ =800 and T=8x10 5 ).
A new result "Average of Generations" was introduced so as to evaluate other type other type of performance whose value represents the average of generations that the optimum value was found for 100 independent runs for each problem presented.Particularly, it occurs when M is low and K is high (see result for Average of Generations).This means that a larger number of islands with small populations produce better convergence.
According to Table 3 the best value found in Average is 1095445 (the optimal value) while the Average of generations is 44.49 that means a low value, considering that 500 generations was utilized in each run which T=4x10 5 .This represents 500 generations with a population size equal to 800 (including all subpopulations).Thereby, it is possible to observe that CA-IM_1 outperforms DGA-SRM.Similarly, CA-IM_1 also exhibits higher convergence reliability (higher values of N and Average with smaller Stdev) than DGA-SRM.These results show that the CA-IM_1 is able to find global optimal for MKP, taking into consideration the tests results with 100% success.
The problem that presented greater difficulty was Sento2, that presented in some cases optimal values near to 100% such as N=98 and N=99.Even with results of N < 100 they are still better than the results obtained in the chosen benchmarks.In the meantime, the implementation of some adjustments allows CA-IM_1 to reach N=100 for Sento2.

CA-IM_2
For the tests carried out for CA-IM_2 the selection chosen was tournament whose value is 3.The implementation of random rate for mutation and recombination in CA-IM_2 doesn't produce satisfactory results in comparison to CA-IM_1, as it is shown in Table 6.In addition, the Average of Generations from algorithm CA-IM_2 is greater than CA-IM_1 for all knapsack problems.However, in comparison to CA-IM_1, there are few differences in results for Weing7 as is shown in Table 3 and Table 5.

CA-S (Standard CA)
For CA-S we also utilized the same configuration such as: tournament value=3, P M = 0.025 and P R = 0.6.The situational knowledge configuration is equal to 0.2 (SK P =0.2).Every experiment presented here also consists of 100 independent runs and each run uses a different seed for the random initial population.).
Table 7 shows the results from standard Cultural Algorithm (CA-S) that utilizes single population.According to results, the CA-S reaches optimum average for 100 runs only for Sento1 and Weing7.However, the results from CA-S for Petersen6, Pertersen7 and Sento2 outperform the results presented by DGA-SRM.

Conclusion
This work presented a Cultural Algorithm (CA) with single population (CA-S) and multi population (CA-IM) in order to improve the search performance on MKP.It was observed that CA-S improves the convergence reliability and search speed.However, CA-S is not enough to reach global optimum for most problems presented.Our cultural algorithm implementation with island model (CA-IM_1 and CA-IM_2) allows the migration among islands sub-populations and main population through belief space structures that represent the cultural knowledge available in Cultural Algorithms.
The results have shown that the CA-IM_1 is better than CA-IM_2 for the benchmarks selected.The results have also shown that the CA-IM_1 and CA-IM_2 perform the optimum search and reach optimum values equally or above the ones reached by algorithms DGA and DGA-SRM that were chosen for comparison.The positive results obtained, give support the idea that this is a desirable approach for tackling highly constrained NP-complete problems such as the MKP.In addition, it is possible that the hybridization of cultural algorithms based on population of GA with local search techniques improves the results obtained by standard CAs.In a future work, a study will be done about the behavior of the sub-populations that are eliminated and recreated randomly.In addition a local search will be implemented to CAs as much for standard CA (single population) as for CA-IM (multi population) so as to verify improvements on these algorithms.

Acknowledgments
This research was supported by the CAPES (Coordenação de Aperfeiçoamento do Pessoal de Ensino Superior, Brazil) and by FAPESPA (Fundação de Amparo à Pesquisa do Estado do Pará, Brazil).

Fig. 4 .
Fig. 4. Representation of Normative knowledge These intervals are used to guide the adjustments (mutations) that occur in individuals.With these minimum values, (li) and maximum (ui), the fitness values are also stored.This value results from the individuals that produced each extreme Li and Ui respectively.

Fig. 6 .
Fig. 6.Framework of model proposed Migrations from islands occur through Belief Space Multipopulation structure that perform the communication process among sub-populations and send the best individuals through Accept Migration.It occurs in a predefined interval whose parameter is M (every M generation) where the best individuals are evaluated by acceptance function and updated in each belief space.The migration from Belief Space Multipopulation to Main Belief Space is implemented as a number of individuals which are considered as a set of exemplars to the rest of the population (Situational Knowledge).

Problem
www.intechopen.comPerformanceStudy of Cultural Algorithms Based on Genetic Algorithm with Single and Multi Population for the MKP 399 Performance Study of Cultural Algorithms Based on Genetic Algorithm with Single and Multi Population for the MKP 393 like migration rate, topology, migration scheme like best/worst/random individuals to migrate and the frequency of migrations (Sinvanadam www.intechopen.com Performance Study of Cultural Algorithms Based on Genetic Algorithm with Single and Multi Population for the MKP 395 structure.Individuals in classical island model are migrated after every migration-interval (M) among generations and the best-worst migration policy is used. www.intechopen.com

Table 1 .
. The best results for Weing7 (105, 2) by DGA and DGA-SRM ( total λ =800; T=8x10 5 ).According toTable 1 the best value found in Average is equal to 1094423.4,for DGA and 1095430.51 for DGA-SRM.Table 1 also indicates that the DGA-SRM improves the results in relation to DGA.Table

Table 4 .
Table4shows the results for others MKPs found by algorithm CA-IM_1.The best results for other problems by CA-IM_1 ( total λ = 800, T=4x10 5 ).

Table 6 .
Performance Study of Cultural Algorithms Based on Genetic Algorithm with Single and Multi Population for the MKP 401 Table5that shows the results for Weing7 and in Table6that shows the results for others knapsack problems.The best results for other problems by CA-IM_2 ( total λ = 800, T=4x10 5 ).

Table 7 .
The best results for all knapsack problems by CA-S (T=4x10 5