com.rubecula.darwin.domain.world
Class MateChoice_Wrightian
java.lang.Object
com.rubecula.darwin.domain.world.MateChoice_
com.rubecula.darwin.domain.world.MateChoice_Wrightian
- All Implemented Interfaces:
- MateChoice
public final class MateChoice_Wrightian
- extends MateChoice_
Default implementation of MateChoice. In this default implementation, females
are not at all choosy - all males appear the same to all female.
However, the desirability of a male (to any female) is based on his age (the
experience factor).
Named in honor of Sewall
Wright. There is no intended implication that this kind of mate choice
would be particularly favored by F-H-W population genetics.
- Version:
- $Revision: 1.1 $
- Author:
- Robin Hillyard
Methods inherited from class com.rubecula.darwin.domain.world.MateChoice_ |
chooseMate, createPairBond, equals, findPairs, getAttraction, getAttractionEvaluator, getDesirabilityIndex, getLek, getRandom, getSampleFraction, hashCode, pairUp, setRandom, setSampleFraction |
Methods inherited from class java.lang.Object |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait |
MateChoice_Wrightian
public MateChoice_Wrightian(org.apache.commons.math.random.RandomGenerator random)
- Secondary constructor.
Create a new MateChoice_Wrightian implementation with given random number
generator and with uniform attraction.
- Parameters:
random
-
MateChoice_Wrightian
public MateChoice_Wrightian(org.apache.commons.math.random.RandomGenerator random,
Attraction attraction)
- Primary constructor.
Create a new MateChoice_Wrightian implementation with given random number
generator and with given attraction.
- Parameters:
random
- attraction
-
getMinimumDesirability
public double getMinimumDesirability()
- This implementation makes all males desirable and therefore a female will
never choose a mate from an alternative population.
- Returns:
- a value for the desirability threshold for choosing a mate (same
scale as the desirability index, see
MateChoice.getDesirabilityIndex(Organism, Organism)
- See Also:
MateChoice.getMinimumDesirability()
getDesirability
protected double getDesirability(Organism male)
- Overrides:
getDesirability
in class MateChoice_
- Returns:
- the desirability of this male based on viability, and a random
number
r
: d = v * 2^(2r-1)
where v is 10 if viable, 1
otherwise. - See Also:
MateChoice_.getDesirability(com.rubecula.darwin.domain.helper.Organism)
Copyright © 2010 Rubecula Software, LLC. All Rights Reserved.