diff options
author | Mike Buland <eichlan@xagasoft.com> | 2019-08-08 09:59:41 -0700 |
---|---|---|
committer | Mike Buland <eichlan@xagasoft.com> | 2019-08-08 09:59:41 -0700 |
commit | ca9f059a4295db6269728b0b747036f995c777a9 (patch) | |
tree | 849844f91121dfe0c9a6d974838ffa2220cd67f8 | |
parent | e9cfcc6dfc8427904ab227eea2452ccddd8f295c (diff) | |
download | libgenetic-ca9f059a4295db6269728b0b747036f995c777a9.tar.gz libgenetic-ca9f059a4295db6269728b0b747036f995c777a9.tar.bz2 libgenetic-ca9f059a4295db6269728b0b747036f995c777a9.tar.xz libgenetic-ca9f059a4295db6269728b0b747036f995c777a9.zip |
Added more features to the simulation.
-rw-r--r-- | src/explicitsimulation.cpp | 10 | ||||
-rw-r--r-- | src/explicitsimulation.h | 2 | ||||
-rw-r--r-- | src/population.h | 2 |
3 files changed, 13 insertions, 1 deletions
diff --git a/src/explicitsimulation.cpp b/src/explicitsimulation.cpp index 95b721b..3e4edc3 100644 --- a/src/explicitsimulation.cpp +++ b/src/explicitsimulation.cpp | |||
@@ -140,6 +140,16 @@ Genetic::PhenotypeId Genetic::ExplicitSimulation::selectWeighted() | |||
140 | return uMaxFitness; | 140 | return uMaxFitness; |
141 | } | 141 | } |
142 | 142 | ||
143 | Genetic::PhenotypeId Genetic::ExplicitSimulation::getMaxFitnessId() const | ||
144 | { | ||
145 | return uMaxFitness; | ||
146 | } | ||
147 | |||
148 | Genetic::Phenotype *Genetic::ExplicitSimulation::getMaxFitnessPhenotype() const | ||
149 | { | ||
150 | return xPop.getPhenotype( uMaxFitness ); | ||
151 | } | ||
152 | |||
143 | void Genetic::ExplicitSimulation::updateFitness() | 153 | void Genetic::ExplicitSimulation::updateFitness() |
144 | { | 154 | { |
145 | mFitness.lock(); | 155 | mFitness.lock(); |
diff --git a/src/explicitsimulation.h b/src/explicitsimulation.h index 78cb904..9869053 100644 --- a/src/explicitsimulation.h +++ b/src/explicitsimulation.h | |||
@@ -28,6 +28,8 @@ namespace Genetic | |||
28 | 28 | ||
29 | double getMinFitness() const { return dMinFitness; } | 29 | double getMinFitness() const { return dMinFitness; } |
30 | double getMaxFitness() const { return dMaxFitness; } | 30 | double getMaxFitness() const { return dMaxFitness; } |
31 | Genetic::PhenotypeId getMaxFitnessId() const; | ||
32 | Genetic::Phenotype *getMaxFitnessPhenotype() const; | ||
31 | double getFitness( Genetic::PhenotypeId id ) const | 33 | double getFitness( Genetic::PhenotypeId id ) const |
32 | { return hFitness.get( id ); } | 34 | { return hFitness.get( id ); } |
33 | 35 | ||
diff --git a/src/population.h b/src/population.h index c2d1bec..4c7d435 100644 --- a/src/population.h +++ b/src/population.h | |||
@@ -26,7 +26,7 @@ namespace Genetic | |||
26 | int getSize() const { return hPhenotype.getSize(); } | 26 | int getSize() const { return hPhenotype.getSize(); } |
27 | 27 | ||
28 | PhenotypeId addPhenotype( Phenotype *pNew ); | 28 | PhenotypeId addPhenotype( Phenotype *pNew ); |
29 | Phenotype *getPhenotype( PhenotypeId id ) | 29 | Phenotype *getPhenotype( PhenotypeId id ) const |
30 | { return hPhenotype.get( id ); } | 30 | { return hPhenotype.get( id ); } |
31 | bool hasProperty( PhenotypeId id, const Bu::String &sKey ) const; | 31 | bool hasProperty( PhenotypeId id, const Bu::String &sKey ) const; |
32 | Bu::Variant getProperty( PhenotypeId id, const Bu::String &sKey ) const; | 32 | Bu::Variant getProperty( PhenotypeId id, const Bu::String &sKey ) const; |