Learning and optimization using the clonal selection principle | Synapse