* ga/make_ga: eoBooleanGeneration is now settable
This commit is contained in:
parent
d44a696e21
commit
1809120d34
3 changed files with 8 additions and 8 deletions
|
|
@ -57,8 +57,8 @@
|
|||
*/
|
||||
|
||||
// the genotypes
|
||||
eoInit<eoBit<double> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<double> _eo);
|
||||
eoInit<eoBit<eoMinimizingFitness> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<eoMinimizingFitness> _eo);
|
||||
eoInit<eoBit<double> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<double> _eo, float _bias=0.5);
|
||||
eoInit<eoBit<eoMinimizingFitness> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<eoMinimizingFitness> _eo, float _bias=0.5);
|
||||
|
||||
// the operators
|
||||
eoGenOp<eoBit<double> >& make_op(eoParser& _parser, eoState& _state, eoInit<eoBit<double> >& _init);
|
||||
|
|
|
|||
|
|
@ -45,11 +45,11 @@
|
|||
|
||||
/// The following function merely call the templatized do_* functions above
|
||||
|
||||
eoInit<eoBit<double> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<double> _eo)
|
||||
eoInit<eoBit<double> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<double> _eo, float _bias)
|
||||
{
|
||||
return do_make_genotype(_parser, _state, _eo);
|
||||
return do_make_genotype(_parser, _state, _eo, _bias);
|
||||
}
|
||||
eoInit<eoBit<eoMinimizingFitness> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<eoMinimizingFitness> _eo)
|
||||
eoInit<eoBit<eoMinimizingFitness> > & make_genotype(eoParser& _parser, eoState& _state, eoBit<eoMinimizingFitness> _eo, float _bias)
|
||||
{
|
||||
return do_make_genotype(_parser, _state, _eo);
|
||||
return do_make_genotype(_parser, _state, _eo, _bias);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@
|
|||
* @ingroup Builders
|
||||
*/
|
||||
template <class EOT>
|
||||
eoInit<EOT> & do_make_genotype(eoParser& _parser, eoState& _state, EOT)
|
||||
eoInit<EOT> & do_make_genotype(eoParser& _parser, eoState& _state, EOT, float _bias=0.5)
|
||||
{
|
||||
// for bitstring, only thing needed is the size
|
||||
// but it might have been already read in the definition fo the performance
|
||||
|
|
@ -68,7 +68,7 @@ eoInit<EOT> & do_make_genotype(eoParser& _parser, eoState& _state, EOT)
|
|||
|
||||
// Then we can built a bitstring random initializer
|
||||
// based on boolean_generator class (see utils/rnd_generator.h)
|
||||
eoBooleanGenerator * gen = new eoBooleanGenerator;
|
||||
eoBooleanGenerator * gen = new eoBooleanGenerator(_bias);
|
||||
_state.storeFunctor(gen);
|
||||
eoInitFixedLength<EOT>* init = new eoInitFixedLength<EOT>(theSize, *gen);
|
||||
// store in state
|
||||
|
|
|
|||
Reference in a new issue