Literature DB >> 28386187

Biomimicry of symbiotic multi-species coevolution for discrete and continuous optimization in RFID networks.

Na Lin1, Hanning Chen2, Shikai Jing3, Fang Liu4, Xiaodan Liang2.   

Abstract

In recent years, symbiosis as a rich source of potential engineering applications and computational model has attracted more and more attentions in the adaptive complex systems and evolution computing domains. Inspired by different symbiotic coevolution forms in nature, this paper proposed a series of multi-swarm particle swarm optimizers called PS2Os, which extend the single population particle swarm optimization (PSO) algorithm to interacting multi-swarms model by constructing hierarchical interaction topologies and enhanced dynamical update equations. According to different symbiotic interrelationships, four versions of PS2O are initiated to mimic mutualism, commensalism, predation, and competition mechanism, respectively. In the experiments, with five benchmark problems, the proposed algorithms are proved to have considerable potential for solving complex optimization problems. The coevolutionary dynamics of symbiotic species in each PS2O version are also studied respectively to demonstrate the heterogeneity of different symbiotic interrelationships that effect on the algorithm's performance. Then PS2O is used for solving the radio frequency identification (RFID) network planning (RNP) problem with a mixture of discrete and continuous variables. Simulation results show that the proposed algorithm outperforms the reference algorithms for planning RFID networks, in terms of optimization accuracy and computation robustness.

Entities:  

Keywords:  Global optimization; Multi-swarm coevolution; Particle swarm optimization; RFID; Symbiosis

Year:  2017        PMID: 28386187      PMCID: PMC5372419          DOI: 10.1016/j.sjbs.2017.01.033

Source DB:  PubMed          Journal:  Saudi J Biol Sci        ISSN: 2213-7106            Impact factor:   4.219


Introduction

Natural selection tends to enable living organisms to adapt to their environments by the processes of interaction (Bonabeau et al., 1999). As in nature, individuals interact constantly. Within a species or a population, individuals can gain useful information to improve their adaptation by interacting with other members of the same species or population (e.g., individual species member use information of other members to find more food more quickly and allocate more time to feed but less to look for predators than individuals do). Two or more individuals from different species or populations can also interact with each other to gain food, protection from enemies, a nesting site, or a combination of benefits (e.g., in Africa a species of bird known as honeyguide leads human to bee hives, then humans break into these hives to collect honey, and the honeyguide later exploits the damage that humans did to the hives to gain access to food) (Niu et al., 2007). In biology, such intraspecific interaction (heterogeneous coevolution) and interspecific interaction (homogeneous coevolution) in an ongoing cycle of adaptation are called symbiotic coevolution (Frank, 1997). In this paper, we implement an entire symbiotic system which consists of both heterogeneous and homogeneous coevolution aspects in formulating our symbiotic simulation models (Chen and Zhu, 2008). We introduced several symbiotic species each possessing a number of individuals into this coevolution model to represent the “biological community”. The coevolution process in our model is hierarchical and contains three levels (i.e. individual level, species level and community level). Each individual of the biological community evolves base on the knowledge of integration of itself (individual-level evolution, associate with individual’s own cognition), its species members (species-level coevolution, associate cooperative interaction within species) and its symbiotic partners from other species (community-level coevolution, associate heterogeneous coevolution between individual from different species). Clearly we model more details of the social behaviors in nature ecosystems and tie this model closer to natural evolution. Since the community is made up of a swarm of agents who are species while each species is made up of a swarm of species member (individual), our swarms-within-swarms model is instantiated as a symbiotic coevolutionary optimization algorithm, namely particle swarms swarm optimizer (PS2O). Inspired by different symbiotic coevolution forms in nature, this work proposed four versions of PS2O to mimic mutualism, commensalism, parasitism, and competition mechanism, respectively. In order to evaluate the performance of the PS2O algorithms, extensive studies based on five widely used benchmark functions have been carried out. The simulation results are encouraging: all the PS2O algorithms have markedly superior search performance in terms of accuracy, robustness and convergence speed on all benchmark functions. We also simulated the coevolution process of a number of distinct species in our biological community model, and the simulation result is consistent with the natural phenomenon (i.e., the biological diversity is sustained after many coevolutionary generations, and the adaptive abilities of the interacting individuals/species are greatly increased.). Radio Frequency Identification (RFID) technology as a new inventory tracking technology has achieved significant development in many practical industrial scenarios, where much great application potential has been realized and many are being explored. In many real-world RIFD applications, such as production, logistics and supply chain management, more and more readers are deployed in order to provide complete coverage of all the tags in the given area. Hence, in this paper, we develop an optimization model for distributed decision making of reader management in large-scale RFID network based on the evolutionary and swarm-based methods. Here the RNP problem is described and formulated as a two-level model, which is in order to minimize the total installation cost of RFID network in the top-level, while maximizing tag coverage and network reliability, and minimizing reader interference in the lower-level. Then, in order to solve this complex mixed discrete-continuous problem effectively and efficiently, we provide some initial insights into this potential by evaluating PS2O on real-world RNP cases, which focus on distributed decision making of a 30-reader RFID network and a 50-reader RFID network. The simulation results, which are compared to other state-of-the-art methods, show the superiority of the proposed algorithm.

Symbiotic coevolution

Symbiosis, initially defined by Anton de Bary in 1879, is simply the living together of organisms from different species (Frank, 1995). Here, we denote symbiosis as relationships that are constant and intimate between dissimilar species. Symbiosis is almost ubiquitous in nature. There are practically no plants or animals free of symbionts (organisms in symbiotic relationship) living on or in them. Research shows different types of symbiotic interactions. Some involve internal interactions, like bacteria in human intestines. Some of these interactions have seemed to lead to the evolution of organisms (e.g., the eukaryote cells, form which all plants and animals are descended have symbiotic origin). Others appear to be purely behavioral, as in a human-honeyguide mutualism that is discussed above. Currently, enlightened evolutionary theory recognizes symbiosis as an integral process, and a fundamental source of innovation in evolution (Chen et al., 2010a, Chen et al., 2010b). It is impossible to describe a set classifications for all types of symbiotic coevolution. Since an arbitrary number of individuals can be involved it would be ludicrous to try. However, the typical approach is to look at how pairs of individuals can form symbiotic relationships. It is possible to describe the various forms of symbiosis that exist in nature in the following listing. Commensalism: commensalism occurs between two individuals Host and Commensal if and only if Host protagonizes Commensal and Commensal does not affect the fitness of Host (i.e., Commensal benefits from Host and Host is unaffected). Competition: competition occurs between two individuals Competitor A and B if and only if both Competitors antagonize each other (i.e., both Competitors suffer because of each other). Mutualism: mutualism occurs between two Symbionts A and B if and only if Symbiont A protagonizes Symbiont B and Symbiont B protagonizes Symbiont A (i.e., both Symbionts benefit from and/or need each other). Predation: predation occurs between two individuals Predator and Prey if and only if Predator antagonizes Prey and Prey protagonizes Predator (i.e., Predator benefits from Prey while Prey suffers due to Predator).

Model

In this paper, we mimic four types of symbiotic coevolution, namely mutualism, commensalism, predation, and competition, to design our multi-swarm algorithms.

Canonical PSO (PSO)

The canonical PSO is a population-based technique, similar in some aspects to evolutionary algorithms (Sumathi et al., 2008), except that potential solutions (particles) move, rather than evolve, through the search space. The rules of particle dynamics that govern this movement are inspired by models of swarming and flocking. In PSO population, each particle has a position and a velocity, and experiences linear spring-like attractions toward two attractors: Its previous best position. Best position of its neighbors. In mathematical terms, the ith particle is represented as in the D-dimensional space, where , ld, ud are the lower and upper bounds for the dth dimension, respectively. The rate of velocity for particle i is represented as is clamped to a maximum velocity Vmax which is specified by the user. In each time step t, the particles are manipulated according to the following equations:where R1 and R2 are random values between 0 and 1, c1 and c2 are learning rates, which control how far a particle will move in a single iteration, p is the best position found so far of the ith particle, p is the best position of any particles in its neighborhood, and χ is called constriction factor (Mendes et al., 2004), give by:where . Kennedy and Eberhart proposed a binary PSO (Kennedy and Eberhart, 2001) in which a particle moves in a state space restricted to zero and one on each dimension, in terms of the changes in probabilities that a bit will be in one state or the other. The velocity formula (1) remains unchanged except that x, p and p are integers in {0, 1} and v must be constrained to the interval [0.0, 1.0]. This can be accomplished by introducing a sigmoid function S(v), and the new particle position is calculated using the following rule:where rand is a random number selected from a uniform distribution in [0.0, 1.0] and the function S(v) is a sigmoid limiting transformation as follows:

Predation PS2O (PS2O-P)

Inspired by predation phenomenon, in our PS2O-P algorithm, a population consists of one predator swarm (symbiont S1) and one prey swarm (symbiont S2). In the commensal swarm, each particle adjusts its trajectory according to its own experience, the experience of its swarm members, and the experience of its symbiotic partners in the prey swarm. Hence, the evolution equation of the predation swarm is the same as the commensal swarm in PS2O-C algorithm (Eqs. (6) and (7)). While in the prey swarm, the prey particles move away from those positions that are found by predator swarm and explore new sections of the search space, then at each generation t, the prey swarm escapes from the predation swarm’s global best position and evolves according to the following equations:

Mutualism PS2O (PS2O-M)

Inspired by mutualism phenomenon, in our PS2O-M algorithm, a population consists of two cooperative swarms (symbiont S1 and S2). In each swarm, each particle adjusts its trajectory according to its own experience, the experience of its swarm members, and the experience of its symbiotic partners in the other swarm. That is, each particle in a swarm pursues the strongest individual in the other swarm. Hence, the evolution equation of both cooperative swarms are the same as the commensal swarm in PS2O-C algorithm or predator swarm in PS2O-P (Eqs. (6) and (7)).

Competition PS2O (PS2O-T)

Inspired by competitive phenomenon, in our PS2O-T algorithm, a population consists of two competitive swarms (symbiont S1 and S2). In each swarm, each particle adjusts its trajectory according to its own experience, the experience of its swarm members, and the experience of its symbiotic partners in the other swarm. However, contrary to mutualism swarms in PS2O-M algorithm, each particle in one swarm moves away from those positions that are seen as best position found by the other swarm. Hence, the evolution equation of both competitive swarms are the same as the prey swarm in PS2O-P algorithm (Eqs. (8), (9)). We should note that, for solving discrete problems, we still use Eqs. (4), (5) to discrete the position vectors in PS2O algorithms.

Benchmark test

In our experimental studies, a set of 5 benchmark functions was employed to evaluate the PS2O algorithms in comparison with others. The following benchmark functions can be grouped as continuous unimodal function Rosenbrock (f1), continuous multimodal functions Rastrigrin (f2) and Griewank (f3), and discrete functions Golderg’s order-3 (f4) and Bipolar order-6 (f5) (Chen et al., 2009). The fitness landscapes of these five functions are illustrated in Fig. 1, Fig. 2, Fig. 3, Fig. 4, Fig. 5, respectively. The formulas of these functions are presented below:
Fig. 1

Rosenbrock function.

Fig. 2

Rastrigrin function.

Fig. 3

Griewank function.

Fig. 4

Golderg’s order-3 function.

Fig. 5

Bipolar order-6 function.

Rosenbrock function

Rastrigrin’s function

Griewank function

Golderg’s order-3

The fitness f of a bit-string is the sum of the result of separately applying the following function to consecutive groups of three components each: If the string size (i.e. the dimension of the problem) is D, the maximum value is D/3 for the string 111…111. In practice, we will then use as fitness the value D/3-f so that the problem is now to find the minimum 0.

Bipolar order-6

The fitness f is the sum of the result of applying the following function to consecutive groups of six components each: The maximum value is D/6. In practice, we will use as fitness the value D/6-f so that the problem is now to find the minimum 0. Experiments were conducted with four variations of PS2O according to the four symbiotic coevolutionary relationships. To evaluate the performance of the proposed PS2O, the canonical PSO was also used for comparisons. The population size of all algorithms used in our experiments was set at 60. For canonical PSO, the learning rates C1 and C2 were both 2.05 and the constriction factor X = 0.729. For four PS2Os, parameters were set to the values C1 = C2 = C3 = 1.3667, and X = 0.729. The experiment run 25 times respectively for each algorithm on each benchmark function and max generation is set at 3000. The representative results obtained are presented in Table 1, including the best, worst, mean and standard deviation of the function values found in 25 runs. Fig. 6, Fig. 7, Fig. 8, Fig. 9, Fig. 10 present the evolution process, including the best fitness convergence and the diversity shifting graphs, for all algorithms according to the reported results in Table 1.
Table 1

Performance of all algorithms on benchmark functions f1–f5.

Func.PS2O-CPS2O-PPS2O-MPS2O-TPSO
f1Best1.0803e-0092.21273.9646e-0101.91750.0101
Worst3.33293.22952.98663.05514.1661
Mean0.39990.87630.17930.53150.5966
Std1.00160.98460.18381.37831.3883
Rank25134



f2Best00.04280.11200.54720.9950
Worst01.08212.95462.92818.9546
Mean00.99501.98991.14294.3778
Std00.82561.29501.88911.9658
Rank12435



f3Best0000.00110.0295
Worst0000.11370.1697
Mean0000.05320.0773
Std0000.02730.0367
Rank11145



f4Best00002.4000
Worst00003.6000
Mean00002.1833
Std00000.2614
Rank11115



f5Best00001.8000
Worst00002.8000
Mean00003.1800
Std00000.3295
Rank11115
Fig. 6

Simulation result on Rosenbrock.

Fig. 7

Simulation result on Rastrigrin.

Fig. 8

Simulation result on griewank.

Fig. 9

Simulation result on Golderg’s order-3.

Fig. 10

Simulation result on Bipolar order-6.

From Table 1, we can observe that the four PS2O algorithms obtain an obviously remarkable performance. From the fitness convergence figures, we can see clearly that all PS2O variants converged greatly faster and to significantly better results than the canonical PSO for all unimodal, multimodal, and discrete cases. From the diversity shifting results, we can observe that all the symbiotic partners do not suffer from premature convergence and are able to reach states of higher fitness with greatly faster rate. Just like in nature, dissimilar species spontaneously establish symbiotic relationships to improve their survivability and adaptability. While the canonical PSO species lost its population diversity quickly and then suffer adaptation stagnation in successive generations. From these simulation results, it maybe concluded that PS2O can accommodate a considerable potential for solving more complex problems.

Application

The details of proposed PS2O to solve the RNP problem are described as follows.

Solution representation of RNP problem

Definition of continuous individual

Fig. 11 shows an example of a working area containing 100 RFID tags and 1 RFID reader, where the following three continuous decision variables are chosen in this work:
Fig. 11

A 30 m × 30 m working area with one RFID reader and 100 tags. The radiate power level (dBm) marked on the right diagram sidebar and the yellow cycle represents the read range of the RFID reader.

X: the x axis coordinate value of the RFID reader. Y: the y axis coordinate value of the RFID reader. P: the read range (i.e. radiate power level) of the RFID reader. That is, for base-level searching, each individual in PS2O population can be encoded into solution’s representation shown in Table 2. We employ a representation that each solution is characterized by a D = 3 Ntr (Ntr is the total number of available readers that deployed in time step t) dimensional real number vector. In the representation, 2 Ntr dimensions indicate the coordinates of the readers in the 2-dimensional working area, and the other 1 Ntr dimensions denote the interrogation range of each reader (which is determined by the radiate power).
Table 2

Representation of an individual solution Xi for the base-level population.

Reader1 variablesReader2 variablesReaderNr variables
[XiBxi1tB[yi1tB[pi1tB[xi2tByi2tB[pi2tB[xiNrtByiNrtB[piNrtB

(Nr is the max number of RFID readers that deployed in the working area).

Fig. 11 shows an example of a working area containing 100 RFID tags and 1 RFID reader, where the following three continuous decision variables are chosen in this work: X: the x axis coordinate value of the RFID reader. Y: the y axis coordinate value of the RFID reader. P: the read range (i.e. radiate power level) of the RFID reader. That is, for base-level searching, each individual in PS2O population can be encoded into solution’s representation shown in Table 2. We employ a representation that each solution is characterized by a D = 3 Ntr (Ntr is the total number of available readers that deployed in time step t) dimensional real number vector. In the representation, 2 Ntr dimensions indicate the coordinates of the readers in the 2-dimensional working area, and the other 1 Ntr dimensions denote the interrogation range of each reader (which is determined by the radiate power).

Definition of binary individual

For the top-level searching, the possible solution is represented as an individual with binary encoding scheme according to different time steps. The ith individual of the tth time step is defined as follows: Here Nmax denotes the maximum number of RFID readers according to the total investment for the RFID network. Each element ri  [0, 1], i = 1, 2, …, Nmax, in the solution vector is corresponding to the presence or absence of the ith reader. That is, a bit “0” in a solution vector indicated the absence of the corresponding reader, while a bit “1” means the reader’s presence. Here each element X in the dimension is corresponding to the presence or absence of the jth reader that can only be “0” or “1”. A bit “0” in an individual indicated the absence of the corresponding reader. Otherwise a bit “1” in an individual indicated the presence of the corresponding reader. A reader number change example of an individual that represents a potential network planning solution (maximum 6 RFID readers according to the total investment for the RFID network) along the time axis is shown in Fig. 12.
Fig. 12

The individual evolution process in top-level.

For time step 1, a binary-number individual [0 1 0 0 1 0] is a possible planning solution of a RFID network containing 2 readers. The second and fifth bits mean that the no. 2 and 5 readers can be installed and work together in thefirst evolutionary time step; for time step 2, this individual has evolved to be a four readers network; finally, the maximum 6 readers have been installed in order to obtain optimal tag coverage rate.

Model transformation

Then, the base-level objective formulated in Chen et al., 2010a, Chen et al., 2010b is Eq. (16) to the following optimization problem: And the top-level objective formulated in Chen et al., 2010a, Chen et al., 2010b is Eq. (17) to the following optimization problem:where is the user defined positive number, w6 is the punishment coefficient, X is the last best base-level decision, and the notation is defined as follows Eq. (18):

Implementation of the PS2O algorithm for the RNP problem

To apply the PS2O algorithms to solve the RNP problem, the following steps should be taken and repeated. The first step in top-level is to randomly initialize the binary PS2O-based upper-population. Each individual X in the top-level is an instruction and is communicated to the base-level to drive a base-level search process (Step 2–4). For each top-level instruction X, the base-level randomly initialize a corresponding continuous PS2O-based lower-population. At each iteration in base-level, for each individual X, evaluate its fitness using the base-level optimization function, i.e., Eq. (16). Compare the evaluated fitness values for all individuals in lower-population. Then update the each base-level individual by its updating rules according to the PS2O algorithm. The base-level search process is repeated until the maximum number of base-level iteration is met. Then send the last best base-level decision variable X to the top-level for the fitness computation of the top-level individual X. With the base-level reaction X, each top-level individual X is evaluated by the following top-level fitness function, i.e., Eq. (17). Compare the evaluated fitness values for all individuals in top-population. Then update each top-level individual by its updating rules according to the PS2O algorithm. The top-level computation is repeated until the maximum number of top-level iteration is met. The flowchart of this RFID network planning process is illustrated in the diagram given in Fig. 13.
Fig. 13

The RFID network planning process based on PS2O.

Simulation configurations

The readers used here are mobile and the tags are passive. According to the references (Wang and Tseng, 2008, Dobkin, 2004), the related RFID readers’ parameters can be set as in Table 3. Here the interrogation range according to the reader radiated power is computed as in (Dobkin, 2004).
Table 3

The example for Cd100, and Rd500.

Reader specificationTopology specification
Cd100Reader number10Dimension30 m × 30 m
Radiated power0.1–2 WTag number100
Interrogation range3–4 mTag distributionUniform
Interference range3.5–4.5 mTag power threshold−10 dBm



Rd500Reader number50Dimension150 m × 150 m
Radiated power0.1–2 WTag number500
Interrogation range3–4 mTag distributionUniform
Interference range3.5–4.5 mTag power threshold−10 dBm
The proposed algorithm is evaluated against two different RNP instances, namely Cd100, and Rd500. The instance of Cd100 is tested on a 30 m × 30 m working space with 100 clustered distributed tags. Another instance, namely Rd500, contains 500 randomly distributed tags in a 150 m × 150 m working space (shown in Fig. 14). Experiments were conducted on the RNP cases to compare the mutualism version of PS2O with successful EA, and SI algorithms, including original artificial bee colony algorithm (ABC) (Karaboga and Basturk, 2007), canonical PSO with constriction factor (PSO), and genetic algorithm with elitism (EGA) (Sumathi et al., 2008).
Fig. 14

The test working area tags deployment: (a) cluster deploying with 100 tags (Cd100), (b) randomly deploying with 500 tags (Rd500).

All the control parameters for the compared EA and SI algorithms are set to be default of their original literatures: the limit parameter of ABC is set to be SN × D, where D is the dimension of the problem and SN is the number of employed bees; for canonical PSO, the learning rates c1 and c2 are both set as 2.05 and the constriction factor χ = 0.729; for EGA, crossover rate of 0.8, mutation rate of 0.01, and the global elite with a rate of 0.06 are adopted (Sumathi et al., 2008); and all the algorithms’ population size is 50. For PS2O, the number of swarms and swarm size can be set by 10 and 5, and the constriction factor is used with 0.729, and then the learning rates c1 = c2 = c3 = 1.3667.

Simulation results

Fig. 15, Fig. 16 demonstrate the reader locations and radiated power contours with redundant reader elimination strategy on the two cases –Cd100 and Rd500, in which the best results obtained by the PS2O-based schedule and other algorithms are compared in a visible way. A contour in the figures represents the points with the same radiated power (which equals to the value assigned to that contour), which means that the power peaks in the working area are the points where the readers are placed in the figures. Then, the signal strength decreases with respect to the distance to the readers.
Fig. 15

Reader location and received power distribution on Cd100 by involved algorithms with redundant reader elimination.

Fig. 16

Reader location and received power distribution on Rd500 by involved algorithms with redundant reader elimination

From these figures, it is clearly visible that PS2O deploys the minimal number of readers on the optimal positions to ensure almost full coverage. Other algorithms, such as EGA, PSO, and ABC, have redundant readers and cannot obtain full coverage for Cd100 and Rd500, just as shown in Table 4, Table 5, which indicates that the proposed PS2O outperforms these compared algorithms EGA, PSO and ABC.
Table 4

Comparisons of the results of involved algorithms for solving instance Cd100.

AlgorithmMean
Best
Coverage (%)ReaderInterfacePowerCoverage (%)ReaderInterfacePower
PS2O99.890.212141.654310080.032141.6956
EGA96.22100.231140.933298.84100.134240.9875
ABC98.3390.161240.322310090.093240.4534
PSO98.4390.287640.642210090.099840.6764
Table 5

Comparisons of the results of involved algorithms for solving instance Rd500.

AlgorithmMean
Best
Coverage (%)ReaderInterfacePowerCoverage (%)ReaderInterfacePower
PS2O99.80450.287441.7324100400.045241.6645
EGA97.65480.242540.843398.62470.216540.7375
ABC98.65460.173440.4523100420.123240.3452
PSO99.65470.290440.742499.89430.104540.6735
These experimental results show that the PS2O-based schedule with redundant reader elimination is superior to that using a fixed number of readers in the optimization. Because the required number of readers is hard to estimate, and we should note that deploying too many readers in the RFID network is not cost-efficient, and on the other hand too few readers cannot guarantee the coverage. In contrast, the two-level RFID reader network manage model based on distributed decision making allows intelligent algorithm adaptively delete redundant readers during the evolution, and finally obtain a high coverage using a proper number of readers. This can be explained why PS2O-based schedule with redundant reader elimination performs most powerfully in the experiment.

Conclusions

The models of evolution that are being used in evolutionary and swarm intelligence algorithms are becoming increasingly complex. Hence, this work proposed a symbiotic multi-swarm coevolution optimization model named PS2O. The model has been instantiated as four novel multi-species optimizers, which extends the dynamics of the canonical PSO algorithm by adding a significant ingredient that takes into account four different symbiotic coevolution mechanisms respectively. A set of 5 benchmark functions including unimodal, multimodal, and discrete cases have been used to test the proposed PS2O algorithms in comparison with the canonical PSO. The simulation results show that, for all benchmark functions, the PS2O variants reach remarkably better fitness values than PSO. We also simulated the coevolution process of symbiotic species’ diversity in our model. The results capture some important aspects of the dynamics of biological coevolution that some evolutionary biologists believe takes place in nature. PS2O is then employed to solve the real-world RNP problem on two different-scale instances, namely Cd100 and Rd500. The simulation studies show that the PS2O remarkably outperforms other algorithms.
  2 in total

1.  The origin of synergistic symbiosis.

Authors:  S A Frank
Journal:  J Theor Biol       Date:  1995-10-07       Impact factor: 2.691

2.  Models of symbiosis.

Authors:  S A Frank
Journal:  Am Nat       Date:  1997-07       Impact factor: 3.926

  2 in total

北京卡尤迪生物科技股份有限公司 © 2022-2023.