Welcome 微信登录

首页 / 软件开发 / 数据结构与算法

粒子群算法(3)----标准的粒子群算法(局部版本)

粒子群算法(3)----标准的粒子群算法(局部版本)

粒子群算法(3)----标准的粒子群算法(局部版本)2011-09-01 csdn博客 niuyongjie在全局版的标准粒子群算法中,每个粒子的速度的更新是根据两个因素来变化的,这两个因素是:1. 粒子自己历史最优值pi。2. 粒子群体的全局最优值pg。如果改变粒子速度更新公式,让每个粒子的速度的更新根据以下两个因素更新,A. 粒子自己历史最优值pi。B. 粒子邻域内粒子的最优值pnk。其余保持跟全局版的标准粒子群算法一样,这个算法就变为局部版的粒子群算...
粒子群算法(4)----粒子群算法分类

粒子群算法(4)----粒子群算法分类

粒子群算法(4)----粒子群算法分类2011-09-01 csdn博客 niuyongjie粒子群算法主要分为4个大的分支:(1)标准粒子群算法的变形在这个分支中,主要是对标准粒子群算法的惯性因子、收敛因子(约束因子)、“认知”部分的c1,“社会”部分的c2进行变化与调节,希望获得好的效果。惯性因子的原始版本是保持不变的,后来有人提出随着算法迭代的进行,惯性因子需要逐渐减小的思想。算法开始阶段,大的惯性因子...
粒子群算法(5)-----标准粒子群算法的实现

粒子群算法(5)-----标准粒子群算法的实现

粒子群算法(5)-----标准粒子群算法的实现2011-09-01 csdn博客 niuyongjie标准粒子群算法的实现思想基本按照粒子群算法(2)----标准的粒子群算法的讲述实现。主要分为3个函数。第一个函数为粒子群初始化函数InitSwarm(SwarmSize......AdaptFunc)其主要作用是初始化粒子群的粒子,并设定粒子的速度、位置在一定的范围内。本函数所采用的数据结构如下所示:表ParSwarm记录的是粒子的位置、速度与当前的适应度...
粒子群算法(6)-----几个适应度评价函数

粒子群算法(6)-----几个适应度评价函数

粒子群算法(6)-----几个适应度评价函数2011-09-02 csdn博客 niuyongjie下面给出几个适应度评价函数,并给出图形表示头几天机子种了病毒,重新安装了系统,不小心把程序全部格式化了,痛哭! !!没办法,好多程序不见了,现在把这几个典型的函数重新编写了,把他们给 出来,就算粒子群算法的一个结束吧!痛恨病毒!!!!第一个函数:Griewank函数,图形如下所示:适应度函数如下:(为了求最大值,我去了所有函数值的相反数)function y...
粒子群算法(7)------粒子群算法局部版本的实现

粒子群算法(7)------粒子群算法局部版本的实现

粒子群算法(7)------粒子群算法局部版本的实现2011-09-02 csdn博客 niuyongjie最近要写篇与粒子群算法有关的文章,因此不得不实现粒子群算法的局部版本 。粒子群算法局部版本的实现思想已经在粒子群算法(3)----标准的粒子群算法( 局部版本)中已经讲述。主要分为3个函数。第一个函数为粒子群初始化函数 LocalInitSwarm(SwarmSize......AdaptFunc)其主要作用是初始化粒子群的粒子 ,并设定粒子的速度、...
粒子群算法(8)---混合粒子群算法的实现

粒子群算法(8)---混合粒子群算法的实现

粒子群算法(8)---混合粒子群算法的实现2011-09-02 csdn博客 niuyongjie混合粒子群算法将全局粒子群算法与局部粒子群算法结合,其速度更新采用公 式其中G(k+1)是全局版本的速度更新公式,而L(k+1)是局部版本的速度更新 公式,混合粒子群算法采用H(k+1)的公式。位置更新公式因为是局部版本与全局版本相结合,所以,粒子群的初始化函数应该与局部版 本的相同,这里就不列出了,参看粒子群算法(7)中的LocalInitSwarm函数。关...
.NET/CLI元数据中使用的压缩整数

.NET/CLI元数据中使用的压缩整数

.NET/CLI元数据中使用的压缩整数2011-09-30 博客园 Anders Liu简单来说,整数压缩算法就是将一个32位整数(通常占用4个字节)放置到尽可能少的存储空间中(1 、2或4个字节)的方法。整数压缩算法广泛地应用在.NET/CLI PE文件中,如各种元数据签名、 #Blob和#US流等。在这些地方,需要使用整数值来记录条目的数量或是数据块的大小等。如果单纯地采用 32位整数,由于绝大多数数量值或大小值都不大,会造成大量字节都被置为无意义的0...
TopN算法与排行榜

TopN算法与排行榜

TopN算法与排行榜2011-09-30 博客园 zhuweisky在系统中,我们经常会遇到这样的需求:将大量(比如几十万、甚至上百万)的对象进行排序,然后 只需要取出最Top的前N名作为排行榜的数据,这即是一个TopN算法。常见的解决方案有三种:(1)直接使用List的Sort方法进行处理。(2)使用排序二叉树进行排序,然后取出前N名。(3)使用最大堆排序,然后取出前N名。第一种方案的性能是最差的,后两种方案性能会好一些,但是还是不能满足我们的需求。最主...
常见的进制转换方法

常见的进制转换方法

常见的进制转换方法2011-09-30 51cto博客 alligator一:简述:进位计数制:是人们利用符号来计数的方法。一种进位计数制包含一组数码符号和两个基本因素。(1)数码:用不同的数字符号来表示一种数制的数值,这些数字符号称为”数码”。(2)基:数制所使用的数码个数称为”基”。(3)权:某数制每一位所具有的值称为”权”。二:进制转换的理论1、二进制数、十六进制数转换为十进制数...
对“求数组中所有和为某固定数的所有数对”的算法的简单思考

对“求数组中所有和为某固定数的所有数对”的算法的简单思考

对“求数组中所有和为某固定数的所有数对”的算法的简单思考2011-09-30 博客园 野文一、题目描述有一个数组a[1000],里面存放了1000个整数,请找出该数组中所有和为M的数对。例如数组为- 1,2,4,6,5,3,4,2,9,0,8,3,那么和为8的数对有(-1,9),(2,6),(4,4),(5,3),(5,3),(0,8)。二、最普通的算法在不可率复杂度的情况下,对于这个问题的最简单的算法如下:private static List<i...
关于LRU缓存的实现算法讨论

关于LRU缓存的实现算法讨论

关于LRU缓存的实现算法讨论2011-09-30 cnblogs 蛙蛙业务模型读、写、删的比例大致是7:3:1,至少要支持500w条缓存,平均每条缓存6k,要求设计一套性能比较好 的缓存算法。算法分析不考虑MemCached,Velocity等现成的key-value缓存方案,也不考虑脱离.NET gc自己管理内存,不考 虑随机读取数据及顺序读取数据的场景,目前想到的有如下几种LRU缓存方案算法分析SortedDictionary.NET自带的,内部用二叉...
基于深度优先的回溯算法框架

基于深度优先的回溯算法框架

基于深度优先的回溯算法框架2011-09-30 博客园 John Waken很多复杂点儿的问题都要用树或图来建模,树和图最基础的操作是遍历,但是有时候我们并不需要访 问每个结点。比如问你,中国地图上有镇江这个城市吗?那你肯定是找到就立马告诉我,而不会傻拉吧唧 地把每个城市都看一遍,即使找到了镇江也闷头向前。在这里我想为这一类问题提供一个算法的框架,降 低思维复杂度。当然图的深度优先是基础,我在这里大概讲一下,读者有兴趣可以去看《算法导论》。图是由结点和 边...
矩阵算法入门

矩阵算法入门

矩阵算法入门2011-09-30 博客园 蛙蛙王子摘要介绍矩阵的编程表示,矩阵的初等变换,化阶梯矩阵及求方阵的行列式。矩阵介绍矩阵就是一个M×N平面的表格,用一个两维数组就可以表示,为了输入方便,我们用一个特殊格式的字 符串对矩阵进行初始化,用"|"分割每一行,用","分割每一列,并增加一个Show的方法打印出矩阵,为了 测试及调试的需要,还重写了ToString()方法。代码public class M...
浅析路由协议的实现算法

浅析路由协议的实现算法

浅析路由协议的实现算法2011-09-30计算机世界本文主要介绍两种基本的路由算法,即距离向量法(Distance Vector Routing)和链路状态算法 (Link-State Routing)。路由协议和路由算法只针对动态路由。伴随着网络规模的不断扩大,路由器在沟通子网连接和实现信息交换方面的重要作用逐渐被人们所认 知。本文将以Cisco路由器为例简要阐述路由器之间交换路由信息的两种主要算法:距离向量法 (Distance Vector Rout...
全排列递归算法

全排列递归算法

全排列递归算法2011-09-30 博客园 elite_lcf给出一个递归算法;1、将一个n维数组初始化,第0位填1,第1位填2.。。。。。 第n-1位填n;2、将数组看为两部分,一个是已排好的,剩下是待排的,分别用两个指针指向;3、将第一个字符,依次与后n-1个字符交换值,每次交换得到一个新的首数字;4、剩下的n-1个数字按2、3步骤重复直至所有数组完成排列;使用c++实现,代码还有些繁琐,明天再仔细看看优化一下1 #include<iostrea...
神经网络:感知机和线性神经网络的实现

神经网络:感知机和线性神经网络的实现

神经网络:感知机和线性神经网络的实现2011-09-30 博客园 彭佳乐友情提示:本文系参考机械工业出版社《神经网络设计》(戴葵等译)一书而编制的相关程序,对于初学者或者想深入了解神经网络内核的爱好者,这是一本最具有阅读价值的教材。感知机和线性神经网络是最简单和最基本的神经网络类型,但他们也有着广泛的应用。感知机和线性神经网络的学习规则相当的简单,对于感知机有:对于线性神经网络有:可以看出,两者有很多的相似,因此,编程中可以把两者的公共函数放在一个模块中,...
树的汇总

树的汇总

树的汇总2011-09-30 blogjava Jiangshachina继上次浅谈了树的遍历之后,这次再浅谈一下树的汇总。此处的汇总是指将树中某节点的数据按指定 的汇集到它的父节点中。例如,可以将树节点中的数值累加到它的父节点中。仍如树的遍历一文,我将使 用两种简单的算法,递归与和迭代,来实现这一功能。(2009.06.26最后更新)1. 树节点仍然沿用树的遍历一文中的TreeNode/GenericTreeNode,为便于阅读,将GenericTree...
<< 61 62 63 64 65 66 67 68 69 70 >>