前言 本文中作者使用MPI的Python接口mpi4py来将自己的遗传算法框架GAFT进行多进程并行加速。并对加速效果进行了简单测试。 项目链接: GitHub: https://github.com/PytLab/gaft PyPI: https://pypi.python.org/pypi/ga ...
分类:
编程语言 时间:
2017-11-06 11:11:06
阅读次数:
340
基于NEAT算法的马里奥AI实现 所谓NEAT算法即通过增强拓扑的进化神经网络(Evolving Neural Networks through Augmenting Topologies),算法不同于我们之前讨论的传统神经网络,它不仅会训练和修改网络的权值,同时会修改网络的拓扑结构,包括新增节点和 ...
分类:
编程语言 时间:
2017-10-24 20:56:31
阅读次数:
321
进化规则是为了求解预测问题而提出的一种有限状态机模型,其中机器的状态是基于基本均匀随机分布的规律进行变异,可用于求解静态和非静态时间序列的预测问题。应用于人工智能以及其他复杂系统领域的优化问题。 进化计算中常用的两种算法,进化规则和遗传算法。进化规则算法在运行过程中,主要是模拟和借鉴了生物在进化过程 ...
分类:
其他好文 时间:
2017-10-17 15:10:01
阅读次数:
149
package com.louis.tsp; /** * Project Name:GeneticAlgorithm * File Name:Individual.java * Package Name: * Date:2017年9月23日下午5:02:00 * Copyright (c) 2017... ...
分类:
编程语言 时间:
2017-10-05 22:00:00
阅读次数:
276
遗传算法,网上大把资料,但是总是说得云里来雾里去的,本来很简单的一个算法,当初研究的时候也弄了好久才初步入门。最近公司实行KPI,每个月需要发文一篇,好久之前就想写一写算法类的文章,刚刚刚好有这样的机会,写个系列,首先拿遗传算法来开刀。 【故事背景】:上帝造人,要求尽可能的达到完美状态。 【基因编码 ...
分类:
编程语言 时间:
2017-09-30 23:15:25
阅读次数:
465
前言 本文尝试对遗传算法中不同适值函数的标定(Scaling)方法进行下总结,并针对常用的线性标定和动态线性标定进行了Python实现,以装饰器的形式添加到遗传算法框架GAFT中,这样在使用GAFT运行遗传算法迭代的时候可以更加Pythonic的给自定义的适值函数进行标定。最后针对能够防止早熟情况的 ...
分类:
编程语言 时间:
2017-09-25 16:06:51
阅读次数:
326
关于遗传算法 遗传算法的有趣应用很多,诸如寻路问题,8数码问题,囚犯困境,动作控制,找圆心问题(这是一个国外网友的建议:在一个不规则的多边形 中,寻找一个包含在该多边形内的最大圆圈的圆心。),TSP问题(在以后的章节里面将做详细介绍。),生产调度问题,人工生命模拟等。直到最后看到一个非 常有趣的比喻 ...
分类:
编程语言 时间:
2017-09-24 18:16:28
阅读次数:
237
package chapter2; import java.util.Arrays; import java.util.Comparator; import java.util.Random; /** * A population is an abstraction of a collection ... ...
分类:
编程语言 时间:
2017-09-23 13:39:49
阅读次数:
336
package chapter2; /** * An "Individual" represents a single candidate solution. The core piece of * information about an individual is its "chromosome... ...
分类:
编程语言 时间:
2017-09-23 13:38:59
阅读次数:
263
package chapter2; /** * This is our main class used to run the genetic algorithm. * * This case is one of the simplest problems we can solve: the obje... ...
分类:
编程语言 时间:
2017-09-23 13:34:13
阅读次数:
275