Evolving Objects (EO)-进化计算框架


什么是EO

EO是一个基于模板的ANSI-C++进化计算库,它可以帮助你快速编写你自己的随机优化算法。

进化算法是由进化理论启发而形成的一系列算法,用来解决各种各样的问题。他们针对一个给定的问题发展出一套解决方案,以便产生最好的结果。这些是随机算法,因为它们迭代地使用随机过程。这些方法中的绝大多数用于解决最优化问题,也可称为“元启发式”。它们也被列为计算智能方法,一个接近人工智能的领域。

进化计算框架

EO下载

http://eodev.sourceforge.net/

特征

基于构件的框架

使用EO设计算法包括选择您想要用于特定需求的组件,就像使用乐高积木构建结构一样。

如果您有一个可用代码存在的经典问题(例如,如果您有一个实值变量的黑箱问题),您只需选择组件来形成一个算法,并将其与适应度函数(它计算给定解决方案的质量)连接起来。

如果您的问题比较特殊,那么您必须编写一个类来表示您的个人(问题的解决方案)是如何表示的,也许还需要编写一些变体操作符,但是大多数其他操作符(选择、替换、停止条件、命令行接口等)已经在EO中可用了。

组建
来源:EO官网
  • 灵活的设计,允许轻松创建几乎任何算法
  • 连续和组合问题的解表示
    • 二进制字符串,
    • 排列,
    • 向量,
    • 很容易写自己的,
  • 几种算法范例:
    • 进化策略、
    • 遗传算法
    • 分布估计、
    • 粒子群优化
  • 可移植和人类可读的参数文件
  • 暂停并从文件加载填充
  • 多功能检查点和日志记录:
    • 图形显示,
    • 文件转储,
    • 各种统计,
    • 信号捕获,

……


公众号

关注公众号,获取一手资讯

“ Evolving Objects (EO)-进化计算框架 ” comments 0

评论/回复

电子邮件地址不会被公开。 必填项已用*标注