遗传算法的一种简单实现

simplega的Python项目详细描述


simplega

simplega是遗传算法的一个简单python实现,可通过pypi获得。

安装

python3 -m pip install simplega

用法

导入包

fromsimplegaimportChromosome,Population,GA,GAHelper# orfromsimplegaimport*

创建一个适合Toyr问题的健身功能

defmaximize(chromosome):returnsum([ord(gene)forgeneinchromosome.dna])

创建GA的新实例,指定要使用的适应度函数

ga=GA(maximize)

执行遗传算法的步骤并检索最适合的染色体

ga.run()print(ga.get_fittest())

所有脚本-非常简单:

fromsimplegaimport*defmaximize(chromosome):returnsum([ord(gene)forgeneinchromosome.dna])ga=GA(maximize)ga.run()print(ga.get_fittest())

高级使用

您可以自定义GA实例,替换其任何或所有默认值

ga=GA(fitness_function,genes=[chr(n)forninrange(65,91)],chromosome_size=10,population_size=100,generations=100,crossover_points=1,elitism_rate=0.05,crossover_rate=0.85,mutation_rate=0.01,)

你可以用ga.run(True)

贡献

请提交错误修复、增强、单元测试、用例和带有pull请求的示例。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java在ArrayList中比较数字   java在Kotlin中使异步调用同步   让“Scala编程”junit示例在IntelliJ中工作的java问题   java Servlet侦听器未在ContextListener中设置属性   将Microsoft SQL Server数据库连接到我的Java项目   加载资源时出现java“需要注册工厂”异常   java如何使用POI检查excel中的重复记录?   java如何更改机器生成的代码   java如何确保重写的方法是同步的   用Spring编写Hibernate时的java XML奥秘   java管理mysql数据库中存储的用户权限   java如何运行。来自Javascript的jar方法   java我想在Web应用程序中进行身份验证&对桌面应用程序使用相同的凭据。我该怎么做?