计算智能
HighKit
这个作者很懒,什么都没留下…
展开
-
搜索——最佳优先搜索
最佳优先搜索时宽度优先搜索的扩展,基本思想是将节点表按据目标的距离进行排序,再以节点的估计距离为标准选择待扩展的节点。 算法步骤: 1. 用N表示已经排序的初始结点表(从小到大) 2. 如果N为空集,则退出并给出失败信号 3. n取为N的首结点,并在N中删除结点n,放入已访问结点列表 4. 如果n为目原创 2012-03-06 20:18:16 · 15097 阅读 · 1 评论 -
群体智能——蚁群算法(ACO)
算法思想:蚁群在觅食的过程中往往会选择一个最短的路径,之所以能选出最优路径是因为蚂蚁在觅食的过程中会分泌信息素用于告诉同伴觅食路径,信息素越浓的地方号召的蚂蚁数越多;在分泌等量信息素的前提下,越短的路径上信息素浓度越高,这样这条路径上的蚂蚁会越来越多,反过来又增加了该路径上的信息素浓度。算法在TSP问题中的应用:数据结构 D,存储各个城市之间距离的矩阵T,存储城市之间原创 2012-05-10 22:46:12 · 3261 阅读 · 0 评论 -
群体智能——粒子群算法(PSO)
粒子群的算法思想就是现在一个空间的随机的撒若干个点,每个点都会保存两种信息:一个保存该结点所到过的最佳位置(个体极值点);另一个保存其它结点(包括该结点)中所到过的最好位置(全局极值点)。运动过程中每个粒子以这两个极值点为依据,不断更新自己的位置使自身不断趋于最优解。可以通过下面这个公式来理解:c1、C2表示更新步长;Pid表示该粒子的个体极值点;Pgd表示全局极值点;rand和Rand表原创 2012-05-28 19:57:38 · 2465 阅读 · 0 评论 -
模拟退火算法
模拟退火算法的设计初衷是为了解决在求解最优解过程的陷入局部最优解的问题,算法如下:算法思想:给出一个初始解i0,在这个解的邻域内搜索Lk次,每次搜索可能取到更好的解,当然也可能取到更差的解,对于更好的解,无条件接受;而对于较差的解,在一定程度内以某个概率接受,这个概论由t值控制。t值是递减的,对于每个t值都搜索Lk次,直到满足终止条件。参数(冷却进度表):t:用来衡量算法对于一个较差解原创 2012-05-07 00:40:50 · 861 阅读 · 0 评论 -
搜索——博弈搜索
算法的思想: 以下象棋为例,MAX和MIN两人对弈,在某时刻MAX开始走步,可以通过构建一个N层的宽度优先搜索书表示MAX预测了N步的所有棋盘状态。在第N层MAX通过评估函数可以对自己目前的形式进行估计,然后递推回当前的状态可以得到一个对自己最有利棋盘状态,如图,在每一层递推双方都会从子节点选择最有利于自己的那一步:算法实现:1、构建一个N层广度优先搜索树2、自底向上求倒退值原创 2012-04-25 23:12:38 · 1406 阅读 · 0 评论 -
搜索——爬山搜索
算法步骤(如下图):1、初始化节点N;2、如果节点N大于其领域内所有节点,算法结束,返回N即为所求值3、否则用N领域中最大的节点替代N,返回2该算法虽然简单但是一个致命的缺点就是容易陷入一个局部最优解而非全局最优解与爬山搜索的一个类似的算法就是梯度搜索算法:1. 选取初值x0∈R2. xn= xn-1+ β(df(xn-1) / dx)3. 当|df(xn) /原创 2012-04-25 22:44:28 · 1124 阅读 · 0 评论 -
搜索——深度优先搜索
数据结构:栈,用来保存由根节点到目标节点的路径 代码描述: void DFS(Node node){ nodes.push_back(node);//入栈 if(node=目标节点) then//找到目标,结束 for (itr=node.sons.begin();itr!=node.son原创 2012-03-06 18:22:54 · 965 阅读 · 0 评论 -
搜索——广度优先搜索
数据结构:队列 算法描述:1、取树的根节点并入队, 2、若队列不为空,则队首元素出队,标记为visied,将其所有子节点入队 3、重复2 4、若队列为空,则访问结束 可原创 2012-03-06 15:13:41 · 711 阅读 · 0 评论 -
人工神经元网络
一:人工神经网络的通用框架包括以下几方面的内容:1、功能函数f(从输入WX到输出y的函数): 1)简单线性模型 2)线性阈值单元 3)sigmoid函数2、连接方式(各个神经元的组织方式) 1)前馈网络 2)反馈网络3、学习规则(网络训练) 1)Hebb(无导师学习):如果Ui从Uj接收输入,且两原创 2012-06-12 11:10:33 · 1515 阅读 · 0 评论