AnyLogic简介
1 简介
AnyLogic公司是在美国和欧洲运营的跨国团队,拥有全球合作伙伴网络。我们设计和开发用于业务应用程序的仿真建模软件。
AnyLogic,是一款应用广泛的,对离散、系统动力学、多智能体和混合系统建模和仿真的工具。它的应用领域包括:物流、供应链、制造生产业、行人交通仿真、行人疏散、城市规划建筑设计、Petri网、城市发展及生态环境、经济学、业务流程、服务系统、应急管理、GIS信息、公共政策、港口机场、疾病扩散等。
AnyLogic是一款独创的仿真软件,它以最新的复杂系统设计方法论为基础,是第一个将UML语言引入模型仿真领域的工具,也是唯一支持混合状态机这种能有效描述离散和连续行为的语言的商业化软件。
2 特色
2.1 为什么模拟
之所以模拟是因为模拟有很多好处,具体如下:
- 01 无风险环境
- 02 节省时间和金钱
- 03 可视化
- 04 对动力学的洞察力
- 05 提高准确性
- 06 处理不确定性
2.2 技术
2.2.1 多方法建模环境
使用所有三种现代仿真方法开发模型
- 离散事件
以过程为中心。 - 基于代理
基于代理的建模专注于系统的各个活动组件。 - 系统动态
更抽象。
建模策略选择
- 如果有许多独立的对象,请使用基于代理的方法。
- 如果仅存在有关全局依赖项的信息,请使用系统动态。
- 如果一个系统很容易描述为一个过程,请使用离散事件方法。
- 如果您的系统具有所有这些方面,则应考虑组合所有三种方法。
基于代理的建模
基于代理的建模专注于系统的各个活动组件。
使用基于代理的建模时,必须标识活动实体(称为代理)并定义其行为。他们可能是与系统相关的人员,家庭,车辆,设备,产品或公司。建立它们之间的连接,设置环境变量并运行模拟。然后,系统的全局动力学从许多个体行为的相互作用中显现出来。
离散事件建模
大多数业务流程可以描述为一系列独立的离散事件。例如,一辆卡车到达仓库,到达卸货口,卸货,然后出发。为了模拟这一点,通常选择离散事件模拟。
使用离散事件模拟建模,可以使用两个事件(即出发和到达)对火车从点A到点B的运动进行建模。火车的实际运动将被建模为出发和到达事件之间的时间延迟。这些事件和它们之间的运动可以平滑地进行动画处理。
离散事件仿真着眼于中等抽象级别的系统中的过程。通常,不显示特定的物理细节,例如汽车的几何形状或火车加速度。离散事件模拟建模已广泛用于制造,物流和医疗保健领域。
在经典的离散事件工具中,实体是被动的,并且只能具有影响其处理方式的属性。
系统动态建模
系统动态是一种高度抽象的建模方法。它忽略了系统的精细细节,例如人员,产品或事件的各个属性,并生成了复杂系统的一般表示。这些抽象的仿真模型可用于长期的战略建模和仿真。例如,计划营销活动的电话网络可以模拟和分析新数据计划构想的成功,而不必对单个客户交互进行建模。
2.3 建模库
流程建模库
流程建模库是分析人员在物流,医疗保健,银行,制造以及其他具有动态性质的业务流程和服务的详细级别操作中建模的强大工具。该库促进了业务工作流仿真,并允许用户了解流程动态和流程组件之间的相互依赖性,并获得对决策的见解。
使用流程建模库时,用户可以根据流程(通常涉及队列,延迟和资源利用的操作顺序),流程流中的实体(事务,客户和产品)以及资源来对现实世界的系统进行建模。实体用来执行动作并影响流程的信息。使用该库,您可以快速轻松地可视化任何业务流程,并使用AnyLogic动画功能验证结果。
AnyLogic流程建模库是一个工具包,用于将业务流程表示为离散事件模拟模型。这些模型将业务工作流显示为一系列单独的离散事件,并被认为是最合适的流程模拟方式。
该库使用户可以借助流程图来捕获过程行为,流程图是被广泛采用的图形单元。它们是分层的,可伸缩的和可扩展的,从而使用户可以在任何细节级别上对大型复杂系统进行建模。流程图使您可以表示流程逻辑,以发现系统组件之间的隐藏依赖关系。
通过AnyLogic流程建模库,您可以将一个复杂的系统分为多个较小的部分,并分别以不同的组件表示,从而对其进行建模。在顶层,您可以将那些较小的组件连接在一起。
流程建模库可用于基于代理的模型和系统动力学模型中。例如,流程模型中的所有实体和资源都可以充当代理,具有单独的行为并影响模拟流程。
在一个流程图中,过程建模库元素与其他库的组件兼容。
模型执行统计信息可以自动记录等待时间,生产时间,资源利用率和其他参数。
用户可以使用动画验证动态模型,从而使他们能够查看过程瓶颈并突出显示结果。可以使动画具有多个2D或3D视图分层。
行人库
在设计公共环境时,重要的是评估其容量和吞吐量,发现行人瓶颈并执行疏散计划。AnyLogic行人库是行人模拟和人群分析工具,它使用户可以准确地建模,可视化和分析人群流动在物理环境中的行为,并消除其可能的低效率。
AnyLogic模型中的行人根据模拟的物理规则移动。它与周围的物体(包括墙壁和自动扶梯)相互作用,并避免可能发生的碰撞。用户可以为行人预先分配单独的属性,首选项和状态。库的工具包包括流量密度图,行人计数器以及用于计算等待时间和服务时间的元素。
在模拟城市景观,公开活动,博物馆,购物中心和交通枢纽中的行人动态时,行人库非常有用。在项目的初步设计阶段,行人模拟模型将有助于评估设施应对计划负荷并符合安全要求的能力。在一个运营机构中,行人库的功能将在评估容量,流动性和可访问性问题时发挥重要作用。在重建期间,人群管理工具将支持测试计划的更改并确定最佳解决方案。
库的应用领域包括:
购物中心和商业建筑的设计和规划-分析高峰时段出入或部分关闭时的人群移动情况,测试客户行为,确定具有商业吸引力的位置,提供零售设施的人行道分析,以及测试紧急疏散和响应计划。
机场航站楼的设计和规划-优化旅客的出行和处理,行李处理,排队行为和服务点操作。
铁路和运输终点站规划-管理高密度人群和基于时间表的活动。
城市环境规划-评估区域的流量密度,基础设施布局和紧急疏散方案。
AnyLogic中的行人根据社会力量模型移动。他们选择最短的路线,通过分析当前环境避免与其他物体发生碰撞,并做出进一步运动的决策。
行人的行为由过程流程图定义,该流程图易于创建和理解。除了用于模拟物理环境中运动的基本块外,该库还包含用于设置墙壁,服务,吸引器和自动扶梯的空间标记元素,仅举几例。
行人可能被预先分配了个人属性,喜好和状态,例如他们是否携带手提行李,具有公民身份或准备购买商品。由于行人模型中实现了基于代理的方法,因此这是可能的。
该模型的输出统计信息使用户能够评估设施的容量和吞吐量,对不同区域的行人进行计数以及衡量等待和服务时间。行人流量密度显示在密度图上。
行人库可以与道路交通和铁路库无缝集成,以创建具有火车,停车场和道路基础设施的交通枢纽模型。
AnyLogic支持导入存储在X3D和VRML文件中的3D对象。行人模型可以使用人和周围物体(例如ATM机,旋转门和金属探测器)的3D资产进行动画处理。
AnyLogic功能使用户可以将CAD图纸文件,shapefile和数据库文件中的数据直接上传到行人模型。
道路交通库

该库提供的工具可轻松对具有优先级,交通信号灯,人行横道,公交车站和停车场的交叉路口进行建模。
该库的预定义算法考虑了驾驶规则,例如速度控制,选择最不繁忙的车道,车道合并规则以及避免和检测碰撞。
道路交通密度图有助于可视化交通拥堵并收集交通流量统计信息。
AnyLogic允许用户将GIS形状文件以及现有道路上的数据转换为AnyLogic道路空间标记形状。这样,路网会自动绘制。
道路交通模型可以2D和3D进行动画处理,以实现更好的可视化效果。
用户可以使用行人库和铁路库元素扩展道路交通模型,以模拟复杂的交通系统,包括铁路枢纽和机场航站楼。

铁路库

该库能够自动计算路线,并在火车沿着路线行驶时设置开关状态。因此,您可以检测到可能的碰撞并进行处理。
该库提供了一个工具包来管理火车的运行,例如火车的分类,耦合和去耦。
通过使用“行人库”和“道路库”元素扩展铁路模型,您可以创建火车站,地铁站和电车网络的准确表示。
AnyLogic包含用于机车,货车和乘用车的即用型3D对象。

流体库

流体库模型是使用离散速率模拟方法构建的。它使用基于事件的逻辑来模拟连续流程和混合系统。该方法允许用户跟踪流程发生的变化,并使模型创建过程完全透明。
该库的组件使用线性编程求解器来计算大批量流体和散装物料的费率。
使用该库,您可以轻松模拟传入流的处理;在一罐中积累,混合和处理流量。该库还允许用户拆分和合并输入流。
该库可以将试剂转换成流体的一部分,反之亦然。当用户需要将“铁路”,“道路交通”和“行人图书馆”的元素合并到“流体库”模型中时,这很有用。

物料搬运库

TransporterFleet块定义了一批AGV和其他运输车。运输机可以移动,而无需引导路径。它会自动避免冲突,检测可能的死锁,并解决它们。您还可以自定义路由逻辑并将传输器与其他元素集成。
“网络端口”对象允许将两个输送机网络或部分连接到一个网络中,而“举升空间”标记对象可以连接在不同级别上运行的网络。
在构建输送机网络时,请使用光电眼管理输送线的工作量并查看位于特定区域的物料。
您可以通过从外部源(例如数据库或电子表格)读取布局来动态设置输送机网络的参数。
您可以使用“自定义桩号”标记元素创建自定义类型的物料项目,桩号或工作区。它的逻辑是使用“过程建模库”和“物料处理库”块设置的。

2.4 云
用于运行仿真模型的安全Web平台。使用基于云的丰富实验功能,在开发和执行模型时进行写作,并即时在线提供仿真结果。所有这些都是可以在组织的运营级别上提供更有效的应用仿真。
2.5 人工智能
2.6 数字孪生
数字双胞胎的两个关键要素是动态仿真模型和反映实时系统当前状态的数据。利用该模型和数据,可以构建功能强大的数字孪生软件进行实验,分析和通信,以便您可以提出假设问题,了解系统行为并在多个级别进行验证。
数字孪生技术可帮助保护和发展业务流程,而制造业和供应链等行业已在从中受益。它提供了易于理解和交流的见解-有助于建立信任并支持决策。
3 技术分析
3.1 如下消息证实用到Java
Anylogic仿真入门教程
这博客介绍Anylogic底层基于JAVA语言编译,学术界用的比较普及。是否基于Java,待考证。
Learn Java for AnyLogic!
Java is the original, and currently the only fully-supported, scripting language. Knowing a little Java can really level up your simulation modeling in AnyLogic.
Anylogic招聘岗位
JAVA DEVELOPER:
Frontend: HTML 5, CSS, TypeScript, Webpack, Electron, Web-based code editor, Modern web framework (Angular, React, etc.), RxJS, Plotly.js, SVG, Three.js, and WebGL.
Backend: Java 8+, Spring, Gradle, Eclipse JDT, Language Server Protocol, GeoTools, MapDB, HSQLDB, and Querydsl.
参考
1、AnyLogic官网
2、AnyLogic百科
3、Anylogic仿真入门教程
4、Learn Java for AnyLogic!
5、Anylogic招聘岗位
评论(0)
您还未登录,请登录后发表或查看评论