[Beowulf] help on island model
jellogum at gmail.com
Thu Mar 9 19:41:11 PST 2006
How CS has used the island model to extrapolate the design of a model for
software/hardware dynamics is beyond my knowledge base. Biology has been my
The following is an intuitive guess and may be redundant:
In ecology, an oversimplified island model is a theory that details why
diversity varies between islands. Island size is a direct relationship to
genotype diversity. Island's distance from the main land and/or other
islands is inversely related to the island's diversity. Other factors could
be included such as island's global location, climate's seasonal
temp/wind/current patterns that may also alter specie migration patterns,
human impact, etc. This aforementioned model may include predator prey
relationships, inter/intra specie competition for resources, and other food
web facts and specie relationships.
At best, a software program will only be as good as the data derived from
good field work. Traps that are not properly set will yield poor results, as
well as animal behavior not accounted for or known/observed. Field methods
may enhance or impair how the target animal behaves. Data may be precise but
not accurate. Building a model on limited research might be a waste
of computer resources when a less interesting but statistically accurate
environment might better merit data mining, to dwell on how to mitigate
hardware needs and software design. Where field data produces copious
results that fine tune statistical curves, I would think a population could
be grouped such that individual calculations could be avoided for each
organism when a subroutine wants to find out how many birds with small beaks
fail to eat enough food when the weather impairs their food source.
However, individual computations may create enhanced results, that is if the
average wave height at 60 fathoms forty feet from a shoal on the north side
of an island, during high tide in a fixed hector^2 area is found at 2PM when
the moon is new and water temp is 27C, the frequency of the rouge wave
height can be modeled using RND and an S curve, but it doesn't tell you
where this wave occurred in the measured zone. If the birds that die off are
individually computed, then other field factors may be altered such as how
that bird's death impacts its immediate territory. The bird population may
encompass territory shared by species that are niche or mutually exclusive
to other species or in defined zones depending on many relationship factors.
The death of a bird(s) where it competes for certain resources (including
nesting sites) with a niche community may just help (or hurt) that niche
community's population, approaching a new population limit which would alter
your diversity model and CPU/memory needs. Also, learned behavior in certain
animals might not be accounted for in a program, such as a cat that doesn't
forage past a boundary of a competitive neighbor (although that neighbor has
gone/died) before another competitor takes advantage of the resource.
I would think a good program would divide the model into several programs,
some suggestions: [most to least predictable] i) weather, ii) geography,
iii) botany, iv) animal profiles excluding prokaryotes unless the animal
needs it, v) tags for profile attributes that use similar calculations, vi)
uncommon computations, and vii) monitor for CPU/memory needs between
programs at n cycle. I imagine the weather modal would easily merit
predictable CPU/memory power, as well as the geographic model (physical
attributes as well as effects caused by animals/plants/time such as how much
nitrate is in soil, hard/soft water, pH, water/soil cohesion tension, etc),
and to a less extent the botany model (current plant surveys and
known/recent trends). The aforementioned models will be using data that is
by far easier to obtain than when compared to animals, so I would find
good/meaningful curves to represent these items for the program (so knowing
what kind of animal would alter the number of variables needed for a
profile). The variable CPU/memory power would most likely need to be fluid
when approaching animal relationships. Perhaps generalized curves could be
used for populations or regions at n cycle unless an event merits itemizing
each organism's profile (ie, approaching a limit where a virus bloom may
occur as augmented by an organism's profile, weather, geography).
Some animals are easy to study while others are obscure, so profile
variables would need to address the info known about the genotype. Without a
keystone organism, the continued computing of profiles for other species in
the shared domain would be pointless, so to speak. A library of curves could
be built for certain species, so individual profiles may not be necessary
when field data is solid. How and by what standards field research is
measured would need to be a collective discussion to establish a benchmark
as to when a specie population can be statistically infused in the code vs a
population with individually computed profiles, or what kind of event would
merit itemizing a statistical population into a collection of individual
Perhaps R species might warrant greater use of statistics vs K species with
If RND generation takes more time than to access when compared to seeking an
address holding a preset RND, then I would harvest idle CPU time to stack
RND numbers such that when an event requires use of curves or heavy profile
calculations, the call uses the stack. [I don't know if this is good
application of CS.]
On 3/9/06, Eric Thibodeau <kyron at neuralbs.com> wrote:
> I happen to be working on just this subject ;)
> Island model can be more than one thing, it depends on your
> >From your description, you seem to be implementing a "multiple-deem"
> while retaining the same GA parameters across these islands. David A. Van
> Veldhuizen addresses the parallelisation issues in his document entitled
> "Considerations in Engineering Parallel Multiobjective Evolutionary
> Even though his article is oriented towards MOGAs, most if not all issues
> brought up in his article also apply to GAs. To give you an idea, here are
> four points brought up in his article specifically about island model:
> Four basic island pMOEA variants are seen to exist, each with
> appropriate migration operators.
> 1) All islands execute identical MOEAs/parameters (homo-
> 2) All islands execute different MOEAs/parameters (hetero-
> 3) Each island evaluates different objective function subsets.
> 4) Each island represents a different region of the genotype
> or phenotype domains.
> My masters is actually geared at trying to "answer" or "reply" to
> some of the
> unanswered questions brought up in this same article (providing
> results with a clearly defined/detailed environment specification as well
> some sort of recipe for parallelising a specifically given MOGA).
> I hope this reference helps!
> Le Dimanche 5 Mars 2006 03:30, purnima a écrit:
> > hi,
> > I've to implement island model genetic algorithm using MPI. the
> problem is I've already implemented a parallel Genetic Algorithm using MPI
> where i divide population into subpopulations and distribute it 2 all the
> processors, and each processors performs sequential GA on its
> after some iteration these processors migrates its best chromosome toe ach
> other and again proceed.
> > My problem is that i dnt understand what exactly is island model? what
> island represents?? how shud i implement it..
> > Plz reply soon..
> > thanx
> > ---------------------------------
> > Yahoo! Mail
> > Use Photomail to share photos without annoying attachments.
> Eric Thibodeau
> Neural Bucket Solutions Inc.
> T. (514) 736-1436
> C. (514) 710-0517
> Beowulf mailing list, Beowulf at beowulf.org
> To change your subscription (digest mode or unsubscribe) visit
337 College Hill
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Beowulf