第六章 AnyLogic软件功能介绍.pdf
文本预览下载声明
AnyLogic 软件功能介绍
操作系统
支持Windows 7 及XP
支持Mac OS X 10.6 及以上版本
支持基于GTK 的Linux,例如Ubuntu Linux 8.04 及以上版本或SuSE Open Linux 10.2 及以上
版本
建模方法
系统动力学:通常用于长期的战略模型,并假设建模的对象高度聚合。在动力学模型中,
人、产品、事件和其他离散项都是以数量代表,因此它们就失去了所有的个体属性、历史
或动态变化。如果问题适合这种抽象程度,系统动力学会是可以使用的正确方法。
AnyLogic 采用了为系统动力学建模者所熟悉的方式来设计和模拟反馈结构(存量、流程图
和决策规则,包括数组变量又叫下标)。用户可以
依次定义存量和流变量
使用公式中的自动“代码补全”
为了模型有更好的易读性,可以定义“影子”变量
使用表函数(查找表)、线性或样条曲线插值
定义枚举和范围类型的维度
定义子维度和子范围
定义任意维度的数组变量
每个数组变量的不同部分可以使用多种公式
使用特定的系统动力学和标准Java 的数学函数
基于智能体:是本质上分散的、以个体为中心的(和系统层相反)模型设计途径。建模者
在设计基于智能体的模型时,确定主动实体,即智能体 (可以是人、公司、项目、资产、
车辆、城市、动物、船、产品等),定义它们的行为(主要驱动力,反应、记忆、状态
等),并将它们置于某个环境里,建立连接,然后运行仿真。那时,整体的(系统层)行
为就是个体行为交互的结果。AnyLogic 是唯一能够有效的支持智能体建模的工具,用户可
以将基于智能体的建模方法和其他方法相结合。AnyLogic 基于智能体建模提供了一些可重
复使用的设计模式,包括:
模型结构
智能体同步
空间(连续、离散或GIS 地图)、移动性、空间动画
智能体联系(网络,社会网络)和交流
智能体的动态创建和消失
离散事件:世界上我们观察到的绝大多数过程是由连续的变化所构成的。然而,当我们试
图分析这些过程时,分解连续的过程为离散的部分以简化分析是很有意义的。很多情况下
我们需要从连续特性中抽象出一些事件来,只对系统生命中的一些重要“瞬间”和“事件”
加以考虑。离散事件建模技术以定义的非连续的事件近似连续的真实世界的过程。离散事
件主要用于狭义地代表“以过程为中心”的建模,建议将分析的系统表示为一系列作用于
特定类型的实体(交易)的操作,例如顾客、文件、零件、数据包、车辆、电话。实体是
被动的,但是可以具有属性,能影响它们被处理的方式,或随着实体在过程中的流动而改
变。以过程为中心的建模是中等偏下抽象度的建模途径。虽然每个对象作为实体单独进行
建模,但建模者通常忽略了很多“物理层”的细节,如精确的几何形状、加速和减速。以
过程为中心的建模广泛运用于制造、物流和医疗领域。AnyLogic 主要使用企业库实现离散
事件建模。
多种方法:系统动力学方法高度抽象,主要用于战略层。流程导向型(离散事件)建模主
要用于操作和策略层。基于智能体的建模可应用于任何层面:智能体可以是竞争的公司、
消费者、项目、概念、车辆、行人、机器人等。AnyLogic 通过将三种建模方法置于同一平
台,使建模者不再受限于特定的建模方法,可以始终选择最有效的建模方法,或将它们结
合在一起解决问题。
面向对象、层次化建模:AnyLogic 完全支持面向对象建模和层次化建模。
模型开发环境
多模型开发空间:可以同时打开和编辑多个模型,各模型之间可以复制建模元素。
模型开发采用可视化定义:包括控件库、逻辑行为图、状态图、等式、事件、函数、参数
等均可采用拖放方式生成,并提供相应界面详细定义各建模元素。
模型代码编写辅助:例如自动代码补全、弹出相关文档、语法高亮、智能缩进等。
问题解决辅助:指出代码错误所在,提出更正建议。
创建新模型向导:可选择不同建模方法,使用向导生成基本模型。
智能体向导:使用向导创建新智能体类。
基本模型调试:包括运行时检测窗口、跟踪、讯息、分步执行。
专业模型调试:例如断点、有条件断点、观察所有模型变量包括Java 变量、表达式评估、
逐行执行、Java 级别调试。
观测事件队列:模型运行过程中,可以查看未来事件列表。
团队作业和并发版本系统(CVS )集成:当一个大型模型是由一个团队开发的时候,开发
工具能够和版本控制软件很好地融合这一点至关重要
显示全部