服务热线:010-62964229
格瑞纳根植于教育行业,让仿真软件从理论教学到应用实践
新闻资讯
当前位置:首页 > 新闻资讯 > 行业新闻
经验分享 | 仿真模型生命周期(第 2部分)—— 处理数据
2023-02-24 14:16:12 发布人:admin 阅读 2622

本文分享了由Jaco-Ben Vosloo编写的一系列,以AnyLogic仿真软件为工具基础,对仿真建模项目的整个生命周期进行的简要说明,希望能为正在学习或使用AnyLogic的用户提供帮助。

作者:Jaco-Ben Vosloo

更新:Dec 16, 2021

阅读时间:5 min

本系列文旨在从头到尾,对仿真项目的生命周期进行说明,并给出一些最佳实践和实用建议。

这篇文章是关于仿真模型生命周期的 7 部分系列文章的第 2 部分。 你可以查看以前的文章。


仿真模型的生命周期

1.定义问题
2.处理数据
3.构建模型
4.校核和验证
5.实验
6.分析结果
7.调查结果报告

注意:在后面的步骤中确实会“返回”前面的步骤中执行一些活动,但不需要重做整个步骤。 上面列出的步骤是典型项目遵循的一般步骤。 在所有步骤中,您都可以后退并重新访问之前的步骤,但在完成至少 80%-90% 的步骤之前,您不太可能跳过一个步骤或向前移动。

  1. 处理数据

这个阶段有两个部分,第一个是实际获取数据,有时它本身就是一个完整的项目;-) 第二个是使用数据来驱动你的模型。

2.1) 获取数据


理想情况下,使用数据对象作为源和模型之间的中介。这也是使您的模型更安全、更容易和更可靠的关键要求!最佳做法是不要从一些外部文件、内部或外部数据库或文件中获取所有用户输入或配置设置,而是要有一个数据对象。并可以从这些源设置此数据对象。

模型只关心数据对象是否具有所需的数据。而你是如何设置的,从哪里开始,这些模型无需关心。这就意味着模型完全独立于数据来源,从而实现更好的控制和灵活性。

P.S. 这里的附加好处是,这样操作还允许您以编程方式创建数据对象,反过来也意味着您可以轻松地以创建的简单数据对象测试单元模型......与这相关的更对内容会在第 3 部分中介绍......

现在举一些例子......

示例:数据验证

此处继续上一篇文章中介绍的示例。

假设我们从超市业主那里获得了以下数据。 看看您是否可以发现所有需要验证、删除或纠正的数据验证问题。


对于以上数据,可以执行下面的一些检查

数据验证

  1. 检查客户 ID 格式
  2. 检查 B 列中的格式是否为所有日期
  3. 检查到达时间是否有意义
  4. 检查的 serve_time 包含合理的正值

示例:数据驱动模型

在 AnyLogic 中有多种数据驱动模型的方法。 一种选择是直接从源文件中读取,如下例所示:


或者,您可以将 Excel 文件导入AnyLogic 内部数据库,然后直接在使用行业库块时使用它。 请参阅以下步骤:

Step1:将Excel文件导入AnyLogic内部数据库


Step2:在行业库块中使用数据库


最后,是获取数据。而获取数据的方式很大程度上取决于模型环境。

使用 AnyLogic 的最大好处之一就是您可以使用所有标准且现成的 Java 库以多种不同方式获取数据。 比如,可以使用 Java 从 Web API、JSON 文件、XML 等标准源导入。

更多相关的内容,会在未来的文章中发布......

专业提示:使用数据对象

如前所述,最佳实践策略是通过一个单独的数据对象来驱动您的模型。 这允许:

这是使用数据对象将源数据与模型分离时的典型工作流程。


示例:使用数据对象

我创建了一个简单的模型来展示如何通过数据驱动模型。

Step 1:将数据从 Excel 导入 AnyLogic DB

Step 2:创建场景对象

Step 3:使用参数为模型提供数据对象

好了, 我们已经通过了仿真模型生命周期的第二阶段!

在下一篇文章中,我们将看看如何构建模型 !

  电话:010-62964229
  邮箱:support@carila.cn
  地址:北京市海淀区上地信息产业基地三街3号楼1门4层401
©2021 北京格瑞纳电子产品有限公司 版权所有 京ICP备19024141号 京公网安备 11010802029095号
 
QQ在线咨询
点击这里给我发消息 点击这里给我发消息
服务热线
010-62964229
E-mail
support@
carila.cn
地址:北京市海
淀区上地信息产
业基地三街3号