论文摘要
随着Internet的迅速发展,网上信息资源越来越丰富,网络已成为用户获取信息的必要途径和重要手段,而搜索引擎又成为用户获取信息资源的入口。但由于网络资源信息具有无组织、异构分布和动态变化、结构复杂等特点及用户检索信息时的“信息过载”和“资源迷向”等问题,传统的搜索引擎已无法满足用户的种种需求,用户期盼着一种具备智能性、个性化服务的搜索引擎出现。本文在分析研究国内外搜索引擎技术、个性化信息服务技术及现有搜索引擎不足的基础上,结合人工智能技术的最新研究成果——Agent技术,提出了基于Agent的个性化信息服务的搜索引擎框架模型。在此模型框架中,采用用户兴趣模型库和个性化知识库,多Agent协作等人工智能技术使得搜索引擎比较好地实现了用户个性化信息服务的特点,并以此框架为设计架构,简单地实现了使用Spider程序抓取网页,并对在抓取网页时使用的递归算法做了分析和限制。在个性化信息服务方面基于用户兴趣模型库和个性化知识库采用了“推”(Push)技术,用户(注册用户和非注册用户)在使用搜索引擎时,推荐Agent将用户的偏好(偏好从用户兴趣模型库和个性化知识库中获取)主动“推”送给用户。主要研究工作和结果为:(1)在分析研究Agent技术和现有搜索引擎的技术、体系结构、工作原理、搜索引擎的发展历程、发展趋势及应用现状等的基础上,针对现有搜索引擎的个性化服务、智能性比较差的特点,基于中科院计算所史忠植教授提出的信息搜索引擎结构,在查阅大量文献的基础上,设计了一个基于Agent的个性化搜索引擎框架模型。该模型由多Agent组成,自顶向下分为三层:人机交互层、信息处理层和信息收集层,并对各层中的各Agent功能进行了阐述。(2)研究分析了搜索引擎技术中的中文分词技术,并对正向最大分词算法做了改进(我称它为“正向动态最大匹配”算法),提出了“动态最大匹配”的思想,以减少匹配时循环的次数。实验结果表明,改进后的分词速度相对于正向最大匹配算法和逆向最大匹配算法的速度有明显的提高。(3)在中文分词的“歧义”处理方面,提出了“歧义包容”思想,即将某两种分词(如“正向最大匹配分词”和“逆向最大匹配分词”)的结果做个综合,然后将这一综合的结果交给搜索引擎。(4)设计了Spider收集网页程序,Spider的核心是一个基于关键词及多个关键词对站点进行深度优先搜索、对网页进行广度优先搜索的一个递归过程。搜索结果以Java中的JTree结构显示。为了防止Spider在搜索过程中陷入死循环及内存/堆栈的溢出,笔者采取了一些措施。