跳转到主要内容

用于在Python中创建生物启发式计算智能算法的框架

项目描述

PyPi GitHub Actions Documentation Status PRs Issues

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))

要求

  • 需要Python 3+。

  • Numpy和Pylab是ec.observers中几个函数所必需的。

  • Pylab和Matplotlib是ec.analysis中几个函数所必需的。

  • 如果使用ec.evaluators.parallel_evaluation_pp,则需要Parallel Python (pp)。

许可证

此软件包采用MIT许可证发布。该许可证可在https://open-source.org.cn/licenses/MIT上在线找到。

资源

引用

Garrett, A. (2012). inspyred (版本 1.0.1) [软件]. Inspired Intelligence. 从 https://github.com/aarongarrett/inspyred 获取 [访问 CURRENT DATE].

特性

  • 待办

鸣谢

此包是用 Cookiecutteraudreyr/cookiecutter-pypackage 项目模板创建的。

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于 安装包 的信息。

源代码分发

inspyred-1.0.2.tar.gz (4.4 MB 查看哈希值)

上传 源代码

构建分发

inspyred-1.0.2-py2.py3-none-any.whl (74.4 kB 查看哈希值)

上传 Python 2 Python 3

支持