论文部分内容阅读
Agent技术是近年来飞速发展和广泛应用的一项技术,Agent是具有自主决策能力、相互协作能力和一定的智能性的自治实体,利用Agent可以解决Web服务等技术存在的功能单一,无法主动响应外部事件等缺点,提供服务组合,并对服务进行集中的管理,选择和优化,从而为外界提供更为优秀的服务。本文所研究的Agent建模与调度系统,以BDI Agent的理论模型为基础,利用JADE作为执行引擎的平台,首先提出了一套Agent的建模方法,规划调度和触发策略,以及实现这些行为所需的事件机制。将Agent模型分为信念集(Belief),规划(Plan)和行为(Behavior)三块,其中信念集是Agent的知识库,表示Agent目前对外界的认知;规划是表示Agent通过什么手段去响应服务请求;行为是规划的组成,它代表单个的服务,一系列的行为通过一定的逻辑组成了一个规划。为了让Agent提供的服务更符合用户的需求,进一步将Agent的信念集划分为世界模型和约束模型,世界模型是Agent当前的状态和信息的集合,而约束模型则代表了用户对Agent提出的要求,通过对规划属性的约束,来提高Agent的服务质量。作为Agent的执行核心,规划是具体实施Agent行为的部分,对规划的调度就是建立一个过滤,选择和触发规划的机制,使得Agent的行为最能符合用户的期望。在这个过程中,利用了Drools规则引擎来分离规划库和规则库的,实现实例和策略之间的松耦合机制。在事件到来的时候,首先通过解析事件中的内容进行模板匹配,接着利用规则引擎,以约束模型中的约束条件作为规则的主体,对规划进行过滤,再启动基于优先级的规划选择算法,对候选规划进行处理,再根据选出的规划中事件等待队列的状态确定是执行规划还是加入等待队列。这样把整个规划调度分成这样三步来完成。同时,设计了时间,消息,内部事件和信念集触发,并把触发都统一到了事件上,使得所有的规划都是基于事件驱动。通过这样的机制,让Agent的建模和调度系统更为灵活,可用性更强,也更能符合用户的需求。