基于黑板的多Agent智能决策支持系统的Agent实现
扫描二维码
随时随地手机看文章
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的模型表示成一个函数,将一次执行(假设以环境状态为结束)映射到动作:
Ag:RE-AC
因此,Agent根据系统到当前为止的历史决定执行具体的动作。
系统是Agent和环境构成的对。任何系统都有与之相关的可能的执行集合:用R(Ag,Env)表示Agent在环境Env中的执行的集合。假设R(Ag,Env)只包含可以结束的执行,即执行r不存在可能的后继状态:τ(r)=φ(这里不考虑无限的执行)。形式上,序列:(e0,a0,el,al,e2,…)。表示Agent Ag在环境Envr=<E,e0,τ>中的一次执行,如果:e0是Env的初始状态;a0=Ag(e0);对于u>0,那么:eu∈τ((e0,a0,…au一1))其中:au=Ag((e0,a0,…eu))
3.2 Agent的行为描述
构造Agent最主要的目的是为了决策,其决策过程是一个感知到动作的过程。把Agent的决策函数分解成感知函数see和动作函数action。Agent具有内部状态,设I是Agent的所有内部状态的集合,Per为(非空)的感知集合,Agent的决策过程基于这种信息,感知函数see实现从外部环境状态到感知的映射:see:E→Per。动作选择函数action定义为从内部状态到动作的映射:action:I→Ac。引入一个附加函数next,实现从内部状态和感知到内部状态的映射:next:IxPer→I。因此,Agent行为可描述为:Agent从某个初始内部状态i0开始,观察环境状态e,产生一个感知see(e),然后通过next函数更新Agent的内部状态,变成next(i0,see(e))。Agent通过action(next(i0,see(e)))选择动作。执行这个动作使Agent进入另一个循环,继续通过see感知外部世界,通过next更新状态,通过action选择动作执行。其过程如图2所示。
3.3 Agent的行为建模
Agent行为中的认知过程包括状态评估、决策制定、规划、学习等。Agent行为建模就是对认知处理所包含的几个认知过程进行建模。其中决策制定是核心过程。决策制定是从多个方法中选择具有最优效用的方法并执行的过程。可以用效用理论来衡量方案的优劣。
根据效用理论,假设有m个可选方案,在当前的状态下,采用的决策方案为Ai,产生的可能状态为Sj,每一状态的效用值是U(Sj),概率是Pj,则该决策的期望效用值为:
比较每个方案的不同期望效用,其中期望效用值最大的方案即为当前的最佳决策A,即:
例如,有3种可选择方法,2种状态的决策问题,状态空间用(ω1,ω2)表示,可选方案为A1,A2,A3,效用函数如表1所示。
从表1可知,当前处于状态ω1时,A3是最好的选择;当前状态处于ω2时,A1是最优选择。当这两种状态分别以一定的概率p1,p2出现时,记p=p1,则p2=1-P。由式(1)和式(2)可得:
在概率不能确定情况下,根据式(3)判断概率的大致范围。如对Al最优的p应满足:5—3p≥4+2P,5—3P≥3+5p。则有p≤1/5。类似的可计算A2,A3最优对应的概率范围分别为1/5≤p≤1/3,p≥1/3。在能够判断决策范围的情况下,就可以据此对各方法进行分析,简化决策。当影响效用值的因素不止一个时,就需要采用适当的方法计算效用值,在各属性满足互斥条件,即各自产生的效用值互相独立时,可以采用加法的形式计算效用值。有时候,方法的选择需要体现灵活性和可变性,这时可以通过引入相关的随机变量建立随机效用模型来计算效用值,从而使决策结果更符合实际情况。
4 结语
采用的基于黑板的多Agent智能决策支持系统模型.每个Agent本身具有自治性,Agent之间通过黑板进行信息共享,利用黑板中的信息决定自身行为,协同完成复杂问题地求解。由于Agent自身具有不确定性,对多Agent系统需要解决Agent之间的有效协调,因此建立统一的协调机制,使Agent之间可以有效地相互协调工作,提高系统整体性能。实际应用中还有待于进一步完善。