![loading..](../images/article_2_cover.jpeg)
![loading..](../images/article_2_cover.jpeg)
智能优化算法(GA、PSO、SA)模块化+Python实现
总概 此篇文章基于当初大二时数学建模实验课程的智能算法研究所作。废话不多说,直接follow。 三大智能优化算法本质探究 不要被智能蒙蔽了双眼,本质其实就是利用一定规则进行局部搜索。 我们之前的传统算法基本是遍历穷举进行可行范围内寻求目标函数的最优解。但在这里有如下几个基本思维步骤(不涉及具体实现)。 1.全局可行解随机选取 2.可行解带入目标函数求值 3.值筛选,选取当前最优值 4.在当前最优值对应解进行有目标随机浮动,实现有目标随机遍历 5.2,3,4步骤进行重复 我觉得这些步骤看起来很简单,了解了这些基本步骤后对智能算法的原理以及实现也就更加清楚了。各种算法的差异主要体现在可行解的收敛算法。 遗传算法(ga) 遗传算法有个特殊的地方,就是自变量编码问题。我们习惯性将对应维度的值转化成二进制..
更多![loading..](../images/article_1_cover.png)
![loading..](../images/article_1_cover.png)
数据结构+算法(一):递归与递推
概念 递归:函数存在本身调用自身的情况,这便是递归。递的意思就是将问题拆解成子问题进行求解,子问题再进一步求解,直到无法进一步细致。归的意思就是最小子问题的求解。递归解题通用解决思路: 1.一个问题可以分解成具有相同解决思路的子问题(本质就是能调用同一个函数dfs) 2.经过层层分解的子问题最后一定是有一个不能再分解的固定值的(即终止条件)。当具备以上条件时,我们即可在一定T复杂度下使用递归实现。 递推:通过一定的公式或者堆砌将我们的结果从底层开始进行递推。 例题 Question_1 递归实现指数型枚举(原题链接) Answer_1 对于该问题,我们每个数字都是选与不选两种情况,不妨将0视为低电平,1为高电平触发使用。 故我们可以利用二进制来表示每次的结果。 我们可以通过位运算..
更多