dlugolecki.net.pl
Dziennik
Polecane
Software
projects
/
genetic.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Big optimizations and securing code.
[genetic.git]
/
include
/
algorithm.h
diff --git
a/include/algorithm.h
b/include/algorithm.h
index cb6acf3cf30a9fbf8227748355e215d4608785d8..54f51fbda8574d1b12b78db5ee2bbb427d017270 100644
(file)
--- a/
include/algorithm.h
+++ b/
include/algorithm.h
@@
-79,7
+79,7
@@
namespace genetic {
*/
Algorithm(
generator::Generator<_Chromosome>& _generator,
*/
Algorithm(
generator::Generator<_Chromosome>& _generator,
- _Fitness& _fitness,
+
_Fitness& _fitness,
float crossoverChance,
float mutationChance) :
generator(_generator),
float crossoverChance,
float mutationChance) :
generator(_generator),
@@
-119,8
+119,8
@@
namespace genetic {
* \attention Method is currently not in use.
*/
void showGeneration() {
* \attention Method is currently not in use.
*/
void showGeneration() {
- unsigned int generationSize = this->generation.size();
- unsigned int chromosomeSize = this->generation[0].size();
+
const
unsigned int generationSize = this->generation.size();
+
const
unsigned int chromosomeSize = this->generation[0].size();
for (unsigned int i = 0; i < generationSize; i++) {
cout << "# " << i << ") ";
for (unsigned int i = 0; i < generationSize; i++) {
cout << "# " << i << ") ";
@@
-136,11
+136,12
@@
namespace genetic {
*/
void showAvgFitness() {
float avg = 0;
*/
void showAvgFitness() {
float avg = 0;
- unsigned int generationSize = this->generation.size();
+ const unsigned int generationSize = this->generation.size();
+ std::map<string, string> arguments = fitness.getArguments();
for (unsigned int i = 0; i < generationSize; i++) {
_Fitness fit(this->generation[i]);
for (unsigned int i = 0; i < generationSize; i++) {
_Fitness fit(this->generation[i]);
- fit.parseArguments(
fitness.getArguments()
);
+ fit.parseArguments(
arguments
);
avg += fit.calculate();
}
cout << " " << avg / generationSize;
avg += fit.calculate();
}
cout << " " << avg / generationSize;
@@
-151,18
+152,19
@@
namespace genetic {
*/
void showBestFitness() {
float best = -100000;
*/
void showBestFitness() {
float best = -100000;
- unsigned int generationSize = this->generation.size();
+ const unsigned int generationSize = this->generation.size();
+ std::map<string, string> arguments = fitness.getArguments();
for (unsigned int i = 0; i < generationSize; i++) {
_Fitness fit(this->generation[i]);
for (unsigned int i = 0; i < generationSize; i++) {
_Fitness fit(this->generation[i]);
- fit.parseArguments(
fitness.getArguments()
);
+ fit.parseArguments(
arguments
);
float tmp = fit.calculate();
if (tmp > best) {
best = tmp;
}
}
float tmp = fit.calculate();
if (tmp > best) {
best = tmp;
}
}
- cout << " " << best <<
endl
;
+ cout << " " << best <<
"\n"
;
}
};
}
}
};
}