mirror of
https://github.com/ethereum/solidity
synced 2023-10-03 13:03:40 +00:00
[yul-phaser] Population: Extract conversion from chromosomes to individuals into a separate function
This commit is contained in:
@@ -63,13 +63,6 @@ bool phaser::isFitter(Individual const& a, Individual const& b)
|
||||
);
|
||||
}
|
||||
|
||||
Population::Population(Program _program, vector<Chromosome> const& _chromosomes):
|
||||
m_program{move(_program)}
|
||||
{
|
||||
for (auto const& chromosome: _chromosomes)
|
||||
m_individuals.push_back({chromosome});
|
||||
}
|
||||
|
||||
Population Population::makeRandom(
|
||||
Program _program,
|
||||
size_t _size,
|
||||
@@ -175,3 +168,14 @@ void Population::randomizeWorstChromosomes(
|
||||
*individual = {Chromosome::makeRandom(binomialChromosomeLength(MaxChromosomeLength))};
|
||||
}
|
||||
}
|
||||
|
||||
vector<Individual> Population::chromosomesToIndividuals(
|
||||
vector<Chromosome> _chromosomes
|
||||
)
|
||||
{
|
||||
vector<Individual> individuals;
|
||||
for (auto& chromosome: _chromosomes)
|
||||
individuals.push_back({move(chromosome)});
|
||||
|
||||
return individuals;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user