论文部分内容阅读
现在,随着网络技术的进步和个人计算机运算能力的增强,P2P(Peer to peer)网络受到越来越广泛的应用和更多网民的青睐,因为这种工作方式不需要使用集中式的服务器,这就解决了传统的集中式服务器模式(Client/Servers)可能出现的瓶颈问题。P2P网络中的各个节点既是客户机又是服务器,实现了节点间共享信息资源和运算能力,而节点的动态性和自治性决定了在P2P网络中的资源搜索算法需要很好的鲁棒性和高效性。上世纪90年代,意大利学者根据蚂蚁群体所具有的高度自治性和协调能力提出了蚁群算法ACO。蚂蚁在觅食过程中,通过残留在爬行路径上的信息素进行间接的信息传递,路径上的信息素越多,说明途经的蚂蚁越多,结果使得大多数的蚂蚁在一条能找到食物的最短路径上爬行,这就是蚁群算法的正反馈原理。本文针对现有非结构化P2P网络搜索算法存在的缺陷,根据蚁群算法与P2P网络搜索算法的一些相似特性,提出一种基于蚁群算法的非结构化P2P网络搜索算法P2P-ACO。该算法在路径信息素更新和适应网络动态性等方面对传统ACO进行了改进。同时引入了向量空间模型对关键字匹配搜索进行了规范,提高了查询命中率和查询效率。通过引入时间函数对参数进行实时更新,有效避免了过早收敛和收敛速度慢等问题的产生。最后在理论上分析了P2P-ACO算法的效率,描述了基于蚁群算法的非结构化P2P网络中节点的活动特性并研究了网络的健壮性。