Population-Based Incremental Learning
Population-Based Incremental Learning
Algorithm
In PBIL, genes are represented as real values in the range [0,1], indicating the probability that any particular
allele appears in that gene.
Source code
This is a part of source code implemented in Java. In the paper, learnRate = 0.1, negLearnRate = 0.075,
mutProb = 0.02, and mutShift = 0.05 is used. N = 100 and ITER_COUNT = 1000 is enough for a small
problem.
// Calculate costs
final double[] costs = new double[N];
for (int j = 0; j < N; j++) {
costs[j] = costFunc.cost(toRealVec(genes[j], domains));
}
// Update the probability vector with max and min cost genes
for (int j = 0; j < totalBits; j++) {
if (minGene[j] == maxGene[j]) {
probVec[j] = probVec[j] * (1d - learnRate) +
(minGene[j] ? 1d : 0d) * learnRate;
} else {
final double learnRate2 = learnRate + negLearnRate;
probVec[j] = probVec[j] * (1d - learnRate2) +
(minGene[j] ? 1d : 0d) * learnRate2;
}
}
// Mutation
for (int j = 0; j < totalBits; j++) {
if (rand.nextDouble() < mutProb) {
probVec[j] = probVec[j] * (1d - mutShift) +
(rand.nextBoolean() ? 1d : 0d) * mutShift;
}
}
}
}
See also
Estimation of distribution algorithm (EDA)
Learning Classifier System (LCS)
References
1. Karray, Fakhreddine O.; de Silva, Clarence (2004), Soft computing and intelligent systems
design, Addison Wesley, ISBN 0-321-11617-8
2. Baluja, Shumeet (1994), "Population-Based Incremental Learning: A Method for Integrating
Genetic Search Based Function Optimization and Competitive Learning", Technical Report,
Pittsburgh, PA: Carnegie Mellon University, no. CMU–CS–94–163,
CiteSeerX 10.1.1.61.8554 (https://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.61.85
54)
3. Baluja, Shumeet; Caruana, Rich (1995), Removing the Genetics from the Standard Genetic
Algorithm, Morgan Kaufmann Publishers, pp. 38–46, CiteSeerX 10.1.1.44.5424 (https://cites
eerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.44.5424)
4. Baluja, Shumeet (1995), An Empirical Comparison of Seven Iterative and Evolutionary
Function Optimization Heuristics, CiteSeerX 10.1.1.43.1108 (https://citeseerx.ist.psu.edu/vie
wdoc/summary?doi=10.1.1.43.1108)
Retrieved from "https://en.wikipedia.org/w/index.php?title=Population-based_incremental_learning&oldid=991682302"