date - 日期参数随时间更新 Anylogic
问题描述
我正在使用 Anylogic,我想为每个代理(代理是客户)分配一个日期类型的参数,称为 DueDate,它表示他的机器故障的截止日期。我的目标是更新 value 参数并使其随着模型时间的流逝而变短(因为故障日期即将到来)。有一些我可以使用的功能或代码吗?我还想为代理分配一个优先级参数,该参数在故障日期最近时增加,以便在队列中,故障最近的客户在优先级较低的代理之前处理。我能怎么做?
非常感谢
解决方案
这个问题似乎有些自相矛盾。所描述的参数是Due Date,因此,根据定义,应该是固定的。然而,参数值应该随着故障日期的临近而更新。你的意思是应该有两个参数:1)截止日期和2)直到截止日期的剩余时间?如果是这样,可以这样实现:
- 到期日 - 如果您想在模型启动后的 10 个时间单位设置到期日,您可以制作一个参数(调用它
p_dueDate
的类型)并使用timeToDate(100.0)
函数(帮助条目)。 - 剩余时间 - 使用以下代码在代理中创建一个函数
f_getRemainingTime()
:
return dateToTime(p_dueDate) - time();
wheredateToTime()
会将p_dueDate
值转换回表示模拟时间单位的双精度值,并time()
返回当前模拟时间(也作为双精度值)。
所以,假设一个模型从 1 月 1 日开始,时间单位 = 天;10 的偏移量将导致p_dueDate = 10th Jan
1 月 3 日f_getRemainingTime()
将返回7.0
。
推荐阅读
- c - realloc 没有重新分配内存
- sql - SQL替换项目符号
- php - 如何在子目录级别使用 artisan 命令创建事件/侦听器?
- spring-boot - 从另一台计算机导入项目后,无法在 Spring 工具套件中打开 application.properties 文件
- reactjs - react-testing-library Mocking Fat Arrow 组件方法
- mysql - 从表中选择行加上与一个查询中的选定行有关的行
- html - 通过简单地更改指令名称并更改结构以适应这些指令来将 AngularJS 转换为 Angular?
- google-apps-script - GAS 中大量数据的 Properties Service 的替代方案?
- tensorflow - 如何冻结 keras 模型并使用 tensorflow 对其进行训练?
- c++ - 请求'c'中的成员'begin',它是非类类型'char [101]' sort(c.begin(), c.end());