演化算法及其衍生算法的主要思想

演化算法是一种受生物进化启发的全局优化方法,包括遗传算法、进化策略等。它们以种群为基础,通过选择、交叉、变异等操作改进解。遗传算法在视觉机器学习中有应用,但其收敛性尚未被充分证明,可能导致局部最优。演化算法的衍生包括多目标优化和神经进化。优点是适应性强,缺点是参数调节影响收敛速度且可能陷入局部最优。
摘要由CSDN通过智能技术生成

…/lib/libcaffe.so.1.0.0: undefined reference to leveldb::DB::Open(leveldb::Options const&, std::string const&, leveldb::DB**)' ../lib/libcaffe.so.1.0.0: undefined reference toleveldb::Status::ToString() const’
collect2: error: ld returned 1 exit status
tools/CMakeFiles/compute_image_mean.dir/build.make:142: recipe for target ‘tools/compute_image_mean’ failed
make[2]: *** [tools/compute_image_mean] Error 1
CMakeFiles/Makefile2:495: recipe for target ‘tools/CMakeFiles/compute_image_mean.dir/all’ failed
make[1]: *** [tools/CMakeFiles/compute_image_mean.dir/all] Error 2
make[1]: *** Waiting for unfinished jobs…

Wiki:

In artificial intelligence, an evolutionary algorithm (EA) is a subset of evolutionary computation,[1] a generic population-based metaheuristic optimization algorithm. An EA uses mechanisms inspired by biological evolution, such as reproduction, mutation, recombination, and selection. Candidate solutions to the optimization problem play the role of individuals in a population, and the fitness function determines the quality of the solutions (see also loss function). Evolution of the population then takes place after the repeated application of the above operators.

Evolutionary algorithms often perform well approximating solutions to all types of problems because they ideally do not make any assumption about the underlying fitness landscape. Techniques from evolutionary algorithms applied to the modeling of biological evolution are generally limited to explorations of microevolutionary processes and planning models based upon cellular processes. In most real applications of EAs, computational complexity is a prohibiting factor.[2] In fact, this computational complexity is due to fitness function evaluation. Fitness approximation is one of the solutions to overcome this difficulty. However, seemingly simple EA can solve often complex problems[citation needed]; therefore, there may be no direct link between algorithm complexity and problem complexity.

百度:

进化算法,或称“演化算法” (evolutionary algorithms, EAS) 是一个“算法簇”,尽管它有很多的变化,有不同的遗传基因表达方式,不同的交叉和变异算子,特殊算子的引用,以及不同的再生和选择方法,但它们产生的灵感都来自于大自然的生物进化。与传统的基于微积分的方法和穷举法等优化算法相比,进化计算是一种成熟的具有高鲁棒性和广泛适用性的全局优化方法,具有自组织、自适应、自学习的特性,能够不受问题性质的限制,有效地处理传统优化算法难以解决的复杂问题。

进化算法包括遗传算法、遗传规划、进化规划和进化策略等等。进化算法的基本框架还是简单遗传算法所描述的框架,但在进化的方式上有较大的差异,选择、交叉、变异、种群控制等有很多变化。

同遗传算法一样,进化算法的收敛性也有一些结果,文献证明了在保存最优个体时通用的进化计算是收敛的,但进化算法的很多结果是从遗传算法推过去的。

遗传算法对交叉操作要看重一些,认为变异操作是算法的辅助操作;而进化规划和进化策略认为在一般意义上说交叉并不优于变异,甚至可以不要交叉操作。

进化计算是基于自然选择和自然遗传等生物进化机制的一种搜索算法。与普通的搜索方法一样,进化计算也是一种迭代算法,不同的是进化计算在最优解的搜索过程中,一般是从原问题的一组解出发改进到另一组较好的解,再从这组改进的解出发进一步改进。而且在进化问题中,要求当原问题的优化模型建立后,还必须对原问题的解进行编码。进化计算在搜索过程中利用结构化和随机性的信息,使最满足目标的决策获得最大的生存可能,是一种概率型的算法。

知乎

遗传算法的思想在于,认为优质的基因片段一定会在多次迭代过程中保留下来。(其它算法也许会在目标值表达,交叉变异的,目标值筛选等步骤上和遗传算法的思路不同,可以尝试触类旁通。࿰

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值