在python中创建仿生计算智能算法的框架
inspyred的Python项目详细描述
inspyred是一个免费的开源框架,用于创建受生物启发的 python中的计算智能算法,包括进化算法 计算、群体智能和免疫计算。另外,inspyred 为 不需要太多定制的用户。
示例
下面的示例演示inspyred包的基础知识。在这个 例如,候选解决方案是10位二进制字符串,其十进制值 应最大化:
import random import time import inspyred def generate_binary(random, args): bits = args.get('num_bits', 8) return [random.choice([0, 1]) for i in range(bits)] @inspyred.ec.evaluators.evaluator def evaluate_binary(candidate, args): return int("".join([str(c) for c in candidate]), 2) rand = random.Random() rand.seed(int(time.time())) ga = inspyred.ec.GA(rand) ga.observer = inspyred.ec.observers.stats_observer ga.terminator = inspyred.ec.terminators.evaluation_termination final_pop = ga.evolve(evaluator=evaluate_binary, generator=generate_binary, max_evaluations=1000, num_elites=1, pop_size=100, num_bits=10) final_pop.sort(reverse=True) for ind in final_pop: print(str(ind))
要求
- Requires at least Python 2.6+ or 3+.
- Numpy and Pylab are required for several functions in ^{tt1}$.
- Pylab and Matplotlib are required for several functions in ^{tt2}$.
- Parallel Python (pp) is required if ^{tt3}$ is used.
许可证
这个软件包是根据麻省理工学院的许可证分发的。可以找到此许可证 在线http://www.opensource.org/licenses/MIT。
资源
- Homepage: http://aarongarrett.github.io/inspyred
- Email: aaron.lee.garrett@gmail.com