论文部分内容阅读
无论在自然界还是人类的社会生活中广泛存在着复杂的关系系统,这些复杂的系统以网络的形式表现出来。由于这样的网络规模非常大,而且各个节点之间的关系十分复杂,所以称这样的网络被称为复杂网络。近些年随着人们对复杂网络研究的不断深入,复杂网络的很多特征被发现,其中最引人注意的是复杂网络的社团结构。随着现代科技的快速发展,人与人之间的关系越来越密切,在人们生活中关系网络也越来越复杂,这不仅体现在网络范围的扩大,也体现在人与人之间的联系也越来越复杂。而这些大规模复杂信息里面包含了大量的有用信息,通过分析这些网络数据可以为我们的日常生活、工作、商业、国防提供重要的参考信息。同样由于人与人之间的关系网络复杂度在急剧增加,以前的很多算法的处理效率和准确度越来越不适用,因此高效的社团划分算法成为了当前的研究热点。本文针对上述问题,在分析了现有算法的优点与缺点基础上,分别改进和提出了一个比较高效的算法。其中,第一个算法吸收了现有算法使用的分层思想,在每个层次迭代处理的过程中,首先在社团之间移动节点,然后把稳定后的社团转化为超点。同时在移动节点过程中引入判断剪枝算法,减少了大量的重复性运算,从而提高了算法时间效率。第二个算法是重叠社团划分算法,通过引入社团核心探测算法来探测社团核心,并利用现有的经典局部社团划分算法不断拓展已经探测到的社团核心,从而获得最初的社团结构,然后采用修整算法对最初的社团结构进行修整,从而得到准确的社团结构。在实现算法后,我们利用这些算法实现了电子邮件网络分析系统。系统使用了Spring来管理类对象,Hibernate框架来操作数据库,并且使用JNI技术来实现Java与C++算法的互连,在可视化处理部分采用了优秀的Prefuse框架来进行图形化展示,大大提高了网络结构的直观性。同时为了方便用户了解统计信息,系统并提供了报表功能,可以将计算结果保存为报表用于查看处理结果的详细信息。