13、十种面向代理方法的比较

十种面向代理方法的比较

在软件开发领域,面向代理的软件工程(AOSE)方法不断涌现,每种方法都有其独特的特点和适用场景。为了帮助开发者选择最适合特定应用的方法,对多种AOSE方法进行评估和比较是十分必要的。

1. 评估框架

评估框架的构建整合了多种特征分析框架的评估标准,既包含评估传统系统开发方法的标准,也有针对AOSE方法的特定标准。同时,还添加了一些现有框架未包含的评估标准,如“面向MAS开发的方法”、“对移动代理的支持”和“对本体的支持”等,并通过调查验证了这些标准的相关性和准确性。

评估框架的标准分为四大类:
- 过程相关标准 :评估AOSE方法的开发过程,包括开发生命周期、生命周期覆盖范围、开发视角、应用领域、MAS规模、代理性质、对验证和确认的支持、开发过程中的步骤、模型和符号组件、输入和输出的定义、过程步骤的易理解性、方法的可用性以及可细化性等。
- 技术相关标准 :评估方法提供的技术的可用性和易用性,包括技术和启发式方法的可用性、技术的易理解性、技术的可用性以及是否提供技术示例。
- 模型相关标准 :评估方法的模型和符号组件的各个方面,如模型能够表达的概念、模型的完整性和表达能力、符号组件的形式化和精确性、模型推导、一致性、复杂性、模型的易理解性、模块化、抽象性、自主性、适应性、合作行为、推理能力、通信能力、个性、反应性、时间连续性、审议行为、并发性、人机交互以及模型重用等。
- 支持性功能标准 :评估AOSE方法的各种高级补充功能,包括是否有软件工具和方法支持、是否支持开放系统、是否支持动态结构、是否支持敏捷性和健壮性、是否支持传统对象、是否支持移动代理以及是否支持本体。

标准类别 具体标准
过程相关标准 开发生命周期、生命周期覆盖范围、开发视角、应用领域、MAS规模、代理性质、支持验证和确认、开发步骤、模型和符号组件、输入输出定义、步骤易理解性、方法可用性、可细化性、面向MAS开发方法
技术相关标准 技术和启发式可用性、技术易理解性、技术可用性、提供技术示例
模型相关标准 概念、完整性/表达能力、形式化/精确性、模型推导、一致性、复杂性、模型易理解性、模块化、抽象性、自主性、适应性、合作行为、通信能力、推理能力、反应性、审议行为、个性、时间连续性、并发性、人机交互、模型重用
支持性功能标准 软件和方法支持、开放系统支持、动态结构支持、敏捷性和健壮性支持、传统对象支持、移动代理支持、本体支持
2. 比较分析
2.1 过程相关标准比较

对10种AOSE方法在过程相关标准方面进行比较,结果显示这些方法要么采用正式定义的开发生命周期,要么非正式描述其生命周期范式,且开发过程都涉及高度的迭代。INGENIAS在可细化性方面表现最佳,其所有模型在分析和设计阶段逐步细化和扩展以实现最终的实施。大多数方法采用基于面向对象的方法,而MAS - CommonKADS采用基于知识工程的方法,TROPOS则基于i*建模框架。在“角色”使用方法上,部分方法为角色导向(RO),部分为非角色导向(NRO),RO方法又可分为目标导向(GO)、行为导向(BO)和组织导向(OrO)等不同识别角色的方法。

方法 开发生命周期 生命周期覆盖范围 开发视角 应用领域 MAS规模 代理性质 支持验证和确认 步骤易理解性 方法可用性 可细化性 面向MAS开发方法
INGENIAS 统一软件开发过程 分析、设计和实现 混合 独立(协作信息过滤、个人计算机管理、机器人战斗) 未指定,但可能适用于任何规模 具有目标和状态的代理 a. OO;b. RO
MESSAGE RUP 分析和设计 混合 独立(网络管理、运营支持系统、知识管理系统) 未指定,但可能适用于任何规模 异构 提及作为未来增强 a. OO;b. RO (GO和BO)
RAP RUP 分析和设计 混合 依赖 - 分布式组织信息系统(供应链管理、企业资源规划) 任何规模 反应式代理 a. OO;b. RO
MASE 各阶段迭代 分析和设计 自上而下 独立(分布式规划、数据库集成系统、计算机病毒免疫系统、自动控制) <= 10个代理类 未指定,但可能是异构 a. OO;b. RO (GO)
ADELFE Rational统一过程(RUP) 分析、设计和实现 自上而下 依赖 - 自适应系统(自适应内联网系统、时间表系统) 未指定,但可能适用于任何规模 自适应 a. OO;b. NRO
PASSI 各阶段(除编码和部署外)内部和之间迭代 分析、设计和实现 自下而上 独立(分布式机器人应用、在线书店) 未指定 异构 a. OO;b. RO
PROMETHEUS 各阶段迭代 分析和设计 自下而上 独立(整体制造、在线书店) 任何规模 BDI类代理 a. OO;b. NRO
MAS - COMMONAKADS 循环风险驱动过程 分析和设计 混合 独立(航班预订、自动控制) 未指定,但可能适用于任何规模 异构 提及但未提供明确步骤/指南 a. KE;b. NRO
TROPOS 迭代和增量 分析和设计 自上而下 独立(电子商务系统、知识管理、健康信息系统) 未指定 BDI类代理 a. i*建模框架;b. NRO
GAIA 各阶段内迭代但阶段间顺序 分析和设计 自上而下 独立(业务流程管理、地理信息系统、交通模拟) <= 100个代理类 异构 a. OO;b. RO (OrO)
2.2 步骤和技术相关标准比较

将技术评估与每个步骤和模型的评估相结合,因为技术通常与步骤和模型一起提供。使用一组“标准”步骤作为评估清单,不同方法对这些步骤的支持程度不同,支持方式分为显式(E)和隐式(I)。评估结果总结在表中,展示了每种方法在各个步骤和技术可用性方面的情况。

步骤 GAIA TROPOS MAS - COMMONKADS PROMETHEUS PASSI ADELFE MASE RAP MESSAGE INGENIAS
1. 识别系统目标 H H H H H H H
2. 识别系统任务/行为 M H H H H H H H H H
3. 指定用例场景 H H H H H H H
4. 识别角色 H H H M M M
5. 识别代理类 H H M H M H H L M H
6. 建模领域概念化 M M M
7. 指定代理类之间的相识关系 M M H H H M H M M H
8. 定义交互协议 H H H H H M H H H
9. 定义交换消息的内容 M H L H M H M L M
10. 指定代理架构 L H H H M H
11. 定义代理心理态度(例如,目标、信念、计划、承诺…) M M H M H M H H H
12. 定义代理行为接口(例如,能力、服务、合同…) H L H H M
13. 指定系统架构(即所有组件及其连接的概述) M H H H H H
14. 指定组织结构/控制机制/代理间社会关系 H H L H H
15. 建模MAS环境(例如,资源、设施、特征)
16. 指定代理 - 环境交互机制 H L H
17. 指定代理继承和聚合 H M M
18. 实例化代理类 M L L H L L
19. 指定代理实例部署 L H

注:H表示高,M表示中,L表示低。

通过以上比较可以看出,不同的AOSE方法在各个评估标准上表现各异。开发者在选择方法时,应根据目标应用的具体需求,综合考虑这些评估标准,以选择最适合的方法。例如,如果应用需要高度的可细化性,INGENIAS可能是一个不错的选择;如果强调基于知识工程的方法,MAS - CommonKADS则更为合适。同时,对于一些对代理角色建模有较高要求的应用,可以优先考虑采用角色导向方法的AOSE方法。

十种面向代理方法的比较

2. 比较分析(续)
2.3 模型相关标准比较

模型相关标准的评估结果展示了不同方法在模型能力和特性方面的差异。

  • 概念 :该标准评估方法的模型能够捕获和表示的概念。使用一组“标准”AOSE概念作为评估清单,若方法支持对特定概念的建模,则指出表示该概念的模型或符号组件。从表中可以看出,不同方法在概念建模上各有侧重。
    |概念|INGENIAS|MESSAGE|RAP|MASE|ADELFE|PASSI|PROMETHEUS|MAS - COMMONAKDS|TROPOS|GAIA|
    | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
    |系统目标|Goals & Tasks model|Goal/Task model|Goal - based use case model|Goal hierarchy diagram| |System requirement model|Goal diagram|Goal cases|Actor diagram, Rationale diagram| |
    |系统任务/行为|Goals & Tasks model|Goal/Task model|Goal - based use case model|Extended role diagram|Use case model|System requirement model|Functionality descriptor|Task model|Actor diagram, Rationale diagram|Role model|
    |用例场景|Use case diagrams| |Goal - based use case model|Use case diagram|Use case model|System requirement model|Use case descriptor|Use cases| | |
    |角色|Agent model, Organization model, Interaction model|Agent / Role model|Agent Model|Role diagram| |System requirement model, Agent society model| | | |Role model|
    |领域概念化| |Domain model|Information Model| | |Agent society model| |Expertise model| | |
    |代理目标/任务|Agent model| | | | | | |Agent model| | |
    |代理 - 角色分配| | | | | | | | | | |
    |代理信念/知识|Agent model| |Information model|Task state diagram|Detailed architecture document|Agent implementation model|Data descriptor|Expertise model| | |
    |代理能力/服务| | | | |Detailed architecture document|Agent implementation model|Capability diagram|Agent model; Organization model| |Service model|
    |代理计划/推理规则/问题解决方法| | | | | | |Plan descriptor| |Plan diagram| |
    |代理感知/事件| | | | | | |Percepts descriptor| | | |
    |代理架构| | | |Agent class architecture diagram|Detailed architecture document|Agent implementation model|Agent overview diagram|Design model|BDI agent architecture| |
    |代理相识关系|Interaction model|Organization Model|Interaction Model|Agent class diagram|Software architecture document|System requirement model|Interaction diagrams|Coordination model|Sequence diagram/Collaboration diagram|Acquaintance model|
    |交互协议|Interaction model|Interaction model|Interaction model|Communication class diagram|Interaction languages document|Agent society model|Interaction protocols|Coordination model|Sequence diagram|Interaction model|
    |交换消息的内容|Interaction model|Interaction model|Interaction Model|Communication class diagram|Interaction languages document|Agent implementation model|Interaction diagrams & protocols|Coordination model| | |
    |代理间合同/承诺| | | | | | | | | | |
    |系统架构| |System architecture diagram| | |Detailed architecture document| |System overview diagram|Organization model| | |
    |组织结构/代理间社会关系|Organization model|Organization model| | | | | |Organization model|Non - functional requirement model|Organizational structure model|
    |环境资源/设施|Environment model|Organization model| | |Environment definition document| |System overview diagram|Organization model| |Environmental model|
    |环境特征| | | | |Environment definition document| | | | | |
    |代理聚合关系| | | | | | | | | | |
    |代理继承关系| | | | | | | | | | |
    |代理实例化| | |UML Deployment diagram|Deployment diagram| | | | | |Agent model|
    |代理实例部署| | | |Deployment diagram| |Deployment model| | | | |

  • 其他模型相关标准 :其他模型相关标准的比较结果总结在下表中。不同方法在完整性/表达能力、形式化/精确性、模型推导、一致性、复杂性、易理解性、模块化、抽象性、自主性、适应性、合作行为、通信能力、推理能力、反应性、审议行为、个性、时间连续性、并发性、人机交互和模型重用等方面表现不同。
    |方法|完整性/表达能力|形式化/精确性|模型推导|一致性|复杂性|易理解性|模块化|抽象性|自主性|适应性|合作行为|通信能力|推理能力|反应性|审议行为|个性|时间连续性|并发性|人机交互|模型重用|
    | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
    |GAIA|M|a. H; b. Y|Y|a. Y; b. Y|a. Y; b. Y|H|Y|Y|Y|P|Y|N|N|P|Y|N|N|N|N|Y|
    |TROPOS|H|a. H; b. Y|Y|a. Y; b. Y|a. Y; b. Y|H|Y|Y|Y|N|Y|Y|Y|Y|Y|N|N|N|Y|P|
    |MAS - COMMONKADS|H|a. M; b. Y|Y|a. N; b. Y|a. Y; b. Y|H|Y|Y|Y|N|Y|Y|Y|Y|Y|N|N|N|Y|Y|
    |PROMETHEUS|H|a. H; b. Y|Y|a. Y; b. Y|a. Y; b. Y|H|Y|Y|Y|N|Y|Y|Y|Y|Y|N|N|N|Y|P|
    |PASSI|H|a. H; b. Y|Y|a. Y; b. Y|a. Y; b. Y|H|Y|N|Y|N|Y|Y|Y|Y|Y|N|N|N|Y|Y|
    |ADELFE|H|a. H; b. Y|Y|a. Y; b. Y|a. Y; b. Y|H|Y|Y|Y|Y|Y|Y|Y|Y|Y|N|N|N|Y|P|
    |MASE|H|a. H; b. Y|Y|a. Y; b. Y|a. Y; b. Y|H|Y|Y|Y|N|Y|Y|P|Y|Y|N|N|Y|N|Y|
    |RAP|M|a. H; b. Y|Y|a. N; b. Y|a. Y; b. Y|H|Y|Y|Y|N|Y|Y|P|P|N|N|N|N|Y|P|
    |MESSAGE|M|a. H; b. Y|Y|a. N; b. Y|a. Y; b. Y|H|Y|Y|Y|P|Y|Y|Y|Y|Y|N|N|N|Y|P|
    |INGENIAS|H|a. H; b. Y|Y|a. Y; b. Y|a. N; b. N|M|Y|Y|Y|P|Y|Y|Y|Y|Y|N|Y|N|Y|P|

注:Y表示是,N表示否,P表示可能。

2.4 支持性功能标准比较

支持性功能标准的比较结果总结在下表中,展示了不同方法在软件和方法支持、开放系统支持、动态结构支持、敏捷性和健壮性支持、传统对象支持、移动代理支持和本体支持等高级补充功能方面的差异。
|方法|软件和方法支持|开放系统|动态结构|敏捷性和健壮性|支持传统对象|支持移动代理|支持本体|
| ---- | ---- | ---- | ---- | ---- | ---- | ---- | ---- |
|GAIA|N|Y|N|N|N|N|N|
|TROPOS|N|N|N|N|N|N|N|
|MAS - COMMONKADS|N|N|N|Y|N|N|Y|
|PROMETHEUS|Y|N|N|Y|Y|N|N|
|PASSI|Y|N|Y|N|N|Y|Y|
|ADELFE|Y|Y|N|Y|Y|N|N|
|MASE|Y|N|P|Y|N|N|N|
|RAP|Y|N|N|Y|Y|N|N|
|MESSAGE|Y|N|N|N|Y|N|Y|
|INGENIAS|Y|N|N|N|Y|N|N|

注:Y表示是,N表示否,P表示可能。

3. 总结与建议

综合以上对十种AOSE方法在过程相关、技术相关、模型相关和支持性功能相关标准的比较分析,可以得出以下结论:
- 没有一种方法可以被绝对地称为“最佳”,因为“最佳”方法取决于目标应用的具体需求。不同的应用对评估标准的重要性排序不同,开发者应根据应用的特点,如应用领域、系统规模、代理性质等,来选择最适合的方法。
- 在选择方法时,建议开发者对所需的功能和特性进行优先级排序,然后参考上述比较表格,评估每种方法在这些关键标准上的表现。例如,如果应用需要支持移动代理,那么可以优先考虑PASSI方法;如果对本体支持有较高要求,MAS - COMMONKADS和MESSAGE可能更合适。
- 尽管本次比较已经尽可能全面和客观,但仍存在一定的局限性。评估主要基于方法的文档资料、案例研究和示例,没有在实际项目中对所有方法进行应用。此外,部分评估标准具有主观性,如方法的可用性和易理解性。

未来,可能会朝着开发统一、标准化的AOSE框架的方向发展,通过融合现有的各种AOSE方法并进行扩展来实现。这将有助于开发者更方便地选择和应用适合的方法,提高软件开发的效率和质量。

以下是一个简单的选择方法的流程图:

graph TD;
    A[确定目标应用需求] --> B[列出关键评估标准];
    B --> C[参考比较表格评估方法];
    C --> D[选择最适合的方法];

开发者在实际应用中,还可以进一步深入研究所选方法的细节,结合项目实际情况进行调整和优化,以确保开发出高质量的面向代理的软件系统。

【博士论文复现】【阻抗建模、验证扫频法】光伏并网逆变器扫频与稳定性分析(包含锁相环电流环)(Simulink仿真实现)内容概要:本文档是一份关于“光伏并网逆变器扫频与稳定性分析”的Simulink仿真实现资源,重点复现博士论文中的阻抗建模与扫频法验证过程,涵盖锁相环和电流环等关键控制环节。通过构建详细的逆变器模型,采用小信号扰动方法进行频域扫描,获取系统输出阻抗特性,并结合奈奎斯特稳定判据分析并网系统的稳定性,帮助深入理解光伏发电系统在弱电网条件下的动态行为与失稳机理。; 适合人群:具备电力电子、自动控制理论基础,熟悉Simulink仿真环境,从事新能源发电、微电网或电力系统稳定性研究的研究生、科研人员及工程技术人员。; 使用场景及目标:①掌握光伏并网逆变器的阻抗建模方法;②学习基于扫频法的系统稳定性分析流程;③复现高水平学术论文中的关键技术环节,支撑科研项目或学位论文工作;④为实际工程中并网逆变器的稳定性问题提供仿真分析手段。; 阅读建议:建议读者结合相关理论教材与原始论文,逐步运行并调试提供的Simulink模型,重点关注锁相环与电流控制器参数对系统阻抗特性的影响,通过改变电网强度等条件观察系统稳定性变化,深化对阻抗分析法的理解与应用能力。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值