|
设
备
管
理
网
s
b
g
l
.
j
d
z
j
.
c
o
m
|
|
基于多Agent的电力市场技术支持系统研究 |
|
|
基于多Agent的电力市场技术支持系统研究 |
|
作者:佚名 文章来源:不详 点击数: 更新时间:2009-3-5 9:13:20 |
|
作者:罗朝春1, 涂光瑜1, 罗 毅1, 盛戈白皋2, 吴 军1 单位:1.华中科技大学电气与电子工程学院 2.上海交通大学电子信息与电气工程学院
摘 要:将多Agent技术引入电力市场技术支持系统设计中,提出了基于多Agent的广义电力市场技术支持系统模型和电力市场技术支持系统的设计方案。该方案将电力市场技术支持系统设计为由用户Agent、通信Agent、数据管理Agent、协调Agent和多个应用Agent构成的多Agent系统。对Agent的功能和结构进行了设计,并讨论了多Agent系统开发的关键技术。
关键词: 多代理系统; 电力市场技术支持系统; 电力市场; 电力系统
Study on MASBased Electricity Market Operation System
LUO Chaochun1, TU Guangyu1, LUO Yi1, SHENG Gehao2, WU Jun1
(1.College of Electrical and Electronic Engineering,Huazhong Universityof Science
and Technology, Wuhan 430074, China;
2.School of Electronics and Electric Engineering,Shanghai Jiaotong University,
Shanghai 200052, China)
Abstract:MultiAgent is a new paradigm for developing software applications. By introducing multiAgent technique into the design of electricity market operation system, a generalized model of electricity market operation system and a scheme of electricity market operation system are proposed. The proposed scheme consists ofa user Agent, a communication Agent, a data Agent, a coordination Agent and several application agents.The functions, tasks and structure of Agents used in thescheme are described in detail. The key software developing techniques for Agent implementation, such as Java, KQML and XML, are discussed.
Key words: multiAgent system (MAS); electricity market operation system; electricity market; power systems
1前言 电力市场技术支持系统是服务于电力市场的计算机系统,它是电力市场运营的基础。电力市场是一个开放的、动态的环境,各市场参与者相互独立又紧密联系,市场中既存在合作又存在竞争。这要求技术支持系统必须采用开放式体系结构和分布式系统设计,从而保证系统的开放性和可扩展性,以适应电力市场的发展、规则的变化以及设备的升级换代。同时,技术支持系统也应该具有一定的智能决策能力,从而能够对复杂市场环境下的电能交易提供支持。
目前,大部分电力市场技术支持系统都是采用面向对象方法进行设计开发的。由于对象本质上只能够被动地被调用,而没有主动的行为,所以采用这种方法进行技术支持系统设计时,很难处理系统的智能决策行为。Agent和多Agent系统(multiagent system,MAS)的概念最初来自于分布式人工智能(DAI)的研究,但目前已成为多个学科研究的热点,并得到了广泛的应用,如面向Agent的软件工程等。一般认为,面向Agent的方法是面向对象方法的发展,尽管这种技术目前还不完善,但被普遍认为是构建复杂分布式系统的下一代计算方法[1,2]。
近十年来,电力系统已开展了多Agent技术的应用研究,如基于多Agent的电力系统计算、电力系统运行与控制、继电保护及电力市场仿真等[3-12]。文献[13]运用多Agent技术设计了一种电力市场竞价交易模式,阐述了多Agent模式竞价交易系统的构成及功能,并给出了一种用AgentBuilder作为开发平台的实现参考。但该文将交易中心的计算机系统仅设计成一个管理Agent,在设计上过于简单。本文采用多Agent系统理论和开发方法,提出了基于多Agent的电力市场技术支持系统模型,并给出较为详细的基于多Agent系统的电力市场技术支持系统设计框架。
2多Agent系统及其基本特性 Agent是处在某个环境中的计算机系统,该系统有能力在这个环境中自主行动以实现其目标[2]。一般认为,Agent具有四个基本的特性:自治性(autonomy)、反应性(reactivity)、预动性(proactivity)和社会性(social ability)。自治性是指Agent对自己的行为或动作具有控制权,无须外部干预,可自主地实现其目标;反应性是指Agent能够感知所处的环境,并可以对环境的变化做出及时的反应;预动性是指Agent为了实现其目标,可以主动发起一个动作;社会性是指Agent可以与其它Agent交互,以实现设计目标。广义上,具有以上特征的主动行为能力实体,如生物体、计算机系统、软件、机器人等,均可作为Agent。
与对象相比,Agent除了封装属性、事件和方法以外,更封装了相关的思维能力和决策行为,且自治性更强,所以Agent可以比对象更加真实而有效地应用于客观世界的抽象和建模,因而基于Agent的软件系统设计逐渐成为一种发展方向。
多Agent系统(MAS)是由多个Agent组成的一个松散耦合的联盟,它通过多Agent之间的通信、协调或协作完成特定的任务,是一种典型的分布式系统。多Agent技术最适合应用于分布式、开放的复杂系统和动态系统,目前其应用涉及工业、商业、军事、多媒体等领域。
3广义技术支持系统模型 电力市场的参与者包括发电商、电力零售商、电力用户等,他们通过交易中心进行各种形式的电能交易,电网公司则负责电能的输送以及收取输电费用。
广义的技术支持系统应该包括交易中心及所有市场参与者参与交易的计算机系统,这些计算机系统通过通信网络互联构成一个复杂的分布式交易平台。理想的技术支持系统应该能够自动完成各种电能交易,即:发电商的计算机系统根据发电商的目标自动进行报价售电,电力用户的计算机系统根据用户的目标自动购电,而交易中心的计算机系统自动撮合各种交易或代表本地区参加上级交易中心的交易。各种市场参与者只需要向技术支持系统下达决策目标,所有交易均由技术支持系统自动完成。实际电力市场中,某些交易也确实需要技术支持系统自动完成,如某些实时交易及辅助服务调整等。可以把交易中心及各个市场参与者的计算机系统设计成Agent,整个系统构成一个分层分布式多Agent系统,如图1所示。
图1中的广义技术支持系统模型是一个简化的模型。模型只包括两级交易中心Agent,它们构成分层分布式结构,实际电力市场中也可能存在三级交易中心;模型中只包括三类市场参与者Agent,实际电力市场中可能存在其它类型的参与者,如电力经纪人等;此外,一些发电商Agent也可能直接接入上级交易中心Agent。所以,实际系统设计时,还需要对这个模型进行一些修改。
将广义技术支持系统设计成多Agent系统是非常合适的。不同的市场参与者的计算机系统是各自独立的,具有不同的设计目标,Agent的自治性能够很好地描述这种独立性,而市场参与者通过计算机系统进行交易时的复杂行为又可以通过多Agent系统的交互、协作或协调进行描述和实现。
图1中的Agent是非常粗“粒度”的抽象,每个Agent都代表了一个复杂的计算机系统。实际进行系统设计时,需要将每个Agent分解成多个更小的Agent。
4基于MAS的技术支持系统设计 4.1总体结构设计
技术支持系统必须对电力市场的数据申报、负荷预测、合同分解与管理、交易计划编制、安全校核、计划执行、辅助服务、市场信息发布和市场结算等运作环节提供技术支持。它主要包括以下子系统:能量管理系统、交易管理系统、电能量计量系统、结算系统、合同管理系统、报价处理系统、市场分析与预测系统和交易信息系统,这些子系统分别完成不同的应用功能。采用多Agent技术进行系统设计时,可以将上述子系统设计成多个应用Agent,每个应用Agent完成一个子系统的功能。此外,系统中还设计了用户Agent、通信Agent、协调Agent和数据管理Agent。整个系统的总体结构如图2所示。
系统设计采用Agent作为基本单元。由于Agent的自治性很强,所以整个系统的模块化程度很高,也保证了系统的开放性、分布式特性和可扩展性。如果系统需要对某个功能进行修改,只需修改相应的Agent设计;如果系统需要新增功能,也只需增加完成该功能的应用Agent,再修改协调Agent的协调机制。
4.2Agent的功能和任务设计
系统包括八个应用Agent:能量管理系统Agent、交易管理Agent、电能量计量Agent、结算Agent、合同管理Agent、报价处理Agent、市场分析与预测Agent及交易信息Agent。能量管理系统Agent是一种粗粒度设计的Agent,如果利用现有的EMS,则需要将EMS封装成一个Agent;如果重新开发,则需要对这个Agent进行进一步设计。应用Agent的功能如表1所示。
协调Agent的功能是组织相应的Agent完成系统各项任务,协调相应Agent的运行。由于协调Agent知道系统中各个Agent的功能、状态和位置,所以能够将各种任务分解成子任务并分配给相应Agent执行。整个系统的任务分为两类:计划性任务和非计划性任务。计划性任务是指预先安排的任务,如日常负荷预测、制定交易计划和日常结算等。对于这类任务,协调Agent内部有一个执行时间表和任务分解顺序表,协调Agent按照这两个表组织相应的Agent协作完成任务。非计划性任务指突发性任务,这些任务没有固定的开始时间和任务分解顺序表。对于非计划性任务,协调Agent必须根据系统设定目标和具体情况进行智能化决策,并将任务自动分解,组织相应Agent执行。所以,协调Agent必须具有较强的智能决策能力。
数据管理Agent的功能是数据的集中管理和智能化检索。应用Agent需要数据时,只需要提出对数据的要求,而不需要知道数据具体存放地点和存放形式,数据管理Agent就检索并提供满足要求的数据,即实现应用Agent的“透明”访问数据。这样设计的目的是实现应用和数据的分离,保证系统的开放性。
用户Agent的任务是智能化的人机交互管理,保证用户界面的友好性和统一性。通信Agent的任务包括对外通信连接、Agent地址管理、网络安全和通信协议转换等。通信Agent能够根据信息的内容进行不同的处理,对于报价、计量等信息,通信Agent直接连接相应的应用Agent处理;而对于需要进行决策分析的复杂信息,通信Agent则连接协调Agent处理。
4.3Agent结构设计
技术支持系统中,不同Agent的目标功能不同,它们的“智能”程度差别也很大。一些Agent需要进行比较复杂的计算和推理,但实时性要求不高;另外一些Agent对处理速度要求较高,却不需要进行复杂的计算和推理;还有一些Agent既要进行复杂的计算和推理,又对实时性有要求。所以,不同Agent必须采用不同的结构进行设计。
对于需要进行复杂推理计算的Agent,如交易管理Agent、市场预测与分析Agent和合同管理Agent等,可以采用图3所示的Agent结构设计。
图3中的感知模块和执行模块负责与系统环境进行交互,描述数据库描述Agent的自身状态、功能、任务和环境;信息处理模块负责对感知到的信息进行初步加工、处理和存储;决策和控制模块运用知识库中的知识对信息处理模块所得到的外部环境信息做进一步的分析、推理,并做出控制决策。以交易处理Agent为例,感知模块负责数据收集,如负荷预测结果、报价数据等;信息处理模块完成数据的初步加工;知识库中具有多种交易优化算法,如遗传算法、拉格朗日算法等。描述数据库中保存Agent的目标表和交易计划约束条件表等信息;决策控制模块是Agent的核心,它根据当前的数据、系统的目标选择合适的算法制定交易计划;执行模块负责交易计划的输出。
对于算法比较简单、实时性要求较高的Agent,如通信Agent、用户Agent和报价处理Agent等,可以采用图4所示的Agent结构设计。
图4中的Agent通过处理模块将感知和动作执行直接连接起来,可以快速对外部环境的变化做出反应。处理模块的算法一般比较简单,最简单的处理模块可以是一个函数,复杂的处理模块也可能是神经网络。以报价处理Agent为例,感知模块负责接收数据,并根据数据内容选择处理模块;处理模块进行某种模式的数据处理;执行模块负责将处理完的数据输出。
对于需要进行复杂推理计算且有实时性要求的Agent,如协调Agent和数据管理Agent等,可以采用图5所示的Agent结构设计。
图5中的Agent内部包含一个智能处理子系统和一个反应子系统。如果Agent感知到的是处理时间充裕的或复杂的情况,信息送到智能处理子系统处理;如果Agent感知到的信息需要迅速处理,信息则送到反应子系统处理。以协调Agent为例,对于感知到的计划任务信息,交给反应子系统处理,反应子系统中有确定的信息处理程序;如果感知到的是非计划任务信息,则交给智能处理子系统,通过复杂的分析、推理后再做出决策。
5多Agent系统开发的关键技术 5.1面向Agent的分析和设计
分析和设计的目的首先是理解特定的系统,然后进行系统的设计。各国学者[2]在Agent的研究过程中提出了多种系统分析和设计方法,如Kinny等提出的AAII方法,Wooldridge提出的Gaia方法,Odell提出的Agent UML方法等。在这些方法中,Gaia方法应用较为广泛。
Gaia方法将目的系统看作一个组织,采用人类社会的组织理论分析系统构成及各种关系。组织是角色的集合,角色通过责任、许可、活动和协议四个属性定义,分析角色及其相互关系可以完成对组织及其结构的理解。角色用Agent来实现,角色之间的关系通过Agent之间的通信、协调和协作表达。最终将目的系统构成一个多Agent系统。
5.2Agent的结构设计
Agent的结构设计要解决的主要问题是Agent由哪些模块组成,它们之间如何交互信息,以及如何将这些模块用软件或硬件的方式组合起来形成一个有机的整体,真正实现Agent。Agent的基本结构一般分为慎思型Agent、反应型Agent和混合型Agent三种[2]。实际系统开发时,可以根据Agent的具体功能要求在一种基本结构的基础上进行设计。
5.3多Agent系统的开发语言
目前,国际上还没有统一的多Agent系统开发语言标准,很多多Agent系统采用Java、Agent通信语言KMQL进行开发,所以它们逐渐成为事实标准。
由于Java具有基于网络和平台的无关、内置的多线程、面向对象性、通信能力和安全性等几个方面的特性,使得它特别适合于Agent的开发,所以,Java是目前开发多Agent系统较为理想的编程语言。
知识查询与操纵语言KQML是目前最通用的Agent通信语言,KQML定义了一种Agent之间传递信息的标准语法以及一些“动作表达式(Performative)”。这些动作主要是从言语行为理论中演化出来的,如Tell、Perform、Replay等。目前,KQML还存在一些不足之处,如不同的KQML系统不能互相操作,没有一个固定的规范标准去实现通信机制等。
随着多Agent技术的研究和应用,一些公司和研究机构专门研究了多Agent系统开发平台,如Reticular系统公司的AgentBuilder、国际知识系统公司的AgentX等。这些平台均采用Java实现,具有计算机平台无关性等特点。但总的来说,这些平台仍不够完善。
多Agent系统的开发与软件工程、计算机网络等技术密切相关,要充分利用现有的成熟的计算机技术,如Java、XML、CORBA等,这样可以加快开发进度。
6结语 Agent是目前一个引起广泛关注并且生机勃勃的研究领域。以Agent为基本单元的多Agent系统具有很多优点:Agent具有较强的自治性,因此多Agent系统的模块化程度较高,模块间的耦合程度小,系统的开放性和可扩展能力较好;Agent具有反应性和预动性,可以将多Agent系统设计成智能系统;Agent具有社会性,通过多Agent协调可以完成复杂的任务;多Agent系统本质上是一个分布式的并行系统,特别适合于网络环境下的复杂分布式系统开发。
电力市场技术支持系统是一个开放的、分布式的、智能化的复杂大系统,多Agent技术在这个系统的研究开发中具有光明的应用前景。但目前的研究还不深入,如何获得优化的智能决策算法以及Agent的实现方式和协调方案均有待进一步研究。
参考文献 [1]Wooldridge M.Agentbased software engineering[J].IEE Proceedings on Software Engineering,1997,144(1):26-37
[2]Michael Wooldridge.An introduction to multiAgent systems[M].NewYork:John Wiley & Sons,Inc,2002
[3]Talukdar S,Ramesh V C.A multiagent technique for contingency constrained optimal power flow[J].IEEE Trans on Power Systems,1994,9(2):855-860
[4]Gilberto P,Azevedo,Bruno Feijo,et al.Control centers evolve with agent technology[J].IEEE Computer Applications in Power,2000,13(3):48-53
[5]Buse D P,Sun P,Wu Q H,et al.Agentbased substation automation [J].IEEE Power and Energy Magazine,2003,1(2):50-55
[6]Hossack J A,Menal J,McArthur S D J,et al.A multiagent architec ture for protection engineering diagnostic assistance[J].IEEE Trans on Power S ystems,2003,18(2):639-647
[7]楚 丰,游大海(Chu Feng,You Dahai).使用Agent技术的能量管理系统的研 究(Approach of agent technology to EMS)[J].电力系统及其自动化学报(Proceedings of the CSUEPSA),2001,13(5):10-14
[8]盛戈白皋,涂光瑜 ,罗 毅,等(Sheng Gehao,Tu Guangyu,Luo Yi,et al).基于多Agent的二级电压控制系 统(Study on MASbased secondary voltage control system)[J].电力系统自动化(Aut omation of Electric Power System),2002,26(5):20-25
[9]陈艳霞,尹项根,张 哲,等(Chen Yanxia, Yin Xianggen, Zhang Zhe,e tal).基于多Agent技术的继电保护系统(Multiagent system based protective relay ing system)[J].电力系统自动化(Automation of Electric Power System),2002,25( 12):48-53 [10]Krishna V,Ramesh V C.[1] [2] 下一页
|
|
资讯录入:admin 责任编辑:admin |
|
|
上一篇资讯: 变电站继电保护系统中信息管理技术
下一篇资讯: 电力企业局域网的安全管理 |
|
|
【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |
|
网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
|
|
|
|