微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 基于黑板的多Agent智能决策支持系统的Agent实现

基于黑板的多Agent智能决策支持系统的Agent实现

时间:08-26 来源:互联网 点击:
1 引言
Agent是人工智能和对象实体相结合的产物,是能够独立、自动代替用户执行某一特定任务的程序。Agent所具有的自治、协作、学习、归纳、推理等特性能够支持各阶段的决策制定和问题求解,增强传统决策支持系统的功能。基于Agent的结构提供可柔性、可变性、鲁棒性,适用于解决一些动态的,不确定的和分布式的问题。Agent之间通过相互调度、合作协同完成大规模的复杂问题求解。由于绝大多数工作都是在特定的群体环境中由组成群体的各主体分工协作、共同完成的。大多数工作同时伴随着决策过程,而决策过程的优劣直接影响工作任务的顺利完成,因此,Agent技术使建立一个网络化、智能化、集成化的人机协调的智能决策支持系统成为现实。
在传统的智能决策支持系统的基础上,提出了一种基于黑板的多Agent智能决策支持系统。在该系统中,黑板能为分布式结构系统提供公共工作区,每个Agent可利用黑板充分交换信息、数据和知识,任意时候访问黑板,查询发布内容,然后各自提取所需的工作信息,以便完成各自担当的任务,并且通过黑板协调各个Agent,使多个Agent共同协作来求解给定的问题,同时强调将决策者的智慧和系统相结合。

2 基于黑板的多Agent智能决策支持系统
在基于黑板的多Agent智能决策支持系统中,每种决策任务或功能是由独立的Agent完成,各种Agent通过相应标准从各自角度分析问题,每个Agent能力、意志和信念的不同,使它们具有问题求解领域的知识以及问题求解的技能也不同。不同的Agent从自身角度审视决策问题独立完成子任务,然后通过黑板协同合作实现共同目标。由于Agent的自治性和实体化,可以随时加入或离开一个问题求解系统,使得决策者方便地参与到决策过程中,从而保证系统的灵活性。这里所构建的系统结构为交互层、智能决策层和资源层的3层体系结构,如图1所示。其中智能界面Agent和决策用户组成交互层;黑板、功能Agent和决策Agent组成智能决策层;模型库及模型库管理系统、知识库及知识库管理系统、方法库及方法库管理系统及数据仓库和多库协同器组成资源层。
2.1 智能界面Agent
智能界面Agent是基于Agent的智能决策支持系统体系结构中与决策者联系的部件,能够独立持续运行。系统通过它和决策者通信,或利用学习用户的目标、爱好、习惯、经验、行为等,使用户高效地完成任务。智能界面A―gent代替传统的人机交互界面,强调Agent的自主性和学习性,可以主动探测环境变化,在与用户交互共同作用的决策中,通过不断学习,获得用户某些特征知识,从而在决策过程中根据感知到的用户行为方式提供合适的用户界面,自主地做出与用户意志相符合的策略。智能界面Agent的全局知识中主要包括:问题领域知识、用户模型或用户知识、自身知识、其他Agent能力知识。它采用发现和模拟用户学习知识,获得用户的正向和反向反馈学习知识.用户的指导获得知识,通过与其他Agent的通讯获取知识等。

2.2 功能Agent
功能Agent监督黑板数据平面变化,匹配各决策A―gent的激活条件和黑板各平面信息,将黑板上的信息发给相应的决策Agent。功能Agent利用系统的消息、队列机制发送黑板上的信息,并且负责报告系统运行情况,向用户报告任务完成情况,并提供解释和查询。其内部有一个各决策Agent读黑板的激活条件表,当黑板各层信息变化时,则检查与该层信息变化有关的激活条件表,如果匹配,则进一步分析,决定是直接激活相应的决策Agent读取黑板信息完成相应的任务或者是做其他操作,例如提供报告和解释等。同时还随时提供系统执行情况的查询。它实际上就是一个可以对黑板上信息、变化进行感知的反应型Agent,每当黑板上信息改变时触发它的检查黑板各数据平面动作。
2.3 决策Agent
决策Agent在某个特定领域有解决问题的知识和技能。把每一种决策方法设计为一个决策Agent,多个决策Agent在功能Agent的控制和监督下,通过相互间的协调和合作,能够解决复杂决策问题。这类Agent是可扩展的,随着决策理论的发展和智能化决策方法的进步,可以开发更多的决策Agent。决策Agent没有关于外部环境的模型,没有关于其他Agent的知识,但仍然有与其他Agent交互的能力。

3 Agent的实现技术
3.1 Agent的抽象结构
Agent行为包含:感知、认知、行为3个阶段。首先感知外部环境信息,然后由认知处理部分根据自身状态,通过制定相应的决策方案,根据决策方案从多种决策方法中选择并执行合适的方法,从而表现出主动的智能行为。在认知处理中,还需要进行规划及学习等过程,从而不断学习新的知识,使Agent智能不断提高。行为输出部分通过Agent行为对外界环境施加影响。以下对Agent进行形式的抽象描述:
首先假设环境是任何离散的瞬时状态的有限集合E:E={e,e’…},Agent有一个可执行动作的清单,可改变环境状态Ac={a,a’…}为(有限的)动作集合。
环境从某个状态开始,Agent选择一个动作作用于该状态。动作结果是环境可能到达的某些状态。然而,只有一个状态可以真正实现,当然,Agent事先并不知道哪个状态会实现。在第二个状态的基础上,Agent继续选择一个动作执行,环境到达可能状态集中的一个状态。然后,Agent再选择另一个动作,如此继续下去。
Agent在环境中一次执行r是环境状态e与动作a交替的一个序列。假设:R是所有可能的(和上的)有限序列集合:RAC是以动作结束的序列所组成的R子集;RE是以状态结束的序列所组成的R子集;用r,r’…代表R的成员。
为了表示Agent的动作作用于环境的效果,引入状态转移函数τ:RAC→RE。状态转移函数建立一个执行(假设以Agent的动作作为结束)与可能的环境状态集合之间的映射,这些环境状态是动作执行的结果。
如果τ(r)=φ(假设由一个动作作为结束),则不可能存在对的后继状态。在这种情况下,就说系统结束执行。同时,假设所有执行都最终会结束。形式上,环境Env是一个3元组Env=E,e0,τ>,其中E提供环境状态的集合,e0∈E是初始状态,τ是状态转移函数。把Agent的模型表示成一个函数,将一次执行(假设以环境状态为结束)映射到动作:

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top